我正在使用AzureDevOps构建和发布管道,直到使用Octopus部署了内部测试阶段和所有生产阶段为止。 Azure的第一阶段已配置为在Octopus中创建发行版,并在工作项中成功显示了对内部测试的部署。见下图
现在,我希望我们在章鱼中推广到后期生产阶段的所有部署也都显示在这里,或者到章鱼URL的链接将您带到相关阶段。
请指导可能吗?
Octopus部署url不能显示在azure devops工作项的“部署,开发和相关工作”字段中。
我对八达通了解不多,但是如果有一个工具或章鱼api可以从与发行版中包含的软件包相关联的构建信息中获取azure devops工作项ID,则可以使用azure devops rest api添加一个在天蓝色的devops工作项中超链接到章鱼url。您可以在链接选项卡中找到超链接,如下所示。
第一步是将您的天蓝色devops与Octopus集成在一起。请检查步骤here。
然后配置您的azure devops管道以将包含工作项的构建信息推送到Octopus。请检查章鱼文档Azure DevOps work item tracking integration。
然后添加script step在章鱼脚本下运行,以使用章鱼url的超链接更新天蓝色的工作项。 (在脚本下运行之前,您需要在章鱼中获取工作项的ID)
$url= "https://dev.azure.com/{azure devops organization}/{azure devops organization project}/_apis/wit/workitems/{workitem id}?api-version=5.1"
$body='[{
"op": "add",
"path": "/relations/-",
"value": {
"rel": "Hyperlink",
"url": "octopus url"
}
}]'
$wicrpat ="Personal access token from azure devops"
$base64AuthInfo= [System.Convert]::ToBase64String([System.Text.Encoding]::ASCII.GetBytes(":$($wicrpat)"))
Invoke-RestMethod -Uri $url -Headers @{authorization = "Basic $base64AuthInfo"} -ContentType "application/json-patch+json" -Method patch -Body $body
请检查the steps here以获取个人访问令牌。
请检查here了解有关工作项更新api的更多信息。
希望以上帮助!