2012-04-26 2 views
5

Недавно я начал использовать capistrano в моем развертывании приложений rails. Он работал отлично для меня, а потом вдруг, я начал получать эту ошибкуcapistrano: sudo error после того, как он работал нормально до

sorry, you must have a tty to run sudo 

после каждого драгоценного камня он попытался установить. Я знаю, что эту проблему обычно можно решить, вставив в файл deploy.rb :use_sudo, false, но у меня уже есть это. И самое странное в том, что я вернул свою быструю директорию, когда я точно знаю, что capistrano работает, и это все равно дает мне ту же ошибку.

Мой сервер работает под управлением CentOS

Так что может проблема, возможно, быть вызвано? Есть идеи?

ответ

4

Вы можете сказать, шапочку, чтобы создать PTY для каждого процесса, добавив следующую строку:

default_run_options[:pty] = true

к Capfile

1

Для Capistrano 3 вам нужно добавить:

set :pty, true

к файлу config/deploy.rb

+0

будет ли он запрашивать пароль? Я попробовал это, и когда я напечатаю его, явным образом покажу пароль. –

+0

Я использую ключи SSH, а не пароль – ajtrichards

+1

ну, у меня тоже есть ключи SSH. Он запрашивает пароль для следующей команды: (RBENV_ROOT =/home/deployer/.rbenv RBENV_VERSION = 2.1.2/usr/bin/env sudo ln -nfs/home/deployer/apps/managewise_production/shared/config/nginx. conf/etc/nginx/sites-enabled /) '. –

Смежные вопросы