Upgrading a non-clustered environment

3 minute read

This section describes how to upgrade the software to 9.x. The procedure is the same as when you upgrade to 9.x and upgrade cluster configurations at the same time, except that you do not need to perform additional tasks to upgrade the cluster.

To upgrade to 9.x, use the CloudBeesFlow-<version> installer, which performs the following:

  • Collects the CloudBees Flow service account credentials

  • Uninstalls the current release

  • Installs the latest CloudBees Flow release

  • Configures the system with all property values mined

  • Restores custom files and data

After preparing for the upgrade, make sure to shut down the CloudBees Flow server service before installing CloudBees Flow 9.x.

These instructions presume upgrading from CloudBees Flow v5.x or newer. If you are looking to upgrade from v4.2.x or older, please contact CloudBees Support directly for extra instructions.

Upgrade testing

In most implementations, CloudBees Flow is being used in an environment that affects many users. We recommend that you test your upgrade on a separate test server to understand all aspects of the upgrade process. This minimizes the potential impacts to downstream users.

Backing up your existing CloudBees Flow data

If you are upgrading a CloudBees Flow server, it is extremely important that you back up your existing CloudBees Flow data before upgrading. See CloudBees flow server backups for more information about backups.

  • Always back up any other files where you have created custom configurations, specified other custom information, or created any type of modification.

The CloudBees Flow files you might have modified are too numerous to list, so you should back up the entire data directory and other miscellaneous files that might have changed.
  • If you use an artifact repository, back up your CloudBees Flow repository configuration files in the conf/repository subdirectory.

  • Determine if any changes were made to the custom editor or preflight driver script properties (installed by default). Back up those files if changes were made.

These properties are stored in the server-level property sheet, which can be viewed in the web UI by accessing the Administration tab/ Server subtab.

Custom editors are stored in the nested sheet named ec_customEditors. Preflight driver scripts are stored in the nested sheet named ec_preflight. The upgrade process overwrites default custom editor and preflight driver scripts with current versions. We recommend backing up any custom properties you created by renaming the property. For example, change ec_preflight/clientDrivers/perforce to ec_preflight/clientDrivers/perforce_modified.

Saving the upgrade installer

After you back up your CloudBees Flow server, create a folder where you can download the CloudBeesFlow-<version> installation file.

Starting the installation process

Install the upgrade by choosing the correct upgrade method for your environment.

Copying repository contents

After you have updated CloudBees Flow, perform the following steps to copy the contents of an existing repository server into a newly installed repository server:

  1. Install the new repository server software.

  2. Stop the existing and new repository servers.

  3. Copy the entire contents of the repository backingstore directory from the existing repository server to the corresponding location on the newly installed repository server.

    The default location for the backingstore directory (<datadir>/repository-data) is:

    • UNIX: /opt/electriccloud/electriccommander/repository-data

    • Windows: C:\ProgramData\Electric Cloud\ElectricCommander\repository-data

MySQL upgrades

CloudBees Flow upgrades involving a MySQL database can take several hours to complete if you have a significant data set. Do not interrupt the upgrade process. You can corrupt your database if the upgrade process is interrupted. A restore from a previous database backup will be required.

Use the ectool to view the upgrade progress. On a command line, enter:

ectool getServerStatus

An install/upgrade log file named installer.log is created in the logs subdirectory in the data directory.