[英]jenkins SCM checkout poll issue with multiple repo
我有一个 Jenkins 工作,我正在检查 2 个回购协议,第一个回购协议“dev”包含源代码和 Jenkinsfile,这个回购协议是在 Jenkins UI 中配置的,同时启用了 PollScm。 第二个回购是“devops”,我在 groovy 脚本声明管道中使用稀疏签出检查这个回购。
stage('Checkout DevopsScripts') {
steps {
script{
dir('devops'){
def scmVar = checkout([$class: 'GitSCM', \
branches: [[name: '*/master']], \
doGenerateSubmoduleConfigurations: false, \
extensions: [[$class: 'SparseCheckoutPaths', sparseCheckoutPaths:[[$class:'SparseCheckoutPath', path:'Scripts/testScript/']]]], \
submoduleCfg: [], \
userRemoteConfigs: [[credentialsId: 'XXXXXXX', url: "https://github.com/org/devops.git"]], \
poll: false, \
changelog: false
])
}
}
}
}
现在我希望 PollScm 只发生在“dev”repo 中发生的提交,PollScm 应该忽略“devops”repo 中发生的提交。 但即使启用 poll: false Jenkins 作业也会触发任一回购中发生的任何提交。 我滚动浏览了文档“https://plugins.jenkins.io/workflow-scm-step/”,上面写着“您可以指定轮询:false 以禁用对 SCM 结帐的轮询”,这在我的案例中没有发生。 Jenkins 中是否存在与此问题相关的错误,或者我在这里遗漏了任何内容。
这是 Jenkins 中的一个已知错误,截至 2022 年 11 月 23 日尚未修复。 请参阅错误跟踪器上的 Jenkins-60757 :““poll: false”对 scm(和 git)管道步骤没有影响”。
所以,基本上poll: false
标志现在不起作用。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.