No he usado cron antes, así que no puedo estar seguro de haberlo hecho bien. Las tareas que quiero automatizar no parecen estar ejecutándose. Hice estos pasos en el terminal: GemaAyuda con la gema "Whenever" en Ruby para las tareas cron
- sudo instalar cada vez que
- cambio en el directorio de la aplicación
- wheneverize. (Esto creó el archivo schedule.rb)
He añadido este código para schedule.rb:
every 10.minutes do runner "User.vote", environment => "development" end every :hour do runner "Digest.rss", :environment => "development" end
que añade este código para deploy.rb:
after "deploy:symlink", "deploy:update_crontab" namespace :deploy do desc "Update the crontab file" task :update_crontab, :roles => :db do run "cd #{current_path} && whenever --update-crontab #{application}" end end
Hice esto en el terminal: cada vez que
volvió:
@hourly cd /Users/RedApple/S && script/runner -e development 'Digest.rss' 0,10,20,30,40,50 * * * * cd /Users/RedApple/S && script/runner -e development 'User.vote'
ejecución de estos comandos de forma individual en las obras de terminal:
script/runner -e development 'Digest.rss' script/runner -e development 'User.vote'
Ahora ejecuta un servidor local en el modo de desarrollo, escritura/servidor, no veo ninguna evidencia de que el código está siendo realmente plazo. ¿Hay algún paso que no hice? No hay guías para "Siempre" que muestren algo más que lo que hice.
Tenga en cuenta que cada vez que -i es una poco más seguro que cuando -w, que sobrescribirá todo tu crontab. El primero solo actualiza las entradas en crontab relacionadas con cada vez, dejando intactas las demás entradas. Siempre puede verificar que su crontab se haya actualizado correctamente ejecutando crontab -l. – Ross