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

oc-mirror does not allow the mirroring of multiple ACM operator versions

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Not a Bug
    • Icon: Major Major
    • None
    • 4.16.z
    • oc-mirror
    • Quality / Stability / Reliability
    • False
    • Hide

      None

      Show
      None
    • None
    • Important
    • None
    • None
    • None
    • None
    • None
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      Description of problem:

      oc-mirror does not allow the mirroring of multiple ACM operator versions

      Version-Release number of selected component (if applicable):

      4.16.z    

      How reproducible:

      Always    

      Steps to Reproduce:

      1.  Create an ImageSetConfiguration
      
      ```
        operators:
        - catalog: registry.redhat.io/redhat/redhat-operator-index:v4.14
          packages:
          - name: advanced-cluster-management
            defaultChannel: release-2.8
            channels:
            - name: release-2.8
              minVersion: '2.8.6'
              maxVersion: '2.8.6'
            defaultChannel: release-2.9
            channels:
            - name: release-2.9
              minVersion: '2.9.4'
              maxVersion: '2.9.4'
          - name: multicluster-engine
            defaultChannel: stable-2.3
            channels:
            - name: stable-2.3
              minVersion: '2.3.6'
              maxVersion: '2.3.6'
            defaultChannel: stable-2.4
            channels:
            - name: stable-2.4
              minVersion: '2.4.5'
              maxVersion: '2.4.5'
      ```
      
      2.  Kick off an oc-mirror
      
      ```
      $ oc-mirror --config=config.yaml docker://mirror-dr.syangsao.net:8443/ocp4 --rebuild-catalogs
      ```    

      Actual results:

      oc-mirror will only mirror the most recent versions from the configuration:
      
      ACM 2.9.4
      MCE 2.4.5
      
      This will then update the index on the destination repository which will only show this version being available.
      
      Customer was on ACM v2.7 and needed to do a step upgrade.
      
      ACM v2.7 -> v2.8 -> v2.9     

      Expected results:

      oc-mirror should be able to mirror multiple versions and also update the index file on the destination repository to have these versions available for OpenShift to see the available operator versions so the customer can upgrade accordingly, especially for step upgrades.    

      Additional info:

      $ oc-mirror version
      WARNING: This version information is deprecated and will be replaced with the output from --short. Use --output=yaml|json to get the full version.
      Client Version: version.Info{Major:"", Minor:"", GitVersion:"4.16.0-202407100906.p0.g75da281.assembly.stream.el9-75da281", GitCommit:"75da281989a147ead237e738507bbd8cec3175e5", GitTreeState:"clean", BuildDate:"2024-07-10T09:48:28Z", GoVersion:"go1.21.11 (Red Hat 1.21.11-1.el9_4) X:strictfipsruntime", Compiler:"gc", Platform:"linux/amd64"}

              luzuccar@redhat.com Luigi Mario Zuccarelli
              rh-ee-syangsao Sam Yangsao
              None
              None
              Ying Zhou Ying Zhou
              None
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

                Created:
                Updated:
                Resolved: