Недавно я получаю требование получить номер сборки из внешнего сервиса для Jenkins Jobs. Обычно работа Jenkins использует Build_Number в своем отображении или как часть версии. Build_Number — это просто последовательное число, и это связано с определенной работой. Если несколько рабочих мест установлены для того же проекта, либо из-за контроля разрешений, либо сидеть в нескольких экземплярах Jenkins, приятно получить номер сборки из внешней службы, чтобы сохранить последовательную версию.
Поэтому я придумал 2 небольших проекта на Github: Jenkins. Общая библиотека для получения номера сборки из удаленного обслуживания
Сервис, чтобы получить инкрементное число
Первый — это библиотека, используемая в Дженкинах. Получите номер сборки как одну строку.
def build_number = buildnumber.get(server, uuid)
Второй — простая служба, написанная по ходу. Возвращает инкрементное число каждый раз вызываемый. Разверните его на собственном сервере, как докер или в кластере Kubernetes.
Быстрая демонстрация:
curl -i -H "Content-Type: application/json" -X POST https://buildnumber1.herokuapp.com/e9461f1c-ef78-4162-bcb7-e83da7287614
Мой первый пост. Спасибо за прочтение.
Оригинал: «https://dev.to/liejuntao001/get-a-build-number-from-service-a9e»