Обновление приложения в Linux

Перед началом процесса обновления необходимо зделать резевную копию.

Останавливаем процесс nginx и severcart

service nginx stop
supervisorctl stop severcart

Переименовываем каталог на временный

mv /var/venv/severcart/ /var/venv/severcart_bak/

Скачиваем и распаковываем новую версию. Ссылку на закачку актуальной версии копируем с официального сайта продукта https://www.severcart.ru/downloads/. Файл архива имеет расширение *.zip.

cd /tmp

wget -O 1_X_X.zip https://www.severcart.ru/redirect_un/?pk=12

Ссылку на файл меняем на свою.

Производим распаковку скачанного архива в прежний каталог

unzip sc_X_X.zip -d /var/venv/severcart/

Производим активацию виртуального окружения:

source /var/venv/bin/activate

Возвращаем обратно файл secrets.json и файл с реквизитами доступа к БД

cp /var/venv/severcart_bak/conf/secrets.json /var/venv/severcart/conf/
cp -f /var/venv/severcart_bak/conf/settings_prod.py /var/venv/severcart/conf/

rsync -av /var/venv/severcart_bak/media/ /var/venv/severcart/media/

Производим миграцию схемы

python3 /var/venv/severcart/tkinstaller/update.py

Возвращаем права доступа к статическим файлам

chown -R nobody:nogroup /var/venv/severcart/

Очищаем просроченный кэш приложения

rm /var/venv/severcart/cache/*

Запускаем процессы

supervisorctl start severcart
service nginx start

На этом обновление программы завершено.