Существует ли конвейер Jenkins, эквивалентный показу только последнего статуса сборки?

Мы находимся в процессе перехода на конвейер Jenkins. Мы используем Jenkins для обновления статуса сборки наших веток/PR в Bitbucket.

Одна из наших проверок слияния в Bitbucket — «Проверить последнюю фиксацию как минимум на 1 успешную сборку и отсутствие неудачных сборок». Это означает, что мы не можем выполнить слияние, если не будет 1 успешной сборки последнего коммита на Jenkins и не будет неудачных сборок последнего коммита.

Иногда сборки Jenkins терпят неудачу по причинам, не связанным с кодом, и при следующем запуске сборка будет в порядке. Однако это означает, что ветвь не может быть объединена, так как произошла по крайней мере одна неудачная сборка.

Чтобы обойти это, мы ранее могли поставить галочку в конфигурации плагина уведомления о статусе сборки, которая гласила: «Показывать только последний статус сборки». На данный момент мы не можем найти эквивалентный способ настроить это в Jenkinsfile. Кто-нибудь знает, возможно ли это, и если да, то как?

Этот вопрос является дубликатом многоотраслевого конвейера с Плагин уведомления о статусе сборки битбакета в jenkins, но на этот вопрос так и не ответили.


person Ben Green    schedule 07.02.2020    source источник


Ответы (1)


Похоже, что ваш вариант использования описан в Создайте REST API для Bitbucket, и даже есть пошаговый пример вашего точного случая: последняя сборка завершилась неудачно по внешним причинам, и новая сборка прошла успешно

Чтобы перезаписать статус уже сообщенной сборки, вам нужно будет использовать те же commit sha и те же key

Что касается уведомителя о состоянии сборки Bitbucket, он позволяет указать buildKey как необязательный параметр. Вы должны убедиться, что этот параметр указан и что этот параметр всегда один и тот же для всех сборок одного и того же задания.

Таким образом, новая сборка той же последней фиксации перезапишет последнюю, поскольку будет использовать тот же sha и тот же ключ.

Дополнительные параметры см. в разделе API документации плагина.

person matus    schedule 10.02.2020