Интеграция Jenkins Multibranch Pipeline с использованием вебхуков и плагина multibranch-scan-webhook-trigger


Описание

  • Jenkins Multibranch Pipeline - это ветвистый билд-процесс, где для каждой ветки репозитория запускается отдельный конвейер.
  • Вебхук - это механизм, позволяющий передавать уведомления об изменениях в Git-репозитории напрямую в Jenkins.
  • Плагин multibranch-scan-webhook-trigger - добавляет возможность триггерить пересборку Jenkins Multibranch Pipeline, используя вебхуки.

Установка плагина

  1. Откройте Jenkins в веб-интерфейсе.
  2. Перейдите в раздел “Manage Jenkins”.
  3. Перейдите в раздел “Manage Plugins”.
  4. Выберите “Available plugins” и поищите “multibranch-scan-webhook-trigger”.
  5. Установите плагин, нажав “Установить без перезагрузки”.
  6. Включите плагин multibranch-scan-webhook-trigger.

Настройка проекта

  1. Создайте новый проект Jenkins Multibranch Pipeline.
  2. В Jenkins настройте подключение к необходимому репозиторию Gitflic.

    • В меню “Branch sources”, нажав “Add source”, выберите “Git” и добавьте URL репозитория с “.git” на конце.

      Если не добавлять “http(s)” в URL, работа с Gitflic репозиторием будет осуществляться по ssh

  3. В настройках Jenkins проекта (меню “Scan Multibranch Pipeline Triggers”) выберите опцию “Scan by webhook”.
  4. Придумайте токен для вебхука
  5. Скопируйте URL, предоставляемый плагином, для использования в качестве вебхука

    Пример: http(s)://JENKINS_URL/multibranch-webhook-trigger/invoke?token=[Trigger token]

Настройка Git-репозитория

  1. Откройте репозиторий с вашим проектом.
  2. Перейдите в раздел “Настройки” > “Вебхуки”.
  3. Добавьте новый вебхук, используя URL, скопированный из настроек проекта Jenkins.
  4. Выберите опции, которые необходимо отсылать по вебхуку.
  5. Сохраните изменения.

Теперь ваш Jenkins Multibranch Pipeline будет автоматически запускаться при каждом изменении в репозитории.