使用 VSTS REST API 创建带有标题的版本

Create release with title using VSTS REST API

我正在使用版本 4.1-preview.6 来调用 VSTS 的发布 API,看起来每当它创建一个新版本时,发布的标题都不是预期的标题,"Release-#" 而是一个负数,如“-1”。我正在使用 PowerShell。我可以在 Web UI 中看到 Release 名称格式是 $(Build.BuildNumber)-$(rev:r).

  1. 是否有不同版本的 REST API 可以修复此问题?
  2. 或者 body 中是否缺少我的参数?

请求 body(不包括之前在脚本和函数中为 Invoke-RestMethod 设置的变量):

    $uri = "https://$($accountName).vsrm.visualstudio.com/$($projectName)/_apis/release/releases?api-version=4.1-preview.6"

    $body = @{
        "definitionId" = "$($releaseDefinitionId)"
        "description" = "Creating automated release"
    }
    $body.Add("artifacts", @())
    $artifact = @{
        "alias" = "$($buildDefinitionName)"
        "instanceReference" = @{
            "id" = "$($buildId)"
            "name" = $null
        }
    }
    $body.artifacts += $artifact

    $jsonBody = $body | ConvertTo-Json -Depth 5

    $response = Invoke-RestCommand -uri $uri -commandType "POST" -jsonBody $jsonBody -personalAccessToken $personalAccessToken

回复:

id                         : 4
name                       : -4
status                     : active
createdOn                  : 2018-06-12T04:27:18.237Z
modifiedOn                 : 2018-06-12T04:27:18.237Z

您需要检查您在定义中如何定义版本名称格式: