Azure DevOps 触发器:确定触发了哪个触发器路径

Azure DevOps Trigger: determining which trigger path was triggered

如果我的 yaml 文件定义了多个触发器路径,是否可以确定触发了哪个触发器?

示例:

trigger:
  branches: 
    include:
    - '*'
  paths:
    include:
    - folder1/documentation1.xml
    - src

在这种特殊情况下,如果我知道 folder1/documentation1.xml 是 changed/triggered,我希望执行特定的 job/step/task。

没有开箱即用的此类功能。您可以安装 Changed files 自定义构建任务:

jobs: 
  - job: check
    displayName: Check changed files
    pool:
        vmImage: ubuntu-latest
    steps:
      - task: ChangedFiles@1
        name: CheckChanges
        inputs:
          rules: folder1/documentation1.xml
          variable: HasChanged

  - job: build
    displayName: Build only when code changes
    dependsOn: check
    condition: eq(dependencies.check.outputs['CheckChanges.HasChanged'], 'true')
    steps:
        - # Add your build steps here

或者编写您自己的脚本,通过 git diff 命令检查更改的文件。