Capistrano deployment with password
I'm trying out Rubymine 4.5 RC and trying to run Capistrano but having a problem. I have a guess what might be wrong:
Normally, when I run it from the command line, it asks me for a password for the git repo. When I run it in Rubymine I get the following:
* executing `deploy:update_code'
updating the cached checkout on all servers
executing locally: "git ls-remote git@github.com:MY-REPO.git development"
*** [deploy:update_code] rolling back
* executing "rm -rf /path/to/project/releases/20120711214917; true"
servers: ["MY-SERVER.com"]
Password: stty: stdin isn't a terminal
stty: stdin isn't a terminal
So, is there a way to enter a password here?
Please sign in to leave a comment.
Hello, Paul
I think that here are the settings you can help. You can add it to the deploy.rb:
Please write us if not help.
Hi Anna,
Thanks for your quick response. I didn't want to put the passphrase in the file itself because that file is checked into source control. I can work around that easily by putting the password in a file and reading it in. However, when I did that, I still got the prompt like before. I realized that I can still type at that point, and typed in the passphrase. (Note that when I run this on the command line, I have to enter the password at three different places.) That got me to this message:
[MY-SERVER.com] executing command
command finished in 171ms
/Users/ME/.rvm/gems/ruby-1.9.3-p194/gems/capistrano-2.12.0/lib/capistrano/recipes/deploy.rb:107:in ``': No such file or directory - git ls-remote git@github.com:MY-PROJECT.git development (Errno::ENOENT)
Since I get a 404 from github when I try to go to my repo without logging in, I think that is probably the problem: it isn't logging in.
There is probably a different way to set up my deploy.rb file. Do you have a sample deploy.rb that works? (Preferably including RVM and a private git repo?)
Sorry for the delay in answer, was a lot of work before release RubyMine 4.5 :)
We have not support of tty, but we have the feature request in bugtracker, you can vote for it RUBY-11576. So, you should use console to deploy to private repository.
I have only a public reprository in github and have used instruction from here. Hope it helps for you.
Hi Paul,
Are you authorising by a straight username/password or is it an ssh session with a passphrase on the certificate?
If it's the latter, I long since gave up trying to reliably get capistrano to co-operate with a passphrase. I had some success using a local keyserver and preauthorising the key before starting cap, but network traffic would sometimes make the preauthorisation time out.
I tried a completely different method.
This method worked very well for me because I was on a fixed ip address, I imagine it would not be so easy if you're on a dynamic ip address.
I hope that might give you a little help. ...or at the very least give you some ideas to try.
Kind regards,
Geoff