開発中の Rails 3.2 アプリがあり、この Railscast のほとんどの手順を使用して Linux VPS にデプロイしています: http://railscasts.com/episodes/335-deploying-to-a-vpsの代わりに rvm を使用していることを除いてrbenv。nginx、unicorn、rvm、rails 3.2、postgres を使用しています。
初期cap deploy:cold
は問題なく実行され、最初の展開から宝石を変更することなく、いくつかの展開を行いました。
これで will_paginate と関連コードを追加し、いつものように でデプロイしましたcap deploy
。展開はエラーなしで実行され、bundle install --path /home/..../shared/bundle --deployment
(他のいくつかのオプションを使用して) への呼び出しを確認できます。
問題は、will_paginate を使用するアプリのページにアクセスすると、ログに次のエラーが表示されることです: NoMethodError undefined method paginate
.
つまり、なんらかの理由で、Gem が Rails アプリで利用できないということです。
ボックスに SSH で接続しました。実行すると、bundle list
will_paginate が一覧表示されます。上記のバンドルの場所 (/home/..../shared/bundle) を確認すると、will_paginate があります。
ユニコーンを再起動しましたが、まだ喜びはありません。ある種のパスの問題だと思いますが、他の宝石が利用可能であるのに新しい宝石が利用できない理由はわかりません。
この問題をデバッグする方法はありますか?
プロジェクトはオープン ソースであり、github にあるため、ここでさまざまな構成ファイルを確認できます: https://github.com/andypike/lagtv
前もって感謝します
アンディ