【问题标题】:Azure Pipelines select agent to run build on within pool yml templateAzure Pipelines 选择要在池 yml 模板中运行构建的代理
【发布时间】:2020-09-08 09:21:13
【问题描述】:

我正在努力寻找任何文档来通过我们的 yaml azure 管道文件选择给定池中的特定构建代理。现在正在选择拉动来启动工作,但我的服务器存在大量部署问题,需要单独选择我想要运行工作的服务器,以前有人做过这样的事情吗?

trigger:
  batch: true
  branches:
    include:
    - master
  paths:
    exclude:
    - README.md

pool: 'ZupaDeploymentPool'

【问题讨论】:

    标签: deployment yaml azure-pipelines


    【解决方案1】:

    您可以使用Demands 使您的管道在特定的构建代理上运行。请参阅以下步骤:

    1、指定用户定义的能力(也可以使用系统能力)

    转到项目设置s-->代理池 of Pipelines-->选择您的代理池 -->转到Agents选项卡--选择您的Agent-->点击Capabilities-->点击**+**添加用户定义能力。请参阅此详细步骤和屏幕截图here

    然后您可以在您的 yaml 管道中定义需求,如下所示:管道将仅在构建代理上运行,我在上面的步骤中定义了能力 Tag = agent1

    pool: 
      name: agengPoolName
      demands: 
      - Tag -equals agent1
    

    您也可以使用系统功能,而无需根据需要定义自己的功能。见下文我使用系统功能Agent.Name

     pool:
       name: Default
       demands: 
       - Agent.Name -equals myagentName
    

    【讨论】:

    • 非常感谢您在文档中努力寻找系统参数名称,但看起来一切正常。
    【解决方案2】:

    我已经用 UI 完成了,但在 YAML 中编码时没有,但这些概念将适用:

    您将尝试选择的 Agent.Name 放入管道定义的 Build -> Options -> Demands 部分。在 UI 中,它看起来像

    Agent.Name        equals       Foo
    

    根据该需求,该构建将仅转到池中的指定代理...

    对于 YAML 定义的构建,Demands are defined as shown here

    【讨论】:

      猜你喜欢
      • 2020-11-09
      • 2021-09-21
      • 1970-01-01
      • 2019-05-03
      • 2020-09-09
      • 1970-01-01
      • 2018-10-29
      • 2023-02-15
      • 1970-01-01
      相关资源
      最近更新 更多