Capistrano fails for multiple host deployments

Posted by morris082 on Stack Overflow See other posts from Stack Overflow or by morris082
Published on 2010-04-27T02:17:56Z Indexed on 2010/04/27 2:23 UTC
Read the original article Hit count: 338

Filed under:

I be at a loss here, and after scouring the seas (read: internet) for solutions I am left with none other than to hit up the stack. any help appreciated.

I have capistrano running locally for deployments onto several different environments. (I'm on windows 7, fwiw). All was well until I needed to deploy to multiple :app servers during a single deployment.

Usually I'm prompted for my ssh passphrase once when I call 'cap deploy'. I have ssh-agent running (git never pesters for my pass) but despite this Capistrano has always bugged me once each deployment. Regardless, it always worked when deploying to ONE host.

Now, when I attempt to deploy to multiple servers at once, it asks for my passphrase what appears to be multiple times:

(ips removed by ME)

servers: ["redacted", "redacted"]<br />
Enter passphrase for ~/.ssh/id_rsa: Enter passphrase for ~/.ssh/id_rsa: 

So with the above I enter my passphrase but this doesn't work. It waits as little while, then spits out this error:

connection failed for: <one of the server ips> (NoMethodError: undefined method `overwrite' for nil:NilClass)

And that's the end of that.

  1. I can "passwordless" ssh into the servers I'm deploying on just fine.
  2. I'm pretty certain the ssh-agent is running since I can hit Git w/out entering my passphrase every time
  3. Using 'forward_agent' setting in cap deploy did not work.
  4. This is my role:
    role :app, "ip 1 removed", "ip 2 removed"
  5. If i set default_run_options[:max_hosts] = 1, it works OK but it asks for my passphrase for every single connection to each host I'm deploying to.. which ends up being a lot.

Essentially I'm looking for any of the below (but not limited to): - "You're never going to fix that on windows" - "This is how you get REAL passwordless deployment in capistrano" - "Have you overlooked this setting/feature?" - "I have a rock that can fix anything, you may borrow it"

Thanks!

© Stack Overflow or respective owner

Related posts about capistrano