Skip to content

INTEROP-9358: Fix operator channel and preflight compatibility for OPP upgrade configs - #82372

Merged
openshift-merge-bot[bot] merged 5 commits into
openshift:mainfrom
amp-rh:interop-9358-upgrade-channel-compat
Aug 3, 2026
Merged

INTEROP-9358: Fix operator channel and preflight compatibility for OPP upgrade configs#82372
openshift-merge-bot[bot] merged 5 commits into
openshift:mainfrom
amp-rh:interop-9358-upgrade-channel-compat

Conversation

@amp-rh

@amp-rh amp-rh commented Jul 23, 2026

Copy link
Copy Markdown
Contributor

Summary

Fix Quay operator channel in the 4.22 upgrade config and add OCP 5.0 entry to the OPP compatibility matrix.

What it does:
• Fixes the Quay operator channel in the 4.22 upgrade config (stable-3.14 to stable-3.17); 3.14 is outside tested integrations for OCP 4.21
• Adds an OCP 5.0 entry to the OPP compatibility matrix (only ACM 2.17+ and Quay 3.17+ are present in the v5.0 catalog)
• Improves preflight version parsing and upgrade step health validation

Changes

  1. Quay channel fix (4.22 upgrade config): Change stable-3.14 to stable-3.17. Quay 3.14 is outside Red Hat tested integrations for OCP 4.21 (the source version). Verified against Red Hat operator catalog index.

  2. OPP_COMPAT entry for OCP 5.0: Add OPP_COMPAT["0"] with ACM 2.17 and Quay 3.17 minimums. Only these two operators are present in the v5.0 catalog (rhacs-operator and odf-operator are absent).

Verification

  • Operator catalog presence verified using Red Hat operator catalog index (synced Jun-Jul 2026)
  • Version key "0" confirmed by reading the preflight script's version parsing logic (cut -f2 -d. on "5.0.x")

References

Summary by CodeRabbit

  • Updates the stolostron interop-opp-upgrade-aws policies to use quay-operator channel stable-3.17 for OCP 4.22 and OCP 5.0.
  • Adds OCP 5.0 compatibility requirements for ACM 2.17 and Quay 3.17.
  • Adds backup and preflight validation before the OCP 5.0 upgrade.
  • Improves preflight target version parsing and operator compatibility checks.
  • Includes historical OCP 4.x API removals when scanning OCP 5.0 targets.
  • Improves upgrade health validation with proxy configuration support and operator name prefix matching.

amp-rh added 2 commits July 23, 2026 13:27
…P upgrade configs

- Fix Quay channel stable-3.14 to stable-3.17 in 4.22 upgrade config
  (stable-3.14 is outside Red Hat tested integrations for OCP 4.21)
- Add OPP_COMPAT entry for OCP 5.0 (key "0", ACM 2.17 + Quay 3.17)
- Keep quay-operator with stable-3.17 channel (present in v5.0 catalog)
- Add missing interop-opp-backup and interop-opp-preflight steps
- Source proxy-conf.sh for proxy environment support
- Fix CSV matching from substring to prefix (index == 1)
@openshift-ci-robot openshift-ci-robot added the jira/valid-reference Indicates that this PR references a valid Jira ticket of any type. label Jul 23, 2026
@openshift-ci-robot

openshift-ci-robot commented Jul 23, 2026

Copy link
Copy Markdown
Contributor

@amp-rh: This pull request references INTEROP-9358 which is a valid jira issue.

Warning: The referenced jira issue has an invalid target version for the target branch this PR targets: expected the task to target the "5.0.0" version, but no target version was set.

Details

In response to this:

Summary

Fix Quay operator channel in the 4.22 upgrade config and add OCP 5.0 entry to the OPP compatibility matrix.

Changes

  1. Quay channel fix (4.22 upgrade config): Change stable-3.14 to stable-3.17. Quay 3.14 is outside Red Hat tested integrations for OCP 4.21 (the source version). Verified against Red Hat operator catalog index.

  2. OPP_COMPAT entry for OCP 5.0: Add OPP_COMPAT["0"] with ACM 2.17 and Quay 3.17 minimums. Only these two operators are present in the v5.0 catalog (rhacs-operator and odf-operator are absent).

Verification

  • Operator catalog presence verified using Red Hat operator catalog index (synced Jun-Jul 2026)
  • Version key "0" confirmed by reading the preflight script's version parsing logic (cut -f2 -d. on "5.0.x")

References

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 requested review from jan-law and shakyav July 23, 2026 18:29
@coderabbitai

coderabbitai Bot commented Jul 23, 2026

Copy link
Copy Markdown
Contributor

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

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

Review profile: CHILL

Plan: Pro Plus

Run ID: 18656858-6cec-488f-b146-3c4c2b579d90

📥 Commits

Reviewing files that changed from the base of the PR and between caf5832 and 4dd4968.

📒 Files selected for processing (1)
  • ci-operator/step-registry/interop/opp/preflight/interop-opp-preflight-commands.sh
🚧 Files skipped from review as they are similar to previous changes (1)
  • ci-operator/step-registry/interop/opp/preflight/interop-opp-preflight-commands.sh

Walkthrough

The OPP upgrade workflow updates Quay Operator channels, adds backup and preflight steps, expands compatibility checks to OCP major.minor versions, loads shared proxy settings, and tightens CSV and namespace matching.

Changes

OPP upgrade workflow

Layer / File(s) Summary
Workflow operator and step configuration
ci-operator/config/stolostron/policy-collection/*upgrade.yaml
Updates Quay Operator channels, removes selected operator entries from the OCP 5.0 policy, and runs backup and preflight before upgrade.
Target-version preflight compatibility
ci-operator/step-registry/interop/opp/preflight/interop-opp-preflight-commands.sh
Uses OCP major.minor keys for compatibility checks, parses both version components, and reports the target version in preflight output.
Upgrade environment and CSV validation
ci-operator/step-registry/interop/opp/upgrade/interop-opp-upgrade-commands.sh
Loads shared proxy settings when available and matches operator CSVs and namespaces by name prefix during validation.

Estimated code review effort: 2 (Simple) | ~10 minutes

Possibly related PRs

Suggested reviewers: shakyav, jan-law


Important

Pre-merge checks failed

Please resolve all errors before merging. Addressing warnings is optional.

❌ Failed checks (1 error)

Check name Status Explanation Resolution
No-Sensitive-Data-In-Logs ❌ Error The new proxy-conf.sh source runs under set -x; that file embeds proxy_auth in proxy URLs, so Bash xtrace can log proxy passwords and internal proxy hosts. Disable xtrace while sourcing proxy-conf.sh, or mask proxy credentials before sourcing; restore tracing only after the file is loaded.
✅ Passed checks (14 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 changes to the operator channel and OPP preflight compatibility checks.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
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 The PR changes only shell preflight logic; the patch adds no Ginkgo test declarations or test titles, dynamic or otherwise.
Test Structure And Quality ✅ Passed The PR changes only two YAML files and two shell scripts; the full range contains no test-like paths or Ginkgo constructs, so this check is not applicable.
Microshift Test Compatibility ✅ Passed The PR changes only two shell files and two YAML files; it adds no Go files or Ginkgo declarations such as It(), Describe(), Context(), or When().
Single Node Openshift (Sno) Test Compatibility ✅ Passed The full PR diff changes only two YAML files and two shell scripts; it adds no Ginkgo declarations or Go/e2e test files.
Topology-Aware Scheduling Compatibility ✅ Passed The PR changes only CI operator-list YAML and OPP shell validation/version parsing; it adds no deployment manifests, operator/controller code, or topology-dependent scheduling constraints.
Ote Binary Stdout Contract ✅ Passed The PR changes only two YAML files and two shell workflow scripts; it adds no Go/OTE binary or Ginkgo suite code, so the OTE stdout JSON contract does not apply.
Ipv6 And Disconnected Network Test Compatibility ✅ Passed The PR changes only two YAML files and two shell scripts; the full PR diff adds no test source or Ginkgo constructs, so this check is not applicable.
No-Weak-Crypto ✅ Passed The PR changes only operator/version checks, proxy sourcing, and CSV matching; no MD5, SHA-1, DES, RC4, Blowfish, ECB, custom crypto, or secret comparisons were added.
Container-Privileges ✅ Passed The cumulative PR diff adds no privileged, hostPID, hostNetwork, hostIPC, SYS_ADMIN, allowPrivilegeEscalation, or root-execution settings.
✨ 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.

@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
`@ci-operator/step-registry/interop/opp/preflight/interop-opp-preflight-commands.sh`:
- Line 76: Update check_opp_compatibility so an unparseable CSV version
increments failed and causes the compatibility check to fail, rather than only
logging a warning and continuing. Preserve the existing compatibility validation
for parseable versions and ensure the active OPP_COMPAT["0"] entry cannot report
success when its versions are unparseable.
- Line 76: Update the OPP_COMPAT entry used by the preflight compatibility check
so its key conveys the target OCP 5.0 major version rather than only minor
version 0. Ensure the helper’s logs and report details identify OCP 5.0
correctly while preserving the existing compatibility image mappings.
🪄 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: Pro Plus

Run ID: d2606581-fbb1-4729-b9f9-8abbc4bae429

📥 Commits

Reviewing files that changed from the base of the PR and between cbd3c07 and dbe6579.

📒 Files selected for processing (2)
  • ci-operator/config/stolostron/policy-collection/stolostron-policy-collection-main__ocp4.22-upgrade.yaml
  • ci-operator/step-registry/interop/opp/preflight/interop-opp-preflight-commands.sh

Comment thread ci-operator/step-registry/interop/opp/preflight/interop-opp-preflight-commands.sh Outdated
Address CodeRabbit review:
- Increment failed counter for unparseable CSV versions so the
  compatibility check fails instead of silently passing
- Extract target major version and pass to check functions so
  OCP 5.0 logs correctly instead of showing "OCP 4.0"

@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

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (1)
ci-operator/step-registry/interop/opp/preflight/interop-opp-preflight-commands.sh (1)

105-145: 🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win

Use the target major version in every API-deprecation diagnostic.

For OCP 5.0, the no-find message reports 5.0, but the flagged-entry details still say APIs were removed in 4.${minor}, and the JSON report does not include the target version in its success details. This leaves console output and the structured report inconsistent.

🤖 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
`@ci-operator/step-registry/interop/opp/preflight/interop-opp-preflight-commands.sh`
around lines 105 - 145, Update the API-deprecation diagnostics in the
surrounding scan function to use target_major consistently: flagged entries must
report removal in ${target_major}.${minor}, and the successful append_check
details must include the target version alongside the no-find message. Preserve
the existing warning behavior and detection logic.
🤖 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/step-registry/interop/opp/preflight/interop-opp-preflight-commands.sh`:
- Around line 155-156: Update the compatibility lookup in the preflight command
flow to key OPP_COMPAT by the full target major/minor version rather than
target_minor alone. Construct and use the same major/minor key for compat_spec
and update all OPP_COMPAT matrix declarations consistently, ensuring OCP 5.0
entries do not apply to OCP 4.0.

In
`@ci-operator/step-registry/interop/opp/upgrade/interop-opp-upgrade-commands.sh`:
- Line 366: Update the namespace discovery logic near the CSV health validation
to select CSVs whose metadata.name starts with the operator value, matching the
startswith($op) behavior in the phase query. Replace the contains-based
filtering and collect namespaces only from this prefix-matched CSV set.

---

Outside diff comments:
In
`@ci-operator/step-registry/interop/opp/preflight/interop-opp-preflight-commands.sh`:
- Around line 105-145: Update the API-deprecation diagnostics in the surrounding
scan function to use target_major consistently: flagged entries must report
removal in ${target_major}.${minor}, and the successful append_check details
must include the target version alongside the no-find message. Preserve the
existing warning behavior and detection logic.
🪄 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: Pro Plus

Run ID: ca1190b8-4cbc-4ce8-a876-aa8ee0e31616

📥 Commits

Reviewing files that changed from the base of the PR and between dbe6579 and d16981a.

📒 Files selected for processing (3)
  • ci-operator/config/stolostron/policy-collection/stolostron-policy-collection-main__ocp5.0-upgrade.yaml
  • ci-operator/step-registry/interop/opp/preflight/interop-opp-preflight-commands.sh
  • ci-operator/step-registry/interop/opp/upgrade/interop-opp-upgrade-commands.sh

Comment thread ci-operator/step-registry/interop/opp/preflight/interop-opp-preflight-commands.sh Outdated
- OPP_COMPAT keys now use "major.minor" format (e.g., "4.22", "5.0")
  instead of minor-only, eliminating ambiguity for OCP 5.x
- Include target version in API deprecation pass message
- Fix flagged API message to use target_major instead of hardcoded "4"
- Fix contains -> startswith in upgrade script namespace lookup to
  prevent false substring matches (consistent with line 366)

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

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (1)
ci-operator/step-registry/interop/opp/preflight/interop-opp-preflight-commands.sh (1)

131-144: 🎯 Functional Correctness | 🟠 Major | ⚡ Quick win

Do not let the OCP 5.0 API scan falsely pass.

The scan still selects removals using minor <= target_minor. For target 5.0, target_minor is 0, so prior OCP 4.x entries are skipped and the script can record a successful scan even when deprecated APIs are present. Compare full major.minor releases, or explicitly include all historical 4.x entries when target_major > 4, before emitting the pass result.

Based on the supplied OCP 5.0 preflight workflow and target-version handling in this file.

Suggested fix
-        if (( minor <= target_minor )); then
+        if (( target_major > 4 || minor <= target_minor )); then
🤖 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
`@ci-operator/step-registry/interop/opp/preflight/interop-opp-preflight-commands.sh`
around lines 131 - 144, Update the API-removal selection logic in the preflight
scan to compare complete major.minor release values rather than only minor
values, ensuring target 5.0 includes applicable historical OCP 4.x removals.
Preserve the existing found_count handling and only emit the pass result after
all relevant deprecated APIs have been evaluated.
🤖 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.

Outside diff comments:
In
`@ci-operator/step-registry/interop/opp/preflight/interop-opp-preflight-commands.sh`:
- Around line 131-144: Update the API-removal selection logic in the preflight
scan to compare complete major.minor release values rather than only minor
values, ensuring target 5.0 includes applicable historical OCP 4.x removals.
Preserve the existing found_count handling and only emit the pass result after
all relevant deprecated APIs have been evaluated.

ℹ️ Review info
⚙️ Run configuration

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

Review profile: CHILL

Plan: Pro Plus

Run ID: 81a6d0d2-cf75-41df-96aa-4d345eabe3e3

📥 Commits

Reviewing files that changed from the base of the PR and between d16981a and caf5832.

📒 Files selected for processing (2)
  • ci-operator/step-registry/interop/opp/preflight/interop-opp-preflight-commands.sh
  • ci-operator/step-registry/interop/opp/upgrade/interop-opp-upgrade-commands.sh
🚧 Files skipped from review as they are similar to previous changes (1)
  • ci-operator/step-registry/interop/opp/upgrade/interop-opp-upgrade-commands.sh

@amp-rh

amp-rh commented Jul 28, 2026

Copy link
Copy Markdown
Contributor Author

/pj-rehearse periodic-ci-stolostron-policy-collection-main-ocp4.22-upgrade-interop-opp-upgrade-aws

@openshift-merge-bot

Copy link
Copy Markdown
Contributor

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

@openshift-ci

openshift-ci Bot commented Jul 28, 2026

Copy link
Copy Markdown
Contributor

@amp-rh: The following test 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/rehearse/periodic-ci-stolostron-policy-collection-main-ocp4.22-upgrade-interop-opp-upgrade-aws caf5832 link unknown /pj-rehearse periodic-ci-stolostron-policy-collection-main-ocp4.22-upgrade-interop-opp-upgrade-aws

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.

@amp-rh

amp-rh commented Jul 29, 2026

Copy link
Copy Markdown
Contributor Author

/pj-rehearse ack

@redhat-chai-bot

Copy link
Copy Markdown
Contributor

Rehearsal Failure Analysis

The failing rehearsal (periodic-ci-stolostron-policy-collection-main-ocp4.22-upgrade-interop-opp-upgrade-aws) is a pre-existing issue unrelated to this PR's changes.

What failed

The install-operators step timed out waiting for rhacs-operator to deploy on OCP 4.22 nightly. The subscription was created on the stable channel from redhat-operators, but the operator CSV never became ready after 30 retries (~15 minutes). The other operators (advanced-cluster-management) installed fine.

Why this is NOT caused by this PR

The only change to the OCP 4.22 config is bumping quay-operator from stable-3.14stable-3.17. The rhacs-operator configuration (channel: "stable") is completely unchanged in the 4.22 variant.

Corroborating evidence

The base periodic job has never succeeded — it has a 0% pass rate across all historical runs (2 runs, both failed). Those runs failed even earlier with a CVO/installer version mismatch during bootstrap. This rehearsal actually got further than the periodic job normally does.

Recommendation

This rehearsal failure is safe to acknowledge. Consider running:

/pj-rehearse ack

cc @yiraeChristineKim for approval (config OWNERS), @jan-law @dhaiducek for review/lgtm

@openshift-merge-bot

Copy link
Copy Markdown
Contributor

@amp-rh: 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 Jul 29, 2026
@openshift-merge-bot

Copy link
Copy Markdown
Contributor

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

@redhat-chai-bot

Copy link
Copy Markdown
Contributor

Friendly bump on this PR — it's been open for review for about a day now. 🙂

Quick recap:

  • All 15 CI checks pass ✅
  • The rehearsal failure (rhacs-operator deployment timeout) is a pre-existing issue unrelated to this PR's changes — already acknowledged via /pj-rehearse ack
  • All CodeRabbit review threads are resolved ✅

What's still needed to merge:

  1. /lgtm from a reviewer
  2. /approve from an OWNERS approver

@yiraeChristineKim @jan-law @dhaiducek @shakyav — would any of you be able to take a look when you get a chance? The changes are straightforward (Quay channel bump for 4.22 + OCP 5.0 compatibility matrix entry). Thanks!

@dhaiducek

Copy link
Copy Markdown
Contributor

/approve

@openshift-ci openshift-ci Bot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Jul 29, 2026
For OCP 5.0 (target_minor=0), the scan loop skipped all entries
since no minor version is <= 0. Include all historical 4.x API
removals when the target major version exceeds 4.
@openshift-merge-bot

Copy link
Copy Markdown
Contributor

[REHEARSALNOTIFIER]
@amp-rh: 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-stolostron-policy-collection-main-ocp5.0-upgrade-interop-opp-upgrade-aws N/A periodic Ci-operator config changed
periodic-ci-stolostron-policy-collection-main-ocp4.22-upgrade-interop-opp-upgrade-aws N/A periodic Ci-operator config changed
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.

@openshift-merge-bot openshift-merge-bot Bot removed the rehearsals-ack Signifies that rehearsal jobs have been acknowledged label Jul 31, 2026
@amp-rh

amp-rh commented Aug 3, 2026

Copy link
Copy Markdown
Contributor Author

/pj-rehearse ack

@openshift-merge-bot

Copy link
Copy Markdown
Contributor

@amp-rh: 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 Aug 3, 2026
@chaclark1974

Copy link
Copy Markdown
Contributor

/lgtm

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

openshift-ci Bot commented Aug 3, 2026

Copy link
Copy Markdown
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: amp-rh, chaclark1974, dhaiducek

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

The pull request process is described 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

@openshift-merge-bot
openshift-merge-bot Bot merged commit 4a18b7d into openshift:main Aug 3, 2026
16 checks passed
amp-rh added a commit to amp-rh/openshift-release that referenced this pull request Aug 4, 2026
rhacs-operator reappeared in the OCP 5.0 redhat-operators catalog
(July 31 sync, stable channel head v4.11.2). It was removed in openshift#82372
because the catalog was empty at the time.

Includes operator_group field to ensure the install-operators step
creates the required OperatorGroup in the rhacs-operator namespace.

odf-operator remains excluded until it is published to the 5.0 catalog
(tracked by RHSTOR-8660, expected ~Nov 2026).
amogh-redhat pushed a commit to amogh-redhat/release that referenced this pull request Aug 5, 2026
…P upgrade configs (openshift#82372)

* INTEROP-9358: Fix operator channel and preflight compatibility for OPP upgrade configs

- Fix Quay channel stable-3.14 to stable-3.17 in 4.22 upgrade config
  (stable-3.14 is outside Red Hat tested integrations for OCP 4.21)
- Add OPP_COMPAT entry for OCP 5.0 (key "0", ACM 2.17 + Quay 3.17)

* INTEROP-9337: Fix 5.0 upgrade config and harden upgrade script

- Keep quay-operator with stable-3.17 channel (present in v5.0 catalog)
- Add missing interop-opp-backup and interop-opp-preflight steps
- Source proxy-conf.sh for proxy environment support
- Fix CSV matching from substring to prefix (index == 1)

* Fix unparseable version gate and version display in preflight

Address CodeRabbit review:
- Increment failed counter for unparseable CSV versions so the
  compatibility check fails instead of silently passing
- Extract target major version and pass to check functions so
  OCP 5.0 logs correctly instead of showing "OCP 4.0"

* Use major.minor compat keys and fix contains/startswith inconsistency

- OPP_COMPAT keys now use "major.minor" format (e.g., "4.22", "5.0")
  instead of minor-only, eliminating ambiguity for OCP 5.x
- Include target version in API deprecation pass message
- Fix flagged API message to use target_major instead of hardcoded "4"
- Fix contains -> startswith in upgrade script namespace lookup to
  prevent false substring matches (consistent with line 366)

* Fix API deprecation scan for OCP 5.0 targets

For OCP 5.0 (target_minor=0), the scan loop skipped all entries
since no minor version is <= 0. Include all historical 4.x API
removals when the target major version exceeds 4.
TimurMP pushed a commit to TimurMP/release that referenced this pull request Aug 9, 2026
…P upgrade configs (openshift#82372)

* INTEROP-9358: Fix operator channel and preflight compatibility for OPP upgrade configs

- Fix Quay channel stable-3.14 to stable-3.17 in 4.22 upgrade config
  (stable-3.14 is outside Red Hat tested integrations for OCP 4.21)
- Add OPP_COMPAT entry for OCP 5.0 (key "0", ACM 2.17 + Quay 3.17)

* INTEROP-9337: Fix 5.0 upgrade config and harden upgrade script

- Keep quay-operator with stable-3.17 channel (present in v5.0 catalog)
- Add missing interop-opp-backup and interop-opp-preflight steps
- Source proxy-conf.sh for proxy environment support
- Fix CSV matching from substring to prefix (index == 1)

* Fix unparseable version gate and version display in preflight

Address CodeRabbit review:
- Increment failed counter for unparseable CSV versions so the
  compatibility check fails instead of silently passing
- Extract target major version and pass to check functions so
  OCP 5.0 logs correctly instead of showing "OCP 4.0"

* Use major.minor compat keys and fix contains/startswith inconsistency

- OPP_COMPAT keys now use "major.minor" format (e.g., "4.22", "5.0")
  instead of minor-only, eliminating ambiguity for OCP 5.x
- Include target version in API deprecation pass message
- Fix flagged API message to use target_major instead of hardcoded "4"
- Fix contains -> startswith in upgrade script namespace lookup to
  prevent false substring matches (consistent with line 366)

* Fix API deprecation scan for OCP 5.0 targets

For OCP 5.0 (target_minor=0), the scan loop skipped all entries
since no minor version is <= 0. Include all historical 4.x API
removals when the target major version exceeds 4.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

approved Indicates a PR has been approved by an approver from all required OWNERS files. jira/valid-reference Indicates that this PR references a valid Jira ticket of any type. 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.

5 participants