Azure DevOps:用变量替换变量
我有Azure DevOps:用变量替换变量,azure,azure-devops,azure-keyvault,Azure,Azure Devops,Azure Keyvault,我有Azure密钥库,其中我写了一组密钥 dev-key stg-key prd-key 现在我已经在azure DevOps管道中下载了密钥dev密钥。我想将下载的变量映射到名为'key'的'constant'变量,因为此变量正在部署yaml文件中使用(我在令牌替换步骤中替换此变量) 目前我正在管道变量中映射这个变量,比如 tenant: dev key: $($(tenant)-key) 但是,该值在部署yaml文件中设置为键为$(dev key)。 我们可以用Azure DevOps中
Azure密钥库
,其中我写了一组密钥
dev-key
stg-key
prd-key
现在我已经在azure DevOps管道中下载了密钥dev密钥
。我想将下载的变量映射到名为'key'
的'constant'变量,因为此变量正在部署yaml文件中使用(我在令牌替换步骤中替换此变量)
目前我正在管道变量中映射这个变量,比如
tenant: dev
key: $($(tenant)-key)
但是,该值在部署yaml文件中设置为键为$(dev key)
。
我们可以用Azure DevOps中的变量替换变量吗?目前不支持解析嵌套变量 见: 另一种解决方案是以下设置:
- 每个环境都有一个
钥匙库
- 每个环境都有一个
阶段
- 每个
密钥库中的密钥名称始终相同
- 将每个vault链接到一个变量组中
- 将每个变量组链接到您的管道中,并分配一个
范围
- 在
访问阶段的每个任务中
变量组中声明的变量
通过此配置,您可以在任务中重复使用相同的密钥,并且实际值根据您定义的每个
阶段的变量组范围来解析。我通过将范围分配给变量来管理这一点
variable value scope
key $(dev-key) dev
key $(stg-key) stg
key $(prd-key) prd