Hi all, I've got a Jenkins build that runs a Capistrano deploy as a post-build action. Running the Capistrano task as the Jenkins user from the console works absolutely fine and without a password prompt (I've previously set up SSH keys on both build and staging server). However, when running the same script through Jenkins, I suddenly get a password prompt and the build subsequently fails (no TTY present).
[workspace] $ /bin/sh -xe /tmp/hudson7321493219694918714.sh > Performing Post build task... > Match found for : : True > Logical operation result is TRUE > Running script : cap _2.13.4_ deploy > [workspace] $ /bin/sh -xe /tmp/hudson1545664641721322948.sh > + cap _2.13.4_ deploy > * executing `deploy' > * executing `deploy:update' > ** transaction: start > * executing `deploy:update_code' > triggering before callbacks for `deploy:update_code' > [32m--> Updating code base with checkout strategy[0m > executing locally: "git ls-remote > g...@my.staging-server.com:my_project.git master" > command finished in 1200ms > * executing "git clone -q g...@my.staging-server.com:my_project.git > /var/www/staging/my_project/releases/20121029223619 && cd > /var/www/staging/my_project/releases/20121029223619 && git checkout -q -b > deploy 1fb11d669a6cb5a714d077162305dfcfaba82f01 && (echo > 1fb11d669a6cb5a714d077162305dfcfaba82f01 > > /var/www/staging/my_project/releases/20121029223619/REVISION)" > servers: ["my.staging-server.com"] > Password: stty: standard input: Inappropriate ioctl for device > stty: standard input: Inappropriate ioctl for device > stty: standard input: Inappropriate ioctl for device > > *** [deploy:update_code] rolling back > * executing "rm -rf > /var/www/staging/my_project/releases/20121029223619; true" > servers: ["my.staging-server.com"] > ** [deploy:update_code] exception while rolling back: > Capistrano::ConnectionError, connection failed for: my.staging-server.com > (Net::SSH::AuthenticationFailed: not-specified) > connection failed for: my.staging-server.com > (Net::SSH::AuthenticationFailed: not-specified) > POST BUILD TASK : FAILURE It looks like Ruby doesn't pick my SSH key up when running through Jenkins perhaps (`Net::SSH::AuthenticationFailed: not-specified`)? Does anyone have an idea what might be going wrong here?