This documentation supports the 19.02 version of BMC Helix Platform. 
To view an earlier version, select 18.11 from the Product version menu.

Upgrading to a new version of an application with zero downtime

The goal of this use case is to ensure that an application is upgraded to a new version with no impact on the production environment. 

Scenario

Consider a scenario, wherein a customer uses a lunch scheduler application to approve and schedule lunch with clients. The current version of the application provides only approvals for scheduling lunch. 

A developer enhances the application to include the following improvements:

  • Option for employees to submit lunch expenses.
  • Ability to Increase the requestor's lunch cost limit. 

The developer releases a new version of the application, which the SaaS administrator deploys and activates on the tenant's production environment. Upgrading to the new version may cause a downtime in the tenant's production environment, which affects the work while the upgrade continues.  

To overcome the challenges posed by the application upgrade, BMC Helix Platform provides zero downtime support while upgrading to a new version of an application in the production environment. To test the new version, administrators can opt in for the new version in their test environment.

By default, only two versions of an application can be deployed on a system. If two versions already exist, the SaaS administrator undeploys the oldest version (that is not used by any tenants). 

The upgrade process

The following video (2:15) gives an overview of the process of upgrading to a new version of an application with zero downtime.

The video shows an older version of BMC Helix Platform. The previous product name was BMC Helix Innovation Suite. Although there might be minor changes in the UI, the overall functionality remains the same.

 https://youtu.be/d-Ae2JkKIUE


 The following table describes the actions performed by administrators for upgrading to a new version of an application:

Upgrade SaaS Administrator actions Administrator actions Application business analyst action

Test environment

  • (Optional) If two versions of an application are deployed, undeploys the version that is not used by any tenants.
  • Deploys and activates the new version of an application.
  • Opts in for the new version.
  • Creates an export package of the validated version to copy the changes made during tailoring to the production environment. 
  • Tests and validates the updates in the new version.

Production environment

  • (Optional) If two versions of an application are deployed, undeploys the version that is not used by any tenants.
  • Deploys the new version and informs the tenant administrator to export all the tailoring changes by creating an export package.
  • Activates the new version of the application after allowing sufficient time for the administrators to create an update package.
  • Creates an update package of all the existing tailoring changes.
  • Deploys the update package to copy the tailoring changes to the new version before the new version is activated.
  • None

Roles involved in this use case

The following roles are involved in this use case:

  • SaaS administrator
  • Administrator
  • Application business analyst

Benefits

The zero downtime upgrade of an application version ensures that there is a minimal disruption to the production environment. The tasks in the production environment can continue while upgrade continues in the background. 

Where to go from here

Task Action Reference
1

As a developer, create and release a new version for a code-based application.

Or

As a developer, create and release a new version for a codeless application.

Releasing a new version


Creating install packages to deploy entire applications

2

The SaaS administrator performs the following tasks:

  • If two versions of an application are deployed on the system, undeploys the oldest version.
  • Activates the new version of an application to make it available for all the tenants.
4 As an administrator, consume the new version of an application. Consuming a new version of an application
5 As an administrator, copy the tailoring changes created on the existing version of the application by creating an update package.  Creating export packages to deploy tailoring changes of applications

Related topic

Guidelines for versioning and undeploying an application

Was this page helpful? Yes No Submitting... Thank you

Comments