HashiCorp、「Terraform 1.6」を一般提供–新しいテストフレームワークなどを搭載
今回は「HashiCorp、「Terraform 1.6」を一般提供–新しいテストフレームワークなどを搭載」についてご紹介します。
関連ワード (ソフトウェア等) についても参考にしながら、ぜひ本記事について議論していってくださいね。
本記事は、ZDNet Japan様で掲載されている内容を参考にしておりますので、より詳しく内容を知りたい方は、ページ下の元記事リンクより参照ください。
HashiCorpは米国時間10月4日、「HashiCorp Terraform 1.6」の一般提供を開始した。
Terraform 1.6は現在、ダウンロード可能で「Terraform Cloud」でも利用できる。新しいテストフレームワーク、「config-driven import」の改善、「Terraform Cloud CLI」ワークフローの強化といった、生産性とワークフローを向上させる多数の機能が追加されているという。
HashiCorpは、Terraformユーザーの期待通りに構成が機能しているかの把握が可能になるよう、Terraformに入力変数の検証、リソースのpreconditionsとpostconditions、checkブロックなどのテスト機能を追加してきた。これらの機能は、通常のTerraform運用中にモジュール利用者に実用的なフィードバックを提供するが、より伝統的で開発者中心のユニットテストや統合テストのニーズを満たすものではなかったと同社は説明する。
そのため、Terraform 1.6は、新しいTerraformテストフレームワークを提供し、バージョン0.15で初めて追加された以前の実験的な機能を廃止して置き換えるという。テストは、安全な環境で構成の機能を一貫して検証することを可能にするとともに、「HashiCorp Configuration Language(HCL)」の構文で記述されるため、新たな言語を学ぶ必要はない。
1つ以上のrunブロックのシーケンスを使用することで、入力値とプロバイダー構成のさまざまな組み合わせに対して評価されるカスタムアサーションを含むユニットテストと統合テストのスイートが作成可能。より包括的なテストでは、ヘルパーモジュールを呼び出すことで、一時的なテスト環境のセットアップや高度な検証の実行ができる。
config-driven importは、既存のリソースをTerraformにインポートする新しい方法としてTerraform 1.5で導入されたが、importブロックのid属性は静的な値しか対応していなかった。Terraform 1.6では、id属性は変数やリソース属性など、他の値を参照する式を受け付けるようになった。また、より複雑なIDを構築するため、文字列の補間もサポートされた。
Terraform Cloudで「CLI-driven run workflow」を利用しているユーザー向けに、Terraform 1.6では2つの新機能が追加された。まず、cloudブロックがTerraform Cloudのプロジェクト名を受け付けるようになった。このプロジェクトはCLIで新しいワークスペースを作成する際や、terraform workspace listコマンドで返されるワークスペースをフィルタリングする際に使用される。
さらに、クラウドプランを保存して後で適用する機能がTerraform Cloud CLIワークフローに追加された。保存されたプランは新しいrunモードで、Terraform 1.6 CLIまたはTerraform Cloud APIで動作する。保存されたクラウドプランは、ローカルで実行されたプランと同じ「terraform cloud -out <file>」構文を使用する。
Terraform 1.6では、「Amazon S3」リモートステートバックエンドの構成フォーマットにも幾つかの変更が加えられた。これらの変更は、AWS SDKと公式のTerraform AWSプロバイダーとの整合性を高めるためだという。