Шаг принятия пользователем Jenkins в процессе разработки
У меня есть проект и конвейер в моем экземпляре jenkins, который выглядит следующим образом.
Это может быть описано как;
[Project]
- Построить проект[Project Deploy Test]
- Развертывает проект на тестовом сервере[Project UA Test]
- Шаг принятия пользователем, где пользователь должен вручную проверить и принять[Project Deploy Prod]
- Как только пользователь принял тест UA, сборка развернута в производство
Все шаги работают хорошо, кроме [Project UA Test]
шаг. Этот шаг должен быть просто кнопкой или чем-то, что пользователь может вручную активировать, если он или она довольны сборкой.
Вопрос в том, как я могу настроить этот шаг, чтобы обеспечить некоторое взаимодействие с пользователем (например, нажав кнопку), прежде чем перейти к следующему шагу?
Я пытался сделать параметризацию сборки с помощью Choice Parameter, но я не уверен, что поступаю правильно.
2 ответа
Плагин Promoted Builds
https://wiki.jenkins-ci.org/display/JENKINS/Promoted+Builds+Plugin
Вы можете использовать плагин Promoted Builds, который имеет ручной процесс продвижения.
Вы могли бы иметь:
[Project]
->[Project Deploy Test]
->[Project UA Test]
[Project UA Test]
- (ручная раскрутка) ->[Project Deploy Prod]
Объяснение: ведите себя как обычно, пока пользовательские приемочные тесты не будут завершены. После завершения вы можете сделать ручной процесс продвижения. Процесс продвижения может быть настроен для запуска последующей сборки; так что в действительности ваш конвейер возобновляется.
Плагин доставки трубопровода
(примечание: я не играл с этим плагином, так что я просто догадываюсь)
https://wiki.jenkins-ci.org/display/JENKINS/Delivery+Pipeline+Plugin
Плагин "Конвейер доставки" позволяет вам настроить задание на выполнение действия пост-сборки, которое является ручным триггером, и позволяет возобновить конвейер.
Написать свой?
Концептуально, чтобы разорвать ваш конвейер и заставить пользователя "подтвердить", что сборка хороша, сборка должна обеспечивать действие, которое можно выполнить после завершения сборки. Например
KeepBuildForEverAction
(продолжай строить вечно)ClaimBuildAction
(заявить плагин)
Набор плагинов Workflow поддерживает этот вариант использования через input
шаг.