2016-04-07 19 views
0

カピストラノ経由でローカルマシンからデプロイメントサーバーにデプロイしようとしています。展開すると、サーバーに接続され、次の情報がダンプされます。Rails 4 Capistranoデプロイメントでアクティブサポートが見つかりません

** sftp upload /var/folders/x0/hyzt7pms0599ymtyjft739kw0000gn/T/20160406223514.tar.gz -> /tmp/20160406223514.tar.gz 
    [address] /tmp/20160406223514.tar.gz 
    [address] done 
    * sftp upload complete 
    * executing "cd /var/www/address/releases && tar xzf /tmp/20160406223514.tar.gz && rm /tmp/20160406223514.tar.gz" 
    servers: ["address"] 
    [address] executing command 
    command finished in 519ms 
    * 2016-04-06 18:35:59 executing `deploy:finalize_update' 
    triggering before callbacks for `deploy:finalize_update' 
    * 2016-04-06 18:35:59 executing `deploy:assets:symlink' 
    * executing "rm -rf /var/www/address/releases/20160406223514/public/assets && mkdir -p /var/www/address/releases/20160406223514/public && mkdir -p /var/www/address/shared/assets && ln -s /var/www/address/shared/assets /var/www/address/releases/20160406223514/public/assets" 
    servers: ["server"] 
    [server] executing command 
    command finished in 48ms 
    * executing "chmod -R -- g+w /var/www/address/releases/20160406223514 && rm -rf -- /var/www/address/releases/20160406223514/public/system && mkdir -p -- /var/www/address/releases/20160406223514/public/ && ln -s -- /var/www/address/shared/system /var/www/address/releases/20160406223514/public/system && rm -rf -- /var/www/address/releases/20160406223514/log && ln -s -- /var/www/address/shared/log /var/www/address/releases/20160406223514/log && rm -rf -- /var/www/address/releases/20160406223514/tmp/pids && mkdir -p -- /var/www/address/releases/20160406223514/tmp/ && ln -s -- /var/www/address/shared/pids /var/www/address/releases/20160406223514/tmp/pids" 
    servers: ["address"] 
    [address] executing command 
    command finished in 49ms 
    triggering after callbacks for `deploy:update_code' 
    * 2016-04-06 18:35:59 executing `deploy:assets:precompile' 
    triggering before callbacks for `deploy:assets:precompile' 
    * 2016-04-06 18:35:59 executing `deploy:assets:update_asset_mtimes' 
    * executing "[ -e '/var/www/address/shared/assets/.sprockets-manifest*' ] && cat /var/www/address/shared/assets/.sprockets-manifest* || echo" 
    servers: ["address"] 
    [server] executing command 
    command finished in 31ms 
    * executing "cd -- /var/www/address/releases/20160406223514 && RAILS_ENV=production RAILS_GROUPS=assets rake assets:precompile" 
    servers: ["address"] 
    [address] executing command 
** [out :: address] Could not find activesupport-4.2.0 in any of the sources 
** [out :: address] Run `bundle install` to install missing gems. 
    command finished in 547ms 
*** [deploy:update_code] rolling back 
    * executing "rm -rf /var/www/address/releases/20160406223514; true" 
    servers: ["address"] 
    [address] executing command 
    command finished in 57ms 
failed: "sh -c 'cd -- /var/www/address/releases/20160406223514 && RAILS_ENV=production RAILS_GROUPS=assets rake assets:precompile'" on address 

はそれがactivesupportの見つけることができなかったと言うが、私は、サーバー上の宝石のリストを実行すると、それはバージョン4.2.6、4.2.4、4.2.0を列挙して示しています。

これは権限の問題ですか?ここで

はdeploy.rb

set :application, "app" 
set :repository, "repo" 

set :deploy_to, '/var/www/address' 
set :scm, :git 
set :branch, "master" 

set :user, "user" 

set :use_sudo, false 

set :rails_env, "production" 
set :deploy_via, :copy 

set :keep_releases, 5 

default_run_options[:pty] = true 

server "address", :app, :web, :db, :primary => true 


namespace :deploy do 
    desc "Symlink shared config files" 
    task :symlink_config_files do 
     run "#{ try_sudo } ln -s #{ deploy_to }/shared/config/database.yml #{ current_path }/config/database.yml" 
    end 

    desc "Restart Passenger app" 
    task :restart do 
     run "#{ try_sudo } touch #{ File.join(current_path, 'tmp', 'restart.txt') }" 
    end 
end 


after "deploy", "deploy:symlink_config_files" 
after "deploy", "deploy:restart" 
after "deploy", "deploy:cleanup" 

答えて

0

私の推測では、あなたが資産のプリコンパイルを実行しようとする前に、Capistranoのスクリプトでbundle installを起動していないようだということです。

バンドルを事前に実行してください。正常に動作するはずです。

の中に編集:require 'capistrano/rails'(またはrequire 'capistrano/bundler'

ソース:https://github.com/capistrano/rails

+0

これはこのサーバーに初めての展開です。上記の投稿に私のdeploy.rbのコードを追加します。 'bundle install'はそのファイルにあるべきですか?私は何かがそこに乗る前に、バンドルをサーバ上でインストールする方法を知りません。あなたは私にもっと教えてくれますか? – lostrennie

+0

上記の私の編集を参照してください。 – born4new

+0

私はCapistrano 2.15.7を実行していますが、この要求は機能しません。古いバージョンでこれを行う方法はありますか? – lostrennie

関連する問題