Linux Update Manager 7.7.3 to 8.1 and Sessions 2.2.7 to 3.0


  • This is the instruction to upgrade qTest v7.7.3 to v8.1 and qTest Sessions v.2.2.7 to v.3.0.1
  • If you are using older versions, you will need to upgrade to qTest v.7.7.3 and qTest Sessions v2.2.7 first before proceeding to our latest versions
  • From qTest version 8.1, we will be using PostgreSQL instead of MySQL for qTest database. Please migrate your qTest database using this instruction

Post Upgrade

  • Important! Please make sure you have a JIRA administrator upgrade the qTest plugin for JIRA(the previous version is deprecated).

Before you begin

  • Please thoroughly review the instructions below to upgrade qTest to the latest version, before starting the upgrade process. We recommended to use copy & paste for the code scripts
  • For qTest Premium and Elite editions, you will need to upgrade qTest and then qTest Sessions
  • For qTest Pro and Pro + eXplorer editions, you will only need to upgrade qTest
  • Please check qTest's recommended hardware requirements
  • Prerequisite packages must be running prior to upgrading qTest and qTest Sessions
    • PostgreSQL v9.4
    • RabbitMQ v3.5+ (only if using a load balancer)
    • Redis v2.8+
    • Elasticsearch v1.7 - v2.4.0
  • Please follow these instructions back up your data prior to the upgrade process
  • Download qTest upgrade package and qTest Sessions upgrade package
  • $ wget
    $ wget

»Upgrade qTest on Linux

»Upgrade qTest Sessions on Linux

Upgrade qTest on Linux


  • The instructions below use the scenario of upgrading qTest from v7.7.3 to v8.1 and the base installation is directory /usr/local. As you copy & paste the scripts provided, please make sure to adjust the file names and directory according to your current qTest version and install directory
  • If qTest has been deployed with load balancing, you will need to upgrade the notification server first, and then upgrade all application servers
  1. Login as root user on command shell of your Linux server
    $ sudo su
    # cd /usr/local
  2. Access the installation directory of your current qTest. In this example,
    # cd /usr/local/qtest-linux-7.7.3
  3. Shut down qTest v7.7.3
    # ./
  4. Once qTest upgrade packe has been downloaded, extract the download package and access to the extracted folder
    # tar -zxf qtest-linux-upgrade-8.1.5.tar.gz
    # cd qtest-linux-upgrade-8.1.5
  5. View and modify
    # vim
  6. Enter the information to connect to your PostgreSQL server which qTest database has been migrated to
    DB_HOST=[IP of PostgreSQL server]
    DB_PORT=[Port number of PostgreSQL server]
    DB_USER=[username of PostgreSQL server]
    DB_PASSWD=[password to log in to PostgreSQL server]
    DB_NAME=[schema name of qTest database]
  7. Ensure that value of the following keys in is upgrade, or you will lose your qTest data
  8. Enter the information to connect to your PostgreSQL server to create new Poseidon database
    POSEIDON_DB_HOST=[IP of PostgreSQL server]
    POSEIDON_DB_PORT=[Port number of PostgreSQL server]
    POSEIDON_DB_USER=[username of PostgreSQL server]
    POSEIDON_DB_PASSWD=[password to log in to PostgreSQL server]
    POSEIDON_DB_NAME=[schema name of new Poseidon database] //The schema does not need to be created beforehand
  9. For the other keys in, please keep them the same as in file /usr/local/qtest-linux-7.7.3/
  10. Save the file after you have done modifying it
  11. Execute this command to upgrade qTest
  12. After the command is executed successfully, copy data from qTest v7.7.3 to v8.1.5
    # cp -r /usr/local/qtest-linux-7.7.3/.tc/ .
  13. Start qTest
    # ./

Upgrade qTest Sessions on Linux

  NOTE: These instructions provide scripts using the example where the base install directory is /usr/local and you are upgrading qTest Sessions v2.2.7 to 3.0.1

  1. Download qTest Sessions' upgrade package
  2. Login as root on a command shell in your Linux server
    $ sudo su
  3. Stop qTest Sessions
    # service explorerd stop
  4. Once qTest Sessions upgrade package has been downloaded, extract it and access the the extracted folder
    # tar -zxf sessions-linux-3.0.1.tar.gz
    # cd sessions-linux-3.0.1
  5. Run the upgrade command, specify the directory in which the old version of qTest Sessions was installed. The current conf/ file will be renamed to A new conf/ file will be created under that directory
    # ./installer -t upgrade -d /usr/local/sessions-linux-2.2.7
  6. Open file conf/
    # cd /usr/local/sessions-linux-2.2.7 
    # vim conf/
  7. Review the file content and edit the following information (you can refer to the configuration of qTest Sessions v2.2.7 in
    # Configuration Description
    1 Database configuration

    Specify information to connect to your PostgreSQL server; including host, port number, credentials and the schema name.

      IMPORTANT: Please make sure to set db.action=1

    # database configuration[PostgreSQL_IP_Address] //eg:
    db.port=[PostgreSQL_Port] //it is 5432 by default
    db.schema=[database_schema] //make sure that the schema is created 
    //before the installation. Refer to the instructions for CentOS or Ubuntu.
    db.action=1 //Please set this property to 1
    2 Redis configuration Specify information to connect to Redis server; including host and port number
    # redis configuration[Redis_IP_Address] //eg:
    redis.port=[Redis_Port] //it is 6379 by default
    3 qTest configuration

    Specify the URL and the Master Token to connect to your qTest instance.

      NOTE: Access to Resources page in your qTest application to get the Master Token. Click here for instructions.

    # qtest configuration
    4 ElasticSearch configuration

    Specify the information of your Elasticsearch server. qTest support one cluster and multiple nodes.

    If you have more than one nodes, assign an ordinal to each node using property es.nodes.

      NOTE: Click here for instructions to get your ElasticSearch's cluster name.

    # elastic search configuration[ElasticSearch_IP_Address] //eg:
    es.http.port=[ElasticSearch_HTTP_Port] // it is 9200 by default[Cluster_Name]
    es.nodes=1[Node1_IP_Address] //eg:
    es.tcp.1.port=[Node1_Port] //it is 9300 by default
    es.nodes=2[Node2_IP_Address] //eg:
    es.tcp.2.port=[Node2_Port] //it is 9300 by default
    5 Application configuration

    Specify which ports qTest Sessions will use. Set web.ssl.required=true if it will be using SSL connections (HTTPS).

    # application information.
    web.ssl.required=false //put "true" if you want to enable SSL connection


    • Please make sure the ports you have specified above are not blocked by your firewsall
    • Please make sure the selected ports are all available. Click here for instructions to check which ports are in use
    6 URLs

    Declare qTest Sessions's URL

    If it is left blank, the installer will use the default http://[IP]:[port]/, in which IP is the host where qTest Sessions is installed, and port is the HTTP port number.

    # declare eXplorer API url to use.
    7 Storage configuration

    Specify where session data will be stored in:

    # storage configuration
    # storage.type suitable value (disk | s3 | riakcs)

    If disk is chosen, specify the storage path:

    # disk storage configuration
    storage.rootPath=[Storage_Path_On_Local_Machine] //make sure that the directory is created before the installation

    Otherwise, specify the following information:

    # s3 | riak storage configuration
    8 Do not modify Please do not modify the following section:
    # account configuration.
  8. Save the above file after you have done modifying
  9. Execute to start the upgrade process. The progress is logged in explorer-installer-cli.log
    # ./
  10. You will see the installation process on your console. If you have enabled SSL connections (HTTPS), you would be prompted to provide your certificates
    [ * ] Generate installation tasks. [ PASSED ]
    Private key path: //path to your key file (eg: /usr/local/cert/server.key)
    Private key password:
    Certificate path: //path to your certificate file (eg: /usr/local/cert/server.crt)
    Chain certificate path (optional):
    Generates SSL keystore successfully!
    [ * ] Public session URL to qTest ... [ PASSED ]
    /usr/local/build-release-15-1/sessions-linux-1.0.0/explorer-api/webapps/ROOT/WEB-INF/db /usr/local/build-release-15-1/sessions-linux-1.0.0
    Unable to locate tools.jar. Expected to find it in /usr/local/build-release-15-1/sessions-linux-1.0.0/tools/java/lib/tools.jar
    Buildfile: /usr/local/build-release-15-1/sessions-linux-1.0.0/explorer-api/webapps/ROOT/WEB-INF/db/liquibase.xml
    [lb:updateDatabase] Starting Liquibase.
    [lb:updateDatabase] Successfully acquired change log lock
    [lb:updateDatabase] Dropping Database Objects in schema: explorer-api-67.public
    [lb:updateDatabase] Creating database history table with name: public.databasechangelog
    [lb:updateDatabase] Successfully released change log lock
    [lb:updateDatabase] Successfully acquired change log lock
    [lb:updateDatabase] Creating database history table with name: public.databasechangelog
    [lb:updateDatabase] Reading from public.databasechangelog
    [lb:updateDatabase] /usr/local/build-release-15-1/sessions-linux-1.0.0/explorer-api/webapps/ROOT/WEB-INF/db/changelog-master.xml: changelogs/changelog-init-db.xml::release-0.9.0::trongle: SQL in file sql/init-schemas.sql executed
    [lb:updateDatabase] /usr/local/build-release-15-1/sessions-linux-1.0.0/explorer-api/webapps/ROOT/WEB-INF/db/changelog-master.xml: changelogs/changelog-init-db.xml::release-0.9.0::trongle: SQL in file sql/init-data.sql executed
    [lb:updateDatabase] /usr/local/build-release-15-1/sessions-linux-1.0.0/explorer-api/webapps/ROOT/WEB-INF/db/changelog-master.xml: changelogs/changelog-init-db.xml::release-0.9.0::trongle: ChangeSet changelogs/changelog-init-db.xml::release-0.9.0::trongle ran successfully in 1005ms
    [lb:updateDatabase] Successfully released change log lock
    Total time: 6 seconds
    [ * ] Server host:
    [ * ] Server port: 6379
    [ * ] Redis health check ... [ PASSED ]
    [ * ] Redis read-write check ... [ PASSED ]
    [ * ] Configure DB cluster ... [ PASSED ]
    [ * ] Configure ES cluster ... [ PASSED ]
    [ * ] Configure redis cluster ... [ PASSED ]
    [ * ] Configure file storage ... [ PASSED ]
    [ * ] Configure qTest account ... [ PASSED ]
    [ * ] Configure admin account ... [ PASSED ]
    [ * ] Server host:
    [ * ] Server port: 9200
    [ * ] Server protocol: HTTP
    [ * ] ElasticServer heath check ... [ PASSED ]
    [ * ] Create ElasticSearch Index ... [ PASSED ]
    [ * ] Create session mapping ... [ PASSED ]
    [ * ] Create application info mapping ... [ PASSED ]
    [ * ] Create system info mapping ... [ PASSED ]
    [ * ] Create coverages mapping ... [ PASSED ]
    [ * ] Create time line mapping ... [ PASSED ]
    [ * ] Create screen mapping ... [ PASSED ]
    [ * ] Create note mapping ... [ PASSED ]
    Configures eXplorer API successfully.
  11. When the upgrade process is complete, you can start qTest Sessions service
    # service explorerd start
Powered by Zendesk