米HashiCorpは、同社が提供している仮想マシン構築ツールVagrantの次期バージョン「Vagrant 3.0」の新機能や、コードベースのRubyからGo言語への移行などについて、6月11日(現地時間)付の公式ブログ投稿にて解説している。
「Vagrant 3.0」では、リモートホストでVagrantを実行し、マシン上のアクションを保護可能となっており、Vagrantをリソースを大量に消費するマシンにインストールし、シンクライアントで操作できるようにすることで、1つのVagrant環境を複数のチームメンバー間で共有可能にするほか、ユーザーが直接操作しなくても特権サービスがVagrantとそのプラグインから既知の信頼できるコマンドを実行できるようになる。
また、グローバルなVagrant構成の管理が可能となり、データベースに構成を保存できるため、プロバイダ固有の情報によって構成設定が失われることがあるという問題が解消されるとともに、新たなプラグインAPIのサポートによってGoまたはGRPCをサポートする言語でプラグインを作れる(既存のRubyプラグインAPIも引き続きサポートされる)。その他、プラグインAPIや移植性の改善を継続し、組み込みプラグインの外部化なども予定している。
なお、「Vagrant 2.3」にはGoベースでの実装の初期アルファバージョンが含まれており、「Vagrant 2.4」ではホームディレクトリとプロジェクトディレクトリから既存のデータをインポートする移行コマンドを含む、Go実装がプライマリ実行可能ファイルとして機能しており、HCLとデータ構造もサポートする。
「Vagrant 3.0」には、GoベースのVagrant実装のみが含まれ、デフォルトでは新しいAPIとHCLベースのVagrantfilesを使用するプラグインのみがサポートされる。また、インストーラパッケージには、RubyやRubyベースのVagrant実装の実行に必要な追加の依存関係が含まれなくなるが、RubyベースのVagrantfilesとVagrantプラグインは引き続き使用できる(ホストマシンへのRubyのインストールが必要)。
この記事は参考になりましたか?
- この記事の著者
-
CodeZine編集部(コードジンヘンシュウブ)
CodeZineは、株式会社翔泳社が運営するソフトウェア開発者向けのWebメディアです。「デベロッパーの成長と課題解決に貢献するメディア」をコンセプトに、現場で役立つ最新情報を日々お届けします。
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です