Home > Advent Calendar 2013 | Vagrant > Mac で Vagrant を GUI で操作できる「VagrantX」をリリースしました

Mac で Vagrant を GUI で操作できる「VagrantX」をリリースしました

この記事の所要時間: 536

Shin x blog Advent Calendar 2013 の最終日です。

3161107249_347e738fac

12/1 から毎日書いてきた Shin x blog Advent Calendar 2013 ですが、いよいよ今日が最終日です。

今日は、クリスマスということで、ささやかながらちょっとしたプレゼントを用意してみました:D

VagrantX

GUI で Vagrant が利用できる VagrantX というツールをリリースしました。

http://shin1x1.github.io/vagrantx/

Vagrant は、とても良いツールなのですが、いかんせんターミナル(黒い画面)で操作するものなので、それに慣れていない人にとっては、少し敬遠されている面があります。Vagrantfile を自分で書くような人はターミナルでどんどん使うべきなのですが、用意された Vagrantfile をただ使うだけであれば、vagrant upvagrant halt など基本的な操作しか行わないので、そのためだけに慣れないターミナルを使うのもどうかなという疑問がありました。

そこで、GUI アプリケーションから、基本的な vagrant コマンドが実行できるよう、このアプリケーションを作りました。

VagrantX は、Mac OS X 向けのアプリケーションで、現在は、10.8 (Mountain Lion)、10.9 (Mavericks) で動作するようになっています。

インストール

VagrantX は、Vagrant を GUI から操作するアプリケーションなので、Vagrant 本体や VirtualBox など Vagrantを通常利用するために必要なアプリケーションは別途インストールする必要があります。

Vagrant も VirtualBox もパッケージで配布されているので、ダウンロードして、インストールするだけです。

VagrantX は、ZIP ファイルとして GitHub に公開しています。公式サイトにある「.zip」リンクをクリックするとダウンロードがはじまります。

VagrantX_download

ダウンロードした ZIP ファイルを展開します。VagrantX.app がアプリケーション本体になります。このまま起動して試すこともできますし、必要であれば /Applications フォルダへコピーして下さい。

操作

VagrantX を起動すると下記のような画面が表示されます。

vagrantx

まずは仮想マシンを操作する対象の Vagrantfile を画面右上にある Read ボタンで選択します。選択が完了すると、vagrant status が実行され、現在の仮想マシンの状態が表示されます。

あとは、仮想マシンの起動、停止、破棄などをボタンで実行するだけです。

仮想マシンを起動する際は Up ボタン、停止する際は halt ボタン、破棄する際は destory ボタンをクリックして下さい。それぞれのボタンは、仮想マシンの状態により有効になったり、無効になったりします。(仮想マシンが実行中であれば、Up ボタンは無効など)

現在サポートしている Vagrant コマンドは以下です。

  • vagrant up
  • vagrant halt
  • vagrant destory
  • vagrant provision
  • vagrant ssh

アンインストール

ダウンロードしてきた VagrantX.app を削除するだけです。

開発の話

VagrantX は、RubyMotion で書いています。RubyMotion といえば、iOS アプリケーションの情報はわりと見つかるのですが、OSX アプリケーションの情報はほとんどなく、結局は、MacRuby の情報や Objective-C の情報を参考にして、開発を進めました。幸い、RubyMotion は、Ruby シンタックスの Objective-C と言っても良いくらい層が薄いので、ずばり RubyMotion ではない情報でも転用しやすいのは良かったです。

アイデアは、夏前頃からあったのですが、開発は、9 月に参加した開発合宿から開始しました。開発合宿は、2 泊 3 日だったのですが、1 日半で、仮想マシンの起動などベースのところは動くところまでいきました。OSX アプリケーションを作るのが初めてだったので、紆余曲折はあったのですが、これまで Windows や Java で GUI アプリケーションを作った経験があり、概念自体は理解していたので、OSX(Cocoa) 固有の問題点を一つづつ潰していきました。

それから隙間時間に序々に改良を進めていき、ようやくリリースすることができました。

と、言えば、聞こえは良いのですが、実は塩漬けになっている期間も長く、このままだと HDD の肥やしになって終わる可能性もあったので、まずは公開してみようと思い、今回リリースしました。( Chef ゆく年くる年で背中を押されたのもありますね:D )

基本機能は動いているのですが、まだ不具合や不足機能などがあるので、現在はプレリリースという形にしています。

さいごに

Vagrant は、優れたコマンドラインツールなので、GUI が必要なのか?という疑問も当初ありました。

ただ、Vagrant による開発環境の共有、そしてユーザの広がりを見ると、ターミナルを使わない人にこそ、Vagrant が便利なのではと思うようになりました。

まずは公開してみて、反応を見つつ、今後の開発を進めていきたいと思います。興味がある方は、一度ダウンロードして使ってみて下さい。

http://shin1x1.github.io/vagrantx/

なお不具合や改善点などあれば、GitHub の issue へ投稿をお願いします。

Merry Christmas!

お願い

喫緊の課題として、ロゴデザインがあります。

自分で作ってみたのですが、絶望的に残念な感じなので、もし書いても良いよという奇特な方がいれば、お手伝い頂ければとっても嬉しいです。やってみようかなという方は、GitHub の issue にてコメントをお願いしますm(_ _)m

Pocket

follow us in feedly

Home > Advent Calendar 2013 | Vagrant > Mac で Vagrant を GUI で操作できる「VagrantX」をリリースしました

検索
フィード
メタ情報

Return to page top