Deployment 为什么Capistrano 2在cap部署:安装成功后拒绝cap部署:冷?
我正在尝试使用Capistrano(2.5.19)部署Rails3应用程序。我已成功运行:Deployment 为什么Capistrano 2在cap部署:安装成功后拒绝cap部署:冷?,deployment,capistrano,Deployment,Capistrano,我正在尝试使用Capistrano(2.5.19)部署Rails3应用程序。我已成功运行: cap deploy:setup 并且在服务器上创建了正确的目录。但当我运行cap deploy:cold或cap deploy时,脚本挂起到一半 shell$ cap deploy:cold * executing `deploy:cold' * executing `deploy:update' ** transaction: start * executing `deploy
cap deploy:setup
并且在服务器上创建了正确的目录。但当我运行cap deploy:cold或cap deploy时,脚本挂起到一半
shell$ cap deploy:cold
* executing `deploy:cold'
* executing `deploy:update'
** transaction: start
* executing `deploy:update_code'
executing locally: "git ls-remote git@server.foo.com:test.git master"
* executing "git clone -q git@server.foo.com:test.git /home/deployer/www/apps/test/releases/20101223162936 && cd /home/deployer/www/apps/test/releases/20101223162936 && git checkout -q -b deploy be3165b74d52540742873c125fb85d04e1ee3063 && git submodule -q init && git submodule -q sync && git submodule -q update && (echo be3165b74d52540742873c125fb85d04e1ee3063 > /home/deployer/www/apps/test/releases/20101223162936/REVISION)"
servers: ["server.foo.com"]
[server.foo.com] executing command
这是我的deploy.rb:
$:.unshift(File.expand_path("~/.rvm/lib"))
require 'rvm/capistrano'
set :rvm_ruby_string, 'jruby'
# main details
set :application, "test_sqlserver"
role :web, "server.foo.com"
role :app, "server.foo.com"
role :db, "server.foo.com", :primary => true
# server details
default_run_options[:pty] = true
ssh_options[:forward_agent] = true
set :deploy_to, "/home/deployer/www/apps/#{application}"
set :deploy_via, :checkout
set :user, :deployer
set :use_sudo, false
# repo details
set :scm, :git
set :repository, "git@server.foo.com:test.git"
set :branch, "master"
set :git_enable_submodules, 1
我相信我的文件权限设置正确看起来你不能在jruby下运行Capistrano,因为jruby openssl不支持作为Capistrano基础的
Net:SSH
看起来您无法在jruby下运行Capistrano,因为jruby openssl不支持作为Capistrano基础的
Net:SSH
JRuby中似乎有一个bug,至少从1.6.5开始——请参阅
显然,一个“解决办法”是不使用SSH代理转发,尽管这可能是不可接受的。如果您想更快地发现和修复问题(我知道我会这样做),关注这个问题可能会有所帮助。JRuby中似乎存在一个bug,因为至少有1.6.5版本—请参阅
显然,一个“解决办法”是不使用SSH代理转发,尽管这可能是不可接受的。如果您希望更快地发现和修复问题(我知道我会这样做),观察问题可能会有所帮助。是否会
cap deploy:setup
(和cap deploy:check
)出于相同的原因失败?是否会cap deploy:setup
(和cap deploy:check
)出于相同的原因失败?再次查看引用的问题,这似乎将在JRuby 1.7中得到修复。再次回顾引用的问题,这似乎将在JRuby 1.7中得到修复。