2016-08-19 5 views
0

Ich habe eine Schiene 5 app (nach dem Upgrade), die folgenden Capistrano 3.0 Plugins verwendet:Capistrano 3 Fehler mit Schienen 5

# Deployments 
    gem 'capistrano', '~> 3.6' 
    gem 'capistrano-rails', '~> 1.1' 
    gem 'capistrano-bundler', '~> 1.1.2' 
    gem 'capistrano-rbenv', '~> 2.0' 
    gem 'capistrano-safe-deploy-to', '~> 1.1.1' 
    gem 'capistrano-secrets-yml', '~> 1.0.0' 
    gem 'capistrano-faster-assets', '~> 1.0' 
    gem 'capistrano-ssh-doctor', '~> 1.0' 
    gem 'capistrano-postgresql', '~> 4.1.0' 
    gem 'capistrano-delayed-job', '~> 1.0' 
    gem 'capistrano-unicorn-nginx', '~> 3.1.0' 
    # gem 'capistrano-memcached', '~> 1.0' 
    # gem 'capistrano-maintenance', github: "capistrano/maintenance", require: false 

Im Moment scheint es, dass Capistrano-rbenv 5 mit Schienen bummed.

$ cap production ssh:doctor --trace 
** Invoke production (first_time) 
** Execute production 
** Invoke load:defaults (first_time) 
** Execute load:defaults 
** Invoke bundler:map_bins (first_time) 
** Execute bundler:map_bins 
** Invoke deploy:set_rails_env (first_time) 
** Execute deploy:set_rails_env 
** Invoke deploy:set_linked_dirs (first_time) 
** Execute deploy:set_linked_dirs 
** Invoke deploy:set_rails_env 
** Invoke rbenv:validate (first_time) 
** Execute rbenv:validate 
cap aborted! 
NoMethodError: undefined method `on' for main:Object 
/Users/admin/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/capistrano-rbenv-2.0.4/lib/capistrano/tasks/rbenv.rake:3:in `block (2 levels) in <top (required)>' 
/Users/admin/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/rake-11.2.2/lib/rake/task.rb:248:in `block in execute' 
/Users/admin/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/rake-11.2.2/lib/rake/task.rb:243:in `each' 
/Users/admin/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/rake-11.2.2/lib/rake/task.rb:243:in `execute' 
/Users/admin/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/rake-11.2.2/lib/rake/task.rb:187:in `block in invoke_with_call_chain' 
/Users/admin/.rbenv/versions/2.3.1/lib/ruby/2.3.0/monitor.rb:214:in `mon_synchronize' 
/Users/admin/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/rake-11.2.2/lib/rake/task.rb:180:in `invoke_with_call_chain' 
/Users/admin/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/rake-11.2.2/lib/rake/task.rb:173:in `invoke' 
/Users/admin/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/capistrano-3.2.1/lib/capistrano/dsl/task_enhancements.rb:12:in `block in after' 
/Users/admin/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/rake-11.2.2/lib/rake/task.rb:248:in `block in execute' 
/Users/admin/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/rake-11.2.2/lib/rake/task.rb:243:in `each' 
/Users/admin/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/rake-11.2.2/lib/rake/task.rb:243:in `execute' 
/Users/admin/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/rake-11.2.2/lib/rake/task.rb:187:in `block in invoke_with_call_chain' 
/Users/admin/.rbenv/versions/2.3.1/lib/ruby/2.3.0/monitor.rb:214:in `mon_synchronize' 
/Users/admin/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/rake-11.2.2/lib/rake/task.rb:180:in `invoke_with_call_chain' 
/Users/admin/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/rake-11.2.2/lib/rake/task.rb:173:in `invoke' 
/Users/admin/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/rake-11.2.2/lib/rake/application.rb:152:in `invoke_task' 
/Users/admin/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/rake-11.2.2/lib/rake/application.rb:108:in `block (2 levels) in top_level' 
/Users/admin/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/rake-11.2.2/lib/rake/application.rb:108:in `each' 
/Users/admin/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/rake-11.2.2/lib/rake/application.rb:108:in `block in top_level' 
/Users/admin/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/rake-11.2.2/lib/rake/application.rb:117:in `run_with_threads' 
/Users/admin/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/rake-11.2.2/lib/rake/application.rb:102:in `top_level' 
/Users/admin/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/rake-11.2.2/lib/rake/application.rb:80:in `block in run' 
/Users/admin/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/rake-11.2.2/lib/rake/application.rb:178:in `standard_exception_handling' 
/Users/admin/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/rake-11.2.2/lib/rake/application.rb:77:in `run' 
/Users/admin/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/capistrano-3.2.1/lib/capistrano/application.rb:15:in `run' 
/Users/admin/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/capistrano-3.2.1/bin/cap:3:in `<top (required)>' 
/Users/admin/.rbenv/versions/2.3.1/bin/cap:23:in `load' 
/Users/admin/.rbenv/versions/2.3.1/bin/cap:23:in `<main>' 
Tasks: TOP => rbenv:validate 

Hat noch jemand dieses Problem gesehen?

Antwort

0

Es war eine sehr einfache Lösung:

Schloss deploy.rb auf Version '3.6' und set :rbenv_ruby, '2.3.1' etwa so:

# config valid only for Capistrano 3.6 
lock '3.6' 

set :application, 'yourAppName' 
set :repo_url, 'your gitlab url' 
set :deploy_to, '/var/www/yourAppName' # Default deploy_to directory is /var/www/my_app 

set :pty, true # Default value for :pty is false 

# CONFIGURATION: RBENV 
# ================== 
set :rbenv_type, :user # or :system, depends on your rbenv setup 
set :rbenv_ruby, '2.3.1' 
set :rbenv_prefix, "RBENV_ROOT=#{fetch(:rbenv_path)} RBENV_VERSION=#{fetch(:rbenv_ruby)} #{fetch(:rbenv_path)}/bin/rbenv exec" 
set :rbenv_map_bins, %w(rake gem bundle ruby rails) 
set :rbenv_roles, :all # default value 
Verwandte Themen