Skip to content

Commit c56513e

Browse files
authored
Merge pull request #9 from devatherock/multi-arch
feat: Built a multi-arch docker image
2 parents 38c645f + e41b257 commit c56513e

File tree

3 files changed

+51
-17
lines changed

3 files changed

+51
-17
lines changed

.circleci/config.yml

Lines changed: 47 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,18 @@ work_directory: &work_directory
1111
resource_class: &resource_class
1212
resource_class: small
1313

14+
release_filter: &release_filter
15+
filters:
16+
branches:
17+
only: non-existent-branch
18+
tags:
19+
only: /^v[0-9\.]+$/
20+
21+
pr_filter: &pr_filter
22+
filters:
23+
branches:
24+
ignore: master
25+
1426
executors:
1527
jdk-executor:
1628
docker:
@@ -40,6 +52,20 @@ jobs:
4052
root: ~/java-to-native
4153
paths:
4254
- CreateNativeImage.jar
55+
56+
docker_build_dry_run:
57+
executor: jdk-executor
58+
steps:
59+
- checkout
60+
- setup_remote_docker
61+
- attach_workspace:
62+
at: ~/java-to-native
63+
- run: |
64+
docker buildx create --name rockbuilder \
65+
--driver docker-container --use --bootstrap
66+
docker buildx build \
67+
--platform linux/amd64,linux/arm64 .
68+
4369
publish:
4470
executor: jdk-executor
4571
steps:
@@ -49,11 +75,14 @@ jobs:
4975
at: ~/java-to-native
5076
- run: |
5177
TAG=${CIRCLE_SHA1:0:8}
52-
docker build -t devatherock/java-to-native:$TAG .
53-
docker tag devatherock/java-to-native:$TAG devatherock/java-to-native:latest
5478
echo $DOCKER_PASSWORD | docker login -u $DOCKER_USERNAME --password-stdin
55-
docker push devatherock/java-to-native:$TAG
56-
docker push devatherock/java-to-native:latest
79+
docker buildx create --name rockbuilder \
80+
--driver docker-container --use --bootstrap
81+
docker buildx build \
82+
--platform linux/amd64,linux/arm64 \
83+
--push \
84+
-t devatherock/java-to-native:$TAG \
85+
-t devatherock/java-to-native:latest .
5786
5887
dockerhub_readme:
5988
machine:
@@ -81,9 +110,10 @@ jobs:
81110
TAG=${CIRCLE_TAG#v}
82111
DEV_TAG=${CIRCLE_SHA1:0:8}
83112
echo $DOCKER_PASSWORD | docker login -u $DOCKER_USERNAME --password-stdin
84-
docker pull devatherock/java-to-native:$DEV_TAG
85-
docker tag devatherock/java-to-native:$DEV_TAG devatherock/java-to-native:$TAG
86-
docker push devatherock/java-to-native:$TAG
113+
docker buildx create --name rockbuilder \
114+
--driver docker-container --use --bootstrap
115+
docker buildx imagetools create \
116+
-t devatherock/java-to-native:$TAG devatherock/java-to-native:$DEV_TAG
87117
88118
notify_success:
89119
<<: *slack_image
@@ -123,27 +153,29 @@ workflows:
123153
- slack-webhook
124154
requires:
125155
- dockerhub_readme
156+
126157
release:
127158
jobs:
128159
- publish_release:
129160
context:
130161
- docker-credentials
131-
filters:
132-
branches:
133-
only: non-existent-branch
134-
tags:
135-
only: /^v[0-9\.]+$/
162+
<<: *release_filter
136163
- notify_success:
137164
context:
138165
- docker-credentials
139166
- slack-webhook
167+
<<: *release_filter
140168
requires:
141169
- publish_release
170+
142171
pr_check:
143172
jobs:
144173
- groovy_script_to_jar:
145174
context:
146175
- docker-credentials
147-
filters:
148-
branches:
149-
ignore: master
176+
<<: *pr_filter
177+
- docker_build_dry_run:
178+
context:
179+
- docker-credentials
180+
requires:
181+
- groovy_script_to_jar

CHANGELOG.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,8 @@
44
### Changed
55
- Updated dockerhub readme in CI pipeline
66
- [#7](https://github.com/devatherock/java-to-native/issues/7): Merged contents of `DOCS.md` into `README.md`
7+
- [#4](https://github.com/devatherock/java-to-native/issues/4): Built a multi-arch docker image
8+
- Upgraded graalvm from `22.1.0` to `22.3.2`
79

810
## [1.0.0] - 2022-05-17
911
### Changed

Dockerfile

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
1-
FROM devatherock/graalvm:ol8-java11-22.1.0-2
1+
FROM ghcr.io/graalvm/native-image:ol8-java11-22.3.2
22

33
LABEL maintainer="devatherock@gmail.com"
4-
LABEL io.github.devatherock.version="1.0.0"
4+
LABEL io.github.devatherock.version="2.0.0"
55

66
RUN microdnf -y install xz \
77
&& microdnf clean all \

0 commit comments

Comments
 (0)