Skip to content

Commit 01a1dcc

Browse files
committed
fixup! fixup! fixup! fixup! fixup! fixup! fixup! fixup! fixup! chore: push base image to registry; update smoke tests to pull images
Signed-off-by: Oleksii Kurinnyi <[email protected]>
1 parent c793cb3 commit 01a1dcc

File tree

2 files changed

+90
-26
lines changed

2 files changed

+90
-26
lines changed

.github/workflows/pr-check-ubi10.yaml

Lines changed: 45 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -159,18 +159,29 @@ jobs:
159159
echo "ERROR: arm64 base image not found"
160160
exit 1
161161
}
162-
echo "Both images verified, creating manifest..."
162+
echo "Both images verified, extracting digests..."
163+
164+
# Extract the actual image digest for each architecture from the manifest list
165+
AMD64_DIGEST=$(docker manifest inspect ${{ env.REGISTRY }}/base-developer-image:amd64-ubi10-pr-${{github.event.number}} | \
166+
jq -r '.manifests[] | select(.platform.architecture == "amd64") | .digest')
167+
ARM64_DIGEST=$(docker manifest inspect ${{ env.REGISTRY }}/base-developer-image:arm64-ubi10-pr-${{github.event.number}} | \
168+
jq -r '.manifests[] | select(.platform.architecture == "arm64") | .digest')
169+
170+
echo "AMD64 digest: $AMD64_DIGEST"
171+
echo "ARM64 digest: $ARM64_DIGEST"
172+
173+
echo "Creating multi-arch manifest..."
163174
docker manifest create ${{ env.REGISTRY }}/base-developer-image:ubi10-pr-${{github.event.number}} \
164-
--amend ${{ env.REGISTRY }}/base-developer-image:amd64-ubi10-pr-${{github.event.number}} \
165-
--amend ${{ env.REGISTRY }}/base-developer-image:arm64-ubi10-pr-${{github.event.number}}
166-
175+
--amend ${{ env.REGISTRY }}/base-developer-image@$AMD64_DIGEST \
176+
--amend ${{ env.REGISTRY }}/base-developer-image@$ARM64_DIGEST
177+
167178
docker manifest annotate ${{ env.REGISTRY }}/base-developer-image:ubi10-pr-${{github.event.number}} \
168-
${{ env.REGISTRY }}/base-developer-image:amd64-ubi10-pr-${{github.event.number}} \
179+
${{ env.REGISTRY }}/base-developer-image@$AMD64_DIGEST \
169180
--os linux --arch amd64
170181
docker manifest annotate ${{ env.REGISTRY }}/base-developer-image:ubi10-pr-${{github.event.number}} \
171-
${{ env.REGISTRY }}/base-developer-image:arm64-ubi10-pr-${{github.event.number}} \
182+
${{ env.REGISTRY }}/base-developer-image@$ARM64_DIGEST \
172183
--os linux --arch arm64
173-
184+
174185
docker manifest push ${{ env.REGISTRY }}/base-developer-image:ubi10-pr-${{github.event.number}}
175186
176187
publish-udi:
@@ -189,17 +200,38 @@ jobs:
189200
echo "=========================================="
190201
echo "Publishing UDI10 manifest"
191202
echo "=========================================="
203+
echo "Verifying both architecture images exist..."
204+
docker manifest inspect ${{ env.REGISTRY }}/universal-developer-image:amd64-ubi10-pr-${{github.event.number}} || {
205+
echo "ERROR: amd64 UDI image not found"
206+
exit 1
207+
}
208+
docker manifest inspect ${{ env.REGISTRY }}/universal-developer-image:arm64-ubi10-pr-${{github.event.number}} || {
209+
echo "ERROR: arm64 UDI image not found"
210+
exit 1
211+
}
212+
echo "Both images verified, extracting digests..."
213+
214+
# Extract the actual image digest for each architecture from the manifest list
215+
AMD64_DIGEST=$(docker manifest inspect ${{ env.REGISTRY }}/universal-developer-image:amd64-ubi10-pr-${{github.event.number}} | \
216+
jq -r '.manifests[] | select(.platform.architecture == "amd64") | .digest')
217+
ARM64_DIGEST=$(docker manifest inspect ${{ env.REGISTRY }}/universal-developer-image:arm64-ubi10-pr-${{github.event.number}} | \
218+
jq -r '.manifests[] | select(.platform.architecture == "arm64") | .digest')
219+
220+
echo "AMD64 digest: $AMD64_DIGEST"
221+
echo "ARM64 digest: $ARM64_DIGEST"
222+
223+
echo "Creating multi-arch manifest..."
192224
docker manifest create ${{ env.REGISTRY }}/universal-developer-image:ubi10-pr-${{github.event.number}} \
193-
--amend ${{ env.REGISTRY }}/universal-developer-image:amd64-ubi10-pr-${{github.event.number}} \
194-
--amend ${{ env.REGISTRY }}/universal-developer-image:arm64-ubi10-pr-${{github.event.number}}
195-
225+
--amend ${{ env.REGISTRY }}/universal-developer-image@$AMD64_DIGEST \
226+
--amend ${{ env.REGISTRY }}/universal-developer-image@$ARM64_DIGEST
227+
196228
docker manifest annotate ${{ env.REGISTRY }}/universal-developer-image:ubi10-pr-${{github.event.number}} \
197-
${{ env.REGISTRY }}/universal-developer-image:amd64-ubi10-pr-${{github.event.number}} \
229+
${{ env.REGISTRY }}/universal-developer-image@$AMD64_DIGEST \
198230
--os linux --arch amd64
199231
docker manifest annotate ${{ env.REGISTRY }}/universal-developer-image:ubi10-pr-${{github.event.number}} \
200-
${{ env.REGISTRY }}/universal-developer-image:arm64-ubi10-pr-${{github.event.number}} \
232+
${{ env.REGISTRY }}/universal-developer-image@$ARM64_DIGEST \
201233
--os linux --arch arm64
202-
234+
203235
docker manifest push ${{ env.REGISTRY }}/universal-developer-image:ubi10-pr-${{github.event.number}}
204236
- name: 'Comment PR'
205237
uses: actions/github-script@v7

.github/workflows/pr-check.yaml

Lines changed: 45 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -158,18 +158,29 @@ jobs:
158158
echo "ERROR: arm64 base image not found"
159159
exit 1
160160
}
161-
echo "Both images verified, creating manifest..."
161+
echo "Both images verified, extracting digests..."
162+
163+
# Extract the actual image digest for each architecture from the manifest list
164+
AMD64_DIGEST=$(docker manifest inspect ${{ env.REGISTRY }}/base-developer-image:amd64-pr-${{github.event.number}} | \
165+
jq -r '.manifests[] | select(.platform.architecture == "amd64") | .digest')
166+
ARM64_DIGEST=$(docker manifest inspect ${{ env.REGISTRY }}/base-developer-image:arm64-pr-${{github.event.number}} | \
167+
jq -r '.manifests[] | select(.platform.architecture == "arm64") | .digest')
168+
169+
echo "AMD64 digest: $AMD64_DIGEST"
170+
echo "ARM64 digest: $ARM64_DIGEST"
171+
172+
echo "Creating multi-arch manifest..."
162173
docker manifest create ${{ env.REGISTRY }}/base-developer-image:pr-${{github.event.number}} \
163-
--amend ${{ env.REGISTRY }}/base-developer-image:amd64-pr-${{github.event.number}} \
164-
--amend ${{ env.REGISTRY }}/base-developer-image:arm64-pr-${{github.event.number}}
165-
174+
--amend ${{ env.REGISTRY }}/base-developer-image@$AMD64_DIGEST \
175+
--amend ${{ env.REGISTRY }}/base-developer-image@$ARM64_DIGEST
176+
166177
docker manifest annotate ${{ env.REGISTRY }}/base-developer-image:pr-${{github.event.number}} \
167-
${{ env.REGISTRY }}/base-developer-image:amd64-pr-${{github.event.number}} \
178+
${{ env.REGISTRY }}/base-developer-image@$AMD64_DIGEST \
168179
--os linux --arch amd64
169180
docker manifest annotate ${{ env.REGISTRY }}/base-developer-image:pr-${{github.event.number}} \
170-
${{ env.REGISTRY }}/base-developer-image:arm64-pr-${{github.event.number}} \
181+
${{ env.REGISTRY }}/base-developer-image@$ARM64_DIGEST \
171182
--os linux --arch arm64
172-
183+
173184
docker manifest push ${{ env.REGISTRY }}/base-developer-image:pr-${{github.event.number}}
174185
175186
publish-udi:
@@ -188,17 +199,38 @@ jobs:
188199
echo "=========================================="
189200
echo "Publishing UDI9 manifest"
190201
echo "=========================================="
202+
echo "Verifying both architecture images exist..."
203+
docker manifest inspect ${{ env.REGISTRY }}/universal-developer-image:amd64-pr-${{github.event.number}} || {
204+
echo "ERROR: amd64 UDI image not found"
205+
exit 1
206+
}
207+
docker manifest inspect ${{ env.REGISTRY }}/universal-developer-image:arm64-pr-${{github.event.number}} || {
208+
echo "ERROR: arm64 UDI image not found"
209+
exit 1
210+
}
211+
echo "Both images verified, extracting digests..."
212+
213+
# Extract the actual image digest for each architecture from the manifest list
214+
AMD64_DIGEST=$(docker manifest inspect ${{ env.REGISTRY }}/universal-developer-image:amd64-pr-${{github.event.number}} | \
215+
jq -r '.manifests[] | select(.platform.architecture == "amd64") | .digest')
216+
ARM64_DIGEST=$(docker manifest inspect ${{ env.REGISTRY }}/universal-developer-image:arm64-pr-${{github.event.number}} | \
217+
jq -r '.manifests[] | select(.platform.architecture == "arm64") | .digest')
218+
219+
echo "AMD64 digest: $AMD64_DIGEST"
220+
echo "ARM64 digest: $ARM64_DIGEST"
221+
222+
echo "Creating multi-arch manifest..."
191223
docker manifest create ${{ env.REGISTRY }}/universal-developer-image:pr-${{github.event.number}} \
192-
--amend ${{ env.REGISTRY }}/universal-developer-image:amd64-pr-${{github.event.number}} \
193-
--amend ${{ env.REGISTRY }}/universal-developer-image:arm64-pr-${{github.event.number}}
194-
224+
--amend ${{ env.REGISTRY }}/universal-developer-image@$AMD64_DIGEST \
225+
--amend ${{ env.REGISTRY }}/universal-developer-image@$ARM64_DIGEST
226+
195227
docker manifest annotate ${{ env.REGISTRY }}/universal-developer-image:pr-${{github.event.number}} \
196-
${{ env.REGISTRY }}/universal-developer-image:amd64-pr-${{github.event.number}} \
228+
${{ env.REGISTRY }}/universal-developer-image@$AMD64_DIGEST \
197229
--os linux --arch amd64
198230
docker manifest annotate ${{ env.REGISTRY }}/universal-developer-image:pr-${{github.event.number}} \
199-
${{ env.REGISTRY }}/universal-developer-image:arm64-pr-${{github.event.number}} \
231+
${{ env.REGISTRY }}/universal-developer-image@$ARM64_DIGEST \
200232
--os linux --arch arm64
201-
233+
202234
docker manifest push ${{ env.REGISTRY }}/universal-developer-image:pr-${{github.event.number}}
203235
- name: 'Comment PR'
204236
uses: actions/github-script@v7

0 commit comments

Comments
 (0)