Fix gcr-io supplemental image build triggers#79380
Conversation
…lone The ci_commenter_latest image is now actively managed by the openshift/ci-tools-standalone promotion pipeline. Retarget the gcr-io BuildConfig to ci_test-infra-commenter_latest so it no longer overwrites the promoted image. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
The CronJob triggers for all BuildConfigs in the gcr-io namespace have been failing because the default builder SA lacks the buildconfigs/instantiate permission. Introduce a dedicated build-trigger SA with a minimal Role granting only that verb, and switch all CronJobs to use it. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
[REHEARSALNOTIFIER] Note: If this PR includes changes to step registry files ( |
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Repository YAML (base), Central YAML (inherited) Review profile: CHILL Plan: Enterprise Run ID: 📒 Files selected for processing (10)
WalkthroughThis PR establishes a new Kubernetes service account with restricted RBAC permissions and migrates all supplemental CI image build trigger CronJobs to use it instead of the generic ChangesBuild Trigger Service Account Migration
Estimated code review effort🎯 2 (Simple) | ⏱️ ~8 minutes Suggested labels
Suggested reviewers
🚥 Pre-merge checks | ✅ 12✅ Passed checks (12 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
|
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: petr-muller The full list of commands accepted by this bot can be found here. DetailsNeeds approval from an approver in each of these files:Approvers can indicate their approval by writing |
|
@petr-muller: all tests passed! Full PR test history. Your PR dashboard. DetailsInstructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here. |
Summary
gcr-io/namespace have been failing because thebuilderSA lacksbuildconfigs/instantiatepermission (only hassystem:image-builderwhich doesn't include it). Introduces a dedicatedbuild-triggerServiceAccount with a Role granting exactlycreateonbuildconfigs/instantiate, and switches all CronJobs to use it.ci_commenter_latestimage tag is now actively managed by theopenshift/ci-tools-standalonepromotion pipeline. Retargets this BuildConfig's output toci_test-infra-commenter_latestto avoid dual-provenance conflict.Context
The CronJob triggers have never worked — the September 2025 builds (the last successful ones) were triggered manually. All trigger pods fail with:
This means all 8 images (boskos, checkconfig, cleaner, commenter, gcsweb, git, label-sync, reaper) have been stale for ~8 months.
Test plan
build-triggerSA, Role, and RoleBinding are created ingcr-ionamespace after mergeoc start-buildsucceeds with the new SAci_test-infra-commenter_latest(notci_commenter_latest)🤖 Generated with Claude Code
Co-Authored-By: Claude Opus 4.6 noreply@anthropic.com
Fix broken supplemental image build triggers in gcr-io namespace
This PR fixes failing CronJob build triggers in the OpenShift CI
gcr-ionamespace that have been unable to instantiate builds since September 2025. The underlying issue is that the existingbuilderServiceAccount lacks the necessary permission to execute thebuildconfigs/instantiateaction required by theoc start-buildcommands triggered by the scheduled jobs.Solution:
build-triggerServiceAccount in thegcr-ionamespace with a corresponding Role that explicitly grants thecreateverb onbuildconfigs/instantiateresourcesbuilderaccountRelated change:
Retargets the commenter BuildConfig output image tag from
ci_commenter_latesttoci_test-infra-commenter_latestto resolve a dual-provenance conflict, as theopenshift/ci-tools-standalonepromotion pipeline now owns theci_commenter_latesttag.