YAML配置glob路径如何添加指定项目排除规则(Azure Pipelines场景)
操作方法
Azure Pipelines 的文件匹配基于 minimatch 规则实现,支持通过!前缀标记需要排除的路径,你可以直接把原有变量修改为多行匹配规则的格式:
unitTestsGlob: | $(Build.SourcesDirectory)\**\*Tests\*.csproj !**\Api.Tests.RestSharp\*.csproj
规则说明
- 第一行保留你原本的匹配逻辑,会抓取所有路径下名称以
Tests结尾的文件夹内的csproj项目文件 - 第二行开头的
!代表排除匹配项,这里的规则会匹配所有路径下Api.Tests.RestSharp文件夹内的csproj文件,刚好对应你要排除的测试项目 - 规则里的路径分隔符不用特意修改,Windows代理下的反斜杠、Linux/macOS代理下的正斜杠Azure Pipelines都能自动适配,如果要做跨代理兼容,也可以统一把反斜杠替换为正斜杠
- 如果后续需要排除更多特定项目,直接在变量末尾追加新的
!开头的排除规则即可
注意:规则顺序不能调换,必须先写包含规则、后写排除规则,minimatch按顺序解析规则,顺序颠倒会导致排除逻辑失效。
内容的提问来源于stack exchange,提问作者atamata
相关产品推荐
相关产品推荐

