下面是一个使用ADO YAML管道将对象参数传递给模板的示例:
trigger:
- main
jobs:
- job: RunPipeline
displayName: Run Pipeline
steps:
- task: PowerShell@2
displayName: 'Create object parameter'
name: createObjectParam
inputs:
targetType: 'inline'
script: |
$pipelineParameters = @{
param1 = 'value1'
param2 = 'value2'
param3 = 'value3'
}
Write-Host "##vso[task.setvariable variable=pipelineParameters]$pipelineParameters"
- template: path/to/template.yml # 模板文件的路径
parameters:
objectParam: $[dependencies.createObjectParam.outputs['createObjectParam.pipelineParameters']]
在上述示例中,Create object parameter
步骤使用PowerShell任务创建一个包含参数的对象$pipelineParameters
,并将其以字符串形式输出到管道变量pipelineParameters
中。
然后,在Run Pipeline
作业中,我们使用$[dependencies.createObjectParam.outputs['createObjectParam.pipelineParameters']]
来引用该对象参数,并将其传递给名为objectParam
的模板参数。
请将path/to/template.yml
替换为实际的模板文件路径,并根据需要调整对象参数的名称和值。
在模板中,您可以使用${{ parameters.objectParam.param1 }}
等语法引用传递的对象参数。