У меня есть три конвейера сборки, по одному для каждой среды: Dev
, QA
, Prod
. Я определил групповые переменные для каждой среды - group-Dev
, group-QA
, group-Prod
. Каждый конвейер сборки имеет переменную TestEnvironment
, установленную для соответствующей среды. Я пытаюсь расширить имя переменной группы с помощью переменной конвейера, но не могу заставить ее работать. Я предполагаю, что во время компиляции он не может оценить имя переменной группы, потому что он еще не знает значение переменной времени выполнения.
Я хочу примерно следующее:
variables:
env: $(TestEnvironment)
stages:
- stage: Deploy
jobs:
- job: TestVariable
variables:
- group: 'group-${{variables.env}}'
steps:
- script: echo $(TestEnvironment), $(Database.Name), ${{variables.env}}
displayName: 'Printing the variable'
Но единственный способ заставить его работать - это жестко запрограммировать переменную, например: env: QA
. Я также попытался удалить раздел variables
и установить group: 'group-$(TestEnvironment)
, но это тоже не сработало.