Skip to content

How to upgrade XPRESSO to v20.12

fdorani edited this page Dec 16, 2020 · 16 revisions

What's included in this upgrade

  • Upgrade MySQL version from 5.6 to 8.0
  • New upload service and result service which provide faster result uploading and viewing experience.
  • A bunch of new features, you can check "What's New in this Release" portion in documentation for details.

Steps to upgrade:

  1. Go to xpresso base directory and remember your DB password in env/database.env
  2. git pull
    • You may have local changes to the following files or more:
      • docker-compose.yml
      • env/database.env
      • initializers/settings.yml
      • ...
    • make sure to git stash or git checkout those files and apply your changes after git pull.
  3. After git pull, use the old DB password everywhere else
  4. Make sure xpresso_admin password is the same across all these files
    • env/databases.env
    • initializers/docker-entrypoint-initdb.d/1-user.sql
    • initializers/settings.yml
    • etc/mgmt_settings.py
  5. Run script to upgrade database and migrate data
./migrate202012.sh

Notes:

  • If you first install XPRESSO after December 2020, you don't need to run above steps.
  • If you installed XPRESSO before December 2020 and want to upgrade to see our new feature, please follow above steps.

Fallback steps:

  • If you encounter any issue during the upgrade, you can run ./fallback_to_5.6.sh in base folder to recover previous version.
  • After running the script, change the TAG to v20.6 in .env. i.e. TAG=v20.6 and run docker-compose up -d to bring up the containers.
  • The old XPRESSO should be up and running now, you can login to UI to check.
  • After successful restoration, if you want to try upgrade again, you can
    • run git stash in base directory to stash changes
    • rename mysql backup file mv dump_5.6.sql dump_5.6_old.sql
    • double check xpresso_admin password across all files
    • run steps to upgrade again
Clone this wiki locally