Uploaded image for project: 'OpenShift Container Platform (OCP) Strategy'
  1. OpenShift Container Platform (OCP) Strategy
  2. OCPSTRAT-2614

Refactor OLM Bundle Metadata for Disconnected Environments

XMLWordPrintable

    • Product / Portfolio Work
    • None
    • False
    • Hide

      None

      Show
      None
    • False
    • None
    • None
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      WIP

      Feature Overview (aka. Goal Summary)  

      An elevator pitch (value statement) that describes the Feature in a clear, concise way.  Complete during New status.

      Redesign the OLM bundle metadata structure to define a minimal, necessary set of metadata for every bundle. This will ensure consistent performance and prevent metadata size explosion , while allowing the OpenShift Console to accurately display complete operator information for all available, mirrored, and filtered operator versions in disconnected environments.

      Goals (aka. expected user outcomes)

      The observable functionality that the user now has as a result of receiving this feature. Include the anticipated primary user type/persona and which existing features, if any, will be expanded. Complete during New status.

       

      Expected User Outcome Primary User Type/Persona Existing Features Expanded
       
      Performance: Significantly reduce catalog size and prevent resource contention on smaller clusters by limiting metadata size and ensuring efficiency.
       
       
       
       
      Cluster Administrators OLM Catalog Consumption
       
      Console Display: The console can display correct and complete metadata (e.g., icon, maintainers, example YAML) for any specific bundle version, even if it is not the latest (head) version.
       
       
       
       
      Cluster Administrators OpenShift Console (Catalog View)
       
      Mirroring/Filtering: Allow distribution tools like oc-mirror to effectively filter catalogs without breaking the console experience or losing upgrade path information.
       
       
       
       
       
      Cluster Administrators, Layered Product Teams oc-mirror (Filtering/Mirroring)
       
      Consistency: Standardize the construction and content authoring experience for File-Based Catalogs (FBCs) across all layered product teams.
       
       
       
      Operator Authors, Layered Product Teams FBC Specification

       

      Requirements (aka. Acceptance Criteria):

      A list of specific needs or objectives that a feature must deliver in order to be considered complete.  Be sure to include nonfunctional requirements such as security, reliability, performance, maintainability, scalability, usability, etc.  Initial completion during Refinement status.

       

      Anyone reviewing this Feature needs to know which deployment configurations that the Feature will apply to (or not) once it's been completed.  Describe specific needs (or indicate N/A) for each of the following deployment scenarios. For specific configurations that are out-of-scope for a given release, ensure you provide the OCPSTRAT (for the future to be supported configuration) as well.

      Deployment considerations List applicable specific needs (N/A = not applicable)
      Self-managed, managed, or both  
      Classic (standalone cluster)  
      Hosted control planes  
      Multi node, Compact (three node), or Single node (SNO), or all  
      Connected / Restricted Network  
      Architectures, e.g. x86_x64, ARM (aarch64), IBM Power (ppc64le), and IBM Z (s390x)  
      Operator compatibility  
      Backport needed (list applicable versions)  
      UI need (e.g. OpenShift Console, dynamic plugin, OCM)  
      Other (please specify)  

      Use Cases (Optional):

      Include use case diagrams, main success scenarios, alternative flow scenarios.  Initial completion during Refinement status.
       

      Questions to Answer (Optional):

      Include a list of refinement / architectural questions that may need to be answered before coding can begin.  Initial completion during Refinement status.

      • What is the definitive set of metadata (e.g., keywords, providers, maintainer list, icon) that the console needs for OLM V1 content, and how small can we make it?
      • What is the right order of operations for implementing this redesign alongside related OLM V1 features (e.g., new upgrade path definitions) and OCP update process alignment?
      • How can we best align the filter logic to OLM V0's semantics to resolve bugs related to lost upgrade paths in the current filtering mechanism without changing the core V0 runtime?

        Out of Scope

      High-level list of items that are out of scope.  Initial completion during Refinement status.

       

      Background

      Provide any additional context is needed to frame the feature.  Initial completion during Refinement status.

      Today, the customer cannot see the operator catalog on their cluster if they are not using the latest (because only the latest contains the bundle metadata).

      For example, if the customer sets in oc-mirror minVersion 1.0.1 and maxVersion 1.0.1 and this is not the latest version, they won't be able to see the operator in the cluster because the bundle metadata was removed for non head (or latest) versions. This applies to both oc-mirror v1 and v2 due to the removal of the bundle metadata from catalogs recently.

      Customer Considerations

      Provide any additional customer-specific considerations that must be made when designing and delivering the Feature.  Initial completion during Refinement status.

      Documentation Considerations

      Provide information that needs to be considered and planned so that documentation will meet customer needs.  If the feature extends existing functionality, provide a link to its current documentation. Initial completion during Refinement status.

      <your text here>

      Interoperability Considerations

      Which other projects, including ROSA/OSD/ARO, and versions in our portfolio does this feature impact?  What interoperability test scenarios should be factored by the layered products?  Initial completion during Refinement status.

      OC Mirror: Requires alignment with OLM to ensure mirrored content works with the console without oc-mirror taking special steps.

      OpenShift Console: Requires the new metadata to correctly build views for OLM V1 content and display specific bundle versions.

      Layered Products: The effort requires collaboration and alignment with all layered product teams to ensure they adhere to the new standardized FBC construction rules.

       

       

              rhn-support-mkalinin Marina Kalinin
              rhn-support-mkalinin Marina Kalinin
              None
              None
              None
              None
              None
              None
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Created:
                Updated: