Skip to content

Latest commit

 

History

History
65 lines (53 loc) · 1.91 KB

File metadata and controls

65 lines (53 loc) · 1.91 KB
title Context.submit_subtask
icon folder-gear
def ExecutionContext.submit_subtask(
  task: Task,
  depends_on: list[FutureTask] = None,
  cluster: str | None = None,
  max_retries: int = 0,
  optional: bool = False
) -> FutureTask

Submit a subtask from a currently executing task.

Parameters

The task to submit as a subtask. An optional list of tasks already submitted within the same context that this subtask depends on. An optional [cluster slug](/workflows/concepts/clusters#managing-clusters) for running the subtask. If not provided, the subtask runs on the same cluster as the parent task. Specify the maximum number of [retries](/workflows/concepts/tasks#retry-handling) for the subtask in case of failure. The default is 0. Whether the subtask is [optional](/workflows/concepts/tasks#optional-tasks). If `True`, the subtask will not fail the job if it fails. Tasks that depend on this task will still execute even if this task failed. The default is `False`.

Returns

A FutureTask object that represents the submitted subtask. Can be used to set up dependencies between tasks.

```python Python # within the execute method of a Task: subtask = context.submit_subtask(MySubtask()) dependent_subtask = context.submit_subtask( MyOtherSubtask(), depends_on=[subtask] ) gpu_task = context.submit_subtask( MyGPUTask(), cluster="gpu-cluster-slug" ) flaky_task = context.submit_subtask( MyFlakyTask(), max_retries=5 ) optional_task = context.submit_subtask( MyOptionalTask(), optional=True ) ```