Capistranoを使って、デプロイ時に必要なGemをインストールさせる方法を紹介します。

Rails-2.1以降、config/environment.rbで、config.gemを指定することによって、アプリケーションが依存するGemを簡単に指定することができるようになりました。 また、ここで指定したGemは、

   1  % sudo rake gems:install

とするだけで、インストールすることができます。

しかし、今のところ、capistranoでデプロイするときに この設定を考慮して自動的に足りないGemをインストールしてくれたりすることはないので、ちょっと残念な感じでした。

そこで、cap deployを実行した時に、必要なGemをサーバ上でインストールさせるためのレシピを紹介します。

config/deploy.rb

   1  namespace :deploy do
   2    task :restart, :roles => :app do
   3      sudo "rake -f #{current_path}/Rakefile gems:install"
   4    end
   5  end

上記のように、deploy:restartのタスクで、Rakeコマンドを実行させるだけです。 簡単ですね。

posted by Png genki on Sun 7 Sep 2008 at 06:43

Comments:

or Preview
Social Bookmarks
  • Delicious
  • B_entry867
  • Clip_16_12_w
Services from s21g
twpro(ツイプロ)
Twitterプロフィールを快適検索
地価2009
土地の値段を調べてみよう
MyRestaurant
自分だけのレストラン手帳
Formula
ブログに数式を埋め込める数式コミュニティ