fix(ci): reduce apt-get noise/fragility and allow per-job dispatch #112

Merged
rootiest merged 3 commits from ci-robustness-and-dispatch into main 2026-08-21 05:10:02 +00:00
3 Commits
Author SHA1 Message Date
rootiest c47b51cd6e feat(ci): allow triggering test or build-docs individually
workflow_dispatch already ran the whole pipeline manually, but there
was no way to fire just one job (e.g. re-run docs generation without
re-running the fish test suite) the way the old standalone
build-docs.yml let you. Add a job choice input (all/test/build-docs,
defaulting to all) and gate each job on it via `if:`, while leaving
the push-triggered path's needs: test gating untouched.
2026-08-21 00:58:30 -04:00
rootiest c4e225b007 fix(ci): retry apt-get update and skip recommended packages
Two more sources of CI noise/fragility alongside the debconf frontend
fix: fish's install pulls in man-db/groff-base/xsel as recommends,
triggering a slow mandb rebuild for tooling nothing here uses;
--no-install-recommends skips that. apt-get update had no retry
policy, so a transient blip against the PPA mirror failed the whole
job; -o Acquire::Retries=3 gives it a few chances first.
2026-08-21 00:54:54 -04:00
rootiest f7598e5e23 fix(ci): set DEBIAN_FRONTEND=noninteractive for apt-get installs
apt-get install was probing for a Dialog then Readline debconf frontend
before falling back to Teletype on the non-interactive CI runner,
adding noise and failed-negotiation log lines to every run. Passing
DEBIAN_FRONTEND=noninteractive directly on the sudo command line (env
vars set via step-level `env:` don't survive sudo's env_reset) skips
the negotiation and goes straight to the frontend that actually works
here.
2026-08-21 00:52:55 -04:00