Upgrading operators that are pinned in the OpenShift console

You can upgrade the operators to the new version in the OpenShift console.

Before you begin

To prevent any connection problems during the upgrade, make sure that the passwords that you use for databases and LDAP are not about to expire and refresh them if they are. The LDAP bind secret "ldap-bind-secret" is set in the lc_bind_secret parameter in the following ldap_configuration section.

ldap_configuration:
   lc_bind_secret: ldap-bind-secret

Procedure

  1. Log in to your OCP or ROKS cluster as a cluster administrator.
  2. Add the CatalogSource resources to Operator Hub for the new versions. Each interim fix has a specific version and unique digest, which are needed for the new catalog sources.
    To import the YAML into your cluster in the OCP Admin console:
    1. Click the plus icon at the top of the console. The Import YAML editor opens.

      Icon for importing YAML

    2. You can import the entire catalog source YAML into the editor from the corresponding catalog_source.yaml file, and click Create. You can also paste the individual CatalogSource resource definitions one-by-one into the editor.
      Note: You can find the CatalogSource YAML in the catalog_source.yaml file, which is located in the CASE package in the ibm-cp-automation/inventory/cp4aOperatorSdk/files/deploy/crs/cert-kubernetes/descriptors/op-olm directory.

      For more information about downloading cert-kubernetes, see Preparing a client to connect to the cluster.

    The following example of the catalog sources does not show the real digests for 22.0.1 and its corresponding dependencies. The example does show the names and the number of the catalog sources (6) that you need to create. Replace XXXXXXXXXXXX with the digest for each catalog source.

    # CP4BA 22.0.1
    apiVersion: operators.coreos.com/v1alpha1
    kind: CatalogSource
    metadata:
      name: ibm-cp4a-operator-catalog
      namespace: openshift-marketplace
    spec:
      displayName: ibm-cp4a-operator
      publisher: IBM
      sourceType: grpc
      image: icr.io/cpopen/ibm-cp-automation-catalog@sha256:XXXXXXXXXXXX
      updateStrategy:
        registryPoll:
          interval: 45m
    # IBM Automation Foundation Base 1.3.x
    apiVersion: operators.coreos.com/v1alpha1
    kind: CatalogSource
    metadata:
      name: ibm-cp-automation-foundation-catalog
      namespace: openshift-marketplace
    spec:
      displayName: IBM Automation Foundation Operators
      publisher: IBM
      sourceType: grpc
      image: icr.io/cpopen/ibm-cp-automation-foundation-catalog@sha256:XXXXXXXXXXXX
      updateStrategy:
        registryPoll:
          interval: 45m
    # IBM Automation Foundation Core 1.3.x
    apiVersion: operators.coreos.com/v1alpha1
    kind: CatalogSource
    metadata:
      name: ibm-automation-foundation-core-catalog
      namespace: openshift-marketplace
    spec:
      displayName: IBM Automation Foundation Core Operators
      publisher: IBM
      sourceType: grpc
      image: icr.io/cpopen/ibm-automation-foundation-core-catalog@sha256:XXXXXXXXXXXX
      updateStrategy:
        registryPoll:
          interval: 45m
    # IBM Cloud Foundational Services 3.x.x
    apiVersion: operators.coreos.com/v1alpha1
    kind: CatalogSource
    metadata:
      annotations:
        bedrock_catalogsource_priority: '1'
      name: opencloud-operators
      namespace: openshift-marketplace
    spec:
      displayName: IBMCS Operators
      publisher: IBM
      sourceType: grpc
      image: icr.io/cpopen/ibm-common-service-catalog@sha256:XXXXXXXXXXXX
      updateStrategy:
        registryPoll:
          interval: 45m
    # IBM Business Teams Service version 3.x.x
     apiVersion: operators.coreos.com/v1alpha1
     kind: CatalogSource
     metadata:
      annotations:
        bedrock_catalogsource_priority: '1'
      name: bts-operator
      namespace: openshift-marketplace
     spec:
      displayName: BTS Operator
      publisher: IBM
      sourceType: grpc
      image: quay.io/opencloudio/ibm-bts-operator-catalog@sha256:XXXXXXXXXXXX
      updateStrategy:
        registryPoll:
          interval: 45m
    # Cloud Native PostgresSQL 4.0.x
     apiVersion: operators.coreos.com/v1alpha1
     kind: CatalogSource
     metadata:
      annotations:
        bedrock_catalogsource_priority: '1'
      name: cloud-native-postgresql-catalog
      namespace: openshift-marketplace
     spec:
      displayName: Cloud Native Postgresql Catalog
      publisher: IBM
      sourceType: grpc
      image: icr.io/cpopen/ibm-cpd-cloud-native-postgresql-operator-catalog@sha256:XXXXXXXXXXXX
      updateStrategy:
        registryPoll:
          interval: 45m

    If you loaded the images to a local docker registry, use the docker registry hostname in the image paths instead of the IBM Entitled Registry.

    image: mycorp-docker-local.mycorp.com/<namespace>/<catalog_name>
  3. In the Subscription tab of the CP4BA operator, click to edit the Channel, select the v22.1 channel, and click Save.
  4. In the Subscription tab of the Workflow Process Service operator, click to edit the Channel, select the v22.1 channel, and click Save.

    The Cloud Pak for Business Automation and Workflow Process Service operators are automatically updated to 22.0.1.

  5. Click Installed Operators to see the updated operators.

    If the Cloud Pak for Business Automation operator upgrade continues to show the status "Upgrading", then you might need to intervene.

    To resolve the issue remove the previous versions of the CP4BA operator and the Workflow Process Service operator by clicking the three vertical dots (overflow menu) in the far right column, click Uninstall Operator, and then install the operators again from the IBM Cloud Pak® for Business Automation catalog.

What to do next

If you want to switch to the recommended pinned catalogs, go and complete the steps in Preparing capabilities and updating your custom resource for an upgrade.