Вы можете использовать Ruby (и, следовательно, Rails) с гемом whenever
. Это довольно просто: вы можете создать простой сценарий или задачу для проверки базы данных, и, если сегодня день рождения, отправьте почтовую программу через Rails. Затем, используя whenever
, вы помещаете этот скрипт в их файл schedule.rb
, говоря, что запускаете его каждый день в определенное время. Затем вы запускаете команду установки whenever -i
, и она автоматически настраивает ваш crontab для запуска вашего скрипта Rails, который обращается к вашей БД. Это супер просто и использует cron, но с легкостью Ruby.
Вот пример того, как это будет выглядеть в config/schedule.rb
Я использую:
every 1.day, at: '1:00am' do
rake "task:send_letters", environment: 'production'
end
every 1.day, at: '3:45 am' do
command "cat /dev/null > /home/deploy/cronlog.log", environment: 'production'
runner "Billing.set_invoiced_amounts", environment: 'production'
end
После того, как вы запустите команду установки, взгляните на crontab -l
, вы увидите, что все вышеперечисленное переведено в формат cron отлично, в то же время вызывая нужные среды и необходимые настройки.
Документы с драгоценными камнями в большинстве своем довольно хороши.
https://github.com/javan/whenever