Skip to content

fix(cabal-build-tests): skip broken savannah config refresh - #3636

Open
OlufemiAdeOlusile wants to merge 1 commit into
masterfrom
fix/cabal-build-doc-link
Open

fix(cabal-build-tests): skip broken savannah config refresh#3636
OlufemiAdeOlusile wants to merge 1 commit into
masterfrom
fix/cabal-build-doc-link

Conversation

@OlufemiAdeOlusile

@OlufemiAdeOlusile OlufemiAdeOlusile commented Aug 20, 2026

Copy link
Copy Markdown
Collaborator

The cabal build test failed on Ubuntu and Fedora. It failed at the libsodium step.

git.savannah.gnu.org is down right now. It returns error 502. libsodium's autogen.sh downloads two files from there. It does not check if the download worked. The bad response corrupted the files. That broke the build.

Fix: skip that download. Use the files already on disk instead. Also fixed a stale doc link in the script's header comment.

Note on scope: the public build docs do not use this flag. A person following the docs by hand today hits the same failure we hit. This PR only fixes our own test script. It does not fix the docs, and it does not fix libsodium's autogen.sh, since neither is our codebase.

Savannah may come back online later. Keep the fix anyway. It only skips a repeat download of two files. autoreconf and libtoolize already create those files correctly for Ubuntu and Fedora builds.

Reran the build on both distros against cardano-node 11.1.0. Both builds passed. Both produced working cardano-node and cardano-cli binaries. Run logs and a full explanation are in the comments below. There is no CI job for this test.

git.savannah.gnu.org is returning 502s, which was corrupting
config.guess/config.sub during the libsodium build and breaking the
cabal build test on both Ubuntu and Fedora. Skip the refresh and use
the vendored files instead. Also fixed a stale doc link.

Verified both distros build cardano-node/cardano-cli 11.1.0 cleanly.
@OlufemiAdeOlusile
OlufemiAdeOlusile force-pushed the fix/cabal-build-doc-link branch from 04093de to 7337c48 Compare August 20, 2026 13:35
@OlufemiAdeOlusile

Copy link
Copy Markdown
Collaborator Author

Ran this locally since there's no CI job for cabal_build_tests. Logs below are from the actual runs, not summarized after the fact.

Before the fix, same failure on both distros, both against cardano-node 11.1.0:

Ubuntu:

checking build system type... ./build-aux/config.guess: line 1: syntax error near unexpected token `newline'
configure: error: cannot guess build type; you must specify one
...
Error: [Cabal-7107]

Fedora:

configure: error: cannot run /bin/sh ./build-aux/config.sub
...
Error: [Cabal-7107]

After the fix, both distros:

Verify 'cardano-cli' is installed
Verify 'cardano-node' is installed

Success

Both verify steps check the installed binary's --version output against the actual checked-out git revision, so this isn't just "exited 0", the binaries are confirmed built from 11.1.0.

These runs were against the fix before the later squash/comment cleanup (04093de4 -> 7337c482); no executable line changed in that squash, only comments, so this still reflects what's on the branch now.

@OlufemiAdeOlusile

Copy link
Copy Markdown
Collaborator Author

Full unedited logs (not excerpts) for all four runs: https://gist.github.com/OlufemiAdeOlusile/52b939096246acf24615678e3bf88605

  • ubuntu-run.log / fedora-run.log: before the fix, both fail at the libsodium configure step (Ubuntu: fedora-run.log:1421 / Ubuntu: ubuntu-run.log:1713)
  • ubuntu-run2.log / fedora-run2.log: after the fix, both end in Success (last line of each file)

How the pass/fail is determined, since there's no CI wrapper here: install-node.sh's own last two checks compare cardano-cli --version and cardano-node --version output against the git revision actually checked out (git rev-parse HEAD after git checkout 11.1.0), and exit 1 with an error line if either doesn't match (see the script's Verify section). Success only prints if both checks pass, i.e. if the binaries that got built really are 11.1.0. In ubuntu-run2.log / fedora-run2.log there's no failed line before Success, and grepping the full files for Cabal-7107/configure: error (the exact errors from the failing runs) returns nothing.

@OlufemiAdeOlusile

Copy link
Copy Markdown
Collaborator Author

Added a plain-language README to the gist (same link as above) explaining why it failed and what the fix does, alongside the raw logs: https://gist.github.com/OlufemiAdeOlusile/52b939096246acf24615678e3bf88605#file-readme-md

@OlufemiAdeOlusile

Copy link
Copy Markdown
Collaborator Author

Update: git.savannah.gnu.org is back up now, HTTP 200. Reran the original unfixed script, no changes, on both distros against 11.1.0. Both now pass on their own, no fix needed.

This confirms the root cause. Same script, same target commit, fails on both distros when Savannah is down, passes on both distros when it is up. Nothing else changed between the two test rounds.

So this fix is not required to unblock the release right now. It is still worth keeping. It removes a dependency on an external site that has no error checking, on a code path that adds nothing for a standard Ubuntu or Fedora x86_64 build. If Savannah has another outage later, this branch will not care.

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