chore: Extract or delete the fleet's Docker CLI install step #59
Labels
No labels
priority/P0
priority/P1
priority/P2
priority/P3
size/L
size/M
size/S
size/XL
size/XS
state/blocked
state/done
state/in-progress
state/in-review
state/needs-refinement
state/ready
type/bug
type/chore
type/feature
type/refactor
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
amtronics/platform-actions#59
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Context
The "Install the Docker CLI" step is duplicated across the fleet: every one of the twelve app repositories carries at least one
docker-ce-cliinstall site in its workflows (the template's publish job), andahmad/expiro/ahmad/lardacarry four each — 16+ copies. Only the expiro/larda copies have the dead-suite sed guard (their #67/#69/#72 and #21), so the copies have already diverged once. The conventions forbid exactly this class of duplication.The sequencing question this needs
amtronics/infrastructure-vps#420(move the runner default image off bullseye) may land an image that ships the Docker CLI — in which case the fleet-wide fix is deleting these steps, not extracting them, and an extraction converted into twelve repos would be churn twice. The issue is parked on that answer:install-docker-clihere, convert consumers, and future changes (like the sed guard) happen once.Scope (if extraction is chosen)
Acceptance criteria (if extraction is chosen)
Human decision recorded (2026-09-08): wait for infrastructure-vps#420's runner-image outcome — extraction first would risk churn twice. Stays parked on that issue; if the new image ships the CLI, this closes in favour of per-repo deletions.
The sequencing question is answered, so this is no longer parked and can be picked up.
amtronics/infrastructure-vps#420landed today: the runner's default job image isnode:22-bookworm, converged on the host and verified — the runner re-declared the four labels at start, andapt-get updatesucceeds in the image, which is what was dead on bullseye.I checked what the new image actually ships, since that was the whole question here:
No Docker CLI. So the answer is the second branch: extract the proven install step into a composite action here and convert the consumers. Deleting the steps is not an option — nothing in the default image provides
docker.Two things that follow, and neither needs a decision from anyone:
sedguard that expiro and larda carry can be dropped in the extracted version. It existed because bullseye's security suite stopped serving; bookworm's does not. Keep the extraction faithful otherwise.curlis present butjqis not, which is whyopenbao-fetchinstalls both on demand. That install now works again, but it is the same duplication smell in a second place — see the issue I am opening about the notify path being a hard failure.Moving to
state/ready.