Описание различия сред
Среды платформы и жизненный цикл изменений
Команда работает с четырьмя средами. Страница описывает, для чего нужна каждая, чем они различаются и как изменение проходит путь от разработки до боевого использования.
Среды
| Среда | Назначение | Адрес |
|---|---|---|
| DEV | Самая актуальная версия кода: весь код с реализованными и залитыми фичами. Здесь проверяют новые возможности и отлаживают изменения на свежем коде. | assistant-dev.is74.ru |
| QA | Среда будущего релиза. Сюда выкатывают только то, что готовят к следующему выпуску: проверяют изменения и принимают релиз до выхода в прод. Может заметно отличаться от DEV — на ней только изменения из релизной ветки. | assistant-qa.is74.ru |
| TEST | Код совпадает с тем, что работает на PROD. После релиза остаётся на этой версии до следующего релизного цикла — чтобы проверять правки для прода на том же коде, что в бою. Подходит для регрессии «как на проде» без работы с боевыми структурами. Может заметно отличаться от QA и DEV. | assistant-test.is74.ru |
| PROD | Боевая среда. Два инстанса: внутренний ПАКЦ и Внешний ПАКЦ. |
assistant.is74.ru (внутренний); ai-assistant.is74.ru (внешний ПАКЦ⟩ |
Что важно помнить
- У каждой среды своя база данных: свои сценарии, инструменты, пользователи и права. Они независимы.
- Публикация или правка на одной среде не появляется на другой сама. Сценарии между средами можно переносить через экспорт/импорт.
- У DEV, TEST и QA общий audio socket, у PROD — свой. Поэтому тестовые звонки на DEV, QA и TEST идут через один шлюз и не затрагивают боевой audio socket PROD.
Релизный цикл
- Планирование. Заранее определяется список фич и фиксов, которые войдут в релиз.
- Сборка. По этому списку разработчик собирает релизную ветку и релизный тег. В тег попадают только согласованные изменения; всё остальное, что уже есть в DEV (master), в релиз не входит и остаётся только на DEV.
- QA. Разработчик выкатывает тег на QA, обеспечивает работоспособность сервисов, добавляет или собирает новые сервисы релиза. На QA действует только текущий тег — сторонние изменения без согласования не добавляются.
- Приёмка. После согласования релиза тег отправляется на TEST — выполняется повторная проверка.
- Согласованность. Все изменения в теге разработчик отправляет и на TEST, и на QA, чтобы они не расходились.
- Прод. Проверенный тег выкатывается на продовые инстансы (внутренний и Внешний ПАКЦ). QA освобождается и может принять следующий тег. Менять тег на TEST при этом запрещено.
- После релиза. TEST остаётся на версии прода до следующего релиза с QA.
Правки для прода после релиза
Изменения, которые понадобились уже после выхода релиза, проводятся и проверяются через TEST (без QA). Любые изменения — и в составе тега, и вне его — в любом случае сначала проходят через DEV.