определить переменную в terraform, которая включает в себя строки и другую карту - PullRequest
0 голосов
/ 10 мая 2019

Я пытаюсь определить переменную в terraform, которая включает в себя строки и другую карту. например Я пытаюсь создать модуль для google_compute_instance, который может иметь 1 или 2 network_interfaces в зависимости от того, какие переменные задаются при вызове модуля. моя проблема в том, что я не могу дать каждый конфиг network_interface в 1 переменную. Итак, это часть кода в модуле:

network_interface     = "${var.network_interface_1}"
network_interface     = "${var.network_interface_2}"

и я хочу дать пустую переменную для network_interface_2 и следующее значение по умолчанию для переменной network_interface_1:

{
    subnetwork = "test-subnet"
    network_ip = "1.2.3.4"
    access_config {
      network_tier  = "STANDARD"
    }
  }

План Terrraform не работает, говоря, что network_interface: should be a list

Проблема в том, что 2 объекта в моей переменной карты являются строками, а один - другой картой. но кажется, что переменная типа Terraform Map поддерживает только похожие типы внутри карты (то есть строка, список и т. д.) Не могу найти никакого решения для этого.

...