1

Какова наилучшая практика для автоматизации сборки с Дженкинсом? Я мог бы выполнить одно задание Дженкинса и использовать переменную $GIT_BRANCH, чтобы принять какое-то решение о рабочем процессе. Или у меня могла бы быть одна работа Дженкинса на одну ветку (например, одна работа Дженкинса для мастер-филиала и другая для развития филиала).Jenkins - Одна работа для всех филиалов или Одна работа в филиале?

Какая практика?

ответ

2

Это зависит. Выберите переменный метод, если:

  • Разница в поведении минимальна
  • Есть много ветвей
  • Есть вниз по течению рабочих мест, которые также зависят от переменной ветви

Выберите один для каждого метода работы, если какая-либо из этих предыдущих причин неверна, или вам нужно развернуть по-разному на каждой ветке одновременно (например, все ветви имеют изменения кода одновременно).

В общем, я бы рекомендовал использовать переменную окружения и выполнить параметризованную работу. Если вы все еще хотите выполнять несколько заданий, я рекомендую использовать задания матрицы для отслеживания многих различных измерений, которые вы можете использовать.

+0

Если я пойду с одной работой для всех ветвей, я не смог бы использовать пост-действие Дженкинса. Я хотел бы выбрать действие post, которое будет использоваться, зависит от ветки. –

+0

В таких случаях я бы либо добавил пост-действия как часть текущего задания (как отдельную задачу), так и использовал логику коммутации, чтобы решить, какое действие следует предпринять, или если это невозможно, я бы создал работу филиала. Я никогда не использовал [Conditional BuildStep Plugin] (https://wiki.jenkins-ci.org/display/JENKINS/Conditional+BuildStep+Plugin), но он может быть в вашем переулке. –

Смежные вопросы