Zenn Dev Terraform Jp Articles Tf Query Bulk Import
【Terraform 1.14】terraform query コマンドで既存リソースを一括 import する
- URL: https://zenn.dev/terraform_jp/articles/tf-query-bulk-import
- 日付: 2026-06-26
- Tier: Tier 3
- 要旨: Terraform v1.14.0 beta に追加された
terraform queryコマンドを使うと、.tfquery.hclファイルにlistブロックを記述するだけで Terraform 管理外の既存リソースを一覧取得できる。-generate-config-outフラグと組み合わせると、取得したリソースに対応するresourceブロックとimportブロックが自動生成される。あとはterraform applyを実行するだけで一括 import が完了する。configブロックで特定タグによるフィルタリングも可能で、terraformer のような外部ツールに頼らず公式コマンドで同等の操作が行えるようになる。
詳細
検証環境: Terraform v1.14.0-beta1、AWS Provider v6.14.0
List Resources の使い方:
.tfquery.hclファイルを作成しlistブロックを記述するprovider属性は必須configブロックでプロバイダ固有の引数(フィルタなど)を指定できるinclude_resourceで全属性取得、limitで取得上限を指定(デフォルト 100)
terraform query コマンドの実行例:
terraform queryで一覧表示terraform query -generate-config-out=generated.tfで resource ブロックと import ブロックを自動生成- 生成後に
terraform applyを実行するとリソースが Terraform 管理下に移行する
実用上の意義:
- 従来 googlecloudplatform/terraformer などのサードパーティツールが担っていた「既存リソースの一括 import」が公式コマンドで実現できるようになる
- for_each 不可などの制約がある旧来の import 作業が大幅に自動化される