Guard::Bundlerでbundle installの自動化
最近Guardの中でGuard::RSpecと並んで必ずと言っていいほど使っているのがGuard::Bundler。
これを使うとGemfileを更新した際に自動でbundle installが実行されるようになりうれしい。
bundle installを忘れて首をかしげるといった地味にあるなるな状況とおさらばできて、けっこうな時間節約になる。
え?全然あるあるじゃない?
まあそういう人にとってもbundle installとタイプする時間が節約できるのはいいことじゃないかな。
インストール
Gemfileに以下を追記してbundle install。
gem 'guard-bundler'
これが手で打つ最後のbundle installとなる。
Guardfileの作成
以下のコマンドを実行すると
bundle exec guard init bundler
次の内容がGuardfileに書き込まれる。
guard 'bundler' do watch('Gemfile') # Uncomment next line if Gemfile contain `gemspec' command # watch(/^.+\.gemspec/) end
自前のGemパッケージを開発している場合は.gemspecも監視対象にすることができる。(.gemspecの行のコメントアウト解除でOK)
実行
Guardを動かす。
bundle exec guard
この状態で試しにGemfileに何か追加してみると
Refresh bundle Fetching source index for http://rubygems.org/
と動きだし、ずらずらっとgemのリストが表示されて最後に
Your bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.
と表示される。
ビューリホー。
Gemfileにミスがあるとコンソールにエラーが表示されるので、それを元に修正するべし。