seddy¶
Multi-workflow SWF decider and workflow management service.
Classes:
|
Policy for child executions on parent termination. |
|
SWF decision builder from DAG-type workflow specification. |
|
Dag-type SWF workflow specification. |
|
SWF decision builder. |
|
Workflow registration configuration. |
|
SWF workflow specification. |
Functions:
|
Load workflows specifications file. |
- class seddy.ChildPolicy(*values)[source]¶
Bases:
EnumPolicy for child executions on parent termination.
Attributes:
- ABANDON = 'ABANDON'¶
- REQUEST_CANCEL = 'REQUEST_CANCEL'¶
- TERMINATE = 'TERMINATE'¶
- class seddy.DAGBuilder(workflow: DAGWorkflow, task)[source]¶
Bases:
DecisionsBuilderSWF decision builder from DAG-type workflow specification.
Methods:
Build decisions from workflow history.
- class seddy.DAGWorkflow(name, version, task_specs: List[Task], description=None)[source]¶
Bases:
WorkflowDag-type SWF workflow specification.
- Parameters:
name – workflow name
version – workflow version
task_specs – DAG task specifications
Classes:
alias of
DAGBuilderAttributes:
Methods:
setup()Set up workflow specification.
- decisions_builder¶
alias of
DAGBuilder
- dependants: Dict[None | str, List[str]]¶
- spec_type = 'dag'¶
- class seddy.DecisionsBuilder(workflow: Workflow, task: Dict[str, Any])[source]¶
Bases:
objectSWF decision builder.
- Parameters:
workflow – workflow specification
task – decision task
Methods:
Build decisions from workflow history.
- class seddy.Registration(active: bool = True, task_timeout: int | str = None, execution_timeout: int = None, task_list: str = None, task_priority: int = None, child_policy: ChildPolicy = None, lambda_role: str = None)[source]¶
Bases:
objectWorkflow registration configuration.
- Parameters:
active – registration status,
Falsefor deprecatedtask_timeout – default decision task time-out (seconds), or “NONE” for unlimited
execution_timeout – default workflow execution time-out (seconds)
task_list – default decision task-list
task_priority – default decision task priority
child_policy – default policy for child executions upon parent execution termination
lambda_role – default IAM role for Lambda access
Attributes:
Methods:
from_spec(spec)Construct registration configuration from specification.
- active: bool = True¶
- child_policy: ChildPolicy = None¶
- execution_timeout: int = None¶
- classmethod from_spec(spec: Dict[str, Any])[source]¶
Construct registration configuration from specification.
- Parameters:
spec – workflow registration configuration specification
- lambda_role: str = None¶
- task_list: str = None¶
- task_priority: int = None¶
- task_timeout: int | str = None¶
- class seddy.Workflow(name: str, version: str, description: str = None, registration: Registration = None)[source]¶
Bases:
objectSWF workflow specification.
- Parameters:
name – workflow name
version – workflow version
registration – workflow registration configuration
Attributes:
Methods:
from_spec(spec)Construct workflow type from specification.
make_decisions(task)Build decisions from workflow history.
setup()Set up workflow specification.
- abstract property decisions_builder: Type[DecisionsBuilder]¶
- classmethod from_spec(spec: Dict[str, Any])[source]¶
Construct workflow type from specification.
- Parameters:
spec – workflow specification
- make_decisions(task: Dict[str, Any]) List[Dict[str, Any]][source]¶
Build decisions from workflow history.
- Parameters:
task – decision task
- Returns:
workflow decisions
- abstract property spec_type: str¶