0

我正在使用 Azure DevOps REST API 创建发布管道并以编程方式进行部署。触发部署 API 后,它开始发布,但无法下载工件。在工件部分,我已将 Azure Repos 配置为下载代理中的代码。我收到以下错误。

[错误 1] TF401019:名称或标识符为 21 的 Git 存储库不存在,或者您没有尝试执行操作的权限。

数字 21 是我尝试完成这项任务的次数。我不知道出了什么问题。

为了创建发布,我在请求正文中使用了以下详细信息。

"definitionId": String(release_definition_id),
"artifacts": [{
     "alias": releaseAlias,
     "instanceReference": {
         "definitionId": release_definition_id,
         "id": buildId,
         "sourceRepositoryId": azureRepoId,
         "sourceRepositoryType": "TfsGit",
         "sourceBranch": "master",
         "sourceVersion": azureRepoCommitId
      }
 }]

创建版本时,它没有指向正确的存储库 ID。但我在发布定义中提供了所有正确的细节。

4

1 回答 1

1

尝试以下格式:

{
  "definitionId": 11,
  "artifacts": [
    {
      "alias": "_BSC",
      "instanceReference": {
        "sourceBranch": "master",
        "sourceRepositoryId": "ee63d8d0-xxx-0bc08b6712be",
        "sourceRepositoryType": "TfsGit",
        "id": "34a0883b8c-xxxxx-b46c03958b0"
      }
    }
  ]
}

上述定义的要点:

alias:正如您所描述的,您设置了Azure Reposin artifact 部分。这里这个别名值应该是你的repos alias. 例如,我的仓库名称是BSC,所以我的仓库别名是_BSC

id: 将sourceVersion您的定义更改为id. 然后放在commit id这里。

于 2020-03-06T02:24:35.963 回答