Синтаксис для списков и карт в Terraform JSON

Я ищу правильный синтаксис в Terraform JSON, чтобы написать список или карты. Похоже, очень мало документации по terraform, как JSON (.tf.json)

В настоящее время я получаю следующую ошибку:

Error loading config: Error loading /var/tmp/base.tf.json: Error reading config for aws_instance[web]: Invalid dot index found: 'var.global.ami'. Values in maps and lists can be referenced using square bracket indexing, like: 'var.mymap["key"]' or 'var.mylist[1]'. in:

${var.global.ami}

Для следующего кода:

{
  "resource": {
    "aws_instance": {
      "web": {
        "ami": "${var.global.ami}",
        "count": 2,

        }
      }
   }
}

Однако, когда я настраиваю свой код в

    {
  "resource": {
    "aws_instance": {
      "web": {
        "ami": "${var.global["ami"]}",
        "count": 2,

        }
      }
   }
}

Я тогда получаю ошибку:

Error loading config: Error parsing /var/tmp/base.tf.json: 5:33: illegal char

Также кто-нибудь знает, как преобразовать HRA в Terraform JSON?

Спасибо

1 ответ

Решение

Почти здесь - вам просто нужно избежать кавычек в вашем JSON:

"resource": {
  "aws_instance": {
    "web": {
      "ami": "${var.global[\"ami\"]}",
      "count": 2,
     }
  }
}
Другие вопросы по тегам