Uploaded image for project: 'Operator Ecosystem'
  1. Operator Ecosystem
  2. OPECO-2773

Catalog maintainers have a way to ensure the same opm version is used for all catalog operations

XMLWordPrintable

    • Icon: Epic Epic
    • Resolution: Unresolved
    • Icon: Major Major
    • None
    • None
    • None
    • FBC: opm version
    • Strategic Product Work
    • False
    • None
    • False
    • Not Selected
    • To Do
    • OCPSTRAT-425 - Enable file-based Catalog for flexible and lightweight catalog maintenance
    • OCPSTRAT-425Enable file-based Catalog for flexible and lightweight catalog maintenance
    • 100% To Do, 0% In Progress, 0% Done

      Epic Goal

      • Because historically the behavior of FBC schema has evolved over time the approach of the catalog pipeline has been to use the same version of opm for
        • build
        • validate
        • serve
      • Related to OPECO-2591, the first stab to resolve this relied on a nested set of docker/podman/containerd operations, which were fundamentally incompatible with our containerized CI pipeline.

         

       

      ------------- cloned info below --------------------

      Why is this important?

      • Operator authors have expressed reluctance to migrate to FBC given that they
        • now have to separately manage their upgrade graph catalog contribution; and
        • may have to separately manage per-supported-OCP-version veneer/FBC information; and
        • may not be able to leverage veneers while retaining control of which bundles are included for each release

      Scenarios

      1. author needs to use different veneer types for different OCP releases
      2. author needs to generate FBC for multiple releases from the same template
      3. author needs to omit some bundle versions from some subset of supported OCP releases
      4. author needs to automate a toolchain containing these steps (i.e. cannot force interactive mode)

      Acceptance Criteria

      • CI - MUST be running successfully with tests automated
      • output must be idempotent given same inputs
      •  

      Dependencies (internal and external)

      1. multiple-release support: work with lgallett and team to collaborate on https://docs.google.com/document/d/1uEZdVA06GGahPl3ygnGrFLRkrohaQjs25mVcXToYakE
      2.  

      Previous Work (Optional):

      1. Rejected proposal for `veneergroup` veneer https://hackmd.io/dD3h4K3tRi-fF3Z3SAuGKA
      2. Demonstrated veneergroup-via-Makefile approach: https://github.com/ankitathomas/veneergroup
      3. "Covington" veneer proposal, containing bundle optionality: https://hackmd.io/q8uAu2PjRZSlueutc5McBw#Covington
      4.  

      Open questions::

      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>

       

       

              rh-ee-jkeister Jordan Keister
              rh-ee-jkeister Jordan Keister
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

                Created:
                Updated: