小编Rom*_*kin的帖子

Azure Pipeline 动态参数从 YAML 管道传递到模板文件

我目前正在使用 Azure Devops Build Pipelines,并尝试调用模板文件来从我的构建 yaml 中执行一些任务。

我在将参数传递给模板文件时遇到一些困难。假设这是我的模板文件(简化的),它工作正常:

parameters:
 iterations: []

steps:
- ${{ each i in parameters.iterations }}:
- task: PowerShell@2
  displayName: "Get key values ${{i}}"
  name: getKeyValues_${{i}}
  inputs:
    targetType: 'inline'
    script: |
      $item = "${{i}}"
      Write-Host "item : $($item)"
      $keyVal = $item -split "_"
      Write-Host $keyVal
      Write-Host "key: $($keyVal[0]) | value: $($keyVal[1])"
      echo "##vso[task.setvariable variable=key;isOutput=true]$($keyVal[0])"
      echo "##vso[task.setvariable variable=value;isOutput=true]$($keyVal[1])"
Run Code Online (Sandbox Code Playgroud)

所以我希望我的迭代参数包含这样的内容:

iterations: ["1_60", "2_40"]
Run Code Online (Sandbox Code Playgroud)

在我的 Yaml 管道中,我有以下代码(也经过简化):

不工作场景

- task: PowerShell@2
   displayName: Calculate iterations for $(copies) copies
   name: calculateIterations
   inputs: …
Run Code Online (Sandbox Code Playgroud)

variables templates yaml dynamic azure-devops

5
推荐指数
1
解决办法
1万
查看次数

标签 统计

azure-devops ×1

dynamic ×1

templates ×1

variables ×1

yaml ×1