Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

test-build-containers.yaml

Triggers: pull requests (opened/reopened/synchronize/labeled) touching containers/**, .goreleaser.yaml, .release-please-manifest.json, or this workflow file - gated on the PR carrying the docker label.

Actually builds all four container images (ansible, base, deb, ubi) via goreleaser release --snapshot --clean --skip=sign,sbom, closing a gap scan-lint.yaml’s hadolint job (syntax only) does not cover: a Dependabot bump that breaks the actual build wasn’t otherwise caught until release.

These Dockerfiles are written for GoReleaser’s dockers_v2 pipe, not a plain docker build - several COPY nfpm-produced .rpm/.deb packages and extra files that only GoReleaser stages. That pipe has no per-image build flag, so a snapshot build always builds all four images together; there’s no cheaper way to build “just the one that changed.”

labeled is included in types because Dependabot’s docker label is applied after the PR opens - without it, the if condition would be evaluated (and fail) on the opened event before the label exists, and nothing would re-trigger once it’s added.

--snapshot skips publish/validate/announce entirely - nothing is pushed anywhere.