Большинство вещей можно сделать в Дженкинсе , но если это лучший способ сделать это, другой вопрос .
Чтобы решить эту проблему, я бы использовал подход с двумя заданиями, одно для проверки различий (добавьте это в репозиторий git). Другое задание для фактического выпуска.
Проверка различий
1 Создайте задание проекта типа freestyle с типом сборки "execute shell" и запустите ваш скрипт выше. Добавьте несколько отпечатков в конец журнала, чтобы создать интерактивную ссылку, чтобы вручную запустить задание выпуска с текущим git-id в качестве аргумента.
Простая печать URL в выводе консоли сделает его кликабельным:
export GITID=`git log -n| grep and sed or awk something`
echo http://jenkins.example.com:8888/job/releaseme/buildWithParameters?label=$GITID¶meters=build
создаст запрошенный вами пользовательский интерфейс для принятия изменений.
Выпуск задания
2 Создайте еще одно задание (как я уже говорил, вы назвали его releaseme), пусть задание будет иметь один параметр в качестве аргумента (отметьте «Эта сборка параметризована»), сделайте так, чтобы аргумент был идентификатором git, который вы хотите освободить. Создайте свой сценарий выпуска в этой работе.