объясняет это опираясь только на предложенные изменения, потому что все остальное будет излишне стоить вычислительной мощности (что равнозначно деньгам).
аюсь реализовать конвейер CI / CD, используя Jenkins, Docker и Ansible. Я использую SVN-репозиторий для своей системы контроля версий. Для развертывания и репо кода SVN я использую AWS EC2. Развертывание и репо кода находятся в отдельной ВМ.
Мое требование
Когда я фиксирую свой код в репозитории SVN, мне нужно активировать одно задание Jenkins. Это задание будет называться «сборник рассказов». Позже он создаст проект, создаст образ Docker и развернет его в EC2. Поэтому для любых изменений в моем репозитории SVN-кода мне нужно создать задание Jenkins.
Моя текущая попытка
Я добавил следующий скрипт в файл post-commit.tmpl в папке $ repo / hooks.
REPOS="$1"
REV="$2"
UUID=`svnlook uuid $REPOS`
/usr/bin/wget \
--header "Content-Type:text/plain;charset=UTF-8" \
--post-data "`svnlook changed --revision $REV $REPOS`" \
--output-document "-" \
--timeout=2 \
http://server/subversion/${UUID}/notifyCommit?rev=$REV
Ниже приведен скриншот
И проверил опцию «Опрос SCM в Дженкинс Джоб»:
NB: Я не ищу график минут / часов / недели, чтобы вытащить из репо. Вместо этого я смотрю, когда происходит изменение кода, тогда мне нужно построить проект Jenkins. Поэтому я не добавил ни одного графика.
Но все же я не получаю последний код в Дженкинс. Как я могу узнать проблему, связанную с моей конфигурацией?
Обновленный файл post-commit.tmpl