andrelohmann.terrahelper
terrahelper
terrahelper regroupe les meilleures pratiques de terraform et terrahelp pour les petites équipes.
Meilleures pratiques :
- créez un dépôt pour vos fichiers de template terraform
- créez un dépôt pour l'état terraform correspondant
- gardez l'état séparé du dossier des templates terraform (c'est pourquoi vous avez besoin du deuxième dépôt)
Flux de travail :
- créez/modifiez vos templates
- récupérez l'état le plus récent depuis le dépôt d'état
- déchiffrez l'état en utilisant terrahelp et votre secret d'état
- exécutez terraform plan/apply
- chiffrez le nouvel état en utilisant terrahelp
- validez le nouvel état dans le dépôt d'état
Exigences
Ce rôle nécessite Ubuntu.
Exemple de Playbook
- hosts: terrahelper
roles:
- { role: andrelohmann.terraform }
- { role: andrelohmann.terrahelpe }
- { role: andrelohmann.terrahelper }
Utilisation
terrahelper regroupe les étapes pour déchiffrer et chiffrer l'état terraform de vos templates terraform, ainsi que les commandes terraform pour init, plan, apply et destroy votre stack.
Pour cela, vous avez besoin d'un secret d'état pour le déchiffrement et le chiffrement de l'état terraform, et de deux dépôts séparés (un pour le template et un pour l'état).
Exécutez terrahelper de la même manière que vous exécutez normalement la commande terraform depuis votre répertoire de templates terraform.
utilisation : terrahelper init | plan | apply | destroy | output [-s | --statesecret SECRET] [-d | --statedirectory STATEDIRECTORY] [-f | --statefile terraform.tfstate] [-b | --statefilebackup terraform.tfstate.backup] [-e | --echo] [-h | --help] [tout paramètre terraform]
Si les variables d'environnement suivantes sont définies, les paramètres correspondants deviennent obsolètes :
TH_SECRET - secret terrahelp utilisé pour déchiffrer/chiffrer l'état
TH_STATE_DIRECTORY - chemin absolu ou relatif (depuis le répertoire des templates terraform) vers le répertoire de l'état terraform
TH_STATE_FILE - fichier d'état terraform (par défaut terraform.tfstate)
TH_STATE_FILE_BACKUP - fichier de sauvegarde de l'état terraform (par défaut terraform.tfstate.backup)
Vous pouvez également ajouter des paramètres spécifiques à la commande terraform à la fin. Ils seront attachés à la commande terraform.
Licence
MIT
Informations sur l'auteur
ansible galaxy role to wrap a terraform best practice, that uses a separate state repository, that is encrypted by terrahelp.
ansible-galaxy install andrelohmann.terrahelper