Azure devops 如何解决工件的发布管道部署问题?
我正在使用Azure DevOps REST API创建发布管道,并通过编程方式进行部署。触发部署API后,它会启动发行版,但无法下载工件。在artifact部分,我配置了azurerepos以在代理中下载代码。我得到以下错误 [错误1] TF401019:名称或标识符为21的Git存储库不存在,或者您没有所执行操作的权限 尝试 数字21是我尝试完成这项任务的次数。我不知道出了什么问题 为了创建发行版,我在请求正文中使用了以下详细信息Azure devops 如何解决工件的发布管道部署问题?,azure-devops,azure-pipelines,azure-pipelines-release-pipeline,azure-devops-rest-api,azure-repos,Azure Devops,Azure Pipelines,Azure Pipelines Release Pipeline,Azure Devops Rest Api,Azure Repos,我正在使用Azure DevOps REST API创建发布管道,并通过编程方式进行部署。触发部署API后,它会启动发行版,但无法下载工件。在artifact部分,我配置了azurerepos以在代理中下载代码。我得到以下错误 [错误1] TF401019:名称或标识符为21的Git存储库不存在,或者您没有所执行操作的权限 尝试 数字21是我尝试完成这项任务的次数。我不知道出了什么问题 为了创建发行版,我在请求正文中使用了以下详细信息 "definitionId": String(release
"definitionId": String(release_definition_id),
"artifacts": [{
"alias": releaseAlias,
"instanceReference": {
"definitionId": release_definition_id,
"id": buildId,
"sourceRepositoryId": azureRepoId,
"sourceRepositoryType": "TfsGit",
"sourceBranch": "master",
"sourceVersion": azureRepoCommitId
}
}]
创建发行版时,它没有指向正确的存储库id。但我已在发行版定义中提供了所有正确的详细信息。尝试使用以下格式:
{
"definitionId": 11,
"artifacts": [
{
"alias": "_BSC",
"instanceReference": {
"sourceBranch": "master",
"sourceRepositoryId": "ee63d8d0-xxx-0bc08b6712be",
"sourceRepositoryType": "TfsGit",
"id": "34a0883b8c-xxxxx-b46c03958b0"
}
}
]
}
上述定义的关键点:
alias
:如您所述,您在工件部分设置了Azure Repos
。此处,此别名值应为您的repos别名之一。例如,我的回购名称是BSC
,因此我的回购别名是\u BSC
id
:将定义的sourceVersion
更改为id
。然后将提交id
放在这里 你能分享整个json/脚本吗?@shaykibaramczyk这是创建发布的完整请求主体。我是否缺少任何配置?谢谢@Merlin Liang-MSFT。我在官方文档中遵循这个官方文档,他们提到为id
属性提供buildId
值。在您的回答之后,我把它弄清楚并替换为我的提交id。它按预期工作。@kumareshbabons。医生似乎给出了令人困惑的方向。与您分享我在此类api配置方面的经验。只需从UI执行相同的操作,然后检查F12中的api记录。它永远不会让你犯错,哈:-)但不管怎样,知道它现在很好用真是太棒了。