Jenkins - выполнить скрипт перед сборкой, а затем попросить пользователя подтвердить сборку - PullRequest
5 голосов
/ 21 марта 2012

У меня есть скрипт bash, который выглядит следующим образом:

#!/bin/sh
previousRelease=`git describe --tags --match "release*" origin/release`
git diff --name-status $previousRelease..origin/release

Есть ли способ заставить Дженкинса выполнить его как часть процесса сборки?Намерение состоит в том, чтобы просмотреть список файлов, которые изменились с момента последнего выпуска, в качестве шага вручную, чтобы подтвердить, что выпуск должен подняться.Пользователь, который запустил сборку, должен прочитать выходные данные и затем подтвердить, что выпуск должен продолжаться.

1 Ответ

2 голосов
/ 21 марта 2012

Большинство вещей можно сделать в Дженкинсе , но если это лучший способ сделать это, другой вопрос .

Чтобы решить эту проблему, я бы использовал подход с двумя заданиями, одно для проверки различий (добавьте это в репозиторий 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&parameters=build

создаст запрошенный вами пользовательский интерфейс для принятия изменений.

Выпуск задания

2 Создайте еще одно задание (как я уже говорил, вы назвали его releaseme), пусть задание будет иметь один параметр в качестве аргумента (отметьте «Эта сборка параметризована»), сделайте так, чтобы аргумент был идентификатором git, который вы хотите освободить. Создайте свой сценарий выпуска в этой работе.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...