Vagrantの必須プラグインSaharaをVagrant 1.1に対応させました

 2013/03/30
このエントリーをはてなブックマークに追加

Saharaはコマンドラインから仮想マシンの状態をsandboxモード(変更をいつでも巻き戻せる)に変更できるプラグインです。これを使うことで、例えばchefのレシピ作成やミドルウェアのインストールの評価やリリース手順の確認や大規模な環境変更の評価などがやりやすくなります。Vagrantを使っている人であれば必携のプラグインと言えます。

そんなSaharaですが、開発が停止しているような感じもあり、先日出たVagrant 1.1になかなか対応しそうにないように見えたので、自分でVagrant 1.1に対応させてみました。 なお、かなり大量にソースを書き換えている(作り直しに結構近い気がする)のと、Rubyはあんまり知らない人なので、ご利用は自己責任でお願いしますー。レポジトリはこちらです→ https://github.com/ryuzee/sahara

インストール

gemにはしていないので以下のように自分でgithubから持ってきてビルドしてください。

git clone https://github.com/ryuzee/sahara.git
cd  sahara
bundle install 
bundle exec rake build
vagrant plugin install pkg/sahara-0.0.14.gem

これで使えるようになります。

なお、Saharaが内部で呼び出しているVirtualBoxのVBoxManageの問題で、古いバージョンのVirtualBoxでは動作しないと思います。少なくとも僕の環境では4.2.6では動作せず、4.2.10に更新することで動作しました。動作確認はOSXとUbutnu12.04で行なっています。

使い方

これはもう皆さんご存知の通りです。

■sandboxモードに入る(仮想マシンを再起動しても有効だ)

vagrant sandbox on

■sandboxを開始時点にロールバックする

vagrant sandbox rollback

■sandboxモードの終了(この時点でcommitしていないものは消える)

vagrant sandbox off

■sandboxの内容を恒久的に反映

vagrant sandbox commit

■現在sandboxモードかどうかを確認する

vagrant sandbox status

その他

いくつか。。
  • 自分で使う分には大丈夫そうなのでとりあえず公開しましたが、Windows環境での動作確認はしてません
  • またMultiVM環境のテストもしていないのでもしかしたらこれらの環境では動かないかも
  • 1.0系と互換性はありません。1.0系を使っている方は元のSaharaを使ってください
  • 動作した・しないのフィードバックをいただけるとありがたいです
  • といいつつご利用は自己責任でお願いします

 2013/03/30
このエントリーをはてなブックマークに追加

サイト内検索


著作

寄稿

Latest post: