【问题标题】:Exclude Agent from Azure Devops using YML使用 YML 从 Azure Devops 中排除代理
【发布时间】:2021-04-01 10:03:45
【问题描述】:

我正在尝试确定是否有办法使用 azure devops yml 文件排除特定代理。我知道我可以指定它使用这样的特定代理

pool:
  name: MyPool
  demands:
  - agent.os -equals Darwin

但我几乎在寻找相反的情况,有没有办法有效地做这样的事情:

  - agent.os -not-equals Darwin

也就是说,除了代理达尔文之外,使用任何东西。有没有办法实现这样的目标?

【问题讨论】:

    标签: azure-devops


    【解决方案1】:

    同意丹尼尔·曼的观点。

    在 Azure Devops 中,需求参数仅支持 equalsexists 操作。

    有没有办法实现这样的目标?

    这是实现此目的的解决方法:

    您可以为Agent Pools -> Each Agent -> Capabilities 中的每个代理添加User-defined capabilities

    例子:

    您可以添加自定义能力来区分是否是达尔文。

    然后你可以在 Yaml 文件中使用存在或等于。

    例如:

    pool:
      name: MyPool
      demands:
      - Darwin -equals NO
    

    【讨论】:

      【解决方案2】:

      参考documentation

      检查能力是否存在(exists)和检查能力中的特定字符串(等于)是仅有的两种支持的需求操作。

      【讨论】:

        猜你喜欢
        • 2019-06-03
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-11-28
        • 2019-05-05
        • 2020-07-10
        • 2021-05-25
        • 1970-01-01
        相关资源
        最近更新 更多