2016-05-25 2 views
3

У меня есть 2 задания (A и B). Работа A указывает на репозиторий git по адресу URL-A. Работа B указывает на другое git-репо по URL-B.Jenkins: передать git commit hash в нижестоящую работу

Как только работа A заканчивается и стабильна, она должна запускать задание B и передавать хеш-фиксацию git, которая использовалась при построении задания A.

Каков самый простой способ достичь этого?

(Работа В соответствует сценарию извлечены из URL-B, который имеет 2 параметра: мерзавец совершить хэш и JAR артефакт, который будет обернут в Докер изображении и толкаемый к Докер ступице)

ответ

2

В Работе B, проверьте This project is parameterized. Определите String Parameter, например, укажите имя COMMIT. В задании А установите Post-build Actions с Trigger parameterized build on other projects. Project to build - фамилия Job B, с Trigger when build is как Stable. Add Parameters с Predefined parameters, в котором вы только что положили COMMIT=$commit. $commit обычно является параметром, определенным в задании A. Вы можете добавить другие заданные параметры в Job B и передать значение всем или некоторым из них в задании A.

5

Когда вы проверяете из задания A с помощью плагина GIT, вы уже есть параметр $ GIT_COMMIT что Plugin exports:

переменные окружения

мерзавец плагин устанавливает несколько переменных окружения вы можете использовать в ваших сценариев:

GIT_COMMIT - SHA текущего

GIT_BRANCH - имя удаленного хранилища (по умолчанию происхождения), с последующим по имени филиала в настоящее время используется, например, «происхождение/мастер» или «происхождение/Foo»

т.д.

Просто убедитесь, что передать этот параметр для работы В явном виде (предопределенные параметры, параметры из файла и т.д.).

1

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

Вы также можете передать параметры. Как и в вашем случае, установите параметр git commit в параметр и вызовите задание B.

Где Job B получит этот параметр и продолжит обработку

Смежные вопросы