@@ -175,7 +175,8 @@ jobs:
175
175
export MANIFEST_TAG=${VERSION}-${BUILD_DATE}
176
176
export ARM_TAG=${VERSION}_arm64-${BUILD_DATE}
177
177
export AMD_TAG=${VERSION}_amd64-${BUILD_DATE}
178
- echo "${DOCKER_PASSWORD}" | docker login -u "${DOCKER_USERNAME}" --password-stdin
178
+ echo "Creating ${IMAGE_NAME}:${MANIFEST_TAG} based on ${IMAGE_NAME}:${ARM_TAG} and ${IMAGE_NAME}:${AMD_TAG}"
179
+ echo "${DOCKER_PASSWORD}" | docker login --username "${DOCKER_USERNAME}" --password-stdin
179
180
docker push ${IMAGE_NAME}:${ARM_TAG}
180
181
docker push ${IMAGE_NAME}:${AMD_TAG}
181
182
docker manifest create ${IMAGE_NAME}:${MANIFEST_TAG} ${IMAGE_NAME}:${ARM_TAG} ${IMAGE_NAME}:${AMD_TAG}
@@ -188,6 +189,48 @@ jobs:
188
189
export MANIFEST_TAG=${VERSION}-${BUILD_DATE}
189
190
docker manifest inspect ${IMAGE_NAME}:${MANIFEST_TAG}
190
191
192
+ manifest-amd-only-arch :
193
+ parameters :
194
+ image-name :
195
+ type : string
196
+ machine-type :
197
+ type : executor
198
+ executor : << parameters.machine-type >>
199
+ environment :
200
+ NAMESPACE : seleniarm
201
+ BUILD_DATE : today
202
+ steps :
203
+ - checkout
204
+ - restore_cache :
205
+ keys :
206
+ - multi-arch-images-{{ .Branch }}-{{ .Environment.CIRCLE_WORKFLOW_ID }}-linux/amd64
207
+ - run : uname -a
208
+ - run : docker info
209
+ - run :
210
+ name : " Load built images from cache into Docker"
211
+ command : |
212
+ echo "CIRCLE_WORKFLOW_ID = " $CIRCLE_WORKFLOW_ID
213
+ docker load -i images/amd64.tar
214
+ - run :
215
+ name : " Create manifest"
216
+ command : |
217
+ export VERSION=${CIRCLE_BRANCH//\//-}
218
+ export IMAGE_NAME=$NAMESPACE/<< parameters.image-name >>
219
+ export MANIFEST_TAG=${VERSION}-${BUILD_DATE}
220
+ export AMD_TAG=${VERSION}_amd64-${BUILD_DATE}
221
+ echo "Creating ${IMAGE_NAME}:${MANIFEST_TAG} based on ${IMAGE_NAME}:${AMD_TAG}"
222
+ echo "${DOCKER_PASSWORD}" | docker login --username "${DOCKER_USERNAME}" --password-stdin
223
+ docker push ${IMAGE_NAME}:${AMD_TAG}
224
+ docker manifest create ${IMAGE_NAME}:${MANIFEST_TAG} ${IMAGE_NAME}:${AMD_TAG}
225
+ docker manifest push ${IMAGE_NAME}:${MANIFEST_TAG}
226
+ - run :
227
+ name : " Inspect manifest"
228
+ command : |
229
+ export VERSION=${CIRCLE_BRANCH//\//-}
230
+ export IMAGE_NAME=$NAMESPACE/<< parameters.image-name >>
231
+ export MANIFEST_TAG=${VERSION}-${BUILD_DATE}
232
+ docker manifest inspect ${IMAGE_NAME}:${MANIFEST_TAG}
233
+
191
234
deploy-multi-arch :
192
235
parameters :
193
236
platforms :
@@ -419,6 +462,13 @@ workflows:
419
462
matrix :
420
463
parameters :
421
464
image-name : [ base, node-base, hub, node-chromium, standalone-chromium, node-firefox, standalone-firefox ]
465
+ - manifest-amd-only-arch :
466
+ name : manifest-amd-arch-<< matrix.image-name >>
467
+ requires : [test-multi-arch-amd64]
468
+ machine-type : ubuntu2204amd64
469
+ matrix :
470
+ parameters :
471
+ image-name : [ node-chrome, standalone-chrome, node-edge, standalone-edge ]
422
472
423
473
deploy-multi-arch-full-grid :
424
474
jobs :
0 commit comments