объясняет это опираясь только на предложенные изменения, потому что все остальное будет излишне стоить вычислительной мощности (что равнозначно деньгам).

аюсь реализовать конвейер 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

Ответы на вопрос(4)

Ваш ответ на вопрос