Azure DevOps CI管道触发:如何实现标签的OR条件?
解决方案
要实现标签OR触发,不能重复定义同一个管道别名的资源(这种配置会被识别为AND条件),正确的做法是在单个管道资源的触发器中,使用include列表指定需要触发的标签:
resources: pipelines: - pipeline: MyCIAlias source: Farbrikam-CI trigger: tags: include: - Production - Signed
配置说明
- 使用
include列表时,只要源管道的构建包含列表中任意一个标签,就会触发目标管道,天然实现OR逻辑。 - 你之前重复定义
MyCIAlias管道资源的方式,会被ADO判定为需要同时满足两个资源的触发条件(即同时拥有两个标签),这就是配置无效的原因。
复杂逻辑扩展(可选)
如果需要结合分支与标签的复合逻辑,比如「(Production或Signed标签) AND (main或release分支)」,可以这样配置:
resources: pipelines: - pipeline: MyCIAlias source: Farbrikam-CI trigger: tags: include: - Production - Signed branches: include: - main - release/*
内容的提问来源于stack exchange,提问作者shilpa manda
相关产品推荐
相关产品推荐

