2014-12-03 4 views
6

Я использую Jenkins (v1.592) с Git Client Plugin (v1.12.0) и Git Plugin (v2.3).Jenkins Git Plugin Build Trigger RegEx запускает неправильные задания

У меня есть задание сборки, которое должно быть вызвано, если в моем git-репозитории произошли изменения, если изменения сделаны НЕ в ветвях происхождения/ведущего или происхождения/имени, а N - десятичным числом.

Я был очень рад видеть, что Дженкинс допускает регулярные выражения как спецификатор ветки в опции «Ветки для сборки». Но, к сожалению, я не получаю мое выражение для правильной работы:

Мое выражение:

:master|name(\d+) 

Я также активизируются «Стратегия выбора, что строить» с опцией «Inverse».

Когда я сейчас что-то нажимаю на свою мастер-сборку, он будет выбран и начинается сборка.

Я использую «Опрос SCM» без расписания и запускаю сборку с вызовом URL-адреса Jenkins notifyCommit.

Я также попытался использовать: (?! (Origin/master | origin/name \ d +)) как регулярное выражение без инверсной опции, но получить здесь ошибку.

+0

Если это вопрос в регулярном выражении, какой двигатель регулярного выражения вы используете? Как правило, никто не пишет свой собственный движок, они используют стандартный. Они скажут свое _something_ совместимое. В противном случае это новая серия нестандартных конструкций. – sln

+0

@vks К сожалению, это не решило проблему. –

+0

@sln Поскольку Jenkins написан на Java, я предполагаю, что он использует Java regex-engine. –

ответ

6

Хорошо, я нашел ответ, но не найдя решение для регулярного выражения. Недавно я увидел, что я могу указать несколько ветвей с функцией «Добавить ветвь» - до нескольких минут назад я был слеп, чтобы увидеть кнопку «Добавить ветвь».

Определяя две ветви и активируя обратную функцию, она работает. Мои имена двух ветвей: master и name * (* для оператора Wildcard).

Благодарим за помощь!