terraform-docs
Overview
terraform-docs, c'est l'utilitaire qui pense que tes modules Terraform méritent une documentation automatique et toujours à jour. Il génère de la documentation à partir de tes modules Terraform dans divers formats (Markdown, JSON, YAML, etc.) en analysant automatiquement les inputs, outputs, providers et ressources. Si tu veux que ta doc soit cohérente et maintenue sans effort, c'est parfait.
terraform-docs se distingue par sa simplicité d'usage (une commande, documentation prête), ses multiples formats de sortie (Markdown, JSON, YAML, AsciiDoc), et son intégration workflow (pre-commit hooks, GitHub Actions, injection automatique dans README).
Informations essentielles
| Propriété | Valeur |
|---|---|
| Site officiel | https://terraform-docs.io/ |
| Repository | https://github.com/terraform-docs/terraform-docs |
| Licence | MIT |
| Organisation | terraform-docs |
| Type | Générateur de documentation Terraform |
| Déploiement | Binaire standalone, Docker, GitHub Actions |
| Difficulté | Facile |
| Technologies | Go |
Cas d'usage typiques
- Génération automatique de documentation pour modules Terraform
- Intégration dans les workflows CI/CD pour maintenir la doc à jour
- Standardisation de la documentation entre équipes et projets
- Documentation des inputs/outputs pour modules réutilisables
- Injection automatique dans README.md via pre-commit hooks
Intégrations et écosystème
- Intégration native avec Git (pre-commit hooks)
- Déploiement via CI/CD (GitHub Actions, GitLab CI)
- Support multiples formats (Markdown, JSON, YAML)
- Templates personnalisables
- Injection automatique dans README
- Plugins pour différents providers
Avantages
- Automatisation complète de la documentation
- Formats de sortie multiples (Markdown, JSON, YAML)
- Intégration native avec workflows Git
- Templates personnalisables
- Pre-commit hooks pour maintenir la doc à jour
- Écosystème mature et bien maintenu
Limites
- Dépend de la qualité des commentaires dans le code
- Ne valide pas la logique des modules
- Templates complexes difficiles à configurer
- Pas de génération de diagrammes d'architecture
- Nécessite maintenance des workflows CI/CD
Ressources
- Documentation terraform-docs : https://terraform-docs.io/user-guide/
- GitHub : https://github.com/terraform-docs/terraform-docs