Repository navigation
Security: scan the arm64 release image before publishing it - #49
Merged
Merged
Conversation
The Trivy gate read a linux/amd64 image built and loaded for that purpose, while the push carried linux/amd64 and linux/arm64, so every release published an arm64 image nothing had scanned. Build arm64 under the QEMU already set up for the job, scan it on the same terms, and assert in the workflow test that every published platform has a build-and-scan pair ahead of the push.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
linux/arm64, built under the QEMU the job already sets up.stackyard:scan-amd64,stackyard:scan-arm64) and write both to the GHA layer cache, so the push step still rebuilds from cache.release-workflow.test.jswith a check that the platforms in the push and the platforms that get scanned are the same set, and that both scans fail the job on a HIGH or CRITICAL finding.docs/security.md, which stated that arm64 could not be scanned before it is pushed.Testing
All green, apart from the Docker build smoke test, which needs a local Docker daemon. The release workflow itself only runs on a tag, so the added coverage is in
release-workflow.test.js: every published platform must have a build-and-scan pair ahead of the push.Checklist