2017-03-04 34 views
1

openstack_compute_instance_v2,Terraform可以附加在现有的网络,而我有1个或n个网络附接,在模块:列表(块网络)

... 

variable "vm_network" { 
    type = "list" 
} 


resource "openstack_compute_instance_v2" "singlevm" { 
    name   = "${var.vm_name}" 
    image_id  = "${var.vm_image}" 
    key_pair  = "${var.vm_keypair}" 
    security_groups = "${var.vm_sg}" 
    flavor_name  = "${var.vm_size}" 
    network = "${var.vm_network}" 
} 

在我.tf文件:

module "singlevm" { 
    ... 
    vm_network = {"name"="NETWORK1"} 
    vm_network = {"name"="NETWORK2"} 
} 

Terraform返回expected object, got invalid错误。

我在这里做错了什么?

回答

1

这不是您在指定源文件的.tf文件中指定列表的方式。

相反,你应该有更多的东西一样:

variable "vm_network" { default = [ "NETWORK1", "NETWORK2" ] } 

module "singlevm" { 
    ... 
    vm_network = "${var.vm_network}" 
} 
+0

不认为你的方法工作,因为NETWORK1不仅是网络的名称。网络包括名称,访问等等,多个属性。 – perigee