Uploaded image for project: 'Red Hat OpenStack Services on OpenShift'
  1. Red Hat OpenStack Services on OpenShift
  2. OSPRH-18670

STF 1.5.6 in OCP 4.16 blocks performing an "oc adm upgrade"

XMLWordPrintable

    • 2
    • False
    • Hide

      None

      Show
      None
    • False
    • ?
    • None
    • Hide
      Cause: olm.maxOpenShiftVersion is wrongly set to 4.16 instead of 4.18 both in STO and SGO (Service Telemetry Framework)
      Consequence: oc adm upgrade fails with error "service-telemetry/smart-gateway-operator.v5.0.1743671602 is incompatible with OpenShift minor versions greater than 4.16"
      Fix: Update olm.maxOpenShiftVersion in STO and SGO to 4.18
      Result: OCP cluster with STF can be now easily upgraded by issuing "oc adm upgrade"
      Show
      Cause: olm.maxOpenShiftVersion is wrongly set to 4.16 instead of 4.18 both in STO and SGO (Service Telemetry Framework) Consequence: oc adm upgrade fails with error "service-telemetry/smart-gateway-operator.v5.0.1743671602 is incompatible with OpenShift minor versions greater than 4.16" Fix: Update olm.maxOpenShiftVersion in STO and SGO to 4.18 Result: OCP cluster with STF can be now easily upgraded by issuing "oc adm upgrade"
    • Bug Fix
    • Done
    • CloudOps Sprint 17
    • 1
    • Moderate

      To Reproduce Steps to reproduce the behavior:

      1. Deploy STF 1.5.6 on OCP 4.16
      2. See error "maximum supported OCP version for service-telemetry/service-telemetry-operator.v1.5.1743671601 is 4.16" (1)
      3. Try to perform an "oc adm upgrade"
      4. See error "service-telemetry/smart-gateway-operator.v5.0.1743671602 is incompatible with OpenShift minor versions greater than 4.16" (2)
      (1) [root@bastion-dsal ~]# oc get co operator-lifecycle-manager -oyaml
      apiVersion: config.openshift.io/v1
      kind: ClusterOperator
      metadata:
        annotations:
          capability.openshift.io/name: OperatorLifecycleManager
          include.release.openshift.io/hypershift: "true"
          include.release.openshift.io/ibm-cloud-managed: "true"
          include.release.openshift.io/self-managed-high-availability: "true"
        creationTimestamp: "2024-03-30T11:06:15Z"
        generation: 1
        name: operator-lifecycle-manager
        ownerReferences:
        - apiVersion: config.openshift.io/v1
          controller: true
          kind: ClusterVersion
          name: version
          uid: a4317220-91ee-4049-b303-87c94e3b07dc
        resourceVersion: "1101217659"
        uid: 500d33f6-bd4c-4e1d-9605-f0481acfa19b
      spec: {}
      status:
        conditions:
        - lastTransitionTime: "2024-03-30T11:49:44Z"
          status: "True"
          type: Available
        - lastTransitionTime: "2024-03-30T11:49:44Z"
          status: "False"
          type: Degraded
        - lastTransitionTime: "2025-03-26T15:55:28Z"
          message: Deployed 4.18.0-202503190402.p0.gcc44b48.assembly.stream.el9-cc44b48
          status: "False"
          type: Progressing
        - lastTransitionTime: "2025-07-30T07:00:37Z"
          message: |-
            ClusterServiceVersions blocking minor version upgrades to 4.17.0 or higher:
            - maximum supported OCP version for service-telemetry/service-telemetry-operator.v1.5.1743671601 is 4.16    --->
            - maximum supported OCP version for 3scale/3scale-operator.v0.12.3 is 4.18
            - maximum supported OCP version for service-telemetry/smart-gateway-operator.v5.0.1743671602 is 4.16       ---->
          reason: IncompatibleOperatorsInstalled
          status: "False"
          type: Upgradeable
        extension: null
        relatedObjects:
        - group: operators.coreos.com
          name: packageserver
          namespace: openshift-operator-lifecycle-manager
          resource: clusterserviceversions
        versions:
        - name: operator
          version: 4.18.6    --> current OCP version is 4.18
        - name: operator-lifecycle-manager
          version: 4.18.0-202503190402.p0.gcc44b48.assembly.stream.el9-cc44b48 
      (2) //another OCP cluster current version is 4.16 with STF 1.5.6 installed
      [root@bastion-psi ~]# oc adm upgrade
      Cluster version is 4.16.43
      
      Upgradeable=False
      
        Reason: ClusterOperatorsNotUpgradeable
        Message: Multiple cluster operators should not be upgraded between minor versions:
        * Cluster operator machine-config should not be upgraded between minor versions: PoolUpdating: One or more machine config pools are updating, please see `oc get mcp` for further details
        * Cluster operator operator-lifecycle-manager should not be upgraded between minor versions: IncompatibleOperatorsInstalled: ClusterServiceVersions blocking cluster upgrade: service-telemetry/smart-gateway-operator.v5.0.1743671602 is incompatible with OpenShift minor versions greater than 4.16,service-telemetry/service-telemetry-operator.v1.5.1743671601 is incompatible with OpenShift minor versions greater than 4.16,openshift-logging/cluster-logging.v5.9.15 is incompatible with OpenShift minor versions greater than 4.16
      
      Upstream is unset, so the cluster will use an appropriate default.
      Channel: stable-4.17 (available channels: candidate-4.16, candidate-4.17, candidate-4.18, eus-4.16, eus-4.18, fast-4.16, fast-4.17, fast-4.18, stable-4.16, stable-4.17, stable-4.18)
      
      Recommended updates:
      
        VERSION     IMAGE
        4.17.35     quay.io/openshift-release-dev/ocp-release@sha256:20bf36ab093f1da58dc9662f6cd132803babe641b7471553d2cd6a929bdfc946 

      Expected behavior

      • The upgrade should be successfully performed since STF 1.5.6 is supported in OCP 4.18
      • This is inconsistent. We know that, from operator check, the STF operator is indeed having maxOCP=4.16, but this restriction does not block customer to install it from scratch. It only prevents upgrade scenario. If we restrict upgrade to 4.16+, we should still prevent the operator from installing from scratch on 4.16+.

      Bug impact

      • This impacts all users of STF on OCP 4.16

      Known workaround

      • Uninstall the operator (keep the CR still exists) and after upgrading OCP to 4.18, then re-install the operator to let it manage the CRs again.

              rhn-engineering-vimartin Victoria Martinez de la Cruz
              rhn-engineering-vimartin Victoria Martinez de la Cruz
              rhos-conplat-observability
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

                Created:
                Updated:
                Resolved: