Difference between revisions of "Terraform local values"
Jump to navigation
Jump to search
(19 intermediate revisions by 5 users not shown) | |||
Line 1: | Line 1: | ||
https://www.terraform.io/language/values/locals | https://www.terraform.io/language/values/locals | ||
− | + | <code>[[locals]]</code> [[terraform block]] | |
− | + | A local value can only be accessed in expressions within the [[module]] where it was declared. | |
== Examples == | == Examples == | ||
locals { | locals { | ||
+ | environment = "[[prod]]" | ||
service_name = "forum" | service_name = "forum" | ||
owner = "Community Team" | owner = "Community Team" | ||
Line 13: | Line 14: | ||
locals { | locals { | ||
# Ids for multiple sets of EC2 instances, merged together | # Ids for multiple sets of EC2 instances, merged together | ||
− | instance_ids = concat(aws_instance.blue.*.id, aws_instance.green.*.id) | + | instance_ids = [[concat]](aws_instance.blue.*.id, aws_instance.green.*.id) |
} | } | ||
− | + | ||
locals { | locals { | ||
# Common tags to be assigned to all resources | # Common tags to be assigned to all resources | ||
Line 23: | Line 24: | ||
} | } | ||
} | } | ||
+ | |||
+ | locals { | ||
+ | name = "example-${[[replace]]([[basename]]([[path]].cwd), "_", "-")}" | ||
+ | region = "eu-west-1" | ||
+ | tags = { | ||
+ | Owner = "user" | ||
+ | Environment = "dev" | ||
+ | } | ||
+ | } | ||
+ | |||
+ | == Errors == | ||
+ | * [[Error: Reference to undeclared local value]] | ||
== Related == | == Related == | ||
* <code>[[var.]]</code> | * <code>[[var.]]</code> | ||
+ | * <code>[[local.]]</code> | ||
+ | * <code>[[module.]]</code> | ||
+ | * <code>[[path.]]</code> | ||
+ | * [[Terraform resource: random password]] | ||
+ | * [[Terraform: Meta-Arguments]] | ||
+ | * [[Terragrunt: locals]] | ||
+ | * <code>count = local.[[create_node_sg]] ? 1 : 0</code> | ||
+ | * [[locals.tf]] | ||
== See also == | == See also == | ||
+ | * {{tf locals}} | ||
* {{Terraform blocks}} | * {{Terraform blocks}} | ||
− | * {{Terraform}} | + | * {{Terraform variables}} |
[[Category:Terraform]] | [[Category:Terraform]] |
Latest revision as of 05:23, 12 February 2024
https://www.terraform.io/language/values/locals
A local value can only be accessed in expressions within the module where it was declared.
Contents
Examples[edit]
locals { environment = "prod" service_name = "forum" owner = "Community Team" }
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 } }
locals { name = "example-${replace(basename(path.cwd), "_", "-")}" region = "eu-west-1" tags = { Owner = "user" Environment = "dev" } }
Errors[edit]
Related[edit]
var.
local.
module.
path.
- Terraform resource: random password
- Terraform: Meta-Arguments
- Terragrunt: locals
count = local.create_node_sg ? 1 : 0
- locals.tf
See also[edit]
Advertising: