我正在 Azure DevOps Pipelines 中使用 yaml 管道,我发现它们有两个特定的触发键 trigger
和 pr
。
我希望对其进行设置,以便我必须运行测试和安全检查的一些管道仅在创建(或附加)功能分支或错误修复分支上的 PR 时运行,而不是在它们只是推送功能或还没有 PR 的错误修复分支。
这是我的 pr
键:
pr:
branches:
include:
- bugfix/*
- feature/*
paths:
include:
- Source/Frontend/*
这是用于运行测试、linting 和覆盖的 js 前端管道,因此我将其限制为仅对包含前端代码的文件夹进行更改。
为了实现上述目标,我该如何设置trigger
键?
我尝试通过在 yaml 文件中排除 trigger
键来将其保留为默认值,但这只会获取任何文件夹中的每个提交。我也尝试过 trigger: none
但这似乎根本阻止了它的运行。我也尝试过让 trigger
键与 pr
键相同,但是当我创建 PR 时,它不会被触发。
我已确保 Azure DevOps 中的触发器覆盖已关闭,因此它应该会关闭 yaml 中的任何内容。
最佳答案
事实证明我的问题有两个。
@Hugh Lin - MSFT 提供了一些帮助,但阻止其工作的原因如下:
- 我认为 pr 键中包含的分支是 PR 的来源,不会合并到其中,因此我将其从
bugfix/*
和feature/*
更改为只是开发
。 - 管道yaml仅存在于develop分支中,并且不存在于develop分支中。
关于azure - 如何让 Azure Devops Pipelines 由 Prs 触发但不由其他提交触发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62780020/