【问题标题】:How do I target TFS build agents that does not have a specific tag?如何定位没有特定标签的 TFS 构建代理?
【发布时间】:2013-04-24 02:30:07
【问题描述】:

我们的 MS 构建设置有多个带有多个代理的构建机器。代理使用安装在构建机器上的不同软件进行标记。我的构建正在使用“MatchAtLeast”寻找两个标签。最近,TFS 偶尔会选择另一台构建机器,但它总是失败。我相信这可能是因为该特定机器上安装了某个其他软件包,因此我想排除任何可用于我的构建的机器,这些机器具有代表违规软件。

我想我可以为没有该软件的所有内容添加标签,但这似乎很愚蠢,然后如果确实安装了它,添加它的人不仅需要为新安装的软件添加标签,但也要删除这个其他标签,说明它没有那个软件。

那么有没有办法配置你的构建定义来避免构建带有特定标签的代理?

我们正在使用 TFS 2012 更新 2。

【问题讨论】:

    标签: tfs msbuild


    【解决方案1】:

    在构建定义的高级选项卡中,您可以定义代理名称和标签。默认情况下它设置为 * 但您可以使用您想要定位的代理的名称

    【讨论】:

    • 感谢您的快速回复。这也是构建机器管理员的建议,但这会将可用的构建代理限制为仅在特定机器上的那些。假设您想要机器 Build6 和 Build7 上的所有代理,而不是机器 Build4 上的任何代理。你能做一个单独的列表吗?阅读有限的文档,听起来你只能做通配符 * 和 ?这对我的场景来说不够表达,除非我遗漏了什么。
    • 不,您只能选择一个服务器。在我们的农场中,我们有一组相同的代理(大约 16 个)我们不允许安装任何软件,除了运行构建所需的软件,即构建服务和 Visual Studio。对于二进制依赖项(例如 3rd 方库),我们将它们签入 TFS 并将它们作为构建的一部分带到构建服务器(通过将它们添加到工作区),这样我们可以确保所有构建都适用于所有代理.
    猜你喜欢
    • 2016-03-25
    • 1970-01-01
    • 2016-07-25
    • 2010-10-29
    • 2019-12-17
    • 2022-10-13
    • 2013-10-26
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多