У Дженкинса 2 есть трубопроводы, есть первоклассный гражданин. Однако в примерах задачи, кажется, выполняются как одна последовательность:
node {
// Mark the code checkout 'stage'....
stage 'Checkout'
// Get some code from a GitHub repository
git url: 'git@github.com:elifesciences/elife-bot.git'
// Mark the code build 'stage'....
stage 'Build'
echo "Unit tests will run here"
stage "Production"
echo "Deploying to production environment"
}
Для развертывания в производственной системе часто полезно требовать одобрения вручную; Есть ли способ вставить ручную кнопку для нажатия внутри конвейера?
Я искал возможные шаги для достижения этой цели в документах , но безрезультатно.
input
шаг в конвейере, который останавливает и просит пользователя ввести (или прервать сборку). Тем не менее, сцена и индикатор состояния продолжают мигать, пока я хотел стабильного состояния (например, вы входите в него в пятницу днем и решаете развернуть в понедельник.)Ответы:
Ввод - это опция, которую вы ищете. Вот способ, которым я использую это. Важно сделать шаг за пределы узла, иначе jenkins будет держать агента в ожидании следующего шага. Имейте в виду, что второй узел может не использовать то же рабочее пространство, что и первый.
источник
В конце концов я создал отдельный
test-project
иprod-project
конвейер, где в концеtest-project
код сливается вapproved
ветку.Затем
prod-project
конвейер можно настроить так, чтобы он не запускался для каждого нового коммита, чтобы его можно было развернуть по требованию.источник
Кроме того, вы также можете добавить автоматический тайм-аут, как показано ниже
Если вы посмотрите его, вы также можете связать входные данные jenkins с учетными данными пользователей, обращающихся к Jenkins, если вы хотите разрешить конкретным лицам отвечать на запросы - это также подтверждается тем фактом, что ваши элементы управления Git также достаточны.
источник
Это простой пример, но вы можете запустить его так, как вам нужно.
источник
Я сделал так, как показано ниже, прочитав этот документ https://jenkins.io/doc/book/pipeline/syntax/
источник