HashiCorpは米国時間6月12日、Infrastructure as Code(IaC)ツール「Terraform 1.5」の一般提供を発表した。新機能として「Config-driven import」とcheckブロックが追加された。
Config-driven importは、既存のリソースをTerraformの状態に追加するための新しい宣言的ワークフローで、既存のimportコマンドの制限を解決する。新しいトップレベルのimportブロックは、インポート操作をコードで定義できるため、インポート操作を一括で実行し、標準的な計画・適用サイクルの一部とすることを可能にする。インポートは状態操作ではなく、計画可能な操作となったため、予期せぬ状態変更のリスクを排除できるという。
さらに、Terraform 1.5ではインポートされたリソースの自動コード生成も導入された。これにより、インポートしたリソースに合わせたコードを書く時間を削減できるとHashiCorpは述べる。
checkブロックは、プロビジョニングされたインフラストラクチャーの機能バリデーションを実行する新しい方法。Terraform 1.2ではpreconditionとpostconditionsが追加され、独自のバリデーションをコードとして設定できるようになっていた。これらは、個別のデータソース、リソース、出力のバリデーションには適していたが、コミュニティーや顧客から、プロビジョニング後により全体的な機能バリデーションを実行する必要性があるとの声が寄せられていたという。
Terraform 1.5では、このようなニーズに対応するため、新しいバリデーションメカニズムであるcheckブロックを導入。checkは、コンフィギュレーション内の全てのリソース、データソース、モジュール出力を参照できるので、preconditionが単一リソースのコンフィギュレーションを確認するのに対し、インフラストラクチャーの全体的な機能バリデーションに利用される。checkは、プランやアプライの最終ステップで発生し、失敗しても実行を停止することはなく、警告メッセージを表示する。
Terraform 1.5は現在、ダウンロードまたは「Terraform Cloud」での利用が可能になっている。