获取VSTS发布管道中使用的TaskGroup版本

时间:2018-07-20 23:17:00

标签: azure azure-devops continuous-deployment azure-pipelines-release-pipeline

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

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

这是我指的版本:

enter image description here

1 个答案:

答案 0 :(得分:2)

您可以获取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来建议显示在构建/发布管道中使用的任务组的版本。