@@ -15,67 +15,66 @@ name: release-please
15
15
jobs :
16
16
release_please :
17
17
runs-on : ubuntu-latest
18
- outputs :
19
- release_created : ${{ steps.release.outputs.release_created }}
20
18
steps :
21
19
- uses : google-github-actions/release-please-action@v3
22
20
id : release
23
21
with :
24
22
release-type : maven
25
23
package-name : compas-sitipe-service
26
- # The logic below handles the docker hub publication:
27
- push_to_registry :
28
- needs : release_please
29
- if : needs.release_please.outputs.release_created == "true"
30
- name : Build and publish
31
- runs-on : ubuntu-latest
32
- timeout-minutes : 15
33
-
34
- steps :
35
24
- name : Checkout
25
+ if : ${{ steps.release.outputs.release_created }}
36
26
uses : actions/checkout@v4
37
27
38
28
- name : Cache Docker Register
29
+ if : ${{ steps.release.outputs.release_created }}
39
30
uses : actions/cache@v3
40
31
with :
41
32
path : /tmp/.buildx-cache
42
33
key : ${{ runner.os }}-buildx-${{ hashFiles('**/Dockerfile') }}
43
34
- name : Cache Maven packages
35
+ if : ${{ steps.release.outputs.release_created }}
44
36
uses : actions/cache@v3
45
37
with :
46
38
path : ~/.m2
47
39
key : ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }}
48
40
restore-keys : ${{ runner.os }}-m2
49
41
50
42
- name : Extract tag name
43
+ if : ${{ steps.release.outputs.release_created }}
51
44
id : extract_tagname
52
45
shell : bash
53
46
run : echo "RELEASE_VERSION=${GITHUB_REF#refs/*/}" >> $GITHUB_ENV
54
47
55
48
- name : Set up JDK 17
49
+ if : ${{ steps.release.outputs.release_created }}
56
50
uses : actions/setup-java@v3
57
51
with :
58
52
distribution : ' zulu'
59
53
java-version : ' 17'
60
54
- name : Set up Docker Buildx
55
+ if : ${{ steps.release.outputs.release_created }}
61
56
id : buildx
62
57
uses : docker/setup-buildx-action@v3
63
58
- name : Login to Docker Hub
59
+ if : ${{ steps.release.outputs.release_created }}
64
60
uses : docker/login-action@v3
65
61
with :
66
62
username : ${{ secrets.DOCKER_HUB_USERNAME }}
67
63
password : ${{ secrets.DOCKER_HUB_TOKEN }}
68
64
69
65
- name : Create custom Maven Settings.xml
66
+ if : ${{ steps.release.outputs.release_created }}
70
67
uses : whelk-io/maven-settings-xml-action@v21
71
68
with :
72
69
output_file : custom_maven_settings.xml
73
70
servers : ' [{ "id": "github-packages-compas", "username": "OWNER", "password": "${{ secrets.GITHUB_TOKEN }}" }]'
74
71
- name : Set version with Maven
72
+ if : ${{ steps.release.outputs.release_created }}
75
73
run : ./mvnw -B versions:set -DprocessAllModules=true -DnewVersion=${{ env.RELEASE_VERSION }}
76
74
env :
77
75
GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
78
76
- name : Deploy with Maven to GitHub Packages and Docker Hub
77
+ if : ${{ steps.release.outputs.release_created }}
79
78
run : ./mvnw -B -s custom_maven_settings.xml -Pnative-image,release clean deploy
80
79
env :
81
80
GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
0 commit comments