Я использовал подход fchateaus выше (спасибо, мужик!) И изменил его для работы с Mercurial.
Вам нужно будет отредактировать .hg / hgrc на центральном сервере и вставить хук группы изменений. Имейте в виду, что группы изменений устанавливают только первую группу изменений в переменную среды HG_NODE, поэтому вам нужно выполнить hg tip, чтобы получить реальный узел tip и передать его через URL. Небольшая хитрость, которую нужно сделать в однострочнике, но я понял это.
Это то, что вы сделали бы для Hudson, работающего на Windows .
[hooks]
# this uses wget to hit the hudson url responsible for starting a build - %HG_NODE% only gets first changeset of changegroup, so use hg tip to grab changeset most recently added instead
changegroup.hudson = for /f "tokens=*" %G IN ('hg tip --template {node}') DO "C:\Program Files (x86)\UnxUtils\usr\local\wbin\wget" --non-verbose --spider http://HudsonServer:8080/job/{Repository}/buildWithParameters?HgRevId=%G | ECHO Result of Hudson Polling Request For Node %G
# TODO: when Hudson implements polling with parameters, change to something like this
#changegroup.hudson = for /f "tokens=*" %G IN ('hg tip --template {node}') DO "C:\Program Files (x86)\UnxUtils\usr\local\wbin\wget" --non-verbose --spider http://HudsonServer:8080/job/{Repository}/polling?HgRevId=%G | ECHO Result of Hudson Polling Request For Node %G