2015-10-04 14 views
1

Проблема в том, что я использую monit с capistrano. Каковы мои ошибки?Горячий для развертывания capistrano sidekiq monit с правильным разрешением

INFO [843c196b] Running /usr/bin/env sudo mv /tmp/monit.conf /etc/monit/conf.d/sidekiq_admin-api_production.conf as [email protected] 
DEBUG [843c196b] Command: (RBENV_ROOT=~/.rbenv RBENV_VERSION=2.2.3 /usr/bin/env sudo mv /tmp/monit.conf /etc/monit/conf.d/sidekiq_admin-api_production.conf) 
DEBUG [843c196b] sudo: no tty present and no askpass program specified 
(Backtrace restricted to imported tasks) 
cap aborted! 
SSHKit::Runner::ExecuteError: Exception while executing as [email protected]: sudo exit status: 1 
sudo stdout: Nothing written 
sudo stderr: sudo: no tty present and no askpass program specified 

Я пробовал авторизацию ssh ключа.

Изменить разрешение папки для моего пользователя (/tmp/monit.conf /etc/monit/conf.d/)

набор: PTy, ложные

набор: use_sudo, ложные

Судо файл

Мой файл Судо является:

# User privilege specification 
root ALL=(ALL:ALL) ALL 
deployer ALL=(ALL) NOPASSWD:ALL 
# Members of the admin group may gain root privileges 
%admin ALL=(ALL) ALL 

# Allow members of group sudo to execute any command 
%sudo ALL=(ALL:ALL) ALL 

ответ

1

Вы должны добавить директиву SUDO который позволяет команде запускаться без ввода пароля. Ошибка говорит вам, что sudo пытается запросить пароль и не может. Возможно, команда NOPASSWD.

+1

Ну я изменяю% Судо \t ALL = (ALL) NOPASSWD: ALL, он рабочий = D – user2258959

+0

Если решить вашу проблему, пожалуйста, отметьте его в качестве ответа. Благодаря! –

0

В capistrano 3 вам необходимо установить pty. Разрешение команды sudo на вашем сервере без ввода пароля может привести к риску вашего сервера.

set :pty, true