限制Azure DevOps管道YAML中的并行作业数

限制Azure DevOps管道YAML中的并行作业数,azure,azure-devops,Azure,Azure Devops,我们的团队正在使用YAML模式创建一个Azure DevOps管道来运行我们的测试脚本,运行相同测试脚本的多个迭代如何告诉作业运行同一测试8次,但将并行运行的最大测试数限制为3次? Azure DevOps展示了一种限制运行矩阵的并行运行数的方法: job: Build strategy: maxParallel: 2 matrix: Python35: PYTHON_VERSION: '3.5' Python36: PYTHON_VERSION:

我们的团队正在使用YAML模式创建一个Azure DevOps管道来运行我们的测试脚本,运行相同测试脚本的多个迭代如何告诉作业运行同一测试8次,但将并行运行的最大测试数限制为3次?

Azure DevOps展示了一种限制运行矩阵的并行运行数的方法:

job: Build
strategy:
  maxParallel: 2
  matrix:
    Python35:
      PYTHON_VERSION: '3.5'
    Python36:
      PYTHON_VERSION: '3.6'
但是试着像这样

job: Build
strategy:
  maxParallel: 2
  parallel: 8

抛出一个错误,表示parallel是一个意外的标识符。

我认为它应该如下所示:

jobs:
- job: xxx   
  strategy:
    parallel: 8 # parallel strategy, see below
    maxParallel: 3 # maximum number of agents to simultaneously run copies of this job on

这有点晚了,但仍希望为其他人提供答案。 如果您查看以下文档:

它讨论了YAML作业的全部规格:

-job:string#作业名称、A-Z、A-Z、0-9和下划线
displayName:string#要在UI中显示的友好名称
dependsOn:string |[string]
条件:字符串
战略:
并行:并行策略
矩阵:#矩阵策略
maxParallel:number#要运行的最大并发矩阵分支数
#注:`parallel`和`matrix`是互斥的
#您可以指定一个或另一个;两者兼而有之是错误的
#'maxParallel'仅对'matrix'有效`
continueOnError:布尔值#“true”,如果将来的作业即使失败也应该运行;默认为“false”
池:池#代理池
工作空间:
清理:输出|资源|所有#作业运行前要清理的内容
容器:containerReference#在其中运行此作业的容器
timeoutInMinutes:number#在自动取消之前运行作业的时间
CancelTimeOutingMinutes:number#在终止任务之前给予“即使已取消任务也始终运行”的时间
变量:{string:string}|[变量| variableReference]
步骤:[脚本| bash | pwsh | powershell |签出|任务|模板引用]
服务:{string:string | container}#要作为服务容器运行的容器资源

它指出,
“并行”和“矩阵”是相互排斥的
。这意味着您只能在矩阵策略中使用maxParallel。如果没有矩阵,则必须使用“parallel”。

以这种方式运行将出现错误:
意外值“maxParallel”
。这可能是Azure DevOps yaml模式中的一个bug。抱歉,我有点吃错了,你能试试这个吗?是的,我试过了,但仍然不起作用。这种语法对你有用吗?我想知道这是否是不受支持的…今天我将测试我发电子邮件给Azure DevOps的人,这是一个bug。。。他们正在修理它