Я запускаю приложение Rails 3.2.18 на AWS. Это приложение развертывается с использованием Capistrano, включая запуск Resque для приложения.Запуск команды Capistrano при запуске экземпляра
Моя проблема заключается в том, что AWS может иногда перезапускать экземпляры с незначительным предупреждением или экземпляр может быть перезапущен с консоли AWS. Когда это произойдет, Resque не запускается, как это происходит во время нашего обычного процесса развертывания.
Я попытался создать сценарий оболочки в /etc/init.d
, чтобы запустить Resque при загрузке, но этот скрипт продолжает запрашивать пароль, и я не уверен, что мне не хватает. Суть запуска скрипта:
/bin/su -l deploy-user -c "/www/apps/deploy-user/current && bundle exec cap <environment> resque:scheduler:start resque:start"
Очевидно вышеприведенной команда работает, как ожидалось при запуске в качестве пользователя «развернуть» с Баш строки, но при запуске через sudo /etc/init.d/resque start
, он запрашивает пароль при запустив первый Капистрано.
Есть ли что-то вопиющее, что мне не хватает? Или, может быть, есть лучший способ сделать это?
Ах, я скопировал старую команду, а не тот, который на самом деле вызвал вопрос. Я использую флаг '-c', и он все еще не работает. Я обновил вопрос. – CDub