Skip to content

Fall back to ftp.gnu.org when ftpmirror.gnu.org serves a bad file#231

Merged
jas88 merged 1 commit into
mainfrom
fix/gnu-mirror-fallback
May 6, 2026
Merged

Fall back to ftp.gnu.org when ftpmirror.gnu.org serves a bad file#231
jas88 merged 1 commit into
mainfrom
fix/gnu-mirror-fallback

Conversation

@jas88
Copy link
Copy Markdown
Owner

@jas88 jas88 commented May 6, 2026

Summary

  • ftpmirror.gnu.org redirects to a random mirror; one occasionally serves a corrupt or unrelated file. Recent CI failure on PR Bump NUnit from 4.5.1 to 4.6.0 #229 (and others) was an autoconf-2.72.tar.xz sha256 mismatch.
  • Wrap the autoconf/automake fetches in a helper that retries the canonical ftp.gnu.org source on HTTP failure or checksum mismatch.
  • Use curl -f so HTTP error pages are not saved as the artifact and then fed to tar.

Test plan

  • CI passes on this PR (downloads succeed via ftpmirror.gnu.org, normal path).
  • Re-run a previously-failing build (e.g. PR Bump NUnit from 4.5.1 to 4.6.0 #229) after merge — should no longer fail on the autoconf checksum.

Summary by cubic

Add a robust GNU source fetch in CI to stop flaky checksum failures by falling back to https://ftp.gnu.org when https://ftpmirror.gnu.org serves a bad file. Also use curl -f so HTTP error pages aren’t saved and fed to tar.

  • Bug Fixes
    • Added fetch_gnu() in .github/workflows/build.yml that tries ftpmirror.gnu.org first, then ftp.gnu.org, verifies SHA-256, and retries on failure.
    • Switched to curl -fsSL with retries and removed bad artifacts on checksum mismatch.
    • Stabilizes downloads for autoconf 2.72 and automake 1.18.1; resolves CI checksum failures seen in builds like PR Bump NUnit from 4.5.1 to 4.6.0 #229.

Written for commit e5bc055. Summary will update on new commits.

ftpmirror.gnu.org redirects to a random mirror; one occasionally serves a
corrupt or unrelated file (recent CI failure: autoconf-2.72.tar.xz checksum
mismatch). Wrap the autoconf/automake fetches in a helper that retries the
canonical ftp.gnu.org source on either HTTP failure or checksum mismatch,
and use curl -f so error pages are not saved as the artifact.
Copy link
Copy Markdown

@cubic-dev-ai cubic-dev-ai Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No issues found across 1 file

@jas88 jas88 merged commit 7e97b3f into main May 6, 2026
5 checks passed
@jas88 jas88 deleted the fix/gnu-mirror-fallback branch May 6, 2026 14:54
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