Skip to content

Stopped apt-get update being the gate it was never meant to be - #7

Merged
fdesbiens merged 1 commit into
eclipse-threadx:devfrom
fdesbiens:fix/apt-update-not-a-gate
Sep 9, 2026
Merged

Stopped apt-get update being the gate it was never meant to be#7
fdesbiens merged 1 commit into
eclipse-threadx:devfrom
fdesbiens:fix/apt-update-not-a-gate

Conversation

@fdesbiens

Copy link
Copy Markdown
Contributor

main went red on the Phase-0 release merge, and the cause was outside this project.

Google's Chrome apt repository served a Packages.gz that did not match its own Release file — their CDN caught mid-publish, with the index eight hours older than the manifest describing it. apt-get update fails if any configured repository serves a bad index, so install.sh failed three attempts running and nothing was built.

Verified as theirs rather than ours, by fetching both files from a second machine:

Their Release asks for 233e56de…
The Packages.gz they serve bc1428ab…

Those are the two hashes in the failing log. Not a runner glitch and not a network blip — a re-run got the same answer, and it will until they republish.

Nothing in this project installs a browser. The runner image happens to carry that repository and Microsoft's, and one of them being broken was enough to stop a build that needs neither.

The change

apt-get update now warns instead of aborting, and apt-get install is the gate.

Nothing is weakened. apt-get install still fails hard on a package it cannot find, so an archive that is genuinely unreachable still stops the script — one step later, and naming the package it could not get, which is a better diagnostic than a hash mismatch in a repository nobody asked for.

The alternative that is not taken

Disabling third-party sources before updating would make the update strict again. It is not done, because install.sh also runs on a contributor's own machine, and silently rewriting someone's apt configuration to suit our CI would be a considerably worse thing to do than tolerating a stale index for a repository we do not read.

Verification

Both directions: a failing update warns and execution continues past it, and a genuine command failure still aborts under set -euo pipefail.

A release build went red because Google's Chrome apt repository served a
Packages.gz that did not match its own Release file -- their CDN caught
mid-publish, the index eight hours older than the manifest describing it.
apt-get update fails if ANY configured repository serves a bad index, so
install.sh failed three attempts running, and nothing was built.

Verified as theirs rather than ours, from a second machine: the Release file
asks for 233e56de and the Packages.gz they serve hashes to bc1428ab, which are
the two hashes in the failing log. Not a runner glitch and not a network blip;
retrying gets the same answer until they republish.

Nothing in this project installs a browser. The runner image happens to carry
that repository and Microsoft's, and one of them being broken is now enough to
stop a build that needs neither.

SO THE UPDATE WARNS AND THE INSTALL IS THE GATE. Nothing is weakened by that.
apt-get install still fails hard on a package it cannot find, so an archive
that is genuinely unreachable still stops the script -- one step later, and
naming the package it could not get, which is a better diagnostic than a hash
mismatch in a repository nobody asked for.

THE OBVIOUS ALTERNATIVE IS WORSE AND IS NOT TAKEN. Disabling third-party
sources before updating would make the update strict again, and this script
also runs on a contributor's own machine, where silently rewriting their apt
configuration to suit our CI would be a considerably worse thing to do than
tolerating a stale index for a repository we do not read.

Verified in both directions: a failing update warns and execution continues
past it, and a genuine command failure still aborts under set -e.

Assisted-by: Claude Code (Opus 5) <noreply@anthropic.com>
@fdesbiens
fdesbiens merged commit 50b4a73 into eclipse-threadx:dev Sep 9, 2026
3 checks passed
@fdesbiens
fdesbiens deleted the fix/apt-update-not-a-gate branch September 9, 2026 17:51
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