Skip to content

Add OCP 4.22 to prow#81141

Open
tbuskey wants to merge 3 commits into
openshift:mainfrom
tbuskey:260626
Open

Add OCP 4.22 to prow#81141
tbuskey wants to merge 3 commits into
openshift:mainfrom
tbuskey:260626

Conversation

@tbuskey

@tbuskey tbuskey commented Jun 26, 2026

Copy link
Copy Markdown
Contributor

Other changes:

MUST_GATHER_ON_FAILURE_ONLY: "false" # so prow always runs kata must-gather
INSTALL_KATA_RPM: true
KATA_RPM_VERSION: 3.31.0-1.rhaos4.19.el9 # 4.19 -> 4.21
KATA_RPM_VERSION: 3.31.0-1.rhaos4.22.el9 # 4.22

KATA-5459
Previous PR

Summary by CodeRabbit

Updated ci-operator/config/openshift/sandboxed-containers-operator generated downstream scheduled e2e prow jobs to ensure OpenShift Container Platform 4.22 runs with Kata RPM enabled and must-gather always collected (not limited to failures). Concretely:

  • For the affected downstream candidate job definitions, set MUST_GATHER_ON_FAILURE_ONLY: "false".
  • Enabled Kata RPM installation (INSTALL_KATA_RPM: "true") and pinned the Kata RPM version to 3.31.0-1.rhaos4.22.el9 for the new OCP 4.22 config (openshift-sandboxed-containers-operator-devel__downstream-candidate422.yaml).
  • In addition, adjusted the earlier downstream candidates (...__downstream-candidate419.yaml and ...__downstream-candidate420.yaml) to use KATA_RPM_VERSION: 3.31.0-1.rhaos4.19.el9 while keeping the same must-gather change (MUST_GATHER_ON_FAILURE_ONLY: "false").

Also updated ci-operator/step-registry/sandboxed-containers-operator/README.md with guidance for Konflux prowjobs restrict_network_access: false by default, true when running /pj-rehearse, then reverting to false after merge.

@coderabbitai

coderabbitai Bot commented Jun 26, 2026

Copy link
Copy Markdown
Contributor

Note

Reviews paused

It looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the reviews.auto_review.auto_pause_after_reviewed_commits setting.

Use the following commands to manage reviews:

  • @coderabbitai resume to resume automatic reviews.
  • @coderabbitai review to trigger a single review.

Use the checkboxes below for quick actions:

  • ▶️ Resume reviews
  • 🔍 Trigger review

Walkthrough

The PR updates two downstream-candidate CI configs to enable Kata RPM installation, pin the Kata RPM version, and change must-gather behavior across scheduled Azure, ARO, and AWS jobs. It also adds a README note for Konflux prowjobs network-access settings.

Changes

Sandboxed containers operator CI changes

Layer / File(s) Summary
Downstream candidate env updates
ci-operator/config/openshift/sandboxed-containers-operator/openshift-sandboxed-containers-operator-devel__downstream-candidate419.yaml, ci-operator/config/openshift/sandboxed-containers-operator/openshift-sandboxed-containers-operator-devel__downstream-candidate420.yaml
Updates the scheduled Azure, ARO, and AWS jobs to enable Kata RPM installation, pin KATA_RPM_VERSION, and set MUST_GATHER_ON_FAILURE_ONLY to false.
Candidate 422 base config
ci-operator/config/openshift/sandboxed-containers-operator/openshift-sandboxed-containers-operator-devel__downstream-candidate422.yaml
Adds the OpenShift 4.22 base images, Prow settings, release metadata, default resource requests, and generated metadata for the new variant.
Candidate 422 scheduled jobs
ci-operator/config/openshift/sandboxed-containers-operator/openshift-sandboxed-containers-operator-devel__downstream-candidate422.yaml
Adds the Azure, ARO, and AWS scheduled job variants for kata, peerpods, and coco workflows with their reporter, environment, timeout, and workflow settings.
Konflux prowjobs note
ci-operator/step-registry/sandboxed-containers-operator/README.md
Adds a note for Konflux prowjobs restrict_network_access values, including /pj-rehearse and post-merge reset behavior.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Suggested labels

lgtm

🚥 Pre-merge checks | ✅ 15
✅ Passed checks (15 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly summarizes the main change: adding OpenShift 4.22 support to prow.
Docstring Coverage ✅ Passed Docstring coverage is 100.00% which is sufficient. The required threshold is 80.00%.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Stable And Deterministic Test Names ✅ Passed PR only edits CI YAML/README; no Ginkgo It/Describe/Context/When titles changed, and no dynamic test-name literals appear.
Test Structure And Quality ✅ Passed No Ginkgo tests were changed; the PR only updates CI YAML and a README, so the test-structure check is not applicable.
Microshift Test Compatibility ✅ Passed PR only changes CI YAML and README; no new Ginkgo It/Describe/Context/When tests were added to assess for MicroShift APIs.
Single Node Openshift (Sno) Test Compatibility ✅ Passed Config-only PR: touched files are CI YAML/README and add no new Ginkgo test declarations, so the SNO compatibility check is not applicable.
Topology-Aware Scheduling Compatibility ✅ Passed PR only changes CI job env values and a README note; no deployment manifests/controllers or topology-sensitive scheduling fields were introduced.
Ote Binary Stdout Contract ✅ Passed PASS: The PR only touches ci-operator YAML and a README; no process-level binaries or stdout writes were added.
Ipv6 And Disconnected Network Test Compatibility ✅ Passed No new Ginkgo test code was added; the PR only changes CI YAML and a README note, so IPv4/external-connectivity test vetting is not applicable.
No-Weak-Crypto ✅ Passed Only CI YAML/README files changed; no MD5/SHA1/DES/RC4/3DES/Blowfish/ECB, custom crypto, or secret-comparison code found.
Container-Privileges ✅ Passed Touched YAMLs only change job envs; exact search found no privileged/hostPID/hostNetwork/hostIPC/allowPrivilegeEscalation/SYS_ADMIN/runAsUser:0 entries.
No-Sensitive-Data-In-Logs ✅ Passed The PR only changes CI YAML and a README note; the added lines contain env/image settings and report templates, with no passwords, tokens, PII, or secret-bearing log output.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

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

@tbuskey

tbuskey commented Jun 26, 2026

Copy link
Copy Markdown
Contributor Author

/assign @wainersm
/assign @vvoronko
Sorry guys, I messed up the previous PR doing a demo

@tbuskey

tbuskey commented Jun 26, 2026

Copy link
Copy Markdown
Contributor Author

/pj-rehearse ack

@openshift-merge-bot

Copy link
Copy Markdown
Contributor

@tbuskey: now processing your pj-rehearse request. Please allow up to 10 minutes for jobs to trigger or cancel.

@openshift-merge-bot openshift-merge-bot Bot added the rehearsals-ack Signifies that rehearsal jobs have been acknowledged label Jun 26, 2026
@openshift-ci openshift-ci Bot requested review from c3d and ldoktor June 26, 2026 12:30
@openshift-ci openshift-ci Bot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Jun 26, 2026
This was referenced Jun 26, 2026
@tbuskey

tbuskey commented Jun 26, 2026

Copy link
Copy Markdown
Contributor Author

/test generated-config

@wainersm

Copy link
Copy Markdown
Contributor

/lgtm

@openshift-ci openshift-ci Bot added lgtm Indicates that a PR is ready to be merged. and removed lgtm Indicates that a PR is ready to be merged. approved Indicates a PR has been approved by an approver from all required OWNERS files. labels Jun 26, 2026
@openshift-merge-bot openshift-merge-bot Bot removed the rehearsals-ack Signifies that rehearsal jobs have been acknowledged label Jun 26, 2026

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 2

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In @.claude/scripts/step_finder.py:
- Around line 113-123: `build_reference_index()` is currently scanning
serialized YAML text, so literal examples inside markdown-style blocks are being
counted as real references. Update this function to traverse the parsed YAML
objects instead of using regex over raw text, and only record structural `ref`,
`chain`, and `workflow` fields from the YAML tree. Keep the indexing logic in
`build_reference_index()` and `ReferenceIndex` the same, but change the input
processing so documentation snippets are ignored.
- Around line 353-367: Resolve the repo root to an absolute path before any
downstream path derivation in step_finder.py so the paths used by
read_yaml_corpus, build_reference_index, lookup_config_usage, and
lookup_reverse_deps all share the same base. Update the logic around
parse_args(), repo_root_from_script(), and the subsequent
registry_dir/config_dir setup so a relative --repo-root like "." is normalized
once up front. This will keep usage and reverse-deps lookups from missing
matches due to relative-vs-absolute prefix comparisons.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Repository YAML (base), Central YAML (inherited)

Review profile: CHILL

Plan: Enterprise

Run ID: ff8b80f9-0fb7-4107-92ba-6306d040dd26

📥 Commits

Reviewing files that changed from the base of the PR and between 7a927a3 and dce2ec7.

📒 Files selected for processing (12)
  • .claude/scripts/README.md
  • .claude/scripts/step_finder.py
  • .claude/skills/step-finder/SKILL.md
  • ci-operator/step-registry/cluster-profiles/cluster-profiles-config.yaml
  • ci-operator/step-registry/openshift/agentic/trt/review-responder/openshift-agentic-trt-review-responder-commands.sh
  • clusters/hosted-mgmt/hive/pools/openstack-k8s-operators/openstack-k8s-operators-4-18-vexxhost-hybrid_clusterpool.yaml
  • clusters/hosted-mgmt/hive/pools/openstack-k8s-operators/openstack-k8s-operators-4-20-vexxhost-hybrid_clusterpool.yaml
  • core-services/ci-secret-bootstrap/_config.yaml
  • core-services/prow/02_config/openshift-online/gcp-hcp-infra/_prowconfig.yaml
  • core-services/prow/02_config/openshift/faas-console-plugin/_prowconfig.yaml
  • core-services/prow/02_config/redhat-developer/rhdh-operator/_prowconfig.yaml
  • core-services/prow/02_config/terraform-redhat/terraform-provider-rhcs/_prowconfig.yaml
💤 Files with no reviewable changes (1)
  • ci-operator/step-registry/openshift/agentic/trt/review-responder/openshift-agentic-trt-review-responder-commands.sh
✅ Files skipped from review due to trivial changes (2)
  • .claude/skills/step-finder/SKILL.md
  • .claude/scripts/README.md

Comment on lines +113 to +123
def build_reference_index(*corpora: dict[str, str]) -> ReferenceIndex:
"""Index ref, chain, and workflow references across YAML corpora."""
index = ReferenceIndex()
for corpus in corpora:
for path_str, text in corpus.items():
for match in REF_LINE.finditer(text):
index.steps.setdefault(match.group(1), []).append(path_str)
for match in CHAIN_LINE.finditer(text):
index.chains.setdefault(match.group(1), []).append(path_str)
for match in WORKFLOW_LINE.finditer(text):
index.workflows.setdefault(match.group(1), []).append(path_str)

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🎯 Functional Correctness | 🟠 Major | 🏗️ Heavy lift

Parse references from YAML structure, not raw text.

build_reference_index() greps serialized YAML, so example snippets inside documentation: | blocks such as - ref: ... or workflow: ... get counted as real usages. That will overstate the “Reverse deps” count and can assign the wrong impact label for documented components. Walk the parsed YAML tree and index only structural ref/chain/workflow fields instead.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In @.claude/scripts/step_finder.py around lines 113 - 123,
`build_reference_index()` is currently scanning serialized YAML text, so literal
examples inside markdown-style blocks are being counted as real references.
Update this function to traverse the parsed YAML objects instead of using regex
over raw text, and only record structural `ref`, `chain`, and `workflow` fields
from the YAML tree. Keep the indexing logic in `build_reference_index()` and
`ReferenceIndex` the same, but change the input processing so documentation
snippets are ignored.

Comment thread .claude/scripts/step_finder.py
@openshift-ci openshift-ci Bot added approved Indicates a PR has been approved by an approver from all required OWNERS files. and removed approved Indicates a PR has been approved by an approver from all required OWNERS files. labels Jun 26, 2026
@tbuskey

tbuskey commented Jun 26, 2026

Copy link
Copy Markdown
Contributor Author

/retest-required

tbuskey added 2 commits June 26, 2026 13:01
Other changes:

MUST_GATHER_ON_FAILURE_ONLY: "false" # so prow always runs kata must-gather
INSTALL_KATA_RPM: true
KATA_RPM_VERSION: 3.31.0-1.rhaos4.19.el9 # 4.19 -> 4.21
KATA_RPM_VERSION: 3.31.0-1.rhaos4.22.el9 # 4.22

https://redhat.atlassian.net/browse/KATA-5459
openshift#80932

Signed-off-by: Tom Buskey <tbuskey@redhat.com>
@tbuskey

tbuskey commented Jun 26, 2026

Copy link
Copy Markdown
Contributor Author

/pj-rehearse ack

@openshift-merge-bot

Copy link
Copy Markdown
Contributor

@tbuskey: now processing your pj-rehearse request. Please allow up to 10 minutes for jobs to trigger or cancel.

@openshift-merge-bot openshift-merge-bot Bot added the rehearsals-ack Signifies that rehearsal jobs have been acknowledged label Jun 26, 2026
@tbuskey

tbuskey commented Jun 26, 2026

Copy link
Copy Markdown
Contributor Author

/pj-rehearse ack

@openshift-merge-bot openshift-merge-bot Bot removed the rehearsals-ack Signifies that rehearsal jobs have been acknowledged label Jun 26, 2026
@openshift-merge-bot

Copy link
Copy Markdown
Contributor

[REHEARSALNOTIFIER]
@tbuskey: the pj-rehearse plugin accommodates running rehearsal tests for the changes in this PR. Expand 'Interacting with pj-rehearse' for usage details. The following rehearsable tests have been affected by this change:

Test name Repo Type Reason
periodic-ci-openshift-sandboxed-containers-operator-devel-downstream-candidate422-aws-ipi-peerpods N/A periodic Periodic changed
periodic-ci-openshift-sandboxed-containers-operator-devel-downstream-candidate422-azure-ipi-coco N/A periodic Periodic changed
periodic-ci-openshift-sandboxed-containers-operator-devel-downstream-candidate422-aws-ipi-coco N/A periodic Periodic changed
periodic-ci-openshift-sandboxed-containers-operator-devel-downstream-candidate422-azure-ipi-peerpods N/A periodic Periodic changed
periodic-ci-openshift-sandboxed-containers-operator-devel-downstream-candidate422-aro-ipi-peerpods N/A periodic Periodic changed
periodic-ci-openshift-sandboxed-containers-operator-devel-downstream-candidate422-azure-ipi-kata N/A periodic Periodic changed
periodic-ci-openshift-sandboxed-containers-operator-devel-downstream-candidate422-aro-ipi-coco N/A periodic Periodic changed

The following jobs are not rehearsable without the network-access-rehearsals-ok, and approved labels present on this PR. This is due to the restrict_network_access field being set to false. The network-access-rehearsals-ok label can be added by any openshift org member other than the PR's author by commenting: /pj-rehearse network-access-allowed:

Test name
periodic-ci-openshift-sandboxed-containers-operator-devel-downstream-candidate419-azure-ipi-kata
periodic-ci-openshift-sandboxed-containers-operator-devel-downstream-candidate419-azure-ipi-peerpods
periodic-ci-openshift-sandboxed-containers-operator-devel-downstream-candidate419-azure-ipi-coco
periodic-ci-openshift-sandboxed-containers-operator-devel-downstream-candidate419-aro-ipi-peerpods
periodic-ci-openshift-sandboxed-containers-operator-devel-downstream-candidate419-aro-ipi-coco
periodic-ci-openshift-sandboxed-containers-operator-devel-downstream-candidate419-aws-ipi-peerpods
periodic-ci-openshift-sandboxed-containers-operator-devel-downstream-candidate419-aws-ipi-coco
periodic-ci-openshift-sandboxed-containers-operator-devel-downstream-candidate420-azure-ipi-kata
periodic-ci-openshift-sandboxed-containers-operator-devel-downstream-candidate420-azure-ipi-peerpods
periodic-ci-openshift-sandboxed-containers-operator-devel-downstream-candidate420-azure-ipi-coco
periodic-ci-openshift-sandboxed-containers-operator-devel-downstream-candidate420-aro-ipi-peerpods
periodic-ci-openshift-sandboxed-containers-operator-devel-downstream-candidate420-aro-ipi-coco
periodic-ci-openshift-sandboxed-containers-operator-devel-downstream-candidate420-aws-ipi-peerpods
periodic-ci-openshift-sandboxed-containers-operator-devel-downstream-candidate420-aws-ipi-coco
Interacting with pj-rehearse

Comment: /pj-rehearse to run up to 5 rehearsals
Comment: /pj-rehearse skip to opt-out of rehearsals
Comment: /pj-rehearse {test-name}, with each test separated by a space, to run one or more specific rehearsals
Comment: /pj-rehearse more to run up to 10 rehearsals
Comment: /pj-rehearse max to run up to 25 rehearsals
Comment: /pj-rehearse auto-ack to run up to 5 rehearsals, and add the rehearsals-ack label on success
Comment: /pj-rehearse list to get an up-to-date list of affected jobs
Comment: /pj-rehearse abort to abort all active rehearsals
Comment: /pj-rehearse network-access-allowed to allow rehearsals of tests that have the restrict_network_access field set to false. This must be executed by an openshift org member who is not the PR author

Once you are satisfied with the results of the rehearsals, comment: /pj-rehearse ack to unblock merge. When the rehearsals-ack label is present on your PR, merge will no longer be blocked by rehearsals.
If you would like the rehearsals-ack label removed, comment: /pj-rehearse reject to re-block merging.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In
`@ci-operator/config/openshift/sandboxed-containers-operator/openshift-sandboxed-containers-operator-devel__downstream-candidate422.yaml`:
- Line 152: Update the ARO job configuration so the ARO_CLUSTER_VERSION used by
the downstream-candidate422 periodic jobs matches the advertised 4.22 release
instead of remaining pinned to 4.17. Adjust both occurrences in this config, or
derive the value from the release metadata in the relevant job definitions, so
the ARO jobs in downstream-candidate422 actually exercise 4.22 and use the
matching Kata RPM.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Repository YAML (base), Central YAML (inherited)

Review profile: CHILL

Plan: Enterprise

Run ID: 74aa0da4-be83-468d-b97d-9015fbf1477f

📥 Commits

Reviewing files that changed from the base of the PR and between 35d959f and df1081c.

📒 Files selected for processing (1)
  • ci-operator/config/openshift/sandboxed-containers-operator/openshift-sandboxed-containers-operator-devel__downstream-candidate422.yaml

@openshift-merge-bot

Copy link
Copy Markdown
Contributor

@tbuskey: now processing your pj-rehearse request. Please allow up to 10 minutes for jobs to trigger or cancel.

@openshift-merge-bot openshift-merge-bot Bot added the rehearsals-ack Signifies that rehearsal jobs have been acknowledged label Jun 26, 2026
@openshift-ci

openshift-ci Bot commented Jun 26, 2026

Copy link
Copy Markdown
Contributor

@tbuskey: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name Commit Details Required Rerun command
ci/prow/check-cluster-profiles-config dce2ec7 link false /test check-cluster-profiles-config
ci/prow/cluster-manifest-verifier dce2ec7 link true /test cluster-manifest-verifier

Full PR test history. Your PR dashboard.

Details

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 kubernetes-sigs/prow repository. I understand the commands that are listed here.

@wainersm

Copy link
Copy Markdown
Contributor

/lgtm

@openshift-ci openshift-ci Bot added the lgtm Indicates that a PR is ready to be merged. label Jun 26, 2026
@tbuskey

tbuskey commented Jun 26, 2026

Copy link
Copy Markdown
Contributor Author

/approve

@openshift-ci

openshift-ci Bot commented Jun 26, 2026

Copy link
Copy Markdown
Contributor

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by: tbuskey, wainersm
Once this PR has been reviewed and has the lgtm label, please assign jhernand for approval. For more information see the Code Review Process.

The full list of commands accepted by this bot can be found here.

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

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

Labels

lgtm Indicates that a PR is ready to be merged. rehearsals-ack Signifies that rehearsal jobs have been acknowledged

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants