TFS 2017 build拒绝向空闲的构建代理发布作业 [英] TFS 2017 build refuses to issue jobs to idle build agents

查看:67
本文介绍了TFS 2017 build拒绝向空闲的构建代理发布作业的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我已经设置了验证(又名门控)构建定义和三个代理A,B,C。

I've set up a Validation (a.k.a. Gated-) Build definition and three agents A, B, C.

所有三个代理具有相同的配置功能。

All three agents have the same configuration with the same capabilities.

如果我手动发布三个验证版本,那么TFS 2017将使用所有三个代理A,B和C.

If I manually issue three validation builds, then TFS 2017 employs all three agents A, B, and C.

但是如果我和其他同事检查触发验证构建的代码更改,然后仅使用构建代理C.

But if me and other colleagues check in code changes that trigger the validation build, then only build agent C is used.

构建代理A和B保持空闲,而剩余的验证构建保持计划并最终构建在C上。

Build agents A and B remain idle while the remaining validation builds remain scheduled and eventually build on C.

这是一个巨大的瓶颈。我在哪里可以获得有关原因的提示?

This is a huge bottle neck. Where can I get hints about the cause?

请注意我们使用的是当前的新构建定义,而不是旧的XAML构建定义。

Please note that we're using the current new build definitions, NOT the old XAML build definitions.

推荐答案

嗨弗兰克,

感谢您在此发帖。

它无法按照您希望的方式工作。

It doesn't work the way you want it to work.

一个代理可以是一个代理池的成员,也可以是一个代理池。代理程序池存在于服务器级别,而不是Team Project Collection级别。

One agent can be a member of one and exactly one agent pool. The agent pool exists at the server level, not the Team Project Collection level.

一个代理程序队列与一个代理程序池绑定。但是,代理池可以跨Team Project Collection边界由不同的代理队列引用。

One agent queue is tied to one and exactly one agent pool. However, agent pools can be referenced by different agent queues across Team Project Collection boundaries.

因此,结果是您可以跨多个团队项目集合共享代理池。

So, the upshot of this is that you can share your agent pools across multiple team project collections.

在TFS中,区别存在但不太相关 - 您不能拥有多个团队项目集合,因此代理池和代理队列或多或少相同,您只需要管理两者都可以。

In TFS, the distinction exists but is less relevant -- you can't have multiple Team Project Collections, so an agent pool and an agent queue are more or less equivalent, you just have to manage both of them.

您可以使用自定义功能(在您的代理上)和需求(在您的构建定义上)来确保始终为特定构建方案保留特定代理。

You can use custom Capabilities (on your agents) and Demands (on your build definitions) to ensure that particular agents are always reserved for particular build scenarios.

有关详细信息,请参阅构建和发布代理

For more information please refer to Build and Release Agents.

最诚挚的问候。


这篇关于TFS 2017 build拒绝向空闲的构建代理发布作业的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆