ci: put buildah login flags before the registry #3
No reviewers
Labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
mobrule/mobrule-ci!3
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "ci/buildah-login-flag-order"
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?
Follow-up to #2, which merged before this fix was pushed — so the branch carried it but
mainnever got it.The failure
Older buildah disables interspersed flag parsing on
login, soreads
--username,xand--password-stdinas additional positionals and rejects the lot. Newer buildah accepts either order.The fix
Flags before the registry. Verified both orders parse identically on buildah 1.33.7, so this is correct on old and new alike and does not expire when the runner image updates.
Every other
buildahcall in the workflow —bud,push,from,run,rm— already had its flags first.loginwas the only one with a positional ahead of them.Also
Defaults
GITHUB_ACTOR. It is not guaranteed to be populated on this forgejo instance, and an empty username would have been the next failure in line.Note on updating buildah instead
Worth recording why that is not the fix here. Which buildah version the job gets is decided by the runner's base image, which
runs-on: ubuntu-latestresolves through this forgejo instance. Forcing a newer one means either pinning the job'scontainer:— which needs the container runtime that #2 was working around — or adding a third-party repo, and the Kubic repos that used to serve newer buildah are deprecated. Flags-first costs nothing and is version-agnostic.The diagnostics step added in #2 prints
buildah versionbefore login, so the failing run's log already records which version the runner actually carries.