Параметры релизов задаются для каждого проекта. Откройте Релизы, выберите Параметры релиза, и укажите проект. Здесь четыре экрана, и каждый из них отвечает на один вопрос.
- Среды
- Куда направляется релиз? Добавьте остановки и расставьте их в порядке.
- Правила утверждения
- Что должно быть выполнено заранее? Утверждения, роли, чек-лист и правила экстренных исправлений для каждого окружения.
- Конвейер деплоя
- Кто выполняет деплой и как Coroid получает обратную связь? Ваш конвейер или Coroid инициируют процесс; токен отчётности позволяет CI/CD подтвердить результат.
- Управление версиями
- Какая это версия? Откуда берутся версии, что получает сборка, и где Coroid проверяет, что запущено в работе.
Изменять параметры релизов могут только Владельцы и Администраторы. Все остальные могут их только просматривать. Сначала подключите репозиторий, так как каждый релиз ссылается на определенный коммит в нем.
Среды
Куда направляется релиз и в каком порядке?
В каждом проекте сначала указывается среда Production. Чтобы добавить другие среды развертывания, например Staging или QA, воспользуйтесь Добавить среду. Присвойте каждой среде имя. Coroid предлагает ключ на основе этого имени, например staging. CI/CD использует этот ключ при формировании отчета о развертывании, поэтому сохраняйте его неизменным после того, как конвейеры начнут его применять.
Порядок задается с помощью Идет после. Если Staging идет без предшественника, а Production — после Staging, то путь развертывания будет следующим: Staging › Production. На странице релиза этот порядок отображается как траектория выпуска, а правила согласования могут требовать успешного прохождения предыдущей среды.
Правила согласования
Что должно быть выполнено перед развертыванием релиза в данной среде?
Выберите нужную среду в верхней части экрана. Правила задаются отдельно для каждой среды, поэтому для Staging они могут быть менее строгими, а для Production — более жесткими.
- Требуемое количество согласований: сколько разных людей должны дать свое одобрение. Значение ноль позволяет релизу развернуться сразу после прохождения проверок.
- Кто может согласовывать: роли в организации, которым разрешено давать согласие.
- Разделить инициатора и согласующих: человек, запустивший процесс развертывания, не может также его согласовывать, а тот, кто редактирует примечания к релизу, не может их одобрять.
- Успешное прохождение проверок качества: параметр всегда включен. График качества проекта с
release_validationтриггер запускается для точного коммита. Опубликуйте этот график в настройках качества проекта. - Сначала предыдущая среда: релиз должен уже быть развернут в среде, которая предшествует текущей.
- Согласованные примечания к релизу: текущие примечания требуют согласования, а любая последующая правка потребует нового согласования.
- Чек-лист: ручные шаги, которые пользователь подтверждает на странице релиза, например «Миграция базы данных проверена». Укажите, является ли пункт обязательным или необязательным. Обязательный пункт может допускать временное исключение. Владелец или Администратор указывает причину и срок действия исключения — до 24 часов; такое исключение применяется только к данному коммиту и среде.
- Правила экстренных исправлений: более гибкие правила для срочных исправлений: количество требуемых согласований и возможность применения правил предыдущей среды и согласования примечаний. Проверки качества и обязательные пункты чек-листа всегда сохраняются, а согласовывать экстренные исправления могут только Владельцы и Администраторы.
Выберите Опубликовать правила чтобы сохранить изменения. Публикация создает новую версию правил. Согласования, данные по старой версии, становятся недействительными, поэтому релиз, находящийся в процессе выполнения, запросит согласование заново. Среда без опубликованных правил не сможет пройти проверки, и об этом будет указано на экране.
Конвейер развертывания
Кто запускает процесс развертывания и как Coroid узнает о результатах?
Выберите нужную среду в верхней части экрана, затем укажите способ запуска развертываний:
- Мой конвейер запускается самостоятельно: сохраните существующий процесс. Coroid фиксирует развертывания, когда об этом сообщает ваш CI/CD, или когда Владелец или Администратор регистрирует внешнее развертывание на странице релиза.
- Coroid запускает рабочий процесс GitHub Actions или Coroid запускает конвейер GitLab CI/CD: этот вариант доступен, если репозиторий проекта находится на соответствующем провайдере. Укажите ветку или тег, ссылающийся на коммит релиза, файл рабочего процесса для GitHub и точное название задания, отвечающего за развертывание. Coroid проверяет указанную ссылку перед запуском процесса и проверяет названное задание перед признанием развертывания успешным.
В разделе Отчеты о развертыванииСоздайте токен для формирования отчетов для конкретной среды и сохраните его в виде секрета в вашем CI/CD. Coroid отображает этот токен один раз и сохраняет только его хеш. Замена токена приводит к немедленной блокировке старого токена. На том же экране указаны конечная точка, идентификатор проекта и ключ среды, необходимые для вашего конвейера, а также информация о поступлении отчетов. События развертывания и настройка CI Здесь приведены формат событий и примеры.
Версионирование
Какой номер версии присваивается данному релизу и как он определяется при сборке?
Выберите источник номера версии для каждого релиза: Coroid предлагает следующий доступный номер, Coroid считывает его из файла в репозитории, либо ваш конвейер передает его самостоятельно. Каждый релиз также получает уникальный возрастающий номер сборки. На экране отображаются значения, которые Coroid передает в ваш конвейер; можно открыть страницу Новая работа, чтобы запросить добавление этих параметров в процесс сборки, а также указать URL-адрес версии для каждой среды, чтобы Coroid мог подтвердить, какая версия запускается в каждой из них. Указание версии в процессе сборки Здесь приведены подробные инструкции и рецепты для сборок веб-приложений, серверных решений, Docker, а также для платформ iOS и Android.
Перенос настроек между организациями
Экспорт и импорт настроек включают в себя среды, их порядок, параметры конвейера, правила версионирования, URL-адреса версий и опубликованные правила, включая правила для экстренных исправлений. Токены для генерации отчетов и номера сборок при экспорте не сохраняются. После импорта необходимо создать новые токены; для каждого проекта устанавливаются собственные номера сборок.