Azure devops 如何在Microsoft托管代理池上的Azure管道上实现作业的实际并行执行?

Azure devops 如何在Microsoft托管代理池上的Azure管道上实现作业的实际并行执行?,azure-devops,azure-pipelines,Azure Devops,Azure Pipelines,我有一个非常简单但很慢(约15分钟)的节点测试,我想在Ubuntu和Linux上运行,通过Azure DevOps上的Azure管道,在节点6、8和10上运行每个节点,总共6个“作业” 我的azure pipeline.yml如下所示: jobs: - job: Ubuntu pool: vmImage: 'Ubuntu 16.04' strategy: matrix: node_6_x: node_version: 6.x nod

我有一个非常简单但很慢(约15分钟)的节点测试,我想在Ubuntu和Linux上运行,通过Azure DevOps上的Azure管道,在节点6、8和10上运行每个节点,总共6个“作业”

我的
azure pipeline.yml
如下所示:

jobs:
- job: Ubuntu
  pool:
    vmImage: 'Ubuntu 16.04'
  strategy:
    matrix:
      node_6_x:
        node_version: 6.x
      node_8_x:
        node_version: 8.x
      node_10_x:
        node_version: 10.x
  steps:
  - task: NodeTool@0
    inputs:
      version: $(node_version)
    displayName: 'Install Node.js $(node_version)'  
  - script: |
      npm install
    displayName: 'npm install'
  - script: |
      npm run test
    displayName: 'npm test'
- job: Windows
  pool:
    vmImage: 'vs2017-win2016'
  strategy:
    matrix:
      node_6_x:
        node_version: 6.x
      node_8_x:
        node_version: 8.x
      node_10_x:
        node_version: 10.x
  steps:
  - task: NodeTool@0
    inputs:
      version: $(node_version)
    displayName: 'Install Node.js $(node_version)'  
  - script: |
      npm install
    displayName: 'npm install'
  - script: |
      npm test
    displayName: 'npm test'
由于这是GitHub上的一个开源存储库,所以我希望这6个测试运行能够并行进行(因为可能会有10个并行作业)

通过观察pull请求的管道运行情况,将
azure pipeline.yml
添加到我的存储库中,似乎只是有时会出现一些并行。我通常会等上几分钟才开始工作。这可能是Azure管道端的一个容量问题,即没有运行测试的代理可用吗

当某个操作系统启动时,通常每个操作系统只有一个作业,而
矩阵中的其他作业则“未启动/排队”。
matrix
作业不应该并行执行吗


这就引出了我真正的问题:
有没有办法在Microsoft托管代理池上的Azure管道上实现作业的实际并行执行?

正在更改

  strategy:
    matrix:
      node_6_x:
        node_version: 6.x
      node_8_x:
        node_version: 8.x
      node_10_x:
        node_version: 10.x

(注意额外的
maxParallel:3
)似乎已经完成了这项工作:一旦提交到PR分支,构建就会一起启动

虽然
maxParallel
目前仅作为文档记录,但似乎需要为
matrix
配置获得并行性

(的文档没有帮助,因为它显示了
maxpallel
作为
matrix
parallel
的替代方案)

  strategy:
    maxParallel: 3
    matrix:
      node_6_x:
        node_version: 6.x
      node_8_x:
        node_version: 8.x
      node_10_x:
        node_version: 10.x