1
- name : Docker Builds
1
+ name : Docker Builds & Push
2
2
on :
3
3
push :
4
4
branches :
5
- - master
6
- - main
5
+ - ' master'
6
+ tags :
7
+ - ' v*'
8
+ env :
9
+ JAVA_VERSION : ' 11'
10
+ JAVA_DISTRO : ' zulu'
11
+
7
12
jobs :
8
- build_docker_image :
13
+ build :
9
14
if : github.repository == 'streamthoughts/kafka-connect-file-pulse'
10
- name : Build docker image
15
+ name : ' Build Docker Image '
11
16
runs-on : ubuntu-latest
12
17
steps :
13
18
- uses : actions/checkout@v3
14
19
- uses : docker/setup-buildx-action@v1
15
20
16
- - name : Set up JDK 11
21
+ - name : ' Set Docker Image Build-Args'
22
+ run : |
23
+ echo "VERSION=$(./mvnw org.apache.maven.plugins:maven-help-plugin:3.1.0:evaluate -Dexpression=project.version -q -DforceStdout)" >> $GITHUB_ENV
24
+ echo "GIT_BRANCH=${GITHUB_REF#refs/heads/}" >> $GITHUB_ENV
25
+ echo "GIT_COMMIT=$(git rev-parse --short "$GITHUB_SHA")" >> $GITHUB_ENV
26
+ echo "CREATED=$(date --rfc-3339=seconds)" >> $GITHUB_ENV
27
+
28
+ - name : ' Set up Java'
17
29
uses : actions/setup-java@v3
18
30
with :
19
- java-version : ' 11'
20
- distribution : ' adopt'
21
-
22
- - name : Grant execute permission for mvnw
23
- run : chmod +x mvnw
24
-
25
- - name : Build with Maven
26
- run : ./mvnw clean package -B -Dmaven.test.skip=true;
27
-
28
- - name : Set env PROJECT_VERSION
29
- run : echo "PROJECT_VERSION=$(./mvnw org.apache.maven.plugins:maven-help-plugin:3.1.0:evaluate -Dexpression=project.version -q -DforceStdout)" >> $GITHUB_ENV
30
-
31
- - name : Copy distribution
32
- run : cp ./connect-file-pulse-plugin/target/components/packages/streamthoughts-kafka-connect-file-pulse-${{ env.PROJECT_VERSION }}.zip ./docker/ \
33
-
34
- - name : Check PROJECT_VERSION
35
- run : echo "${{ env.PROJECT_VERSION }}"
36
-
37
- - name : Set env GIT_BRANCH
38
- run : echo "GIT_BRANCH=${GITHUB_REF#refs/heads/}" >> $GITHUB_ENV
39
-
40
- - name : Check GIT_BRANCH
41
- run : echo "${{ env.GIT_BRANCH }}"
42
-
43
- - name : Set GIT_COMMIT
44
- run : echo "GIT_COMMIT=$(git rev-parse --short "$GITHUB_SHA")" >> $GITHUB_ENV
31
+ java-version : ${{ env.JAVA_VERSION }}
32
+ distribution : ${{ env.JAVA_DISTRO }}
33
+ cache : ' maven'
45
34
46
- - name : Check GIT_COMMIT
47
- run : echo "${{ env.GIT_COMMIT }}"
35
+ - name : ' Build with Maven'
36
+ run : |
37
+ chmod +x mvnw
38
+ ./mvnw -ntp -B --file pom.xml -Pdist package -DskipTests
48
39
49
- - name : Set CREATED
50
- run : echo "CREATED=$(date --rfc-3339=seconds)" >> $GITHUB_ENV
40
+ - name : ' Copy distribution '
41
+ run : cp ./connect-file-pulse-plugin/target/components/packages/streamthoughts-kafka-connect-file-pulse-${{ env.VERSION }}.zip ./docker/ \
51
42
52
- - name : Login to DockerHub
43
+ - name : ' Login to DockerHub'
53
44
uses : docker/login-action@v2
54
45
with :
55
46
username : ${{ secrets.DOCKERHUB_USERNAME }}
56
47
password : ${{ secrets.DOCKERHUB_TOKEN }}
57
48
58
- - name : Push to Docker Hub
59
- uses : docker/build-push-action@v3
49
+ - name : ' Build & Push to Docker Hub'
50
+ uses : docker/build-push-action@v4
60
51
with :
61
52
context : ./docker
53
+ platforms : linux/amd64,linux/arm64
62
54
file : ./docker/Dockerfile
63
55
no-cache : true
64
56
push : true
65
57
tags : streamthoughts/kafka-connect-file-pulse:master
66
58
build-args : |
67
- VERSION=${{ env.PROJECT_VERSION }}
59
+ VERSION=${{ env.VERSION }}
68
60
COMMIT=${{ env.GIT_COMMIT }}
69
61
BRANCH=${{ env.GIT_BRANCH }}
70
62
CREATED=${{ env.CREATED }}
0 commit comments