Skip to main content
Feedback

Upgrading 6.2.x → 6.3.0 (introduced in v6.3.0)

This page describes the steps for upgrading an existing Local Edition 6.2.x cluster to 6.3.0 using Helm upgrade.

Before you begin, ensure the following prerequisites are met:

  • Ensure the Boomi Cloud API Management - Local Edition 6.2.x cluster is up and running.
  • Confirm if the Local Edition 6.2.x cluster is installed with Helm. Verify the Helm release using this command: helm list -n <namespace>.
  • Confirm you have the 6.3.0 GA package: this package is available in the 6.3.0 GA installer. The deploy/ directory inside it is the Helm chart root.
  • All 6.3.0 container images are available to the cluster, either loaded locally for imagePullPolicy: Always or pushed to your registry. This includes apim-le-toolkit:v6.3.0, which runs the pre-upgrade hook.
  • The DML database user password (the same initDBUserPassword value used at install time).
  • Network access from the cluster to the MySQL database, unchanged from 6.2.x.

Steps to upgrade

Procedure

  1. Check the current release version, run:

    helm get values <release> -n <namespace> -o yaml
  2. Upgrade the database schema for the service_iodocs table from apim/apim-le-toolkit. You can find the upgrade schema at <6.3.0 root directory>/upgrade/scripts/db/upgrade-schema-6.2.0_6.3.0.sql

    Run the following command:

    -- GraphQL schema changes for 6.3.0
    ALTER TABLE service_iodocs ADD COLUMN epkey VARCHAR(255) NULL;
    ALTER TABLE service_iodocs MODIFY COLUMN doc_type ENUM('IODOC', 'SWAGGER', 'GRAPHQL') NOT NULL DEFAULT 'IODOC';
    ALTER TABLE service_iodocs DROP INDEX spkey;
    ALTER TABLE service_iodocs ADD UNIQUE KEY uk_spkey_epkey (spkey, epkey);
  3. Upgrade the cluster using Helm. Run the following command:

    note

    In the upgrade command, also set --set preInstallDBPrep.executePreupgradeDbMigrate to true. It is located at <6.3.0 root directory>/charts/preInstallDBPrep/values.yaml.

    helm upgrade apim ./deploy -f /<custom>-overrides.yaml \
    -f /samples/overrides/preinstall-overrides.yaml \
    --set preInstallDBPrep.initDBUserName=masheryonprem \
    --set preInstallDBPrep.initDBUserPassword=<DML User Password> \
    --set preInstallDBPrep.localDevAdminPassword=<Pass> \
    --set preInstallDBPrep.executePreupgradeDbMigrate=true \
    --namespace <namespace> \
    --timeout 15m

    If you want to inspect the job and its pod after a successful upgrade, add --set preInstallDBPrep.hookDeletionPolicy="before-hook-creation" to the above helm upgrade command before running it. This keeps the job until the next helm upgrade triggers the hook again.

    Clean these up manually when you're done, run:

    kubectl delete job preupgrade-dbmigrate-6-3-0 -n <namespace>
    kubectl delete configmap preupgrade-configmap -n <namespace>

    The 6.3.0 Helm chart ships a pre-upgrade hook in the preInstallDBPrep sub-chart that migrates the platformapi backend target data automatically, before any workload changes. This migration is idempotent, running it again after the data has migrated has no effect, and it logs the number of rows changed per table and stamps the updated column of each changed row with the migration time. If the database update fails, the upgrade aborts here, before any chart resources or workloads are touched.

    A matching pre-rollback hook reverts the data on helm rollback, subject to the limitation described in Rollback.

    If you want to watch the migration happen in real time, follow the pod's logs in a second terminal while the upgrade runs. The hook job deletes itself automatically on success (hook-delete-policy: before-hook-creation,hook-succeeded), so this is your only chance to see it live:

    kubectl get pods -n <namespace> -w | grep preupgrade
    kubectl logs -f <preupgrade-pod> -n <namespace>

Next steps

After completing the upgrade, proceed with the post-upgrade steps. Refer to Performing post-upgrade steps for more information.

On this Page