Skip to content

Commit 3fd2573

Browse files
castrojoCopilot
andcommitted
ci(publish): increase GHCR visibility check from 120s to 360s
GHCR can take >120s to expose a newly-pushed image tag. The 12×10s visibility check caused all 4 publish-image jobs to fail on 2026-07-28 even though podman push completed successfully (images were accessible minutes later via skopeo inspect). Increase to 36×10s (6 minutes) for both post-push and pre-stream-tag visibility loops to absorb observed GHCR propagation delays. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
1 parent f0bcfef commit 3fd2573

1 file changed

Lines changed: 8 additions & 6 deletions

File tree

.github/workflows/publish.yml

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -217,17 +217,18 @@ jobs:
217217
218218
# GHCR can briefly return manifest unknown immediately after a push.
219219
# Do not let downstream smoke/release workflows race that visibility lag.
220-
for attempt in $(seq 1 12); do
220+
# 36 × 10 s = 6 min — observed GHCR lag can exceed 120 s on large pushes.
221+
for attempt in $(seq 1 36); do
221222
if skopeo inspect --no-tags \
222223
"docker://${IMAGE}:${BUILD_SHA}" > /dev/null 2>&1; then
223224
echo "Verified immutable tag :${BUILD_SHA} is readable (attempt ${attempt})"
224225
break
225226
fi
226-
if [ "$attempt" -eq 12 ]; then
227+
if [ "$attempt" -eq 36 ]; then
227228
echo "ERROR: GHCR never exposed :${BUILD_SHA} after push"
228229
exit 1
229230
fi
230-
echo "Waiting for GHCR to expose :${BUILD_SHA} (attempt ${attempt}/12)..."
231+
echo "Waiting for GHCR to expose :${BUILD_SHA} (attempt ${attempt}/36)..."
231232
sleep 10
232233
done
233234
@@ -420,16 +421,17 @@ jobs:
420421
IMAGE="${{ env.IMAGE_REGISTRY }}/${{ env.IMAGE_NAME }}${{ matrix.image_suffix }}"
421422
# Check the immutable source before copying. This also absorbs a short
422423
# GHCR manifest-visibility delay without moving a broken stream tag.
423-
for attempt in $(seq 1 12); do
424+
# 36 × 10 s = 6 min — observed GHCR lag can exceed 120 s on large pushes.
425+
for attempt in $(seq 1 36); do
424426
if skopeo inspect --no-tags \
425427
"docker://${IMAGE}:${BUILD_SHA}" > /dev/null 2>&1; then
426428
break
427429
fi
428-
if [ "$attempt" -eq 12 ]; then
430+
if [ "$attempt" -eq 36 ]; then
429431
echo "ERROR: source tag :${BUILD_SHA} is not readable in GHCR"
430432
exit 1
431433
fi
432-
echo "Waiting for source tag :${BUILD_SHA} (attempt ${attempt}/12)..."
434+
echo "Waiting for source tag :${BUILD_SHA} (attempt ${attempt}/36)..."
433435
sleep 10
434436
done
435437

0 commit comments

Comments
 (0)