Чтобы запустить сборку при новом коммите git, сначала необходимо включить опрос SCM в сценарии конвейера, добавив правильную директиву triggers
к вашей Jenkinsfile
:
triggers {
pollSCM 'H/2 * * * *'
}
Это будет опрашивать ваш SCM на наличие изменений каждые две минуты.Если изменение обнаружено с момента последней сборки, ваша работа будет запущена для создания изменений.
Опрос - это самый простой способ получить то, что вы хотите.Тем не менее, вы должны рассмотреть возможность использования хука post-commit вместо polling .Используя опрос Дженкинс должен периодически проверять SCM на наличие изменений.В случае перехвата после фиксации, Jenkins будет уведомлен об изменениях SCM, если это необходимо.Он предпочтительнее опроса , потому что он уменьшит количество требуемых запросов и трафик от Jenkins к репозиторию SCM.
После настройки перехвата после фиксации директива triggers
должна быть изменена командойпредоставление пустой строки в качестве параметра cron для триггера pollSCM
.
triggers {
pollSCM ''
}
Это может сбивать с толку, но эта пустая строка необходима для того, чтобы задание обрабатывало запросы перехвата после фиксации.Это также не очень хорошо задокументировано документами Дженкинса.