Самое быстрое кроссплатформенное решение - установить Cygwin на сервер SVN (при условии, что на SVN работает Windows) и использовать поддерживаемый скрипт оболочки:
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
Мне нужны все возможные вариантыиз http://server/subversion/${UUID}/notifyCommit?rev=$REV
Почему?Это все, что вам нужно.
- сервер Сервер Jenkins
- $ {UUID} Unqiue ID для хранилища.
- $ REV Новая редакция.
Вы также можете просто использовать что-то в хуке post-commit для ping: http://YOURHOST/jenkins/job/PROJECTNAME/build
.Вы не получите свежую сборку для каждого коммита, но если у вас есть два коммита в течение секунд друг от друга, действительно ли вы хотите, чтобы каждый из них был построен?Вы хотите, чтобы пост-коммит был невероятно медленным?Если да, то на какой ОС установлен SVN-бокс?Возможно, вы достигнете пределов ОС и получите гораздо лучшую производительность (на том же уровне), если вы перейдете на Linux или серверную версию Windows.