获取 VSTS 发布管道中使用的任务组版本

Get the TaskGroup Version used in a VSTS Release pipeline

在 VSTS 中,我有一个执行任务组的发布管道,这个任务组有不同的版本。

我想做的是每次管道运行时,在我的代码中获取这个值,以详细记录每个部署中使用的版本。另一种选择是将它发送到 blob,然后从那里读取,但第一步是访问管道中使用的版本。

这是我指的版本:

您可以通过 REST API 获取发布管道中使用的任务组版本。详情如下:

  1. 添加任务get release definition REST API

    比如你可以添加一个PowerShell任务来请求REST API:

    GET https://{accountName}.vsrm.visualstudio.com/{project}/_apis/release/definitions/{definitionId}?api-version=4.1-preview.3
    
  2. 从 REST 的响应中过滤任务组 API 并获取任务组的版本

    从REST的响应API,可以从workflowTasks对象中搜索到任务组,并得到对应的任务组的版本。

    如下例,发布管道中使用的任务组:复制和发布版本为2.*

    {
        "taskId": "0bddeb71-4b7f-46b9-8264-8f2b4a1010b7",
        "version": "2.*",
        "name": "Task group: copy and publish ",
        "refName": "",
        "enabled": true,
        "alwaysRun": true,
        "continueOnError": true,
        "timeoutInMinutes": 0,
        "definitionType": "metaTask",
        "overrideInputs": {},
        "condition": "succeededOrFailed()",
        "inputs": {}
    }
    

此外,您还可以添加一个user voice来建议显示任务组在build/release管道中使用的版本。