Интерполяция Terraform join не присоединяется к последнему элементу

У меня есть фрагмент, который создает список машин Vmware, как это..

resource "vsphere_virtual_machine" "os-lb" {
count                       = 3

А потом в моем файле я создаю список переменных для передачи в шаблон, например, так...

vm.tf выдержка...

list_masters = join(format(".comapny.com %v", "openshift_node_labels=\"{'region': 'primary', 'zone': 'west'}\"\n"), vsphere_virtual_machine.os-lb.*.name)}

inventory.tpl Отрывок..

# host group for etcd
[etcd]
${list_master}

Но представленный шаблон не добавляет желаемый .company.com строка до последнего элемента. Смотрите приведенный ниже фрагмент от отрендеренного шаблона.

openshift-node-0.company.com openshift_node_labels="{'region': 'primary', 'zone': 'west'}"
openshift-node-1.company.com openshift_node_labels="{'region': 'primary', 'zone': 'west'}"
openshift-node-2

Я не уверен, что я должен делать по-другому, поэтому строка также добавляется к последнему элементу списка. Любая помощь будет оценена.

1 ответ

Нечто подобное сработало для меня. Если приведенное ниже не помогло, предоставьте мне отрывки, которых мне достаточно для воссоздания на моей машине.

static_routes = "${join("\n", formatlist("up route add -net %s.%s.0/24 gw %s dev %s", var.cluster_nets_prefix, openstack_compute_instance_v2.kube-worker.*.metadata.worker_number,openstack_compute_instance_v2.kube-worker.*.access_ip_v4, var.if_dev))}"

С уважением, Судхакар

Другие вопросы по тегам