我正在尝试使用 REST API 自动化 Azure DevOps 中的流程。我认为它应该是这样的(至少,这是当前的手动过程):
- fork 存储库
- 使用新 fork 的存储库中的 YAML 文件创建管道
- 以特定方式运行管道
我是 Azure DevOps REST API 的新手,我很难理解我已经做了什么以及应该做什么。
使用 REST API,我似乎能够使用管道端点创建所谓的管道;我确实注意到,如果我想运行它,我必须与其构建定义交互。
此外,查看其他同事编写的代码,似乎(尽管我可能是错的)他们可以通过简单地创建构建定义而不是显式创建管道来实现相同的目的。
这种缺乏理解让我抓狂,所以我希望有人能启发我!
问题
构建定义和管道之间有什么区别和关系?
其他信息,我对使用较旧的发布管道不感兴趣,并且我尝试在 Azure DevOps REST API 文档中找到答案,但无济于事。
最佳答案
如果您想创建管道,您可以使用这两者来完成此操作。然而,区别实际上在于概念上:
- 构建定义是第一个可用流程的一部分,其中包括:构建和发布,其中构建负责构建、测试和发布工件,以便稍后在要部署的版本中使用
- 管道是一种利用 YAML 设计流程来构建/测试/部署代码的新方法
更多信息您可以找到here - Whats the difference between a build pipeline and a release pipeline in Azure DevOps?
例如对于这个管道/构建
https://dev.azure.com/thecodemanual/DevOps%20Manual/_build?definitionId=157
其中定义 ID 为 157
您将在两个端点中获得响应:
https://dev.azure.com/{{organization}}/{{project}}/_apis/build/definitions/157?api-version=5.1
和
https://dev.azure.com/{{organization}}/{{project}}/_apis/pipelines/157?api-version=6.0-preview.1
在这个术语中,管道 id = 构建 id
关于api - Azure DevOps 构建定义和管道之间有什么区别和关系?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65882806/