ci: configure docker publish to ghcr - #18
Conversation
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: ASSERTIVE Plan: Pro Plus Run ID: 📒 Files selected for processing (2)
WalkthroughDocker build inputs and OCI metadata were updated. A GitHub Actions workflow now builds, publishes, attests, and health-checks multi-architecture images. CodeQL and Go release workflow setup steps were also revised. ChangesContainer Delivery
CI Toolchain Configuration
Estimated code review effort: 3 (Moderate) | ~25 minutes Sequence Diagram(s)sequenceDiagram
participant GitHubActions as GitHub Actions
participant Buildx
participant GHCR
participant Container as Docker container
GitHubActions->>Buildx: Build multi-platform image
Buildx->>GHCR: Push image and artifacts
GitHubActions->>GHCR: Create digest attestation
GitHubActions->>GHCR: Pull image by digest
GitHubActions->>Container: Run image and poll /health
Possibly related PRs
Poem
🚥 Pre-merge checks | ✅ 4✅ Passed checks (4 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.
Actionable comments posted: 3
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In @.github/workflows/docker-publish.yml:
- Line 47: Update every referenced GitHub Action in the docker-publish
workflow—including checkout, QEMU, Buildx, login, metadata, build-push, and
attest-build-provenance—to use the exact verified commit SHA corresponding to
its current version tag. Preserve each action’s existing version and
configuration while replacing only the mutable tag references, and confirm all
seven SHAs before merging.
- Around line 46-47: Update the actions/checkout step in the Docker publish
workflow to set persist-credentials to false, ensuring checkout credentials are
not retained for subsequent steps.
- Around line 70-96: Add explicit metadata-action tag rules in the “Extract
Docker metadata” step for the intended main and latest tags, or revise the
surrounding comments to describe the actual output from type=edge,branch=main.
Keep the existing semver and SHA rules unchanged.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: ASSERTIVE
Plan: Pro
Run ID: fd77ee1d-253e-4d3c-89e8-85636d08ba2a
📒 Files selected for processing (5)
.dockerignore.github/workflows/codeql.yml.github/workflows/docker-publish.yml.github/workflows/release-goreleaser.ymlDockerfile
💤 Files with no reviewable changes (1)
- .github/workflows/codeql.yml
Addressed Issues:
Feature: GHCR Docker Publish
Screenshots/Recordings:
N/A
Additional Notes:
docker pull/docker pusherrors on GHCR since repository names must be fully lowercase.--cache-from=type=ghato the PR verification script to speed up builds by reusing the layers created bydocker/build-push-action.Checklist
We encourage contributors to use AI tools responsibly when creating Pull Requests. While AI can be a valuable aid, it is essential to ensure that your contributions meet the task requirements, build successfully, include relevant tests, and pass all linters. Submissions that do not meet these standards may be closed without warning to maintain the quality and integrity of the project. Please take the time to understand the changes you are proposing and their impact.
Summary by CodeRabbit