Aller au contenu

Cycle de vie (Terraform)

Cycle de vie : dans Terraform et OpenTofu, le bloc lifecycle d'une ressource modifie le comportement par défaut de l'outil :

  • create_before_destroy : lors d'un remplacement, créer le nouvel objet avant de détruire l'ancien (il se propage aux dépendances et suppose que les deux objets puissent coexister) ;
  • prevent_destroy : refuser tout plan qui détruirait l'objet, tant que le bloc existe dans le code ;
  • ignore_changes : ne jamais proposer de mise à jour pour certains attributs ;
  • replace_triggered_by : remplacer l'objet quand une autre ressource change ;
  • precondition et postcondition : vérifier une hypothèse avant ou après, avec un message d'erreur ;
  • destroy = false (Terraform 1.15 et suivants) : oublier l'objet au lieu de le détruire.

Le remplacement (-/+ dans un plan) détruit l'objet et en crée un nouveau, avec un nouvel identifiant et, pour un objet qui porte des données, sans les données. C'est le fournisseur qui décide quels attributs l'imposent ; le plan l'indique par # forces replacement.

Dans les cours

Voir aussi