Migration routine¶
Surroundings¶
If you use Luna Platform Docker deployment, skip this step (all the required dependencies are already installed in the Backport 3 service image). Otherwise you need to:
replace all the Backport 3 project files with the files of the current version
install python dependencies:
Warning
It is strongly recommended to create virtual surroundings for python dependencies installation.
pip install -r requirements.txt
Service settings migration¶
If you don’t use Configurator service, all you need is to set up your Backport 3 configuration file luna_backport3/configs/config.conf. Otherwise, you need to execute settings migration.
If your previous Luna Platform version was used with non-default service settings, backup the service settings dump-file. To create a dump-file, use the following options (may be executed from anywhere on your server):
wget -O settings_dump_backup.json 127.0.0.1:5070/1/dump
To perform the migration, set up your migration configuration file in the following format:
[LUNA_CONFIGURATOR_DB]
#: [string] database type - "postgres" or "oracle"
DB_TYPE = postgres
#: [string] database host
DB_HOST = 127.0.0.1
#: [integer] database port; 5432 - default for "postgres" type, 1521 - default for "oracle" type
DB_PORT = 5432
#: [string] database username
DB_USER = luna
#: [string] database password
DB_PASSWORD = luna
#: [string] [string] database name for "postgres" type, SID name for "oracle" type
DB_NAME = luna_configurator
and execute the command:
(cd luna_backport3/configs/configs && python -m configs.migrate head --config=<YOUR_CONFIG_PATH>)
If you use Luna Platform Docker deployment, use the following options:
docker run \
-v /etc/localtime:/etc/localtime:ro \
-v <YOUR_CONFIG_PATH>:/srv/luna_backport3/configs/configs/migration/config.conf \
--rm \
--network=host \
--entrypoint=/bin/bash \
dockerhub.visionlabs.ru/luna/luna-backport3:<Backport 3_tag> \
-c "cd /srv/luna_backport3/configs/configs; python -m configs.migrate head;"
Make sure your non-default service settings are up-to-date with your backup settings dump-file.
Database migration¶
You need to execute migration scripts to update your Backport 3 database structure.
Warning
It is highly recommended to create a backup of your database before applying any changes.
If you don’t use the Configurator service, you need to set up your Backport 3 configuration file and run migration with the following options:
alembic -x config=luna_backport3/configs/config.conf upgrade head
If you use the Configurator service, use the luna-config option with Configurator service origin:
alembic -x luna-config=http://127.0.0.1:5070/1 upgrade head
If you use Luna Platform Docker deployment, use the following options:
docker run \
-v /etc/localtime:/etc/localtime:ro \
--rm \
--network=host \
--entrypoint=/bin/bash \
dockerhub.visionlabs.ru/luna/luna-backport3:<Backport 3_tag> \
-c "alembic -x luna-config=http://127.0.0.1:5070/1 upgrade head"
Compatibility¶
Before starting the Backport 3 service, make sure other services are migrated to compatible versions (i.e. belong to the current release).