[redhat-3.18] PROJQUAY-12349: validate BOOTSTRAP_TOKEN_OWNER when programmatic bootstrap is enabled - #1304
Conversation
…matic bootstrap is enabled When FEATURE_PROGRAMMATIC_BOOTSTRAP is true the Quay backend requires BOOTSTRAP_TOKEN_OWNER in the config to validate and renew bootstrap tokens. The operator passthrough config model preserves user-supplied keys but never verified their presence, so a missing or empty BOOTSTRAP_TOKEN_OWNER silently produced a config that broke token renewal at runtime (403 insufficient_scope). Add ValidateProgrammaticBootstrapConfig() in pkg/kustomize and call it from the controller reconcile loop before Inflate(). When the key is absent or invalid the operator now sets a RolloutBlocked / ConfigInvalid condition instead of rolling out a broken config. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. 🗂️ Base branches to auto review (1)
Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Enterprise Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
Note
|
|
@openshift-cherrypick-robot: [Jira Issue PROJQUAY-12344](https://redhat.atlassian.net/browse/PROJQUAY-12344) has been cloned as [Jira Issue PROJQUAY-12349](https://redhat.atlassian.net/browse/PROJQUAY-12349). Will retitle bug to link to clone. DetailsIn response to this:
Instructions 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 openshift-eng/jira-lifecycle-plugin repository. |
|
@openshift-cherrypick-robot: This pull request references [Jira Issue PROJQUAY-12349](https://redhat.atlassian.net/browse/PROJQUAY-12349), which is invalid:
Comment DetailsIn response to this:
Instructions 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 openshift-eng/jira-lifecycle-plugin repository. |
|
@openshift-cherrypick-robot: [Jira Issue PROJQUAY-12349](https://redhat.atlassian.net/browse/PROJQUAY-12349): All pull requests linked via external trackers have merged: [Jira Issue PROJQUAY-12349](https://redhat.atlassian.net/browse/PROJQUAY-12349) has been moved to the MODIFIED state. DetailsIn response to this:
Instructions 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 openshift-eng/jira-lifecycle-plugin repository. |
|
🤖 Finished Retro · ✅ Success · Started 6:01 PM UTC · Completed 6:11 PM UTC |
|
PR #1304 is an automated cherry-pick of PR #1302 from master to redhat-3.18, created by openshift-cherrypick-robot. The code is identical to the already-retro'd PR #1302. bcaton85 approved within 1 minute and merged 40 minutes later. No review agent ran (hardcoded carve-out in dispatch.yml, tracked in quay/.fullsend#14). CodeRabbit skipped review on the non-default branch. The prior retro on PR #1302 completed at 17:30 UTC, filed issue #1305 (AGENTS.md format discrepancy), and the triage → code pipeline produced PR #1306 within 20 minutes — a healthy end-to-end cycle. Existing issue evidence (not filed as proposals):
New finding: The code agent's PR #1306 used PROJQUAY-12344 (a Jira ticket referenced contextually in issue #1305's body) as its PR title prefix. That ticket is about BOOTSTRAP_TOKEN_OWNER validation and is already in MODIFIED state. The Prow bot flagged the PR as jira/invalid-bug and applied needs-ok-to-test, blocking CI. The root cause is the code-implementation skill's step 10c instruction to extract Jira IDs from the issue body, which does not distinguish between the issue's own ticket and contextual references. One proposal filed to fullsend-ai/agents. Proposals filed |
This is an automated cherry-pick of #1302
/assign bcaton85