Uploaded image for project: 'OpenShift Bugs'
  1. OpenShift Bugs
  2. OCPBUGS-1550

Uninstalling an operator that uses conversion webhooks breaks garbage collection on the cluster

    • Icon: Bug Bug
    • Resolution: Duplicate
    • Icon: Major Major
    • None
    • 4.9.z
    • OLM
    • Quality / Stability / Reliability
    • False
    • None
    • None
    • None
    • None
    • None
    • None
    • None
    • None
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      When an operator is uninstalled via the UI, the controller deployment is removed from the cluster as it is owned by the operator's subscription, and CRDs are left as-is. However, if the operator follows the recommended flow for adding CRD conversion webhooks, this uninstall will result in broken conversion webhooks (as the deployment that handles them is gone).

      This results in garbage collection across the cluster being broken, e.g. [1]. In OpenShift 4.10, it will also result in the cluster entering a degraded state [2].

      Background:

      The DevWorkspace Operator (and the Web Terminal Operator, which depends on it) use conversion webhooks for their CRDs. Uninstalling the DevWorkspace Operator requires a significant manual process, documented here

      To reproduce the issue in [1], it should be sufficient to install the DevWorkspace Operator via OperatorHub on a cluster, and then remove it.

      [1] - https://bugzilla.redhat.com/show_bug.cgi?id=2010647
      [2] - https://github.com/openshift/enhancements/pull/908/files#diff-4c414d04bf185452eac4e74cd1a4736a4e94d72b582a97b04763ea32300f18ebR176

              agreene1991 Alexander Greene (Inactive)
              amisevsk Angel Misevski (Inactive)
              None
              Votes:
              0 Vote for this issue
              Watchers:
              6 Start watching this issue

                Created:
                Updated:
                Resolved: