2019-05-03 06:17:27 +08:00
|
|
|
# frozen_string_literal: true
|
|
|
|
|
2019-08-01 16:12:05 +08:00
|
|
|
require "benchmark"
|
|
|
|
|
2013-03-10 20:51:49 +08:00
|
|
|
desc "This task is called by the Heroku scheduler add-on"
|
|
|
|
|
|
|
|
task enqueue_digest_emails: :environment do
|
|
|
|
Jobs::EnqueueDigestEmails.new.execute(nil)
|
|
|
|
end
|
|
|
|
|
|
|
|
task category_stats: :environment do
|
|
|
|
Jobs::CategoryStats.new.execute(nil)
|
|
|
|
end
|
|
|
|
|
2013-03-29 01:02:59 +08:00
|
|
|
task periodical_updates: :environment do
|
|
|
|
Jobs::PeriodicalUpdates.new.execute(nil)
|
2013-03-10 20:51:49 +08:00
|
|
|
end
|
|
|
|
|
|
|
|
task version_check: :environment do
|
2024-02-23 14:12:28 +08:00
|
|
|
Jobs::CallDiscourseHub.new.execute(nil)
|
2013-03-10 20:51:49 +08:00
|
|
|
end
|
2017-08-26 00:19:27 +08:00
|
|
|
|
|
|
|
desc "run every task the scheduler knows about in that order, use only for debugging"
|
|
|
|
task "scheduler:run_all" => :environment do
|
2018-08-01 05:12:55 +08:00
|
|
|
MiniScheduler::Manager.discover_schedules.each do |schedule|
|
2017-08-26 00:19:27 +08:00
|
|
|
puts "Running #{schedule}"
|
2019-08-01 16:12:05 +08:00
|
|
|
elapsed = Benchmark.realtime { schedule.new.execute({}) }
|
|
|
|
puts "Elapsed #{(elapsed * 1000).to_i}ms"
|
2017-08-26 00:19:27 +08:00
|
|
|
end
|
|
|
|
end
|