刚刚升级到最新的capistrano,我的rails部署都打印了这个警告 -
/home/vivek/.rvm/gems/ruby-2.4.1/gems/sshkit-1.14.0/lib/sshkit/backends/connection_pool.rb:59:in `call': Passing nil, or [nil] to Net::SSH.start is deprecated for keys: user
一切似乎都在起作用。
我从3.5.0升级到当前版本(3.91。)。在deploy.rb中是否需要更改任何内容?
答案 0 :(得分:2)
在例如声明您的服务器时config/deploy/production.rb
,请务必明确设置用户名。我的猜测是你没有指定一个,因此警告。
例如:
server "example.com", user: "deploy", roles: %w[app web]
您可以通过运行来测试是否接受用户名:
$ cap production doctor:servers
Servers (1)
deploy@example.com [:app, :web]
每个服务器的用户名也可以通过:ssh_options
全局覆盖。如果您设置:ssh_options
,请确保这些选项不包含user: nil
。
您可以通过运行以下来检查:ssh_options
的值:
$ cap production doctor:variables