我正在尝试将我的 Rails (3.1.3) 应用程序部署到预生产环境。 我使用 capistrano (2.12.0) 和 rvm-capistrano (1.2.2)。
当我调用 bundle exec cap ssh
时,它工作正常。
但是当我调用 bundle exec cap deploy
时,我得到以下跟踪:
$ cap deploy
triggering start callbacks for `deploy'
* 18:42:19 == Currently executing `multistage:ensure'
*** Defaulting to `preprod'
* 18:42:19 == Currently executing `preprod'
* 18:42:19 == Currently executing `deploy'
* 18:42:19 == Currently executing `deploy:update'
** transaction: start
* 18:42:19 == Currently executing `deploy:update_code'
* 18:42:19 == Currently executing `deploy:set_previous_revision'
* executing "cd /rails_apps/com.example.preprod/current; git rev-parse --short HEAD"
servers: ["preprod.example.com"]
connection failed for: preprod.example.com (NameError: uninitialized constant Net::SSH::KnownHosts::SUPPORTED_TYPE)
当然 example.com
是一个占位符,它不是来自 capistrano 配置中的错误。
知道是什么原因造成的吗?
我将 RVM 与 Ruby 1.9.3-p194 结合使用。
谢谢!
最佳答案
从 net-ssh 2.5.1 恢复到 2.4.0 似乎暂时解决了这个问题。
关于ruby-on-rails - capistrano - NameError:未初始化的常量 Net::SSH::KnownHosts::SUPPORTED_TYPE,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10741936/