fix: resolve Docker build workflow warnings#141
Conversation
Add the new artifact-metadata:write permission (GA since Jan 2026) to all Docker workflows and examples that use actions/attest-build-provenance. This fixes the "Failed to create storage record" warning. Also bump github-action-image-build-and-push to pick up the actions/cache v4→v5 update, fixing the Node.js 20 deprecation warning.
There was a problem hiding this comment.
Pull request overview
Updates Docker-related GitHub Actions workflows (and example consumers) to eliminate new GitHub warnings by adjusting permissions and refreshing the pinned image build/push action.
Changes:
- Add
artifact-metadata: writeto permissions in Docker build and promote workflows (and example workflows) to address new fine-grained permission requirements. - Add missing top-level
permissionsblocks to reusable “promote” workflows that generate attestations. - Bump
NethermindEth/github-action-image-build-and-pushpin to a newer commit to pick up upstream dependency updates (incl. cache action update).
Reviewed changes
Copilot reviewed 11 out of 11 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| examples/docker/promote-jfrog.yml | Adds artifact-metadata: write permission to the example promotion workflow. |
| examples/docker/promote-dockerhub.yml | Adds artifact-metadata: write permission to the example promotion workflow. |
| examples/docker/docker-push-multiple-jfrog.yaml | Adds artifact-metadata: write permission to the multi-image JFrog example. |
| examples/docker/build-push-jfrog-simple.yml | Adds artifact-metadata: write permission to the simple JFrog build example. |
| examples/docker/build-push-jfrog-complete.yml | Adds artifact-metadata: write permission to the complete JFrog build example. |
| examples/docker/build-push-dockerhub-simple.yml | Adds artifact-metadata: write permission to the simple Docker Hub build example. |
| examples/docker/build-push-dockehub-complete.yml | Adds artifact-metadata: write permission to the complete Docker Hub build example. |
| .github/workflows/docker-promote-jfrog.yaml | Adds explicit top-level permissions for promotion + attestations. |
| .github/workflows/docker-promote-dockerhub.yaml | Adds explicit top-level permissions for promotion + attestations. |
| .github/workflows/docker-build-push-jfrog.yaml | Adds artifact-metadata: write and bumps the pinned image build/push action commit. |
| .github/workflows/docker-build-push-dockerhub.yaml | Adds artifact-metadata: write and bumps the pinned image build/push action commit. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| @@ -40,6 +40,12 @@ on: | |||
| required: false | |||
| default: false | |||
There was a problem hiding this comment.
inputs.skip_attest is declared as type: string but its default is the boolean false, and later the workflow compares it to the string 'true'. This type/default mismatch can cause reusable-workflow validation errors or unexpected coercion. Consider making skip_attest a boolean input (with default: false) and updating the if: expression accordingly, or keep it as a string and quote the default (e.g. "false") and document accepted values.
| default: false | |
| default: "false" |
Summary
artifact-metadata: writepermission to all Docker build/promote workflows and examples (new GA permission since Jan 2026)github-action-image-build-and-pushto pick up theactions/cachev4→v5 update (fixes Node.js 20 deprecation warning)permissionsblock to promote workflows that useactions/attest-build-provenanceFixes warnings from: https://github.com/NethermindEth/angkor-platform-api/actions/runs/24246678153
Test plan
artifact-metadata:writewarningactions/cache