ディレクトリ構造について
terraform
└main.tf
└terraform.tfvars
└variables.tf
└modules/
|└s3/
||└s3.tf
||└variables.tf
||└output.tf
|└glue/
||└glue.tf
||└variables.tf
||└output.tf
|└athena/
||└athena.tf
||└variables.tf
||└output.tf
|└redshift/
||└redshift.tf
||└variables.tf
||└output.tf
|└sfn/
||└sfn.tf
||└variables.tf
||└output.tf
└src/
|└job/
|└query/
|└function/
└data/
各ファイルの概要
s3.tf
(S3の)モジュール・ファイル
※S3の構成をまとめ、モジュールとして定義するファイル
main.tf
モジュールを呼び出し、変数の受け渡しを行うファイル
terraform.tfvars
環境変数の定義ファイル(≒ envファイル)※値を保持している。
variables.tf
入力変数の定義ファイル(※定義のみ保持している)
他のtfファイルから受け取る変数を定義する。
output.tf
出力変数の定義ファイル
※他のモジュールへ出力する変数を定義する。
ファイル間の関係
main.tfが各モジュール(s3.tf、glue.tf)を呼び出す。
main.tfはモジュールの呼び出し時、変数を渡すことができる。
※詳しくは「ブロック」のページで紹介します。
各モジュール内で定義したリソースを、main.tf経由で他のモジュールへ橋渡しすることができます。
※詳しくは「ブロック」のページで紹介します。
索引ページ
下記でTerraformに関するテーマをまとめて紹介しています。