Jenkins Mercurial 插件未检测到更改
Jenkins Mercurial plugin does not detect changes
当我的管道轮询 Mercurial 存储库的更改时,它没有检测到任何更改,也没有触发新构建。
根据插件文档,我设置了一个推送挂钩来触发轮询,效果很好,但无法检测到更改。我得到的只是
Mercurial Polling Log
Started on May 19, 2018 11:58:10 PM
no polling baseline in /var/lib/jenkins/workspace/test-repo on
Done. Took 0 ms
No changes
我正在与:
- 詹金斯 v2.107.3
- Mercurial 插件 v2.3
我刚刚创建了一个测试 mercurial 存储库,其中包含一些具有随机内容的文件来测试设置,以及一个 jenkins 管道 'polling-test' 检查存储库并回显 "hello world"。
pipeline {
agent any
stages {
stage('Checkout') {
steps {
checkout changelog: true,
poll: true,
scm: [
$class: 'MercurialSCM',
credentialsId: 'jenkins',
revision: 'default',
revisionType: 'BRANCH',
source: 'ssh://hg-user@hg-server/test-repo'
]
}
}
stage('Tests') {
steps {
echo "Hello World"
}
}
}
}
还检查了 Poll SCM 选项,并且没有任何计划。
我修改了 repo,做了类似的事情:
$ echo "foo" > bar
$ hg add bar
$ hg commit -m "change"
$ hg push
然后用
触发轮询
$ curl "https://jenkins-server/mercurial/notifyCommit?url=ssh://hg-user@hg-server/test-repo"
Scheduled polling of polling-test
轮询日志显示已触发,但未发现任何变化。
我做错了什么?如何检测变化?
通过在 "global tools" 中添加 Mercurial 安装,将管道脚本更改为
,我能够使轮询正常工作
pipeline {
agent any
stages {
stage('Checkout') {
steps {
checkout([$class: 'MercurialSCM', credentialsId: 'jenkins', installation: 'Mercurial', source: 'ssh://hg-user@hg-server/test-repo'])
}
}
stage('Tests') {
steps {
echo "Hello World"
}
}
}
}
同时选中轮询选项,当然 运行 管道第一次手动获取参考变更集。
当我的管道轮询 Mercurial 存储库的更改时,它没有检测到任何更改,也没有触发新构建。
根据插件文档,我设置了一个推送挂钩来触发轮询,效果很好,但无法检测到更改。我得到的只是
Mercurial Polling Log
Started on May 19, 2018 11:58:10 PM
no polling baseline in /var/lib/jenkins/workspace/test-repo on
Done. Took 0 ms
No changes
我正在与: - 詹金斯 v2.107.3 - Mercurial 插件 v2.3
我刚刚创建了一个测试 mercurial 存储库,其中包含一些具有随机内容的文件来测试设置,以及一个 jenkins 管道 'polling-test' 检查存储库并回显 "hello world"。
pipeline {
agent any
stages {
stage('Checkout') {
steps {
checkout changelog: true,
poll: true,
scm: [
$class: 'MercurialSCM',
credentialsId: 'jenkins',
revision: 'default',
revisionType: 'BRANCH',
source: 'ssh://hg-user@hg-server/test-repo'
]
}
}
stage('Tests') {
steps {
echo "Hello World"
}
}
}
}
还检查了 Poll SCM 选项,并且没有任何计划。
我修改了 repo,做了类似的事情:
$ echo "foo" > bar
$ hg add bar
$ hg commit -m "change"
$ hg push
然后用
触发轮询$ curl "https://jenkins-server/mercurial/notifyCommit?url=ssh://hg-user@hg-server/test-repo"
Scheduled polling of polling-test
轮询日志显示已触发,但未发现任何变化。
我做错了什么?如何检测变化?
通过在 "global tools" 中添加 Mercurial 安装,将管道脚本更改为
,我能够使轮询正常工作pipeline {
agent any
stages {
stage('Checkout') {
steps {
checkout([$class: 'MercurialSCM', credentialsId: 'jenkins', installation: 'Mercurial', source: 'ssh://hg-user@hg-server/test-repo'])
}
}
stage('Tests') {
steps {
echo "Hello World"
}
}
}
}
同时选中轮询选项,当然 运行 管道第一次手动获取参考变更集。