Skip to content

ci: bound and retry the i686 job's apt calls, so a hung Ubuntu mirror retries instead of cancelling the job - #1248

Merged
DrunkOnJava merged 2 commits into
mainfrom
ci/apt-bounded-retry
Nov 2, 2026
Merged

DrunkOnJava merged 2 commits into
mainfrom
ci/apt-bounded-retry

Conversation

@DrunkOnJava

Copy link
Copy Markdown
Owner

Summary

The i686 job's Install gcc-multilib step now bounds each apt-get call (timeout, apt's own HTTP timeouts and retries) and tries three times, so a mirror that stops answering costs one retry instead of the whole job. Three failed attempts still fail the job.

Motivation

On the 0.12.1 release PR (#1242, run 41259023170, 2026-11-01) apt-get update stalled after the Azure Ubuntu mirror stopped answering and sat for 30 minutes until the job timeout cancelled it. The cancelled job failed CI passed with no test having run: a false red from infrastructure, not from the code.

Changes

  • .github/workflows/ci.yml, 32-bit overflow checks (i686): the apt step gets timeout-minutes: 17, timeout 120 on update and timeout 180 on install, Acquire::Retries=3 and 30 s HTTP/HTTPS timeouts, three attempts with a warning annotation on each retry, and exit 1 after the third. No other workflow calls apt.

Testing

Unit tests are banned in this repository: do not add them. Show the change working end to end on real files instead.

  • Workflow YAML parses; ci.yml is the only file changed, mode unchanged.
  • This PR's own CI runs the step: the i686 job installs gcc-multilib and runs its checks.
  • N/A: IFC exporter, performance.

Audit-honesty checklist

  • README / docs reflect the current state after this PR
  • N/A: changelog fragment (CI only, nothing a user sees)
  • Commit messages describe what changed and why
  • No emojis in code, docs, or commit messages
  • No private paths, personal email addresses, or internal jargon in committed files

Legal and contribution hygiene

  • Apache-2.0
  • No Autodesk proprietary content
  • No fixtures

Breaking changes

None.

@DrunkOnJava DrunkOnJava added area:ci Work in the ci area. type:ci Continuous integration or automation work. labels Nov 2, 2026
@DrunkOnJava
DrunkOnJava enabled auto-merge (squash) November 2, 2026 22:57
@DrunkOnJava
DrunkOnJava merged commit c8620bd into main Nov 2, 2026
29 checks passed
@DrunkOnJava
DrunkOnJava deleted the ci/apt-bounded-retry branch November 2, 2026 23:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area:ci Work in the ci area. type:ci Continuous integration or automation work.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant