我正在尝试以编程方式创建新的构建管道。我正在为此操作寻找Azure DevOps REST API。我没有使用REST API创建管道的正确示例。
请指教。
如何使用Azure DevOps REST API创建新的构建管道?
要创建新的构建管道,我们可以使用REST API定义-Create:
POST https://dev.azure.com/{organization}/{project}/_apis/build/definitions?api-version=5.0
但是我们需要在请求正文中提供太多信息,这将是一个大项目并且容易出错。这也是文档未在其中提供示例请求正文的原因。
要解决此问题,通常我们将使用REST API定义-Get从模板管道中获取响应主体:
GET https://dev.azure.com/{organization}/{project}/_apis/build/definitions/{definitionId}?api-version=5.0
然后,我们只需要通过修改响应主体来更新相应的属性。
现在,我们为新管道获得了新的请求主体,我们可以将其与REST APIDefinitions - Create
一起使用以创建新管道。
您可以检查此线程以获取更多详细信息。
更新:
创建构建定义之后,是否会创建azure-pipelines.yml文件并像Azure Repos一样存储在存储库中?
不,如果您想使用rest api创建YAML类型的构建定义,它将不会为我们的仓库创建相应的yaml文件,因为该APIDefinitions - Create
仅将请求正文发送到管道中,而不会操作我们的仓库。当前,它支持创建链接到Git存储库中的YAML文件的构建定义。如果要自动创建yaml,则可以检查REST API Pushes-Create。
这应该是Definitions - Create
需要改进REST API以支持YAML管道的地方。您可以在UserVoice网站(https://developercommunity.visualstudio.com/content/idea/post.html?space=21)上添加对此功能的请求,这是我们提供产品建议的主要论坛。感谢您帮助我们构建更好的Azure DevOps:
希望这可以帮助。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句