Bug 2086541

Summary: NMO CSV dependency to CNV is failing
Product: Container Native Virtualization (CNV) Reporter: Oren Cohen <ocohen>
Component: InstallationAssignee: Oren Cohen <ocohen>
Status: CLOSED ERRATA QA Contact: Debarati Basu-Nag <dbasunag>
Severity: high Docs Contact:
Priority: unspecified    
Version: 4.11.0CC: cnv-qe-bugs, dbasunag, stirabos
Target Milestone: ---   
Target Release: 4.10.2   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: hco-bundle-registry-container-v4.10.2-5 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2022-06-14 17:42:18 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Oren Cohen 2022-05-16 11:57:11 UTC
Description of problem:
When deploying CNV, starting from v4.11.0-334, node-maintenance-operator is being fetched by OLM according to a dependency set in CNV bundle.

The problem is that NMO supports AllNamespaces InstallMode and doesn't support other InstallModes, while CNV supports only OwnNamespace and SingleNamespace.
Due to this discrepancy, because the OperatorGroup is targeting a single namespace (openshift-cnv), NMO CSV is failed to be installed.

$ oc get csv
NAME                                       DISPLAY                     VERSION   REPLACES                                   PHASE
kubevirt-hyperconverged-operator.v4.11.0   OpenShift Virtualization    4.11.0    kubevirt-hyperconverged-operator.v4.10.0   Succeeded
node-maintenance-operator.v4.10.0          Node Maintenance Operator   4.10.0                                               Failed


Version-Release number of selected component (if applicable):
v4.11.0-334

How reproducible:
100%

Steps to Reproduce:
1. Deploy CNV 4.11.0-334 or later from OSBS.
2.
3.

Actual results:
NMO CSV is failed

Expected results:
see below

Additional info:
Due to this limitation, it has been decided that NMO will still be removed from CNV 4.11 bundle, but it won't be set as a dependency at the OLM level.
If NMO is being used in 4.10.z (i.e. NMO CR(s) exists), HCO will block the upgrade to 4.11 and will raise a descriptive event and upgradeable condition.

temporary W/A to let the NMO CSV be installed in the meanwhile is to patch it to support OwnNamespace InstallMode:
$ oc patch csv node-maintenance-operator.v4.10.0 --patch '{"spec":{"installModes":[{"supported":true,"type":"OwnNamespace"},{"supported":false,"type":"SingleNamespace"},{"supported":false,"type":"MultiNamespace"},{"supported":true,"type":"AllNamespaces"}]}}' --type=merge

Comment 1 Debarati Basu-Nag 2022-06-03 14:41:57 UTC
Verified against v4.11.0-435 via upgrade(4.10.2->4.11.0) and new installation. Post installation and upgrade, no NMO was installed on the cluster, no nmo csv found in error state.

Comment 7 errata-xmlrpc 2022-06-14 17:42:18 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory (Moderate: OpenShift Virtualization 4.10.2 Images security and bug fix update), and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHSA-2022:5026