Capistranoを使用してサーバーにアプリをデプロイしようとしています。deploy:setupとdeploy:checkを実行して成功しました。
deploy:updateのタスクの一部は成功しましたが、deploy:asset:precompileタスクはrubyをクラッシュさせるようです。
エラーの原因を理解しようとしました:問題はRailsAssetPipelineとpostgresql_adapterに関連しているようです。
アセットパイプラインについてはあまり詳しくないので、少し迷っています。私が知っている少なくとも、Asset PipelineはjavascriptとCSSスタイルシートに関係しているので、postgresql_adapterがここで何をしているのかわかりませんか?
これらは私の(サーバーとワークステーション)バージョンです:
- Rails 3.2.8
- RVM 1.16.17
- 宝石1.8.24
- Bundler 1.2.1
- pg gem 0.14.1
また、commande bundle exec rake Assets:precompileをサーバーで実行しようとしましたが、結果は同じでした。したがって、問題はこのコマンドに関連しています。
これは私が得たエラーの要約です:
* 2012-11-09 16:54:21 executing `deploy:assets:precompile'
* executing "cd /var/www/opf/releases/20121109155419 && bundle exec rake RAILS_ENV=production RAILS_GROUPS=assets assets:precompile"
servers: ["192.168.5.200"]
[192.168.5.200] executing command
** [out :: 192.168.5.200] /var/www/opf/shared/bundle/ruby/1.9.1/gems/activerecord-3.2.8/lib/active_record/connection_adapters/postgresql_adapter.rb:1213: [BUG] Segmentation fault
** [out :: 192.168.5.200] ruby 1.9.3p194 (2012-04-20 revision 35410) [x86_64-linux]
これは、いずれにせよ私のconfig / deploy.rbです:
require 'bundler/capistrano'
require File.join(File.dirname(__FILE__), 'deploy') + '/capistrano_database'
set :rvm_type, :system
set :rvm_ruby_string, 'ruby-1.9.3-p194@rail3dev20120606'
require 'rvm/capistrano'
set :application, 'opf'
set :deploy_to, '/var/www/opf'
set :rails_env, 'production'
set :user, 'the_user'
set :use_sudo, false
set :group_writable, false
set :scm, :git
set :repository, 'git@github.com:user/opf.git'
set :branch, 'master'
default_run_options[:pty] = true
set :deploy_via, :remote_cache
server '192.168.5.200', :web, :app, :db, :primary => true
# If you are using Passenger mod_rails uncomment this:
namespace :deploy do
task :start do ; end
task :stop do ; end
task :restart, :roles => :app, :except => { :no_release => true } do
run "#{try_sudo} touch #{File.join(current_path,'tmp','restart.txt')}"
end
end
どこを見ればいいのかわからないので、助けは大歓迎です。ありがとう