Script de implantação alterado para usar bundle install --deployment
, a opção --deployment
instala gems em vendor/bundle
em vez do diretório do sistema.
Estou tentando implantar um aplicativo Rails 3.1 em um servidor Ubuntu 11.04 executando nginx-1.0.0 e passageiro-3.0.7
Eu tenho uma instalação RVM no nível do sistema em /usr/local/rvm/gems/ruby-1.9.2-p180
Meu nginx.conf se parece com:
http {
passenger_root /usr/local/rvm/gems/ruby-1.9.2-p180/gems/passenger-3.0.7;
passenger_ruby /usr/local/rvm/wrappers/ruby-1.9.2-p180/ruby;
# ...
server {
listen 80;
server_name my-domain.com;
root /srv/www/my_project/current/public;
passenger_enabled on;
rails_env production;
}
}
O problema é que eu tenho duas gemas no meu Gemfile que apontam para git repos. Bundler diz que eles estão instalados, eles estão presentes no diretório gem do RVM, mas o Passenger lança um erro:
[email protected]:my-gem (at master) is not checked out. Please run 'bundle install' (Bundler::GitError)
A execução de rails console
do diretório de implantação funciona bem. O que estou perdendo?
Script de implantação alterado para usar bundle install --deployment
, a opção --deployment
instala gems em vendor/bundle
em vez do diretório do sistema.