capistrano problem

I am having a problem with deploying my application to my server.

I have msysgit, github and capistrano installed and working.

  • Trouble deploying a Zend Framework site with Capistrano: SSH Authentication error
  • Trouble using Capistrano with a local git repository
  • SASS files management in Git version control system in Ruby on Rails
  • Get latest git tag in Ruby for use with Capifony
  • Git: Merge a branch but without some of the files I only need modified locally?
  • Capistrano and Corkscrew PATH error
  • I have successfully pushed my app to github and can successfully run
    cap deploy:setup to setup on my server from my local machine.


    When I run cap deploy:cold it asks me for my passphrase to connect to
    github repo then it asks it again to connect to my server but then it
    gives me an error permission denied (public key) and rools back.

    It seems like this is an error with my keys but how can it then
    connect to my server to do the cap deplo:setup ?

    My public keys are the same in both github and my server is this
    correct ?

    Also when running cap deploy:setup it asks me for my user server
    password is this correct ?

    Please help as this has delayed me for days already

    This is the error:

    $ cap deploy * executing deploy' * executing deploy:update' ** 
    transaction: start * executing `deploy:update_code' executing locally: 
    "git ls-remote master " 
    Enter passphrase for key '/c/Users/Rick/.ssh/id_rsa': * 
    executing "git clone -q /usr/local/lib/r uby/gems/1.9.1/gems/passenger-2.2.4/test/stub/rails_apps/Macrotec/releases/20090723213346 && cd /usr/local/lib/ruby/gems/1.9.1/gems/passenger-2.2.4/test/stub/ra ils_apps/Macrotec/releases/20090723213346 && git checkout -q -b deploy a28798bc0 d3b5688453a58bf4917d6c931187a7a && (echo a28798bc0d3b5688453a58bf4917d6c931187a7 a > /usr/local/lib/ruby/gems/1.9.1/gems/passenger-2.2.4/test/stub/rails_apps/Mac rotec/releases/20090723213346/REVISION)" servers: [""] 
    Enter passphrase for c:/Users/Rick/.ssh/id_rsa: 
    [] executing command ** 
    [ :: out] Permission denied (publickey). ** 
    [ :: out] fatal: The remote end hung up 
    unexpecte dly command finished *** [deploy:update_code] rolling back * 
    executing "rm -rf /usr/local/lib/ruby/gems/1.9.1/gems/passenger-2.2.4/test/s tub/rails_apps/Macrotec/releases/20090723213346; true" 
    [""] [] 
    executing command command finished failed: "sh -c 'git clone -q /usr/local/lib/ ruby/gems/1.9.1/gems/passenger-2.2.4/test/stub/rails_apps/Macrotec/releases/20090723213346 && cd /usr/local/lib/ruby/gems/1.9.1/gems/passenger-2.2.4/test/stub/r ails_apps/Macrotec/releases/20090723213346 && git checkout -q -b deploy a28798bc 0d3b5688453a58bf4917d6c931187a7a && (echo a28798bc0d3b5688453a58bf4917d6c931187a 7a > /usr/local/lib/ruby/gems/1.9.1/gems/passenger-2.2.4/test/stub/rails_apps/Ma crotec/releases/20090723213346/REVISION)'" on 

    Thanks alot rick

  • git won't 'add' subdir
  • Measure growth rate in size/MB for a git repository?
  • component build not finding dependancies
  • Working with zend framework and git in large projects
  • Easiest way to copy ssh key (Used for GIT) from one linux machine to another
  • How to get atlassian bamboo to trigger a build automatically from a post commit hook
  • 4 Solutions collect form web for “capistrano problem”

    If I add this to my deploy.rb file

    set :ssh_options, {:forward_agent => true}
    on :start do    

    I get this different error

    $ cap deploy
        triggering start callbacks for `deploy'
    Could not open a connection to your authentication agent.
      * executing `deploy'
      * executing `deploy:update'
     ** transaction: start
      * executing `deploy:update_code'
        executing locally: "git ls-remote master
    Enter passphrase for key '/c/Users/Rick/.ssh/id_rsa':
      * executing "git clone -q /usr/local/lib/ruby/gems/1.9.1/gems/passenger-2.2.4/test/stub/rails_apps/Macrotec/releases/20090724112629 && cd /usr/local/lib/ruby/gems/1.9.1/gems/passenger-2.2.4/test/stub/rails_apps/Macrotec/releases/20090724112629 && git checkout -q -b deploy a28798bc0d3b5688453a58bf4917d6c931187a7a && (echo a28798bc0d3b5688453a58bf4917d6c931187a7a > /usr/local/lib/ruby/gems/1.9.1/gems/passenger-2.2.4/test/stub/rails_apps/Macrotec/releases/20090724112629/REVISION)"
        servers: [""]
    Enter passphrase for c:/Users/Rick/.ssh/id_rsa:
        [] executing command
    *** [deploy:update_code] rolling back
      * executing "rm -rf /usr/local/lib/ruby/gems/1.9.1/gems/passenger-2.2.4/test/stub/rails_apps/Macrotec/releases/20090724112629; true"
        servers: [""]
     ** [deploy:update_code] exception while rolling back: TypeError, can't convert
    Net::SSH::Authentication::Pageant::Socket into IO
    c:/InstantRails/ruby/lib/ruby/gems/1.8/gems/capistrano-2.5.8/lib/capistrano/processable.rb:25:in `select': can't convert Net::SSH::Authentication::Pageant::Socket into IO (TypeError)
            from c:/InstantRails/ruby/lib/ruby/gems/1.8/gems/capistrano-2.5.8/lib/capistrano/processable.rb:25:in `process_iteration'
            from c:/InstantRails/ruby/lib/ruby/gems/1.8/gems/capistrano-2.5.8/lib/capistrano/command.rb:163:in `process!'
            from c:/InstantRails/ruby/lib/ruby/gems/1.8/gems/capistrano-2.5.8/lib/capistrano/command.rb:162:in `loop'
            from c:/InstantRails/ruby/lib/ruby/gems/1.8/gems/capistrano-2.5.8/lib/capistrano/command.rb:162:in `process!'
            from c:/InstantRails/ruby/lib/ruby/gems/1.8/gems/capistrano-2.5.8/lib/capistrano/command.rb:133:in `process'
            from c:/InstantRails/ruby/lib/ruby/gems/1.8/gems/capistrano-2.5.8/lib/capistrano/configuration/actions/invocation.rb:173:in `run_tree'
            from c:/InstantRails/ruby/lib/ruby/gems/1.8/gems/capistrano-2.5.8/lib/capistrano/configuration/connections.rb:172:in `execute_on_servers'
            from c:/InstantRails/ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `each_slice'
             ... 40 levels...
            from c:/InstantRails/ruby/lib/ruby/gems/1.8/gems/capistrano-2.5.8/lib/capistrano/cli/execute.rb:14:in `execute'
            from c:/InstantRails/ruby/lib/ruby/gems/1.8/gems/capistrano-2.5.8/bin/cap:4
            from c:/InstantRails/ruby/bin/cap:19:in `load'
            from c:/InstantRails/ruby/bin/cap:19

    You should have on your server (where you want deploy) installed yours access keys for git server.

    You should have yours key files (with chmod 600):


    in ~/.ssh directory (with chmod 700) on server in deploy user home

    you probably have that keys only on your local development computer.

    You can add for your deploy file hook for ‘setup:cold’ where will be automated
    upload of your local keys files.

    This question is really old, but I just encountered the same problem again on a windows 7 machine. You should add forward_agent and the location of your ssh key to your deploy config file: Here is my fix at config/deploy.rb:

    set :ssh_options,   :forward_agent => true 
    set :ssh_options,   :keys => %w(c:/Users/USERNAME/.ssh/id_rsa)

    Besides that, the best solution would be to develop rails applications (and to use capistrano) in a linux environment. This would avoid tons of such tricks, wordrounds and it would save plenty of time 🙂

    It’s not needed to have the ssh keys to access the repository server on the deploy mahcine. You can activate the SSH forward_agent, to make the ssh_agent follow you from machine to mache. To do this with capistrano, you can add this line to the deploy.rb file

    ssh_options[:forward_agent] = true

    Git Baby is a git and github fan, let's start git clone.