【问题标题】:Azure DevOps Trigger: determining which trigger path was triggeredAzure DevOps 触发器:确定触发了哪个触发器路径
【发布时间】:2021-07-14 02:56:53
【问题描述】:
如果我的 yaml 文件定义了多个触发器路径,是否可以确定触发了哪些触发器?
例子:
trigger:
branches:
include:
- '*'
paths:
include:
- folder1/documentation1.xml
- src
在这种特殊情况下,如果我知道 folder1/documentation1.xml 已更改/触发,我希望执行特定的作业/步骤/任务。
【问题讨论】:
标签:
azure-devops
yaml
azure-pipelines
azure-pipelines-yaml
【解决方案1】:
没有开箱即用的此类功能。您可以安装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 命令检查更改的文件。