precondition / postcondition — ライフサイクル中の条件検証
Terraformのprecondition・postconditionでapply前後の条件を検証する方法を解説。lifecycleブロック内での定義、selfキーワードの使い方、checkブロックとの違いを具体例付きで説明します。
Terraformのprecondition・postconditionでapply前後の条件を検証する方法を解説。lifecycleブロック内での定義、selfキーワードの使い方、checkブロックとの違いを具体例付きで説明します。
Terraformのmovedブロックで、リソースを削除・再作成せずにアドレス変更する方法を解説。リソース名変更、モジュール移動、count→for_each切り替えのパターンを具体例付きで説明します。
Terraform 1.5以降の宣言型importブロックで既存リソースを取り込む方法を解説。S3・EC2のimport例、generated_config_outによるHCL自動生成、旧terraform importコマンドとの違いを説明します。
TerraformのHeredoc構文(<<-EOT)と%{if}・%{for}テンプレートで複数行文字列を書く方法を解説。IAMポリシーのJSON記述、EC2ユーザーデータ、templatefileとの使い分けを具体例付きで説明します。
Terraformのdataブロックとresourceブロックの根本的な違いを解説。使い分けの判断基準、よくある誤用パターン、dataとresourceの組み合わせ方を具体例付きで説明します。
terraform consoleコマンドで関数・変数・for式をインタラクティブに確認する方法を解説。変数/localsの値確認、複雑な式のデバッグ、cidr計算の確認など実践的な使い方を具体例付きで説明します。
Terraformのlength・keys・values・contains関数でリスト・mapを検査する方法を解説。validationブロックでのcontains/length活用、keysとfor_eachの組み合わせ、countとlengthのパターンを具体例付きで説明します。
Terraform 1.5以降のcheckブロックでインフラの状態を検証する方法を解説。applyを止めずに警告を出す仕組み、HTTPエンドポイント確認、preconditionとの違いを具体例付きで説明します。
Terraformの型システムを解説。string/number/boolの基本型、list/set/mapのコレクション型、object/tupleの構造型、variableブロックでの型制約とvalidationの書き方を具体例付きで説明します。
Terraformのtoset・tolist・tomap関数でlist/set/mapを相互変換する方法を解説。for_eachにlistを渡すためのtoset、setへのインデックスアクセスのためのtolist、list/set/mapの違いを具体例付きで説明します。