chore(ci): add cosign signing to community image builds - #3302
chore(ci): add cosign signing to community image builds#3302Fortune-Ndlovu wants to merge 6 commits into
Conversation
Add keyless cosign signing to the multi-arch merge job so that community images at quay.io/rhdh-community/operator and operator-catalog are signed after the multi-arch manifest is created. This allows consumers to verify image provenance using cosign verify with the GitHub Actions OIDC issuer. Signed-off-by: Fortune Ndlovu <fndlovu@redhat.com>
PR Summary by Qodoci: keyless cosign signing for community multi-arch images
AI Description
Diagram
High-Level Assessment
Files changed (1)
|
Code Review by Qodo
Context used✅ Compliance rules (platform):
18 rules✅ Cross-repo context Not relevant to this PR:
redhat-developer/rhdh Not relevant to this PR:
redhat-developer/rhdh-plugins 1.
|
|
/build-images |
|
❌ Image build failed See workflow run for details: https://github.com/redhat-developer/rhdh-operator/actions/runs/30548358272 Triggered by @Fortune-Ndlovu |
|
/agentic_review |
|
Code review by qodo was updated up to the latest commit 27f5060 |
Use buildx template for digest retrieval instead of fragile JSON parsing, add credential guard and null-check for graceful fallback. Signed-off-by: Fortune Ndlovu <fndlovu@redhat.com> Signed-off-by: Fortune-Ndlovu <fndlovu@redhat.com>
|
/agentic_review |
|
Code review by qodo was updated up to the latest commit da21d3d |
Address review feedback: resolve each tag's digest independently instead of assuming all tags share one digest, and fail the build if digest resolution fails rather than silently skipping signing. Signed-off-by: Fortune Ndlovu <fndlovu@redhat.com> Signed-off-by: Fortune-Ndlovu <fndlovu@redhat.com>
Fix HAS_QUAY_AUTH to check vars.QUAY_USERNAME (matching the login step) instead of secrets.QUAY_USERNAME. Add required env var checks with failing parameter expansion, matching the pattern in other steps of the same workflow. Signed-off-by: Fortune Ndlovu <fndlovu@redhat.com> Signed-off-by: Fortune-Ndlovu <fndlovu@redhat.com>
|
/agentic_review |
|
Code review by qodo was updated up to the latest commit 9f9de5c |
The preceding "Create manifest lists" step already validates these variables; they are guaranteed non-empty by the time signing runs. Signed-off-by: Fortune Ndlovu <fndlovu@redhat.com> Signed-off-by: Fortune-Ndlovu <fndlovu@redhat.com>
9f9de5c to
55e7a05
Compare
The --format '{{println .Digest}}' template field does not exist in
imagetools inspect. Parse the standard output instead.
Signed-off-by: Fortune Ndlovu <fndlovu@redhat.com>
Signed-off-by: Fortune-Ndlovu <fndlovu@redhat.com>
|
| set -euo pipefail | ||
| export REGISTRY_WITH_ORG="${REGISTRY}/${REGISTRY_ORG}" | ||
|
|
||
| for image in "${OPERATOR_IMAGE_NAME}" "${OPERATOR_IMAGE_NAME}-catalog"; do |
There was a problem hiding this comment.
| for image in "${OPERATOR_IMAGE_NAME}" "${OPERATOR_IMAGE_NAME}-catalog"; do | |
| for image in "${OPERATOR_IMAGE_NAME}" "${OPERATOR_IMAGE_NAME}-bundle" "${OPERATOR_IMAGE_NAME}-catalog"; do |
Is the bundle image intentionally excluded?



mergejob innext-container-build.yamlquay.io/rhdh-community/operatorandoperator-catalogwill be signed after the multi-arch manifest is createdcosign verifyusing the GitHub Actions OIDC issuerResolves: https://redhat.atlassian.net/browse/RHDHBUGS-3542
How to test: https://redhat.atlassian.net/browse/RHDHBUGS-3542?focusedCommentId=17811110
Signed-off-by: Fortune Ndlovu fndlovu@redhat.com