我使用变量.yml 文件作为模板来存储不同的变量,我很好奇是否能够引用 yml 文件本身中的变量来本质上嵌套它们。
例如:
#variables.yml file
variables:
food1: 'pineapple'
food2: 'pizza'
favoriteFood: '$(food1) $(food2)'
因此,当我最终调用这个变量“favoriteFood”时,我可以只使用 ${{variables.favoriteFood }} 并且该值应该是“菠萝披萨” 示例:
#mainPipeline.yml file
variables:
- template: 'variables.yml'
steps:
- script: echo My favorite food is ${{ variables.favoriteFood }}.
我走在正确的道路上吗?我似乎无法通过谷歌搜索任何关于这是否可能的示例。
是的!事实上这是可能的,只需遵循上面概述的语法即可。不要忘记间距在 YML 文件中至关重要。
这是来自官方的场景示例
Learn
/Azure
/Azure DevOps
/Azure Pipelines
/表达式:
variables: staticVar: 'my value' # static variable compileVar: ${{ variables.staticVar }} # compile time expression isMain: $[eq(variables['Build.SourceBranch'], 'refs/heads/main')] # runtime expression steps: - script: | echo ${{variables.staticVar}} # outputs my value echo $(compileVar) # outputs my value echo $(isMain) # outputs True