Обновление DCC v2

Перед обновлением зафиксируйте версии DCC и Экстрактора, текущий тег образа, конфигурацию публикации и незавершённые задачи. Согласуйте остановку отправки новых команд и обмена.

  1. Создайте резервную копию PostgreSQL, Compose и закрытого файла настроек. Сохраните исходный FERNET_KEY: без него сохранённые секреты не расшифруются.

  2. Получите комплект целевого релиза, изучите изменения API и миграций. Не используйте плавающий тег вместо согласованного релиза.

  3. Установите новый GATEWAY_IMAGE и запустите docker compose --env-file .env up -d. Для локальной сборки используйте --build. Миграции выполняйте способом, предусмотренным вашей поставкой; при автоматическом режиме проверьте результат в логах gateway.

  4. Проверьте /ping, авторизацию JWT, возможности интеграции и существующий коннектор.

  5. Возобновите обмен тестовой базы, проверьте доставку команды, логи и конечный статус. После проверки возобновите рабочий обмен.

Смена JWT_SECRET_KEY делает ранее выданные токены недействительными: клиенты должны авторизоваться заново. Замена FERNET_KEY на работающей БД требует отдельной процедуры перешифрования.

Откат приложения после миграции может быть несовместим с новой схемой БД. План отката должен включать соответствующую резервную копию и конфигурацию. Старые команды с неопределённым результатом не создавайте заново с новыми ключами идемпотентности.