Skip to content

OCPERT-421 Add prow job for 5.0 stage testing#80853

Open
LuboTerifaj wants to merge 2 commits into
openshift:mainfrom
LuboTerifaj:OCPERT-421
Open

OCPERT-421 Add prow job for 5.0 stage testing#80853
LuboTerifaj wants to merge 2 commits into
openshift:mainfrom
LuboTerifaj:OCPERT-421

Conversation

@LuboTerifaj

@LuboTerifaj LuboTerifaj commented Jun 22, 2026

Copy link
Copy Markdown
Contributor

Fix enable-qe-catalogsource-staging version checks for OCP 5.x+

https://redhat.atlassian.net/browse/OCPERT-421

Summary by CodeRabbit

This PR adds OpenShift Container Platform (OCP) 5.0 support to the CI infrastructure by introducing a new stage-testing configuration and fixing version compatibility issues.

New OCP 5.0 Stage-Testing Configuration
A new CI configuration file has been added for openshift-tests-private targeting the OCP 5.0 release branch. This configuration sets up:

  • Base container images for the OCP 5.0 CLI, tests-private, and UPI installer
  • Release channel targeting OCP 5.0 candidate releases
  • An e2e AWS IPI stage-testing workflow scheduled via cron, enabling automated testing of OCP 5.0 installations on AWS infrastructure

Version Compatibility Fixes in QE CatalogSource Staging
The enable-qe-catalogsource-staging-commands.sh script has been updated to properly support OCP 5.x versions. The changes address three key issues:

  1. Version parsing: Now explicitly extracts the major version separately from the major.minor pair, enabling clearer version-based logic
  2. Mirror policy selection: The logic for choosing between ImageContentSourcePolicy (ICSP) and ImageDigestMirrorSet (IDMS) now correctly restricts the ICSP path to OCP 4.x versions only, rather than relying solely on minor version checks
  3. CatalogSource format selection: Updated the branching logic to use a negated condition (not (major == 4 and minor < 15)) instead of a simple minor version check. This ensures OCP 5.0 and later versions correctly use the FBC (File-Based Catalog) format, while maintaining backward compatibility with OCP 4.x

These fixes (tracked under OCPERT-421) ensure the QE CatalogSource staging setup works reliably across the entire OCP version spectrum from 4.x through 5.0 and beyond.

@coderabbitai

coderabbitai Bot commented Jun 22, 2026

Copy link
Copy Markdown
Contributor

Walkthrough

Adds a new CI operator YAML configuration for openshift-tests-private targeting release-5.0 with a scheduled AWS IPI stage-testing e2e workflow. Separately updates the enable-qe-catalogsource staging script to extract OCP_MAJOR and use it to guard mirror-policy and FBC CatalogSource selection logic against non-4.x major versions.

Changes

OCP 5.0 Stage Testing Support

Layer / File(s) Summary
New release-5.0 stage-testing CI config
ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-5.0__stage-testing.yaml
Declares base images (cli, tests-private, upi-installer) for 5.0, sets the latest release to candidate channel at version 5.0, configures default resource requests, defines a cron-scheduled e2e-aws-ipi test using the cucushift-installer-rehearse-aws-ipi-stage-testing workflow, and records generated metadata for the release-5.0 / stage-testing variant.
OCP major version extraction and condition fixes
ci-operator/step-registry/enable-qe-catalogsource/staging/enable-qe-catalogsource-staging-commands.sh
get_ocp_version now derives OCP_MAJOR alongside OCP_MAJOR_MINOR and OCP_MINOR. create_mirror_policy gates the "OCP 4.12 or earlier" ImageContentSourcePolicy path on OCP_MAJOR == 4. create_catalog_source replaces the OCP_MINOR >= 15 FBC check with ! (OCP_MAJOR == 4 && OCP_MINOR < 15) so version 5.x always takes the FBC path.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Suggested labels

lgtm, approved, rehearsals-ack, jira/valid-reference

🚥 Pre-merge checks | ✅ 14 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (14 passed)
Check name Status Explanation
Title check ✅ Passed The title accurately describes the main changes: adding a prow job for OCP 5.0 stage testing, which aligns with the primary objective and the new YAML configuration file added.
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 modifies CI config YAML and shell script only; contains no Ginkgo test definitions requiring name stability checks.
Test Structure And Quality ✅ Passed This PR contains no Ginkgo test files (_test.go or test code with Describe/It blocks). Changes are limited to a YAML config file and a shell script, making the Ginkgo test quality check not applica...
Microshift Test Compatibility ✅ Passed This PR does not add any new Ginkgo e2e tests. It only modifies CI configuration files (YAML), CI step registry shell scripts, and documentation/tooling files. The custom check for MicroShift test...
Single Node Openshift (Sno) Test Compatibility ✅ Passed No new Ginkgo e2e tests (It(), Describe(), Context(), When()) found in this PR. Changes are limited to CI configuration YAML and helper shell script for OCP 5.x version checks.
Topology-Aware Scheduling Compatibility ✅ Passed The PR adds CI/operator configuration and test setup scripts without any deployment manifests, operator controllers, or pod scheduling constraints that would affect OpenShift topology compatibility.
Ote Binary Stdout Contract ✅ Passed PR modifies only YAML config and bash shell script; OTE Binary Stdout Contract applies to Go-based OTE binaries outputting JSON to stdout, not CI/operator configuration or shell scripts.
Ipv6 And Disconnected Network Test Compatibility ✅ Passed PR adds OCP 5.0 CI configuration and catalogsource setup script, not Ginkgo e2e tests. Check requires new e2e tests to be present, making it inapplicable to this PR.
No-Weak-Crypto ✅ Passed No weak cryptographic algorithms, custom crypto implementations, or insecure secret comparisons detected in the modified files.
Container-Privileges ✅ Passed No container privilege escalation flags found in PR changes. Kubernetes manifests contain no privileged: true, hostPID, hostNetwork, hostIPC, SYS_ADMIN capabilities, or allowPrivilegeEscalation: tr...
No-Sensitive-Data-In-Logs ✅ Passed No logging exposes passwords, tokens, API keys, PII, session IDs, internal hostnames, or customer data. Credentials are extracted but not echoed; only file paths are logged when files are missing.
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

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

@LuboTerifaj

Copy link
Copy Markdown
Contributor Author

/assign @tomasdavidorg

@openshift-merge-bot

Copy link
Copy Markdown
Contributor

@LuboTerifaj: pj-rehearse could not automatically process this event because the request waited in queue for longer than 5 minutes. Use /pj-rehearse to trigger rehearsals manually.

@openshift-ci

openshift-ci Bot commented Jun 22, 2026

Copy link
Copy Markdown
Contributor

@LuboTerifaj: all tests passed!

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.

name: "5.0"
namespace: ocp
tag: upi-installer
releases:

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.

Suggested change
releases:
prowgen:
expose: true
private: true
releases:

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.

Misssing prowgen section

@openshift-ci

openshift-ci Bot commented Jun 22, 2026

Copy link
Copy Markdown
Contributor

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by: LuboTerifaj
Once this PR has been reviewed and has the lgtm label, please ask for approval from tomasdavidorg. 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

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants