Skip to content

[redhat-3.18] PROJQUAY-12349: validate BOOTSTRAP_TOKEN_OWNER when programmatic bootstrap is enabled - #1304

Merged
bcaton85 merged 1 commit into
quay:redhat-3.18from
openshift-cherrypick-robot:cherry-pick-1302-to-redhat-3.18
Jul 20, 2026
Merged

[redhat-3.18] PROJQUAY-12349: validate BOOTSTRAP_TOKEN_OWNER when programmatic bootstrap is enabled#1304
bcaton85 merged 1 commit into
quay:redhat-3.18from
openshift-cherrypick-robot:cherry-pick-1302-to-redhat-3.18

Conversation

@openshift-cherrypick-robot

Copy link
Copy Markdown

This is an automated cherry-pick of #1302

/assign bcaton85

…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>
@coderabbitai

coderabbitai Bot commented Jul 20, 2026

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

🗂️ Base branches to auto review (1)
  • master

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Enterprise

Run ID: 49e1d29b-f8d7-4936-8265-0636d0c7e1da

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

Note

.coderabbit.yaml has unrecognized properties

CodeRabbit is using all valid settings from your configuration. Unrecognized properties (listed below) have been ignored and may indicate typos or deprecated fields that can be removed.

⚠️ Parsing warnings (1)
Validation error: Unrecognized key: "tools"
⚙️ Configuration instructions
  • Please see the configuration documentation for more information.
  • You can also validate your configuration using the online YAML validator.
  • If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: # yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Comment @coderabbitai help to get the list of available commands.

@openshift-ci-robot

openshift-ci-robot commented Jul 20, 2026

Copy link
Copy Markdown
Collaborator

@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.
/retitle [redhat-3.18] PROJQUAY-12349: validate BOOTSTRAP_TOKEN_OWNER when programmatic bootstrap is enabled

Details

In response to this:

This is an automated cherry-pick of #1302

/assign bcaton85

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-ci openshift-ci Bot changed the title [redhat-3.18] PROJQUAY-12344: validate BOOTSTRAP_TOKEN_OWNER when programmatic bootstrap is enabled [redhat-3.18] PROJQUAY-12349: validate BOOTSTRAP_TOKEN_OWNER when programmatic bootstrap is enabled Jul 20, 2026
@openshift-ci-robot

openshift-ci-robot commented Jul 20, 2026

Copy link
Copy Markdown
Collaborator

@openshift-cherrypick-robot: This pull request references [Jira Issue PROJQUAY-12349](https://redhat.atlassian.net/browse/PROJQUAY-12349), which is invalid:

Comment /jira refresh to re-evaluate validity if changes to the Jira bug are made, or edit the title of this pull request to link to a different bug.

Details

In response to this:

This is an automated cherry-pick of #1302

/assign bcaton85

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.

@bcaton85
bcaton85 merged commit 5b46c3e into quay:redhat-3.18 Jul 20, 2026
7 of 10 checks passed
@openshift-ci-robot

openshift-ci-robot commented Jul 20, 2026

Copy link
Copy Markdown
Collaborator

@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.

Details

In response to this:

This is an automated cherry-pick of #1302

/assign bcaton85

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.

@fullsend-ai-retro

fullsend-ai-retro Bot commented Jul 20, 2026

Copy link
Copy Markdown

🤖 Finished Retro · ✅ Success · Started 6:01 PM UTC · Completed 6:11 PM UTC
Commit: 930aa72 · View workflow run →

@fullsend-ai-retro

fullsend-ai-retro Bot commented Jul 20, 2026

Copy link
Copy Markdown

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

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Development

Successfully merging this pull request may close these issues.

3 participants