brickflow.engine.workflow.Workflow(_name: str, schedule_quartz_expression: Optional[str] = None, schedule_continuous: Optional[JobsContinuous] = None, timezone: str = 'UTC', schedule_pause_status: str = 'UNPAUSED', default_cluster: Optional[Cluster] = None, clusters: List[Cluster] = lambda: [](), health: Optional[List[JobsHealthRules]] = None, timeout_seconds: Optional[int] = None, default_task_settings: TaskSettings = TaskSettings(), email_notifications: Optional[WorkflowEmailNotifications] = None, webhook_notifications: Optional[WorkflowWebhookNotifications] = None, notification_settings: Optional[WorkflowNotificationSettings] = None, trigger: Optional[Trigger] = None, libraries: List[TaskLibrary] = lambda: [](), tags: Optional[Dict[str, str]] = None, max_concurrent_runs: int = 1, permissions: WorkflowPermissions = WorkflowPermissions(), active_task: Optional[str] = None, graph: nx.DiGraph = nx.DiGraph(), tasks: Dict[str, Task] = lambda: {}(), prefix: Optional[str] = None, suffix: Optional[str] = None, common_task_parameters: Optional[Dict[str, str]] = None, run_as_user: Optional[str] = None, run_as_service_principal: Optional[str] = None, max_tasks_in_workflow: int = 100, enable_plugins: Optional[bool] = None)
dataclass
¶active_task: Optional[str] = None
class-attribute
instance-attribute
¶bfs_layers: List[str]
property
¶clusters: List[Cluster] = field(default_factory=lambda: [])
class-attribute
instance-attribute
¶common_task_parameters: Optional[Dict[str, str]] = None
class-attribute
instance-attribute
¶default_cluster: Optional[Cluster] = None
class-attribute
instance-attribute
¶default_task_settings: TaskSettings = TaskSettings()
class-attribute
instance-attribute
¶email_notifications: Optional[WorkflowEmailNotifications] = None
class-attribute
instance-attribute
¶enable_plugins: Optional[bool] = None
class-attribute
instance-attribute
¶graph: nx.DiGraph = field(default_factory=nx.DiGraph)
class-attribute
instance-attribute
¶health: Optional[List[JobsHealthRules]] = None
class-attribute
instance-attribute
¶libraries: List[TaskLibrary] = field(default_factory=lambda: [])
class-attribute
instance-attribute
¶max_concurrent_runs: int = 1
class-attribute
instance-attribute
¶max_tasks_in_workflow: int = 100
class-attribute
instance-attribute
¶name: str
property
¶notification_settings: Optional[WorkflowNotificationSettings] = None
class-attribute
instance-attribute
¶permissions: WorkflowPermissions = WorkflowPermissions()
class-attribute
instance-attribute
¶prefix: Optional[str] = None
class-attribute
instance-attribute
¶run_as_service_principal: Optional[str] = None
class-attribute
instance-attribute
¶run_as_user: Optional[str] = None
class-attribute
instance-attribute
¶schedule_continuous: Optional[JobsContinuous] = None
class-attribute
instance-attribute
¶schedule_pause_status: str = 'UNPAUSED'
class-attribute
instance-attribute
¶schedule_quartz_expression: Optional[str] = None
class-attribute
instance-attribute
¶suffix: Optional[str] = None
class-attribute
instance-attribute
¶tags: Optional[Dict[str, str]] = None
class-attribute
instance-attribute
¶tasks: Dict[str, Task] = field(default_factory=lambda: {})
class-attribute
instance-attribute
¶timeout_seconds: Optional[int] = None
class-attribute
instance-attribute
¶timezone: str = 'UTC'
class-attribute
instance-attribute
¶trigger: Optional[Trigger] = None
class-attribute
instance-attribute
¶unique_new_clusters: List[Cluster]
property
¶webhook_notifications: Optional[WorkflowWebhookNotifications] = None
class-attribute
instance-attribute
¶bfs_task_iter() -> Iterator[Task]
¶check_no_active_task() -> None
¶dlt_task(task_func: Optional[Callable] = None, name: Optional[str] = None, task_settings: Optional[TaskSettings] = None, depends_on: Optional[Union[Callable, str, List[Union[Callable, str]]]] = None, if_else_outcome: Optional[Dict[Union[str, str], str]] = None) -> Callable
¶brickflow/engine/workflow.py
get_task(task_id: str) -> Task
¶if_else_condition_task(task_func: Optional[Callable] = None, name: Optional[str] = None, task_settings: Optional[TaskSettings] = None, depends_on: Optional[Union[Callable, str, List[Union[Callable, str]]]] = None, if_else_outcome: Optional[Dict[Union[str, str], str]] = None) -> Callable
¶brickflow/engine/workflow.py
log_timeout_warning(task_settings: TaskSettings) -> bool
¶brickflow/engine/workflow.py
notebook_task(task_func: Optional[Callable] = None, name: Optional[str] = None, cluster: Optional[Cluster] = None, libraries: Optional[List[TaskLibrary]] = None, task_settings: Optional[TaskSettings] = None, depends_on: Optional[Union[Callable, str, List[Union[Callable, str]]]] = None, if_else_outcome: Optional[Dict[Union[str, str], str]] = None) -> Callable
¶brickflow/engine/workflow.py
parents(node: str) -> Iterator
¶pop_task(task_id: str) -> None
¶run_job_task(task_func: Optional[Callable] = None, name: Optional[str] = None, task_settings: Optional[TaskSettings] = None, depends_on: Optional[Union[Callable, str, List[Union[Callable, str]]]] = None, if_else_outcome: Optional[Dict[Union[str, str], str]] = None) -> Callable
¶brickflow/engine/workflow.py
spark_jar_task(task_func: Optional[Callable] = None, name: Optional[str] = None, cluster: Optional[Cluster] = None, libraries: Optional[List[TaskLibrary]] = None, task_settings: Optional[TaskSettings] = None, depends_on: Optional[Union[Callable, str, List[Union[Callable, str]]]] = None, if_else_outcome: Optional[Dict[Union[str, str], str]] = None) -> Callable
¶brickflow/engine/workflow.py
sql_task(task_func: Optional[Callable] = None, name: Optional[str] = None, task_settings: Optional[TaskSettings] = None, depends_on: Optional[Union[Callable, str, List[Union[Callable, str]]]] = None, if_else_outcome: Optional[Dict[Union[str, str], str]] = None) -> Callable
¶brickflow/engine/workflow.py
task(task_func: Optional[Callable] = None, name: Optional[str] = None, cluster: Optional[Cluster] = None, libraries: Optional[List[TaskLibrary]] = None, task_type: TaskType = TaskType.BRICKFLOW_TASK, depends_on: Optional[Union[Callable, str, List[Union[Callable, str]]]] = None, trigger_rule: BrickflowTriggerRule = BrickflowTriggerRule.ALL_SUCCESS, custom_execute_callback: Optional[Callable] = None, task_settings: Optional[TaskSettings] = None, ensure_brickflow_plugins: bool = False, if_else_outcome: Optional[Dict[Union[str, str], str]] = None) -> Callable
¶brickflow/engine/workflow.py
task_exists(task_id: str) -> bool
¶task_iter() -> Iterator[Task]
¶unique_new_clusters_dict() -> List[Dict[str, Any]]
¶brickflow/engine/workflow.py
validate_new_clusters_with_unique_names() -> None
¶brickflow/engine/workflow.py
validate_schedule_configs() -> None
¶brickflow/engine/workflow.py
brickflow.engine.workflow.User(name: str)
dataclass
¶brickflow.engine.workflow.Group(name: str)
dataclass
¶