Вы можете просто передать в параметры имя файла шаблона переменной. Для примера ниже:
trigger:
- none
extends:
template: resource-template.yml
paramters:
uservariablestemplate: vars.yml
Затем в шаблоне resource-template.yml
извлеките шаблон переменной, используя ${{parameters.uservariablestemplate}}
. См. Пример ниже:
parameters:
- name: uservariablestemplate
type: string
default: none
resources:
repositories:
- repository: samplerepo
type: git
name: myproject/myrepo
variables:
- template: centralvariables.yml@samplerepo
- template: ${{parameters.uservariablestemplate}}
steps:
- script: echo "Testing resource template"
Если файл шаблона переменной находится в другом репо. Вам необходимо определить репо в разделе ресурсов репо. Для примера ниже:
parameters:
- name: uservariablestemplate
type: string
default: none
resources:
repositories:
- repository: samplerepo
type: git
name: myproject/myrepo
- repository: variableRepo
type: git
name: myVariableRepo
variables:
- template: centralvariables.yml@samplerepo
- template: ${{parameters.uservariablestemplate}}@variableRepo
steps:
- script: echo "Testing resource template"
Обновление:
Чтобы динамически установить имя репо, вы можете попробовать использовать параметры времени выполнения . См. Ниже: Определите параметр времени выполнения repo
:
trigger: none
parameters:
- name: repo
type: string
default: none
extends:
template: resource-template.yml
parameters:
uservariablestemplate: vars.yml
Затем вы можете ссылаться на репо с помощью ${{parameters.repo}}
в следующем yaml.
При запуске конвейера. Вы сможете установить имя репо:
введите описание изображения здесь