Multibranch Jenkins Pipeline - 限制分支构建为1

时间:2017-11-07 16:19:19

标签: jenkins-pipeline multibranch-pipeline

是否可以将Multibranch管道限制为一次只构建一个分支?

我有一个管道,其中包含检查,构建,测试和部署的步骤。部署阶段会在特定计算机上执行某些复制/执行文件,这些文件无法与其他分支作业并行完成。

我试过了:

properties([disableConcurrentBuilds()])

但这只会在分支的基础上限制并发性,因此仍然可以并行运行多个分支。

此外,在常规的非管道Jenkins作业中,有一个选项复选框:

"必要时执行并发构建"

Checkbox

但是在multibranch配置中也没有这个功能。

是否有其他配置可以实现这一目标,还是设计出来?

1 个答案:

答案 0 :(得分:3)

在上述情况下,我会使用lockable resources

您可以并行执行所有分支。但是,在任何给定的时间点,只有一个分支将执行锁定步骤。

stage("locked stage") {
  lock("deploy") {

    //deploy steps/copy files here

  } // resource is unlocked.
}