QMetry Online Upgrade Document for Linux

Steps to upgrade QMetry to latest version

Pre-requisites

Important Pre-requisites to check before upgrade to latest version.

  • Proceed with this upgrade ONLY IF your current QMetry version is on or above v8.6 and below v8.10.3. To check: Go to QMetry > About section.

  • Mysql version of QMetry Reports and QMetry Application should be 5.7.29.

  • Ensure internet connectivity is enabled on the server for this upgrade.

  • SSL configuration would need to be re-done as a new docker gets installed. You refer the article SSL Certificate Configuration for Tomcat in Docker for reference.

  • With this upgrade, QMetry application data such as attachments, license and log files will be moved outside of the docker container for ease of access and stored in the specified directory at the time of the upgrade. Please ensure there is sufficient space on this location before beginning the upgrade.

  • Make sure to have minimum free disk space available is more than the size of (attachments + import + export + logs) files. 

Special Notes

You need to update all the packages of host OS on which the docker container has been installed. After upgrading QMetry to v8.10.3 & above, it is recommended to perform the following steps to upgrade the packages on host OS.

1. Stop docker service. Command may be Linux OS dependent, but it can be like

  • service docker stop

or

  • systemctl stop docker

2. Update all the package of host OS. Command may be Linux OS dependent, but it can be like

  • sudo yum update -y

or

  • sudo apt-get update -y

3. Step-2 will upgrade version of docker to the latest available version.

4. Start docker service. Command may be Linux OS dependent, but it can be like

  • service docker start

or

  • systemctl start docker

Follow the steps mentioned below to upgrade your existing QMetry installation:

Step 1 : IMPORTANT : Backup your existing QMetry Database

Take the backup of your existing “qmetry” database. You can replace the username, password, location of the backup file (currently default /opt).

  • Syntax : docker exec qmetry_rds_1 sh -c 'exec mysqldump -uroot -p<password> --triggers --routines --hex-blob --single-transaction --lock-tables --no-create-db qmetry' > /opt/qmetry_backup_<date>.sql

  • For example: docker exec qmetry_rds_1 sh -c 'exec mysqldump -uroot -pqmetry --triggers --routines --hex-blob --single-transaction --lock-tables --no-create-db qmetry' > /opt/qmetry_backup_2021-01-01.sql

Verify that your database has been backed up properly and is available for later use in case of any emergency.

Step 2 : Download Required Files

  • You can generate a request on the QMetry Support Portal, to get the latest version of QMetry Upgrade Installer.

  • Download the QMetryApp.zip to your QMetry Application Server on host machine once you receive it.

Step 3 : Run the QMetry Upgrade

1. Check the running containers using the following command. The dockers must be running to ensure a successful upgrade.

  • docker ps

  • If the dockers are not running, start them using the below commands (replace container names according to the application container name seen in the command above)

    • docker start qmetry_rds_1

    • docker start qmetry_app_1

2. Go to the directory where the QMetryApp.zip file is downloaded.

3. Unzip the file QMetryApp.zip on the host machine. 

  • unzip QMetryApp.zip

4. Go to QMetry directory:

  • cd QMetryApp

5. Give permission to qmetry.sh and upgrade_qmetry_containers.sh file through the following commands.

  • chmod +x upgrade_qmetry_containers.sh

  • chmod +x qmetry.sh

6. Execute the commands as per existing QMetry version.


Note: If the existing QMetry version is below 8.9.0.3, then make sure to validate name of an existing container and attachment volume in upgrade_qmetry_containers.sh file before running it.

Steps to validate name of an existing container and attachment volume:

  • Check docker volumes name using the below command.

    • docker volume ls

  • Docker volume name should be qmetryapp_attachment.

  • Check docker container name using the below command.

    • docker ps

  • Docker container name should be qmetry_app_1. 

  • If any of this name is not same as above, then update upgrade_qmetry_containers.sh file for changed value with the respective names using following steps.

    Open the file – upgrade_qmetry_containers.sh in edit mode.

    • vi upgrade_qmetry_containers.sh

      Update the file for changed value with the respective names of volume and container.

      • Press i to change the file mode to insert.

      • Update the variable value according to the existing docker volume and docker container name.

        • exist_attachment_volume → Value from docker volume ls for attachment 

        • exist_qmetry_container → Value from docker ps for qmetry

      • Press Esc, and then type :wq to save the changes.

 

7. If existing QMetry version is below 8.9.0.3, then execute this command. Else, skip it.

  • sh upgrade_qmetry_containers.sh 

8. Then execute the following command irrespective of QMetry version.

  • sh qmetry.sh

9. Utility will confirm if you want to upgrade.

Options

Allowed Values

Default Value

Description

Options

Allowed Values

Default Value

Description

Do you want to make an online installation (Y/N)?

Y,y,N,n

Y

To begin the online upgrade, enter "Y", else "N".

Please enter QMetry application directory

-

-

This question will be asked only if the existing QMetry version is below 8.9.0.3.    e.g., /opt/qmetryapp     

Mention the directory path on the host machine to store QMetry application’s file related data like attachments, license, import, export files etc. You can enter any path of the host machine to store QMetry application’s file related data.

Before moving to the next step, make sure that the data has been copied successfully to sub-directories of the path given on the host machine.

Note: It is highly recommended to take periodic backup of the directory which is specified as a location to store QMetry application’s file related data to prevent any data loss in case of any disaster.

Do you want to continue with upgrade process (Y/N)?

Y,y,N,n

-

This question will be asked only if the existing QMetry version is below 8.9.0.3.   

The recommended value is "Y".

Wait for the process to complete.

Step 4 : Restart QMetry and MySQL Docker Container

  • Check the running containers using the following command:

    • docker ps

  • Restart both docker containers using the below commands: 

    • docker stop qmetry_app_1 qmetry_rds_1

    • docker start qmetry_rds_1

    • docker start qmetry_app_1

Step 5 : Installing / Upgrading Jira add-on for the Integration of QMetry and Jira.

Note: It is important to have the correct version of the Jira add-on installed in Jira based on your upgraded and current QMetry version. Refer to the below table for the right version of  "QMetry Jira Integration".

QMetry Version

Jira-addon version required

QMetry Version

Jira-addon version required

8.13.0 & above

2.2.4

8.12.3.1

2.2.3

8.11.0

2.2.1

Upgrade your Jira add-on as per the above compatibility matrix. In case you have not installed the QMetry Jira Integration app for integration, follow the Steps to Install and Configure the QMetry Jira Integration app, if it is not installed.

Important Note

  • If you are upgrading from QMetry version 8.8.0 or lower, then Jira force sync is required. Follow the Jira Force Sync document.

Changes Regarding SSL (https)

In a case, you have configured SSL (https) in tomcat within the container then you need to setup SSL (https) again in new docker container after upgradation to the latest QMetry version. Refer to the article SSL Certificate Configuration for Tomcat in Docker.

 

If you are facing any issues during the upgrade process, kindly generate a support ticket on Support Portal for assistance.