Diferències
Ací es mostren les diferències entre la revisió seleccionada i la versió actual de la pàgina.
Següent revisió | Revisió prèvia | ||
info:libros:terraform-upandrunning:cap5 [22/05/2020 08:32] – creat mate | info:libros:terraform-upandrunning:cap5 [23/05/2020 15:06] (actual) – [loops] admin | ||
---|---|---|---|
Línia 1: | Línia 1: | ||
= Chapter 5: Terraform tips and tricks | = Chapter 5: Terraform tips and tricks | ||
== loops | == loops | ||
- | * '' | + | === count |
* usage:< | * usage:< | ||
count = 3 | count = 3 | ||
name = " | name = " | ||
}</ | }</ | ||
- | * result: 3 elements ([0], | + | * result: 3 elements ([0], |
* with '' | * with '' | ||
variable " | variable " | ||
type = list(string) | type = list(string) | ||
default = [" | default = [" | ||
+ | } | ||
resource " | resource " | ||
count = length(var.bla_names) | count = length(var.bla_names) | ||
Línia 16: | Línia 17: | ||
}</ | }</ | ||
* output | * output | ||
- | * **[#]** | + | * **[#]**: use cardinal to access a concrete element |
- | * **[%%*%%]** | + | * **[%%*%%]**: all elements from resource list |
* each element is assigned to their index in state, deletes o modifications implies " | * each element is assigned to their index in state, deletes o modifications implies " | ||
* only usable for **resources**, | * only usable for **resources**, | ||
- | | + | === for_each |
- | * '' | + | |
- | | + | * for use in **resources** o **inline blocks** |
+ | * use **each.key** and **each.value** | ||
+ | * usage:< | ||
+ | variable " | ||
+ | type = list(string) | ||
+ | default = [" | ||
+ | } | ||
+ | resource " | ||
+ | for_each | ||
+ | name = each.value | ||
+ | }</ | ||
+ | <code properties> | ||
+ | variable " | ||
+ | type = map(string) | ||
+ | default = {" | ||
+ | #default = map(" | ||
+ | } | ||
+ | resource " | ||
+ | for_each = toset(var.bla_names) | ||
+ | name = each.value | ||
+ | } | ||
+ | </ | ||
+ | * **output**: | ||
+ | | ||
+ | === for | ||
+ | === for string | ||
== conditionals | == conditionals | ||
+ | <callout type=" | ||
+ | === count | ||
+ | <code properties> | ||
+ | variable " | ||
+ | type = bool | ||
+ | } | ||
+ | resource " | ||
+ | count = var.booleana ? 1 : 0 | ||
+ | ... | ||
+ | } | ||
+ | variable " | ||
+ | type = string | ||
+ | default = " | ||
+ | } | ||
+ | resource " | ||
+ | count = format(" | ||
+ | } | ||
+ | </ | ||
+ | |||
+ | === for_each | ||
+ | === if string | ||
== Zero-Downtime Deployment | == Zero-Downtime Deployment | ||
== terraform gotchas | == terraform gotchas |