avocado.core.task package¶
Submodules¶
avocado.core.task.runtime module¶
-
class
avocado.core.task.runtime.RuntimeTask(task)¶ Bases:
objectTask with extra status information on its life cycle status.
The
avocado.core.nrunner.Taskclass contains information that is necessary to describe its persistence and execution by itself.This class wraps a
avocado.core.nrunner.Task, with extra information about its execution by a spawner within a state machine.Instantiates a new RuntimeTask.
Parameters: task ( avocado.core.nrunner.Task) – The task to keep additional information about-
execution_timeout= None¶ Timeout limit for the completion of the task execution
-
spawner_handle= None¶ A handle that may be set by a spawner, and that may be spawner implementation specific, to keep track the task execution. This may be a PID, a container ID, a FQDN+PID etc.
-
spawning_result= None¶ The result of the spawning of a Task
-
status= None¶ Additional descriptive information about the task status
-
task= None¶
-
avocado.core.task.statemachine module¶
-
class
avocado.core.task.statemachine.TaskStateMachine(tasks, status_repo)¶ Bases:
objectRepresents all phases that a task can go through its life.
-
abort(status_reason=None)¶ Abort all non-started tasks.
This method will move all non-started tasks to finished with a specific reason.
Parameters: status_reason – string reason. Optional.
-
abort_queue(queue_name, status_reason=None)¶ Abort all tasks inside a specific queue adding a status reason.
Parameters: - queue_name – a string with the queue name.
- status_reason – string reason. Optional.
-
complete¶
-
finish_task(runtime_task, status_reason=None)¶ Include a task to the finished queue with a specific reason.
This method is assuming that you have removed (pop) the task from the original queue.
Parameters: - runtime_task – A running task object.
- status_reason – string reason. Optional.
-
finished¶
-
lock¶
-
ready¶
-
requested¶
-
started¶
-
triaging¶
-
-
class
avocado.core.task.statemachine.Worker(state_machine, spawner, max_triaging=None, max_running=None, task_timeout=None, failfast=False)¶ Bases:
object-
bootstrap()¶ Reads from requested, moves into triaging.
-
monitor()¶ Reads from started, moves into finished.
-
run()¶ Pushes Tasks forward and makes them do something with their lives.
-
start()¶ Reads from ready, moves into either: started or finished.
-
triage()¶ Reads from triaging, moves into either: ready or finished.
-