Azure DevOps API 版本定义

Zoe*_*kay 1 azure-devops azure-devops-rest-api

尝试从其他项目复制发布模板时出现以下错误

“VS402982:未为‘PROJECT-ENV’阶段设置保留策略。不推荐使用发布管道级别的保留策略。

{
    "id":  8,
     "name":  "PROJECT-ENV",
     "rank":  1,
     "owner":  "@{displayName=Zoe MacKay;  _links=; id=; uniqueName=Zoe.MacKay;imageUrl=https://dev.azure.com/incrementalgroup/_apis/GraphProfile/MemberAvatars/}",
     "variables":  "",
     "variableGroups":  "",
     "preDeployApprovals":  "@{approvals=System.Object[]; approvalOptions=}",
     "deployStep":  "@{id=27}",
     "postDeployApprovals":  "@{approvals=System.Object[]; approvalOptions=}",
     "deployPhases":  "",
     "environmentOptions":  "@{emailNotificationType=OnlyOnFailure; emailRecipients=release.environment.owner;release.creator; skipArtifactsDownload=False; timeoutInMinutes=0; enableAccessToken=False; publishDeploymentStatus=True; badgeEnabled=False; autoLinkWorkItems=False; pullRequestDeploymentEnabled=False}",
     "demands":  "",
     "conditions":  "",
     "executionPolicy":  "@{concurrencyCount=1; queueDepthCount=0}",
     "schedules":  "",
     "currentRelease":  "@{id=70; url=https://vsrm.dev.azure.com/; _links=}",
     "retentionPolicy":  "@{daysToKeep=30; releasesToKeep=3; retainBuild=True}",
     "processParameters":  "",
     "properties":  "",
     "preDeploymentGates":  "@{id=0; gatesOptions=; gates=System.Object[]}",
     "postDeploymentGates":  "@{id=0; approvals:[]; gatesOptions=; gates=System.Object[]}",
     "environmentTriggers":  ""
 },
Run Code Online (Sandbox Code Playgroud)

从当前版本复制。

小智 5

您的 JSON 无效。您需要确保正确展开所有嵌套值。例如:

"retentionPolicy":  "@{daysToKeep=30; releasesToKeep=3; retainBuild=True}",
Run Code Online (Sandbox Code Playgroud)

应该

"retentionPolicy": {
          "daysToKeep" : 30, 
          "releasesToKeep": 3,
          "retainBuild": true
         },
Run Code Online (Sandbox Code Playgroud)

如果您使用 PowerShell 创建此 JSON,请确保指定 Depth 参数,以便正确扩展每个值。