用于访问项目队列的 VSTS API?

Posted

技术标签:

【中文标题】用于访问项目队列的 VSTS API?【英文标题】:VSTS API for accessing project queues? 【发布时间】:2018-09-11 17:08:19 【问题描述】:

我需要在 VSTS(现为 Azure DevOps)发布定义中以编程方式设置队列 ID。我找到了这篇文章:

How to list VSTS agent pools programmatically from PowerShell?

不幸的是,该帖子中的 API 比我需要的级别更高,因为它处理的是在组织级别定义的代理池。我需要获取引用这些代理池的特定于项目的队列,以便我可以将队列 ID 注入到我的发布定义中。是否有 API 可以满足我的需求?

【问题讨论】:

【参考方案1】:

我找到了我需要的答案并想与他人分享。确实有未记录的 API 来获取特定于项目的队列。使用带有以下内容的 GET 请求来获取队列列表:

https://foo.visualstudio.com/Project_Name/_apis/distributedtask/queues/

同样,如果您想要特定队列的信息,请获取以下信息:

https://foo.visualstudio.com/Project_Name/_apis/distributedtask/queues/QUEUEID

编辑

我与 MS 的 Azure DevOps 工程师进行了交谈,他们表示这确实是获取队列信息的正确方法。他们还说,虽然这些 API 目前没有文档记录,但它们是受支持的(我被提到了这个 post)并且支持所有 RESTful HTTP 动词,尽管我没有测试过最后一条语句。

【讨论】:

以上是关于用于访问项目队列的 VSTS API?的主要内容,如果未能解决你的问题,请参考以下文章

将lavvel项目从VSTS发布到Azure到正确的文件夹

重建时防止访问并发队列

使用 vsts 访问被拒绝错误

使用 RabbitMQ 访问 ActiveMQ 队列

通过REST API访问PBI上的“剩余工作”

如何在 VSTS 的发布管理中添加 AD 组以使用队列?