如何在 Azure 管道中为特定分支启用批处理

How to enable batching in azure pipeline for specific branches

在创建管道时,我想为特定分支启用批处理,而不是为其他分支启用批处理,是否有在 Microsoft Azure 管道中这样做的方法?

如果我启用 batch:true 它会在所有分支上运行,如果我删除它,它对任何分支都不起作用

我喜欢

trigger:
    batch: true
    branches:
        include:
            - master
            - A*
            - B*
            - C*
            - D*
            - TEST
            - Develop

我不想只对 master 分支进行批处理,而是希望对其他分支进行批处理,这是否可以在不创建单独的管道 yml 的情况下实现,只是为了在同一管道中启用 batch:true

在 Azure DevOps 服务中,yaml 构建只是针对当前分支触发和批处理。

例如:

如果我们在 master 分支中创建 YAML 构建,它将在 master 分支中创建 azure-pipelines.yml 文件。编辑 YAML 构建定义,例如:

trigger:
    batch: true
    branches:
        include:
            - master
            - TEST

切换到TEST分支,编辑azure-pipelines.yml文件,如:

trigger:
    batch: true
    branches:
        include:
            - master

然后在 TEST 分支中推送代码,它不会触发构建并排队新构建。

I want to enable batching for specific branches and not so for other branches,

作为解决方法,我们可以切换分支、编辑 YAML 文件并为特定分支启用批处理。这不会影响其他分支。

注意:由于不同分支的文件不一样,所以我们创建PR

时文件azure-pipelines.yml会发生冲突

更新

感谢@Hiteshdua1 的分享

解决方案是创建不同的 yaml 构建定义,然后我们可以为特定分支启用批处理,而不是为其他分支启用批处理。