Перейти к содержанию

Обновление AppSec.Code с 25.4.2 до 26.1.1

Настоящая инструкция описывает запуск артефакта миграции для пути обновления 25.4.2 → 26.1.1. Она включает поэтапную смену образов ядра AppSec.Code без отдельного вызова сценария обновления PostgreSQL из основного скрипта (для этого пути экземпляр Системы уже на совместимой версии БД).

Перед началом выполните полное резервное копирование (данные AppSec.Code, база данных, конфигурация и секреты). На время работы скрипта экземпляр будет недоступен.

Стадия 0. Состав артефакта и назначение скриптов

В архиве поставляется основной скрипт для развёртывания AppSec.Code с помощью Docker Compose.

Скрипт Назначение
upgrade_migrate_25_4_2_to_26_1_1.sh Последовательно подставляет в docker-compose.yml образы из утверждённой цепочки версий (от исходного релиза до 26.1.1). На каждом шаге: остановка стека, смена тега образа сервиса AppSec.Code (строка image: не относящаяся к PostgreSQL), запуск контейнеров, ожидание готовности AppSec.Code, завершения batched background migrations, проверка gitlab:check и gitlab-ctl reconfigure.

Скрипт ожидает файл docker-compose.yml в текущей рабочей директории при запуске. При отсутствии файла скрипт завершится с ошибкой до начала обновления.

Стадия 1. Скачивание архива из артифкатория

Подставьте учётные данные пользователя, имеющего право на чтение репозитория code-raw-release.

cd /путь_к_каталогу_с_docker-compose.yml

curl -fL --user 'ВАШ_ЛОГИН:ВАШ_ПАРОЛЬ' -O \
  'https://registry.appsec.global/repository/code-raw-release/migrations/migrations_upgrade_25.4.2-26.1.1.zip'

Рекомендуется не сохранять пароль в истории shell: используйте переменные окружения или интерактивный ввод, если это допустимо в вашей среде.

Стадия 2. Распаковка архива

Распакуйте содержимое в тот же каталог, где находится docker-compose.yml:

unzip -o migrations_upgrade_25.4.2-26.1.1.zip -d .

Стадия 3. Права на исполнение

Установите необходимые права на исполнение:

chmod +x upgrade_migrate_25_4_2_to_26_1_1.sh

Стадия 4. Запуск в tmux и планирование окна обслуживания

Полный цикл может занять от четырёх часов и дольше из-за фоновых миграций базы и проверок на каждом промежуточном образе. Запланируйте окно обслуживания!

tmux new -s appseccode-upgrade-25
# внутри сессии:
cd /путь_к_каталогу_с_docker-compose.yml
./upgrade_migrate_25_4_2_to_26_1_1.sh

Полезные команды:

  • Отключиться от tmux без остановки сценария: Ctrl+b, затем d.
  • Подключиться снова: tmux attach -t appseccode-upgrade-25.

Стадия 5. Ожидание успешного завершения

Дождитесь завершения скрипта с кодом 0 и отсутствия сообщений ERROR в выводе. Выполните приёмочные проверки (веб-интерфейс, аутентификация, репозитории, пайплайны) по регламенту вашей организации.

При сбое сохраните логи tmux и вывод docker compose / docker logs для разбора; подробности по шагам цепочки см. в README внутри архива миграций.

Дополнительно общие сведения об обновлении можно посмотреть в разделе Обновление.