PR 合并后如何限制 Azure DevOps YAML 管道中的关联工作项?

问题描述

我一直在将 Azure DevOps 中的构建/发布管道迁移到统一的 YAML 格式。一旦 PR 合并到主分支,除了与 CI 构建关联的工作项之外,一切都按预期工作。这是工作流程:

  1. 开发人员提出 PR 以将更改从功能分支合并到主分支
  2. PR 具有针对测试环境执行 YAML 管道的构建策略
  3. PR 完成,feature 分支合并到 master 分支
  4. YAML 管道具有用于部署到更高环境的 CI 触发器

对于第 2 步,触发构建显示与 PR 关联的任何工作项:

enter image description here

但是,对于第 4 步,触发的 CI 构建会列出主分支中的所有工作项,而不仅仅是与 PR 相关的那些:

enter image description here

有没有办法只将与 PR 相关联的工作项与 CI 构建相关联,一旦功能分支合并到主分支,就会触发 CI 构建?

解决方法

我可以重现这个问题,我发现了一个类似的票,他们已经报告了,你可以关注这个ticket以获得最新消息。

如果构建状态为 queue 或 running,那么我们创建一个新的构建,新的构建将包含构建链接之前的工作项。这就是为什么第 4 步触发的 CI 构建列出了 master 分支中的所有工作项,而不仅仅是那些与 PR 相关的工作项。

如果所有构建完成,那么我们完成拉取请求以触发 CI 构建,它将与预期的工作项相关联。

当所有构建完成后,我合并 PR 以触发 CI 构建,它只包含拉取请求链接工作项。

测试结果

enter image description here