Страницы

Поиск по вопросам

вторник, 17 декабря 2019 г.

Скрипт для получения информации для Jenkins

#git #jenkins


Есть проект, управление версиями идет через Git. Используем метки tag, чтобы выставлять
версионность проекта. Сейчас переходим на автоматическую сборку проекта через Jenkins.
Хотим автоматически получать информацию от git (в частности использовать команду git
describe) и парсить ее.
Сам с git-ом работаю недавно и не знаю как написать bat-файл, чтобы получить нужную
информацию из git-a и передать её в Jenkins.

Кто сталкивался с подобной задачей, и как ее решили?
    


Ответы

Ответ 1



Ставите Groovy plugin и EnvInject Plugin на Jenkins. А в job-е в Pre Steps делаете следующее: Добавляете шаг "Выполнить команду Windows"/"Выполнить команду shell", которая вычитает нужные данные из вывода git describe и создаст текстовый файл, например, env.txt в формате KEY=value. Пример готового файла: MY_TAG=sometag Добавляете шаг "Inject environment variables" и указываете упомянутый выше файл в качестве "Properties File Path". Теперь все ключи из файла станут доступными на любом этапе сборки переменными окружения. Например, $MY_TAG. Обработайте данные, как вам нужно, в groovy скрипте: def myTag = build.properties.get("envVars")['MY_TAG'] // делаем магию с myTag Если нужно из groovy-скрипта породить новые переменные окружения: def paramsAction = new ParametersAction([ new StringParameterValue("SOME_VAR", result), new StringParameterValue("SOME_OTHER_VAR", someValue1) ]) build.addAction(pa)

Ответ 2



У jenkins есть плагин git. Скорее всего он позволит решить ваши проблемы

Комментариев нет:

Отправить комментарий