У нас есть много разработчиков, создающих ветки функций, которые я хотел бы создать. Ночью мы запускаем инструмент качества кода, который нужно запускать на каждой ветке. Мне также не нужна статическая конфигурация, потому что число ветвей меняется каждые несколько недель.
Хадсон/Дженкинс Git построить все ветки
Ответ 1
В конфигурации Git есть поле "Спецификатор ветвления" (пустое значение по умолчанию): ' если вы там положите **, он построит все ветки из всех пультов.
с тем, что вы можете использовать переменную окружения ${GIT_BRANCH}, например. установить заголовок для сборки с помощью https://wiki.jenkins-ci.org/display/JENKINS/Build+Name+Setter+Plugin или для других целей
Ответ 2
У меня была та же проблема, которую нужно решить. В частности, сделайте zip файл всех веток и предложите их как артефакты, которые будут использоваться в разных тестовых заданиях.
В "Филиалах для сборки" поставьте "**"
Затем выполнить оболочку:
while read -ra ITEM; do
for i in "${ITEM[@]}"; do
git checkout $i
<do your stuff>
done
done <<< $(git branch -r | grep -v "HEAD ->" | xargs -L 1 | cut -d'/' -f2)
Это считывает список ветвей, каждую проверку каждого из них и позволяет делать вещи в каждом из них. < команда преобразует этот вывод:
origin/HEAD -> origin/master
origin/branch1
origin/master
origin/secondbranch
в полезный список выписок:
branch1
master
secondbranch
Ответ 3
Старый вопрос, но несколько более подходящий ответ. Плагин с несколькими ветвями ниже позволяет вам создать тип элемента сборки, который отлучает подпроекты с веткими, автоматически синхронизируя конфигурацию с верхнего уровня на подпроекты
https://wiki.jenkins-ci.org/display/JENKINS/Multi-Branch+Project+Plugin
Для более привлекательного подхода плагин Seed дает вам большую гибкость при определении подзаголовков