Skip to content

Commit 552be2d

Browse files
Mbd06bclaude
andcommitted
ci(sync): make tag mirror push best-effort
Upstream has 6000+ tags. A single collision with a protected tag name (or a transient GitHub API hiccup partway through the push) would otherwise fail the entire sync run, stopping gix-main freshness. Tags are nice-to-have for our mirror, not load-bearing — gix-main's HEAD pointing at upstream/main is what actually matters. Log a warning if the tag push exits non-zero so we have a trail, but don't fail the job. Co-authored-by: Claude <claude@anthropic.com>
1 parent b02a74d commit 552be2d

1 file changed

Lines changed: 13 additions & 2 deletions

File tree

.github/workflows/sync-upstream.yml

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,17 @@ jobs:
6262
if: steps.ff.outputs.changed == 'true'
6363
run: git push origin gix-main
6464

65-
- name: Push mirrored tags
65+
# Tags are nice-to-have but not critical for our sync purposes.
66+
# Upstream has 6000+ tags; a single collision or protected-tag rule
67+
# would otherwise kill the whole run. Best-effort push, report in logs.
68+
- name: Push mirrored tags (best effort)
6669
if: steps.ff.outputs.changed == 'true'
67-
run: git push origin --tags
70+
continue-on-error: true
71+
run: |
72+
set +e
73+
git push origin --tags 2>&1 | tee push-tags.log
74+
status=${PIPESTATUS[0]}
75+
if [ "$status" -ne 0 ]; then
76+
echo "::warning::Tag mirror push exited with status $status; some tags may not have synced. See push-tags.log above."
77+
fi
78+
exit 0

0 commit comments

Comments
 (0)