Я хотел бы настроить одну сборку Jenkins («задание»), которая будет:
Я могу достичь (1), установив "Ветви для построения" на "**"
Я могу достичь (2), сделав сборку параметризованной и установив «Ветви для сборки» на «$ branch» (например, этот учебник)
Есть ли способ сделать и то, и другое одновременно?
Мой вариант использования (1) заключается в том, что я хочу, чтобы «ветки функций» были протестированы перед объединением в мастер, чтобы мы могли видеть во время проверки кода / запроса на вытягивание, проходят ли изменения все тесты.
Мой вариант использования (2) заключается в том, что иногда сборка не выполняется по ложной причине (например, нестабильный тест), и я хочу ее повторно запустить, или, возможно, старая ветка выпала из нижней части истории, и я хочу повторно -запустить его тесты.
Если у вас есть параметризованная сборка без значения по умолчанию, а также вы настроили задание на опрос исходного элемента управления в Build Triggers > Poll SCM
тогда все должно работать.
Важно, чтобы ваш branch
параметр не имеет значения по умолчанию, поэтому $branch
пусто, когда задание запускается из опроса, потому что Branches to build
интерпретирует пустое значение как любую ветвь.
(Обратите внимание, что это будет создавать каждую фиксацию, а не только «новые ветки» согласно (1), но и любое решение, которое устанавливает Branches to build
к **
как вы предлагаете.)
Я был в том же положении, включение «принудительного опроса с использованием рабочей области» решило бы проблемы. Jenkins-ci.org/browse/JENKINS-29896