Задание Cron запланировано, но не запущено задание - PullRequest
2 голосов
/ 03 августа 2011

Я изо всех сил пытаюсь запустить работу cron. Вот что у меня есть:

*/1 * * * * cd /home/jose/work/Cronox/lib/tasks/rake wines:destroy_wines >> /home/jose/crontab_errors.txt

Моя задача выглядит так:

namespace :wines do
  desc "delete all wines"
  task :destroy_wines => :environment do |t|
    Wine.delete_all!
  end
end

Если я использую эту команду: tail -f / var / log / syslog Я вижу это:

(jose) CMD (cd /home/jose/work/Cronox/lib/tasks/rake wines:destroy_wines >> /home/jose/crontab_errors.txt)

Каждую минуту, но это ничего не делает вообще. Я также использую rvm Это как-то связано с этим?

Еще одна вещь: при выполнении вручную задача отлично работает.

Чего мне не хватает,

пожалуйста, пожалуйста, помогите мне!

Ответы [ 3 ]

3 голосов
/ 28 февраля 2013

Я использовал что-то похожее на ответ Джеффа, но мне пришлось вызвать bundle exec, чтобы правильно запустить задачу rake, и для этого мне пришлось использовать команду rvm do. Полный cronjob выглядит так:

*/15 * * * * cd /path/to/rails/app && /path/to/rvm 1.9.3-p392 do bundle exec rake RAILS_ENV=production my:rake:task >> tasks.log 2>&1
3 голосов
/ 01 августа 2013

Я создал пример, и это командная строка:

 /bin/bash -l -c 'cd /home/myusername/rails_apps/yourapplicationname && RAILS_ENV=production bundle exec rake admin:update_folios --trace --silent >> log/error_updating_folios.log'

Вы можете найти полное руководство здесь:

http://heridev.com.mx/ruby/how-to-create-a-cron-job-for-ruby-on-rails-application-in-a-server-wich-uses-cpanel/

Ура!

2 голосов
/ 03 августа 2011

Вы не вызываете рейк, вы просто переходите в каталог.Попробуйте

*/1 * * * * cd /home/jose/work/Cronox/ && rake wines:destroy_wines >> /home/jose/crontab_errors.txt
...