Affiche tous les modules déclarés dans le répertoire de travail courant. Utile pour auditer les dépendances de modules d’une configuration.
Disponible depuis Terraform 1.8.
Options
| Option | Description |
|---|---|
-json | Sortie JSON (recommandé pour traitement automatisé) |
Exemples
# Lister tous les modules déclarés (sortie lisible)
terraform modules
# Sortie JSON pour traitement
terraform modules -json
# Extraire les sources avec jq
terraform modules -json | jq '.modules[].source'
# Lister uniquement les modules du registry public
terraform modules -json | jq '.modules[] | select(.source | startswith("registry.terraform.io"))'
# Lister les modules sans version épinglée (risque de breaking change)
terraform modules -json | jq '.modules[] | select(.version == null) | .source'Exemple de sortie
{
"format_version": "1.0",
"modules": [
{
"key": "vpc",
"source": "terraform-aws-modules/vpc/aws",
"version": "5.1.2",
"dir": ".terraform/modules/vpc"
},
{
"key": "eks",
"source": "terraform-aws-modules/eks/aws",
"version": "20.0.0",
"dir": ".terraform/modules/eks"
},
{
"key": "networking",
"source": "./modules/networking",
"version": null,
"dir": "modules/networking"
}
]
}Différence avec les autres commandes
| Commande | Ce qu’elle montre |
|---|---|
terraform modules | Modules déclarés dans les fichiers .tf |
terraform providers | Providers requis (dans required_providers) |
terraform state list | Ressources présentes dans le state (déjà appliquées) |
terraform graph | Graphe complet de toutes les dépendances |
En relation avec
- Inspection — Vue d’ensemble — hub inspection
- Modules HCL — syntaxe des blocs
module - terraform get — télécharger les modules listés
- terraform providers — commande analogue pour les providers