Интеграция с Jenkins Gitlab - опираться на толчки только к основной ветке - PullRequest
0 голосов
/ 26 марта 2020

У меня тот же вопрос, что и у этого: Триггерная сборка только при нажатии на мастер

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

В расширенном разделе триггеров сборки есть этот раздел, который действительно выглядит следующим образом:

enter image description here

Однако у меня это не работает. Таким образом, он вообще не запускает сборку. Я также попытался поместить туда только master (без звездочки), но это не помогает.

Если я выберу первый вариант (Разрешить все ветви ...), тогда он будет работать, но очевидно, что все нажатия на любую ветку запускают сборку на мастере, которая не имеет смысла.

Любая помощь приветствуется.

Спасибо!

1 Ответ

0 голосов
/ 27 марта 2020

Чтобы интегрировать GitLab с Jenkins, я бы предложил использовать Плагин Gitlab

  1. Установить плагин Gitlab на Jenkins и настроить Gitlab Connection (Управление Jenkins -> Конфигурировать -> Gitlab), для этого вам нужно создать новые учетные данные типа GitLab API-токен .
  2. Выбрать триггер в конфигурации задания Jenkins Build when a change is pushed to GitLab (при нажатии на дополнительные параметры появляется Секретный токен , который должен использоваться вместе с URL-адресом webhook в Gitlab Webhooks.
  3. Добавить webhook (Pu sh Events) в Gitlab project Settings -> Integrations, с URL и токеном из задания Дженкинса и отфильтруйте их по имени ветки .

Обновление: поэтому я изначально хотел отфильтровать события pu sh на GitLab, чтобы Дженкинсу не нужно было это делать, как вы указали он также должен работать с фильтром Jenkins.

Я попытался отфильтровать ветку в моей работе, и Jenkins отобразил выпадающий список с предложенными ветвями после того, как я начал печатать, затем, когда я выбрал brach a label красный Matching 1 branch: Filter Jenkins push trigger С другой стороны, на вашем скриншоте есть индикатор ERROR, который указывает на то, что ваше соединение с GitLab неправильно настроено. Я бы предложил go проверить ваше соединение с GitLab и исправить его.

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