aria.orchestrator.workflows.executor

Task executors.

aria.orchestrator.workflows.executor.base

Base class for task executors.

class aria.orchestrator.workflows.executor.base.BaseExecutor(*args, **kwargs)

Bases: aria.logger.LoggerMixin

Base class for task executors.

close()

Closes the executor.

execute(ctx)

Executes a task.

Parameters:task – task to execute
terminate(ctx)

Terminate the executing task :return:

class aria.orchestrator.workflows.executor.base.StubTaskExecutor(*args, **kwargs)

Bases: aria.orchestrator.workflows.executor.base.BaseExecutor

execute(ctx, *args, **kwargs)

aria.orchestrator.workflows.executor.celery

Celery task executor.

class aria.orchestrator.workflows.executor.celery.CeleryExecutor(app, *args, **kwargs)

Bases: aria.orchestrator.workflows.executor.base.BaseExecutor

Celery task executor.

close()

aria.orchestrator.workflows.executor.dry

Dry task executor.

class aria.orchestrator.workflows.executor.dry.DryExecutor(*args, **kwargs)

Bases: aria.orchestrator.workflows.executor.base.BaseExecutor

Dry task executor: prints task information without causing any side effects.

execute(ctx)

aria.orchestrator.workflows.executor.process

Sub-process task executor.

class aria.orchestrator.workflows.executor.process.ProcessExecutor(plugin_manager=None, python_path=None, *args, **kwargs)

Bases: aria.orchestrator.workflows.executor.base.BaseExecutor

Sub-process task executor.

close()
terminate(task_id)

aria.orchestrator.workflows.executor.thread

Thread task executor.

class aria.orchestrator.workflows.executor.thread.ThreadExecutor(pool_size=1, *args, **kwargs)

Bases: aria.orchestrator.workflows.executor.base.BaseExecutor

Thread task executor.

It’s easier writing tests using this executor rather than the full-blown sub-process executor.

Note: This executor is incapable of running plugin operations.

close()