aria.orchestrator

Orchestrator package.

aria.orchestrator.decorators

Workflow and operation decorators.

aria.orchestrator.decorators.operation(func=None, toolbelt=False, suffix_template='', logging_handlers=None)

Operation decorator.

aria.orchestrator.decorators.workflow(func=None, suffix_template='')

Workflow decorator.

aria.orchestrator.events

Orchestrator events.

aria.orchestrator.exceptions

Orchestrator exceptions.

exception aria.orchestrator.exceptions.ActiveExecutionsError

Bases: aria.exceptions.AriaError

Raised when attempting to execute a workflow on a service which already has an active execution

exception aria.orchestrator.exceptions.InvalidPluginError

Bases: aria.exceptions.AriaError

Raised when an invalid plugin is validated unsuccessfully

exception aria.orchestrator.exceptions.InvalidWorkflowRunnerParams

Bases: aria.exceptions.AriaError

Raised when invalid combination of arguments is passed to the workflow runner

exception aria.orchestrator.exceptions.OrchestratorError

Bases: aria.exceptions.AriaError

Orchestrator based exception

exception aria.orchestrator.exceptions.PluginAlreadyExistsError

Bases: aria.exceptions.AriaError

Raised when a plugin with the same package name and package version already exists

exception aria.orchestrator.exceptions.TaskAbortException

Bases: exceptions.RuntimeError

Used internally when ctx.task.abort is called

exception aria.orchestrator.exceptions.TaskRetryException(message, retry_interval=None)

Bases: exceptions.RuntimeError

Used internally when ctx.task.retry is called

exception aria.orchestrator.exceptions.UndeclaredWorkflowError

Bases: aria.exceptions.AriaError

Raised when attempting to execute an undeclared workflow

exception aria.orchestrator.exceptions.WorkflowImplementationNotFoundError

Bases: aria.exceptions.AriaError

Raised when attempting to import a workflow’s code but the implementation is not found

aria.orchestrator.plugin

Plugin management.

class aria.orchestrator.plugin.PluginManager(model, plugins_dir)

Bases: object

Parameters:plugins_dir – root directory in which to install plugins
get_plugin_dir(plugin)
install(source)

Install a wagon plugin.

load_plugin(plugin, env=None)

Load the plugin into an environment.

Loading the plugin means the plugin’s code and binaries paths will be appended to the environment’s PATH and PYTHONPATH, thereby allowing usage of the plugin.

Parameters:
  • plugin – plugin to load
  • env – environment to load the plugin into; If None, os.environ will be used
static validate_plugin(source)

Validate a plugin archive.

A valid plugin is a wagon in the zip format (suffix may also be .wgn).

aria.orchestrator.execution_preparer

class aria.orchestrator.execution_preparer.ExecutionPreparer(model_storage, resource_storage, plugin_manager, service, workflow_name, task_max_attempts=None, task_retry_interval=None)

Bases: object

This class manages any execution and tasks related preparation for an execution of a workflow.

get_workflow_ctx(execution)
prepare(execution_inputs=None, executor=None, execution_id=None)

If there is a need to prepare a new execution (e.g. execution_id is not provided), a new execution and task models are created. Any any case, a corresponding workflow context is returned.

Parameters:
  • execution_inputs – inputs for the execution.
  • executor – the execution for the tasks
  • execution_id – used for an existing execution (mainly for resuming).
Returns: