![]() Refer to get_template_context for more context. This is the main method to derive when creating an operator.Ĭontext is the same dictionary used as when rendering jinja templates. All other branches 203 or directly downstream tasks are marked with a. Necessary to choose a branch and returning a task_id or list ofĬontext ( ) – Context dictionary as passed to execute() execute ( context ) ¶ Note that branch operators cannot have empty paths and thus we’ve had to create a dummy task using DummyOperator and corresponds to. 199 200 It derives the PythonOperator and expects a Python function that returns. ![]() Subclasses should implement this, running whatever logic is abstract choose_branch ( context ) ¶Ībstract method to choose which branch to run. ![]() Tasks directly downstream of this operator will be skipped. The operator will continue with the returned task_id(s), and all other Is needed to determine the branch, and return either the task_id forĪ single task (as a str) or a list of task_ids. Users should create a subclass from this operator and implement the functionĬhoose_branch(self, context). PythonOperator - calls an arbitrary Python function EmailOperator - sends an email Use the task decorator to execute an arbitrary Python function. BaseBranchOperator ( task_id, owner = DEFAULT_OWNER, email = None, email_on_retry = conf.getboolean('email', 'default_email_on_retry', fallback=True), email_on_failure = conf.getboolean('email', 'default_email_on_failure', fallback=True), retries = DEFAULT_RETRIES, retry_delay = DEFAULT_RETRY_DELAY, retry_exponential_backoff = False, max_retry_delay = None, start_date = None, end_date = None, depends_on_past = False, ignore_first_depends_on_past = DEFAULT_IGNORE_FIRST_DEPENDS_ON_PAST, wait_for_past_depends_before_skipping = DEFAULT_WAIT_FOR_PAST_DEPENDS_BEFORE_SKIPPING, wait_for_downstream = False, dag = None, params = None, default_args = None, priority_weight = DEFAULT_PRIORITY_WEIGHT, weight_rule = DEFAULT_WEIGHT_RULE, queue = DEFAULT_QUEUE, pool = None, pool_slots = DEFAULT_POOL_SLOTS, sla = None, execution_timeout = DEFAULT_TASK_EXECUTION_TIMEOUT, on_execute_callback = None, on_failure_callback = None, on_success_callback = None, on_retry_callback = None, pre_execute = None, post_execute = None, trigger_rule = DEFAULT_TRIGGER_RULE, resources = None, run_as_user = None, task_concurrency = None, max_active_tis_per_dag = None, max_active_tis_per_dagrun = None, executor_config = None, do_xcom_push = True, inlets = None, outlets = None, task_group = None, doc = None, doc_md = None, doc_json = None, doc_yaml = None, doc_rst = None, ** kwargs ) ¶īases:, What is not part of the Public Interface of Apache Airflow?Ī base class for creating operators with branching functionality, like to BranchPythonOperator.Ĭlass.Using Public Interface to integrate with external services and applications.Using Public Interface to extend Airflow capabilities.Using the Public Interface for DAG Authors.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |