Vagrantが開発言語をRubyからGo言語へ切り替え、次のメジャーバージョンアップ「Vagrant 3.0」で。現バージョンとの互換性は維持

今回は「Vagrantが開発言語をRubyからGo言語へ切り替え、次のメジャーバージョンアップ「Vagrant 3.0」で。現バージョンとの互換性は維持」についてご紹介します。

関連ワード (互換性維持用、実装、改善等) についても参考にしながら、ぜひ本記事について議論していってくださいね。

本記事は、Publickey様で掲載されている内容を参考にしておりますので、より詳しく内容を知りたい方は、ページ下の元記事リンクより参照ください。


HashiCorpは、仮想環境をプログラミングできるツール「Vagrant」の開発言語を、これまでのRubyからGo言語切り替えることを明らかにしました。

Learn more about the new features, capabilities, and improvements we’re making on our journey toward Vagrant 3.0. https://t.co/49scP0FdqW

— HashiCorp (@HashiCorp) June 11, 2021

時期未定ながら、今後約1年のあいだに登場するVagrant 2.3、Vagrant 2.4を経て、Vagrant 3.0でGo言語への移行が完了する予定。

Vagrant 3.0では、デフォルトで新たなAPIやHCL(HashiCorp Configuration Language)によるコンフィグレーションなどに対応。また、Rubyベースのコンフィグレーションやプラグインを検出するとRubyや互換性維持用ヘルパーツールなどを導入し、最大限の互換性維持を図るとしています。

Vagrant 3.0では主に次のような新機能が追加される予定です。

リモートマシンのVagrantを操作可能に
Vagrantは基本的にローカルマシン内の仮想マシンを操作するためのツールでしたが、クライアント/サーバアーキテクチャを採用することで、リモートマシン内のVagrantを操作できるようになります。

これにより非力なクライアントマシンからリモート先の強力なマシン内のVagrantを操する、といった使い方が可能になります。

ヘッドレスでの操作が可能に
これまでWindowsでは特権ユーザーの操作が必要な場合にはユーザーアカウント制御のダイアログボックスが表示されるため、それをクリックする必要がありました。Vagrant 3.0では特権的なサービスが可能になるため、こうしたユーザー操作が不要となり、ヘッドレスな操作が可能になります。

グローバルな構成管理が可能に
現在のVagrantのユーザーは自分の設定を参照することしかできませんが、新しいサーバベースのアプローチでは、グローバルに適用可能なVagrantの設定を管理できるようになり、設定のデータベースへの保存も可能になります。これにより設定が失われるなどの事故に強くなるなど、Vagrantの回復力の強化にもつながります。

プラグインAPIの改善とポータビリティの強化
現在のRubyベースのプラグインは引き続きサポートされ、それに加えて新たなAPIとGRPCのサポートによってGo言語やそれ以外の言語によるプラグインの開発が可能になります。新たなAPIはVagrantのリリースに依存せず、プラットフォーム依存もなくなるため、プラグインのポータビリティも容易に実現できるようになります。

Rubランタイムへの依存がなくなる
RubyベースのVagrantでは、Vagrantとともにそののランタイムとしての特定のRubyランタイムが必要でした。GoベースになるVagrantでは、こうした特定のRubyランタイムへの依存がなくなるため、ユーザー自身で好みのRubyランタイムを利用することができるようになります。

今後、Vagrant 2.3ではGo言語で実装されたアルファ版のVagrantが含まれ、Vagrant 2.4でGo言語で実装されたVagrant本体がデフォルトになり、Vagrant 3.0でGo言語で実装されたVagrantだけがパッケージに含まれることで、Go言語版に完全に切り替わる予定だとされています。

COMMENTS


41162:
2021-06-15 23:18

有名漫画家がFGOの新規サーヴァントを担当したのに、納品後も全く担当キャラの実装が来ないので『実はボツを食らったけど菌糸類が気を使って俺に言えてないだけなのでは…???』と7章まで胃を痛めてた話が好きだよ。ケツァルコアトル。

41166:
2021-06-15 22:23

モンハン新モンスター追加無しかぁ 俺はまだやることあるからいいけど今後は絶対暇するから新モンスター実装はよ!!!

41164:
2021-06-15 16:53

FF7R最初からやろうかなぁ せっかくPS5版にしてパフォーマンスモード実装されたしな

41163:
2021-06-15 16:39

【イギリス】 英国面の塊。いや英国だけどさ スピットファイア等々優秀な戦闘機が多いが、何故か爆撃機はウェリントンを実装しているのでとても弱い。空飛ぶ経験値BOX

41168:
2021-06-15 09:53

オベロン 好きだ!!!!結婚とは言わない 実装してくれ!!!

41167:
2021-06-15 07:22

≠編成をちょっと触ったけど噛み合ったらしっかり火力が出て持っていけることがとてもよくわかった vi150%パッシブの実装も楽しみだなぁ?

41171:
2021-06-15 05:56

安倍晴明トレンド入りしててついに実装されるかと思った

41174:
2021-06-15 04:48

瞬殺...一定の確率で敵を一撃で倒す。(蒼炎の軌跡) 別作品では、滅殺とも呼ばれるが、FEヒーローズでの暗器ならば、私は実装されても一層にかまわん。しかし、ある程度発動条件は厳しくなると思うが

41165:
2021-06-15 04:47

実装が待ち遠しい武勇伝のスーパーマーケット #カワカミプリンセス

41173:
2021-06-15 04:02

【無料】でTwitter運用代行します?✨ ✅できること? いいね、リプライ、フォローなどの自動化(条件設定可) ✅おすすめポイント✨ SocialDogなどの課金型Botでできないことでも、オーダーメイドで実装します❗️ ✅注意⚠️ 応募多数で、…

41170:
2021-06-15 03:26

8月にはブレイバーの実装を予定しているらしいな、今のうちに旧PSO2でカタナや弓を作っておいた方がいいぞ。

41169:
2021-06-15 03:11

アーモンドさん実装18日かな?

41161:
2021-06-15 02:56

ルチ以外にも時止めるキャラ実装ですね!!!

41172:
2021-06-15 01:39

#デザパタ State:オブジェクトが状態クラスを持ち、状態によって変わる処理を任せる。状態の遷移は状態オブジェクトの変更で表現する(変更を親が行うか状態クラス内で行うかは実装による)。各状態クラスはインターフェースを定義した基底仮想クラスを継承して作る。 [00]

Recommended

TITLE
CATEGORY
DATE
グーグル、「Workspace」向けにスタンドアロンの「Gemini」アプリを提供
IT関連
2024-09-26 15:05
Yahoo!ニュースとLINE NEWSは統合せず 川邊社長「混ぜるな危険」
くわしく
2021-03-02 02:32
さくらインターネットかたる詐欺メールに注意 個人情報の窃取やサーバ不正利用の恐れ
セキュリティ
2021-01-23 12:02
Google、第6世代のAI専用TPU「Trillium」発表。前世代より約5倍の性能向上、2倍のメモリ容量と帯域など
Google
2024-05-16 21:13
NTTデータ子会社、VTuber「七夜聖りあら」(なよせりあら)のデビューを発表
IT関連
2023-08-20 12:56
JetBrains、CI/CD環境のマネージドサービス「TeamCity Cloud」を正式リリース
DevOps
2021-05-06 06:20
AWS、「Amazon EBS io2 Block Express」ボリュームを一般提供
IT関連
2021-07-21 21:55
AI時代に必要とされる「データが行動を促す」ための新しいアプローチ
IT関連
2021-06-03 12:41
テンセントらに青少年モード搭載を迫る中国と回避する子供たち
IT関連
2021-08-10 09:15
オープンソーステクノロジーがもたらす価値はどれほどか–OpenForum Europe
IT関連
2021-02-18 01:54
インテル、経営トップ交代へ–元CTOのP・ゲルシンガー氏が新CEOに
IT関連
2021-01-15 20:16
グローバル一体での業務推進体制を整備–NTTデータグループ・佐々木社長
IT関連
2025-01-08 10:05
Splunk、マイクロソフトとの提携やエッジ製品、AI機能など発表–「.conf23」基調講演
IT関連
2023-07-20 07:57
「マネーフォワード Admina」、デバイス管理機能を提供–ITデバイスの管理を効率化
IT関連
2023-09-12 04:23