首页 > 解决方案 > 如何从 Azure DevOps 中的 YAML 管道获取阶段结果

问题描述

到目前为止,我一直在使用Azure DevOps REST Api从 Azure DevOps 中的版本中获取数据以进行报告。显然,这将随着如何使用 CI/CD --> YAML 和 Multi-Stage-Pipeline(当前预览)的新方式而改变。在这种情况下,不推荐使用构建和发布策略,并且将所有内容定义为管道并细分为分阶段(构建阶段、部署阶段 1、部署阶段 2,...)。
我尝试通过构建列表方法接收数据,但是这些数据是有限的,并且我缺少一些重要信息,例如“舞台是否成功”。

是否有人已经体验过 YAML Pipelines 和 Azure DevOps REST Api 的组合?有没有办法获取完整的数据(如经典发布策略)?还是它目前正在开发中,我必须耐心等待?

提前致谢!

标签: azure-devopsyamlazure-devops-rest-apimultistage-pipeline

解决方案


如何从 Azure DevOps 中的 YAML 管道获取阶段结果

对于这个问题,您需要使用Status - Get rest api。

GET https://dev.azure.com/{organization}/{project}/_apis/build/status/{definition}?api-version=5.1-preview.1

此 api 可以获取定义的构建状态,可选择范围为特定分支、阶段、作业和配置。

这是我对邮递员的测试: 在此处输入图像描述 在此处输入图像描述

更新第二种方式:

您可以F12在浏览器中按然后选择Network捕获请求以获取阶段结果。您可以从响应正文中捕获结果。但是不同的阶段结果用不同的数字表示,即0->完成,5->取消等。

在此处输入图像描述 在此处输入图像描述


推荐阅读