【Terraform】特定のフォルダ配下、または特定リソースだけをplan/applyする

aws
実現したいこと:

 tfファイルを複数のフォルダ配下に分けて格納する場合、ある特定のフォルダ配下だけのものをterraform planとterraform applyを実行したい。

方法

 tfファイルのフォルダ構成は以下のようで、プロジェクトごとにフォルダを掘っています。
 PJ_Aフォルダ配下のtfファイルだけをterraform planとterraform applyを実行するとします。

フォルダ構成

testcode
┣PJ_A
┃ ┣ec2.tf
┃ ┣vpc.tf
┃ ┗test.tfvars
┗PJ_B
  ┣ec2.tf
┣vpc.tf
  ┗test.tfvars

 実行するコマンド(カレントディレクトリはtestcode):

terraform -chdir=./PJ_A plan -var-file ./PJ_A/test.tfvars
terraform -chdir=./PJ_A apply -var-file ./PJ_A/test.tfvars

 さらに、特定のリソースだけを修正した際、特定のリソースだけを指定してterraform planとterraform applyを実行するとします。
 その際は「-target {resource} 」オプションが使えます。

terraform -chdir=./PJ_A plan -target aws_instance.example_ec2 -var-file ./PJ_A/test.tfvars
terraform -chdir=./PJ_A apply -target aws_instance.example_ec2 -var-file ./PJ_A/test.tfvars

コメント

タイトルとURLをコピーしました