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

Operator Installation mode is displayed inaccurately on OperatorHub when selecting a non-latest CSV of a channel

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Unresolved
    • Icon: Undefined Undefined
    • None
    • 4.17
    • Management Console
    • None
    • Important
    • No
    • False
    • Hide

      None

      Show
      None

      Description of problem:

      Our operator is going to support AllNamespaces installation mode in the next release (1.15.0). But we have observed a UX issue: 
      
      For channels that contain the 1.15.0 build (such as stable-v1 and stable-v1.15), even if the user selects an older version like 1.14.0 from the installation page, the Console will still use the info from CSV 1.15.0 to display that the operator can be installed in either "All namespaces on the cluster (default)" or "A specific namespace on the cluster."
      
      This is what misleads users and may cause the installation to fail if they leave the option set to the default. It is only an issue when using the Web Console to install the operator.

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

          OCP 4.17 (not specific), cert-manager operator 1.15.0 staging build

      How reproducible:

          Always

      Steps to Reproduce:

          1. Create a catalogsource which contains the staging build of the cert-manager operator 1.15.0
      
      $ oc create -f - <<EOF
      apiVersion: operators.coreos.com/v1alpha1
      kind: CatalogSource
      metadata:
        name: rh-osbs
        namespace: openshift-marketplace
      spec:
        displayName: rh-osbs
        image: brew.registry.redhat.io/rh-osbs/iib:801454 # 4.17 Index Image (use 801453 for 4.16, 801452 for 4.15, 801451 for 4.14)
        sourceType: grpc
        publisher: CVP
        updateStrategy:
          registryPoll:
            interval: 5m
      EOF
      
          2. Navigate to the OperatorHub, select the operator from the created catalogsource "rh-osbs"
          3. Select channel "stable-v1" and version "1.14.0"
          4. Leave installation options as default and click the Install botton
          5. Wait to see "Installation Failed" error occur

      Screenshots: https://drive.google.com/drive/folders/1bgySdGxgtpFuehD03OasMrwe6lAv9nr2?usp=sharing

      Actual results:

          When user selects CSV 1.14.0 from "stable-v1" channel, the OperatorHub displays that the operator can be installed in either "All namespaces on the cluster (default)" or "A specific namespace on the cluster."

      Expected results:

          When user selects CSV 1.14.0 from "stable-v1" channel, the OperatorHub should only display that the operator can be installed in "A specific namespace on the cluster."

      Additional info:

          It seems the Console uses the information about the installMode and other associated info from the CSV at the head of the channel ('currentCSV' of the operator's PackageManifest object) being used for installation rather than the actual CSV which the user is trying to install. That causes this exact issue to thrive.

              sgoodwin_redhat Steve goodwin
              rh-ee-yuewu Yuedong Wu
              Xiyun Zhao Xiyun Zhao
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

                Created:
                Updated: