将 TortoiseHG 与 Jenkins 同步
Syncing TortoiseHG with Jenkins
我是这个持续集成的新手。我想使用 Jenkins 作为我的 CI 系统,但每次有新系统时我都无法让它拉取构建。
使用 mercurial 的插件,我能够连接到我的存储库并正常拉取我的构建,但我不希望 Jenkins 继续轮询,我希望它仅在有新构建时才更新构建。在插件的维基上,我发现了这个:
As of version 1.38 it's possible to trigger builds using push
notifications instead of polling. In your repository's .hg/hgrc file
add:
[hooks]
commit.jenkins = wget -q -O /dev/null <jenkins root>/mercurial/notifyCommit?url=<repository remote url>
incoming.jenkins = wget -q -O /dev/null <jenkins root>/mercurial/notifyCommit?url=<repository remote url>
现在我将 Jenkis 保留在本地,所以我在我的 hgrc 文件中使用了这个:
commit.jenkins = wget -q -O /dev/null http://localhost:8080/mercurial/notifyCommit?url=<my repository remote url>
incoming.jenkins = wget -q -O /dev/null http://localhost:8080/mercurial/notifyCommit?url=<my repository remote url>
但是构建没有被触发。有人可以帮助我吗?
[更新]
我没有注意 wget 命令,它在 windows 上不存在。安装了它,它仍然是一样的。 Jenkins 没有拉动构建。
- 您必须在 PATH 上安装 wget(我会推荐 GOW 的本机端口,而不是 Cygwin - 或 Win10 中的 Bash)
- 您的挂钩必须处于工作状态
wget ...
必须产生预期的结果
你有三个现在有两个可能的故障点并且必须独立测试所有
- 我的挂钩有用吗?
将你当前的hooks内容替换为像
这样的哑坯
commit.jenkins = echo Commit hook here
incoming.jenkins = echo Incoming hook here
和测试挂钩(在 控制台 中以获得更好的可见性)通过执行提交到 repo 添加挂钩并拉|推到它|解绑任何东西。如果你会看到钩子输出——它们是可用的
- Jenkins 集成有效吗?
提交回购协议后,您可以手动执行挂钩任务:运行 wget -q -O /dev/null ...
并在 Jenkins 中检查结果
我是这个持续集成的新手。我想使用 Jenkins 作为我的 CI 系统,但每次有新系统时我都无法让它拉取构建。
使用 mercurial 的插件,我能够连接到我的存储库并正常拉取我的构建,但我不希望 Jenkins 继续轮询,我希望它仅在有新构建时才更新构建。在插件的维基上,我发现了这个:
As of version 1.38 it's possible to trigger builds using push notifications instead of polling. In your repository's .hg/hgrc file add:
[hooks] commit.jenkins = wget -q -O /dev/null <jenkins root>/mercurial/notifyCommit?url=<repository remote url> incoming.jenkins = wget -q -O /dev/null <jenkins root>/mercurial/notifyCommit?url=<repository remote url>
现在我将 Jenkis 保留在本地,所以我在我的 hgrc 文件中使用了这个:
commit.jenkins = wget -q -O /dev/null http://localhost:8080/mercurial/notifyCommit?url=<my repository remote url>
incoming.jenkins = wget -q -O /dev/null http://localhost:8080/mercurial/notifyCommit?url=<my repository remote url>
但是构建没有被触发。有人可以帮助我吗?
[更新]
我没有注意 wget 命令,它在 windows 上不存在。安装了它,它仍然是一样的。 Jenkins 没有拉动构建。
- 您必须在 PATH 上安装 wget(我会推荐 GOW 的本机端口,而不是 Cygwin - 或 Win10 中的 Bash)
- 您的挂钩必须处于工作状态
wget ...
必须产生预期的结果
你有三个现在有两个可能的故障点并且必须独立测试所有
- 我的挂钩有用吗?
将你当前的hooks内容替换为像
这样的哑坯 commit.jenkins = echo Commit hook here
incoming.jenkins = echo Incoming hook here
和测试挂钩(在 控制台 中以获得更好的可见性)通过执行提交到 repo 添加挂钩并拉|推到它|解绑任何东西。如果你会看到钩子输出——它们是可用的
- Jenkins 集成有效吗?
提交回购协议后,您可以手动执行挂钩任务:运行 wget -q -O /dev/null ...
并在 Jenkins 中检查结果