如何配置Azure DevOps流水线,修改README.md不触发代理测试?
Azure Pipelines排除README.md变更触发测试的正确配置
你当前的路径排除配置本身没问题,但要注意必须绑定到正确的触发规则才能生效,以下是两种常见场景的完整配置:
1. 完全不让README.md变更触发流水线(含测试)
把路径排除规则放到全局trigger节点下,这样只要变更只涉及README.md,整个流水线都不会启动:
trigger: branches: include: - main # 替换成你的目标分支 paths: exclude: - pipeline/deploy-app-job.yml - '**/README.md'
2. 仅不让README.md变更触发测试阶段(流水线仍可执行其他任务)
如果只是不想跑测试,但其他流水线任务正常执行,可以给测试作业加条件判断,过滤掉仅README.md变更的情况:
jobs: - job: RunTests # 只有当变更文件不包含任何README.md时才执行测试 condition: not(containsValue(variables['Build.ChangedFiles'], '**/README.md')) steps: - script: dotnet test # 替换成你的测试命令 displayName: '执行项目测试'
额外注意点
- 拉取请求触发的场景,要在
pr节点下同步配置路径排除:
pr: branches: include: - main paths: exclude: - '**/README.md'
'**/README.md'的引号不能丢,否则YAML可能会解析错误,导致通配符不生效。- 如果用了
Build.ChangedFiles变量,确保流水线的“检测变更”功能是开启的(默认开启,可在流水线设置中确认)。
内容的提问来源于stack exchange,提问作者newProgrammer.cpp
相关产品推荐
相关产品推荐

