# Preguntas y respuestas frecuentes

### ¿Cuáles son las herramientas que debería tener en cuenta y considerar utilizar?

* [<mark style="color:purple;">**Terragrunt**</mark>](https://terragrunt.gruntwork.io) - herramienta de orquestación.
* [<mark style="color:purple;">**tflint**</mark>](https://github.com/terraform-linters/tflint) - linter de código.
* [<mark style="color:purple;">**tfenv**</mark>](https://github.com/tfutils/tfenv) - gestor de versiones.
* [<mark style="color:purple;">**Atlantis**</mark>](https://www.runatlantis.io) - automaticación de Pull Request.
* [<mark style="color:purple;">**pre-commit-terraform**</mark>](https://github.com/antonbabenko/pre-commit-terraform) - Colección de hooks de git para Terraform a usar con [<mark style="color:purple;">pre-commit framework</mark>](https://pre-commit.com).
* [<mark style="color:purple;">**Infracost**</mark>](https://www.infracost.io/) - Cloud estima los costes de Terraform mediante un sistema de extraccion y trabaja con Terragrunt, Atlantis y pre-commit-terraform

### **¿Cuál es la solución al** [<mark style="color:purple;">**dependency hell**</mark>](https://en.wikipedia.org/wiki/Dependency_hell) **-*****infierno de las dependencias*****- con los módulos?**

Las versiones de los recursos y los módulos de la infraestructura deben ser especificados. Los proveedores deben ser configurados fuera de los módulos, solamente en la composición. Las versiones de los proveedores y Terraform también se pueden bloquear.

No hay una herramienta de gestión de dependencias maestra pero, hay varios tips para hacer el *dependency hell* menos problemático. Por ejemplo, [<mark style="color:purple;">**Dependabot**</mark>](https://github.com) <mark style="color:purple;">\*\*\*\*</mark> puede ser utilizado para automatizar la actualización de dependencias. Dependabot crea *pull requests* para mantener las dependencias seguras y actualizadas al día. Dependabot soporta configuraciones de Terraform.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://www.terraform-best-practices.com/es/faq.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
