Azure Devops - 在 Pull Request 而非 Push 上触发管道?
Azure Devops - trigger pipeline on Pull Request but not Push?
我有一个 ADO git 存储库,其中包含基于 YAML 的构建管道,可构建 docker 图像,运行s 使用 Docker Compose 进行一些测试,然后将图像和舵图推送到 ACR。
我也希望在 PR 中包含 build/test 部分 运行。我创建了第二个管道,它只是正常构建的前半部分,并将其指定为分支的构建验证管道。
但是,我似乎无法正确设置触发器。如果我在测试管道中有 trigger: none
,它永远不会触发。如果我有分支名称,它也会 运行 与正常的构建管道合并。这应该如何工作?文档定义了所有单独的部分,但没有真正定义它们如何交互!
我是否应该有一个多级管道并以某种方式使用它来进行验证? (目前只有一个阶段的一项工作的 4 个步骤)。
我希望避免多次构建相同的图像,或将未经测试的图像存储在构建代理之外的任何地方。
我使用以下配置让它工作:
在我的 YAML 管道中,我设置了 trigger: none
.
在分支的分支策略中,我创建了一个带有自动触发器的构建验证:
然后我创建一个到该分支的拉取请求,管道 运行s 自动:
有两种可能的错误:
- 构建验证中选择了“手动”触发器,因此管道需要运行手动而不是自动触发。
- 设置了分支策略的分支应该和pull request的目标分支是同一个分支。
我有一个 ADO git 存储库,其中包含基于 YAML 的构建管道,可构建 docker 图像,运行s 使用 Docker Compose 进行一些测试,然后将图像和舵图推送到 ACR。
我也希望在 PR 中包含 build/test 部分 运行。我创建了第二个管道,它只是正常构建的前半部分,并将其指定为分支的构建验证管道。
但是,我似乎无法正确设置触发器。如果我在测试管道中有 trigger: none
,它永远不会触发。如果我有分支名称,它也会 运行 与正常的构建管道合并。这应该如何工作?文档定义了所有单独的部分,但没有真正定义它们如何交互!
我是否应该有一个多级管道并以某种方式使用它来进行验证? (目前只有一个阶段的一项工作的 4 个步骤)。
我希望避免多次构建相同的图像,或将未经测试的图像存储在构建代理之外的任何地方。
我使用以下配置让它工作:
在我的 YAML 管道中,我设置了 trigger: none
.
在分支的分支策略中,我创建了一个带有自动触发器的构建验证:
然后我创建一个到该分支的拉取请求,管道 运行s 自动:
有两种可能的错误:
- 构建验证中选择了“手动”触发器,因此管道需要运行手动而不是自动触发。
- 设置了分支策略的分支应该和pull request的目标分支是同一个分支。