Как я могу заставить сборки Jenkins сообщать о сбоях на сервер Bitbucket?
В моей работе работает Jenkins и Bitbucket Server (поэтому вместо облака битбакет у них есть собственная версия битбакет). Я привык к тому, что с помощью github и bitbucket облака, которые собираются/не работают, сразу же сообщают о PR и ветвях о том, прошла ли сборка или не удалось. Я хочу передать этот подарок моей команде в нынешних условиях. Как мне получить PR на сервере Bitbucket для получения успеха/неудачи сборок от Jenkins?
[Рисунок 1 просто показывает пример функциональности, которую я хочу, работает на PR в github + codehip]
Ответы
Ответ 1
В то время как Webhook для Jenkins для Bitbucket может помочь уведомить Дженкинса для опроса, когда есть коммит, вам все равно нужно помнить о "ленивых обновлениях обновлений" в Bitbucket (описанных в этой теме)
Нам пришлось реализовать что-то, что позволит получить доступ к API REST для изменений pull-request/*/changes
перед вызовом URL- /git/notifyCommit
Jenkins /git/notifyCommit
.
Последний Jenkins URL /git/notifyCommit
поступает из плагина Jenkins Git.
Подробнее см. В разделе " Настройка Webhook To Jenkins для Bitbucket ".
После того, как Дженкинс будет правильно вызван, вы можете, как указано в " Уведомлять статус сборки от Дженкинса до сервера Bitbucket ", использовать " Jenkins Stash Pullrequest Builder ", из nemccarthy/stash-pullrequest-builder-plugin
.
Ответ 2
Сервер Bitbucket имеет API build-status
. Он сохраняет статус сборки для конкретной фиксации, нет отдельного статуса сборки PR. Статус сборки PR - это статус сборки фиксации главы в этом PR.
Вы можете реализовать собственный вызов api для обновления статуса сборки или использования одного из существующих плагинов. Мы используем Post Webhooks для плагина Bitbucket Bitbucket в сочетании с плагином BlitzBank Source Source jenkins.
Ответ 3
Вы могли бы использовать BitBucket REST API для достижения этого?
Здесь практическое обновление фиксирует статус сборки: Обновление состояния сборки для фиксации
Статус фиксации отображается в Pull Request и на ветвях
Ответ 4
вы можете настроить плагин уведомления об утилизаторе, он отлично работает с BitBucket и уведомляет статус сборки для запроса ветвления и протягивания