如何仅在Azure DevOps中RepoB合并请求完成时触发流水线
解决方案
你的问题出在全局配置的trigger: - develop——这个规则会让流水线所在仓库的develop分支只要有任何变更就触发流水线,再加上repoB的资源触发器,就导致只要任意仓库的develop分支有变动都会触发。要实现仅在repoB的合并请求完成时触发流水线,按以下步骤修改配置:
- 移除全局的
trigger块:这会避免流水线所在仓库的分支变更触发流水线。 - 保留repoB的资源触发器:确保只有repoB的develop分支变更时才触发流水线。如果要严格限定仅PR合并的场景,还需要在repoB的仓库设置分支保护规则,禁止直接向develop分支推送代码,所有变更必须通过PR合并,这样develop分支的变更就只会来自PR完成操作。
修改后的YAML配置如下:
resources: repositories: - repository: repoA type: git name: sk/repoA ref: refs/heads/develop - repository: repoB type: git name: sk/repoB ref: refs/heads/develop trigger: branches: include: - develop
内容的提问来源于stack exchange,提问作者Saikumar
相关产品推荐
相关产品推荐

