Stop apt-get update hanging the Linux jobs - #98
Conversation
`azure.archive.ubuntu.com` stopped accepting connections from some runners today, and `apt-get update` has no per-connection timeout: it retried across ~30 index files while holding a runner. One job sat on that line for 26 minutes, and three re-runs did the same, while the g++ job on a byte-identical step passed -- the fault is per-VM network reachability, so nothing in the config distinguishes them. `apt-get install` already falls back to archive.ubuntu.com. So the update gets a short timeout and stops being joined to the install with `&&`, which is what made a hung update block the install entirely.
The evidence, from an instrumented runFound while trying to get #93 green. GitHub logs are not served for in-progress jobs, so the hang was invisible. I put a probe on a throwaway branch: verbose acquire output, a
So the mirror the runner image prefers was blackholing, Two consequences shaped the fix:
Also confirmed in the same log, since it would have been the cheaper fix: the image does not ship Boost (
|
azure.archive.ubuntu.com-- the mirror the ubuntu image prefers --stopped accepting connections from some runners today, and
apt-get updateconsults it for every index target. One job held a runner 26minutes there; three re-runs did the same while a byte-identical
sibling step passed, so it is per-VM reachability, not this file.
The runner lists archive.ubuntu.com behind it, so a composite action
drops the dead line before every apt call -- including before setup-r,
which installs R's system deps inside the action. Steps that hung on
this now take 11-19s.