Пост-фиксация ветки uberSVN

Мы используем uberSVN, установленный на Linux. В репозитории "R" у нас есть разные ветви, и мне нужно запустить задание jenkins для фиксации в определенной ветви "B". В репозитории.... /R/hooks/ есть файл с именем post-commit. Содержание файла ниже:

REPOS="$1"
REV="$2"

wget "http://jenkinsurl/job/project_r/build?tokten=r_token"

Приведенный выше скрипт вызывает wget всякий раз, когда репо совершается. С другой стороны, я хочу запускать "задание ветвления" тогда и только тогда, когда в ветке "B" есть фиксация не для всех хранилищ. URL Jenkis ниже:

wget "http://jenkinsurl/job/project_r_b/build?tokten=r_b_token"

Как правильно это сделать?

2 ответа

Решение

Ты можешь позвонить svnlook dirs-changed чтобы изменить пути в совершенной ревизии. Передайте вывод этой команды grep и искать "филиалы / б". Если в выводе команды указано "/branch /b", запустите задание. Выходите иначе.

Проверьте этот вопрос для примера кода: ошибка после фиксации (код выхода 3) с выводом.

Вы можете использовать Poll-SCM вариант в работе Дженкин. Дайте интервал опроса как каждую минуту * * * * * или вы можете установить интервал опроса 5 или 10 минут. При каждом опросе это будет проверять, есть ли изменения в вашей ветви SVN. Если есть изменения, сборка будет запущена, иначе ничего. Эту опцию вы можете найти на странице конфигурации проекта на вкладке Build Triggers,

Другие вопросы по тегам