变量分为局部变量和全局变量,上面是局部变量。
本地变量是方便我们测试,或者默认值初始化的时候是非常好用的。
本地变量声明和使用就和我们之前定义的变量就不太一样了。
可以通过locals关键子,语句块里面去声明我所需要的变量。在引用的时候是local.变量名。
resource "alicloud_instance" "instance" {
availability_zone = var.region
security_groups = alicloud_security_group.group.*.id
instance_type = "ecs.n4.large"
system_disk_category = "cloud_efficiency"
system_disk_name = "tf_system_disk_name"
system_disk_description = "tf_system_disk_description"
image_id = var.ecs_info.esc_image
// instance_name = var.ecs_info.ecs_name
instance_name = local.ecs_name //引用
vswitch_id = alicloud_vswitch.vsw.id
internet_max_bandwidth_out = 10
internet_charge_type = "PayByTraffic"
password = "root@123"
}
locals {
ecs_name = "zeyang-ecs"
}
+ instance_name = "zeyang-ecs"
上面就是本地变量的使用方法。本地变量都是通过locals语句块来操作的。