Difference between revisions of "Terraform local values"
Jump to navigation
Jump to search
(25 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]] | |
− | <code>[[locals]]</code> | + | A local value can only be accessed in expressions within the [[module]] where it was declared. |
+ | |||
+ | == Examples == | ||
+ | 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 == | ||
+ | * [[Error: Reference to undeclared local value]] | ||
+ | |||
+ | == Related == | ||
+ | * <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 == | ||
− | * {{Terraform}} | + | * {{tf locals}} |
+ | * {{Terraform blocks}} | ||
+ | * {{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: