2016-06-08 4 views
2

Я переношу свою старую работу Jenkins в многоотводный трубопровод. Я также хочу использовать GitLab с ними.Автоматическое обнаружение ответвления трубопровода Jenkins

Моя проблема - обнаружение отрасли. Я делаю это вручную, но я хочу, чтобы он был автоматическим: когда новая ветка нажата на git, GitLab запускает задание Дженкинса, которое запускает обнаружение ветви, если параметр ветвления GitLab не известен для Дженкинса на данный момент. Можно ли это сделать или это не существует?

FYI: Я пытался запустить многоотраслевую работу трубопровода, но Дженкинс говорит:

ERROR: No parameterized job named XXX found. 

ответ

0

я не получил ответ, который я хотел, и я столкнулся с этим вопросом сегодня, что ответили на вопрос:

https://github.com/jenkinsci/gitlab-plugin/issues/298

TLDR: Многоотраслевое трубопровод пока не поддерживаются в инициироваться gitlab совершить без труда. Существует обходное решение. Посмотрите на ссылку выше.

0

Включить «Build Periodcally» в вашей многоотраслевой конфигурации задания и индексирование ветви будет запускаться автоматически.

+1

уверен, но когда gitlab выведет новый коммит на новой ветке, он потерпит неудачу, потому что моя работа попытается найти задание, сгенерированное конвейером для этой ветви, которого нет, потому что обнаружение ветви не было запущено. – bobkilla

+0

Как выглядит ваш фильтр включения ветвей в многоблочном трубопроводе? – mrkernelpanic

0

Что вам действительно нужно, это плагин источника для GitLab с интеграцией webhook, который отслеживается как RFE в JIRA.

В противном случае используйте простой источник ветвления Git и настройте GitLab для отправки уведомлений Jenkins на /git/notifyCommit (IIRC), как описано в вики-плагине Git. Необходимо указать только url, никаких других деталей. Индексирование ветвей этих триггеров должно как обнаруживать новые или удаленные ветви, так и изменения в голове существующей ветви и соответственно строить расписание.

0

Вы можете установить webhook в GitLab для push-событий и URL-адресов, таких как http://<yourserver>/git/notifyCommit?url=<URL of the Git repository>.

См https://wiki.jenkins-ci.org/display/JENKINS/Git+Plugin#GitPlugin-Pushnotificationfromrepository

GitLab уведомляет Дженкинс на кнопочных событий, которые должны вызвать обнаружение ветви также многоотраслевой трубопровода.

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