更新时间:2022-02-10 GMT+08:00
本地变量
本地变量可以理解为模块中的临时变量,其作用范围在所声明的模块内,通过关键字 "local" 进行声明。本地变量适用于配置中有重复定义相同值或表达式的场景,可以减少代码冗余,并且易于修改。同时过度使用本地变量会导致变量的实际值被隐藏,代码晦涩,不利于维护,因此建议合理使用本地变量。
声明本地变量
本地变量通过“locals”关键字进行声明:
locals { service_name = "forum" owner = "Community" }
本地变量的表达式不仅限于字符和数值常量,还可以使用输入变量、资源属性和其他本地变量的引用和表达式结果:
locals { dns_list = concat(huaweicloud_vpc_subnet.subnet_1.dns_list, huaweicloud_vpc_subnet.subnet_2.dns_list) } locals { common_tags = { Service = local.service_name Owner = local.owner } }
引用本地变量
在声明本地变量后,可以通过 local.<变量名称> 对其进行引用。
resource "huaweicloud_obs_bucket" "bucket_demo" { ... tags = local.common_tags }
父主题: 变量