Uploaded image for project: 'OpenShift Over the Air'
  1. OpenShift Over the Air
  2. OTA-374

Manifest annotation for CVO to remove an object


    • Manifest annotation for CVO to remove an object
    • 8
    • False
    • False
    • Done
    • 0% To Do, 0% In Progress, 100% Done
    • Undefined

      Epic Goal

      • Teach the cluster-version operator how to remove in-cluster objects.

      Why is this important?

      • OpenShift releases can remove components.  For example, two service-catalog operators were removed in 4.5.  Teaching the CVO how to remove manifests will allow us to clean up these resources without leaving cleanup jobs and associated RBAC behind.  We may also benefit from it in some rollback cases, where the presence of a new-in 4.(y+1) object makes the application of 4.y difficult.


      1. Born-before-4.5 clusters currently have dangling resources from cleaning up the service-catalog operators (like the openshift-service-catalog-removed namespace in this job).  This enhancement would provide a mechanism for removing them, and any other cruft that we accumulate which lack in-cluster operators.
      2. We can add removal manifests to the 4.(y-1) before growing a new component in 4.y, to make 4.y->4.(y-1) rollback more convenient for customers.

      Acceptance Criteria

      • CVO CI - MUST be running successfully with automated e2e-operator tests covering this functionality.
      • Release Technical Enablement - Not required.  This is a purely OCP-internal change.

      Dependencies (internal and external)

      1. None

      Previous Work (Optional):

      1. Enhancement from OTA-279 has been accepted.  Remaining work is just implementing the accepted proposal.

      Open questions::

      1. None

      Done Checklist

      • CI - CI is running, tests are automated and merged.
      • Release Enablement <link to Feature Enablement Presentation>
      • DEV - Upstream code and tests merged: <link to meaningful PR or GitHub Issue>
      • DEV - Upstream documentation merged: <link to meaningful PR or GitHub Issue>
      • DEV - Downstream build attached to advisory: <link to errata>
      • QE - Test plans in Polarion: <link or reference to Polarion>
      • QE - Automated tests merged: <link or reference to automated tests>
      • DOC - Downstream documentation merged: <link to meaningful PR>

            jottofar Jack Ottofaro (Inactive)
            trking W. Trevor King
            Yang Yang Yang Yang
            0 Vote for this issue
            7 Start watching this issue