Параметры релизов задаются для каждого проекта. Откройте Релизы, выберите Параметры релиза, и укажите проект. Здесь четыре экрана, и каждый из них отвечает на один вопрос.
- Среды
- Куда направляется релиз? Добавьте остановки и расставьте их в порядке.
- Правила утверждения
- Что должно быть выполнено заранее? Утверждения, роли, чек-лист и правила экстренных исправлений для каждого окружения.
- Конвейер деплоя
- Кто выполняет деплой и как 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 запускает рабочий процесс Actions в GitHub или CoRoid запускает конвейер GitLab CI/CD: этот параметр отображается, если репозиторий проекта находится у данного провайдера. Укажите ветку или тег, указывающий на коммит релиза, файл рабочего процесса для GitHub, а также точное название задания, отвечающего за деплой. CoRoid проверяет указанный реф перед запуском выполнения и проверяет наличие нужного задания перед подтверждением успешного завершения.
В разделе Отчеты о развертывании, создайте токен для отчётности по среде и сохраните его в виде секрета в вашем CI/CD. CoRoid отобразит токен один раз и сохранит лишь его хеш. Замена токена немедленно отключит старый вариант. На том же экране отображаются конечная точка, идентификатор проекта и ключ среды, необходимые для работы вашего конвейера, а также информация о поступлении отчётов. События развертывания и настройка CI Здесь приведены формат событий и примеры.
Версионирование
Какой номер версии присваивается данному релизу и как он определяется при сборке?
Выберите источник версии каждого релиза: CoRoid предложит следующую версию, CoRoid считает её из файла в репозитории или ваш конвейер сообщит о ней. Каждый релиз также получает возрастающий номер сборки. На экране перечислены значения, которые CoRoid передаёт в ваш конвейер; можно открыть страницу Новая работа, чтобы запросить добавление этих параметров в сборку, а также указать URL версии для каждой среды, чтобы CoRoid мог подтвердить, какая версия запущена в каждой из них. Указание версии в процессе сборки Здесь приведены подробные инструкции и рецепты для сборок веб-приложений, серверных решений, Docker, а также для платформ iOS и Android.
Перенос настроек между организациями
Экспорт и импорт настроек включают в себя среды, их порядок, параметры конвейера, правила версионирования, URL-адреса версий и опубликованные правила, включая правила для экстренных исправлений. Токены для генерации отчетов и номера сборок при экспорте не сохраняются. После импорта необходимо создать новые токены; для каждого проекта устанавливаются собственные номера сборок.