Skip to content
Merged
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
ci: retry the vexctl install — sum.golang.org tile resets flake the t…
…est matrix

`go install vexctl` compiles sigstore/cosign, whose module verification
reads dozens of sum.golang.org checksum tiles. Transient HTTP/2
INTERNAL_ERROR stream resets there failed the macos-latest test leg twice
on this PR (~18 min apart, different modules each time — an upstream
incident, not one bad tile), with the test step never reached. Retry up
to 5 times with growing backoff; a persistent outage still fails loudly
on the last attempt. Follow-up option if it recurs: install the pinned
release binary (sha256-pinned) instead of compiling.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
  • Loading branch information
mikolalysenko and claude committed Aug 20, 2026
commit bc0c425e49cf710060c04fbf84ec4aca4316d22f
24 changes: 23 additions & 1 deletion .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -253,8 +253,30 @@ jobs:
# that path to subsequent steps so `Command::new("vexctl")` in
# the test resolves. Pinned to a tagged release rather than
# @latest for reproducibility.
#
# Retried: the install compiles sigstore/cosign, whose module
# verification reads dozens of sum.golang.org checksum tiles, and
# transient INTERNAL_ERROR stream resets there have failed this
# step on otherwise-green runs (2026-08-20: two attempts ~18 min
# apart, different modules each time — an upstream incident, not
# one bad tile). The backoff rides out short resets; a persistent
# outage still fails loudly on the last attempt. Follow-up option
# if this recurs: install the pinned release BINARY (sha256-pinned)
# instead of compiling, which sidesteps module verification and
# drops ~100s of compile time per leg.
shell: bash
run: |
go install github.com/openvex/vexctl@v0.3.0
for attempt in 1 2 3 4 5; do
if go install github.com/openvex/vexctl@v0.3.0; then
break
fi
if [ "$attempt" = 5 ]; then
echo "::error::go install vexctl failed on all 5 attempts"
exit 1
fi
echo "::warning::go install vexctl attempt $attempt failed; retrying"
sleep $((attempt * 20))
done
echo "$(go env GOPATH)/bin" >> "$GITHUB_PATH"

- name: Run tests
Expand Down
Loading