2

我对来自托管代理的复制文件有有线行为,然后将它们下载回同一个代理看起来就像它从代理 A 复制文件但相同的管道将它们下载回代理 B 是在另一台机器上做另一个构建工作不相关的

从 ios_docker_142_linux_slave_1 上传 在此处输入图像描述

下载回不同的代理 ios_docker_141_linux_slave_3,为什么? 在此处输入图像描述

 - task: CopyFiles@2
    inputs:
      CleanTargetFolder: 'true'
      SourceFolder: '$(Agent.HomeDirectory)/../${{parameters.Folderpath}}'
      Contents: '**'
      TargetFolder: '$(build.artifactstagingdirectory)'
4

1 回答 1

1

如果您使用并行作业,这是预期的行为。根据您的屏幕截图,有多个作业自托管连接、mac_agent、copy_back_files_to_self..

一名代理人一次一项工作。如果代理正在运行一个作业,它将处于忙碌状态,其他作业将寻找空闲代理运行。并行作业用于一次在多个代理中运行多个作业。

要实现您想要的,您需要在 YAML 文件中指定详细代理。池名称需要添加到name字段中,然后您可以添加需求。您可以尝试以下 YAML 代码:

stages:

- stage: Deploy

  pool: 

   name: AgentPoolName(e.g. alm-aws-pool)

   demands:

    - agent.name -equals Agentname (e.g. deploy-05-agent1)

  jobs:

  - job: BuildJob

    steps:

    - script: echo Building!
于 2020-10-22T08:55:05.107 回答