selinon.dispatcher module¶
Selinon Dispatcher task implementation.
-
class
selinon.dispatcher.Dispatcher[source]¶ Bases:
celery.app.task.TaskSelinon Dispatcher worker implementation.
-
acks_late= True¶
-
flow_failure(state)[source]¶ Mark the whole flow as failed ignoring retry configuration.
Parameters: state – flow state that should be captured Raises: celery.exceptions.Retry – Celery’s retry exception, always
-
ignore_result= False¶
-
max_retries= None¶
-
migrate_message(flow_info)[source]¶ Perform migration of state first before proceeding.
Parameters: flow_info – information about the current flow
-
name= 'selinon.Dispatcher'¶
-
priority= None¶
-
rate_limit= None¶
-
reject_on_worker_lost= None¶
-
request_stack= <celery.utils.threads._LocalStack object>¶
-
run(flow_name, node_args=None, parent=None, retried_count=None, retry=None, state=None, selective=False, migration_version=None)[source]¶ Dispatcher entry-point - run each time a dispatcher is scheduled.
Parameters: - flow_name – name of the flow
- parent – flow parent nodes
- node_args – arguments for workers
- retried_count – number of Selinon retries done (not Celery retries)
- retry – last retry countdown
- state – the current system state
- selective – selective flow information if run in selective flow
- migration_version – migration version that was used for the flow
Raises: FlowError
-
selinon_retry(flow_info, adjust_retried_count=True, keep_state=True)[source]¶ Retry whole flow on failure if configured so, forget any progress done so far.
Parameters: Raises: celery.Retry – always
-
serializer= 'json'¶
-
store_errors_even_if_ignored= False¶
-
track_started= True¶
-
typing= True¶
-
