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
飛沫シミュレーションだけじゃない–さまざまに活用されるスパコン「富岳」の有用性
IT関連
2022-03-31 14:59
主役になるサプライチェーンのセキュリティリスクと5つの課題
IT関連
2022-12-27 07:47
AWSのミニデータセンターLocal Zonesが32増えて計48に
IT関連
2022-02-18 00:48
サムスン、12層DRAM「HBM3E 12H」を開発–AI分野の需要を見込み
IT関連
2024-03-01 20:17
ダブリンのExergynは形状記憶合金を使って温室効果ガスの原因となる冷媒を代替
IT関連
2022-01-23 06:04
第1回:ソーシャルエンジニアリングの歴史と進化
IT関連
2022-08-13 09:42
ハイブリッドイベントをサポートするBrellaはコミュニティやグループづくりで体験をより充実したものに
ネットサービス
2021-06-20 09:16
企業のオープンソース活動を支援するOpenInfraの「Directed Funding」
IT関連
2022-06-15 20:30
Vercel、自然言語からUIを生成するサービス「v0」を実験的に公開。Tailwind CSSとShadcn UIをベースに
HTML/CSS
2023-09-20 05:14
「Linux」でSSHのセキュリティを強化するヒント
IT関連
2024-03-01 14:16
GitHub、「Copilot Workspace」テクニカルプレビュー版を提供–「Copilot」ネイティブの開発者環境
IT関連
2024-05-01 19:22
全体的なデータ連携に大きな壁–マーケティングデータマネジメントの取り組み実態
IT関連
2021-02-03 11:19
ServiceNowが考えるハイパーオートメーション–人を中心として課題を解決
IT関連
2022-10-27 15:38
スウェーデンのデータ監視機関が警察によるClearview AI使用は違法と判断
セキュリティ
2021-02-14 12:01