【问题标题】:Overwrite attribute in terraform variable object覆盖地形变量对象中的属性
【发布时间】:2021-09-28 19:42:49
【问题描述】:

我需要传递一个包含多个变量的对象的变量。有没有办法在解析它时覆盖这些属性之一? 例如:

全局 = {

region = "eu-central-1"
account_id = "9555555"
app_port = 8080
domain = "my.domain"
stage = "production"
docker_tag = "production" }

但是我想传递这个全局变量,但将 docker_tag 设置为“最新”,有没有什么方法可以做到这一点而无需放置所有属性并替换我需要的属性? (我有 25 个属性) 我不想做的例子:

全局 = {

region = var.region
account_id = var.account_id
app_port = var.app_port
domain = var.domain
stage = var.stage
docker_tag = "latest" }

谢谢大家

【问题讨论】:

    标签: variables terraform hcl


    【解决方案1】:

    我发现自己可以通过合并 (https://www.terraform.io/docs/language/functions/merge.html) 做到这一点: “如果多个给定的映射或对象定义了相同的键或属性,则参数序列中后面的优先。”

    合并 (var.global, { docker_tag = "latest"})

    它只是替换了我要替换的键

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-06-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-06-12
      • 2013-06-04
      • 2021-06-20
      相关资源
      最近更新 更多