#jenkins #jenkins-pipeline
#Дженкинс #дженкинс-конвейер
Вопрос:
У меня есть конвейер Дженкинса с несколькими этапами, один в середине содержит режим «безопасности», поэтому у меня есть время перепроверить развертывание с предыдущих этапов.
stage('Wait 15 minutes') {
steps {
sleep 900
}
}
Есть ли какой-либо способ, как я мог бы потенциально вручную пропустить этот этап, чтобы ускорить конвейер, когда я обнаружу, что все предыдущие этапы стабильны?
Ответ №1:
Вот так, шаг ввода пользователя может занять ваше время сна, и вы можете использовать его в более поздней команде сна, которая также позволяет вводить 0, что означает отсутствие времени ожидания.
node{
// Get the input
def userInput = input(
id: 'sleeptime', message: 'Enter sleep time.',
parameters: [
string(defaultValue: "10",
description: 'time to sleep',
name: 'sleeptime'),
])
sleep userInput.sleeptime
}
Вы также можете автоматически сохранять состояние предыдущих шагов в переменной, чтобы не было такого большого ручного взаимодействия. Вот почему должна быть выполнена непрерывная интеграция. С помощью простого условия if вы могли бы затем проверить, были ли ваши предыдущие шаги развертывания в порядке, и продолжить на основе этого.