![](/img/trans.png)
[英]Jenkinsfile: how to checkout multiple branch sources in multibranch pipeline?
[英]How to disable branch in Multibranch pipeline with Jenkinsfile
我在Jenkins有一个Multi分支管道项目。 我想在管道项目中列出一个分支时禁用它。 我可以添加一个例外来超越scm触发。 但我想禁用所有触发,包括手动触发。 如果我在为分支创建的作业中的“构建触发器”下使用“禁用此项目”,则在重新加载页面时不会选择该选项(没有可用于单个分支管道的保存/应用按钮)。 它只保留在Jenkinsfile中配置的后续配置。
pipelineTriggers([
snapshotDependencies(),
]),
有没有办法在Jenkinsfile中指定“禁用此项目”
没错, 您无法从Jenkins Job禁用项目,因为多分支管道无法控制从作业更改设置 。
阻止你的分支建立的两种方法。
1) 禁用分支
要控制设置,请转到PROJECT(要修改设置的项目)>配置>项目(启用高级设置)
在“排除分支”中输入分支并保存设置。
2) 重命名Jenkinsfile
如果您无法控制项目设置,则可以轻松地在项目/分支中重命名Jenkins文件 。
如果分支/项目中包含“Jenkinsfile”,则此配置将定义为触发构建。 因此,重命名它不会触发构建。
希望这可以帮助..
更新 :AFAIK, 您无法从Jenkisfile禁用该项目 ,但作为解决方法,您可以按如下方式配置cronjob:
properties([pipelineTriggers([cron('')])])
如果cron中没有配置,则构建将根本不会触发。
你可以这样做:
stages {
stage('Build') {
when {
not {
branch 'master'
}
}
steps {
...
}
}
}
这与完全不运行管道并不完全相同,但至少,它运行得非常快,并且实际上并没有进行构建,这对于让它不会失败很有用 - 比方说,如果你使用的是maven / gitflow模式,其中主分支不应该多次构建,因为部署将失败...
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.