0Pricing
Terraform Infrastructure as Code · Leçon

Modules et réutilisation du code

Découvrez comment les modules Terraform regroupent une infrastructure réutilisable, acceptent des entrées, exposent des sorties et maintiennent des configurations DRY et faciles à gérer.

Modules et réutilisation du code est une leçon Terraform Infrastructure as Code gratuite sur CoddyKit. Ceci est la leçon 4 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage Terraform Infrastructure as Code, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Terraform Infrastructure as Code comprend 4 leçons au total.

Pourquoi utiliser des modules ?

Copier-coller les mêmes ressources entre les environnements entraîne des divergences et des bogues. Un module est un conteneur réutilisable et paramétré de ressources Terraform, que vous pouvez appeler plusieurs fois avec des entrées différentes, tout en gardant votre code DRY.

Toute configuration est un module

Le répertoire depuis lequel vous exécutez terraform apply est le module racine. Les modules qu’il appelle sont des modules enfants. Vous utilisez donc déjà des modules : vous en ajoutez simplement d’autres.

Anatomie d’un module

Un module est simplement un dossier contenant des fichiers .tf, généralement organisés ainsi :

  • main.tf — les ressources.
  • variables.tf — les variables d’entrée.
  • outputs.tf — les valeurs exposées.

Définir les entrées

Les entrées sont déclarées comme des variables dans le module, ce qui permet aux appelants de personnaliser son comportement.

variable "bucket_name" {
  type = string
}
variable "versioning" {
  type    = bool
  default = false
}

Utiliser les entrées

Les ressources du module font référence à ses variables.

resource "aws_s3_bucket" "this" {
  bucket = var.bucket_name
}

Exposer les sorties

Les sorties renvoient des valeurs utiles à l’appelant, comme des identifiants ou des ARN.

output "bucket_arn" {
  value = aws_s3_bucket.this.arn
}

Appeler un module

Le module racine appelle un module enfant avec un bloc module, en lui transmettant des entrées.

module "logs" {
  source     = "./modules/bucket"
  bucket_name = "app-logs"
  versioning  = true
}

Référencer les sorties d’un module

Accédez aux sorties d’un module avec module.NAME.OUTPUT ailleurs dans votre configuration.

resource "aws_s3_bucket_policy" "p" {
  bucket = module.logs.bucket_arn
}

Sources des modules

La source peut être un chemin local, une URL Git ou le registre public Terraform.

module "vpc" {
  source  = "terraform-aws-modules/vpc/aws"
  version = "5.0.0"
}

Gérer les versions des modules

Verrouillez toujours une version pour les modules du registre afin que les mises à niveau soient délibérées. Exécutez terraform init après avoir ajouté ou modifié des modules pour les télécharger.

Concevoir de bons modules

Gardez les modules ciblés (un composant logique), n’exposez que les entrées nécessaires, documentez les sorties et évitez de coder en dur les valeurs propres à un environnement. De petits modules composables sont préférables à un module gigantesque.

Vérification rapide

Vérifiez vos connaissances sur les modules.

Récapitulatif

Les modules rendent Terraform réutilisable et DRY.

  • Un module est un dossier de fichiers .tf contenant des variables (entrées) et des sorties.
  • Appelez-le avec un bloc module et une source ; accédez aux résultats via module.NAME.OUTPUT.
  • Les sources peuvent être locales, Git ou le registre ; verrouillez la version et exécutez init.
  • Concevez des modules petits, ciblés et bien documentés.

Questions Fréquemment Posées

La leçon « Modules et réutilisation du code » est-elle gratuite ?

Oui — le texte complet de « Modules et réutilisation du code » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours Terraform Infrastructure as Code, passe à CoddyKit PRO. Le cours Terraform Infrastructure as Code comprend 4 leçons au total.

Qu'est-ce que j'apprendrai dans « Modules et réutilisation du code » ?

Découvrez comment les modules Terraform regroupent une infrastructure réutilisable, acceptent des entrées, exposent des sorties et maintiennent des configurations DRY et faciles à gérer. Tu pratiques Terraform Infrastructure as Code avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.

Dois-je avoir de l'expérience pour commencer Terraform Infrastructure as Code ?

Aucune expérience préalable n'est requise. Terraform Infrastructure as Code sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 4 sur 4.

Combien de temps prend la leçon « Modules et réutilisation du code » ?

La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.

Peux-tu écrire et exécuter du code dans cette leçon Terraform Infrastructure as Code ?

Oui. Chaque leçon Terraform Infrastructure as Code inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.

Toutes les leçons de ce cours

  1. Fournisseurs et ressources
  2. Variables et sorties
  3. Fondamentaux de la gestion de l’état
  4. Modules et réutilisation du code
← Retour à Terraform Infrastructure as Code