ruby-on-rails – 如何通过capistrano进入rails控制台?

前端之家收集整理的这篇文章主要介绍了ruby-on-rails – 如何通过capistrano进入rails控制台?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我想通过capistrano从本地计算机进入生产服务器上的rails控制台.
我发现了一些要点,例如 https://gist.github.com/813291当我进入控制台
cap production console

我得到以下结果

192-168-0-100:foldername username $cap console RAILS_ENV=production
  * executing `console'
  * executing "cd /var/www/myapp/current && rails console production"
    servers: ["www.example.de"]
    [www.example.de] executing command
    [www.example.de] rvm_path=$HOME/.rvm/ $HOME/.rvm/bin/rvm-shell '1.9.3' -c 'cd /var/www/myapp/current && rails console production'
/var/www/myapp/releases/20120305102218/app/controllers/users_controller.rb:3: warning: already initialized constant VERIFY_PEER
Loading production environment (Rails 3.2.1)
Switch to inspect mode.

这就是…现在我可以输入一些文字,但什么也没有发生…

有人有一个想法如何获得这个工作或另一个解决方案为我的问题?

解决方法

我为这种事情添加了自己的任务:
namespace :rails do
  desc "Remote console"
  task :console,:roles => :app do
    run_interactively "bundle exec rails console #{rails_env}"
  end

  desc "Remote dbconsole"
  task :dbconsole,:roles => :app do
    run_interactively "bundle exec rails dbconsole #{rails_env}"
  end
end

def run_interactively(command)
  server ||= find_servers_for_task(current_task).first
  exec %Q(ssh #{user}@#{myproductionhost} -t '#{command}')
end

我现在说cap rails:控制台,并得到一个控制台.

猜你在找的Ruby相关文章