Skip to content

ci: bound the apt install and prefer the canonical Ubuntu archive - #81

Merged
abrichr merged 1 commit into
mainfrom
claude/bound-apt-install
Aug 19, 2026
Merged

ci: bound the apt install and prefer the canonical Ubuntu archive#81
abrichr merged 1 commit into
mainfrom
claude/bound-apt-install

Conversation

@abrichr

@abrichr abrichr commented Aug 19, 2026

Copy link
Copy Markdown
Member

The problem

Install system dependencies has no timeout-minutes. On 2026-08-19 it ran for over an hour on main (run 32290540907, commit 7c83ba2) before I cancelled it. Every earlier main run of this workflow had succeeded, so this is an environment fault meeting an unbounded step.

5 Install system dependencies: in_progress
6 Install dependencies: pending
7 Run tests: pending

The same Azure apt mirror fault stopped the paper build in openadapt-flow on the same day (fixed there by openadapt-flow#374).

The change

The hosted runner resolves its Ubuntu mirror through /etc/apt/apt-mirrors.txt, which points at azure.archive.ubuntu.com. apt does eventually fall back to the canonical archive, but it spends the whole budget getting there. So:

  • point apt-mirrors.txt at http://archive.ubuntu.com/ubuntu before apt-get update, best-effort;
  • retry apt-get update three times with backoff;
  • fail with an explicit message if all three fail, instead of hanging;
  • bound the step at 10 minutes.

The package list is unchanged.

Evidence this works

The identical change in openadapt-flow took the TeX install from a 10 minute timeout to 83 seconds on the next run.

🤖 Generated with Claude Code

The Install system dependencies step had no timeout. On 2026-08-19 the
Azure apt mirror failed, and the step ran for over an hour on main before
I cancelled it. The same mirror fault stopped the paper build in
openadapt-flow on the same day.

The hosted runner resolves its mirror through /etc/apt/apt-mirrors.txt,
which points at azure.archive.ubuntu.com. apt does fall back to the
canonical archive, but it spends the whole budget first. Point the file at
the canonical archive before apt-get update, retry update three times with
backoff, and fail with a clear message instead of a silent hang. The step
also gets a 10 minute bound.

The package list is unchanged.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@abrichr
abrichr merged commit 90557ef into main Aug 19, 2026
12 checks passed
@abrichr
abrichr deleted the claude/bound-apt-install branch August 19, 2026 19:29
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