watcher.applier.workflow_engine.default module

watcher.applier.workflow_engine.default module

service None

Bases: watcher.applier.workflow_engine.base.BaseWorkFlowEngine

Taskflow as a workflow engine for Watcher

Full documentation on taskflow at https://docs.openstack.org/taskflow/latest

DefaultWorkFlowEngine.decider(history)
DefaultWorkFlowEngine.execute(actions)
classmethod DefaultWorkFlowEngine.get_config_opts()

Defines the configuration options to be associated to this loadable

Returns:A list of configuration options relative to this Loadable
Return type:list of oslo_config.cfg.Opt instances
DefaultWorkFlowEngine.get_execution_rule(actions)
service None

Bases: watcher.applier.workflow_engine.base.BaseTaskFlowActionContainer

TaskFlowActionContainer.do_abort(*args, **kwargs)
TaskFlowActionContainer.do_execute(*args, **kwargs)
TaskFlowActionContainer.do_post_execute()
TaskFlowActionContainer.do_pre_execute()
TaskFlowActionContainer.do_revert(*args, **kwargs)
service None

Bases: taskflow.task.Task

This class is used in case of the workflow have only one Action.

We need at least two atoms to create a link.

TaskFlowNop.execute()[source]

Activate a given atom which will perform some operation and return.

This method can be used to perform an action on a given set of input requirements (passed in via *args and **kwargs) to accomplish some type of operation. This operation may provide some named outputs/results as a result of it executing for later reverting (or for other atoms to depend on).

NOTE(harlowja): the result (if any) that is returned should be persistable so that it can be passed back into this atom if reverting is triggered (especially in the case where reverting happens in a different python process or on a remote machine) and so that the result can be transmitted to other atoms (which may be local or remote).

Parameters:
  • args – positional arguments that atom requires to execute.
  • kwargs – any keyword arguments that atom requires to execute.
Creative Commons Attribution 3.0 License

Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.