Skip to content

Commit 47984f6

Browse files
committed
added inputs and ooutputs demos
1 parent ea47ee8 commit 47984f6

4 files changed

Lines changed: 109 additions & 2 deletions

File tree

05-iac/00-terraform/03-usando-inputs-outputs/04-demo.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,4 +30,10 @@ Actualizamos `outputs.tf`
3030
output "aws_instance_public_dns" {
3131
+ value = aws_instance.nginx1.public_dns
3232
}
33+
```
34+
35+
## Clean Up
36+
37+
```bash
38+
terraform destroy
3339
```

05-iac/00-terraform/03-usando-inputs-outputs/05-demo.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,4 +12,10 @@ terraform apply "d1.tfplan"
1212

1313
```bash
1414
terraform validate
15+
```
16+
17+
## Clean Up
18+
19+
```bash
20+
terraform destroy
1521
```
Lines changed: 92 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,92 @@
1+
# Desplegando la Configuración Actualizada
2+
3+
## Pre requisitos
4+
5+
> Si has destruidfo el entorno recrealo
6+
7+
```bash
8+
cd lab/lc_web_app/
9+
terraform plan -out d1.tfplan
10+
terraform apply "d1.tfplan"
11+
```
12+
13+
## Pasos
14+
15+
### Paso 1. Alimentar valores no establecidos por defecto
16+
17+
Vamos a alimentar las siguientes variables:
18+
19+
* aws_access_key
20+
* aws_secret_key
21+
* project
22+
* billing_code
23+
24+
Por ejemplo, si las queremos alimentar desde la consola:
25+
26+
```bash
27+
terraform plan -var=billing_code="FOO9999" -var=project="web-app" -var=aws_access_key="YOUR_ACCESS_KEY" -var=aws_secret_key="YOUR_SECRET_KEY" -out d2.tfplan
28+
```
29+
30+
Cómo podemos observar este comando puede ser muy extenso. Ua mejor forma es creando un fichero `tfvars`
31+
32+
Crear `lab/lc_web_app/terraform.tfvars`
33+
34+
```tfvars
35+
billing_code = "FOO9999"
36+
project = "web-app"
37+
38+
```
39+
40+
Lo siguiente, son los valores realcionados con las credneciales, estas no las queremos en un fichero, así que las vamos a alimentar como variables de entorno:
41+
42+
```bash
43+
export TF_VAR_aws_access_key="YOUR_ACCESS_KEY"
44+
export TF_VAR_aws_secret_key="YOUR_SECRET_KEY"
45+
```
46+
47+
Ahora podemos ejecutar plan sin ser tan verbosos en la línea de comandos:
48+
49+
```bash
50+
terraform plan -out d2.tfplan
51+
```
52+
53+
Si no hemos recreado nuestra configuración, veremos una salida similar a la siguiente:
54+
55+
```bash
56+
Plan: 0 to add, 6 to change, 0 to destroy.
57+
58+
Changes to Outputs:
59+
+ aws_instance_public_dns = "ec2-13-38-33-113.eu-west-3.compute.amazonaws.com"
60+
61+
─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
62+
63+
Saved the plan to: d2.tfplan
64+
65+
To perform exactly these actions, run the following command to apply:
66+
terraform apply "d2.tfplan"
67+
```
68+
69+
70+
Aplicamos la nueva configuración
71+
72+
```bash
73+
terraform apply "d2.tfplan"
74+
```
75+
76+
Para ver los que hemos aplicado
77+
78+
```bash
79+
terraform show
80+
```
81+
82+
Para recuperar los outputs podemos usar:
83+
84+
```bash
85+
terraform output
86+
```
87+
88+
## Clean Up
89+
90+
```bash
91+
terraform destroy
92+
```

05-iac/00-terraform/03-usando-inputs-outputs/readme.md

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,10 +23,13 @@ Puedes tener múltiples entradas `locals`, pero sus pares `key/value` han de ser
2323

2424
Los `output values` es como sacar información de Terraform.
2525

26-
[Añadiendo Outputs a la configuración](04-demo.md)
26+
[Añadiendo Outputs a la configuración - Demo 04](04-demo.md)
2727

2828
## Validar la configuración
2929

3030
Antes de aplicar nuestros cambios, sería estupendo poder validar que la configuración es sintacticamente correcta.
3131

32-
[Usando Validate](05-demo.md)
32+
[Usando Validate - Demo 05](05-demo.md)
33+
34+
## Desplegando la Configuración Actualizada
35+

0 commit comments

Comments
 (0)