如何在最短队列的TFS构建服务器(构建控制器)上构建队列?如何在构建控制器上配置负载平衡?

Lud*_*dwo 1 tfs continuous-integration tfsbuild tfs2010

我们有两个可用于我们应用程序的TFS构建服务器(构建控制器).构建在构建定义中按照配置触发.每个构建都通过"构建默认值"页面配置到特定的构建控制器.

假设我们有一个门禁的值机版本.建设时间为30分钟,每小时3次办理登机手续.通常,这些3门控登记版本在构建控制器1上触发,其他构建控制器2处于空闲状态.

如果正在使用build controller1,如何在构建控制器2上触发gated check-in构建?

是否可以使用最短的构建队列对构建服务器上的构建进行排队?如何在构建控制器上配置负载平衡?

编辑:我在这里找到了TFS2008的可能解决方案.我正在寻找适用于TFS2010的解决方案

Dav*_*haw 6

我不认为这是可能的.控制器可以平衡构建,其中代理可用并且与构建的代理模式匹配(如构建定义中所定义).除非你有严重的构建负载,否则我会坚持每个集合使用一个控制器和更多代理.与and agent(编译,测试和部署)相比,控制器的工作量很少.

TFS拓扑

对于你的情况,我会尝试类似的东西:

调节器

  • 门控代理1(在\\ sv-BuildAgent1上)
  • 门控代理2(在\\ sv-BuildAgent2上)
  • QA代理...(在\\ sv-BuildAgent3上)
  • 其他代理人......(在\\的任何地方)
  • ...等等...

现在,每个Gated Build的定义都将Build Agent设置为" Gated Agent* "(它位于3. Advanced - > Agent Settings - > Name Filter中Process选项卡下).现在,这将选择以"Gated Agent"开头的任何代理.您可以根据需要在尽可能多的盒子上轻松将其缩放到尽可能多的代理.

编辑:

您还可以在构建代理上添加标记以获得类似的结果.这可能更容易配置.您可以在构建代理的属性和配置定义中定义标记,以在与名称过滤器相同的部分中使用它们(上图).