Remove the DevWorkspace Operator

To completely uninstall the web terminal, you must also remove the DevWorkspace Operator and custom resources used by the Operator.

Important

The DevWorkspace Operator is a standalone Operator and might be required as a dependency for other Operators installed in the cluster. Follow the steps below only if you are sure that the DevWorkspace Operator is no longer needed.

Prerequisites
  • You have access to an OpenShift Container Platform cluster with cluster administrator permissions.

  • You have installed the oc CLI.

Procedure
  1. Remove the DevWorkspace custom resources used by the Operator, along with any related Kubernetes objects:

    $ oc delete devworkspaces.workspace.devfile.io --all-namespaces --all --wait
    $ oc delete devworkspaceroutings.controller.devfile.io --all-namespaces --all --wait
    Warning

    If this step is not complete, finalizers make it difficult to fully uninstall the Operator.

  2. Remove the CRDs used by the Operator:

    Warning

    The DevWorkspace Operator provides custom resource definitions (CRDs) that use conversion webhooks. Failing to remove these CRDs can cause issues in the cluster.

    $ oc delete customresourcedefinitions.apiextensions.k8s.io devworkspaceroutings.controller.devfile.io
    $ oc delete customresourcedefinitions.apiextensions.k8s.io devworkspaces.workspace.devfile.io
    $ oc delete customresourcedefinitions.apiextensions.k8s.io devworkspacetemplates.workspace.devfile.io
    $ oc delete customresourcedefinitions.apiextensions.k8s.io devworkspaceoperatorconfigs.controller.devfile.io
  3. Verify that all involved custom resource definitions are removed. The following command should not display any output:

    $ oc get customresourcedefinitions.apiextensions.k8s.io | grep "devfile.io"
  4. Remove the devworkspace-webhook-server deployment, mutating, and validating webhooks:

    $ oc delete deployment/devworkspace-webhook-server -n openshift-operators
    $ oc delete mutatingwebhookconfigurations controller.devfile.io
    $ oc delete validatingwebhookconfigurations controller.devfile.io
    Note

    If you remove the devworkspace-webhook-server deployment without removing the mutating and validating webhooks, you cannot use oc exec commands to run commands in a container in the cluster. After you remove the webhooks you can use the oc exec commands again.

  5. Remove any remaining services, secrets, and config maps. Depending on the installation, some resources included in the following commands might not exist in the cluster.

    $ oc delete all --selector app.kubernetes.io/part-of=devworkspace-operator,app.kubernetes.io/name=devworkspace-webhook-server -n openshift-operators
    $ oc delete serviceaccounts devworkspace-webhook-server -n openshift-operators
    $ oc delete clusterrole devworkspace-webhook-server
    $ oc delete clusterrolebinding devworkspace-webhook-server
  6. Uninstall the DevWorkspace Operator:

    1. In the Administrator perspective of the web console, navigate to EcosystemInstalled Operators.

    2. Scroll the filter list or type a keyword into the Filter by name box to find the DevWorkspace Operator.

    3. Click the Options menu kebab for the Operator, and then select Uninstall Operator.

    4. In the Uninstall Operator confirmation dialog box, click Uninstall to remove the Operator, Operator deployments, and pods from the cluster. The Operator stops running and no longer receives updates.

#include::api.adoc[leveloffset=+1]

#include::configure.adoc[leveloffset=+1]

#include::ai.adoc[leveloffset=+1]

#include::develop.adoc[leveloffset=+1]

#include::upgrade.adoc[leveloffset=+1]

#include::plan.adoc[leveloffset=+1]