ci(docker): avoid secret-masked image outputs#280
Conversation
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (2)
📝 WalkthroughWalkthroughThe Docker workflow is updated to propagate image references as digests rather than composed tag strings. Digest-pinned image propagation
Estimated code review effort🎯 2 (Simple) | ⏱️ ~10 minutes Possibly related PRs
Suggested reviewers
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Pull request overview
This PR updates the Docker CI workflow to avoid cross-job outputs being dropped due to GitHub secret masking by passing only sha256:... digests between jobs and reconstructing digest-pinned image refs inside the consumer jobs.
Changes:
- Switch
sync_checkpoints→publichandoff from a full image ref output to a barecheckpoints_digestoutput. - Reconstruct the digest-pinned checkpoint image ref inside the
publicjob and use that forbuildxbuild args. - Build the Astera overlay from the exact public image digest (not a
sha-<short-sha>tag) and update README wording accordingly.
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated no comments.
| File | Description |
|---|---|
README.md |
Updates Docker CI docs to describe digest-based handoff for the Astera overlay image. |
.github/workflows/docker.yml |
Changes inter-job outputs to digests and reconstructs digest-pinned image refs inside jobs to avoid secret-masked outputs. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Summary
sync_checkpointsoutputWhy
The Docker workflow currently mirrors and verifies checkpoints successfully, then GitHub skips the
checkpoints_imagejob output because the full image ref appears to contain a secret-matched value. The public image job receives an emptyCHECKPOINTS_IMAGEand exits before any image build starts.This keeps cross-job outputs to bare
sha256:...digests, then reconstructs image refs inside the consumer job where they are used.Validation
git diff --checkruby -e 'require "yaml"; YAML.load_file(".github/workflows/docker.yml")'\n-actionlint .github/workflows/docker.ymlSummary by CodeRabbit