2017-07-28 1 views
0

J'ai plusieurs services différents qui ont chacun leur propre configuration de terraform pour créer des ressources (dans ce cas particulier, une table BigQuery pour chaque service).Gestion de plusieurs configurations qui dépendent d'une ressource partagée singleton

Chacun de ces services dépend de l'existence d'une instance unique d'une ressource (dans ce cas, un jeu de données BigQuery).

Je voudrais configurer Terraform pour que cette ressource partagée soit créée exactement une fois si elle n'existe pas. Ma première pensée a été d'utiliser des modules, mais cela a amené chaque service racine à tenter de créer sa propre instance de la ressource partagée en raison de l'espace de noms de module.

Idéalement, je voudrais marquer un répertoire de configuration de terraform comme dépendant d'un autre répertoire de configuration de terraform, sans importer ce dernier répertoire en tant que module. Est-ce possible?

Répondre

0

C'est, vous devez créer un module, puis enregistrer l'état distant quelque part. Vous pouvez configurer des backends dans terraform pour gérer cela pour vous. Une fois que vous avez cela, vous pouvez alors faire référence à cet état par d'autres ressources en utilisant la ressource "data_terraform_remote_state". Toutes les sorties que vous avez configurées dans le module seront disponibles pour référence dans l'état distant.