local
局部变量可以引用variable,resource,data中的一些资源属性,从而拼接改造需要的样式以供一起资源引用,local比variable更灵活,但local不能从外部来赋值。
局部值可能有助于避免在配置中多次重复相同的值或表达式,但是如果过度使用局部值,也可能通过隐藏使用的实际值而使以后的维护人员难以读取配置。
仅在某些地方使用单个值或结果且将来可能会更改该值的情况下,才应适度使用局部值。易于在中心位置更改值的能力是本地值的主要优势。
locals {
# Ids for multiple sets of EC2 instances, merged together
instance_ids = concat(aws_instance.blue.*.id, aws_instance.green.*.id)
}
locals {
# Common tags to be assigned to all resources
common_tags = {
Service = local.service_name
Owner = local.owner
Name = var.name
}
}