Skip to content

Commit a083af1

Browse files
committed
Add ac claim for old docker/build-push-actions@v3
Also resolves a warning for current releases ``` | ##[group]GitHub Actions runtime token ACs | ##[warning]Cannot parse GitHub Actions Runtime Token ACs: "undefined" is not valid JSON | ##[endgroup] ====> | ##[group]GitHub Actions runtime token ACs | ##[endgroup] ```
1 parent e917334 commit a083af1

File tree

2 files changed

+9
-0
lines changed

2 files changed

+9
-0
lines changed

services/actions/auth.go

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ type actionsClaims struct {
2121
TaskID int64
2222
RunID int64
2323
JobID int64
24+
Ac string `json:"ac"`
2425
}
2526

2627
func CreateAuthorizationToken(taskID, runID, jobID int64) (string, error) {
@@ -32,6 +33,7 @@ func CreateAuthorizationToken(taskID, runID, jobID int64) (string, error) {
3233
NotBefore: jwt.NewNumericDate(now),
3334
},
3435
Scp: fmt.Sprintf("Actions.Results:%d:%d", runID, jobID),
36+
Ac: "[]",
3537
TaskID: taskID,
3638
RunID: runID,
3739
JobID: jobID,

services/actions/auth_test.go

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ import (
77
"net/http"
88
"testing"
99

10+
"code.gitea.io/gitea/modules/json"
1011
"code.gitea.io/gitea/modules/setting"
1112

1213
"github.com/golang-jwt/jwt/v5"
@@ -29,6 +30,12 @@ func TestCreateAuthorizationToken(t *testing.T) {
2930
taskIDClaim, ok := claims["TaskID"]
3031
assert.True(t, ok, "Has TaskID claim in jwt token")
3132
assert.Equal(t, float64(taskID), taskIDClaim, "Supplied taskid must match stored one")
33+
acClaim, ok := claims["ac"]
34+
assert.True(t, ok, "Has ac claim in jwt token")
35+
ac, ok := acClaim.(string)
36+
assert.True(t, ok, "ac claim is a string")
37+
err = json.Unmarshal([]byte(ac), &[]struct{}{})
38+
assert.NoError(t, err, "ac claim is a json list")
3239
}
3340

3441
func TestParseAuthorizationToken(t *testing.T) {

0 commit comments

Comments
 (0)