Upgrade

Overview

The following components will be upgraded :

  • Docker images
  • xivocc-installer package

Warning

This upgrade procedure applies only to XiVO CC installed via the xivocc-installer package.

Before upgrading you have to check or change your sources list. It should be located in the file /etc/apt/sources.list.d/xivo-dist.list.

There are three cases:

  1. Upgrade to an LTS XiVO CC version,
  2. Upgrade to an Intermediate version,
  3. Upgrade to the latest subversion of your current installed version.

Warning

Note that it is not possible to downgrade to any version.

Upgrade to an LTS version

Currently XiVO CC latest LTS version is Polaris and is the numeric release 2017.11. To upgrade to the latest version the sources list must point towards debian URI and xivo-polaris suite:

deb http://mirror.xivo.solutions/debian/ xivo-polaris main

or point towards archive URI and xivo-2017.11-latest suite:

deb http://mirror.xivo.solutions/archive/ xivo-2017.11-latest main

Upgrade to an Intermediate version

Note

Intermediate versions have a limited support. You should install LTS version only.

Between two LTS versions we release Intermediate versions (to which is given a limited support). To upgrade to a specific Intermediate version the sources list must point towards archive URI and xivo-VERSION-latest suite.

For example if you want to upgrade to 2017.06 version you should have:

deb http://mirror.xivo.solutions/archive/ xivo-2017.06-latest main

Note the /archive/ and -2017.06-latest above.

Upgrade to latest subversion

Important

For version older than Five (2017.03), see XiVO Five documentation

After the release of a version (e.g. 2017.11) we may backport some bugfixes in this version. We will then create a subversion (e.g. 2017.11 .01) shipping these bugfixes. To upgrade to the latest subversion of your current installed version you need to:

  1. Verify that the /etc/docker/compose/factory.env file has
    1. XIVOCC_TAG=VERSION (where VERSION is your current installed version - e.g. 2017.11)
    2. and XIVOCC_DIST=latest
  2. Then update the images with xivocc-dcomp pull command,
  3. And upgrade the containers with xivocc-dcomp up -d command.

Preparing the upgrade

To prepare the upgrade you should:

  1. Read Release Notes starting from your version to the version you target.

Upgrade

When you have checked the sources.list you can upgrade with the following commands:

apt-get update
apt-get install xivocc-installer

The current docker-compose.yml file will be renamed to docker-compose.yml.dpkg-old and new template downloaded. A new docker-compose.yml file will be rendered from the template using the current xivocc version.

Then you have to:

  1. Download the new images:

    xivocc-dcomp pull
    
  2. And run the new container (All XiVO CC services will be restarted):

    xivocc-dcomp up -d
    

Note

Please, ensure your server date is correct before starting. If system date differs too much from correct date, you may get an authentication error preventing download of the docker images.

Post Upgrade

Check your upgrade through Post Installation Check List.

Upgrade notes

See Release Notes for version specific informations.

Reporting Upgrade notes

These notes include upgrade procedures for old versions of the Pack reporting, before XivoCC starts and before it was packaged with Docker. In those cases, run the following command to find the installed version of the pack reporting:

dpkg -l|grep pack-reporting

From version < 1.6

  • data retention time will be lost during upgrade : save it and write it back in /etc/xivo-reporting-db.conf
  • the upgrade is likely to be long if there is a lot of data in queue_log. Purge old data out of this table if possible in order to accelerate the upgrade
  • at the end of the upgrade, run apt-get autoremove (deletion of xivo-stat, xivo-libdao and xivo-lib-python)

From version < 1.8

  • XiVO in version < 14.08 is not supported anymore
  • if it is required, the upgrade of the XiVO must be done before the upgrade of the pack reporting, and no call must be performed between the two upgrades

From a version using Debian packaging to a version using Docker

  • Beware: this will require a migration of the original PostgreSQL database to the Dockerised one. For this you need to have free disk space : the amount of free disk space must equal the size of /var/lib/postgresql. This check must be performed after docker images have been pulled.
  • Run the following commands:
apt-get update
service xivo-db-replication stop
service xivo-full-stats stopsource/releasenotes/index.rst
apt-get install pack-reporting xivo-full-stats xivo-reporting-db xivo-db-replication db-utils
service xivo-db-replication stop
service xivo-full-stats stop
  • Install docker, docker-compose and xivocc-installer
  • Open docker-xivocc.yml and remove sections recording_rsync, config_mgt, recording_server, xuc, xucmgt
  • Run xivocc-dcomp pull
  • CHECK THE FREE DISK SPACE. The next command will migrate the database. This may take several hours.
sudo -u postgres pg_dump --format c xivo_stats | docker exec -i xivocc_pgxivocc_1 pg_restore -U postgres -d xivo_stats
  • Start by xivocc-dcomp up -d

From a dockerized version before callbacks

  • Run the following commands:
docker exec -ti compose_pgxivocc_1 psql -U postgres -c 'CREATE EXTENSION IF NOT EXISTS "uuid-ossp"' xivo_stats
docker exec -ti compose_pgxivocc_1 psql -U postgres -c 'CREATE EXTENSION IF NOT EXISTS "uuid-ossp"' xuc_rights