# ¿Cual es el output del siguiente código?
```
variable "name" {
default = "Test"
}
variable "provider" {
default = "aws"
}
locals {
name = upper(var.name)
provider = title(var.provider)
}
output "name" {
value = "${local.name}-${var.provider}"
}
```
> Atento al valor del output
1. [X] TEST-aws
> Se usa el local name que se pasa a mayúsculas a partir de la variable name y la variable provider tal y como se pasa con el valor default.
1. [ ] TEST-Aws
> Para producir este output seria "\${local.name}-\${local.provider}"
1. [ ] test-aws
> Para producir este output seria "\${lower(var.name)}-\${local.provider}"
1. [ ] TEST-AWS
> Para producir este output seria "\${local.name}-\${upper(var.provider)}"
# ¿Como sabe terraform en que orden crear los recursos?
```
resource "aws_vpc" "main" {
cidr_block = "10.0.0.0/16"
}
resource "aws_subnet" "in_secondary_cidr" {
vpc_id = aws_vpc.main.id
cidr_block = "10.0.0.0/24"
}
```
> Hay dos tipos de ____, implícitas y explícitas
1. [X] Grafo de dependencias
> Terraform tiene dependencias implícitas, cuando se hace referencia a recursos dentro de otros recursos (como en este caso), o dependencias explícitas cuando se usa el meta argumento depends_on para forzar esa relación de dependencia.
1. [ ] Grafo de relaciones
> No es el nombre correcto
1. [ ] Grafo de orden
> No es el nombre correcto
1. [ ] Grafo de recursos
> No es el nombre correcto
# ¿Como accederías al argumento ami de la tercera de las cuatro instancias creadas?
> Hay dos formas
```
resource "aws_instance" "server" {
count = 4
ami = "ami-a1b2c3d4"
instance_type = "t2.micro"
tags = {
Name = "Server ${count.index}"
}
}
```
- [X] aws_instance.server.2.ami
>
- [X] aws_instance.server[2].ami
>
- [ ] aws_instance.server.3.ami
>
- [ ] aws_instance.server[3].ami
>
# ¿Se puede usar los meta argumentos count o for_each en una invocación de un modulo?
> Version 0.13
1. [ ] Falso
1. [x] Verdadero
> Se admite desde la version 0.13
# ¿Que tipos de variables admite de entrada el meta argumento for_each?
> Son dos tipos
- [X] map
> Tipo por excelencia para usar con for_each
- [ ] list
> Aunque sea similar a un set, hay que convertir la lista a set para que se pueda usar
- [X] set
> Si no se puede usar un mapa, es igualmente valido
- [ ] tuple
> Aunque sea similar a un set, hay que convertir la tupla a set para que se pueda usar