我想实现一个 yaml 管道,以便我可以设置某些解决方案参数一次,然后在多个管道中使用它。目前我有:
天蓝色管道.yml
trigger:
- master
name: $(BuildVersionPrefix).$(DayOfYear)$(Date:HH)
extends:
parameters:
buildTemplate: build.yml
template: solutions.yml
解决方案.yml
parameters:
- name: buildTemplate
type: string
default: ""
extends:
template: ${{parameters.buildTemplate}}
parameters:
solutions:
- name: a
SomeOtherProperty: x
- name: b
SomeOtherProperty: y
- name: c
SomeOtherProperty: z
- name: d
SomeOtherProperty: u
- name: e
SomeOtherProperty: v
构建.yml
parameters:
- name: solutions
type: object
default: []
steps:
- ${{ each solution in parameters.solutions}}:
- script: echo ${{solution.name}}
displayName: build ${{solution.name}}
使用这种配置,我需要每个管道有两个 yml 文件,一个可以跨多个管道共享。有没有办法让每个管道有一个 yml 文件,同时将解决方案抽象成一个共享文件?
编辑 1
为了强调我们需要为我添加SomeOtherProperty
的具有不同值的解决方案提供完整的语法