Skip to content

ci: retry the Zig install once when the download fails - #220

Merged
melihbirim merged 1 commit into
mainfrom
ci/retry-setup-zig
Oct 1, 2026
Merged

melihbirim merged 1 commit into
mainfrom
ci/retry-setup-zig

Conversation

@melihbirim

Copy link
Copy Markdown
Owner

setup-zig timed out three times in one day, each time failing the whole job at its first step with Error: Request timed out before a single line had compiled. Each one cost a manual rerun that then passed unchanged.

The action already caches the toolchain, but the cache is keyed per runner OS and architecture, so a first run on any of the four images we build on still downloads from ziglang.org. Caching was on for all three timeouts, so retry is the fix rather than caching.

Adds .github/actions/setup-zig/action.yml, a composite action that runs goto-bus-stop/setup-zig@v2 with continue-on-error: true and then a second conditional attempt gated on the first one's outcome. All ten call sites now point at it: ci.yml (5), release.yml (3), nightly-fuzz.yml (1), bench-duckdb-versions.yml (1). The pinned version stays explicit at each site.

A retry costs nothing when the first attempt works, and turns a transient network blip into a few wasted seconds instead of a red build.

This touches workflow files, so it correctly runs the full matrix rather than being skipped by the docs-only paths-ignore from #209. That full matrix is also the test: ten installs across four runner images.

🤖 Generated with Claude Code

setup-zig timed out three times in one day, each time failing the whole job
at its first step with "Error: Request timed out" before a line had compiled.
Every one of those cost a manual rerun that then passed unchanged.

The action already caches the toolchain, but the cache is keyed per runner
OS and architecture, so a first run on any of the four images we build on
still downloads from ziglang.org. Caching was already on when all three
timeouts happened, so retry is the fix, not caching.

Wraps it in a local composite action with a continue-on-error first attempt
and a conditional second one, and points all ten call sites at that. A
retry costs nothing when the first attempt works.
@melihbirim
melihbirim merged commit ec5189c into main Oct 1, 2026
13 checks passed
@melihbirim
melihbirim deleted the ci/retry-setup-zig branch October 1, 2026 17:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant