如何配置disableConcurrentBuilds使其不作用于Jenkins master分支?
Jenkins Pipeline分支差异化并发构建控制方案
一、实现master分支豁免并发限制
你可以通过条件判断,仅在非master分支启用disableConcurrentBuilds(abortPrevious: true)配置,示例代码如下:
声明式Pipeline示例
pipeline { agent any options { script { // 仅当分支不是master时启用并发构建限制 if (env.BRANCH_NAME != 'master') { disableConcurrentBuilds(abortPrevious: true) } } } stages { stage('Build') { steps { echo "当前构建分支: ${env.BRANCH_NAME}" // 你的构建逻辑 } } } }
脚本式Pipeline示例
if (env.BRANCH_NAME != 'master') { properties([disableConcurrentBuilds(abortPrevious: true)]) } node { stage('Build') { echo "当前构建分支: ${env.BRANCH_NAME}" // 你的构建逻辑 } }
二、disableConcurrentBuilds的文档说明
disableConcurrentBuilds属于Pipeline Basic Steps插件提供的功能,官方语法生成器未详细列出参数的原因是该方法的参数属于插件扩展实现:
- 可在Jenkins后台「插件管理」中找到「Pipeline Basic Steps」插件,查看其内置文档;
- 也可查看该插件的源码仓库,其中包含方法参数(如
abortPrevious)的具体定义和说明。
内容的提问来源于stack exchange,提问作者jsharpe
相关产品推荐
相关产品推荐

