Class: SpreeCmCommissioner::MaintenanceTasks::OrchestrateJob

Inherits:
ApplicationJob show all
Defined in:
app/jobs/spree_cm_commissioner/maintenance_tasks/orchestrate_job.rb

Constant Summary collapse

BATCH_SIZE =
ENV.fetch('MAINTENANCE_TASKS_BATCH_SIZE', '100').to_i

Instance Method Summary collapse

Methods included from ApplicationJobDecorator

handle_deserialization_error, prepended

Instance Method Details

#performObject

Scheduled job that orchestrates maintenance tasks by enqueuing individual processor jobs. Thin wrapper for Orchestrate service. ApplicationJob handles error logging via around_perform hook.



20
21
22
23
24
25
# File 'app/jobs/spree_cm_commissioner/maintenance_tasks/orchestrate_job.rb', line 20

def perform
  tasks = SpreeCmCommissioner::MaintenanceTask.due_for_retry.order(created_at: :asc).limit(BATCH_SIZE)
  return if tasks.empty?

  tasks.each(&:async_execute)
end