Série Terraform-Terratest - Implémentation des exigences fonctionnelles (4/4)
Entamons la phase finale de notre module (et donc de notre série), à savoir l’implémentation des exigences fonctionnelles.
Entamons la phase finale de notre module (et donc de notre série), à savoir l’implémentation des exigences fonctionnelles.
L’enveloppe de notre module étant complète, nous pouvons maintenant rentrer dans la partie fonctionnelle. Pour cela, nous allons réaliser l’implémentation des tests fonctionnels qui nous permettrons de valider que les développements répondent au cahier des charges.
Dans cet article, nous allons créer un template prêt à l’emploi pour un module Terraform avec Terratest.
L’objectif est que cette enveloppe soit réutilisable pour les autres modules en dehors de notre cas d’usage.
Aujourd’hui, l’intérêt des tests n’est plus à démontrer ; encore moins lorsque ceux-ci peuvent être automatisés dans une chaîne CI et/ou exécutés directement sur le poste développeur.
Dans le cas du développement de modules Terraform, nous allons explorer l’utilisation de Terratest avec le cas du développement d’un nouveau module !
Vous vous êtes lancé sur le Cloud et avez décidé d’utiliser Terraform pour le déploiement de vos ressources en mode IaC (Infrastructure as Code).
Vous avez créé votre projet Git, ajouté vos premiers fichiers *.tf
puis déployé vos premières ressources.
Avec le temps, votre infrastructure grossit, le nombre de ressources déployées explose et votre codebase aussi.
Bilan, les rafraichissements lors des terraform plan
et terraform apply
durent une éternité et cela vous donne envie d’abandonner Terraform ?
Nous entamons le dernier article de cette série sur Git. Nous avons précédemment décrit la manière dont fonctionnait Git et comment l’utiliser, les plateformes collaboratives et nous allons maintenant terminer sur la présentation de deux méthodes de collaboration sur le développement.
Dans les articles précédents, nous avons travaillé principalement sur notre copie locale du projet. Dans cet article, nous allons présenter les plateformes d’hébergement les plus connues permettant de facilité le travail collaboratif.