2010-12-08 9 views
1

J'ai commencé à utiliser la gemme Whenever pour planifier des tâches cron avec des rails.Exécution de rake à partir de cron

Mais malheureusement râteau ne fonctionnera pas, j'ai tracé le problème à l'environnement n'étant pas chargé.

Le bijou à chaque fois que génère des scripts comme:

/bin/bash -l -c '.... 

J'ai réussi à le faire fonctionner avec

/bin/bash -i -c '... 

[Le changement est -i (interactive) au lieu de -l (login)] Basé sur les documents de cron, leur syntaxe est correcte.

Quelqu'un peut-il donner un indice sur la raison pour laquelle il pourrait échouer sur Ubuntu 10.4?

Merci

+0

Peut-être avez-vous eu le même problème avec moi http://stackoverflow.com/questions/13410245/connection-refuse-when-sending-mail-with-cron-tab/13638766#13638766 – duykhoa

Répondre

1

Comme vous utilisez chaque fois bijou, tout d'abord créer une tâche :cron, ce qui serait quelque chose comme ceci:

task :cron => :environment do 

    Rake::Task['db:your-development-env'].invoke 

end 

Puis dans votre config/schedule.rb, configuration votre temps de sauvegarde:

set :output, "/tmp/cron_log.log" 
every 1.day, at: '1:00 am' do; rake 'cron'; end 

pour passer les paramètres crontab:

whenever --update-crontab 
Questions connexes