Upgrading from 4.1.0 to 4.1.1

How to upgrade

Please notice that upgrading to version 4.1.1 is only possible from version 4.1.0, please check Upgrading from 4.0.5 to 4.1.0 if you need to upgrade from a previous version.

Upgrade OpenShift version

From version 4.1.1, IBM Industry Solutions Workbench supports OpenShift version 4.14 in addition to 4.12.

Upgrade Solution CLI

In IBM Industry Solutions Workbench version 4.1.1 the Solution CLI configuration file cli-config.json has changed. The cli-config.json shipped with 4.1.1 requires Solution CLI 8.0.3 or higher. Please make sure, that your Solution CLI is upgraded accordingly. You can upgrade the Solution CLI by using the command k5 upgrade-cli.

Supported Node.js version

From version 4.1.1, IBM Industry Solutions Workbench only supports Node.js version 20.11.1 and higher. All newly created TypeScript and JavaScript projects will require Node.js 20.11.1 as a minimum version. Also the Solution CLI requires Node.js 20.11.1 to be installed on your system for local development.

Upgrade to Node.js 20.11.1

  • Download Node.js 20.11.1 and install it on your local system using your preferred tooling.

    Helping links:

  • Upgrade your locally installed Solution CLI to the latest version by running k5 upgrade-cli

Update your TypeScript or JavaScript projects to require Node.js 20.11.1

There is no necessity of upgrading your already existing service projects to the new Node.js version. If you would like to stay on Node.js 18, you can leave everything as is. However, it is recommended to upgrade all your service projects.

To upgrade your service projects, please execute the following steps:

  • Clone your service project locally and open it in your IDE of choice
  • Open the file package.json
  • Adjust dev-dependency @types/node to a value greater than 20.11.1
    "devDependencies": {
        ...
        "@types/node": "^20.11.16",
        ...
    }
  • Ensure that property engines.node is set to value >=20.11.1
    "engines": {
        "node": ">=20.11.1"
    },
  • Run command npm install to update your local package-lock.json

Custom Pipelines based on Workspaces

In IBM Industry Solutions Workbench version 4.1.1 Pipelines are based on Workspaces and multiple Tasks. Therefore the structure of the OpenShift Pipeline resources (Pipeline, Task, PipelineRun) have changed. All existing already created IBM Industry Solutions Workbench Pipelines will be migrated to the new structure automatically in a migration job while upgrading IBM Industry Solutions Workbench to version 4.1.1.

Generic Service Java Stack 1.0 (formally known as pro-code Java project)

Adjust your Generic Service Java projects created with previous versions

Dependency update

Generic Service Java projects use several functionalities provided by the dependency "cp-framework-sdk", which has been updated to include new fixes, and versions of underlying used dependencies.

All existing Generic Service Java projects have to download this new version and migrate to this new version.

Migration steps
  1. Open the Solution Envoy dashboard (you can find the link in Solution Designer on the CI/CD page after you have set up at least one deploy pipeline or inside Solution Hub after selecting a k5-project and opening the tab "Service Deployments")

  2. Navigate to the Infrastructure page and download all the dependencies listed under Maven Dependencies (Java)

  3. Install dependencies in the local maven repository. Below is an example how the dependencies can be installed via maven

    mvn install:install-file -Dfile=cp-framework-sdk-autoconfiguration-4.0.304.jar -DpomFile=cp-framework-sdk-autoconfiguration-4.0.304.pom
    mvn install:install-file -Dfile=cp-framework-sdk-parent-4.0.304.pom -DpomFile=cp-framework-sdk-parent-4.0.304.pom
  4. Clone / Open your service project

  5. Navigate to pom.xml file

  6. Search for the parent attribute and change it to match the new "cp-framework-sdk" version, see the following snippet example:

    <parent>
        <groupId>de.knowis.cp.sdk</groupId>
        <artifactId>cp-framework-sdk-parent</artifactId>
        <version>4.0.304</version>
        <relativePath>
            ./.framework/repo/de/knowis/cp/sdk/cp-framework-sdk-parent/4.0.304/cp-framework-sdk-parent-4.0.304.pom
        </relativePath>
    </parent>

    NOTE Current latest version of "cp-framework-sdk" that is shipped with the IBM Industry Solutions Workbench 4.1 is 4.0.304.

  7. Push your adjustment and run your pipeline(s) to make sure your projects deploy successfully

Domain Service Java Stack 1.0 (formally known as low-code Java project)

Adjust your Domain Service Java projects created with previous versions

Dependency Update

Domain Service Java projects use several functionalities provided by the dependency "cp-framework-sdk", which has been updated to include new fixes, and versions of underlying used dependencies.

All existing Domain Service Java projects are required to migrate to this new version.

  1. Clone (k5 clone) or update (k5 pull) your service project

  2. Open your service project

  3. Navigate to pom.xml file

  4. Search for the parent attribute and change it to match the new "cp-framework-sdk" version, see the following snippet example:

    <parent>
        <groupId>de.knowis.cp.sdk</groupId>
        <artifactId>cp-framework-managed-sdk-parent</artifactId>
        <version>4.0.304</version>
        <relativePath>
            ./.framework/repo/de/knowis/cp/sdk/cp-framework-managed-sdk-parent/4.0.304/cp-framework-managed-sdk-parent-4.0.304.pom
        </relativePath>
    </parent>

    NOTE Current latest version of "cp-framework-sdk" that is shipped with the IBM Industry Solutions Workbench 4.1 is 4.0.304.

  5. Push your adjustment and run your pipeline(s) to make sure your projects deploy successfully

Tip:

With version 4.1.1 a new naming strategy was introduced. You can learn more about configuring it for RDBMS and MongoDB here.