@@ -141,6 +141,49 @@ jobs:
141
141
ARCH=$(echo << parameters.platforms >> | sed 's/linux\///')
142
142
USE_RANDOM_USER_ID=${USE_RANDOM_USER} NAMESPACE=${NAMESPACE} VERSION=${BRANCH}_${ARCH} BUILD_DATE=${BUILD_DATE} SKIP_BUILD=true make test_${ARCH}
143
143
144
+ manifest-multi-arch :
145
+ parameters :
146
+ image-name :
147
+ type : string
148
+ machine-type :
149
+ type : executor
150
+ executor : << parameters.machine-type >>
151
+ environment :
152
+ NAMESPACE : seleniarm
153
+ BUILD_DATE : today
154
+ steps :
155
+ - checkout
156
+ - restore_cache :
157
+ keys :
158
+ - multi-arch-images-{{ .Branch }}-{{ .Environment.CIRCLE_WORKFLOW_ID }}-linux/arm64
159
+ - restore_cache :
160
+ keys :
161
+ - multi-arch-images-{{ .Branch }}-{{ .Environment.CIRCLE_WORKFLOW_ID }}-linux/amd64
162
+ - run : uname -a
163
+ - run : docker info
164
+ - run :
165
+ name : " Load built images from cache into Docker"
166
+ command : |
167
+ echo "CIRCLE_WORKFLOW_ID = " $CIRCLE_WORKFLOW_ID
168
+ docker load -i images/arm64.tar
169
+ docker load -i images/amd64.tar
170
+ - run :
171
+ name : " Create manifest"
172
+ command : |
173
+ export VERSION=${CIRCLE_BRANCH//\//-}
174
+ export IMAGE_NAME=$NAMESPACE/<< parameters.image-name >>
175
+ export MANIFEST_TAG=${VERSION}-${BUILD_DATE}
176
+ export ARM_TAG=${VERSION}_arm64-${BUILD_DATE}
177
+ export AMD_TAG=${VERSION}_amd64-${BUILD_DATE}
178
+ docker manifest create ${IMAGE_NAME}:${MANIFEST_TAG} ${IMAGE_NAME}:${ARM_TAG} ${IMAGE_NAME}:${AMD_TAG}
179
+ - run :
180
+ name : " Inspect manifest"
181
+ command : |
182
+ export VERSION=${CIRCLE_BRANCH//\//-}
183
+ export IMAGE_NAME=$NAMESPACE/<< parameters.image-name >>
184
+ export MANIFEST_TAG=${VERSION}-${BUILD_DATE}
185
+ docker manifest inspect ${IMAGE_NAME}:${MANIFEST_TAG}
186
+
144
187
deploy-multi-arch :
145
188
parameters :
146
189
platforms :
@@ -365,6 +408,11 @@ workflows:
365
408
requires : [build-multi-arch-amd64]
366
409
platforms : linux/amd64
367
410
machine-type : ubuntu2204amd64
411
+ - manifest-multi-arch :
412
+ name : manifest-multi-arch-chromium
413
+ requires : [test-multi-arch-arm64, test-multi-arch-amd64]
414
+ image-name : chromium
415
+ machine-type : ubuntu2204amd64
368
416
369
417
deploy-multi-arch-full-grid :
370
418
jobs :
0 commit comments