docs: clarify OSSM conflict applies only to OLM-managed OCP versions#1158
Conversation
📝 WalkthroughWalkthroughAdds OCP 4.20+ guidance for manually installed OSSM 3 subscriptions that can leave the GatewayClass unaccepted. Installation and troubleshooting documentation describe detection, removal of the subscription and CSV, InstallPlan handling, and verification. The route-mode gateway setup warning now identifies this conflict when the Gateway remains unprogrammed. Troubleshooting item numbering is updated accordingly. Estimated code review effort: 1 (Trivial) | ~5 minutes 🚥 Pre-merge checks | ✅ 10✅ Passed checks (10 passed)
Comment |
There was a problem hiding this comment.
Actionable comments posted: 4
🤖 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 `@docs/content/install/platform-setup.md`:
- Around line 201-207: The OSSM conflict guidance is targeting the wrong
subscription version and remediation. Update the warning in
docs/content/install/platform-setup.md:201-207 and the corresponding
troubleshooting text in docs/content/install/troubleshooting.md:101-106 to
identify an active OSSM v2.x subscription as the conflict and instruct users to
remove it so ingress can install and manage OSSM v3.x.
In `@docs/content/install/troubleshooting.md`:
- Line 163: Update the fallback reference near the troubleshooting entry’s
webhook-health procedure from “issue 12” to “issue 14”, leaving the surrounding
troubleshooting guidance unchanged.
- Around line 108-119: Update the manual OSSM 3 subscription cleanup
instructions so detection and deletion use the same namespace. Either scope the
kubectl lookup to openshift-operators or capture the matching Subscription
namespace from the cluster-wide lookup and reuse it for both subscription and
CSV deletion.
- Around line 121-133: Update the GatewayClass verification step to inspect
status.conditions for gatewayclass/openshift-default and require Accepted=True,
rather than only confirming the object exists. Keep this check after
clusteroperator/ingress becomes Available and make the documented command or
validation explicitly expose the condition.
🪄 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: Central YAML (base), Organization UI (inherited)
Review profile: CHILL
Plan: Enterprise
Run ID: 7b25c71b-ea68-4793-94ca-5b5c191fb15d
📒 Files selected for processing (3)
docs/content/install/platform-setup.mddocs/content/install/troubleshooting.mdscripts/setup-gateway.sh
97805f1 to
dcaddce
Compare
RHOAIENG-76376 On OCP 4.20 the openshift-ingress ClusterOperator manages OSSM internally and pins it to a compatible version. Manually installing servicemeshoperator3 (e.g. from the stable channel) prevents the ingress operator from controlling the version, leaving the GatewayClass in Accepted: Unknown and blocking all Gateway API traffic including maas-default-gateway. - Add a warning admonition in the Gateway API Controller install section of platform-setup.md explaining the conflict and the remediation - Add a troubleshooting entry (#12) with step-by-step diagnosis and fix for GatewayClass stuck in "Waiting for controller" - Improve the setup-gateway.sh warning message to mention the OSSM 3 conflict and suggest a diagnostic command Assisted-by: Claude claude-opus-4-6 <noreply@anthropic.com>
- Update platform-setup.md and troubleshooting.md to document both OSSM v2.x (servicemeshoperator) and manually installed OSSM v3 (servicemeshoperator3) as sources of the GatewayClass conflict on OCP 4.20+ - Fix namespace hardcoding in troubleshooting: detection is cluster-wide but deletion was hardcoded to openshift-operators; now uses placeholders from the lookup output - Verify GatewayClass Accepted=True condition instead of just object existence - Fix stale cross-reference from "issue 12" to "issue 14" - Update setup-gateway.sh warning to mention both OSSM v2 and v3 RHOAIENG-76376 Assisted-by: Claude claude-opus-4-6 <noreply@anthropic.com>
Address reviewer feedback (gcs278) that the ingress operator is migrating from OLM to the Sail Library for OSSM management. The manual OSSM subscription conflict only affects OCP versions still on the OLM path (4.19, 4.20, 4.21 before 4.21.22). On 4.21.22+ and 4.22+, CIO installs Istio directly via the Sail Library and manual subscriptions do not conflict. Update the warning admonition, troubleshooting entry, and setup-gateway.sh diagnostic message with per-version applicability table and notes. Ref: RHOAIENG-76376 Assisted-by: Claude claude-opus-4-6 <noreply@anthropic.com>
Assisted-by: Claude claude-opus-4-6 <noreply@anthropic.com>
dcaddce to
e2ae2e7
Compare
|
@jira-autofix[bot]: The following test has Succeeded: OCI Artifact Browser URLInspecting Test Artifacts ManuallyTo inspect your test artifacts manually, follow these steps:
mkdir -p oras-artifacts
cd oras-artifacts
oras pull quay.io/opendatahub/odh-ci-artifacts:maas-group-test-dcr5l |
|
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: jira-autofix[bot], jland-redhat The full list of commands accepted by this bot can be found here. The pull request process is described here DetailsNeeds approval from an approver in each of these files:
Approvers can indicate their approval by writing |
|
/early-gate-build |
## Promotion: main → stable Automated promotion of **10 commit(s)** from `main` to `stable`. | Detail | Value | | --- | --- | | Promotion | `main` → `stable` | | Commits to merge | **10** | | Conflict check | ✅ Passed | ### Commits included ```` adb6628 fix: set gateway namespace on payload-processing NetworkPolicy (#1157) 0e33993 feat: expand e2e artifact collection to cover all MaaS ecosystem CRDs (#1171) 055b650 docs: fix multi-tenancy documentation inaccuracies (#1166) 61b2a63 docs: clarify OSSM conflict applies only to OLM-managed OCP versions (#1158) a3d3160 fix: return ExternalModel CR name as resolvedModelAlias and remove openshift-identities from gateway auth (#1164) 80186c1 fix: add NetworkPolicy allowing deployment namespace to reach maas-api (#1161) 0957cb5 fix: proper panel names in usage dashboard (#1156) b4aa3ef fix: prefer path-based endpoint over model-routing for LLMInferenceService discovery (#1142) a37588c fix: prevent crash-loop when Kuadrant or KServe CRDs are not installed (#1075) 8d8f7d1 feat: migrate maas-db-config secret to infrastructure namespace on up… (#1149) ```` ---⚠️ **Merge this PR with a merge commit** (do not squash or rebase).
## Promotion: stable → rhoai Automated promotion of **11 commit(s)** from `stable` to `rhoai`. | Detail | Value | | --- | --- | | Promotion | `stable` → `rhoai` | | Commits to merge | **11** | | Conflict check | ✅ Passed | ### Commits included ```` adb6628 fix: set gateway namespace on payload-processing NetworkPolicy (#1157) 0e33993 feat: expand e2e artifact collection to cover all MaaS ecosystem CRDs (#1171) 055b650 docs: fix multi-tenancy documentation inaccuracies (#1166) 61b2a63 docs: clarify OSSM conflict applies only to OLM-managed OCP versions (#1158) a3d3160 fix: return ExternalModel CR name as resolvedModelAlias and remove openshift-identities from gateway auth (#1164) 80186c1 fix: add NetworkPolicy allowing deployment namespace to reach maas-api (#1161) 0957cb5 fix: proper panel names in usage dashboard (#1156) b4aa3ef fix: prefer path-based endpoint over model-routing for LLMInferenceService discovery (#1142) a37588c fix: prevent crash-loop when Kuadrant or KServe CRDs are not installed (#1075) 8d8f7d1 feat: migrate maas-db-config secret to infrastructure namespace on up… (#1149) ```` ---⚠️ **Merge this PR with a merge commit** (do not squash or rebase).
Summary
Documentation updates to warn users about the OSSM 3 / Gateway API conflict on OCP versions where
openshift-ingressmanages OSSM via OLM.Changes
Review iteration
Risk analysis
Summary by CodeRabbit
Documentation
Accepted: Unknownon OCP 4.20+.Bug Fixes