Azure devops 如何使用on-prem代理在Azure DevOps Server 2020中的给定构建代理处对YAML构建进行排队?

Azure devops 如何使用on-prem代理在Azure DevOps Server 2020中的给定构建代理处对YAML构建进行排队?,azure-devops,azure-devops-server-2020,Azure Devops,Azure Devops Server 2020,鉴于: 十几个公关代理 有时候,在某些代理上,PR构建会变得不正常 我们的解决方案是在该代理上建立一个完整的队列,而不是默认的增量队列 现在,我们将经典的PR构建迁移到YAML,突然之间,我们无法在给定的代理上对完整的PR构建排队-GUI中的需求消失了,REST API也无法工作 我们可以在YAML中指定需求这一事实毫无帮助——这些需求是硬编码到YAML中的,似乎无法在排队时提供它们 那么,我错过了什么?在YAML构建中,我们如何在队列时间提供需求 编辑1 我使用API。我不传递代理队列信息

鉴于:

  • 十几个公关代理
  • 有时候,在某些代理上,PR构建会变得不正常
我们的解决方案是在该代理上建立一个完整的队列,而不是默认的增量队列

现在,我们将经典的PR构建迁移到YAML,突然之间,我们无法在给定的代理上对完整的PR构建排队-GUI中的需求消失了,REST API也无法工作

我们可以在YAML中指定需求这一事实毫无帮助——这些需求是硬编码到YAML中的,似乎无法在排队时提供它们

那么,我错过了什么?在YAML构建中,我们如何在队列时间提供需求

编辑1

我使用API。我不传递代理队列信息,因为不需要传递-它已在生成定义中指定。但是,我确实通过了要求-Agent.Name=

它适用于经典构建,不适用于构建排队的YAML构建,而是在池中的第一个可用代理上,而不是在需求中指定的代理上。这一要求完全被忽视了。正如我之前提到的,YAML构建GUI中也没有它

编辑2

以下是Fiddler捕获的请求会话:

POST https://ourserver/tfs/DefaultCollection/SharpTop/_apis/build/builds?api-version=5.0 HTTP/1.1
User-Agent: Mozilla/5.0 (Windows NT; Windows NT 10.0; en-US) WindowsPowerShell/5.1.19041.610
Content-Type: application/json
Host: ourserver
Content-Length: 76

{"demands":["Agent.Name -equals MyAgentName"],"definition":{"id":7821}}
(我用ourserver替换了真实的服务器名,用MyAgentName替换了代理名)


响应没有错误,生成已排队,但未在正确的代理上。

您使用哪个REST API将YAML管道排队


您可以尝试使用API“”。使用此API,您可以指定运行管道的代理池。

我更新了我的问题。