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 | ||