javan-всякий раз, когда не пишется crontab с развертыванием Capistrano

Я пытался получить всякий раз, когда работает на экземпляре ec2, который был создан с ec2 на рельсах.

Когда я выполняю развертывание с Capistrano, это указывает, что crontab был написан, но когда я захожу на сервер и запускаю crontab -l, он, похоже, не изменился.

Если я захожу в папку релизов и запускаю вручную всякий раз, когда --write-crontab, то запускаю crontab -l - он обновляется правильно.

Есть идеи, что может быть причиной этого?

Capistrano не указывает на какие-либо ошибки, поэтому не уверен, как отлаживать, пробовал миллиард перестановок и комбинаций, и ничего не меняется.

3 ответа

Решение
пространство имен:deploy do
  desc "написать файл crontab"
  задача:write_crontab,:role => [:db_admin] do  
    запускайте "cd #{release_path} && sudo -u root всякий раз, когда --write-crontab #{application}"
  конец  
конец

Или, по-видимому, также есть опция -user, когда это может помочь.

У вас должна быть возможность просто потребовать команду всякий раз, когда capistrano в вашем файле развертывания cap, вот так:

требуют 'всякий раз, когда / Capistrano'

если вы используете bundler, вам нужно добавить и это:

set: ever_command, 'bundle exec ever'

Это не связано с OP, но в соответствии с этой проблемой, Capistrano 2.11.1 нужен Всякий раз, когда 0.7.3, чтобы решить проблему.

Другие вопросы по тегам