Upgrading from the latest 1.3.x patch to 1.4.0 v1.4.0 (LTS)

Upgrade from the latest 1.3.x patch version to 1.4.0.

Role: Infrastructure engineer

Prerequisites

  • Administrative access to the Kubernetes cluster (kubectl, helm).
  • Required tools:
  • You are running the latest available 1.3.x patch version. This is required before upgrading to 1.4.0; you cannot upgrade to a 1.4.x patch (for example 1.4.1) directly — you must reach 1.4.0 first.
Bootstrap helm chart removed in 1.4

The edbpgai-bootstrap helm chart is no longer supported from HM 1.4 onwards. You must migrate to the operator method before upgrading, using edbctl hm prepare-bootstrap-operator-conversion — it exports your HybridControlPlane CR and transfers Helm ownership to the operator release in a single step. See Migrating from Bootstrap to Operator installation.

Upgrade 1.3.x → 1.4.0

Before upgrading, ensure you are running the latest available 1.3.x patch version.

The 1.3.x to 1.4.0 upgrade is largely automated. The HM operator embeds and runs the required upgrade scripts automatically — no manual data migration steps are needed.

Create new secrets

Before upgrading, create the new secrets required for this release:

edbctl hm create-install-secrets --version v1.4.0

For more CLI options, see edbctl hybrid-manager. To customize your component's secrets, see Customizing secrets.

Upgrade the operator Helm chart

Red Hat OpenShift

On RHOS, upgrade the operator through OperatorHub (OLM) by switching the subscription channel to stable. See Upgrade the operator to 2.0.0 on Red Hat OpenShift. Do not use edbctl hm upgrade-operator on RHOS.

The commands below use edb-hcp-operator-system — use the namespace where your operator is actually installed. If you migrated from the bootstrap method, the conversion transfers Helm ownership onto edbpgai-bootstrap, so use that namespace instead.

Upgrade the edb-hcp-operator Helm chart using edbctl:

edbctl hm upgrade-operator \
  --release-name edb-hcp-operator \
  --namespace edb-hcp-operator-system \
  --registry-uri docker.enterprisedb.com/pgai-platform \
  --registry-username pgai-platform \
  --registry-password <password>

Or upgrade directly with Helm:

  1. Create the values file:

    cat <<EOF > edb-hcp-operator.values.yaml
    controllerManager:
      manager:
        image:
          repository: docker.enterprisedb.com/pgai-platform/edb-hcp-operator/manager
          tag: v2.0.0
    imagePullSecrets:
      - name: edb-cred
    EOF
  2. Run the upgrade:

    helm upgrade --install \
      --version 2.0.0 \
      --values edb-hcp-operator.values.yaml \
      -n edb-hcp-operator-system \
      edb-hcp-operator enterprisedb-edbpgai/edb-hcp-operator

Apply the updated CR

  1. Update spec.version to v1.4.0 in your HybridControlPlane manifest and apply it:

    kubectl apply -f hybridmanager.yaml
  2. Trigger the upgrade:

    kubectl annotate hybridcontrolplane edbpgai --overwrite edbpgai.com/ready-for-upgrade=true
  3. Monitor progress:

    kubectl get hybridcontrolplane edbpgai -w