Skip to content

v0.14.0: OpenTofu Support

TFDrift-Falco が OpenTofu に対応しました。OpenTofu は Terraform のオープンソースフォークで、state ファイル形式は同一のため、**既存のドリフト検知はそのまま動作**します。このリリースが変えるのは、自動修復(auto-remediation / auto-import)が生成するコマンドと、実際にシェルアウトする CLI バイナリです。

使い方

config.yamlauto_import.tool で選択します(デフォルトは terraform、後方互換):

auto_import:
  enabled: true
  tool: tofu          # "terraform" (default) or "tofu"
  terraform_dir: ./infra

tool: tofu を指定すると:

  • 生成される import コマンドが tofu import aws_instance.web i-abc になる
  • plan コマンドが tofu plan -target=... になる
  • 修復 PR の Markdown が「Proposed OpenTofu Code」「tofu apply」と表示される
  • auto-import 実行時に tofu バイナリをシェルアウトする(存在チェック込み)

変更点

Added

  • auto_import.tool 設定(terraform | tofu、デフォルト terraform)と起動時バリデーション
  • NewImporterWithBinary / NewRemediationGeneratorWithTool — 選択した IaC CLI を全コマンド生成に伝播

Changed

  • import / plan / apply の各コマンド文字列が選択バイナリを反映(従来は terraform 固定)
  • CLI ヘルプ・ドキュメントを「Terraform/OpenTofu」に一般化

Compatibility

  • 完全な後方互換: tool 未指定時の挙動は従来どおり terraform
  • state パース・バックエンド検出は無改修(OpenTofu も terraform_version を書き、.tfstate 名も同一)

なぜ OpenTofu か

Terraform の BSL ライセンス変更を受け、中立な IaC ドリフト検知の需要が高まっています。既存ツール(driftctl 等)がメンテナンスモードに入るなか、TFDrift-Falco は Terraform と OpenTofu の両方を一級市民として扱います。

GitHub Release / CHANGELOG