Skip to content

fix(ci): honor per-caller Docker pull inputs in Linux fresh-host job#192

Merged
jsugg merged 3 commits into
mainfrom
wire-linux-fresh-host-pull-inputs
Jun 18, 2026
Merged

fix(ci): honor per-caller Docker pull inputs in Linux fresh-host job#192
jsugg merged 3 commits into
mainfrom
wire-linux-fresh-host-pull-inputs

Conversation

@jsugg

@jsugg jsugg commented Jun 18, 2026

Copy link
Copy Markdown
Owner

Summary

Follow-up to the registry-backoff fix. The Linux fresh-host job read the Docker-pull tuning from the reusable workflow's top-level env, so it silently ignored the per-caller docker_pull_* inputs — only the macOS job wired them through. As a result the Linux prepull ran at a hard-coded parallelism of 4 regardless of what callers requested (2), and the retry budget could only be tuned globally.

This wires the Linux job to honor the per-caller inputs, exactly like the macOS job, and removes the now-dead top-level fallbacks so the inputs are the single source of truth.

Changes

  • fresh-host-core.yml: add the FRESH_HOST_SELECTED_DOCKER_PULL_PARALLELISM / FRESH_HOST_SELECTED_DOCKER_PULL_MAX_ATTEMPTS env to the linux-fresh-host job (mirrors the macOS job); remove the hard-coded top-level FRESH_HOST_DOCKER_PULL_PARALLELISM/FRESH_HOST_DOCKER_PULL_MAX_ATTEMPTS env; raise the docker_pull_max_attempts input default to 5.
  • nightly.yml / fresh-host-acceptance.yml: set the retry-budget inputs to 5 so the budget is preserved now that Linux honors them; correct the input descriptions that wrongly said "macOS" only.
  • Contract test: assert both jobs map the SELECTED pull env to the inputs and that the dead top-level fallbacks stay gone.

Net effect (consistent across Linux + macOS, all lanes)

  • Pull parallelism: 2 everywhere (was Linux 4, macOS 2) — honors the configured value and reduces concurrent registry pressure.
  • Pull retry budget: 5 everywhere (was Linux 5, macOS 3) — keeps the exponential registry backoff effective on both platforms.

@jsugg jsugg force-pushed the wire-linux-fresh-host-pull-inputs branch from 40aab51 to 0a27753 Compare June 18, 2026 01:33
jsugg added 3 commits June 17, 2026 22:34
The Linux fresh-host job read its Docker-pull tuning from the reusable workflow's top-level env, so it ignored the per-caller docker_pull_* inputs that only the macOS job wired through. The Linux prepull therefore ran at a hard-coded parallelism of 4 regardless of the requested 2, and the retry budget could not be tuned per caller.

Wire the Linux job to honor the inputs (mirroring macOS) and drop the dead top-level fallbacks so the inputs are the single source of truth. Standardize the retry budget to 5 across callers so the registry backoff stays effective, and correct the input descriptions that wrongly claimed macOS-only scope. Net: parallelism 2 and retry budget 5 on both platforms across all lanes. Add a contract test locking the wiring.
@jsugg jsugg merged commit ec18634 into main Jun 18, 2026
18 checks passed
@jsugg jsugg deleted the wire-linux-fresh-host-pull-inputs branch June 18, 2026 02:06
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