通过 REST 使用 Visual Studio Team Services 部署 Team City Builds

Deploying Team City Builds with Visual Studio Team Services via REST

我们最近实施了 Team City,我的任务是让它与我们现有的 VSTS 环境一起工作。理想情况下,我们希望构建 Team City 并发布 VSTS。我们已经将 Team City 生成的工件放在 VSTS 中,但是您无法按照此处的本文触发 CI 关闭它们; https://www.visualstudio.com/en-us/docs/build/concepts/definitions/release/artifacts

我想做的是让 Team City 通过 VSTS REST API 触发发布。我已按照此处 https://www.visualstudio.com/en-us/docs/integrate/api/rm/releases 的文档进行操作,但我在让 VSTS 使用 Team City 工件时遇到了问题。无论我尝试什么,我都会收到以下错误:"VS402962: No artifact version id is specified corresponding to artifact source 'TeamCity Build'. Specify a valid value and try again."

这是我的 JSON REST 调用正文的样子:

{
  "definitionId": 13,
  "description": "Build from TeamCity",
  "artifacts": [
    {
      "alias": "Build Dev (TeamCity)",
      "instanceReference": {
        "id": 160,
        "name": "160"
      }
    }
  ]
}

根据这个问题,我尝试过使用和不使用名称: 但我没有任何运气。

我找到问题了。您需要从别名中删除 (Team City),因为它不是 Artifact 别名的一部分。