fix: resolve Docker multi-registry deployment issues #9
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.
Fix Docker Multi-Registry Deployment
This PR resolves issues with Docker multi-registry multi-arch builds that were failing in the release workflow.
Problem
The Docker build workflow was failing with errors when attempting to push images by digest to multiple registries simultaneously:
Root Cause
Docker BuildKit's
push-by-digest=truemode works with a single canonical registry. Attempting to push the same digest to multiple registries at once is not supported because:Solution
Implemented the recommended approach for multi-registry multi-arch builds:
Build Step (Per Platform)
Merge Step (Single Job)
Changes
.github/workflows/build-cli-docker.yml.github/workflows/release.ymlfix-releasebranch to triggers for testing (can be removed after merge)Testing
✅ Successfully tested on fix-release branch: https://github.com/techprimate/github-actions-utils-cli/actions/runs/19237095622
Results:
Docker Images
After this PR, images will be available at:
ghcr.io/techprimate/github-actions-utils-cli:latestdocker.io/techprimate/github-actions-utils-cli:latestBoth support:
linux/amd64linux/arm64Verification
Pull and test the images:
Follow-Up
After merging, optionally remove the
fix-releasebranch trigger fromrelease.ymlif no longer needed for testing.