@@ -2,43 +2,37 @@ name: Build and deploy
2
2
3
3
on : [push]
4
4
5
- env :
6
- IMAGE : ghcr.io/${{ github.repository }}:${{ github.sha }}
7
-
8
5
jobs :
9
6
build :
7
+ permissions :
8
+ contents : " read"
9
+ id-token : " write"
10
10
name : Build and publish Docker image
11
11
runs-on : ubuntu-latest
12
12
steps :
13
- - uses : actions/checkout@v3
13
+ - uses : actions/checkout@v4.0.0
14
14
- uses : actions/setup-java@v3
15
15
with :
16
16
distribution : temurin
17
17
java-version : 17
18
18
19
- - uses : gradle/gradle-build-action@v2
19
+ - uses : gradle/gradle-build-action@v2.8.0
20
20
with :
21
- # arguments: --configuration-cache
22
21
arguments : check build
23
-
24
- - name : Set up Docker Buildx
25
- uses : docker/setup-buildx-action@v2
26
-
27
- - name : Login to GitHub Container Registry
28
- uses : docker/login-action@v2
22
+ - uses : nais/docker-build-push@v0
23
+ name : docker-build-push
24
+ id : docker-build-push
29
25
with :
30
- registry : ghcr.io
31
- username : ${{ github.repository_owner }}
32
- password : ${{ secrets.GITHUB_TOKEN }}
33
-
34
- - name : Build and push
35
- uses : docker/build-push-action@v4
36
- with :
37
- context : .
38
- tags : ${{ env.IMAGE }}
39
- push : true
40
- cache-from : type=gha
41
- cache-to : type=gha,mode=max
26
+ team : teamdagpenger
27
+ tag : latest
28
+ push_image : true # optional, default true
29
+ dockerfile : Dockerfile # optional, default Dockerfile
30
+ docker_context : . # optional, default .
31
+ identity_provider : ${{ secrets.NAIS_WORKLOAD_IDENTITY_PROVIDER }}
32
+ project_id : ${{ vars.NAIS_MANAGEMENT_PROJECT_ID }}
33
+ tag_latest : true # optional, default false
34
+ outputs :
35
+ image : ${{ steps.docker-build-push.outputs.image }}
42
36
43
37
deploy-dev :
44
38
name : Deploy to dev
@@ -47,13 +41,14 @@ jobs:
47
41
runs-on : ubuntu-latest
48
42
environment : dev-fss
49
43
steps :
50
- - uses : actions/checkout@v3
44
+ - uses : actions/checkout@v4.0.0
51
45
- uses : nais/deploy/actions/deploy@v1
52
46
env :
53
47
APIKEY : ${{ secrets.NAIS_DEPLOY_APIKEY }}
54
48
CLUSTER : dev-fss
55
49
RESOURCE : nais/dev/nais.yaml,nais/grpc-svc.yaml
56
50
VARS : nais/vars.yaml
51
+ VAR : image=${{ needs.build.outputs.image }}
57
52
PRINT_PAYLOAD : true
58
53
deploy-prod :
59
54
name : Deploy to Production
@@ -62,12 +57,12 @@ jobs:
62
57
runs-on : ubuntu-latest
63
58
environment : prod-fss
64
59
steps :
65
- - uses : actions/checkout@v3
66
-
60
+
67
61
- uses : nais/deploy/actions/deploy@v1
68
62
env :
69
63
APIKEY : ${{ secrets.NAIS_DEPLOY_APIKEY }}
70
64
CLUSTER : prod-fss
71
65
RESOURCE : nais/prod/nais.yaml,nais/grpc-svc.yaml
72
66
VARS : nais/vars.yaml
67
+ VAR : image=${{ needs.build.outputs.image }}
73
68
PRINT_PAYLOAD : true
0 commit comments