@@ -16,40 +16,44 @@ jobs:
16
16
name : Tests
17
17
runs-on : ubuntu-latest
18
18
env :
19
- AWS_REGION : ${{ vars.AWS_REGION }}
20
- STG_AWS_ACCESS_KEY_ID : ${{ vars.STG_AWS_ACCESS_KEY_ID }}
21
- STG_AWS_SECRET_ACCESS_KEY : ${{ secrets.STG_AWS_SECRET_ACCESS_KEY }}
22
- PRD_AWS_ACCESS_KEY_ID : ${{ vars.PRD_AWS_ACCESS_KEY_ID }}
23
- PRD_AWS_SECRET_ACCESS_KEY : ${{ secrets.PRD_AWS_SECRET_ACCESS_KEY }}
19
+ AWS_REGION : us-east-1
20
+ AWS_ACCESS_KEY_ID : ${{ secrets.AWS_ACCESS_KEY_ID }}
21
+ AWS_SECRET_ACCESS_KEY : ${{ secrets.AWS_SECRET_ACCESS_KEY }}
24
22
steps :
25
23
- name : Checkout code
26
24
uses : actions/checkout@v4
25
+
27
26
- name : Test
28
- run : docker compose -f actions-services.yml run --rm test ./scripts/test.sh
27
+ run : docker compose run app go test ./...
29
28
30
29
lint :
31
30
name : Lint and Vulnerability Scan
32
31
runs-on : ubuntu-latest
33
32
timeout-minutes : ${{ fromJSON(vars.DEFAULT_JOB_TIMEOUT_MINUTES) }}
34
33
steps :
35
- - uses : actions/checkout@v4
36
- - uses : actions/setup-go@v5
37
- with :
38
- go-version-file : ' go.mod'
39
- check-latest : true
40
- - name : golangci-lint
41
- uses : golangci/golangci-lint-action@v6
42
- with :
43
- version : latest
44
- - name : govulncheck
45
- run : |
46
- go install golang.org/x/vuln/cmd/govulncheck@latest
47
- govulncheck ./...
34
+ - name : Checkout code
35
+ uses : actions/checkout@v4
36
+
37
+ - uses : actions/setup-go@v5
38
+ with :
39
+ go-version-file : ' go.mod'
40
+ check-latest : true
41
+
42
+ - name : golangci-lint
43
+ uses : golangci/golangci-lint-action@v6
44
+ with :
45
+ version : latest
46
+
47
+ - name : govulncheck
48
+ run : |
49
+ go install golang.org/x/vuln/cmd/govulncheck@latest
50
+ govulncheck ./...
48
51
49
52
deploy :
50
53
name : Deploy to AWS Lambda
51
54
needs : [ 'tests', 'lint' ]
52
55
if : github.ref_name == 'main' || github.ref_name == 'develop'
56
+ environment : ${{ github.ref_name }}
53
57
runs-on : ubuntu-latest
54
58
concurrency :
55
59
group : deploy-${{ github.ref }}-${{ matrix.region }}
@@ -58,27 +62,23 @@ jobs:
58
62
matrix :
59
63
region : [ us-east-1, us-west-2 ]
60
64
env :
61
- AWS_REGION : ${{ vars.AWS_REGION }}
62
- STG_AWS_ACCESS_KEY_ID : ${{ vars.STG_AWS_ACCESS_KEY_ID }}
63
- STG_AWS_SECRET_ACCESS_KEY : ${{ secrets.STG_AWS_SECRET_ACCESS_KEY }}
64
- STG_LAMBDA_ROLE : ${{ vars.STG_LAMBDA_ROLE }}
65
- STG_API_KEY_TABLE : ${{ vars.STG_API_KEY_TABLE }}
66
- STG_WEBAUTHN_TABLE : ${{ vars.STG_WEBAUTHN_TABLE }}
67
- PRD_AWS_ACCESS_KEY_ID : ${{ vars.PRD_AWS_ACCESS_KEY_ID }}
68
- PRD_AWS_SECRET_ACCESS_KEY : ${{ secrets.PRD_AWS_SECRET_ACCESS_KEY }}
69
- PRD_LAMBDA_ROLE : ${{ vars.PRD_LAMBDA_ROLE }}
70
- PRD_API_KEY_TABLE : ${{ vars.PRD_API_KEY_TABLE }}
71
- PRD_WEBAUTHN_TABLE : ${{ vars.PRD_WEBAUTHN_TABLE }}
65
+ AWS_ACCESS_KEY_ID : ${{ secrets.AWS_ACCESS_KEY_ID }}
66
+ AWS_SECRET_ACCESS_KEY : ${{ secrets.AWS_SECRET_ACCESS_KEY }}
67
+ LAMBDA_ROLE : ${{ vars.LAMBDA_ROLE }}
68
+ API_KEY_TABLE : ${{ vars.API_KEY_TABLE }}
69
+ WEBAUTHN_TABLE : ${{ vars.WEBAUTHN_TABLE }}
72
70
73
71
steps :
74
72
- name : Checkout code
75
73
uses : actions/checkout@v4
74
+
76
75
- name : Deploy
77
- run : docker compose -f actions-services.yml run --rm app ./scripts/deploy.sh ${{ matrix.region }}
76
+ run : docker compose run app ./scripts/deploy.sh ${{ matrix.region }}
78
77
79
78
build-and-publish :
80
79
name : Build and Publish
81
80
needs : [ 'tests', 'lint' ]
81
+ if : github.ref_name == 'main' || github.ref_name == 'develop'
82
82
runs-on : ubuntu-latest
83
83
steps :
84
84
- name : Checkout code
@@ -102,7 +102,7 @@ jobs:
102
102
uses : docker/metadata-action@v5
103
103
with :
104
104
images : |
105
- ${{ vars.IMAGE_NAME }}
105
+ ${{ vars.DOCKER_ORG }}/${{ github.event.repository.name }}
106
106
ghcr.io/${{ github.repository }}
107
107
tags : |
108
108
type=ref,event=branch
0 commit comments