You can upgrade the Engineering Lifecycle Management instance by using Red Hat® OpenShift® CLI method.
Before you begin
- Ensure that the Engineering Lifecycle Management operator is upgraded. For more information, see
Upgrading Engineering Lifecycle Management Operator.
- You need appropriate permissions to upgrade the Engineering Lifecycle Management instance. For more
information about the user roles in the Red Hat OpenShift, see User roles mapping in Engineering Lifecycle Management on Hybrid Cloud.
- Back up the database. For more information, see Backing up and restoring other supported databases.
Important:
- The Engineering Lifecycle Management applications are not accessible during the database backup.
Plan the activity considering the downtime.
- After the database backup is completed, you must minimize the usage of Engineering Lifecycle Management applications until the upgrade process is complete. If you continue to use the
Engineering Lifecycle Management applications after the database backup, the data in the current and
backed up database does not match. In a rollback, you can restore the backed-up database only.
- You can define the custom upgrade groups for the Engineering Lifecycle Management applications rather than the default upgrade groups. For more information, see
Defining the custom upgrade groups for Engineering Lifecycle Management instance.
- Complete the following steps to verify the availability of the Engineering Lifecycle Management
version for the upgrade.
- Log in to the Red Hat OpenShift and connect to your project.
- Record the available Engineering Lifecycle Management
versions.
oc get elm <elm-instance-name> -o jsonpath='Installed ELM Version : {.spec.version} {"\n"}Available ELM Version : {.status.versions.available.versions} {"\n"}{.status.upgradeStatus.conditions[].message}' -n <namespace-name>
Replace
the placeholders for
elm-instance-name and
namespace-name. For
example
oc get elm example-elm -o jsonpath='Installed ELM Version : {.spec.version} {"\n"}Available ELM Versions : {.status.versions.available.versions} {"\n"}{.status.upgradeStatus.conditions[].message}' -n example
Procedure
- Log in to the Red Hat OpenShift and connect to your project.
- Patch the Engineering Lifecycle Management instance. Cluster administrator or user with the
necessary permissions needs to patch the Engineering Lifecycle Management instance version to the
available upgrade version.
- Get Engineering Lifecycle Management instance.
oc get elm -n <namespace-name>
Replace the
namespace-nameoc get elm -n example
- Upgrade Engineering Lifecycle Management
instance
oc patch elm <elm-instance-name> --patch '{"spec":{"version":"<available-elm-version>"}}' --type=merge -n <namespace-name>
Replace
the
elm-instance-name and
namespace-name. For
example
oc patch elm example-elm --patch '{"spec":{"version":"7.1.0_iFix003"}}' --type=merge -n example
The
Engineering Lifecycle Management operator starts the upgrade process. The following stages are
completed during the process.
- Upgrade validations
- Upgrade
- Engineering Lifecycle Management instance post upgrade
- Application Diagnostics
- Monitor the upgrade progress in the Upgrade Events table and
Application Events table. Once the Engineering Lifecycle Management upgrade
process completes, you can see the Completed status for all four stages in
the Upgrade Events table. If any error message appears, resolve the error by
following the troubleshooting information that is provided in Troubleshooting of upgrade errors
oc get elm <elm-instance-name> -o jsonpath='Application Events : {"\n\n"}{range .status.applicationsStatus.conditions[*]}Application - {.type}{"\t"}Status - {.status}{"\t"}Message - {.message}{"\n"}{end}{"\n\n"}Upgrade Events : {"\n\n"}{range .status.upgradeStatus.conditions[*]}Status - {.status}{"\t"}Message - {.message}{"\n"}{end}' -n <namespace>
Replace the elm-instance-name and namespace-name in the
following command. For example
oc get elm example-elm -o jsonpath='Application Events : {"\n\n"}{range .status.applicationsStatus.conditions[*]}Application - {.type}{"\t"}Status - {.status}{"\t"}Message - {.message}{"\n"}{end}{"\n\n"}Upgrade Events : {"\n\n"}{range .status.upgradeStatus.conditions[*]}Status - {.status}{"\t"}Message - {.message}{"\n"}{end}' -n example
- Verify that the Engineering Lifecycle Management instance after the upgrade process is
completed. On the successful upgrade, you see the latest installed Engineering Lifecycle Management
version.
oc get elm <elm-instance-name> -o jsonpath='{.status.upgradeStatus.conditions[].message}' -n <namespace-name>
Replace the elm-instance-name and namespace-name in the
following command. For example
oc get elm example-elm -o jsonpath='{.status.upgradeStatus.conditions[].message}' -n example
- Get the JTS URL and open in browser. The JAS login page opens
oc get elm <elm-instance-name> -o jsonpath='{.spec.hostName}/{.spec.applications.JTS.contextRoot}' -n <namespace-name>
Replace the elm-instance-name and namespace-name in the
following command. For example
oc get elm example-elm -o jsonpath='{.spec.hostName}/{.spec.applications.JTS.contextRoot}' -n example
Important: Use the login credentials that have administrative privileges in the
application.
- Click . On the Status Summary page, verify that the
Engineering Lifecycle Management version appears in the Build Information section.
In the left page, click Diagnostics. Ensure that no error is listed on the
page.