javan-всякий раз, когда не пишется crontab с развертыванием Capistrano
-
06-07-2019 - |
Вопрос
Я пытался получить его при каждом запуске экземпляра ec2, созданного с помощью ec2 на рельсах.
Когда я выполняю развертывание с Capistrano, это указывает, что crontab был написан, но когда я захожу на сервер и запускаю crontab -l, он, похоже, не изменился. Р>
Если я захожу в папку выпуска и вручную запускаю всякий раз, когда --write-crontab, то запускаю crontab -l - он обновляется должным образом. Р>
Есть идеи, что может быть причиной этого? Р>
Capistrano не указывает на какие-либо ошибки, поэтому не уверен, как отлаживать, перепробовал миллиард перестановок и комбинаций, и ничего не изменилось. Р>
Решение 2
namespace :deploy do desc "write the crontab file" task :write_crontab, :roles => [:db_admin] do run "cd #{release_path} && sudo -u root whenever --write-crontab #{application}" end end
Или, по-видимому, также есть опция -user, когда это может помочь.
Другие советы
у вас должна быть возможность просто потребовать команду всякий раз, когда capistrano в вашем файле развертывания cap, примерно так:
требовать 'всякий раз, когда / capistrano'
если вы используете упаковщик, вам также нужно добавить это:
set: each_command, 'bundle exec всякий раз'
Это не относится к OP, но в соответствии с этой проблемой , Capistrano 2.11. Для устранения проблемы требуется 0,7,3.