Bug 2223862

Summary: "Uninstalling OpenShift Virtualization by using the CLI" should have step to remove namespace openshift-cnv
Product: Container Native Virtualization (CNV) Reporter: nijin ashok <nashok>
Component: DocumentationAssignee: Sabrina Jess <sjess>
Status: NEW --- QA Contact: Debarati Basu-Nag <dbasunag>
Severity: medium Docs Contact:
Priority: unspecified    
Version: 4.13.4CC: apinnick
Target Milestone: ---   
Target Release: 4.14.0   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 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 nijin ashok 2023-07-19 07:20:09 UTC
Document URL: 

https://access.redhat.com/documentation/en-us/openshift_container_platform/4.13/html-single/virtualization/index#virt-deleting-virt-cli_uninstalling-virt

Section Number and Name: 

6.5.2. Uninstalling OpenShift Virtualization by using the CLI

Describe the issue: 

The CLI method should also remove the namespace `openshift-cnv` as a last step. This makes sure that all the related objects are deleted. Following the current steps will end up in below orphan objects:

~~~
# oc get secret -n openshift-cnv
NAME                             TYPE                                  DATA   AGE
builder-dockercfg-nvw9k          kubernetes.io/dockercfg               1      3h30m
builder-token-kkk96              kubernetes.io/service-account-token   4      3h30m
cdi-apiserver-server-cert        kubernetes.io/tls                     2      3m17s
cdi-apiserver-signer             kubernetes.io/tls                     2      3m18s
cdi-uploadproxy-server-cert      kubernetes.io/tls                     2      3m17s
cdi-uploadproxy-signer           kubernetes.io/tls                     2      3m17s
cdi-uploadserver-client-cert     kubernetes.io/tls                     2      3m16s
cdi-uploadserver-client-signer   kubernetes.io/tls                     2      3m16s
cdi-uploadserver-signer          kubernetes.io/tls                     2      3m16s
default-dockercfg-9l74b          kubernetes.io/dockercfg               1      3h30m
default-token-qjpsm              kubernetes.io/service-account-token   4      3h30m
deployer-dockercfg-wl26l         kubernetes.io/dockercfg               1      3h30m
deployer-token-wcbpt             kubernetes.io/service-account-token   4      3h30m
kubemacpool-mutator-ca           Opaque                                2      3h27m
kubemacpool-service              kubernetes.io/tls                     2      3h27m
plugin-serving-cert              kubernetes.io/tls                     2      3h27m

# oc get cm -n openshift-cnv
NAME                                    DATA   AGE
cdi-apiserver-signer-bundle             1      3m39s
cdi-operator-leader-election-helper     0      3h28m
cdi-uploadproxy-signer-bundle           1      3m38s
cdi-uploadserver-client-signer-bundle   1      3m37s
cdi-uploadserver-signer-bundle          1      3m37s
d98bc7b7.kubevirt.io                    0      3h28m
hyperconverged-cluster-operator-lock    0      3h28m
kube-root-ca.crt                        1      3h30m
openshift-service-ca.crt                1      3h30m
~~~ 

This can cause issues in installing the operator back where CDI operator will fail because of the above orphan secret and configmap objects.

Additional information: