jas*_*r77 2 mercurial hook continuous-integration hudson
我有一个服务器,它服务于一个"中央"Mercurial存储库; 团队克隆它并通过ssh将其更改推送到它.Hudson安装在同一台服务器上(RHEL 5.5).每当有人推送到Mercurial中央存储库时,我希望触发一个Hudson构建.我还希望在推送时发送通知电子邮件.
在ProjectName/.hg/.hgrc中,有以下内容:
[hooks]
changegroup.hudson = wget http://Server.Name:8080//job/Project_Name/builds?delay=0sec >&2
Run Code Online (Sandbox Code Playgroud)
如果我使用putty ssh到这个服务器,然后发出wget命令,成功触发了一个构建,所以我不认为这是一个权限问题.
另一个钩子是:
changegroup.notify = /the/path/.hg/hooks/notify
Run Code Online (Sandbox Code Playgroud)
通知的地方是:
dest='comma separated list of email addresses'
repo="path/to/repository/"
subject="New changesets in $repo"
hg glog -l 10 -r $HG_NODE: | mail -s "$subject" $dest
Run Code Online (Sandbox Code Playgroud)
当我直接从shell运行./notify时,当我在中央存储库的路径中时,邮件会正确发送; 如果我从我的主目录执行通知,找不到存储库,我收到一封空邮件,但至少我收到一封电子邮件.我假设这些钩子没有被运行.
可能会阻碍什么?我该怎么检查?
跑cd ProjectName; hg showconfig|grep hooks.
我打赌你不会看到你的钩子,如果这正是你所拥有的:
在ProjectName/.hg/.hgrc中,有以下内容:
存储库范围的hgrc .hg/hgrc没有点.
| 归档时间: |
|
| 查看次数: |
1649 次 |
| 最近记录: |