def load_schedule_job(name, config)
configured_env = config['rails_env'] || config['env']
if configured_env.nil? || env_matches?(configured_env)
log! "Scheduling #{name} "
interval_defined = false
interval_types = %w(cron every)
interval_types.each do |interval_type|
next unless !config[interval_type].nil? && !config[interval_type].empty?
args = optionizate_interval_value(config[interval_type])
args = [args, nil, job: true] if args.is_a?(::String)
job = rufus_scheduler.send(interval_type, *args) do
enqueue_recurring(name, config)
end
@scheduled_jobs[name] = job
interval_defined = true
break
end
unless interval_defined
log! "no #{interval_types.join(' / ')} found for " \
"#{config['class']} (#{name}) - skipping"
end
else
log "Skipping schedule of #{name} because configured " \
"env #{configured_env.inspect} does not match current " \
"env #{env.inspect}"
end
end