2010-12-23 70 views
1

我想用Capistrano(2.5.19)部署一个Rails3应用程序。我已成功运行:为什么Capistrano 2拒绝部署帽子:部署帽子后感冒:安装成功了?

cap deploy:setup 

并且在服务器上创建了正确的目录。但是当我运行帽子部署:冷或帽部署脚本挂起一半。

shell$ cap deploy:cold 
    * executing `deploy:cold' 
    * executing `deploy:update' 
** transaction: start 
    * executing `deploy:update_code' 
    executing locally: "git ls-remote [email protected]:test.git master" 
    * executing "git clone -q [email protected]: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, "[email protected]:test.git" 
    set :branch, "master" 
    set :git_enable_submodules, 1 

我相信我的文件权限设置正确

回答

0

看起来你无法在JRuby下运行Capistrano的,如JRuby的OpenSSL的没有按” t支持Net:SSH这是Capistrano的基础。

http://jruby-extras.rubyforge.org/jruby-openssl/

+1

因为同样的原因,'cap deploy:setup`(和`cap deploy:check`)会失败吗? – jhwist 2011-03-15 21:29:23

相关问题