class Dynflow::Executors::Sidekiq::OrchestratorJobs::WorkerDone
handles resposnes about finished work form the workers or some event to handle on orchestrator side
Public Instance Methods
perform(work_item, delayed_events = nil)
click to toggle source
@param request_envelope [Dispatcher::Request] - request to handle on orchestrator side
usually to start new execution or to pass some event
# File lib/dynflow/executors/sidekiq/orchestrator_jobs.rb, line 12 def perform(work_item, delayed_events = nil) # Usually the step is saved on the worker's side. However if sidekiq is shut down, # then the step may not have been saved so we save it just to be sure if work_item.is_a?(Director::StepWorkItem) && work_item.step&.error&.exception_class == ::Sidekiq::Shutdown work_item.step.save end Dynflow.process_world.executor.core.tell([:work_finished, work_item, delayed_events]) end