В одном задании jenkins мы хотим отслеживать несколько ветвей и запускать его только один раз, когда в любом из них есть изменения. Это возможно?Создание jenkins работы только один раз, при отслеживании нескольких ветвей?
Проблема в том, что мы должны запускать кучу заданий для каждой ветки последовательно, и они не должны вмешиваться. Чего мы хотим достичь, например:
[changes on any branch] -> checkout master -> job1 -> job2 -> job3 -> checkout release -> job1 -> job2 -> job3
Текущее поведение - это то, что задание запускается для каждой ветви с изменениями. Таким образом, если «строить газопровод» было запущено из-за изменений в мастера, можно быть срабатывающие снова вызваны изменениями в выпуске:
[changes on master] -> checkout master -> job1 -> ... -> checkout release -> ...
[changes on release] -> checkout master -> job1 -> ... -> checkout release -> ...
Другой (даже лучше) вариантом было бы, чтобы начать одну работу периодически и делайте сборку только для каждой ветви, если она имеет изменения:
for each branch do
if branch has changes then
job1
job2
...
Я хотел бы сделать также несколько заданий, каждый из которых для конкретной отрасли, как это вы уверены, что нет никаких помех, и это проще отлаживать, если что-то неожиданно ... – sop
@sop Я просто редактировал мой вопрос, чтобы быть более ясным, надеюсь. – SevenEleven