如何在 Azure DevOps 中构建管道失败时添加相关工作项?

How to add a related work item when the build pipeline fails in Azure DevOps?

我正在尝试设置我的构建管道,如果由于某种原因失败,则创建一个新的工作项。但是,是否可以为这些自动创建的工作项添加一个相关工作项?

现在,我正在手动添加一个相关的用户故事,只是为了让我的 azure board 井然有序,我猜想这个相关的工作也是一个额外的领域,但找不到 these fields 我应该使用它们以及如何在选项选项卡中使用它们。

这是我想要的结果:

我发现 和我有类似的问题,只是缺少关于如何添加相关工作项的这一步。

不过目前暂时不支持在“失败时创建工作项”中直接为创建的工作项添加父工作项,因为相关工作项的信息不存储在字段中,而是存储在关系中.

作为替代方法,您可以创建工作项并通过 REST 为其设置父项 API Work Items - Create

POST https://dev.azure.com/{organization}/{project}/_apis/wit/workitems/${type}?api-version=6.0

这是一个例子:

[
  {
    "op": "add",
    "path": "/fields/System.Title",
    "from": null,
    "value": "SampleTask"
  },
  {
    "op": "add",
    "path": "/relations/-",
    "value": {
      "rel": "System.LinkTypes.Hierarchy-Reverse",
      "url": "https://dev.azure.com/{organization}/{project}/_apis/wit/workItems/{parent work item id}"
    }
  }
]

第二段用于添加parent

有关如何在您的管道中 运行 REST API 的详细信息,请参阅您的

is it possible to add a related work item for these automatically created work items?

恐怕 Pipeline 选项中的 Create work item on failure 选项不支持为新创建的工作项添加相关工作项。

只支持定义工作项的字段。但是父工作项 link 属于 relations.

由于您不想使用 Rest API,我建议您可以使用 Create Work Item 扩展中的创建工作项任务。

然后你可以直接在你的代理工作结束时添加这个任务。

例如:

在此任务中,您可以定义相关的工作项:

然后您可以在任务中设置条件(例如,仅当上一个任务失败时)。

在这种情况下,当管道失败时,它将 运行 任务并创建一个工作(包含父工作项 link)。