从 运行 中排除目录中特定文件夹的 Azure devops 管道

Exclude Azure devops pipeline from running for certain folder in directory

我在 GitHub 上有一个结构如下的项目:

- lib
    - project-1
    - project-2
- project-3

我有一个构建管道,我只想在对 project-3 进行更改时触发它。我想排除触发此管道的任何其他更改(对 project-1project-2 的更改)。现在我有以下配置文件:

jobs:
  - job: rolling_VS2017_build
    displayName: 'Extensions build'
    pool:
      name: Hosted VS2017
    steps:
      - template: build/sdl-tasks.yml
      - template: build/npm-build-extensions-steps.yml
pr:
    branches: 
      include:
        - '*'
    paths:
      include:
        - project-3/*
      exclude: 
        - '*'

不幸的是,对于任何项目发生更改的拉取请求,仍会触发此管道。我如何编辑 yml 文件以确保管道仅 运行 用于对 project-3 进行更改的拉取请求,而不是 运行 用于任何其他更改?

我已经在我这边测试了你的 yaml 文件,它按预期工作,但它也触发了 CI 构建。请检查管道是否由 CI 或 PR:

触发

并且您可以在您的 yaml 构建中添加以下语法:

trigger:
  - none