Bug 2089637

Summary: CNAO is blocking upgrade to 4.11 despite standalone nmstate operator is installed
Product: Container Native Virtualization (CNV) Reporter: Oren Cohen <ocohen>
Component: NetworkingAssignee: Radim Hrazdil <rhrazdil>
Status: CLOSED ERRATA QA Contact: Yossi Segev <ysegev>
Severity: urgent Docs Contact:
Priority: unspecified    
Version: 4.10.2CC: cnv-qe-bugs, nrozen, phoracek
Target Milestone: ---   
Target Release: 4.10.2   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: cluster-network-addons-operator v4.10.2-2 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-24 08:18:06 UTC
Description of problem:
CNAO at CNV 4.10 running on OCP 4.11 is setting the upgradeable condition to false even if the standalone operator of nmstate is installed (by finding a deployment with app=kubernetes-nmstate-operator label).
it is displaying this message:
NMState deployment is not supported by CNAO anymore, please install Kubernetes NMState Operator

which blocks the upgrade, since it is getting propagated by HCO to OperatorCondition read by OLM.


$ oc get networkaddonsconfigs cluster -o json | jq .status.conditions
[
  {
    "lastTransitionTime": "2022-05-23T22:11:59Z",
    "status": "False",
    "type": "Progressing"
  },
  {
    "lastTransitionTime": "2022-05-23T21:51:58Z",
    "status": "False",
    "type": "Degraded"
  },
  {
    "lastTransitionTime": "2022-05-23T22:11:59Z",
    "status": "True",
    "type": "Available"
  },
  {
    "lastTransitionTime": "2022-05-23T16:16:28Z",
    "message": "NMState deployment is not supported by CNAO anymore, please install Kubernetes NMState Operator",
    "reason": "InvalidConfiguration",
    "status": "False",
    "type": "Upgradeable"
  }
]


$ oc get networkaddonsconfigs cluster -o json | jq .spec
{
  "kubeMacPool": {},
  "linuxBridge": {},
  "multus": {},
  "nmstate": {},
  "selfSignConfiguration": {
    "caOverlapInterval": "24h0m0s",
    "caRotateInterval": "48h0m0s",
    "certOverlapInterval": "12h0m0s",
    "certRotateInterval": "24h0m0s"
  }
}


Version-Release number of selected component (if applicable):
CNV 4.10.2
CNAO 0.65.6

How reproducible:
Always

Steps to Reproduce:
1. Install CNV 4.10 on OCP 4.10
2. Upgrade OCP to 4.11
3. Watch the CNAO upgradable condition

Actual results:
Upgrade to CNV 4.11 is blocked.

Expected results:
CNAO should be satisfied that the nmstate standalone operator is installed and set the upgradeable condition to true.

Additional info:
CNAO checks the existence of "nmstate: {}" in CNAO CR, which is present and can't be removed because it getting reconciled by HCO. CNAO should ignore the nmstate field in the CR.

Comment 1 Yossi Segev 2022-06-09 14:14:05 UTC
1.Verified on 
OCP 4.11.0-0.nightly-2022-06-06-201913 (upgraded from 4.10)
CNV 4.10.2
CNAO 4.10.2-3

1. Install OCP 4.10 + CNV 4.10.2
2. Upgrade OCP to 4.11
3. Install KNO
4. Upgrade CNV to 4.11

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