Uploaded image for project: 'Operator Runtime'
  1. Operator Runtime
  2. OPRUN-3571

[Downstream] Add controller to cluster-olm-operator for managing default ClusterCatalogs

XMLWordPrintable

    • Icon: Story Story
    • Resolution: Unresolved
    • Icon: Normal Normal
    • None
    • None
    • None
    • Arbok OLM Sprint 261

      Typically, any non-deployment resource managed by cluster-olm-operator would be handled by a StaticResourceController (usage ref). Unfortunately, the StaticResourceController only knows how to handle specific types, as seen by the usage of the ApplyDirectly function in the StaticResourceController.Sync method. Due to the ApplyDirectly function only handling a set of known resources, the ClusterCatalog resource would likely not be handled the same as other static manifests currently managed by cluster-olm-operator.

      In order to enable cluster-olm-operator to properly manage ClusterCatalog resources, it is proposed that we implement a custom factory.Controller that knows how to appropriately apply and manage ClusterCatalog resources such that:

      • Changes to any fields specified in the default ClusterCatalog resources are reverted to the default values
      • Changes to fields not specified in the default ClusterCatalog resources are left untouched

      The openshift/library-go project has a lot of packages that will likely make this implementation pretty straightforward. The custom controller implementation will likely also require implementation of some pre-condition logic that ensures the ClusterCatalog API is available on the cluster before attempting to use it.

            rh-ee-bpalmer Bryce Palmer
            rh-ee-bpalmer Bryce Palmer
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated: