@@ -11,6 +11,18 @@ work_directory: &work_directory
1111resource_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+
1426executors :
1527 jdk-executor :
1628 docker :
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
0 commit comments