Этапы запуска конвейера Jenkinsfile на основе git commit

#jenkins #jenkins-pipeline

#дженкинс #дженкинс-конвейер

Вопрос:

У меня есть Jenkinfile, который содержит 5 этапов, независимых друг от друга.
Я хотел бы запускать каждый этап на основе git commit.
Возможно ли это сделать?

Комментарии:

1. Вы можете запускать этапы на основе ветки или тега — если это не ваш вариант использования, пожалуйста, предоставьте дополнительную справочную информацию о том, чего вы собираетесь достичь.

2. @Thomas Я знаю о ветке и тегах. Я хочу получить последнюю фиксацию и grep для определенной строки, а затем использовать условие when, указывающее на этап запуска, только если эта строка находится в последней фиксации

Ответ №1:

Вы можете запросить список изменений для конкретного текста

 stage("Enterprise build") {
    when {
        changelog "^make-it-so.*"
        branch "master"
    }
    steps {
        script {
            //do special stuff
        }
    }
}
  

Комментарии:

1. возможно ли иметь 2 условия when для одного этапа?

2. Пожалуйста, откройте отдельный вопрос, поскольку на исходный вопрос дан ответ.