AD

¿Ya dominas lo básico? Un curso estructurado de Terraform es la vía rápida para dar el salto.

Ver cursos de Terraform en Udemy

Enlace de afiliado. No te cuesta nada extra.

Lección 32 / 37

¿Qué es depends_on?

En esta lección controlarás el orden de creación cuando Terraform no puede deducirlo.

depends_on declara explícitamente que un recurso depende de otro. terraform plan refleja el orden resultante.

Lo primero que hay que saber es que casi nunca hace falta. Terraform construye el grafo de dependencias solo, a partir de las referencias: si un bloque menciona aws_instance.web.id, la dependencia ya está declarada. Ese mecanismo cubre la gran mayoría de los casos.

Se necesita para las dependencias que no se ven en el código: una aplicación que no arranca si un rol de IAM no está listo, aunque no lo mencione; un recurso que exige que otro exista aunque no comparta ningún valor.

El síntoma que delata una de estas es un fallo intermitente: funciona a veces y falla otras, según el orden en que Terraform decidió crear las cosas en paralelo. Los fallos intermitentes en un apply son casi siempre esto.

Usarlo de más tiene un coste real: cada dependencia artificial reduce el paralelismo y alarga las aplicaciones. Y con módulos es especialmente contundente, porque afecta al módulo entero.

La regla práctica: usar referencias siempre que se pueda, y depends_on solo cuando no haya ninguna que usar.

Terraform
Pruébalo (escríbelo en la terminal simulada)
terraform plan

🧑‍💻 Puedes escribir este comando en la terminal simulada de Terraform para probarlo tú mismo (esta página no incluye terminal interactiva).

Espacio publicitario (banner)
Espacio publicitario (en el artículo)