active_scheduler is a gem to take a standard schedule one would use with resque scheduler and wraps it to work with ActiveJob.
Currently only Resque is supported, but pull requests to add other queues (sidekiq, etc) would be welcomed!
- Rails
- ActiveJob 4.2+
- ActiveSupport 4.2+
- Resque
- Resque Scheduler
Add active_scheduler
to your Gemfile.
In your Resque initializer:
require 'resque/server'
require 'resque/scheduler/server'
require 'active_scheduler'
# ... Set up your Resque ...
...
yaml_schedule = YAML.load_file("#{Rails.root}/config/resque_schedule.yaml") || {}
wrapped_schedule = ActiveScheduler::ResqueWrapper.wrap yaml_schedule
Resque.schedule = wrapped_schedule
simple_job:
every: "30s"
queue: "simple"
class: "SimpleJob"
args:
-
description: "It's a simple job."
ThisIsTheClass:
cron: "* * * *"
queue: 'cronny'
description: "Will call the ThisIsTheClass class"
- Written by @JustinAiken
- Wrapper class idea by @ryanwjackson
- Special thanks to Rocketmade for development resources.
MIT