Добавить дополнительную проверку статуса PR (синий океан Jenkins, интегрированный с github) - PullRequest
0 голосов
/ 12 марта 2019

Я устанавливал Jenkins (с плагином Blue Ocean) и успешно настраивал GitHub webhook, чтобы при каждом запуске в хранилище проверялся, успешно ли выполняется процесс сборки (как это прикрепленное изображение).

После установки по умолчанию установлены 2 проверки состояния

  • jenkins / branch: проверьте, может ли быть успешно выполнено принятие, и отправьте отчет о состояниив GitHub
  • jenkins / pr-merge: проверить, можно ли объединить PR с базовой веткой (в данный момент разрабатывается) и сообщить о состоянии обратно в GitHub

Я хочу добавитьЕще 1 проверка состояния, например, Jenkins / unit-test .Как я мог сделать это со стороны Дженкинс?И где 2 проверки состояния, упомянутые выше, определены в Jenkins с подключаемым модулем Blue Ocean?

Причина, по которой я хочу добавить дополнительную проверку состояния, заключается в том, что я могу настроить эту проверку как необязательную, так что даже модульный тест не пройден, я могувсе еще объединить запрос на извлечение.(Наш проект все еще находится на очень ранних стадиях разработки, поэтому нет необходимости требовать прохождения всех модульных тестов для объединения PR).

1 Ответ

1 голос
/ 12 марта 2019

А где 2 упомянутые выше проверки состояния, определенные в Jenkins с плагином Blue Ocean?

Это поведение по умолчанию из плагина.

КакМогу ли я сделать это со стороны Дженкинс?

Есть несколько вариантов для достижения этой цели, но в конечном итоге вам нужно будет создать новый статус самостоятельно, используя API GitHub Status .Это простой вызов REST, который создает новую запись в списке статусов с любым результатом, который вы передаете.Теперь, что касается того, как сделать это из Jenkins, я бы предложил добавить вызов API в ваш файл Jenkins и изолировать unit test часть сборки и передать или потерять результат на основе вывода этой команды.

Я хотел бы взглянуть на Jenkins Shared Libraries , чтобы увидеть, есть ли какие-то подпрограммы, которые уже выполняют эту работу за вас, и в этом случае вы будете искать метод, который инкапсулирует вызов API.

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