OpenTofu1.7.0がリリースされ、エンドツーエンドの状態暗号化、動的なプロバイダー定義関数、「削除された」ブロック、ループ可能なインポート ブロックなどの新機能が追加された。OpenTofuは、様々なAPIを使って宣言的にクラウドインフラを作成するためのオープンソースのInfrastructure-as-Codeツールだ。昨年、HashiCorpの Terraformの ライセンス変更後にフォークされた。
新バージョンでは、いくつかの重要な機能と改善が導入されている。
- エンドツーエンドの状態暗号化:状態ファイルは、使用するストレージバックエンドに関係なく保護されるようになった。ユーザは環境変数を使って暗号化パスフレーズを提供でき、AWS KMS、GCP KMS、OpenBaoなどの鍵管理システムを使える。
- 動的プロバイダ定義関数:プロバイダはOpenTofuコードで使用するネイティブ関数を提供可能になった。OpenTofu固有の機能として、プロバイダが設定に基づいてカスタム関数を動的に定義可能になり、他のプログラミング言語との統合が可能になった。
- 削除ブロック: OpenTofuで作成されたリソースを、作成されたインフラストラクチャを保持したまま、ステートファイルから削除するようにマークできる。
- ループ可能なインポートブロック: OpenTofuコード内のリソースの宣言的な一括インポートが可能になり、大規模な移行が容易になる。
OpenTofu 1.7.0はTerraform 1.5との互換性を維持し、それ以降のバージョンからの移行パスを提供する。この発表はまた、4ヶ月前の最初のリリース以来、OpenTofuコミュニティが大きく成長していることを強調している。正確なユーザー数は追跡されていないが、レジストリの利用はここ1ヶ月で2倍以上になり、1日のリクエスト数は100万を超えた。このプロジェクトは、今回のリリースで65人のユニークな貢献者を集め、GitHubで20,000のスターを集めている。
エンドツーエンドの状態暗号化は好評だ。Redditに投稿したユーザーsPENKMAnは、スクリプトの簡素化を楽しみにしている多くのユーザーの一人だ。
これで、opentofuに切り替えたらすぐに、「ファイルを暗号化してオブジェクトストレージにアップロードする」ラッパースクリプトを捨てられます!
DevOps.comで、Steven J. Vaughan-Nichols氏は、OpenTofuにはポリシーアズコードのエンフォースメントフレームワークが欠けていると説明し、エンジニアがOPAとOpenTofuを組み合わせることで、TerraformにHashiCorp Sentinelを追加する機能をミラーリングできると提案している。
プロジェクトはOpenTofu 1.8に向けてコミュニティの投票と参加を奨励しており、この目的のためにもっとも賛成された課題のリストが作成されている。次のバージョンで検討されている機能の1つは、モジュールソースやバックエンドの設定で変数を使用する機能で、よくリクエストされる機能に対応している。
Redditの他のコメントでは、長い間要望されていた機能がまだ含まれていないことに言及しているが、元の投稿者は、これはすぐに追加されるはずだと付け加えている。
ダイナミック/ループ可能なプロバイダーが追加されたら、花火を打ち上げるつもりです。
私はダイナミック・インポートが大好きですし、ダイナミック・プロバイダー/エイリアスをとても楽しみにしています。OpenTofuに乗り換える理由がさらに増えました。
アナウンスの最後には、今後のリリースのための機能を提案するために、issueを開いたり、Slack経由で連絡を取ったりするようユーザーを招待している。