11 June 2008

Capistrano deploy fails because of svn problem

If you come accross:

/yourdomain2.0$ cap deploy
* executing `deploy'
* executing `deploy:update'
** transaction: start
* executing `deploy:update_code'
updating the cached checkout on all servers
* executing "if [ -d /home/yourdomain/public_html/beta.yourdomain.com/shared/cached-copy ]; then svn update -q -r65 /home/yourdomain/public_html/beta.yourdomain.com/shared/cached-copy; else svn checkout -q -r65 svn+ssh://yourdomain@dev.yourdomain.com/home/yourdomain/svn/yourdomain2.0/trunk /home/yourdomain/public_html/beta.yourdomain.com/shared/cached-copy; fi"
servers: ["beta.yourdomain.com"]
[beta.yourdomain.com] executing command
** [err] Permission denied, please try again.
** [err] Received disconnect from 666.999.999.999: 2: Too many authentication failures for yourdomain
** [err] svn: Connection closed unexpectedly
command finished
*** [deploy:update_code] rolling back
* executing "rm -rf /home/yourdomain/public_html/beta.yourdomain.com/releases/20080610143536; true"
servers: ["beta.yourdomain.com"]
[beta.yourdomain.com] executing command
command finished
command "if [ -d /home/yourdomain/public_html/beta.yourdomain.com/shared/cached-copy ]; then svn update -q -r65 /home/yourdomain/public_html/beta.yourdomain.com/shared/cached-copy; else svn checkout -q -r65 svn+ssh://yourdomain@dev.yourdomain.com/home/yourdomain/svn/yourdomain2.0/trunk /home/yourdomain/public_html/beta.yourdomain.com/shared/cached-copy; fi" failed on beta.yourdomain.com

The solution is quick and easy, add the following line to your capistrano deploy.rb:

default_run_options[:pty] = true

Thanks Mr capistrano Google group!

No comments: