Я запускаю Jenkins 2 с плагином Pipeline. Я установил проект Multi-branch Pipeline, в котором каждая ветка (главная, разработка и т.д.) имеет файл Jenkins в корне. Настроить это было просто. Однако я не понимаю, как периодически запускать каждую ветвь (а не индексацию веток), даже если код не меняется. Что мне нужно поместить в мой Jenkinsfile, чтобы включить периодические сборки?
jenkins
jenkins-pipeline
geowa4
источник
источник
Если вы используете Jenkinsfile в декларативном стиле, используйте директиву триггеров .
источник
master
ветке? Чтобы дать некоторый контекст: когда товарищи по команде создают новую ветку функции и фиксируют ее, файл Jenkins все равно должен запускаться (через опрос или push), но я не хочу, чтобы срабатывал триггер cron в этих ветках функций.Мне удалось найти пример, иллюстрирующий это - отказ от старых сборок, чего я тоже хотел.
Jenkinsfile
в jenkins-infra / jenkins.io:источник
buildDiscarder
символ для упрощения синтаксиса, как должен показывать синтаксис конвейера .pipelineTriggers([[$class: "TimerTrigger", spec: "H 1 * * *"]])
Это работает для меня:
Подробнее в этой статье
источник
Для параметризованных периодических запусков или запланированных триггеров можно использовать следующее.
источник
Я столкнулся с проблемами с вышеуказанными решениями.
Я не мастер Jenkins, поэтому не уверен, использую ли я старый формат / синтаксис или что-то в этом роде, но у меня работает следующее.
Определено из: https://github.com/jenkinsci/jenkins/blob/master/core/src/main/java/hudson/triggers/TimerTrigger.java.
источник