You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airflow.apache.org by ep...@apache.org on 2022/10/24 10:14:52 UTC
[airflow-site] branch main updated: Add documentation for Apache Airflow 2.4.2 (#675)
This is an automated email from the ASF dual-hosted git repository.
ephraimanierobi pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/airflow-site.git
The following commit(s) were added to refs/heads/main by this push:
new 7cb4fc826c Add documentation for Apache Airflow 2.4.2 (#675)
7cb4fc826c is described below
commit 7cb4fc826c96612ce154541aabb8f7604acb4c95
Author: Ephraim Anierobi <sp...@gmail.com>
AuthorDate: Mon Oct 24 11:14:47 2022 +0100
Add documentation for Apache Airflow 2.4.2 (#675)
---
docs-archive/apache-airflow/2.4.2/.buildinfo | 4 +
.../example_dags/example_bash_operator/index.html} | 614 +-
.../example_branch_datetime_operator/index.html} | 852 +-
.../index.html} | 603 +-
.../example_dags/example_branch_labels/index.html} | 603 +-
.../example_branch_operator/index.html} | 603 +-
.../example_branch_operator_decorator/index.html} | 603 +-
.../index.html} | 639 +-
.../example_dags/example_complex/index.html} | 603 +-
.../example_dags/example_datasets/index.html} | 626 +-
.../example_external_task_marker_dag/index.html} | 638 +-
.../example_kubernetes_executor/index.html} | 647 +-
.../example_dags/example_latest_only/index.html} | 603 +-
.../example_latest_only_with_trigger/index.html} | 603 +-
.../example_local_kubernetes_executor/index.html} | 647 +-
.../example_nested_branch_dag/index.html} | 612 +-
.../index.html} | 769 +-
.../example_python_operator/index.html} | 777 +-
.../example_short_circuit_decorator/index.html} | 636 +-
.../example_short_circuit_operator/index.html} | 603 +-
.../example_dags/example_skip_dag/index.html} | 677 +-
.../example_subdag_operator/index.html} | 614 +-
.../example_dags/example_task_group/index.html} | 603 +-
.../example_task_group_decorator/index.html} | 833 +-
.../example_time_delta_sensor_async/index.html} | 604 +-
.../example_trigger_controller_dag/index.html} | 605 +-
.../example_trigger_target_dag/index.html} | 638 +-
.../airflow/example_dags/example_xcom/index.html} | 816 +-
.../example_dags/example_xcomargs/index.html} | 777 +-
.../2.4.2/_api/airflow/example_dags/index.html} | 619 +-
.../airflow/example_dags/libs/helper/index.html} | 565 +-
.../_api/airflow/example_dags/libs}/index.html | 319 +-
.../_api/airflow/example_dags/plugins}/index.html | 319 +-
.../example_dags/plugins/workday/index.html} | 663 +-
.../_api/airflow/example_dags/subdags}/index.html | 319 +-
.../example_dags/subdags/subdag/index.html} | 570 +-
.../_api/airflow/example_dags/tutorial/index.html} | 605 +-
.../airflow/example_dags/tutorial_dag/index.html} | 604 +-
.../example_dags/tutorial_taskflow_api/index.html} | 615 +-
.../tutorial_taskflow_api_virtualenv/index.html} | 638 +-
.../2.4.2/_api/airflow/exceptions/index.html | 1976 +++
.../airflow/executors/base_executor/index.html | 1558 +++
.../airflow/executors/celery_executor/index.html} | 989 +-
.../celery_kubernetes_executor/index.html} | 838 +-
.../airflow/executors/dask_executor/index.html} | 656 +-
.../airflow/executors/debug_executor/index.html} | 684 +-
.../executors/executor_constants/index.html} | 641 +-
.../airflow/executors/executor_loader/index.html} | 738 +-
.../2.4.2/_api/airflow/executors/index.html} | 549 +-
.../executors/kubernetes_executor/index.html | 1521 ++
.../airflow/executors/local_executor/index.html | 1508 ++
.../local_kubernetes_executor/index.html} | 990 +-
.../executors/sequential_executor/index.html} | 646 +-
.../2.4.2/_api/airflow/hooks/base/index.html} | 824 +-
.../2.4.2/_api/airflow/hooks/dbapi}/index.html | 312 +-
.../_api/airflow/hooks/filesystem/index.html} | 601 +-
.../2.4.2/_api/airflow/hooks}/index.html | 315 +-
.../_api/airflow/hooks/subprocess/index.html} | 633 +-
.../airflow/models/abstractoperator/index.html | 1712 +++
.../2.4.2/_api/airflow/models/base/index.html} | 829 +-
.../_api/airflow/models/baseoperator/index.html | 2594 ++++
.../_api/airflow/models/connection/index.html | 1533 ++
.../2.4.2/_api/airflow/models/crypto/index.html} | 893 +-
.../2.4.2/_api/airflow/models/dag/index.html | 3949 ++++++
.../2.4.2/_api/airflow/models/dagbag/index.html} | 862 +-
.../2.4.2/_api/airflow/models/dagcode/index.html} | 970 +-
.../2.4.2/_api/airflow/models/dagparam/index.html} | 584 +-
.../_api/airflow/models/dagpickle/index.html} | 815 +-
.../2.4.2/_api/airflow/models/dagrun/index.html | 1845 +++
.../_api/airflow/models/dagwarning/index.html} | 769 +-
.../2.4.2/_api/airflow/models/dataset/index.html | 1895 +++
.../airflow/models/db_callback_request/index.html} | 846 +-
.../2.4.2/_api/airflow/models/errors/index.html} | 810 +-
.../_api/airflow/models/expandinput/index.html} | 908 +-
.../2.4.2/_api/airflow/models/index.html} | 615 +-
.../2.4.2/_api/airflow/models/log/index.html} | 875 +-
.../_api/airflow/models/mappedoperator/index.html | 2237 +++
.../2.4.2/_api/airflow/models/operator/index.html} | 606 +-
.../2.4.2/_api/airflow/models/param/index.html} | 991 +-
.../2.4.2/_api/airflow/models/pool/index.html | 1482 ++
.../airflow/models/renderedtifields/index.html} | 825 +-
.../_api/airflow/models/serialized_dag/index.html | 1528 ++
.../_api/airflow/models/skipmixin/index.html} | 835 +-
.../2.4.2/_api/airflow/models/slamiss/index.html} | 866 +-
.../2.4.2/_api/airflow/models/taskfail/index.html} | 760 +-
.../_api/airflow/models/taskinstance/index.html | 2747 ++++
.../2.4.2/_api/airflow/models/tasklog/index.html} | 824 +-
.../2.4.2/_api/airflow/models/taskmap/index.html} | 923 +-
.../2.4.2/_api/airflow/models/taskmixin/index.html | 1545 ++
.../_api/airflow/models/taskreschedule/index.html} | 971 +-
.../2.4.2/_api/airflow/models/trigger/index.html} | 800 +-
.../2.4.2/_api/airflow/models/variable/index.html} | 897 +-
.../2.4.2/_api/airflow/models/xcom/index.html} | 955 +-
.../2.4.2/_api/airflow/models/xcom_arg/index.html | 1746 +++
.../2.4.2/_api/airflow/operators/bash/index.html} | 883 +-
.../_api/airflow/operators/branch/index.html} | 628 +-
.../_api/airflow/operators/datetime/index.html} | 645 +-
.../2.4.2/_api/airflow/operators/email/index.html} | 660 +-
.../2.4.2/_api/airflow/operators/empty/index.html} | 629 +-
.../airflow/operators/generic_transfer/index.html} | 660 +-
.../2.4.2/_api/airflow/operators/index.html} | 558 +-
.../_api/airflow/operators/latest_only/index.html} | 624 +-
.../2.4.2/_api/airflow/operators/python/index.html | 1620 +++
.../_api/airflow/operators/smooth/index.html} | 628 +-
.../_api/airflow/operators/subdag/index.html} | 862 +-
.../airflow/operators/trigger_dagrun/index.html} | 892 +-
.../_api/airflow/operators/weekday/index.html} | 655 +-
.../_api/airflow/secrets/base_secrets/index.html} | 698 +-
.../secrets/environment_variables/index.html} | 648 +-
.../2.4.2/_api/airflow/secrets/index.html} | 580 +-
.../airflow/secrets/local_filesystem/index.html} | 735 +-
.../_api/airflow/secrets/metastore/index.html} | 607 +-
.../2.4.2/_api/airflow/sensors/base/index.html} | 775 +-
.../2.4.2/_api/airflow/sensors/bash/index.html} | 617 +-
.../_api/airflow/sensors/date_time/index.html} | 681 +-
.../_api/airflow/sensors/external_task/index.html} | 882 +-
.../_api/airflow/sensors/filesystem/index.html} | 628 +-
.../2.4.2/_api/airflow/sensors/index.html} | 549 +-
.../2.4.2/_api/airflow/sensors/python/index.html} | 622 +-
.../_api/airflow/sensors/time_delta/index.html} | 653 +-
.../_api/airflow/sensors/time_sensor/index.html} | 653 +-
.../2.4.2/_api/airflow/sensors/weekday/index.html} | 637 +-
.../_api/airflow/timetables/_cron/index.html} | 324 +-
.../2.4.2/_api/airflow/timetables/base/index.html} | 967 +-
.../_api/airflow/timetables/events/index.html} | 671 +-
.../2.4.2/_api/airflow/timetables}/index.html | 311 +-
.../_api/airflow/timetables/interval/index.html} | 767 +-
.../_api/airflow/timetables/simple/index.html} | 774 +-
.../_api/airflow/timetables/trigger/index.html} | 642 +-
.../airflow/utils/dag_parsing_context/index.html} | 594 +-
docs-archive/apache-airflow/2.4.2/_api/index.html | 1 +
.../apache-airflow/2.4.2/_images/add-dag-tags.png | Bin 0 -> 68537 bytes
.../apache-airflow/2.4.2/_images/add-role.png | Bin 0 -> 30509 bytes
.../apache-airflow/2.4.2/_images/airflow_erd.svg | 1502 ++
.../apache-airflow/2.4.2/_images/apache.jpg | Bin 0 -> 43364 bytes
.../2.4.2/_images/arch-diag-basic.png | Bin 0 -> 16357 bytes
.../2.4.2/_images/arch-diag-kubernetes.png | Bin 0 -> 21804 bytes
.../2.4.2/_images/arch-diag-kubernetes2.png | Bin 0 -> 86384 bytes
.../2.4.2/_images/arch-diag-logging.png | Bin 0 -> 25843 bytes
.../apache-airflow/2.4.2/_images/basic-dag.png | Bin 0 -> 5393 bytes
.../apache-airflow/2.4.2/_images/branch_note.png | Bin 0 -> 31771 bytes
.../2.4.2/_images/branch_with_trigger.png | Bin 0 -> 34081 bytes
.../2.4.2/_images/branch_without_trigger.png | Bin 0 -> 39815 bytes
.../apache-airflow/2.4.2/_images/calendar.png | Bin 0 -> 58726 bytes
.../2.4.2/_images/cli_completion.gif | Bin 0 -> 775263 bytes
docs-archive/apache-airflow/2.4.2/_images/code.png | Bin 0 -> 169890 bytes
.../2.4.2/_images/connection_create.png | Bin 0 -> 52889 bytes
.../2.4.2/_images/connection_edit.png | Bin 0 -> 31186 bytes
.../apache-airflow/2.4.2/_images/context.png | Bin 0 -> 124467 bytes
.../apache-airflow/2.4.2/_images/dag_doc.png | Bin 0 -> 40094 bytes
.../2.4.2/_images/dag_file_processing_diagram.png | Bin 0 -> 263825 bytes
.../2.4.2/_images/dag_serialization.png | Bin 0 -> 99917 bytes
.../apache-airflow/2.4.2/_images/dags-page-new.png | Bin 0 -> 483599 bytes
.../apache-airflow/2.4.2/_images/dags-page-old.png | Bin 0 -> 493009 bytes
docs-archive/apache-airflow/2.4.2/_images/dags.png | Bin 0 -> 211122 bytes
.../2.4.2/_images/dataset-scheduled-dags.png | Bin 0 -> 77225 bytes
.../apache-airflow/2.4.2/_images/datasets.png | Bin 0 -> 341201 bytes
.../default_instance_name_configuration.png | Bin 0 -> 154888 bytes
.../apache-airflow/2.4.2/_images/duration.png | Bin 0 -> 150876 bytes
.../2.4.2/_images/edge_label_example.png | Bin 0 -> 24592 bytes
.../2.4.2/_images/email_connection.png | Bin 0 -> 59515 bytes
.../example_instance_name_configuration.png | Bin 0 -> 154915 bytes
.../2.4.2/_images/example_passing_conf.png | Bin 0 -> 41080 bytes
.../apache-airflow/2.4.2/_images/gantt.png | Bin 0 -> 70606 bytes
.../2.4.2/_images/graph-view-new.png | Bin 0 -> 56973 bytes
.../2.4.2/_images/graph-view-old.png | Bin 0 -> 54884 bytes
.../apache-airflow/2.4.2/_images/graph.png | Bin 0 -> 128870 bytes
...iz-91fd3ca4f3dc01a69b3f84fbcd6b5c7975945ba4.svg | 142 +
...iz-b490027b72c11b5405e4d1a0750779ebc458ebac.svg | 200 +
docs-archive/apache-airflow/2.4.2/_images/grid.png | Bin 0 -> 347155 bytes
.../2.4.2/_images/grid_instance_details.png | Bin 0 -> 287820 bytes
.../2.4.2/_images/grid_mapped_task.png | Bin 0 -> 334409 bytes
.../2.4.2/_images/grid_run_details.png | Bin 0 -> 243661 bytes
.../2.4.2/_images/grid_task_group.png | Bin 0 -> 56287 bytes
.../2.4.2/_images/hello_world_graph_view.png | Bin 0 -> 73688 bytes
.../2.4.2/_images/hello_world_grid_view.png | Bin 0 -> 132851 bytes
.../2.4.2/_images/howto-owner-links.gif | Bin 0 -> 829619 bytes
.../2.4.2/_images/k8s-failed-pod.png | Bin 0 -> 18937 bytes
.../2.4.2/_images/k8s-happy-path.png | Bin 0 -> 17257 bytes
.../2.4.2/_images/latest_only_with_trigger.png | Bin 0 -> 42887 bytes
.../2.4.2/_images/mapping-simple-graph.png | Bin 0 -> 7676 bytes
.../2.4.2/_images/mapping-simple-grid.png | Bin 0 -> 179670 bytes
.../apache-airflow/2.4.2/_images/new-role.png | Bin 0 -> 14115 bytes
.../2.4.2/_images/operator_extra_link.png | Bin 0 -> 90359 bytes
.../2.4.2/_images/run_task_on_celery_executor.png | Bin 0 -> 55939 bytes
.../apache-airflow/2.4.2/_images/subdag_after.png | Bin 0 -> 30245 bytes
.../apache-airflow/2.4.2/_images/subdag_before.png | Bin 0 -> 70382 bytes
.../apache-airflow/2.4.2/_images/subdag_zoom.png | Bin 0 -> 145017 bytes
.../apache-airflow/2.4.2/_images/task_doc.png | Bin 0 -> 245714 bytes
.../apache-airflow/2.4.2/_images/task_group.gif | Bin 0 -> 609981 bytes
.../2.4.2/_images/task_lifecycle_diagram.png | Bin 0 -> 58659 bytes
.../2.4.2/_images/task_manual_vs_scheduled.png | Bin 0 -> 5686 bytes
.../2.4.2/_images/template_field_renderer_path.png | Bin 0 -> 64442 bytes
.../apache-airflow/2.4.2/_images/tree-view-new.png | Bin 0 -> 36934 bytes
.../apache-airflow/2.4.2/_images/tree-view-old.png | Bin 0 -> 21601 bytes
.../2.4.2/_images/tutorial-pipeline-1.png | Bin 0 -> 566225 bytes
.../2.4.2/_images/tutorial-pipeline-2.png | Bin 0 -> 345529 bytes
.../2.4.2/_images/ui-alert-message.png | Bin 0 -> 7909 bytes
.../2.4.2/_images/ui-timezone-chooser.png | Bin 0 -> 16644 bytes
.../2.4.2/_images/usage_cli_export.png | Bin 0 -> 397830 bytes
.../2.4.2/_images/usage_cli_imgcat.png | Bin 0 -> 475224 bytes
.../2.4.2/_images/variable_hidden.png | Bin 0 -> 55331 bytes
.../apache-airflow/2.4.2/_images/watcher.png | Bin 0 -> 41592 bytes
.../example_dags/example_bash_operator.html} | 349 +-
.../example_branch_datetime_operator.html} | 377 +-
.../example_branch_day_of_week_operator.html} | 333 +-
.../example_dags/example_branch_labels.html} | 318 +-
.../example_dags/example_branch_operator.html} | 338 +-
.../example_branch_operator_decorator.html} | 331 +-
.../example_branch_python_dop_operator_3.html} | 334 +-
.../airflow/example_dags/example_complex.html} | 485 +-
.../airflow/example_dags/example_datasets.html} | 402 +-
.../example_external_task_marker_dag.html} | 370 +-
.../example_dags/example_kubernetes_executor.html} | 512 +-
.../airflow/example_dags/example_latest_only.html} | 310 +-
.../example_latest_only_with_trigger.html} | 321 +-
.../example_local_kubernetes_executor.html} | 344 +-
.../example_dags/example_nested_branch_dag.html} | 329 +-
.../example_passing_params_via_test_command.html} | 359 +-
.../example_dags/example_python_operator.html} | 411 +-
.../example_short_circuit_decorator.html} | 333 +-
.../example_short_circuit_operator.html} | 334 +-
.../airflow/example_dags/example_skip_dag.html} | 338 +-
.../example_dags/example_subdag_operator.html} | 335 +-
.../airflow/example_dags/example_task_group.html} | 337 +-
.../example_task_group_decorator.html} | 352 +-
.../example_time_delta_sensor_async.html} | 314 +-
.../example_trigger_controller_dag.html} | 314 +-
.../example_dags/example_trigger_target_dag.html} | 328 +-
.../airflow/example_dags/example_xcom.html} | 366 +-
.../airflow/example_dags/example_xcomargs.html} | 338 +-
.../airflow/example_dags/libs/helper.html} | 295 +-
.../airflow/example_dags/plugins/workday.html} | 360 +-
.../airflow/example_dags/subdags/subdag.html} | 329 +-
.../_modules/airflow/example_dags/tutorial.html} | 398 +-
.../airflow/example_dags/tutorial_dag.html} | 408 +-
.../example_dags/tutorial_taskflow_api.html} | 379 +-
.../tutorial_taskflow_api_virtualenv.html} | 360 +-
.../2.4.2/_modules/airflow/exceptions.html} | 990 +-
.../_modules/airflow/executors/base_executor.html} | 1035 +-
.../airflow/executors/celery_executor.html | 1531 ++
.../executors/celery_kubernetes_executor.html} | 680 +-
.../_modules/airflow/executors/dask_executor.html} | 412 +-
.../airflow/executors/debug_executor.html} | 420 +-
.../airflow/executors/executor_constants.html} | 299 +-
.../airflow/executors/executor_loader.html} | 431 +-
.../airflow/executors/kubernetes_executor.html | 1706 +++
.../airflow/executors/local_executor.html} | 863 +-
.../executors/local_kubernetes_executor.html} | 849 +-
.../airflow/executors/sequential_executor.html} | 350 +-
.../2.4.2/_modules/airflow/hooks/base.html} | 441 +-
.../2.4.2/_modules/airflow/hooks/filesystem.html} | 324 +-
.../2.4.2/_modules/airflow/hooks/subprocess.html} | 379 +-
.../2.4.2/_modules/airflow/macros.html} | 352 +-
.../2.4.2/_modules/airflow/macros/hive.html} | 382 +-
.../_modules/airflow/models/abstractoperator.html | 1380 ++
.../2.4.2/_modules/airflow/models/base.html} | 353 +-
.../_modules/airflow/models/baseoperator.html | 2646 ++++
.../2.4.2/_modules/airflow/models/connection.html | 1319 ++
.../2.4.2/_modules/airflow/models/crypto.html} | 359 +-
.../2.4.2/_modules/airflow/models/dag.html | 4389 ++++++
.../2.4.2/_modules/airflow/models/dagbag.html | 1565 +++
.../2.4.2/_modules/airflow/models/dagcode.html} | 833 +-
.../2.4.2/_modules/airflow/models/dagpickle.html} | 325 +-
.../2.4.2/_modules/airflow/models/dagrun.html | 2145 +++
.../2.4.2/_modules/airflow/models/dagwarning.html} | 367 +-
.../2.4.2/_modules/airflow/models/dataset.html} | 800 +-
.../airflow/models/db_callback_request.html} | 327 +-
.../2.4.2/_modules/airflow/models/errors.html} | 309 +-
.../_modules/airflow/models/expandinput.html} | 858 +-
.../2.4.2/_modules/airflow/models/log.html} | 344 +-
.../_modules/airflow/models/mappedoperator.html | 1651 +++
.../2.4.2/_modules/airflow/models/operator.html} | 300 +-
.../2.4.2/_modules/airflow/models/param.html} | 889 +-
.../2.4.2/_modules/airflow/models/pool.html} | 930 +-
.../_modules/airflow/models/renderedtifields.html} | 710 +-
.../_modules/airflow/models/serialized_dag.html} | 1011 +-
.../2.4.2/_modules/airflow/models/skipmixin.html} | 469 +-
.../2.4.2/_modules/airflow/models/slamiss.html} | 319 +-
.../2.4.2/_modules/airflow/models/taskfail.html} | 357 +-
.../_modules/airflow/models/taskinstance.html | 3543 +++++
.../2.4.2/_modules/airflow/models/tasklog.html} | 316 +-
.../2.4.2/_modules/airflow/models/taskmap.html} | 346 +-
.../2.4.2/_modules/airflow/models/taskmixin.html} | 911 +-
.../_modules/airflow/models/taskreschedule.html} | 423 +-
.../2.4.2/_modules/airflow/models/trigger.html} | 667 +-
.../2.4.2/_modules/airflow/models/variable.html} | 912 +-
.../2.4.2/_modules/airflow/models/xcom.html | 1567 +++
.../2.4.2/_modules/airflow/models/xcom_arg.html | 1390 ++
.../2.4.2/_modules/airflow/operators/bash.html} | 475 +-
.../2.4.2/_modules/airflow/operators/branch.html} | 328 +-
.../_modules/airflow/operators/datetime.html} | 389 +-
.../2.4.2/_modules/airflow/operators/email.html} | 361 +-
.../2.4.2/_modules/airflow/operators/empty.html} | 308 +-
.../airflow/operators/generic_transfer.html} | 378 +-
.../_modules/airflow/operators/latest_only.html} | 353 +-
.../2.4.2/_modules/airflow/operators/python.html | 1636 +++
.../2.4.2/_modules/airflow/operators/smooth.html} | 272 +-
.../2.4.2/_modules/airflow/operators/subdag.html} | 865 +-
.../airflow/operators/trigger_dagrun.html} | 650 +-
.../2.4.2/_modules/airflow/operators/weekday.html} | 394 +-
.../2.4.2/_modules/airflow/secrets.html} | 307 +-
.../_modules/airflow/secrets/base_secrets.html} | 427 +-
.../airflow/secrets/environment_variables.html} | 333 +-
.../airflow/secrets/local_filesystem.html} | 610 +-
.../2.4.2/_modules/airflow/secrets/metastore.html} | 345 +-
.../2.4.2/_modules/airflow/sensors/base.html} | 924 +-
.../2.4.2/_modules/airflow/sensors/bash.html} | 357 +-
.../2.4.2/_modules/airflow/sensors/date_time.html} | 369 +-
.../_modules/airflow/sensors/external_task.html} | 1061 +-
.../_modules/airflow/sensors/filesystem.html} | 342 +-
.../2.4.2/_modules/airflow/sensors/python.html} | 343 +-
.../_modules/airflow/sensors/time_delta.html} | 332 +-
.../_modules/airflow/sensors/time_sensor.html} | 343 +-
.../2.4.2/_modules/airflow/sensors/weekday.html} | 383 +-
.../2.4.2/_modules/airflow/timetables/_cron.html} | 411 +-
.../2.4.2/_modules/airflow/timetables/base.html} | 481 +-
.../2.4.2/_modules/airflow/timetables/events.html} | 389 +-
.../_modules/airflow/timetables/interval.html} | 876 +-
.../2.4.2/_modules/airflow/timetables/simple.html} | 419 +-
.../_modules/airflow/timetables/trigger.html} | 372 +-
.../airflow/utils/dag_parsing_context.html} | 266 +-
.../2.4.2}/_modules/index.html | 276 +-
.../example_bash_operator/index.rst.txt | 24 +
.../example_branch_datetime_operator/index.rst.txt | 75 +
.../index.rst.txt | 19 +
.../example_branch_labels/index.rst.txt | 19 +
.../example_branch_operator/index.rst.txt | 19 +
.../index.rst.txt | 19 +
.../index.rst.txt | 47 +
.../example_dags/example_complex/index.rst.txt | 19 +
.../example_dags/example_datasets/index.rst.txt | 43 +
.../example_external_task_marker_dag/index.rst.txt | 47 +
.../example_kubernetes_executor/index.rst.txt | 39 +
.../example_dags/example_latest_only/index.rst.txt | 19 +
.../example_latest_only_with_trigger/index.rst.txt | 19 +
.../index.rst.txt | 39 +
.../example_nested_branch_dag/index.rst.txt | 29 +
.../index.rst.txt | 52 +
.../example_python_operator/index.rst.txt | 55 +
.../example_short_circuit_decorator/index.rst.txt | 40 +
.../example_short_circuit_operator/index.rst.txt | 19 +
.../example_dags/example_skip_dag/index.rst.txt | 61 +
.../example_subdag_operator/index.rst.txt | 24 +
.../example_dags/example_task_group/index.rst.txt | 19 +
.../example_task_group_decorator/index.rst.txt | 72 +
.../example_time_delta_sensor_async/index.rst.txt | 20 +
.../example_trigger_controller_dag/index.rst.txt | 21 +
.../example_trigger_target_dag/index.rst.txt | 46 +
.../example_dags/example_xcom/index.rst.txt | 70 +
.../example_dags/example_xcomargs/index.rst.txt | 54 +
.../_api/airflow/example_dags/index.rst.txt | 57 +
.../airflow/example_dags/libs/helper/index.rst.txt | 22 +
.../_api/airflow/example_dags/libs/index.rst.txt | 15 +
.../airflow/example_dags/plugins/index.rst.txt | 15 +
.../example_dags/plugins/workday/index.rst.txt | 75 +
.../airflow/example_dags/subdags/index.rst.txt | 15 +
.../example_dags/subdags/subdag/index.rst.txt | 35 +
.../airflow/example_dags/tutorial/index.rst.txt | 21 +
.../example_dags/tutorial_dag/index.rst.txt | 20 +
.../tutorial_taskflow_api/index.rst.txt | 29 +
.../tutorial_taskflow_api_virtualenv/index.rst.txt | 39 +
.../_sources/_api/airflow/exceptions/index.rst.txt | 440 +
.../airflow/executors/base_executor/index.rst.txt | 254 +
.../executors/celery_executor/index.rst.txt | 222 +
.../celery_kubernetes_executor/index.rst.txt | 139 +
.../airflow/executors/dask_executor/index.rst.txt | 68 +
.../airflow/executors/debug_executor/index.rst.txt | 82 +
.../executors/executor_constants/index.rst.txt | 49 +
.../executors/executor_loader/index.rst.txt | 105 +
.../_sources/_api/airflow/executors/index.rst.txt | 30 +
.../executors/kubernetes_executor/index.rst.txt | 221 +
.../airflow/executors/local_executor/index.rst.txt | 211 +
.../local_kubernetes_executor/index.rst.txt | 137 +
.../executors/sequential_executor/index.rst.txt | 66 +
.../_sources/_api/airflow/hooks/base/index.rst.txt | 183 +
.../_api/airflow/hooks/dbapi/index.rst.txt | 6 +
.../_api/airflow/hooks/filesystem/index.rst.txt | 46 +
.../_sources/_api/airflow/hooks/index.rst.txt | 23 +
.../_api/airflow/hooks/subprocess/index.rst.txt | 64 +
.../airflow/models/abstractoperator/index.rst.txt | 314 +
.../_api/airflow/models/base/index.rst.txt | 71 +
.../_api/airflow/models/baseoperator/index.rst.txt | 900 ++
.../_api/airflow/models/connection/index.rst.txt | 224 +
.../_api/airflow/models/crypto/index.rst.txt | 94 +
.../_sources/_api/airflow/models/dag/index.rst.txt | 1301 ++
.../_api/airflow/models/dagbag/index.rst.txt | 143 +
.../_api/airflow/models/dagcode/index.rst.txt | 128 +
.../_api/airflow/models/dagparam/index.rst.txt | 11 +
.../_api/airflow/models/dagpickle/index.rst.txt | 58 +
.../_api/airflow/models/dagrun/index.rst.txt | 354 +
.../_api/airflow/models/dagwarning/index.rst.txt | 90 +
.../_api/airflow/models/dataset/index.rst.txt | 351 +
.../models/db_callback_request/index.rst.txt | 64 +
.../_api/airflow/models/errors/index.rst.txt | 52 +
.../_api/airflow/models/expandinput/index.rst.txt | 131 +
.../_sources/_api/airflow/models/index.rst.txt | 54 +
.../_sources/_api/airflow/models/log/index.rst.txt | 81 +
.../airflow/models/mappedoperator/index.rst.txt | 462 +
.../_api/airflow/models/operator/index.rst.txt | 14 +
.../_api/airflow/models/param/index.rst.txt | 176 +
.../_api/airflow/models/pool/index.rst.txt | 194 +
.../airflow/models/renderedtifields/index.rst.txt | 132 +
.../airflow/models/serialized_dag/index.rst.txt | 238 +
.../_api/airflow/models/skipmixin/index.rst.txt | 75 +
.../_api/airflow/models/slamiss/index.rst.txt | 76 +
.../_api/airflow/models/taskfail/index.rst.txt | 89 +
.../_api/airflow/models/taskinstance/index.rst.txt | 777 ++
.../_api/airflow/models/tasklog/index.rst.txt | 57 +
.../_api/airflow/models/taskmap/index.rst.txt | 103 +
.../_api/airflow/models/taskmixin/index.rst.txt | 213 +
.../airflow/models/taskreschedule/index.rst.txt | 136 +
.../_api/airflow/models/trigger/index.rst.txt | 127 +
.../_api/airflow/models/variable/index.rst.txt | 171 +
.../_api/airflow/models/xcom/index.rst.txt | 191 +
.../_api/airflow/models/xcom_arg/index.rst.txt | 339 +
.../_api/airflow/operators/bash/index.rst.txt | 163 +
.../_api/airflow/operators/branch/index.rst.txt | 58 +
.../_api/airflow/operators/datetime/index.rst.txt | 62 +
.../_api/airflow/operators/email/index.rst.txt | 66 +
.../_api/airflow/operators/empty/index.rst.txt | 47 +
.../operators/generic_transfer/index.rst.txt | 67 +
.../_sources/_api/airflow/operators/index.rst.txt | 31 +
.../airflow/operators/latest_only/index.rst.txt | 53 +
.../_api/airflow/operators/python/index.rst.txt | 364 +
.../_api/airflow/operators/smooth/index.rst.txt | 45 +
.../_api/airflow/operators/subdag/index.rst.txt | 97 +
.../airflow/operators/trigger_dagrun/index.rst.txt | 114 +
.../_api/airflow/operators/weekday/index.rst.txt | 89 +
.../airflow/secrets/base_secrets/index.rst.txt | 101 +
.../secrets/environment_variables/index.rst.txt | 75 +
.../_sources/_api/airflow/secrets/index.rst.txt | 54 +
.../airflow/secrets/local_filesystem/index.rst.txt | 120 +
.../_api/airflow/secrets/metastore/index.rst.txt | 55 +
.../_api/airflow/sensors/base/index.rst.txt | 126 +
.../_api/airflow/sensors/bash/index.rst.txt | 47 +
.../_api/airflow/sensors/date_time/index.rst.txt | 87 +
.../airflow/sensors/external_task/index.rst.txt | 186 +
.../_api/airflow/sensors/filesystem/index.rst.txt | 52 +
.../_sources/_api/airflow/sensors/index.rst.txt | 28 +
.../_api/airflow/sensors/python/index.rst.txt | 52 +
.../_api/airflow/sensors/time_delta/index.rst.txt | 58 +
.../_api/airflow/sensors/time_sensor/index.rst.txt | 58 +
.../_api/airflow/sensors/weekday/index.rst.txt | 78 +
.../_api/airflow/timetables/_cron/index.rst.txt | 40 +
.../_api/airflow/timetables/base/index.rst.txt | 244 +
.../_api/airflow/timetables/events/index.rst.txt | 97 +
.../_sources/_api/airflow/timetables/index.rst.txt | 19 +
.../_api/airflow/timetables/interval/index.rst.txt | 145 +
.../_api/airflow/timetables/simple/index.rst.txt | 135 +
.../_api/airflow/timetables/trigger/index.rst.txt | 81 +
.../utils/dag_parsing_context/index.rst.txt | 52 +
.../2.4.2/_sources/best-practices.rst.txt | 902 ++
.../_sources/cli-and-env-variables-ref.rst.txt | 105 +
.../_sources/concepts/cluster-policies.rst.txt | 98 +
.../2.4.2/_sources/concepts/connections.rst.txt | 51 +
.../_sources/concepts/dagfile-processing.rst.txt | 46 +
.../2.4.2/_sources/concepts/dags.rst.txt | 832 ++
.../2.4.2/_sources/concepts/datasets.rst.txt | 199 +
.../2.4.2/_sources/concepts/deferring.rst.txt | 173 +
.../_sources/concepts/dynamic-task-mapping.rst.txt | 436 +
.../2.4.2/_sources/concepts/index.rst.txt | 60 +
.../2.4.2/_sources/concepts/operators.rst.txt | 234 +
.../2.4.2/_sources/concepts/overview.rst.txt | 98 +
.../2.4.2/_sources/concepts/params.rst.txt | 160 +
.../2.4.2/_sources/concepts/pools.rst.txt | 90 +
.../_sources/concepts/priority-weight.rst.txt | 61 +
.../2.4.2/_sources/concepts/scheduler.rst.txt | 386 +
.../2.4.2/_sources/concepts/sensors.rst.txt | 32 +
.../2.4.2/_sources/concepts/taskflow.rst.txt | 90 +
.../2.4.2/_sources/concepts/tasks.rst.txt | 265 +
.../2.4.2/_sources/concepts/timetable.rst.txt | 218 +
.../2.4.2/_sources/concepts/variables.rst.txt | 48 +
.../2.4.2/_sources/concepts/xcoms.rst.txt | 88 +
.../2.4.2/_sources/configurations-ref.rst.txt | 106 +
.../apache-airflow/2.4.2/_sources/dag-run.rst.txt | 285 +
.../2.4.2/_sources/dag-serialization.rst.txt | 118 +
.../2.4.2/_sources/database-erd-ref.rst.txt | 38 +
.../2.4.2/_sources/deprecated-rest-api-ref.rst.txt | 127 +
.../2.4.2/_sources/executor/celery.rst.txt | 219 +
.../_sources/executor/celery_kubernetes.rst.txt | 46 +
.../2.4.2/_sources/executor/dask.rst.txt | 56 +
.../2.4.2/_sources/executor/debug.rst.txt | 56 +
.../2.4.2/_sources/executor/index.rst.txt | 80 +
.../2.4.2/_sources/executor/kubernetes.rst.txt | 282 +
.../2.4.2/_sources/executor/local.rst.txt | 49 +
.../_sources/executor/local_kubernetes.rst.txt | 30 +
.../2.4.2/_sources/executor/sequential.rst.txt | 26 +
.../2.4.2/_sources/extra-packages-ref.rst.txt | 383 +
.../apache-airflow/2.4.2/_sources/faq.rst.txt | 502 +
.../2.4.2/_sources/howto/add-dag-tags.rst.txt | 40 +
.../2.4.2/_sources/howto/add-owner-links.rst.txt | 50 +
.../2.4.2/_sources/howto/connection.rst.txt | 445 +
.../_sources/howto/create-custom-decorator.rst.txt | 123 +
.../2.4.2/_sources/howto/custom-operator.rst.txt | 299 +
.../2.4.2/_sources/howto/customize-ui.rst.txt | 174 +
.../2.4.2/_sources/howto/define_extra_link.rst.txt | 167 +
.../_sources/howto/docker-compose/index.rst.txt | 344 +
.../_sources/howto/dynamic-dag-generation.rst.txt | 209 +
.../2.4.2/_sources/howto/email-config.rst.txt | 174 +
.../_sources/howto/export-more-env-vars.rst.txt | 52 +
.../2.4.2/_sources/howto/index.rst.txt | 50 +
.../2.4.2/_sources/howto/operator/bash.rst.txt | 145 +
.../2.4.2/_sources/howto/operator/datetime.rst.txt | 74 +
.../howto/operator/external_task_sensor.rst.txt | 79 +
.../2.4.2/_sources/howto/operator/index.rst.txt | 38 +
.../2.4.2/_sources/howto/operator/python.rst.txt | 194 +
.../2.4.2/_sources/howto/operator/weekday.rst.txt | 31 +
.../2.4.2/_sources/howto/run-behind-proxy.rst.txt | 92 +
.../2.4.2/_sources/howto/run-with-systemd.rst.txt | 40 +
.../2.4.2/_sources/howto/set-config.rst.txt | 132 +
.../2.4.2/_sources/howto/set-up-database.rst.txt | 378 +
.../2.4.2/_sources/howto/timetable.rst.txt | 353 +
.../2.4.2/_sources/howto/use-test-config.rst.txt | 36 +
.../2.4.2/_sources/howto/variable.rst.txt | 76 +
.../apache-airflow/2.4.2/_sources/index.rst.txt | 176 +
.../_sources/installation/dependencies.rst.txt | 92 +
.../2.4.2/_sources/installation/index.rst.txt | 318 +
.../installation/installing-from-pypi.rst.txt | 208 +
.../installation/installing-from-sources.rst.txt | 155 +
.../_sources/installation/prerequisites.rst.txt | 65 +
.../installation/setting-up-the-database.rst.txt | 35 +
.../installation/supported-versions.rst.txt | 69 +
.../2.4.2/_sources/installation/upgrading.rst.txt | 271 +
.../2.4.2/_sources/integration.rst.txt | 37 +
.../2.4.2/_sources/kubernetes.rst.txt | 62 +
.../apache-airflow/2.4.2/_sources/license.rst.txt | 201 +
.../apache-airflow/2.4.2/_sources/lineage.rst.txt | 113 +
.../2.4.2/_sources/listeners.rst.txt | 41 +
.../_sources/logging-monitoring/callbacks.rst.txt | 84 +
.../logging-monitoring/check-health.rst.txt | 142 +
.../_sources/logging-monitoring/errors.rst.txt | 105 +
.../_sources/logging-monitoring/index.rst.txt | 39 +
.../logging-architecture.rst.txt | 41 +
.../logging-monitoring/logging-tasks.rst.txt | 136 +
.../_sources/logging-monitoring/metrics.rst.txt | 166 +
.../tracking-user-activity.rst.txt | 39 +
.../2.4.2/_sources/migrations-ref.rst.txt | 307 +
.../2.4.2/_sources/modules_management.rst.txt | 419 +
.../2.4.2/_sources/operators-and-hooks-ref.rst.txt | 131 +
.../apache-airflow/2.4.2/_sources/plugins.rst.txt | 329 +
.../2.4.2/_sources/privacy_notice.rst.txt | 68 +
.../2.4.2/_sources/production-deployment.rst.txt | 230 +
.../apache-airflow/2.4.2/_sources/project.rst.txt | 105 +
.../2.4.2/_sources/python-api-ref.rst.txt | 175 +
.../2.4.2/_sources/release-process.rst.txt | 94 +
.../2.4.2/_sources/release_notes.rst.txt | 23 +
.../2.4.2/_sources/security/access-control.rst.txt | 238 +
.../2.4.2/_sources/security/api.rst.txt | 164 +
.../2.4.2/_sources/security/flower.rst.txt | 62 +
.../2.4.2/_sources/security/index.rst.txt | 28 +
.../2.4.2/_sources/security/kerberos.rst.txt | 155 +
.../2.4.2/_sources/security/secrets/fernet.rst.txt | 63 +
.../2.4.2/_sources/security/secrets/index.rst.txt | 37 +
.../security/secrets/mask-sensitive-values.rst.txt | 79 +
.../security/secrets/secrets-backend/index.rst.txt | 119 +
.../local-filesystem-secrets-backend.rst.txt | 145 +
.../2.4.2/_sources/security/webserver.rst.txt | 268 +
.../2.4.2/_sources/security/workload.rst.txt | 52 +
.../2.4.2/_sources/stable-rest-api-ref.rst.txt | 23 +
.../apache-airflow/2.4.2/_sources/start.rst.txt | 118 +
.../2.4.2/_sources/templates-ref.rst.txt | 185 +
.../apache-airflow/2.4.2/_sources/timezone.rst.txt | 182 +
.../2.4.2/_sources/tutorial/fundamentals.rst.txt | 403 +
.../2.4.2/_sources/tutorial/index.rst.txt | 28 +
.../2.4.2/_sources/tutorial/pipeline.rst.txt | 326 +
.../2.4.2/_sources/tutorial/taskflow.rst.txt | 572 +
.../apache-airflow/2.4.2/_sources/ui.rst.txt | 183 +
.../_sources/upgrading-from-1-10/index.rst.txt | 1229 ++
.../upgrading-from-1-10/upgrade-check.rst.txt | 215 +
.../2.4.2/_sources/usage-cli.rst.txt | 351 +
docs-archive/apache-airflow/2.4.2/_specs/v1.yaml | 4778 +++++++
.../2.4.2/_static/_gen/css/main-custom.min.css | 1 +
.../2.4.2/_static/_gen/css/main.min.css | 7 +
.../apache-airflow/2.4.2/_static/_gen/js/docs.js | 1 +
.../_sphinx_javascript_frameworks_compat.js | 134 +
.../apache-airflow/2.4.2/_static/basic.css | 899 ++
.../apache-airflow/2.4.2/_static/check-solid.svg | 4 +
.../apache-airflow/2.4.2/_static/clipboard.min.js | 7 +
.../apache-airflow/2.4.2/_static/copy-button.svg | 5 +
.../apache-airflow/2.4.2/_static/copybutton.css | 93 +
.../apache-airflow/2.4.2/_static/copybutton.js | 220 +
.../2.4.2/_static/copybutton_funcs.js | 58 +
.../2.4.2}/_static/doctools.js | 130 +-
.../2.4.2/_static/documentation_options.js | 14 +
.../2.4.2/_static/exampleinclude.css | 86 +
docs-archive/apache-airflow/2.4.2/_static/file.png | Bin 0 -> 286 bytes
.../apache-airflow/2.4.2/_static/gh-jira-links.js | 34 +
.../apache-airflow/2.4.2/_static/graphviz.css | 19 +
.../apache-airflow/2.4.2/_static/jquery-3.6.0.js | 10881 +++++++++++++++
.../apache-airflow/2.4.2/_static/jquery.js | 2 +
.../apache-airflow/2.4.2/_static/language_data.js | 199 +
.../apache-airflow/2.4.2/_static/minus.png | Bin 0 -> 90 bytes
.../apache-airflow/2.4.2/_static/pin_32.png | Bin 0 -> 1201 bytes
docs-archive/apache-airflow/2.4.2/_static/plus.png | Bin 0 -> 90 bytes
.../apache-airflow/2.4.2/_static/pygments.css | 74 +
docs-archive/apache-airflow/2.4.2/_static/redoc.js | 103 +
.../2.4.2}/_static/searchtools.js | 74 +-
.../2.4.2/_static/sphinx_highlight.js | 144 +
.../2.4.2/_static/underscore-1.13.1.js | 2042 +++
.../apache-airflow/2.4.2/_static/underscore.js | 6 +
docs-archive/apache-airflow/2.4.2/airflow.sh | 32 +
.../apache-airflow/2.4.2/best-practices.html | 1771 +++
docs-archive/apache-airflow/2.4.2/build.rst | 896 ++
docs-archive/apache-airflow/2.4.2/changelog.html | 1 +
.../2.4.2/cli-and-env-variables-ref.html | 5400 +++++++
docs-archive/apache-airflow/2.4.2/cli-ref.html | 1 +
docs-archive/apache-airflow/2.4.2/concepts.html | 1 +
.../2.4.2/concepts/cluster-policies.html} | 380 +-
.../2.4.2/concepts/connections.html} | 279 +-
.../2.4.2/concepts/dagfile-processing.html} | 268 +-
.../apache-airflow/2.4.2/concepts/dags.html | 1892 +++
.../2.4.2/concepts/datasets.html} | 413 +-
.../2.4.2/concepts/deferring.html} | 756 +-
.../2.4.2/concepts/dynamic-task-mapping.html} | 987 +-
.../2.4.2/concepts/index.html} | 576 +-
.../2.4.2/concepts/operators.html} | 791 +-
.../2.4.2/concepts/overview.html} | 312 +-
.../2.4.2/concepts/params.html} | 388 +-
.../2.4.2/concepts/pools.html} | 312 +-
.../2.4.2/concepts/priority-weight.html} | 277 +-
.../2.4.2/concepts/scheduler.html} | 975 +-
.../2.4.2/concepts/sensors.html} | 255 +-
.../2.4.2/concepts/taskflow.html} | 320 +-
.../2.4.2/concepts/tasks.html} | 866 +-
.../2.4.2/concepts/timetable.html} | 650 +-
.../2.4.2/concepts/variables.html} | 270 +-
.../2.4.2/concepts/xcoms.html} | 307 +-
.../apache-airflow/2.4.2/configurations-ref.html | 8052 +++++++++++
.../2.4.2/dag-run.html} | 801 +-
.../2.4.2/dag-serialization.html} | 496 +-
.../2.4.2/database-erd-ref.html} | 226 +-
.../2.4.2/deprecated-rest-api-ref.html} | 585 +-
.../apache-airflow/2.4.2/docker-compose.yaml | 278 +
docs-archive/apache-airflow/2.4.2/errors.html | 1 +
.../2.4.2/executor/celery.html} | 418 +-
.../2.4.2/executor/celery_kubernetes.html} | 256 +-
.../2.4.2/executor/dask.html} | 254 +-
.../2.4.2/executor/debug.html} | 257 +-
.../2.4.2/executor}/index.html | 278 +-
.../2.4.2/executor/kubernetes.html} | 1051 +-
.../2.4.2/executor/local.html} | 256 +-
.../2.4.2/executor/local_kubernetes.html} | 235 +-
.../2.4.2/executor/sequential.html} | 232 +-
.../2.4.2/extra-packages-ref.html} | 1105 +-
.../2.4.2/faq.html} | 997 +-
docs-archive/apache-airflow/2.4.2/genindex.html | 6087 ++++++++
.../2.4.2/howto/add-dag-tags.html} | 257 +-
.../apache-airflow/2.4.2/howto/add-new-role.html | 1 +
.../2.4.2/howto/add-owner-links.html} | 266 +-
.../apache-airflow/2.4.2/howto/check-health.html | 1 +
.../2.4.2/howto/connection.html} | 982 +-
.../2.4.2/howto/connection/index.html | 1 +
.../2.4.2/howto/create-custom-decorator.html} | 822 +-
.../2.4.2/howto/custom-operator.html} | 840 +-
.../howto/customize-dag-ui-page-instance-name.html | 1 +
.../2.4.2/howto/customize-state-colors-ui.html | 1 +
.../2.4.2/howto/customize-ui.html} | 682 +-
.../2.4.2/howto/define_extra_link.html} | 379 +-
.../2.4.2/howto/docker-compose/index.html} | 903 +-
.../2.4.2/howto/dynamic-dag-generation.html} | 622 +-
.../2.4.2/howto/email-config.html} | 406 +-
.../2.4.2/howto/export-more-env-vars.html} | 267 +-
.../2.4.2/howto/index.html} | 564 +-
.../2.4.2/howto/initialize-database.html | 1 +
.../2.4.2/howto/operator/bash.html} | 654 +-
.../2.4.2/howto/operator/datetime.html} | 568 +-
.../2.4.2/howto/operator/external.html | 1 +
.../howto/operator/external_task_sensor.html} | 608 +-
.../2.4.2/howto/operator/index.html} | 540 +-
.../2.4.2/howto/operator/python.html} | 863 +-
.../2.4.2/howto/operator/weekday.html} | 555 +-
.../2.4.2/howto/run-behind-proxy.html} | 315 +-
.../2.4.2/howto/run-with-systemd.html} | 259 +-
.../2.4.2/howto/secure-connections.html | 1 +
.../2.4.2/howto/set-config.html} | 340 +-
.../2.4.2/howto/set-up-database.html} | 875 +-
.../2.4.2/howto/timetable.html} | 977 +-
.../2.4.2/howto/tracking-user-activity.html | 1 +
.../howto/use-alternative-secrets-backend.html | 1 +
.../2.4.2/howto/use-test-config.html} | 256 +-
.../2.4.2/howto/variable.html} | 303 +-
.../apache-airflow/2.4.2/howto/write-logs.html | 1 +
.../2.4.2/http-routingtable.html} | 315 +-
.../2.4.2}/index.html | 285 +-
.../apache-airflow/2.4.2/installation.html | 1 +
.../2.4.2/installation/dependencies.html} | 560 +-
.../2.4.2/installation/index.html} | 715 +-
.../2.4.2/installation/installing-from-pypi.html} | 613 +-
.../installation/installing-from-sources.html} | 590 +-
.../2.4.2/installation/prerequisites.html} | 274 +-
.../installation/setting-up-the-database.html} | 242 +-
.../2.4.2/installation/supported-versions.html} | 332 +-
.../2.4.2/installation/upgrading.html} | 798 +-
.../2.4.2/integration.html} | 225 +-
.../2.4.2/kubernetes.html} | 259 +-
.../2.4.2/license.html} | 741 +-
.../2.4.2/lineage.html} | 501 +-
.../2.4.2/listeners.html} | 231 +-
.../2.4.2/logging-monitoring/callbacks.html} | 307 +-
.../2.4.2/logging-monitoring/check-health.html} | 338 +-
.../2.4.2/logging-monitoring/errors.html} | 648 +-
.../2.4.2/logging-monitoring}/index.html | 229 +-
.../logging-monitoring/logging-architecture.html} | 234 +-
.../2.4.2/logging-monitoring/logging-tasks.html} | 339 +-
.../2.4.2/logging-monitoring/metrics.html} | 740 +-
.../tracking-user-activity.html} | 239 +-
docs-archive/apache-airflow/2.4.2/macros-ref.html | 1 +
docs-archive/apache-airflow/2.4.2/metrics.html | 1 +
.../2.4.2/migrations-ref.html} | 1151 +-
.../2.4.2/modules_management.html} | 854 +-
docs-archive/apache-airflow/2.4.2/objects.inv | Bin 0 -> 28662 bytes
.../2.4.2/operators-and-hooks-ref.html} | 539 +-
.../_static/redoc.js | 8 +
.../2.4.2/plugins.html} | 665 +-
.../2.4.2/privacy_notice.html} | 244 +-
.../2.4.2/production-deployment.html} | 561 +-
.../2.4.2/project.html} | 291 +-
.../2.4.2/py-modindex.html} | 1268 +-
.../2.4.2/python-api-ref.html} | 633 +-
.../2.4.2/release-process.html} | 264 +-
.../apache-airflow/2.4.2/release_notes.html | 13943 +++++++++++++++++++
.../apache-airflow/2.4.2/rest-api-ref.html | 1 +
docs-archive/apache-airflow/2.4.2/scheduler.html | 1 +
.../2.4.2}/search.html | 135 +-
docs-archive/apache-airflow/2.4.2/searchindex.js | 1 +
docs-archive/apache-airflow/2.4.2/security.html | 1 +
.../2.4.2/security/access-control.html} | 1173 +-
.../2.4.2/security/api.html} | 732 +-
.../2.4.2/security/flower.html} | 264 +-
.../2.4.2/security}/index.html | 252 +-
.../2.4.2/security/kerberos.html} | 357 +-
.../2.4.2/security/secrets/fernet.html} | 327 +-
.../2.4.2/security/secrets}/index.html | 291 +-
.../security/secrets/mask-sensitive-values.html} | 333 +-
.../security/secrets/secrets-backend/index.html} | 585 +-
.../local-filesystem-secrets-backend.html} | 625 +-
.../2.4.2/security/webserver.html} | 797 +-
.../2.4.2/security/workload.html} | 265 +-
.../apache-airflow/2.4.2/stable-rest-api-ref.html | 34 +
.../index.html => apache-airflow/2.4.2/start.html} | 294 +-
.../apache-airflow/2.4.2/start/docker.html | 1 +
docs-archive/apache-airflow/2.4.2/start/index.html | 1 +
docs-archive/apache-airflow/2.4.2/start/local.html | 1 +
.../2.4.2/templates-ref.html} | 828 +-
.../2.4.2/timezone.html} | 581 +-
docs-archive/apache-airflow/2.4.2/tutorial.html | 1 +
.../2.4.2/tutorial/fundamentals.html} | 1190 +-
.../2.4.2/tutorial}/index.html | 215 +-
.../2.4.2/tutorial/pipeline.html} | 860 +-
.../apache-airflow/2.4.2/tutorial/taskflow.html | 1769 +++
.../2.4.2/tutorial_taskflow_api.html | 1 +
.../2.4.2/ui.html} | 550 +-
.../apache-airflow/2.4.2/upgrade-check.html | 1 +
.../2.4.2/upgrading-from-1-10/index.html | 2293 +++
.../2.4.2/upgrading-from-1-10/upgrade-check.html} | 399 +-
.../apache-airflow/2.4.2/upgrading-to-2.html | 1 +
.../2.4.2/usage-cli.html} | 800 +-
docs-archive/apache-airflow/stable.txt | 2 +-
docs-archive/docker-stack/_modules/index.html | 1 +
.../docker-stack/_sources/entrypoint.rst.txt | 14 +-
docs-archive/docker-stack/_static/doctools.js | 130 +-
docs-archive/docker-stack/_static/searchtools.js | 74 +-
.../docker-stack/_static/sphinx_highlight.js | 144 +
docs-archive/docker-stack/build-arg-ref.html | 5 +-
docs-archive/docker-stack/build.html | 25 +-
docs-archive/docker-stack/changelog.html | 1 +
docs-archive/docker-stack/entrypoint.html | 15 +-
docs-archive/docker-stack/genindex.html | 1 +
docs-archive/docker-stack/index.html | 13 +-
docs-archive/docker-stack/recipes.html | 1 +
docs-archive/docker-stack/search.html | 1 +
docs-archive/docker-stack/searchindex.js | 2 +-
773 files changed, 266086 insertions(+), 78581 deletions(-)
diff --git a/docs-archive/apache-airflow/2.4.2/.buildinfo b/docs-archive/apache-airflow/2.4.2/.buildinfo
new file mode 100644
index 0000000000..4eddea09c9
--- /dev/null
+++ b/docs-archive/apache-airflow/2.4.2/.buildinfo
@@ -0,0 +1,4 @@
+# Sphinx build info version 1
+# This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done.
+config: 13c1ef49a5300a548be3b7798fc24819
+tags: 645f666f9bcd5a90fca523b33c5a78b7
diff --git a/docs-archive/docker-stack/changelog.html b/docs-archive/apache-airflow/2.4.2/_api/airflow/example_dags/example_bash_operator/index.html
similarity index 68%
copy from docs-archive/docker-stack/changelog.html
copy to docs-archive/apache-airflow/2.4.2/_api/airflow/example_dags/example_bash_operator/index.html
index 2fa2b8d179..e2bb1929e6 100644
--- a/docs-archive/docker-stack/changelog.html
+++ b/docs-archive/apache-airflow/2.4.2/_api/airflow/example_dags/example_bash_operator/index.html
@@ -9,17 +9,18 @@
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1">
- <title>Dockerfile Changelog — docker-stack Documentation</title>
- <link rel="stylesheet" href="_static/_gen/css/main.min.css" type="text/css" />
- <link rel="stylesheet" type="text/css" href="_static/pygments.css" />
- <link rel="stylesheet" type="text/css" href="_static/_gen/css/main.min.css" />
- <link rel="stylesheet" type="text/css" href="_static/copybutton.css" />
- <link rel="stylesheet" type="text/css" href="_static/_gen/css/main-custom.min.css" />
- <link rel="shortcut icon" href="_static/pin_32.png"/>
- <link rel="index" title="Index" href="genindex.html" />
- <link rel="search" title="Search" href="search.html" />
- <link rel="next" title="Recipes" href="recipes.html" />
- <link rel="prev" title="Entrypoint" href="entrypoint.html" />
+ <title>airflow.example_dags.example_bash_operator — Airflow Documentation</title>
+ <link rel="stylesheet" href="../../../../_static/_gen/css/main.min.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../../../_static/pygments.css" />
+ <link rel="stylesheet" type="text/css" href="../../../../_static/_gen/css/main.min.css" />
+ <link rel="stylesheet" type="text/css" href="../../../../_static/copybutton.css" />
+ <link rel="stylesheet" type="text/css" href="../../../../_static/_gen/css/main-custom.min.css" />
+ <link rel="stylesheet" type="text/css" href="../../../../_static/graphviz.css" />
+ <link rel="shortcut icon" href="../../../../_static/pin_32.png"/>
+ <link rel="index" title="Index" href="../../../../genindex.html" />
+ <link rel="search" title="Search" href="../../../../search.html" />
+ <link rel="next" title="airflow.example_dags.example_branch_datetime_operator" href="../example_branch_datetime_operator/index.html" />
+ <link rel="prev" title="airflow.example_dags.subdags.subdag" href="../subdags/subdag/index.html" />
<!-- Matomo -->
<script>
var _paq = window._paq = window._paq || [];
@@ -280,8 +281,21 @@
<div class="content-drawer">
<div class="td-sidebar">
+<div id="docs-version-selector" class="docs-version-selector sidebar__version-selector">
+ <a class="dropdown-toggle" href="#" id="versionDropdown" role="button" data-toggle="dropdown" aria-haspopup="true"
+ aria-expanded="false">
+ <span class="bodytext__medium--greyish-brown">Version: </span><span class="version">2.4.2</span>
+ </a>
+ <div class="dropdown-menu" aria-labelledby="navbarDropdownMenuLink">
+
+ </div>
+ <script type="application/x-template" id="version-item-template">
+ <a class="dropdown-item"></a>
+ </script>
+</div>
+
<div class="searchb-box">
- <form class="search-form" action="search.html" method="get">
+ <form class="search-form" action="../../../../search.html" method="get">
<input class="search-form__input" type="text" name="q" placeholder="Search docs" size="16">
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
@@ -311,24 +325,115 @@
<div class="toctree" role="navigation" aria-label="main navigation">
- <ul class="current">
-<li class="toctree-l1"><a class="reference internal" href="index.html">Home</a></li>
-<li class="toctree-l1"><a class="reference internal" href="build.html">Building the image</a></li>
-<li class="toctree-l1"><a class="reference internal" href="entrypoint.html">Entrypoint</a></li>
-<li class="toctree-l1 current"><a class="current reference internal" href="#">Dockerfile Changelog</a><ul>
-<li class="toctree-l2"><a class="reference internal" href="#changes-after-publishing-the-images">Changes after publishing the images</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-4">Airflow 2.4</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-3">Airflow 2.3</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-2">Airflow 2.2</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-1">Airflow 2.1</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-0">Airflow 2.0</a></li>
+ <p class="caption" role="heading"><span class="caption-text">Content</span></p>
+<ul>
+<li class="toctree-l1"><a class="reference internal" href="../../../../index.html">Overview</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../project.html">Project</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../license.html">License</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../start.html">Quick Start</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../installation/index.html">Installation</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../upgrading-from-1-10/index.html">Upgrading from 1.10 to 2</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../tutorial/index.html">Tutorials</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../howto/index.html">How-to Guides</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../ui.html">UI / Screenshots</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../concepts/index.html">Concepts</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../executor/index.html">Executor</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../dag-run.html">DAG Runs</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../plugins.html">Plugins</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../security/index.html">Security</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../logging-monitoring/index.html">Logging & Monitoring</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../timezone.html">Time Zones</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../usage-cli.html">Using the CLI</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../integration.html">Integration</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../kubernetes.html">Kubernetes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../lineage.html">Lineage</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../listeners.html">Listeners</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../dag-serialization.html">DAG Serialization</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../modules_management.html">Modules Management</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release-process.html">Release Policies</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release_notes.html">Release Notes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../best-practices.html">Best Practices</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../production-deployment.html">Production Deployment</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../faq.html">FAQ</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../privacy_notice.html">Privacy Notice</a></li>
+</ul>
+<p class="caption" role="heading"><span class="caption-text">References</span></p>
+<ul class="current">
+<li class="toctree-l1"><a class="reference internal" href="../../../../operators-and-hooks-ref.html">Operators and hooks</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../cli-and-env-variables-ref.html">CLI</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../templates-ref.html">Templates</a></li>
+<li class="toctree-l1 current"><a class="reference internal" href="../../../../python-api-ref.html">Python API</a><ul class="current">
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#dags">DAGs</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#operators">Operators</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#hooks">Hooks</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#executors">Executors</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#models">Models</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#exceptions">Exceptions</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#secrets-backends">Secrets Backends</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#timetables">Timetables</a></li>
+<li class="toctree-l2 current"><a class="reference internal" href="../../../../python-api-ref.html#example-dags">Example DAGs</a><ul class="current">
+<li class="toctree-l3 current"><a class="reference internal" href="../index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags</span></code></a><ul class="current">
+<li class="toctree-l4"><a class="reference internal" href="../index.html#subpackages">Subpackages</a></li>
+<li class="toctree-l4 current"><a class="reference internal" href="../index.html#submodules">Submodules</a><ul class="current">
+<li class="toctree-l5 current"><a class="current reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_bash_operator</span></code></a><ul>
+<li class="toctree-l6"><a class="reference internal" href="#module-contents">Module Contents</a><ul>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_bash_operator.run_this_last"><code class="docutils literal notranslate"><span class="pre">run_this_last</span></code></a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_bash_operator.this_will_skip"><code class="docutils literal notranslate"><span class="pre">this_will_skip</span></code></a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_bash_operator.run_this_last">run_this_last</a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_bash_operator.this_will_skip">this_will_skip</a></li>
</ul>
</li>
-<li class="toctree-l1"><a class="reference internal" href="recipes.html">Recipes</a></li>
</ul>
-<p class="caption" role="heading"><span class="caption-text">References</span></p>
+</li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_datetime_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_datetime_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_day_of_week_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_day_of_week_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_labels/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_labels</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_operator_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_operator_decorator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_python_dop_operator_3/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_python_dop_operator_3</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_complex/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_complex</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_datasets/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_datasets</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_external_task_marker_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_external_task_marker_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_kubernetes_executor/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_kubernetes_executor</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_latest_only/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_latest_only</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_latest_only_with_trigger/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_latest_only_with_trigger</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_local_kubernetes_executor/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_local_kubernetes_executor</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_nested_branch_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_nested_branch_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_passing_params_via_test_command/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_passing_params_via_test_command</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_python_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_python_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_short_circuit_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_short_circuit_decorator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_short_circuit_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_short_circuit_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_skip_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_skip_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_subdag_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_subdag_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_task_group/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_task_group</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_task_group_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_task_group_decorator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_time_delta_sensor_async/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_time_delta_sensor_async</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_trigger_controller_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_trigger_controller_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_trigger_target_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_trigger_target_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_xcom/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_xcom</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_xcomargs/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_xcomargs</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial_taskflow_api/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_taskflow_api</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial_taskflow_api_virtualenv/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_taskflow_api_virtualenv</span></code></a></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#utils">Utils</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../stable-rest-api-ref.html">Stable REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../deprecated-rest-api-ref.html">Deprecated REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../configurations-ref.html">Configurations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../extra-packages-ref.html">Extra packages</a></li>
+</ul>
+<p class="caption" role="heading"><span class="caption-text">Internal DB details</span></p>
<ul>
-<li class="toctree-l1"><a class="reference internal" href="build-arg-ref.html">Image build arguments reference</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../migrations-ref.html">Database Migrations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../database-erd-ref.html">Database ERD Schema</a></li>
</ul>
</div>
@@ -409,8 +514,21 @@
<div class="td-sidebar desktop-only d-print-none">
+<div id="docs-version-selector" class="docs-version-selector sidebar__version-selector">
+ <a class="dropdown-toggle" href="#" id="versionDropdown" role="button" data-toggle="dropdown" aria-haspopup="true"
+ aria-expanded="false">
+ <span class="bodytext__medium--greyish-brown">Version: </span><span class="version">2.4.2</span>
+ </a>
+ <div class="dropdown-menu" aria-labelledby="navbarDropdownMenuLink">
+
+ </div>
+ <script type="application/x-template" id="version-item-template">
+ <a class="dropdown-item"></a>
+ </script>
+</div>
+
<div class="searchb-box">
- <form class="search-form" action="search.html" method="get">
+ <form class="search-form" action="../../../../search.html" method="get">
<input class="search-form__input" type="text" name="q" placeholder="Search docs" size="16">
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
@@ -440,24 +558,115 @@
<div class="toctree" role="navigation" aria-label="main navigation">
- <ul class="current">
-<li class="toctree-l1"><a class="reference internal" href="index.html">Home</a></li>
-<li class="toctree-l1"><a class="reference internal" href="build.html">Building the image</a></li>
-<li class="toctree-l1"><a class="reference internal" href="entrypoint.html">Entrypoint</a></li>
-<li class="toctree-l1 current"><a class="current reference internal" href="#">Dockerfile Changelog</a><ul>
-<li class="toctree-l2"><a class="reference internal" href="#changes-after-publishing-the-images">Changes after publishing the images</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-4">Airflow 2.4</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-3">Airflow 2.3</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-2">Airflow 2.2</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-1">Airflow 2.1</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-0">Airflow 2.0</a></li>
+ <p class="caption" role="heading"><span class="caption-text">Content</span></p>
+<ul>
+<li class="toctree-l1"><a class="reference internal" href="../../../../index.html">Overview</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../project.html">Project</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../license.html">License</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../start.html">Quick Start</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../installation/index.html">Installation</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../upgrading-from-1-10/index.html">Upgrading from 1.10 to 2</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../tutorial/index.html">Tutorials</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../howto/index.html">How-to Guides</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../ui.html">UI / Screenshots</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../concepts/index.html">Concepts</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../executor/index.html">Executor</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../dag-run.html">DAG Runs</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../plugins.html">Plugins</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../security/index.html">Security</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../logging-monitoring/index.html">Logging & Monitoring</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../timezone.html">Time Zones</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../usage-cli.html">Using the CLI</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../integration.html">Integration</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../kubernetes.html">Kubernetes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../lineage.html">Lineage</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../listeners.html">Listeners</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../dag-serialization.html">DAG Serialization</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../modules_management.html">Modules Management</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release-process.html">Release Policies</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release_notes.html">Release Notes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../best-practices.html">Best Practices</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../production-deployment.html">Production Deployment</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../faq.html">FAQ</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../privacy_notice.html">Privacy Notice</a></li>
+</ul>
+<p class="caption" role="heading"><span class="caption-text">References</span></p>
+<ul class="current">
+<li class="toctree-l1"><a class="reference internal" href="../../../../operators-and-hooks-ref.html">Operators and hooks</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../cli-and-env-variables-ref.html">CLI</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../templates-ref.html">Templates</a></li>
+<li class="toctree-l1 current"><a class="reference internal" href="../../../../python-api-ref.html">Python API</a><ul class="current">
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#dags">DAGs</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#operators">Operators</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#hooks">Hooks</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#executors">Executors</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#models">Models</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#exceptions">Exceptions</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#secrets-backends">Secrets Backends</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#timetables">Timetables</a></li>
+<li class="toctree-l2 current"><a class="reference internal" href="../../../../python-api-ref.html#example-dags">Example DAGs</a><ul class="current">
+<li class="toctree-l3 current"><a class="reference internal" href="../index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags</span></code></a><ul class="current">
+<li class="toctree-l4"><a class="reference internal" href="../index.html#subpackages">Subpackages</a></li>
+<li class="toctree-l4 current"><a class="reference internal" href="../index.html#submodules">Submodules</a><ul class="current">
+<li class="toctree-l5 current"><a class="current reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_bash_operator</span></code></a><ul>
+<li class="toctree-l6"><a class="reference internal" href="#module-contents">Module Contents</a><ul>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_bash_operator.run_this_last"><code class="docutils literal notranslate"><span class="pre">run_this_last</span></code></a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_bash_operator.this_will_skip"><code class="docutils literal notranslate"><span class="pre">this_will_skip</span></code></a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_bash_operator.run_this_last">run_this_last</a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_bash_operator.this_will_skip">this_will_skip</a></li>
</ul>
</li>
-<li class="toctree-l1"><a class="reference internal" href="recipes.html">Recipes</a></li>
</ul>
-<p class="caption" role="heading"><span class="caption-text">References</span></p>
+</li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_datetime_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_datetime_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_day_of_week_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_day_of_week_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_labels/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_labels</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_operator_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_operator_decorator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_python_dop_operator_3/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_python_dop_operator_3</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_complex/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_complex</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_datasets/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_datasets</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_external_task_marker_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_external_task_marker_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_kubernetes_executor/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_kubernetes_executor</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_latest_only/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_latest_only</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_latest_only_with_trigger/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_latest_only_with_trigger</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_local_kubernetes_executor/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_local_kubernetes_executor</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_nested_branch_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_nested_branch_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_passing_params_via_test_command/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_passing_params_via_test_command</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_python_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_python_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_short_circuit_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_short_circuit_decorator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_short_circuit_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_short_circuit_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_skip_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_skip_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_subdag_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_subdag_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_task_group/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_task_group</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_task_group_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_task_group_decorator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_time_delta_sensor_async/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_time_delta_sensor_async</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_trigger_controller_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_trigger_controller_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_trigger_target_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_trigger_target_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_xcom/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_xcom</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_xcomargs/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_xcomargs</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial_taskflow_api/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_taskflow_api</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial_taskflow_api_virtualenv/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_taskflow_api_virtualenv</span></code></a></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#utils">Utils</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../stable-rest-api-ref.html">Stable REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../deprecated-rest-api-ref.html">Deprecated REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../configurations-ref.html">Configurations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../extra-packages-ref.html">Extra packages</a></li>
+</ul>
+<p class="caption" role="heading"><span class="caption-text">Internal DB details</span></p>
<ul>
-<li class="toctree-l1"><a class="reference internal" href="build-arg-ref.html">Image build arguments reference</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../migrations-ref.html">Database Migrations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../database-erd-ref.html">Database ERD Schema</a></li>
</ul>
</div>
@@ -546,9 +755,13 @@
<ul class="breadcrumb">
- <li class="breadcrumb-item"><a href="index.html" class="icon icon-home"> Home</a></li>
+ <li class="breadcrumb-item"><a href="../../../../index.html" class="icon icon-home"> Home</a></li>
+
+ <li class="breadcrumb-item"><a href="../../../../python-api-ref.html">Python API Reference</a></li>
+
+ <li class="breadcrumb-item"><a href="../index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags</span></code></a></li>
- <li class="breadcrumb-item"><a href="changelog.html"> Dockerfile Changelog</a></li>
+ <li class="breadcrumb-item"><a href="index.html"> <code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_bash_operator</span></code></a></li>
</ul>
</div>
@@ -559,272 +772,30 @@
<div class="bodywrapper">
<div class="body" role="main">
- <blockquote>
-<div></div></blockquote>
-<div class="section" id="dockerfile-changelog">
-<h1>Dockerfile Changelog<a class="headerlink" href="#dockerfile-changelog" title="Permalink to this heading">ΒΆ</a></h1>
-<p>The <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> does not strictly follow the <a class="reference external" href="https://semver.org/">SemVer</a> approach of
-Apache Airflow when it comes to features and backwards compatibility. While Airflow code strictly
-follows it, the <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> is really a way to give users a conveniently packaged Airflow
-using standard container approach, so occasionally there are some changes in the building process
-or in the entrypoint of the image that require slight adaptation of how it is used or built.</p>
-<p>The Changelog below describes the changes introduced in each version of the docker images released by
-the Airflow team.</p>
-<dl class="field-list simple">
-<dt class="field-odd">note</dt>
-<dd class="field-odd"><p>The Changelog below concerns only the convenience production images released at
-<a class="reference external" href="https://hub.docker.com/r/apache/airflow">Airflow DockerHub</a> . The images that are released
-there, are usually built using the <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> released together with Airflow. However You are
-free to take latest released <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> from Airflow and use it to build an image for
-any Airflow version from the <code class="docutils literal notranslate"><span class="pre">Airflow</span> <span class="pre">2</span></code> line. There is no guarantee that it works, but if it does,
-then you can use latest features from that image to build the previous Airflow versions.</p>
-</dd>
-</dl>
-<div class="section" id="changes-after-publishing-the-images">
-<h2>Changes after publishing the images<a class="headerlink" href="#changes-after-publishing-the-images" title="Permalink to this heading">ΒΆ</a></h2>
-<p>Occasionally our images need to be regenerated using newer <code class="docutils literal notranslate"><span class="pre">Dockerfiles</span></code> or constraints.
-This happens when an issue is found or a breaking change is released by our dependencies
-that invalidates the already released image, and regenerating the image makes it usable again.
-While we cannot assure 100% backwards compatibility when it happens, we at least document it
-here so that users affected can find the reason for the changes.</p>
-<table class="docutils align-default">
-<colgroup>
-<col style="width: 10%" />
-<col style="width: 14%" />
-<col style="width: 28%" />
-<col style="width: 16%" />
-<col style="width: 32%" />
-</colgroup>
-<thead>
-<tr class="row-odd"><th class="head"><p>Date</p></th>
-<th class="head"><p>Affected images</p></th>
-<th class="head"><p>Potentially breaking change</p></th>
-<th class="head"><p>Reason</p></th>
-<th class="head"><p>Link to Pull Request</p></th>
-</tr>
-</thead>
-<tbody>
-<tr class="row-even"><td><p>17 June 2022</p></td>
-<td><p>2.2.5</p>
-<p>2.3.0-2.3.2</p>
-</td>
-<td><ul class="simple">
-<li><p>The <code class="docutils literal notranslate"><span class="pre">Authlib</span></code> library downgraded
-from 1.0.1 to 0.15.5 version</p></li>
-</ul>
-</td>
-<td><p>Flask App Builder
-not compatible with
-Authlib >= 1.0.0</p></td>
-<td><p><a class="reference external" href="https://github.com/apache/airflow/pull/24516">https://github.com/apache/airflow/pull/24516</a></p></td>
-</tr>
-<tr class="row-odd"><td><p>18 Jan 2022</p></td>
-<td><p>All 2.2.*, 2.1.*</p></td>
-<td><ul class="simple">
-<li><p>The AIRFLOW_GID 500 was removed</p></li>
-<li><p>MySQL <code class="docutils literal notranslate"><span class="pre">apt</span></code> repository key changed.</p></li>
-</ul>
-</td>
-<td><p>MySQL changed keys
-to sign their packages
-on 17 Jan 2022</p></td>
-<td><p><a class="reference external" href="https://github.com/apache/airflow/pull/20912">https://github.com/apache/airflow/pull/20912</a></p></td>
-</tr>
-</tbody>
-</table>
-</div>
-<div class="section" id="airflow-2-4">
-<h2>Airflow 2.4<a class="headerlink" href="#airflow-2-4" title="Permalink to this heading">ΒΆ</a></h2>
-<ul class="simple">
-<li><p>2.4.0</p>
-<ul>
-<li><p>You can specify additional <code class="docutils literal notranslate"><span class="pre">pip</span> <span class="pre">install</span></code> flags when you build the image via <code class="docutils literal notranslate"><span class="pre">ADDITIONAL_PIP_INSTALL_FLAGS</span></code>
-build arg.</p></li>
-<li><p>Support for <code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Buster</span></code> was dropped, including the possibility of building customized images as
-<code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Buster</span></code> reached end of life.</p></li>
-</ul>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-3">
-<h2>Airflow 2.3<a class="headerlink" href="#airflow-2-3" title="Permalink to this heading">ΒΆ</a></h2>
-<ul class="simple">
-<li><p>2.3.0</p>
-<ul>
-<li><p>Airflow 2.3 <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> is now better optimized for caching and βstandaloneβ which means that you
-can copy <strong>just</strong> the <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> to any folder and start building custom images. This
-however requires <a class="reference external" href="https://docs.docker.com/develop/develop-images/build_enhancements/">Buildkit</a>
-to build the image because we started using features that are only available in <code class="docutils literal notranslate"><span class="pre">Buildkit</span></code>.
-This can be done by setting <code class="docutils literal notranslate"><span class="pre">DOCKER_BUILDKIT=1</span></code> as an environment variable
-or by installing <a class="reference external" href="https://docs.docker.com/buildx/working-with-buildx/">the buildx plugin</a>
-and running <code class="docutils literal notranslate"><span class="pre">docker</span> <span class="pre">buildx</span> <span class="pre">build</span></code> command.</p></li>
-<li><p>Add Python 3.10 support</p></li>
-<li><p>Switch to <code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Bullseye</span></code> based images. <code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Buster</span></code> is deprecated and only available for
-customized image building.</p></li>
-<li><p>Add Multi-Platform support (AMD64/ARM64) in order to accommodate MacOS M1 users</p></li>
-<li><p>Build parameters which control if packages and Airflow should be installed from context file were
-unified</p></li>
-<li><p>The <code class="docutils literal notranslate"><span class="pre">INSTALL_FROM_PYPI</span></code> arg was removed - it is automatically detected now.</p></li>
-<li><p>The <code class="docutils literal notranslate"><span class="pre">INSTALL_FROM_DOCKER_CONTEXT_FILES</span></code> arg changed to <code class="docutils literal notranslate"><span class="pre">INSTALL_PACKAGES_FROM_CONTEXT</span></code></p></li>
-</ul>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-2">
-<h2>Airflow 2.2<a class="headerlink" href="#airflow-2-2" title="Permalink to this heading">ΒΆ</a></h2>
-<ul class="simple">
-<li><p>2.2.4
-* Add support for both <code class="docutils literal notranslate"><span class="pre">.piprc</span></code> and <code class="docutils literal notranslate"><span class="pre">pip.conf</span></code> customizations
-* Add ArtifactHub labels for better discovery of the images
-* Update default Python image to be 3.7
-* Build images with <code class="docutils literal notranslate"><span class="pre">Buildkit</span></code> (optional)
-* Fix building the image on Azure with <code class="docutils literal notranslate"><span class="pre">text</span> <span class="pre">file</span> <span class="pre">busy</span></code> error</p></li>
-<li><p>2.2.3
-* No changes</p></li>
-<li><p>2.2.2
-* No changes</p></li>
-<li><p>2.2.1
-* Workaround the problem with <code class="docutils literal notranslate"><span class="pre">libstdcpp</span></code> TLS error</p></li>
-<li><p>2.2.0
-* Remove AIRFLOW_GID (5000) from Airflow images (potentially breaking change for users using it)
-* Added warnings for Quick-start docker compose
-* Fix warm shutdown for celery worker (signal propagation)
-* Add Oauth libraries to PROD images
-* Add Python 3.9 support</p></li>
-</ul>
-</div>
-<div class="section" id="airflow-2-1">
-<h2>Airflow 2.1<a class="headerlink" href="#airflow-2-1" title="Permalink to this heading">ΒΆ</a></h2>
-<ul>
-<li><p>MySQL changed the keys to sign their packages on 17 Feb 2022. This caused all released images
-to fail when being extended. As result, on 18 Feb 2021 we re-released all
-the <code class="docutils literal notranslate"><span class="pre">2.2</span></code> and <code class="docutils literal notranslate"><span class="pre">2.1</span></code> images with latest versions of <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code>
-containing the new signing key.</p>
-<p>There were subtle changes in the behaviour of some 2.1 images due to that (more details below)
-Detailed <a class="reference external" href="https://github.com/apache/airflow/issues/20911">issue here</a></p>
-</li>
-</ul>
-<dl class="field-list simple">
-<dt class="field-odd">note</dt>
-<dd class="field-odd"><p>that the changes below were valid before image refreshing on 18 Feb 2022.
-Since all the images were refreshed on 18 Feb with the same <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code>
-as 2.1.4, the changes 2.1.1 -> 2.1.3 are
-effectively applied to all the images in 2.1.* line.
-The images refreshed have also those fixes added:</p>
-</dd>
-</dl>
-<ul class="simple">
-<li><p>All 2.1.* image versions refreshed on 18 Feb 2022 have those fixes applied:
-* Fix building the image on Azure with <code class="docutils literal notranslate"><span class="pre">text</span> <span class="pre">file</span> <span class="pre">busy</span></code> error
-* Workaround the problem with <code class="docutils literal notranslate"><span class="pre">libstdcpp</span></code> TLS error
-* Remove AIRFLOW_GID (5000) from Airflow images (potentially breaking change for users using it)
-* Added warnings for Quick-start docker compose
-* Add Oauth libraries to PROD images</p></li>
-</ul>
-<p>Original image Changelog (before the refresh on 18 Feb 2022):</p>
-<ul class="simple">
-<li><dl class="simple">
-<dt>2.1.4</dt><dd><ul>
-<li><p>Workaround the problem with <code class="docutils literal notranslate"><span class="pre">libstdcpp</span></code> TLS error</p></li>
-<li><p>fixed detection of port number in connection URL</p></li>
-<li><p>Improve warnings for quick-start-docker compose</p></li>
-<li><p>Fix warm shutdown for celery worker (signal propagation)</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.3</dt><dd><ul>
-<li><p>fixed auto-creation of user to use non-deprecated <code class="docutils literal notranslate"><span class="pre">create</span> <span class="pre">user</span></code> rather than <code class="docutils literal notranslate"><span class="pre">user_create</span></code></p></li>
-<li><p>remove waiting for celery backend for <code class="docutils literal notranslate"><span class="pre">worker</span></code> and <code class="docutils literal notranslate"><span class="pre">flower</span></code> commands rather than <code class="docutils literal notranslate"><span class="pre">scheduler</span></code> and <code class="docutils literal notranslate"><span class="pre">celery</span></code> only</p></li>
-<li><p>remove deprecated <code class="docutils literal notranslate"><span class="pre">airflow</span> <span class="pre">upgradedb</span></code> command from Airflow 1.10 in case upgrade is requested</p></li>
-<li><p>Add Python 3.9 support</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.2</dt><dd><ul>
-<li><p>No changes</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.1</dt><dd><ul>
-<li><p>Fix failure of lack of default commands (failed when no commands were passed)</p></li>
-<li><p>Added <code class="docutils literal notranslate"><span class="pre">_PIP_ADDITIONAL_REQUIREMENTS</span></code> development feature</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.0</dt><dd><ul>
-<li><p>Unset default <code class="docutils literal notranslate"><span class="pre">PIP_USER</span></code> variable - which caused PythonVirtualEnv to fail</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-0">
-<h2>Airflow 2.0<a class="headerlink" href="#airflow-2-0" title="Permalink to this heading">ΒΆ</a></h2>
-<ul>
-<li><p>MySQL changed the keys to sign their packages on 17 Feb 2022. This caused all released images
-to fail when being extended. As result, on 18 Feb 2021 we re-released all
-the <code class="docutils literal notranslate"><span class="pre">2.2</span></code> and <code class="docutils literal notranslate"><span class="pre">2.1</span></code> images with latest versions of <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code>
-containing the new signing key.</p>
-<p>There were no changes in the behaviour of 2.0.2 image due to that
-Detailed <a class="reference external" href="https://github.com/apache/airflow/issues/20911">issue here</a> .
-Only 2.0.2 image was regenerated, as 2.0.1 and 2.0.0 versions are hardly used and it is unlikely someone
-would like to extend those images. Extending 2.0.1 and 2.0.0 images will lead to failures of βmissing keyβ.</p>
-</li>
-<li><dl class="simple">
-<dt>2.0.2</dt><dd><ul class="simple">
-<li><p>Set correct PYTHONPATH for <code class="docutils literal notranslate"><span class="pre">root</span></code> user. Allows to run the image as root</p></li>
-<li><p>Warn if the deprecated 5000 group ID was used for airflow user when running the image
-(should be 0 for the OpenShift compatibility). Fails if the group 5000 was used with any other user
-(it would not work anyway but with cryptic errors)</p></li>
-<li><p>Set umask as 002 by default, so that you can actually change the user id used to run the image
-(required for OpenShift compatibility)</p></li>
-<li><p>Skip checking the DB and celery backend if CONNECTION_CHECK_MAX_COUNT is equal to 0</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.0.1</dt><dd><ul class="simple">
-<li><p>Avoid reverse IP lookup when checking DB availability. This helped to solve long delays on misconfigured
-docker engines</p></li>
-<li><p>Add auto-detection of redis and amqp broker ports</p></li>
-<li><p>Fixed detection of all user/password combinations in URLs - helps in auto-detecting ports and testing
-connectivity</p></li>
-<li><p>Add possibility to create Admin user automatically when entering the image</p></li>
-<li><p>Automatically create system user when different user than <code class="docutils literal notranslate"><span class="pre">airflow</span></code> is used. Needed for OpenShift
-compatibility</p></li>
-<li><p>Allows to exec to <code class="docutils literal notranslate"><span class="pre">bash</span></code> or <code class="docutils literal notranslate"><span class="pre">python</span></code> if specified as parameters</p></li>
-<li><p>Remove <code class="docutils literal notranslate"><span class="pre">airflow</span></code> command if it is specified as first parameter of the <code class="docutils literal notranslate"><span class="pre">run</span></code> command</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.0.0</dt><dd><ul class="simple">
-<li><p>Initial release of the image based on Debian Buster</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-</ul>
+ <div class="section" id="module-airflow.example_dags.example_bash_operator">
+<span id="airflow-example-dags-example-bash-operator"></span><h1><a class="reference internal" href="#module-airflow.example_dags.example_bash_operator" title="airflow.example_dags.example_bash_operator"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_bash_operator</span></code></a><a class="headerlink" href="#module-airflow.example_dags.example_bash_operator" title="Permalink to this heading">ΒΆ</a></h1>
+<p>Example DAG demonstrating the usage of the BashOperator.</p>
+<div class="section" id="module-contents">
+<h2>Module Contents<a class="headerlink" href="#module-contents" title="Permalink to this heading">ΒΆ</a></h2>
+<dl class="py data">
+<dt class="sig sig-object py" id="airflow.example_dags.example_bash_operator.run_this_last">
+<span class="sig-prename descclassname"><span class="pre">airflow.example_dags.example_bash_operator.</span></span><span class="sig-name descname"><span class="pre">run_this_last</span></span><a class="reference internal" href="../../../../_modules/airflow/example_dags/example_bash_operator.html#run_this_last"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow.example_dags.example_bash_operator.run_this_last" title="Permalink to t [...]
+<dd></dd></dl>
+
+<dl class="py data">
+<dt class="sig sig-object py" id="airflow.example_dags.example_bash_operator.this_will_skip">
+<span class="sig-prename descclassname"><span class="pre">airflow.example_dags.example_bash_operator.</span></span><span class="sig-name descname"><span class="pre">this_will_skip</span></span><a class="reference internal" href="../../../../_modules/airflow/example_dags/example_bash_operator.html#this_will_skip"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow.example_dags.example_bash_operator.this_will_skip" title="Permalink t [...]
+<dd></dd></dl>
+
</div>
</div>
<div class="pager" role="navigation" aria-label="related navigation">
- <a rel="prev" title="Entrypoint" href="entrypoint.html" >
+ <a rel="prev" title="airflow.example_dags.subdags.subdag" href="../subdags/subdag/index.html" >
<button class="btn-hollow btn-blue bodytext__medium--cerulean-blue" accesskey="p">Previous</button>
</a>
- <a rel="next" title="Recipes" href="recipes.html" >
+ <a rel="next" title="airflow.example_dags.example_branch_datetime_operator" href="../example_branch_datetime_operator/index.html" >
<button class="btn-hollow btn-blue bodytext__medium--cerulean-blue" accesskey="n">Next</button>
</a>
</div>
@@ -894,13 +865,14 @@ compatibility</p></li>
<nav class="wy-nav-side-toc">
<div class="wy-menu-vertical">
<ul>
-<li><a class="reference internal" href="#">Dockerfile Changelog</a><ul>
-<li><a class="reference internal" href="#changes-after-publishing-the-images">Changes after publishing the images</a></li>
-<li><a class="reference internal" href="#airflow-2-4">Airflow 2.4</a></li>
-<li><a class="reference internal" href="#airflow-2-3">Airflow 2.3</a></li>
-<li><a class="reference internal" href="#airflow-2-2">Airflow 2.2</a></li>
-<li><a class="reference internal" href="#airflow-2-1">Airflow 2.1</a></li>
-<li><a class="reference internal" href="#airflow-2-0">Airflow 2.0</a></li>
+<li><a class="reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_bash_operator</span></code></a><ul>
+<li><a class="reference internal" href="#module-contents">Module Contents</a><ul>
+<li><a class="reference internal" href="#airflow.example_dags.example_bash_operator.run_this_last"><code class="docutils literal notranslate"><span class="pre">run_this_last</span></code></a></li>
+<li><a class="reference internal" href="#airflow.example_dags.example_bash_operator.this_will_skip"><code class="docutils literal notranslate"><span class="pre">this_will_skip</span></code></a></li>
+<li><a class="reference internal" href="#airflow.example_dags.example_bash_operator.run_this_last">run_this_last</a></li>
+<li><a class="reference internal" href="#airflow.example_dags.example_bash_operator.this_will_skip">this_will_skip</a></li>
+</ul>
+</li>
</ul>
</li>
</ul>
@@ -925,7 +897,7 @@ compatibility</p></li>
<div class="base-layout--button">
- <a href="https://github.com/apache/airflow/edit/main/docs/docker-stack/changelog.rst" rel="nofollow">
+ <a href="https://github.com/apache/airflow/edit/main/docs/apache-airflow/_api/airflow/example_dags/example_bash_operator/index.rst" rel="nofollow">
<button class="btn-hollow btn-brown btn-with-icon with-box-shadow button-fixed">
<svg xmlns="http://www.w3.org/2000/svg" width="30.76" height="30">
@@ -1059,18 +1031,20 @@ compatibility</p></li>
</span>
</div>
</footer>
- <script type="text/javascript" src="_static/_gen/js/docs.js"></script>
- <script type="text/javascript" id="documentation_options" data-url_root="./" src="_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../../../_static/_gen/js/docs.js"></script>
+ <script type="text/javascript" id="documentation_options" data-url_root="../../../../" src="../../../../_static/documentation_options.js"></script>
<script src="https://code.jquery.com/jquery-3.4.1.min.js" integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo=" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.3/umd/popper.min.js" integrity="sha384-ZMP7rVo3mIykV+2+9J3UJ46jBk0WLaUAdn689aCwoqbBJiSnjAK/l8WvCWPIPm49" crossorigin="anonymous"></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/js/bootstrap.min.js" integrity="sha384-ChfqqxuZUCnJSK3+MXmPNIyE6ZbWh2IMqE241rYiqJxyMiZ6OW/JmZQ5stwEULTy" crossorigin="anonymous"></script>
- <script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script>
- <script src="_static/jquery.js"></script>
- <script src="_static/underscore.js"></script>
- <script src="_static/_sphinx_javascript_frameworks_compat.js"></script>
- <script src="_static/doctools.js"></script>
- <script src="_static/clipboard.min.js"></script>
- <script src="_static/copybutton.js"></script>
- <script src="_static/js/globaltoc.js"></script>
+ <script data-url_root="../../../../" id="documentation_options" src="../../../../_static/documentation_options.js"></script>
+ <script src="../../../../_static/jquery.js"></script>
+ <script src="../../../../_static/underscore.js"></script>
+ <script src="../../../../_static/_sphinx_javascript_frameworks_compat.js"></script>
+ <script src="../../../../_static/doctools.js"></script>
+ <script src="../../../../_static/sphinx_highlight.js"></script>
+ <script src="../../../../_static/clipboard.min.js"></script>
+ <script src="../../../../_static/copybutton.js"></script>
+ <script src="../../../../_static/js/globaltoc.js"></script>
+ <script src="../../../../_static/gh-jira-links.js"></script>
</body>
</html>
\ No newline at end of file
diff --git a/docs-archive/docker-stack/entrypoint.html b/docs-archive/apache-airflow/2.4.2/_api/airflow/example_dags/example_branch_datetime_operator/index.html
similarity index 59%
copy from docs-archive/docker-stack/entrypoint.html
copy to docs-archive/apache-airflow/2.4.2/_api/airflow/example_dags/example_branch_datetime_operator/index.html
index bfc2ff32b5..ab11619717 100644
--- a/docs-archive/docker-stack/entrypoint.html
+++ b/docs-archive/apache-airflow/2.4.2/_api/airflow/example_dags/example_branch_datetime_operator/index.html
@@ -9,17 +9,18 @@
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1">
- <title>Entrypoint — docker-stack Documentation</title>
- <link rel="stylesheet" href="_static/_gen/css/main.min.css" type="text/css" />
- <link rel="stylesheet" type="text/css" href="_static/pygments.css" />
- <link rel="stylesheet" type="text/css" href="_static/_gen/css/main.min.css" />
- <link rel="stylesheet" type="text/css" href="_static/copybutton.css" />
- <link rel="stylesheet" type="text/css" href="_static/_gen/css/main-custom.min.css" />
- <link rel="shortcut icon" href="_static/pin_32.png"/>
- <link rel="index" title="Index" href="genindex.html" />
- <link rel="search" title="Search" href="search.html" />
- <link rel="next" title="Dockerfile Changelog" href="changelog.html" />
- <link rel="prev" title="Building the image" href="build.html" />
+ <title>airflow.example_dags.example_branch_datetime_operator — Airflow Documentation</title>
+ <link rel="stylesheet" href="../../../../_static/_gen/css/main.min.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../../../_static/pygments.css" />
+ <link rel="stylesheet" type="text/css" href="../../../../_static/_gen/css/main.min.css" />
+ <link rel="stylesheet" type="text/css" href="../../../../_static/copybutton.css" />
+ <link rel="stylesheet" type="text/css" href="../../../../_static/_gen/css/main-custom.min.css" />
+ <link rel="stylesheet" type="text/css" href="../../../../_static/graphviz.css" />
+ <link rel="shortcut icon" href="../../../../_static/pin_32.png"/>
+ <link rel="index" title="Index" href="../../../../genindex.html" />
+ <link rel="search" title="Search" href="../../../../search.html" />
+ <link rel="next" title="airflow.example_dags.example_branch_day_of_week_operator" href="../example_branch_day_of_week_operator/index.html" />
+ <link rel="prev" title="airflow.example_dags.example_bash_operator" href="../example_bash_operator/index.html" />
<!-- Matomo -->
<script>
var _paq = window._paq = window._paq || [];
@@ -280,8 +281,21 @@
<div class="content-drawer">
<div class="td-sidebar">
+<div id="docs-version-selector" class="docs-version-selector sidebar__version-selector">
+ <a class="dropdown-toggle" href="#" id="versionDropdown" role="button" data-toggle="dropdown" aria-haspopup="true"
+ aria-expanded="false">
+ <span class="bodytext__medium--greyish-brown">Version: </span><span class="version">2.4.2</span>
+ </a>
+ <div class="dropdown-menu" aria-labelledby="navbarDropdownMenuLink">
+
+ </div>
+ <script type="application/x-template" id="version-item-template">
+ <a class="dropdown-item"></a>
+ </script>
+</div>
+
<div class="searchb-box">
- <form class="search-form" action="search.html" method="get">
+ <form class="search-form" action="../../../../search.html" method="get">
<input class="search-form__input" type="text" name="q" placeholder="Search docs" size="16">
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
@@ -311,31 +325,135 @@
<div class="toctree" role="navigation" aria-label="main navigation">
- <ul class="current">
-<li class="toctree-l1"><a class="reference internal" href="index.html">Home</a></li>
-<li class="toctree-l1"><a class="reference internal" href="build.html">Building the image</a></li>
-<li class="toctree-l1 current"><a class="current reference internal" href="#">Entrypoint</a><ul>
-<li class="toctree-l2"><a class="reference internal" href="#allowing-arbitrary-user-to-run-the-container">Allowing arbitrary user to run the container</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#waits-for-airflow-db-connection">Waits for Airflow DB connection</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#waits-for-celery-broker-connection">Waits for Celery broker connection</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#executing-commands">Executing commands</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#execute-custom-code-before-the-airflow-entrypoint">Execute custom code before the Airflow entrypoint</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#adding-custom-image-behaviour">Adding custom image behaviour</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#signal-propagation">Signal propagation</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#additional-quick-test-options">Additional quick test options</a><ul>
-<li class="toctree-l3"><a class="reference internal" href="#upgrading-airflow-db">Upgrading Airflow DB</a></li>
-<li class="toctree-l3"><a class="reference internal" href="#creating-admin-user">Creating admin user</a></li>
-<li class="toctree-l3"><a class="reference internal" href="#installing-additional-requirements">Installing additional requirements</a></li>
+ <p class="caption" role="heading"><span class="caption-text">Content</span></p>
+<ul>
+<li class="toctree-l1"><a class="reference internal" href="../../../../index.html">Overview</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../project.html">Project</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../license.html">License</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../start.html">Quick Start</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../installation/index.html">Installation</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../upgrading-from-1-10/index.html">Upgrading from 1.10 to 2</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../tutorial/index.html">Tutorials</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../howto/index.html">How-to Guides</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../ui.html">UI / Screenshots</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../concepts/index.html">Concepts</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../executor/index.html">Executor</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../dag-run.html">DAG Runs</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../plugins.html">Plugins</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../security/index.html">Security</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../logging-monitoring/index.html">Logging & Monitoring</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../timezone.html">Time Zones</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../usage-cli.html">Using the CLI</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../integration.html">Integration</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../kubernetes.html">Kubernetes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../lineage.html">Lineage</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../listeners.html">Listeners</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../dag-serialization.html">DAG Serialization</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../modules_management.html">Modules Management</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release-process.html">Release Policies</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release_notes.html">Release Notes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../best-practices.html">Best Practices</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../production-deployment.html">Production Deployment</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../faq.html">FAQ</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../privacy_notice.html">Privacy Notice</a></li>
+</ul>
+<p class="caption" role="heading"><span class="caption-text">References</span></p>
+<ul class="current">
+<li class="toctree-l1"><a class="reference internal" href="../../../../operators-and-hooks-ref.html">Operators and hooks</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../cli-and-env-variables-ref.html">CLI</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../templates-ref.html">Templates</a></li>
+<li class="toctree-l1 current"><a class="reference internal" href="../../../../python-api-ref.html">Python API</a><ul class="current">
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#dags">DAGs</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#operators">Operators</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#hooks">Hooks</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#executors">Executors</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#models">Models</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#exceptions">Exceptions</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#secrets-backends">Secrets Backends</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#timetables">Timetables</a></li>
+<li class="toctree-l2 current"><a class="reference internal" href="../../../../python-api-ref.html#example-dags">Example DAGs</a><ul class="current">
+<li class="toctree-l3 current"><a class="reference internal" href="../index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags</span></code></a><ul class="current">
+<li class="toctree-l4"><a class="reference internal" href="../index.html#subpackages">Subpackages</a></li>
+<li class="toctree-l4 current"><a class="reference internal" href="../index.html#submodules">Submodules</a><ul class="current">
+<li class="toctree-l5"><a class="reference internal" href="../example_bash_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_bash_operator</span></code></a></li>
+<li class="toctree-l5 current"><a class="current reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_datetime_operator</span></code></a><ul>
+<li class="toctree-l6"><a class="reference internal" href="#module-contents">Module Contents</a><ul>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.dag1"><code class="docutils literal notranslate"><span class="pre">dag1</span></code></a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.empty_task_11"><code class="docutils literal notranslate"><span class="pre">empty_task_11</span></code></a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.empty_task_21"><code class="docutils literal notranslate"><span class="pre">empty_task_21</span></code></a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.cond1"><code class="docutils literal notranslate"><span class="pre">cond1</span></code></a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.dag2"><code class="docutils literal notranslate"><span class="pre">dag2</span></code></a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.empty_task_12"><code class="docutils literal notranslate"><span class="pre">empty_task_12</span></code></a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.empty_task_22"><code class="docutils literal notranslate"><span class="pre">empty_task_22</span></code></a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.cond2"><code class="docutils literal notranslate"><span class="pre">cond2</span></code></a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.dag3"><code class="docutils literal notranslate"><span class="pre">dag3</span></code></a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.empty_task_13"><code class="docutils literal notranslate"><span class="pre">empty_task_13</span></code></a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.empty_task_23"><code class="docutils literal notranslate"><span class="pre">empty_task_23</span></code></a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.cond3"><code class="docutils literal notranslate"><span class="pre">cond3</span></code></a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.dag1">dag1</a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.empty_task_11">empty_task_11</a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.empty_task_21">empty_task_21</a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.cond1">cond1</a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.dag2">dag2</a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.empty_task_12">empty_task_12</a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.empty_task_22">empty_task_22</a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.cond2">cond2</a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.dag3">dag3</a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.empty_task_13">empty_task_13</a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.empty_task_23">empty_task_23</a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.cond3">cond3</a></li>
</ul>
</li>
</ul>
</li>
-<li class="toctree-l1"><a class="reference internal" href="changelog.html">Dockerfile Changelog</a></li>
-<li class="toctree-l1"><a class="reference internal" href="recipes.html">Recipes</a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_day_of_week_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_day_of_week_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_labels/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_labels</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_operator_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_operator_decorator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_python_dop_operator_3/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_python_dop_operator_3</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_complex/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_complex</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_datasets/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_datasets</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_external_task_marker_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_external_task_marker_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_kubernetes_executor/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_kubernetes_executor</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_latest_only/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_latest_only</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_latest_only_with_trigger/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_latest_only_with_trigger</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_local_kubernetes_executor/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_local_kubernetes_executor</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_nested_branch_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_nested_branch_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_passing_params_via_test_command/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_passing_params_via_test_command</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_python_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_python_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_short_circuit_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_short_circuit_decorator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_short_circuit_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_short_circuit_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_skip_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_skip_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_subdag_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_subdag_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_task_group/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_task_group</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_task_group_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_task_group_decorator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_time_delta_sensor_async/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_time_delta_sensor_async</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_trigger_controller_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_trigger_controller_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_trigger_target_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_trigger_target_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_xcom/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_xcom</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_xcomargs/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_xcomargs</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial_taskflow_api/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_taskflow_api</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial_taskflow_api_virtualenv/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_taskflow_api_virtualenv</span></code></a></li>
</ul>
-<p class="caption" role="heading"><span class="caption-text">References</span></p>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#utils">Utils</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../stable-rest-api-ref.html">Stable REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../deprecated-rest-api-ref.html">Deprecated REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../configurations-ref.html">Configurations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../extra-packages-ref.html">Extra packages</a></li>
+</ul>
+<p class="caption" role="heading"><span class="caption-text">Internal DB details</span></p>
<ul>
-<li class="toctree-l1"><a class="reference internal" href="build-arg-ref.html">Image build arguments reference</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../migrations-ref.html">Database Migrations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../database-erd-ref.html">Database ERD Schema</a></li>
</ul>
</div>
@@ -416,8 +534,21 @@
<div class="td-sidebar desktop-only d-print-none">
+<div id="docs-version-selector" class="docs-version-selector sidebar__version-selector">
+ <a class="dropdown-toggle" href="#" id="versionDropdown" role="button" data-toggle="dropdown" aria-haspopup="true"
+ aria-expanded="false">
+ <span class="bodytext__medium--greyish-brown">Version: </span><span class="version">2.4.2</span>
+ </a>
+ <div class="dropdown-menu" aria-labelledby="navbarDropdownMenuLink">
+
+ </div>
+ <script type="application/x-template" id="version-item-template">
+ <a class="dropdown-item"></a>
+ </script>
+</div>
+
<div class="searchb-box">
- <form class="search-form" action="search.html" method="get">
+ <form class="search-form" action="../../../../search.html" method="get">
<input class="search-form__input" type="text" name="q" placeholder="Search docs" size="16">
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
@@ -447,31 +578,135 @@
<div class="toctree" role="navigation" aria-label="main navigation">
- <ul class="current">
-<li class="toctree-l1"><a class="reference internal" href="index.html">Home</a></li>
-<li class="toctree-l1"><a class="reference internal" href="build.html">Building the image</a></li>
-<li class="toctree-l1 current"><a class="current reference internal" href="#">Entrypoint</a><ul>
-<li class="toctree-l2"><a class="reference internal" href="#allowing-arbitrary-user-to-run-the-container">Allowing arbitrary user to run the container</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#waits-for-airflow-db-connection">Waits for Airflow DB connection</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#waits-for-celery-broker-connection">Waits for Celery broker connection</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#executing-commands">Executing commands</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#execute-custom-code-before-the-airflow-entrypoint">Execute custom code before the Airflow entrypoint</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#adding-custom-image-behaviour">Adding custom image behaviour</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#signal-propagation">Signal propagation</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#additional-quick-test-options">Additional quick test options</a><ul>
-<li class="toctree-l3"><a class="reference internal" href="#upgrading-airflow-db">Upgrading Airflow DB</a></li>
-<li class="toctree-l3"><a class="reference internal" href="#creating-admin-user">Creating admin user</a></li>
-<li class="toctree-l3"><a class="reference internal" href="#installing-additional-requirements">Installing additional requirements</a></li>
+ <p class="caption" role="heading"><span class="caption-text">Content</span></p>
+<ul>
+<li class="toctree-l1"><a class="reference internal" href="../../../../index.html">Overview</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../project.html">Project</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../license.html">License</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../start.html">Quick Start</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../installation/index.html">Installation</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../upgrading-from-1-10/index.html">Upgrading from 1.10 to 2</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../tutorial/index.html">Tutorials</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../howto/index.html">How-to Guides</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../ui.html">UI / Screenshots</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../concepts/index.html">Concepts</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../executor/index.html">Executor</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../dag-run.html">DAG Runs</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../plugins.html">Plugins</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../security/index.html">Security</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../logging-monitoring/index.html">Logging & Monitoring</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../timezone.html">Time Zones</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../usage-cli.html">Using the CLI</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../integration.html">Integration</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../kubernetes.html">Kubernetes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../lineage.html">Lineage</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../listeners.html">Listeners</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../dag-serialization.html">DAG Serialization</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../modules_management.html">Modules Management</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release-process.html">Release Policies</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release_notes.html">Release Notes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../best-practices.html">Best Practices</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../production-deployment.html">Production Deployment</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../faq.html">FAQ</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../privacy_notice.html">Privacy Notice</a></li>
+</ul>
+<p class="caption" role="heading"><span class="caption-text">References</span></p>
+<ul class="current">
+<li class="toctree-l1"><a class="reference internal" href="../../../../operators-and-hooks-ref.html">Operators and hooks</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../cli-and-env-variables-ref.html">CLI</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../templates-ref.html">Templates</a></li>
+<li class="toctree-l1 current"><a class="reference internal" href="../../../../python-api-ref.html">Python API</a><ul class="current">
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#dags">DAGs</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#operators">Operators</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#hooks">Hooks</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#executors">Executors</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#models">Models</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#exceptions">Exceptions</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#secrets-backends">Secrets Backends</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#timetables">Timetables</a></li>
+<li class="toctree-l2 current"><a class="reference internal" href="../../../../python-api-ref.html#example-dags">Example DAGs</a><ul class="current">
+<li class="toctree-l3 current"><a class="reference internal" href="../index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags</span></code></a><ul class="current">
+<li class="toctree-l4"><a class="reference internal" href="../index.html#subpackages">Subpackages</a></li>
+<li class="toctree-l4 current"><a class="reference internal" href="../index.html#submodules">Submodules</a><ul class="current">
+<li class="toctree-l5"><a class="reference internal" href="../example_bash_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_bash_operator</span></code></a></li>
+<li class="toctree-l5 current"><a class="current reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_datetime_operator</span></code></a><ul>
+<li class="toctree-l6"><a class="reference internal" href="#module-contents">Module Contents</a><ul>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.dag1"><code class="docutils literal notranslate"><span class="pre">dag1</span></code></a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.empty_task_11"><code class="docutils literal notranslate"><span class="pre">empty_task_11</span></code></a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.empty_task_21"><code class="docutils literal notranslate"><span class="pre">empty_task_21</span></code></a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.cond1"><code class="docutils literal notranslate"><span class="pre">cond1</span></code></a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.dag2"><code class="docutils literal notranslate"><span class="pre">dag2</span></code></a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.empty_task_12"><code class="docutils literal notranslate"><span class="pre">empty_task_12</span></code></a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.empty_task_22"><code class="docutils literal notranslate"><span class="pre">empty_task_22</span></code></a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.cond2"><code class="docutils literal notranslate"><span class="pre">cond2</span></code></a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.dag3"><code class="docutils literal notranslate"><span class="pre">dag3</span></code></a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.empty_task_13"><code class="docutils literal notranslate"><span class="pre">empty_task_13</span></code></a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.empty_task_23"><code class="docutils literal notranslate"><span class="pre">empty_task_23</span></code></a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.cond3"><code class="docutils literal notranslate"><span class="pre">cond3</span></code></a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.dag1">dag1</a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.empty_task_11">empty_task_11</a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.empty_task_21">empty_task_21</a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.cond1">cond1</a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.dag2">dag2</a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.empty_task_12">empty_task_12</a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.empty_task_22">empty_task_22</a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.cond2">cond2</a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.dag3">dag3</a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.empty_task_13">empty_task_13</a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.empty_task_23">empty_task_23</a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.cond3">cond3</a></li>
</ul>
</li>
</ul>
</li>
-<li class="toctree-l1"><a class="reference internal" href="changelog.html">Dockerfile Changelog</a></li>
-<li class="toctree-l1"><a class="reference internal" href="recipes.html">Recipes</a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_day_of_week_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_day_of_week_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_labels/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_labels</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_operator_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_operator_decorator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_python_dop_operator_3/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_python_dop_operator_3</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_complex/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_complex</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_datasets/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_datasets</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_external_task_marker_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_external_task_marker_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_kubernetes_executor/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_kubernetes_executor</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_latest_only/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_latest_only</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_latest_only_with_trigger/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_latest_only_with_trigger</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_local_kubernetes_executor/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_local_kubernetes_executor</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_nested_branch_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_nested_branch_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_passing_params_via_test_command/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_passing_params_via_test_command</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_python_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_python_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_short_circuit_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_short_circuit_decorator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_short_circuit_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_short_circuit_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_skip_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_skip_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_subdag_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_subdag_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_task_group/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_task_group</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_task_group_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_task_group_decorator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_time_delta_sensor_async/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_time_delta_sensor_async</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_trigger_controller_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_trigger_controller_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_trigger_target_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_trigger_target_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_xcom/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_xcom</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_xcomargs/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_xcomargs</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial_taskflow_api/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_taskflow_api</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial_taskflow_api_virtualenv/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_taskflow_api_virtualenv</span></code></a></li>
</ul>
-<p class="caption" role="heading"><span class="caption-text">References</span></p>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#utils">Utils</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../stable-rest-api-ref.html">Stable REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../deprecated-rest-api-ref.html">Deprecated REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../configurations-ref.html">Configurations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../extra-packages-ref.html">Extra packages</a></li>
+</ul>
+<p class="caption" role="heading"><span class="caption-text">Internal DB details</span></p>
<ul>
-<li class="toctree-l1"><a class="reference internal" href="build-arg-ref.html">Image build arguments reference</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../migrations-ref.html">Database Migrations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../database-erd-ref.html">Database ERD Schema</a></li>
</ul>
</div>
@@ -560,9 +795,13 @@
<ul class="breadcrumb">
- <li class="breadcrumb-item"><a href="index.html" class="icon icon-home"> Home</a></li>
+ <li class="breadcrumb-item"><a href="../../../../index.html" class="icon icon-home"> Home</a></li>
+
+ <li class="breadcrumb-item"><a href="../../../../python-api-ref.html">Python API Reference</a></li>
- <li class="breadcrumb-item"><a href="entrypoint.html"> Entrypoint</a></li>
+ <li class="breadcrumb-item"><a href="../index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags</span></code></a></li>
+
+ <li class="breadcrumb-item"><a href="index.html"> <code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_datetime_operator</span></code></a></li>
</ul>
</div>
@@ -573,390 +812,81 @@
<div class="bodywrapper">
<div class="body" role="main">
- <blockquote>
-<div></div></blockquote>
-<div class="section" id="entrypoint">
-<h1>Entrypoint<a class="headerlink" href="#entrypoint" title="Permalink to this heading">ΒΆ</a></h1>
-<p>If you are using the default entrypoint of the production image,
-there are a few actions that are automatically performed when the container starts.
-In some cases, you can pass environment variables to the image to trigger some of that behaviour.</p>
-<p>The variables that control the βexecutionβ behaviour start with <code class="docutils literal notranslate"><span class="pre">_AIRFLOW</span></code> to distinguish them
-from the variables used to build the image starting with <code class="docutils literal notranslate"><span class="pre">AIRFLOW</span></code>.</p>
-<div class="section" id="allowing-arbitrary-user-to-run-the-container">
-<span id="arbitrary-docker-user"></span><h2>Allowing arbitrary user to run the container<a class="headerlink" href="#allowing-arbitrary-user-to-run-the-container" title="Permalink to this heading">ΒΆ</a></h2>
-<p>Airflow image is Open-Shift compatible, which means that you can start it with random user ID and the
-group id <code class="docutils literal notranslate"><span class="pre">0</span></code> (<code class="docutils literal notranslate"><span class="pre">root</span></code>). If you want to run the image with user different than Airflow, you MUST set
-GID of the user to <code class="docutils literal notranslate"><span class="pre">0</span></code>. In case you try to use different group, the entrypoint exits with error.</p>
-<p>OpenShift randomly assigns UID when it starts the container, but you can utilise this flexible UID
-also in case of running the image manually. This might be useful for example in case you want to
-mount <code class="docutils literal notranslate"><span class="pre">dag</span></code> and <code class="docutils literal notranslate"><span class="pre">logs</span></code> folders from host system on Linux, in which case the UID should be set
-the same ID as your host user.</p>
-<p>This can be achieved in various ways - you can change USER when you extend or customize the image or
-you can dynamically pass the user to <code class="docutils literal notranslate"><span class="pre">docker</span> <span class="pre">run</span></code> command, by adding <code class="docutils literal notranslate"><span class="pre">--user</span></code> flag in one of
-those formats (See <a class="reference external" href="https://docs.docker.com/engine/reference/run/#user">Docker Run reference</a> for details):</p>
-<p><code class="docutils literal notranslate"><span class="pre">`</span>
-<span class="pre">[</span> <span class="pre">user</span> <span class="pre">|</span> <span class="pre">user:group</span> <span class="pre">|</span> <span class="pre">uid</span> <span class="pre">|</span> <span class="pre">uid:gid</span> <span class="pre">|</span> <span class="pre">user:gid</span> <span class="pre">|</span> <span class="pre">uid:group</span> <span class="pre">]</span>
-<span class="pre">`</span></code></p>
-<p>In case of Docker Compose environment it can be changed via <code class="docutils literal notranslate"><span class="pre">user:</span></code> entry in the <code class="docutils literal notranslate"><span class="pre">docker-compose.yaml</span></code>.
-See <a class="reference external" href="https://docs.docker.com/compose/compose-file/compose-file-v3/#domainname-hostname-ipc-mac_address-privileged-read_only-shm_size-stdin_open-tty-user-working_dir">Docker compose reference</a>
-for details. In our Quickstart Guide using Docker-Compose, the UID can be passed via the
-<code class="docutils literal notranslate"><span class="pre">AIRFLOW_UID</span></code> variable as described in
-<a class="reference external" href="/docs/apache-airflow/stable/howto/docker-compose/index.html#initializing-docker-compose-environment" title="(in apache-airflow v2.5.0.dev0)"><span class="xref std std-ref">Initializing docker compose environment</span></a>.</p>
-<p>The user can be any UID. In case UID is different than the default
-<code class="docutils literal notranslate"><span class="pre">airflow</span></code> (UID=50000), the user will be automatically created when entering the container.</p>
-<p>In order to accommodate a number of external libraries and projects, Airflow will automatically create
-such an arbitrary user in (<cite>/etc/passwd</cite>) and make itβs home directory point to <code class="docutils literal notranslate"><span class="pre">/home/airflow</span></code>.
-Many of 3rd-party libraries and packages require home directory of the user to be present, because they
-need to write some cache information there, so such a dynamic creation of a user is necessary.</p>
-<p>Such arbitrary user has to be able to write to certain directories that needs write access, and since
-it is not advised to allow write access to βotherβ for security reasons, the OpenShift
-guidelines introduced the concept of making all such folders have the <code class="docutils literal notranslate"><span class="pre">0</span></code> (<code class="docutils literal notranslate"><span class="pre">root</span></code>) group id (GID).
-All the directories that need write access in the Airflow production image have GID set to 0 (and
-they are writable for the group). We are following that concept and all the directories that need
-write access follow that.</p>
-<p>The GID=0 is set as default for the <code class="docutils literal notranslate"><span class="pre">airflow</span></code> user, so any directories it creates have GID set to 0
-by default. The entrypoint sets <code class="docutils literal notranslate"><span class="pre">umask</span></code> to be <code class="docutils literal notranslate"><span class="pre">0002</span></code> - this means that any directories created by
-the user have also βgroup writeβ access for group <code class="docutils literal notranslate"><span class="pre">0</span></code> - they will be writable by other users with
-<code class="docutils literal notranslate"><span class="pre">root</span></code> group. Also whenever any βarbitraryβ user creates a folder (for example in a mounted volume), that
-folder will have a βgroup writeβ access and <code class="docutils literal notranslate"><span class="pre">GID=0</span></code>, so that execution with another, arbitrary user
-will still continue to work, even if such directory is mounted by another arbitrary user later.</p>
-<p>The <code class="docutils literal notranslate"><span class="pre">umask</span></code> setting however only works for runtime of the container - it is not used during building of
-the image. If you would like to extend the image and add your own packages, you should remember to add
-<code class="docutils literal notranslate"><span class="pre">umask</span> <span class="pre">0002</span></code> in front of your docker command - this way the directories created by any installation
-that need group access will also be writable for the group. This can be done for example this way:</p>
-<blockquote>
-<div><div class="highlight-docker notranslate"><div class="highlight"><pre><span></span><span class="k">RUN</span><span class="w"> </span><span class="nb">umask</span> <span class="m">0002</span><span class="p">;</span> <span class="se">\</span>
- do_something<span class="p">;</span> <span class="se">\</span>
- do_otherthing<span class="p">;</span>
-</pre></div>
-</div>
-</div></blockquote>
-<p>You can read more about it in the βSupport arbitrary user idsβ chapter in the
-<a class="reference external" href="https://docs.openshift.com/container-platform/4.7/openshift_images/create-images.html#images-create-guide-openshift_create-images">Openshift best practices</a>.</p>
-</div>
-<div class="section" id="waits-for-airflow-db-connection">
-<h2>Waits for Airflow DB connection<a class="headerlink" href="#waits-for-airflow-db-connection" title="Permalink to this heading">ΒΆ</a></h2>
-<p>The entrypoint is waiting for a connection to the database independent of the database engine. This allows us to increase
-the stability of the environment.</p>
-<p>Waiting for connection involves executing <code class="docutils literal notranslate"><span class="pre">airflow</span> <span class="pre">db</span> <span class="pre">check</span></code> command, which means that a <code class="docutils literal notranslate"><span class="pre">select</span> <span class="pre">1</span> <span class="pre">as</span> <span class="pre">is_alive;</span></code> statement
-is executed. Then it loops until the the command will be successful.
-It tries <span class="target" id="index-0"></span><code class="xref std std-envvar docutils literal notranslate"><span class="pre">CONNECTION_CHECK_MAX_COUNT</span></code> times and sleeps <span class="target" id="index-1"></span><code class="xref std std-envvar docutils literal notranslate"><span class="pre">CONNECTION_CHECK_SLEEP_TIME</span></code> between checks
-To disable check, set <code class="docutils literal notranslate"><span class="pre">CONNECTION_CHECK_MAX_COUNT=0</span></code>.</p>
-</div>
-<div class="section" id="waits-for-celery-broker-connection">
-<h2>Waits for Celery broker connection<a class="headerlink" href="#waits-for-celery-broker-connection" title="Permalink to this heading">ΒΆ</a></h2>
-<p>In case CeleryExecutor is used, and one of the <code class="docutils literal notranslate"><span class="pre">scheduler</span></code>, <code class="docutils literal notranslate"><span class="pre">celery</span></code>
-commands are used the entrypoint will wait until the Celery broker DB connection is available.</p>
-<p>The script detects backend type depending on the URL schema and assigns default port numbers if not specified
-in the URL. Then it loops until connection to the host/port specified can be established
-It tries <span class="target" id="index-2"></span><code class="xref std std-envvar docutils literal notranslate"><span class="pre">CONNECTION_CHECK_MAX_COUNT</span></code> times and sleeps <span class="target" id="index-3"></span><code class="xref std std-envvar docutils literal notranslate"><span class="pre">CONNECTION_CHECK_SLEEP_TIME</span></code> between checks.
-To disable check, set <code class="docutils literal notranslate"><span class="pre">CONNECTION_CHECK_MAX_COUNT=0</span></code>.</p>
-<p>Supported schemes:</p>
-<ul class="simple">
-<li><p><code class="docutils literal notranslate"><span class="pre">amqp(s)://</span></code> (rabbitmq) - default port 5672</p></li>
-<li><p><code class="docutils literal notranslate"><span class="pre">redis://</span></code> - default port 6379</p></li>
-<li><p><code class="docutils literal notranslate"><span class="pre">postgres://</span></code> - default port 5432</p></li>
-<li><p><code class="docutils literal notranslate"><span class="pre">mysql://</span></code> - default port 3306</p></li>
-</ul>
-<p>Waiting for connection involves checking if a matching port is open. The host information is derived from the Airflow configuration.</p>
-</div>
-<div class="section" id="executing-commands">
-<span id="entrypoint-commands"></span><h2>Executing commands<a class="headerlink" href="#executing-commands" title="Permalink to this heading">ΒΆ</a></h2>
-<p>If first argument equals to βbashβ - you are dropped to a bash shell or you can executes bash command
-if you specify extra arguments. For example:</p>
-<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>docker run -it apache/airflow:2.4.1-python3.6 bash -c <span class="s2">"ls -la"</span>
-total <span class="m">16</span>
-drwxr-xr-x <span class="m">4</span> airflow root <span class="m">4096</span> Jun <span class="m">5</span> <span class="m">18</span>:12 .
-drwxr-xr-x <span class="m">1</span> root root <span class="m">4096</span> Jun <span class="m">5</span> <span class="m">18</span>:12 ..
-drwxr-xr-x <span class="m">2</span> airflow root <span class="m">4096</span> Jun <span class="m">5</span> <span class="m">18</span>:12 dags
-drwxr-xr-x <span class="m">2</span> airflow root <span class="m">4096</span> Jun <span class="m">5</span> <span class="m">18</span>:12 logs
-</pre></div>
-</div>
-<p>If first argument is equal to <code class="docutils literal notranslate"><span class="pre">python</span></code> - you are dropped in python shell or python commands are executed if
-you pass extra parameters. For example:</p>
-<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>> docker run -it apache/airflow:2.4.1-python3.6 python -c <span class="s2">"print('test')"</span>
-<span class="nb">test</span>
-</pre></div>
-</div>
-<p>If first argument equals to βairflowβ - the rest of the arguments is treated as an airflow command
-to execute. Example:</p>
-<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>docker run -it apache/airflow:2.4.1-python3.6 airflow webserver
-</pre></div>
-</div>
-<p>If there are any other arguments - they are simply passed to the βairflowβ command</p>
-<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>> docker run -it apache/airflow:2.4.1-python3.6 <span class="nb">help</span>
- usage: airflow <span class="o">[</span>-h<span class="o">]</span> GROUP_OR_COMMAND ...
-
- positional arguments:
- GROUP_OR_COMMAND
-
- Groups:
- celery Celery components
- config View configuration
- connections Manage connections
- dags Manage DAGs
- db Database operations
- <span class="nb">jobs</span> Manage <span class="nb">jobs</span>
- kubernetes Tools to <span class="nb">help</span> run the KubernetesExecutor
- pools Manage pools
- providers Display providers
- roles Manage roles
- tasks Manage tasks
- users Manage users
- variables Manage variables
-
- Commands:
- cheat-sheet Display cheat sheet
- info Show information about current Airflow and environment
- kerberos Start a Kerberos ticket renewer
- plugins Dump information about loaded plugins
- rotate-fernet-key
- Rotate encrypted connection credentials and variables
- scheduler Start a scheduler instance
- sync-perm Update permissions <span class="k">for</span> existing roles and optionally DAGs
- version Show the version
- webserver Start a Airflow webserver instance
-
- optional arguments:
- -h, --help show this <span class="nb">help</span> message and <span class="nb">exit</span>
-</pre></div>
-</div>
-</div>
-<div class="section" id="execute-custom-code-before-the-airflow-entrypoint">
-<h2>Execute custom code before the Airflow entrypoint<a class="headerlink" href="#execute-custom-code-before-the-airflow-entrypoint" title="Permalink to this heading">ΒΆ</a></h2>
-<p>If you want to execute some custom code before Airflowβs entrypoint you can by using
-a custom script and calling Airflowβs entrypoint as the
-last <code class="docutils literal notranslate"><span class="pre">exec</span></code> instruction in your custom one. However you have to remember to use <code class="docutils literal notranslate"><span class="pre">dumb-init</span></code> in the same
-way as it is used with Airflowβs entrypoint, otherwise you might have problems with proper signal
-propagation (See the next chapter).</p>
-<div class="highlight-Dockerfile notranslate"><div class="highlight"><pre><span></span><span class="k">FROM</span><span class="w"> </span><span class="s">airflow:2.4.0.dev0</span>
-<span class="k">COPY</span><span class="w"> </span>my_entrypoint.sh /
-<span class="k">ENTRYPOINT</span><span class="w"> </span><span class="p">[</span><span class="s2">"/usr/bin/dumb-init"</span><span class="p">,</span><span class="w"> </span><span class="s2">"--"</span><span class="p">,</span><span class="w"> </span><span class="s2">"/my_entrypoint.sh"</span><span class="p">]</span>
-</pre></div>
-</div>
-<p>Your entrypoint might for example modify or add variables on the fly. For example the below
-entrypoint sets max count of DB checks from the first parameter passed as parameter of the image
-execution (A bit useless example but should give the reader an example of how you could use it).</p>
-<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span><span class="ch">#!/bin/bash</span>
-<span class="nb">export</span> <span class="nv">CONNECTION_CHECK_MAX_COUNT</span><span class="o">=</span><span class="si">${</span><span class="nv">1</span><span class="si">}</span>
-<span class="nb">shift</span>
-<span class="nb">exec</span> /entrypoint <span class="s2">"</span><span class="si">${</span><span class="p">@</span><span class="si">}</span><span class="s2">"</span>
-</pre></div>
-</div>
-<p>Make sure Airflowβs entrypoint is run with <code class="docutils literal notranslate"><span class="pre">exec</span> <span class="pre">/entrypoint</span> <span class="pre">"${@}"</span></code> as the last command in your
-custom entrypoint. This way signals will be properly propagated and arguments will be passed
-to the entrypoint as usual (you can use <code class="docutils literal notranslate"><span class="pre">shift</span></code> as above if you need to pass some extra
-arguments. Note that passing secret values this way or storing secrets inside the image is a bad
-idea from security point of view - as both image and parameters to run the image with are accessible
-to anyone who has access to logs of your Kubernetes or image registry.</p>
-<p>Also be aware that code executed before Airflowβs entrypoint should not create any files or
-directories inside the container and everything might not work the same way when it is executed.
-Before Airflow entrypoint is executed, the following functionalities are not available:</p>
-<ul class="simple">
-<li><p>umask is not set properly to allow <code class="docutils literal notranslate"><span class="pre">group</span></code> write access</p></li>
-<li><p>user is not yet created in <code class="docutils literal notranslate"><span class="pre">/etc/passwd</span></code> if an arbitrary user is used to run the image</p></li>
-<li><p>the database and brokers might not be available yet</p></li>
-</ul>
-</div>
-<div class="section" id="adding-custom-image-behaviour">
-<h2>Adding custom image behaviour<a class="headerlink" href="#adding-custom-image-behaviour" title="Permalink to this heading">ΒΆ</a></h2>
-<p>The Airflow image executes a lot of steps in the entrypoint, and sets the right environment, but
-you might want to run additional code after the entrypoint creates the user, sets the umask, sets
-variables and checks that database is running.</p>
-<p>Rather than running regular commands - <code class="docutils literal notranslate"><span class="pre">scheduler</span></code>, <code class="docutils literal notranslate"><span class="pre">webserver</span></code> you can run <em>custom</em> script that
-you can embed into the image. You can even execute the usual components of airflow -
-<code class="docutils literal notranslate"><span class="pre">scheduler</span></code>, <code class="docutils literal notranslate"><span class="pre">webserver</span></code> in your custom script when you finish your custom setup.
-Similarly to custom entrypoint, it can be added to the image by extending it.</p>
-<div class="highlight-Dockerfile notranslate"><div class="highlight"><pre><span></span><span class="k">FROM</span><span class="w"> </span><span class="s">airflow:2.4.0.dev0</span>
-<span class="k">COPY</span><span class="w"> </span>my_after_entrypoint_script.sh /
-</pre></div>
-</div>
-<p>Build your image and then you can run this script by running the command:</p>
-<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>docker build . --pull --tag my-image:0.0.1
-docker run -it my-image:0.0.1 bash -c <span class="s2">"/my_after_entrypoint_script.sh"</span>
-</pre></div>
-</div>
-</div>
-<div class="section" id="signal-propagation">
-<h2>Signal propagation<a class="headerlink" href="#signal-propagation" title="Permalink to this heading">ΒΆ</a></h2>
-<p>Airflow uses <code class="docutils literal notranslate"><span class="pre">dumb-init</span></code> to run as βinitβ in the entrypoint. This is in order to propagate
-signals and reap child processes properly. This means that the process that you run does not have
-to install signal handlers to work properly and be killed when the container is gracefully terminated.
-The behaviour of signal propagation is configured by <code class="docutils literal notranslate"><span class="pre">DUMB_INIT_SETSID</span></code> variable which is set to
-<code class="docutils literal notranslate"><span class="pre">1</span></code> by default - meaning that the signals will be propagated to the whole process group, but you can
-set it to <code class="docutils literal notranslate"><span class="pre">0</span></code> to enable <code class="docutils literal notranslate"><span class="pre">single-child</span></code> behaviour of <code class="docutils literal notranslate"><span class="pre">dumb-init</span></code> which only propagates the
-signals to only single child process.</p>
-<p>The table below summarizes <code class="docutils literal notranslate"><span class="pre">DUMB_INIT_SETSID</span></code> possible values and their use cases.</p>
-<table class="docutils align-default">
-<colgroup>
-<col style="width: 19%" />
-<col style="width: 81%" />
-</colgroup>
-<tbody>
-<tr class="row-odd"><td><p>Variable value</p></td>
-<td><p>Use case</p></td>
-</tr>
-<tr class="row-even"><td><p>1 (default)</p></td>
-<td><p>Propagates signals to all processes in the process group of the main
-process running in the container.</p>
-<p>If you run your processes via <code class="docutils literal notranslate"><span class="pre">["bash",</span> <span class="pre">"-c"]</span></code> command and bash
-spawn new processes without <code class="docutils literal notranslate"><span class="pre">exec</span></code>, this will help to terminate
-your container gracefully as all processes will receive the signal.</p>
-</td>
-</tr>
-<tr class="row-odd"><td><p>0</p></td>
-<td><p>Propagates signals to the main process only.</p>
-<p>This is useful if your main process handles signals gracefully.
-A good example is warm shutdown of Celery workers. The <code class="docutils literal notranslate"><span class="pre">dumb-init</span></code>
-in this case will only propagate the signals to the main process,
-but not to the processes that are spawned in the same process
-group as the main one. For example in case of Celery, the main
-process will put the worker in βofflineβ mode, and will wait
-until all running tasks complete, and only then it will
-terminate all processes.</p>
-<p>For Airflowβs Celery worker, you should set the variable to 0
-and either use <code class="docutils literal notranslate"><span class="pre">["celery",</span> <span class="pre">"worker"]</span></code> command.
-If you are running it through <code class="docutils literal notranslate"><span class="pre">["bash",</span> <span class="pre">"-c"]</span></code> command,
-you need to start the worker via <code class="docutils literal notranslate"><span class="pre">exec</span> <span class="pre">airflow</span> <span class="pre">celery</span> <span class="pre">worker</span></code>
-as the last command executed.</p>
-</td>
-</tr>
-</tbody>
-</table>
-</div>
-<div class="section" id="additional-quick-test-options">
-<h2>Additional quick test options<a class="headerlink" href="#additional-quick-test-options" title="Permalink to this heading">ΒΆ</a></h2>
-<p>The options below are mostly used for quick testing the image - for example with
-quick-start docker-compose or when you want to perform a local test with new packages
-added. They are not supposed to be run in the production environment as they add additional
-overhead for execution of additional commands. Those options in production should be realized
-either as maintenance operations on the database or should be embedded in the custom image used
-(when you want to add new packages).</p>
-<div class="section" id="upgrading-airflow-db">
-<h3>Upgrading Airflow DB<a class="headerlink" href="#upgrading-airflow-db" title="Permalink to this heading">ΒΆ</a></h3>
-<p>If you set <span class="target" id="index-4"></span><code class="xref std std-envvar docutils literal notranslate"><span class="pre">_AIRFLOW_DB_UPGRADE</span></code> variable to a non-empty value, the entrypoint will run
-the <code class="docutils literal notranslate"><span class="pre">airflow</span> <span class="pre">db</span> <span class="pre">upgrade</span></code> command right after verifying the connection. You can also use this
-when you are running airflow with internal SQLite database (default) to upgrade the db and create
-admin users at entrypoint, so that you can start the webserver immediately. Note - using SQLite is
-intended only for testing purpose, never use SQLite in production as it has severe limitations when it
-comes to concurrency.</p>
-</div>
-<div class="section" id="creating-admin-user">
-<h3>Creating admin user<a class="headerlink" href="#creating-admin-user" title="Permalink to this heading">ΒΆ</a></h3>
-<p>The entrypoint can also create webserver user automatically when you enter it. you need to set
-<span class="target" id="index-5"></span><code class="xref std std-envvar docutils literal notranslate"><span class="pre">_AIRFLOW_WWW_USER_CREATE</span></code> to a non-empty value in order to do that. This is not intended for
-production, it is only useful if you would like to run a quick test with the production image.
-You need to pass at least password to create such user via <code class="docutils literal notranslate"><span class="pre">_AIRFLOW_WWW_USER_PASSWORD</span></code> or
-<span class="target" id="index-6"></span><code class="xref std std-envvar docutils literal notranslate"><span class="pre">_AIRFLOW_WWW_USER_PASSWORD_CMD</span></code> similarly like for other <code class="docutils literal notranslate"><span class="pre">*_CMD</span></code> variables, the content of
-the <code class="docutils literal notranslate"><span class="pre">*_CMD</span></code> will be evaluated as shell command and itβs output will be set as password.</p>
-<p>User creation will fail if none of the <code class="docutils literal notranslate"><span class="pre">PASSWORD</span></code> variables are set - there is no default for
-password for security reasons.</p>
-<table class="docutils align-default">
-<colgroup>
-<col style="width: 10%" />
-<col style="width: 24%" />
-<col style="width: 65%" />
-</colgroup>
-<thead>
-<tr class="row-odd"><th class="head"><p>Parameter</p></th>
-<th class="head"><p>Default</p></th>
-<th class="head"><p>Environment variable</p></th>
-</tr>
-</thead>
-<tbody>
-<tr class="row-even"><td><p>username</p></td>
-<td><p>admin</p></td>
-<td><p><code class="docutils literal notranslate"><span class="pre">_AIRFLOW_WWW_USER_USERNAME</span></code></p></td>
-</tr>
-<tr class="row-odd"><td><p>password</p></td>
-<td></td>
-<td><p><code class="docutils literal notranslate"><span class="pre">_AIRFLOW_WWW_USER_PASSWORD_CMD</span></code> or <code class="docutils literal notranslate"><span class="pre">_AIRFLOW_WWW_USER_PASSWORD</span></code></p></td>
-</tr>
-<tr class="row-even"><td><p>firstname</p></td>
-<td><p>Airflow</p></td>
-<td><p><code class="docutils literal notranslate"><span class="pre">_AIRFLOW_WWW_USER_FIRSTNAME</span></code></p></td>
-</tr>
-<tr class="row-odd"><td><p>lastname</p></td>
-<td><p>Admin</p></td>
-<td><p><code class="docutils literal notranslate"><span class="pre">_AIRFLOW_WWW_USER_LASTNAME</span></code></p></td>
-</tr>
-<tr class="row-even"><td><p>email</p></td>
-<td><p><a class="reference external" href="mailto:airflowadmin%40example.com">airflowadmin<span>@</span>example<span>.</span>com</a></p></td>
-<td><p><code class="docutils literal notranslate"><span class="pre">_AIRFLOW_WWW_USER_EMAIL</span></code></p></td>
-</tr>
-<tr class="row-odd"><td><p>role</p></td>
-<td><p>Admin</p></td>
-<td><p><code class="docutils literal notranslate"><span class="pre">_AIRFLOW_WWW_USER_ROLE</span></code></p></td>
-</tr>
-</tbody>
-</table>
-<p>In case the password is specified, the user will be attempted to be created, but the entrypoint will
-not fail if the attempt fails (this accounts for the case that the user is already created).</p>
-<p>You can, for example start the webserver in the production image with initializing the internal SQLite
-database and creating an <code class="docutils literal notranslate"><span class="pre">admin/admin</span></code> Admin user with the following command:</p>
-<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>docker run -it -p <span class="m">8080</span>:8080 <span class="se">\</span>
- --env <span class="s2">"_AIRFLOW_DB_UPGRADE=true"</span> <span class="se">\</span>
- --env <span class="s2">"_AIRFLOW_WWW_USER_CREATE=true"</span> <span class="se">\</span>
- --env <span class="s2">"_AIRFLOW_WWW_USER_PASSWORD=admin"</span> <span class="se">\</span>
- apache/airflow:2.4.1-python3.8 webserver
-</pre></div>
-</div>
-<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>docker run -it -p <span class="m">8080</span>:8080 <span class="se">\</span>
- --env <span class="s2">"_AIRFLOW_DB_UPGRADE=true"</span> <span class="se">\</span>
- --env <span class="s2">"_AIRFLOW_WWW_USER_CREATE=true"</span> <span class="se">\</span>
- --env <span class="s2">"_AIRFLOW_WWW_USER_PASSWORD_CMD=echo admin"</span> <span class="se">\</span>
- apache/airflow:2.4.1-python3.8 webserver
-</pre></div>
-</div>
-<p>The commands above perform initialization of the SQLite database, create admin user with admin password
-and Admin role. They also forward local port <code class="docutils literal notranslate"><span class="pre">8080</span></code> to the webserver port and finally start the webserver.</p>
-</div>
-<div class="section" id="installing-additional-requirements">
-<h3>Installing additional requirements<a class="headerlink" href="#installing-additional-requirements" title="Permalink to this heading">ΒΆ</a></h3>
-<div class="admonition warning">
-<p class="admonition-title">Warning</p>
-<p>Installing requirements this way is a very convenient method of running Airflow, very useful for
-testing and debugging. However, do not be tricked by its convenience. You should never, ever use it in
-production environment. We have deliberately chose to make it a development/test dependency and we print
-a warning, whenever it is used. There is an inherent security-related issue with using this method in
-production. Installing the requirements this way can happen at literally any time - when your containers
-get restarted, when your machines in K8S cluster get restarted. In a K8S Cluster those events can happen
-literally any time. This opens you up to a serious vulnerability where your production environment
-might be brought down by a single dependency being removed from PyPI - or even dependency of your
-dependency. This means that you put your production service availability in hands of 3rd-party developers.
-At any time, any moment including weekends and holidays those 3rd party developers might bring your
-production Airflow instance down, without you even knowing it. This is a serious vulnerability that
-is similar to the infamous
-<a class="reference external" href="https://qz.com/646467/how-one-programmer-broke-the-internet-by-deleting-a-tiny-piece-of-code/">leftpad</a>
-problem. You can fully protect against this case by building your own, immutable custom image, where the
-dependencies are baked in. You have been warned.</p>
-</div>
-<p>Installing additional requirements can be done by specifying <code class="docutils literal notranslate"><span class="pre">_PIP_ADDITIONAL_REQUIREMENTS</span></code> variable.
-The variable should contain a list of requirements that should be installed additionally when entering
-the containers. Note that this option slows down starting of Airflow as every time any container starts
-it must install new packages and it opens up huge potential security vulnerability when used in production
-(see below). Therefore this option should only be used for testing. When testing is finished,
-you should create your custom image with dependencies baked in.</p>
-<p>Example:</p>
-<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>docker run -it -p <span class="m">8080</span>:8080 <span class="se">\</span>
- --env <span class="s2">"_PIP_ADDITIONAL_REQUIREMENTS=lxml==4.6.3 charset-normalizer==1.4.1"</span> <span class="se">\</span>
- --env <span class="s2">"_AIRFLOW_DB_UPGRADE=true"</span> <span class="se">\</span>
- --env <span class="s2">"_AIRFLOW_WWW_USER_CREATE=true"</span> <span class="se">\</span>
- --env <span class="s2">"_AIRFLOW_WWW_USER_PASSWORD_CMD=echo admin"</span> <span class="se">\</span>
- apache/airflow:2.4.1-python3.8 webserver
-</pre></div>
-</div>
-<p>This method is only available starting from Docker image of Airflow 2.1.1 and above.</p>
-</div>
+ <div class="section" id="module-airflow.example_dags.example_branch_datetime_operator">
+<span id="airflow-example-dags-example-branch-datetime-operator"></span><h1><a class="reference internal" href="#module-airflow.example_dags.example_branch_datetime_operator" title="airflow.example_dags.example_branch_datetime_operator"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_datetime_operator</span></code></a><a class="headerlink" href="#module-airflow.example_dags.example_branch_datetime_operator" title="Permalink [...]
+<p>Example DAG demonstrating the usage of DateTimeBranchOperator with datetime as well as time objects as
+targets.</p>
+<div class="section" id="module-contents">
+<h2>Module Contents<a class="headerlink" href="#module-contents" title="Permalink to this heading">ΒΆ</a></h2>
+<dl class="py data">
+<dt class="sig sig-object py" id="airflow.example_dags.example_branch_datetime_operator.dag1">
+<span class="sig-prename descclassname"><span class="pre">airflow.example_dags.example_branch_datetime_operator.</span></span><span class="sig-name descname"><span class="pre">dag1</span></span><a class="reference internal" href="../../../../_modules/airflow/example_dags/example_branch_datetime_operator.html#dag1"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow.example_dags.example_branch_datetime_operator.dag1" title="Permalin [...]
+<dd></dd></dl>
+
+<dl class="py data">
+<dt class="sig sig-object py" id="airflow.example_dags.example_branch_datetime_operator.empty_task_11">
+<span class="sig-prename descclassname"><span class="pre">airflow.example_dags.example_branch_datetime_operator.</span></span><span class="sig-name descname"><span class="pre">empty_task_11</span></span><a class="reference internal" href="../../../../_modules/airflow/example_dags/example_branch_datetime_operator.html#empty_task_11"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow.example_dags.example_branch_datetime_operator.emp [...]
+<dd></dd></dl>
+
+<dl class="py data">
+<dt class="sig sig-object py" id="airflow.example_dags.example_branch_datetime_operator.empty_task_21">
+<span class="sig-prename descclassname"><span class="pre">airflow.example_dags.example_branch_datetime_operator.</span></span><span class="sig-name descname"><span class="pre">empty_task_21</span></span><a class="reference internal" href="../../../../_modules/airflow/example_dags/example_branch_datetime_operator.html#empty_task_21"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow.example_dags.example_branch_datetime_operator.emp [...]
+<dd></dd></dl>
+
+<dl class="py data">
+<dt class="sig sig-object py" id="airflow.example_dags.example_branch_datetime_operator.cond1">
+<span class="sig-prename descclassname"><span class="pre">airflow.example_dags.example_branch_datetime_operator.</span></span><span class="sig-name descname"><span class="pre">cond1</span></span><a class="reference internal" href="../../../../_modules/airflow/example_dags/example_branch_datetime_operator.html#cond1"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow.example_dags.example_branch_datetime_operator.cond1" title="Perma [...]
+<dd></dd></dl>
+
+<dl class="py data">
+<dt class="sig sig-object py" id="airflow.example_dags.example_branch_datetime_operator.dag2">
+<span class="sig-prename descclassname"><span class="pre">airflow.example_dags.example_branch_datetime_operator.</span></span><span class="sig-name descname"><span class="pre">dag2</span></span><a class="reference internal" href="../../../../_modules/airflow/example_dags/example_branch_datetime_operator.html#dag2"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow.example_dags.example_branch_datetime_operator.dag2" title="Permalin [...]
+<dd></dd></dl>
+
+<dl class="py data">
+<dt class="sig sig-object py" id="airflow.example_dags.example_branch_datetime_operator.empty_task_12">
+<span class="sig-prename descclassname"><span class="pre">airflow.example_dags.example_branch_datetime_operator.</span></span><span class="sig-name descname"><span class="pre">empty_task_12</span></span><a class="reference internal" href="../../../../_modules/airflow/example_dags/example_branch_datetime_operator.html#empty_task_12"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow.example_dags.example_branch_datetime_operator.emp [...]
+<dd></dd></dl>
+
+<dl class="py data">
+<dt class="sig sig-object py" id="airflow.example_dags.example_branch_datetime_operator.empty_task_22">
+<span class="sig-prename descclassname"><span class="pre">airflow.example_dags.example_branch_datetime_operator.</span></span><span class="sig-name descname"><span class="pre">empty_task_22</span></span><a class="reference internal" href="../../../../_modules/airflow/example_dags/example_branch_datetime_operator.html#empty_task_22"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow.example_dags.example_branch_datetime_operator.emp [...]
+<dd></dd></dl>
+
+<dl class="py data">
+<dt class="sig sig-object py" id="airflow.example_dags.example_branch_datetime_operator.cond2">
+<span class="sig-prename descclassname"><span class="pre">airflow.example_dags.example_branch_datetime_operator.</span></span><span class="sig-name descname"><span class="pre">cond2</span></span><a class="reference internal" href="../../../../_modules/airflow/example_dags/example_branch_datetime_operator.html#cond2"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow.example_dags.example_branch_datetime_operator.cond2" title="Perma [...]
+<dd></dd></dl>
+
+<dl class="py data">
+<dt class="sig sig-object py" id="airflow.example_dags.example_branch_datetime_operator.dag3">
+<span class="sig-prename descclassname"><span class="pre">airflow.example_dags.example_branch_datetime_operator.</span></span><span class="sig-name descname"><span class="pre">dag3</span></span><a class="reference internal" href="../../../../_modules/airflow/example_dags/example_branch_datetime_operator.html#dag3"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow.example_dags.example_branch_datetime_operator.dag3" title="Permalin [...]
+<dd></dd></dl>
+
+<dl class="py data">
+<dt class="sig sig-object py" id="airflow.example_dags.example_branch_datetime_operator.empty_task_13">
+<span class="sig-prename descclassname"><span class="pre">airflow.example_dags.example_branch_datetime_operator.</span></span><span class="sig-name descname"><span class="pre">empty_task_13</span></span><a class="reference internal" href="../../../../_modules/airflow/example_dags/example_branch_datetime_operator.html#empty_task_13"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow.example_dags.example_branch_datetime_operator.emp [...]
+<dd></dd></dl>
+
+<dl class="py data">
+<dt class="sig sig-object py" id="airflow.example_dags.example_branch_datetime_operator.empty_task_23">
+<span class="sig-prename descclassname"><span class="pre">airflow.example_dags.example_branch_datetime_operator.</span></span><span class="sig-name descname"><span class="pre">empty_task_23</span></span><a class="reference internal" href="../../../../_modules/airflow/example_dags/example_branch_datetime_operator.html#empty_task_23"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow.example_dags.example_branch_datetime_operator.emp [...]
+<dd></dd></dl>
+
+<dl class="py data">
+<dt class="sig sig-object py" id="airflow.example_dags.example_branch_datetime_operator.cond3">
+<span class="sig-prename descclassname"><span class="pre">airflow.example_dags.example_branch_datetime_operator.</span></span><span class="sig-name descname"><span class="pre">cond3</span></span><a class="reference internal" href="../../../../_modules/airflow/example_dags/example_branch_datetime_operator.html#cond3"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow.example_dags.example_branch_datetime_operator.cond3" title="Perma [...]
+<dd></dd></dl>
+
</div>
</div>
<div class="pager" role="navigation" aria-label="related navigation">
- <a rel="prev" title="Building the image" href="build.html" >
+ <a rel="prev" title="airflow.example_dags.example_bash_operator" href="../example_bash_operator/index.html" >
<button class="btn-hollow btn-blue bodytext__medium--cerulean-blue" accesskey="p">Previous</button>
</a>
- <a rel="next" title="Dockerfile Changelog" href="changelog.html" >
+ <a rel="next" title="airflow.example_dags.example_branch_day_of_week_operator" href="../example_branch_day_of_week_operator/index.html" >
<button class="btn-hollow btn-blue bodytext__medium--cerulean-blue" accesskey="n">Next</button>
</a>
</div>
@@ -1026,18 +956,32 @@ you should create your custom image with dependencies baked in.</p>
<nav class="wy-nav-side-toc">
<div class="wy-menu-vertical">
<ul>
-<li><a class="reference internal" href="#">Entrypoint</a><ul>
-<li><a class="reference internal" href="#allowing-arbitrary-user-to-run-the-container">Allowing arbitrary user to run the container</a></li>
-<li><a class="reference internal" href="#waits-for-airflow-db-connection">Waits for Airflow DB connection</a></li>
-<li><a class="reference internal" href="#waits-for-celery-broker-connection">Waits for Celery broker connection</a></li>
-<li><a class="reference internal" href="#executing-commands">Executing commands</a></li>
-<li><a class="reference internal" href="#execute-custom-code-before-the-airflow-entrypoint">Execute custom code before the Airflow entrypoint</a></li>
-<li><a class="reference internal" href="#adding-custom-image-behaviour">Adding custom image behaviour</a></li>
-<li><a class="reference internal" href="#signal-propagation">Signal propagation</a></li>
-<li><a class="reference internal" href="#additional-quick-test-options">Additional quick test options</a><ul>
-<li><a class="reference internal" href="#upgrading-airflow-db">Upgrading Airflow DB</a></li>
-<li><a class="reference internal" href="#creating-admin-user">Creating admin user</a></li>
-<li><a class="reference internal" href="#installing-additional-requirements">Installing additional requirements</a></li>
+<li><a class="reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_datetime_operator</span></code></a><ul>
+<li><a class="reference internal" href="#module-contents">Module Contents</a><ul>
+<li><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.dag1"><code class="docutils literal notranslate"><span class="pre">dag1</span></code></a></li>
+<li><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.empty_task_11"><code class="docutils literal notranslate"><span class="pre">empty_task_11</span></code></a></li>
+<li><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.empty_task_21"><code class="docutils literal notranslate"><span class="pre">empty_task_21</span></code></a></li>
+<li><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.cond1"><code class="docutils literal notranslate"><span class="pre">cond1</span></code></a></li>
+<li><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.dag2"><code class="docutils literal notranslate"><span class="pre">dag2</span></code></a></li>
+<li><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.empty_task_12"><code class="docutils literal notranslate"><span class="pre">empty_task_12</span></code></a></li>
+<li><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.empty_task_22"><code class="docutils literal notranslate"><span class="pre">empty_task_22</span></code></a></li>
+<li><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.cond2"><code class="docutils literal notranslate"><span class="pre">cond2</span></code></a></li>
+<li><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.dag3"><code class="docutils literal notranslate"><span class="pre">dag3</span></code></a></li>
+<li><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.empty_task_13"><code class="docutils literal notranslate"><span class="pre">empty_task_13</span></code></a></li>
+<li><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.empty_task_23"><code class="docutils literal notranslate"><span class="pre">empty_task_23</span></code></a></li>
+<li><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.cond3"><code class="docutils literal notranslate"><span class="pre">cond3</span></code></a></li>
+<li><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.dag1">dag1</a></li>
+<li><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.empty_task_11">empty_task_11</a></li>
+<li><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.empty_task_21">empty_task_21</a></li>
+<li><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.cond1">cond1</a></li>
+<li><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.dag2">dag2</a></li>
+<li><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.empty_task_12">empty_task_12</a></li>
+<li><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.empty_task_22">empty_task_22</a></li>
+<li><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.cond2">cond2</a></li>
+<li><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.dag3">dag3</a></li>
+<li><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.empty_task_13">empty_task_13</a></li>
+<li><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.empty_task_23">empty_task_23</a></li>
+<li><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.cond3">cond3</a></li>
</ul>
</li>
</ul>
@@ -1064,7 +1008,7 @@ you should create your custom image with dependencies baked in.</p>
<div class="base-layout--button">
- <a href="https://github.com/apache/airflow/edit/main/docs/docker-stack/entrypoint.rst" rel="nofollow">
+ <a href="https://github.com/apache/airflow/edit/main/docs/apache-airflow/_api/airflow/example_dags/example_branch_datetime_operator/index.rst" rel="nofollow">
<button class="btn-hollow btn-brown btn-with-icon with-box-shadow button-fixed">
<svg xmlns="http://www.w3.org/2000/svg" width="30.76" height="30">
@@ -1198,18 +1142,20 @@ you should create your custom image with dependencies baked in.</p>
</span>
</div>
</footer>
- <script type="text/javascript" src="_static/_gen/js/docs.js"></script>
- <script type="text/javascript" id="documentation_options" data-url_root="./" src="_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../../../_static/_gen/js/docs.js"></script>
+ <script type="text/javascript" id="documentation_options" data-url_root="../../../../" src="../../../../_static/documentation_options.js"></script>
<script src="https://code.jquery.com/jquery-3.4.1.min.js" integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo=" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.3/umd/popper.min.js" integrity="sha384-ZMP7rVo3mIykV+2+9J3UJ46jBk0WLaUAdn689aCwoqbBJiSnjAK/l8WvCWPIPm49" crossorigin="anonymous"></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/js/bootstrap.min.js" integrity="sha384-ChfqqxuZUCnJSK3+MXmPNIyE6ZbWh2IMqE241rYiqJxyMiZ6OW/JmZQ5stwEULTy" crossorigin="anonymous"></script>
- <script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script>
- <script src="_static/jquery.js"></script>
- <script src="_static/underscore.js"></script>
- <script src="_static/_sphinx_javascript_frameworks_compat.js"></script>
- <script src="_static/doctools.js"></script>
- <script src="_static/clipboard.min.js"></script>
- <script src="_static/copybutton.js"></script>
- <script src="_static/js/globaltoc.js"></script>
+ <script data-url_root="../../../../" id="documentation_options" src="../../../../_static/documentation_options.js"></script>
+ <script src="../../../../_static/jquery.js"></script>
+ <script src="../../../../_static/underscore.js"></script>
+ <script src="../../../../_static/_sphinx_javascript_frameworks_compat.js"></script>
+ <script src="../../../../_static/doctools.js"></script>
+ <script src="../../../../_static/sphinx_highlight.js"></script>
+ <script src="../../../../_static/clipboard.min.js"></script>
+ <script src="../../../../_static/copybutton.js"></script>
+ <script src="../../../../_static/js/globaltoc.js"></script>
+ <script src="../../../../_static/gh-jira-links.js"></script>
</body>
</html>
\ No newline at end of file
diff --git a/docs-archive/docker-stack/changelog.html b/docs-archive/apache-airflow/2.4.2/_api/airflow/example_dags/example_branch_day_of_week_operator/index.html
similarity index 69%
copy from docs-archive/docker-stack/changelog.html
copy to docs-archive/apache-airflow/2.4.2/_api/airflow/example_dags/example_branch_day_of_week_operator/index.html
index 2fa2b8d179..1ace0d15b2 100644
--- a/docs-archive/docker-stack/changelog.html
+++ b/docs-archive/apache-airflow/2.4.2/_api/airflow/example_dags/example_branch_day_of_week_operator/index.html
@@ -9,17 +9,18 @@
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1">
- <title>Dockerfile Changelog — docker-stack Documentation</title>
- <link rel="stylesheet" href="_static/_gen/css/main.min.css" type="text/css" />
- <link rel="stylesheet" type="text/css" href="_static/pygments.css" />
- <link rel="stylesheet" type="text/css" href="_static/_gen/css/main.min.css" />
- <link rel="stylesheet" type="text/css" href="_static/copybutton.css" />
- <link rel="stylesheet" type="text/css" href="_static/_gen/css/main-custom.min.css" />
- <link rel="shortcut icon" href="_static/pin_32.png"/>
- <link rel="index" title="Index" href="genindex.html" />
- <link rel="search" title="Search" href="search.html" />
- <link rel="next" title="Recipes" href="recipes.html" />
- <link rel="prev" title="Entrypoint" href="entrypoint.html" />
+ <title>airflow.example_dags.example_branch_day_of_week_operator — Airflow Documentation</title>
+ <link rel="stylesheet" href="../../../../_static/_gen/css/main.min.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../../../_static/pygments.css" />
+ <link rel="stylesheet" type="text/css" href="../../../../_static/_gen/css/main.min.css" />
+ <link rel="stylesheet" type="text/css" href="../../../../_static/copybutton.css" />
+ <link rel="stylesheet" type="text/css" href="../../../../_static/_gen/css/main-custom.min.css" />
+ <link rel="stylesheet" type="text/css" href="../../../../_static/graphviz.css" />
+ <link rel="shortcut icon" href="../../../../_static/pin_32.png"/>
+ <link rel="index" title="Index" href="../../../../genindex.html" />
+ <link rel="search" title="Search" href="../../../../search.html" />
+ <link rel="next" title="airflow.example_dags.example_branch_labels" href="../example_branch_labels/index.html" />
+ <link rel="prev" title="airflow.example_dags.example_branch_datetime_operator" href="../example_branch_datetime_operator/index.html" />
<!-- Matomo -->
<script>
var _paq = window._paq = window._paq || [];
@@ -280,8 +281,21 @@
<div class="content-drawer">
<div class="td-sidebar">
+<div id="docs-version-selector" class="docs-version-selector sidebar__version-selector">
+ <a class="dropdown-toggle" href="#" id="versionDropdown" role="button" data-toggle="dropdown" aria-haspopup="true"
+ aria-expanded="false">
+ <span class="bodytext__medium--greyish-brown">Version: </span><span class="version">2.4.2</span>
+ </a>
+ <div class="dropdown-menu" aria-labelledby="navbarDropdownMenuLink">
+
+ </div>
+ <script type="application/x-template" id="version-item-template">
+ <a class="dropdown-item"></a>
+ </script>
+</div>
+
<div class="searchb-box">
- <form class="search-form" action="search.html" method="get">
+ <form class="search-form" action="../../../../search.html" method="get">
<input class="search-form__input" type="text" name="q" placeholder="Search docs" size="16">
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
@@ -311,24 +325,113 @@
<div class="toctree" role="navigation" aria-label="main navigation">
- <ul class="current">
-<li class="toctree-l1"><a class="reference internal" href="index.html">Home</a></li>
-<li class="toctree-l1"><a class="reference internal" href="build.html">Building the image</a></li>
-<li class="toctree-l1"><a class="reference internal" href="entrypoint.html">Entrypoint</a></li>
-<li class="toctree-l1 current"><a class="current reference internal" href="#">Dockerfile Changelog</a><ul>
-<li class="toctree-l2"><a class="reference internal" href="#changes-after-publishing-the-images">Changes after publishing the images</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-4">Airflow 2.4</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-3">Airflow 2.3</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-2">Airflow 2.2</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-1">Airflow 2.1</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-0">Airflow 2.0</a></li>
+ <p class="caption" role="heading"><span class="caption-text">Content</span></p>
+<ul>
+<li class="toctree-l1"><a class="reference internal" href="../../../../index.html">Overview</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../project.html">Project</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../license.html">License</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../start.html">Quick Start</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../installation/index.html">Installation</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../upgrading-from-1-10/index.html">Upgrading from 1.10 to 2</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../tutorial/index.html">Tutorials</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../howto/index.html">How-to Guides</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../ui.html">UI / Screenshots</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../concepts/index.html">Concepts</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../executor/index.html">Executor</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../dag-run.html">DAG Runs</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../plugins.html">Plugins</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../security/index.html">Security</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../logging-monitoring/index.html">Logging & Monitoring</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../timezone.html">Time Zones</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../usage-cli.html">Using the CLI</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../integration.html">Integration</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../kubernetes.html">Kubernetes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../lineage.html">Lineage</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../listeners.html">Listeners</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../dag-serialization.html">DAG Serialization</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../modules_management.html">Modules Management</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release-process.html">Release Policies</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release_notes.html">Release Notes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../best-practices.html">Best Practices</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../production-deployment.html">Production Deployment</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../faq.html">FAQ</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../privacy_notice.html">Privacy Notice</a></li>
+</ul>
+<p class="caption" role="heading"><span class="caption-text">References</span></p>
+<ul class="current">
+<li class="toctree-l1"><a class="reference internal" href="../../../../operators-and-hooks-ref.html">Operators and hooks</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../cli-and-env-variables-ref.html">CLI</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../templates-ref.html">Templates</a></li>
+<li class="toctree-l1 current"><a class="reference internal" href="../../../../python-api-ref.html">Python API</a><ul class="current">
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#dags">DAGs</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#operators">Operators</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#hooks">Hooks</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#executors">Executors</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#models">Models</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#exceptions">Exceptions</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#secrets-backends">Secrets Backends</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#timetables">Timetables</a></li>
+<li class="toctree-l2 current"><a class="reference internal" href="../../../../python-api-ref.html#example-dags">Example DAGs</a><ul class="current">
+<li class="toctree-l3 current"><a class="reference internal" href="../index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags</span></code></a><ul class="current">
+<li class="toctree-l4"><a class="reference internal" href="../index.html#subpackages">Subpackages</a></li>
+<li class="toctree-l4 current"><a class="reference internal" href="../index.html#submodules">Submodules</a><ul class="current">
+<li class="toctree-l5"><a class="reference internal" href="../example_bash_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_bash_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_datetime_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_datetime_operator</span></code></a></li>
+<li class="toctree-l5 current"><a class="current reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_day_of_week_operator</span></code></a><ul>
+<li class="toctree-l6"><a class="reference internal" href="#module-contents">Module Contents</a><ul>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_branch_day_of_week_operator.empty_task_1"><code class="docutils literal notranslate"><span class="pre">empty_task_1</span></code></a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_branch_day_of_week_operator.empty_task_1">empty_task_1</a></li>
</ul>
</li>
-<li class="toctree-l1"><a class="reference internal" href="recipes.html">Recipes</a></li>
</ul>
-<p class="caption" role="heading"><span class="caption-text">References</span></p>
+</li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_labels/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_labels</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_operator_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_operator_decorator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_python_dop_operator_3/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_python_dop_operator_3</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_complex/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_complex</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_datasets/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_datasets</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_external_task_marker_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_external_task_marker_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_kubernetes_executor/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_kubernetes_executor</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_latest_only/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_latest_only</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_latest_only_with_trigger/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_latest_only_with_trigger</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_local_kubernetes_executor/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_local_kubernetes_executor</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_nested_branch_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_nested_branch_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_passing_params_via_test_command/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_passing_params_via_test_command</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_python_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_python_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_short_circuit_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_short_circuit_decorator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_short_circuit_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_short_circuit_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_skip_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_skip_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_subdag_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_subdag_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_task_group/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_task_group</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_task_group_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_task_group_decorator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_time_delta_sensor_async/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_time_delta_sensor_async</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_trigger_controller_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_trigger_controller_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_trigger_target_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_trigger_target_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_xcom/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_xcom</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_xcomargs/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_xcomargs</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial_taskflow_api/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_taskflow_api</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial_taskflow_api_virtualenv/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_taskflow_api_virtualenv</span></code></a></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#utils">Utils</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../stable-rest-api-ref.html">Stable REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../deprecated-rest-api-ref.html">Deprecated REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../configurations-ref.html">Configurations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../extra-packages-ref.html">Extra packages</a></li>
+</ul>
+<p class="caption" role="heading"><span class="caption-text">Internal DB details</span></p>
<ul>
-<li class="toctree-l1"><a class="reference internal" href="build-arg-ref.html">Image build arguments reference</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../migrations-ref.html">Database Migrations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../database-erd-ref.html">Database ERD Schema</a></li>
</ul>
</div>
@@ -409,8 +512,21 @@
<div class="td-sidebar desktop-only d-print-none">
+<div id="docs-version-selector" class="docs-version-selector sidebar__version-selector">
+ <a class="dropdown-toggle" href="#" id="versionDropdown" role="button" data-toggle="dropdown" aria-haspopup="true"
+ aria-expanded="false">
+ <span class="bodytext__medium--greyish-brown">Version: </span><span class="version">2.4.2</span>
+ </a>
+ <div class="dropdown-menu" aria-labelledby="navbarDropdownMenuLink">
+
+ </div>
+ <script type="application/x-template" id="version-item-template">
+ <a class="dropdown-item"></a>
+ </script>
+</div>
+
<div class="searchb-box">
- <form class="search-form" action="search.html" method="get">
+ <form class="search-form" action="../../../../search.html" method="get">
<input class="search-form__input" type="text" name="q" placeholder="Search docs" size="16">
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
@@ -440,24 +556,113 @@
<div class="toctree" role="navigation" aria-label="main navigation">
- <ul class="current">
-<li class="toctree-l1"><a class="reference internal" href="index.html">Home</a></li>
-<li class="toctree-l1"><a class="reference internal" href="build.html">Building the image</a></li>
-<li class="toctree-l1"><a class="reference internal" href="entrypoint.html">Entrypoint</a></li>
-<li class="toctree-l1 current"><a class="current reference internal" href="#">Dockerfile Changelog</a><ul>
-<li class="toctree-l2"><a class="reference internal" href="#changes-after-publishing-the-images">Changes after publishing the images</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-4">Airflow 2.4</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-3">Airflow 2.3</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-2">Airflow 2.2</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-1">Airflow 2.1</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-0">Airflow 2.0</a></li>
+ <p class="caption" role="heading"><span class="caption-text">Content</span></p>
+<ul>
+<li class="toctree-l1"><a class="reference internal" href="../../../../index.html">Overview</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../project.html">Project</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../license.html">License</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../start.html">Quick Start</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../installation/index.html">Installation</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../upgrading-from-1-10/index.html">Upgrading from 1.10 to 2</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../tutorial/index.html">Tutorials</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../howto/index.html">How-to Guides</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../ui.html">UI / Screenshots</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../concepts/index.html">Concepts</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../executor/index.html">Executor</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../dag-run.html">DAG Runs</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../plugins.html">Plugins</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../security/index.html">Security</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../logging-monitoring/index.html">Logging & Monitoring</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../timezone.html">Time Zones</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../usage-cli.html">Using the CLI</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../integration.html">Integration</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../kubernetes.html">Kubernetes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../lineage.html">Lineage</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../listeners.html">Listeners</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../dag-serialization.html">DAG Serialization</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../modules_management.html">Modules Management</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release-process.html">Release Policies</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release_notes.html">Release Notes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../best-practices.html">Best Practices</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../production-deployment.html">Production Deployment</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../faq.html">FAQ</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../privacy_notice.html">Privacy Notice</a></li>
+</ul>
+<p class="caption" role="heading"><span class="caption-text">References</span></p>
+<ul class="current">
+<li class="toctree-l1"><a class="reference internal" href="../../../../operators-and-hooks-ref.html">Operators and hooks</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../cli-and-env-variables-ref.html">CLI</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../templates-ref.html">Templates</a></li>
+<li class="toctree-l1 current"><a class="reference internal" href="../../../../python-api-ref.html">Python API</a><ul class="current">
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#dags">DAGs</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#operators">Operators</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#hooks">Hooks</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#executors">Executors</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#models">Models</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#exceptions">Exceptions</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#secrets-backends">Secrets Backends</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#timetables">Timetables</a></li>
+<li class="toctree-l2 current"><a class="reference internal" href="../../../../python-api-ref.html#example-dags">Example DAGs</a><ul class="current">
+<li class="toctree-l3 current"><a class="reference internal" href="../index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags</span></code></a><ul class="current">
+<li class="toctree-l4"><a class="reference internal" href="../index.html#subpackages">Subpackages</a></li>
+<li class="toctree-l4 current"><a class="reference internal" href="../index.html#submodules">Submodules</a><ul class="current">
+<li class="toctree-l5"><a class="reference internal" href="../example_bash_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_bash_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_datetime_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_datetime_operator</span></code></a></li>
+<li class="toctree-l5 current"><a class="current reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_day_of_week_operator</span></code></a><ul>
+<li class="toctree-l6"><a class="reference internal" href="#module-contents">Module Contents</a><ul>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_branch_day_of_week_operator.empty_task_1"><code class="docutils literal notranslate"><span class="pre">empty_task_1</span></code></a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_branch_day_of_week_operator.empty_task_1">empty_task_1</a></li>
</ul>
</li>
-<li class="toctree-l1"><a class="reference internal" href="recipes.html">Recipes</a></li>
</ul>
-<p class="caption" role="heading"><span class="caption-text">References</span></p>
+</li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_labels/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_labels</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_operator_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_operator_decorator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_python_dop_operator_3/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_python_dop_operator_3</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_complex/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_complex</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_datasets/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_datasets</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_external_task_marker_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_external_task_marker_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_kubernetes_executor/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_kubernetes_executor</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_latest_only/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_latest_only</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_latest_only_with_trigger/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_latest_only_with_trigger</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_local_kubernetes_executor/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_local_kubernetes_executor</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_nested_branch_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_nested_branch_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_passing_params_via_test_command/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_passing_params_via_test_command</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_python_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_python_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_short_circuit_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_short_circuit_decorator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_short_circuit_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_short_circuit_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_skip_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_skip_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_subdag_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_subdag_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_task_group/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_task_group</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_task_group_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_task_group_decorator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_time_delta_sensor_async/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_time_delta_sensor_async</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_trigger_controller_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_trigger_controller_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_trigger_target_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_trigger_target_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_xcom/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_xcom</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_xcomargs/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_xcomargs</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial_taskflow_api/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_taskflow_api</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial_taskflow_api_virtualenv/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_taskflow_api_virtualenv</span></code></a></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#utils">Utils</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../stable-rest-api-ref.html">Stable REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../deprecated-rest-api-ref.html">Deprecated REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../configurations-ref.html">Configurations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../extra-packages-ref.html">Extra packages</a></li>
+</ul>
+<p class="caption" role="heading"><span class="caption-text">Internal DB details</span></p>
<ul>
-<li class="toctree-l1"><a class="reference internal" href="build-arg-ref.html">Image build arguments reference</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../migrations-ref.html">Database Migrations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../database-erd-ref.html">Database ERD Schema</a></li>
</ul>
</div>
@@ -546,9 +751,13 @@
<ul class="breadcrumb">
- <li class="breadcrumb-item"><a href="index.html" class="icon icon-home"> Home</a></li>
+ <li class="breadcrumb-item"><a href="../../../../index.html" class="icon icon-home"> Home</a></li>
+
+ <li class="breadcrumb-item"><a href="../../../../python-api-ref.html">Python API Reference</a></li>
+
+ <li class="breadcrumb-item"><a href="../index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags</span></code></a></li>
- <li class="breadcrumb-item"><a href="changelog.html"> Dockerfile Changelog</a></li>
+ <li class="breadcrumb-item"><a href="index.html"> <code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_day_of_week_operator</span></code></a></li>
</ul>
</div>
@@ -559,272 +768,25 @@
<div class="bodywrapper">
<div class="body" role="main">
- <blockquote>
-<div></div></blockquote>
-<div class="section" id="dockerfile-changelog">
-<h1>Dockerfile Changelog<a class="headerlink" href="#dockerfile-changelog" title="Permalink to this heading">ΒΆ</a></h1>
-<p>The <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> does not strictly follow the <a class="reference external" href="https://semver.org/">SemVer</a> approach of
-Apache Airflow when it comes to features and backwards compatibility. While Airflow code strictly
-follows it, the <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> is really a way to give users a conveniently packaged Airflow
-using standard container approach, so occasionally there are some changes in the building process
-or in the entrypoint of the image that require slight adaptation of how it is used or built.</p>
-<p>The Changelog below describes the changes introduced in each version of the docker images released by
-the Airflow team.</p>
-<dl class="field-list simple">
-<dt class="field-odd">note</dt>
-<dd class="field-odd"><p>The Changelog below concerns only the convenience production images released at
-<a class="reference external" href="https://hub.docker.com/r/apache/airflow">Airflow DockerHub</a> . The images that are released
-there, are usually built using the <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> released together with Airflow. However You are
-free to take latest released <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> from Airflow and use it to build an image for
-any Airflow version from the <code class="docutils literal notranslate"><span class="pre">Airflow</span> <span class="pre">2</span></code> line. There is no guarantee that it works, but if it does,
-then you can use latest features from that image to build the previous Airflow versions.</p>
-</dd>
-</dl>
-<div class="section" id="changes-after-publishing-the-images">
-<h2>Changes after publishing the images<a class="headerlink" href="#changes-after-publishing-the-images" title="Permalink to this heading">ΒΆ</a></h2>
-<p>Occasionally our images need to be regenerated using newer <code class="docutils literal notranslate"><span class="pre">Dockerfiles</span></code> or constraints.
-This happens when an issue is found or a breaking change is released by our dependencies
-that invalidates the already released image, and regenerating the image makes it usable again.
-While we cannot assure 100% backwards compatibility when it happens, we at least document it
-here so that users affected can find the reason for the changes.</p>
-<table class="docutils align-default">
-<colgroup>
-<col style="width: 10%" />
-<col style="width: 14%" />
-<col style="width: 28%" />
-<col style="width: 16%" />
-<col style="width: 32%" />
-</colgroup>
-<thead>
-<tr class="row-odd"><th class="head"><p>Date</p></th>
-<th class="head"><p>Affected images</p></th>
-<th class="head"><p>Potentially breaking change</p></th>
-<th class="head"><p>Reason</p></th>
-<th class="head"><p>Link to Pull Request</p></th>
-</tr>
-</thead>
-<tbody>
-<tr class="row-even"><td><p>17 June 2022</p></td>
-<td><p>2.2.5</p>
-<p>2.3.0-2.3.2</p>
-</td>
-<td><ul class="simple">
-<li><p>The <code class="docutils literal notranslate"><span class="pre">Authlib</span></code> library downgraded
-from 1.0.1 to 0.15.5 version</p></li>
-</ul>
-</td>
-<td><p>Flask App Builder
-not compatible with
-Authlib >= 1.0.0</p></td>
-<td><p><a class="reference external" href="https://github.com/apache/airflow/pull/24516">https://github.com/apache/airflow/pull/24516</a></p></td>
-</tr>
-<tr class="row-odd"><td><p>18 Jan 2022</p></td>
-<td><p>All 2.2.*, 2.1.*</p></td>
-<td><ul class="simple">
-<li><p>The AIRFLOW_GID 500 was removed</p></li>
-<li><p>MySQL <code class="docutils literal notranslate"><span class="pre">apt</span></code> repository key changed.</p></li>
-</ul>
-</td>
-<td><p>MySQL changed keys
-to sign their packages
-on 17 Jan 2022</p></td>
-<td><p><a class="reference external" href="https://github.com/apache/airflow/pull/20912">https://github.com/apache/airflow/pull/20912</a></p></td>
-</tr>
-</tbody>
-</table>
-</div>
-<div class="section" id="airflow-2-4">
-<h2>Airflow 2.4<a class="headerlink" href="#airflow-2-4" title="Permalink to this heading">ΒΆ</a></h2>
-<ul class="simple">
-<li><p>2.4.0</p>
-<ul>
-<li><p>You can specify additional <code class="docutils literal notranslate"><span class="pre">pip</span> <span class="pre">install</span></code> flags when you build the image via <code class="docutils literal notranslate"><span class="pre">ADDITIONAL_PIP_INSTALL_FLAGS</span></code>
-build arg.</p></li>
-<li><p>Support for <code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Buster</span></code> was dropped, including the possibility of building customized images as
-<code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Buster</span></code> reached end of life.</p></li>
-</ul>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-3">
-<h2>Airflow 2.3<a class="headerlink" href="#airflow-2-3" title="Permalink to this heading">ΒΆ</a></h2>
-<ul class="simple">
-<li><p>2.3.0</p>
-<ul>
-<li><p>Airflow 2.3 <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> is now better optimized for caching and βstandaloneβ which means that you
-can copy <strong>just</strong> the <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> to any folder and start building custom images. This
-however requires <a class="reference external" href="https://docs.docker.com/develop/develop-images/build_enhancements/">Buildkit</a>
-to build the image because we started using features that are only available in <code class="docutils literal notranslate"><span class="pre">Buildkit</span></code>.
-This can be done by setting <code class="docutils literal notranslate"><span class="pre">DOCKER_BUILDKIT=1</span></code> as an environment variable
-or by installing <a class="reference external" href="https://docs.docker.com/buildx/working-with-buildx/">the buildx plugin</a>
-and running <code class="docutils literal notranslate"><span class="pre">docker</span> <span class="pre">buildx</span> <span class="pre">build</span></code> command.</p></li>
-<li><p>Add Python 3.10 support</p></li>
-<li><p>Switch to <code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Bullseye</span></code> based images. <code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Buster</span></code> is deprecated and only available for
-customized image building.</p></li>
-<li><p>Add Multi-Platform support (AMD64/ARM64) in order to accommodate MacOS M1 users</p></li>
-<li><p>Build parameters which control if packages and Airflow should be installed from context file were
-unified</p></li>
-<li><p>The <code class="docutils literal notranslate"><span class="pre">INSTALL_FROM_PYPI</span></code> arg was removed - it is automatically detected now.</p></li>
-<li><p>The <code class="docutils literal notranslate"><span class="pre">INSTALL_FROM_DOCKER_CONTEXT_FILES</span></code> arg changed to <code class="docutils literal notranslate"><span class="pre">INSTALL_PACKAGES_FROM_CONTEXT</span></code></p></li>
-</ul>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-2">
-<h2>Airflow 2.2<a class="headerlink" href="#airflow-2-2" title="Permalink to this heading">ΒΆ</a></h2>
-<ul class="simple">
-<li><p>2.2.4
-* Add support for both <code class="docutils literal notranslate"><span class="pre">.piprc</span></code> and <code class="docutils literal notranslate"><span class="pre">pip.conf</span></code> customizations
-* Add ArtifactHub labels for better discovery of the images
-* Update default Python image to be 3.7
-* Build images with <code class="docutils literal notranslate"><span class="pre">Buildkit</span></code> (optional)
-* Fix building the image on Azure with <code class="docutils literal notranslate"><span class="pre">text</span> <span class="pre">file</span> <span class="pre">busy</span></code> error</p></li>
-<li><p>2.2.3
-* No changes</p></li>
-<li><p>2.2.2
-* No changes</p></li>
-<li><p>2.2.1
-* Workaround the problem with <code class="docutils literal notranslate"><span class="pre">libstdcpp</span></code> TLS error</p></li>
-<li><p>2.2.0
-* Remove AIRFLOW_GID (5000) from Airflow images (potentially breaking change for users using it)
-* Added warnings for Quick-start docker compose
-* Fix warm shutdown for celery worker (signal propagation)
-* Add Oauth libraries to PROD images
-* Add Python 3.9 support</p></li>
-</ul>
-</div>
-<div class="section" id="airflow-2-1">
-<h2>Airflow 2.1<a class="headerlink" href="#airflow-2-1" title="Permalink to this heading">ΒΆ</a></h2>
-<ul>
-<li><p>MySQL changed the keys to sign their packages on 17 Feb 2022. This caused all released images
-to fail when being extended. As result, on 18 Feb 2021 we re-released all
-the <code class="docutils literal notranslate"><span class="pre">2.2</span></code> and <code class="docutils literal notranslate"><span class="pre">2.1</span></code> images with latest versions of <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code>
-containing the new signing key.</p>
-<p>There were subtle changes in the behaviour of some 2.1 images due to that (more details below)
-Detailed <a class="reference external" href="https://github.com/apache/airflow/issues/20911">issue here</a></p>
-</li>
-</ul>
-<dl class="field-list simple">
-<dt class="field-odd">note</dt>
-<dd class="field-odd"><p>that the changes below were valid before image refreshing on 18 Feb 2022.
-Since all the images were refreshed on 18 Feb with the same <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code>
-as 2.1.4, the changes 2.1.1 -> 2.1.3 are
-effectively applied to all the images in 2.1.* line.
-The images refreshed have also those fixes added:</p>
-</dd>
-</dl>
-<ul class="simple">
-<li><p>All 2.1.* image versions refreshed on 18 Feb 2022 have those fixes applied:
-* Fix building the image on Azure with <code class="docutils literal notranslate"><span class="pre">text</span> <span class="pre">file</span> <span class="pre">busy</span></code> error
-* Workaround the problem with <code class="docutils literal notranslate"><span class="pre">libstdcpp</span></code> TLS error
-* Remove AIRFLOW_GID (5000) from Airflow images (potentially breaking change for users using it)
-* Added warnings for Quick-start docker compose
-* Add Oauth libraries to PROD images</p></li>
-</ul>
-<p>Original image Changelog (before the refresh on 18 Feb 2022):</p>
-<ul class="simple">
-<li><dl class="simple">
-<dt>2.1.4</dt><dd><ul>
-<li><p>Workaround the problem with <code class="docutils literal notranslate"><span class="pre">libstdcpp</span></code> TLS error</p></li>
-<li><p>fixed detection of port number in connection URL</p></li>
-<li><p>Improve warnings for quick-start-docker compose</p></li>
-<li><p>Fix warm shutdown for celery worker (signal propagation)</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.3</dt><dd><ul>
-<li><p>fixed auto-creation of user to use non-deprecated <code class="docutils literal notranslate"><span class="pre">create</span> <span class="pre">user</span></code> rather than <code class="docutils literal notranslate"><span class="pre">user_create</span></code></p></li>
-<li><p>remove waiting for celery backend for <code class="docutils literal notranslate"><span class="pre">worker</span></code> and <code class="docutils literal notranslate"><span class="pre">flower</span></code> commands rather than <code class="docutils literal notranslate"><span class="pre">scheduler</span></code> and <code class="docutils literal notranslate"><span class="pre">celery</span></code> only</p></li>
-<li><p>remove deprecated <code class="docutils literal notranslate"><span class="pre">airflow</span> <span class="pre">upgradedb</span></code> command from Airflow 1.10 in case upgrade is requested</p></li>
-<li><p>Add Python 3.9 support</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.2</dt><dd><ul>
-<li><p>No changes</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.1</dt><dd><ul>
-<li><p>Fix failure of lack of default commands (failed when no commands were passed)</p></li>
-<li><p>Added <code class="docutils literal notranslate"><span class="pre">_PIP_ADDITIONAL_REQUIREMENTS</span></code> development feature</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.0</dt><dd><ul>
-<li><p>Unset default <code class="docutils literal notranslate"><span class="pre">PIP_USER</span></code> variable - which caused PythonVirtualEnv to fail</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-0">
-<h2>Airflow 2.0<a class="headerlink" href="#airflow-2-0" title="Permalink to this heading">ΒΆ</a></h2>
-<ul>
-<li><p>MySQL changed the keys to sign their packages on 17 Feb 2022. This caused all released images
-to fail when being extended. As result, on 18 Feb 2021 we re-released all
-the <code class="docutils literal notranslate"><span class="pre">2.2</span></code> and <code class="docutils literal notranslate"><span class="pre">2.1</span></code> images with latest versions of <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code>
-containing the new signing key.</p>
-<p>There were no changes in the behaviour of 2.0.2 image due to that
-Detailed <a class="reference external" href="https://github.com/apache/airflow/issues/20911">issue here</a> .
-Only 2.0.2 image was regenerated, as 2.0.1 and 2.0.0 versions are hardly used and it is unlikely someone
-would like to extend those images. Extending 2.0.1 and 2.0.0 images will lead to failures of βmissing keyβ.</p>
-</li>
-<li><dl class="simple">
-<dt>2.0.2</dt><dd><ul class="simple">
-<li><p>Set correct PYTHONPATH for <code class="docutils literal notranslate"><span class="pre">root</span></code> user. Allows to run the image as root</p></li>
-<li><p>Warn if the deprecated 5000 group ID was used for airflow user when running the image
-(should be 0 for the OpenShift compatibility). Fails if the group 5000 was used with any other user
-(it would not work anyway but with cryptic errors)</p></li>
-<li><p>Set umask as 002 by default, so that you can actually change the user id used to run the image
-(required for OpenShift compatibility)</p></li>
-<li><p>Skip checking the DB and celery backend if CONNECTION_CHECK_MAX_COUNT is equal to 0</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.0.1</dt><dd><ul class="simple">
-<li><p>Avoid reverse IP lookup when checking DB availability. This helped to solve long delays on misconfigured
-docker engines</p></li>
-<li><p>Add auto-detection of redis and amqp broker ports</p></li>
-<li><p>Fixed detection of all user/password combinations in URLs - helps in auto-detecting ports and testing
-connectivity</p></li>
-<li><p>Add possibility to create Admin user automatically when entering the image</p></li>
-<li><p>Automatically create system user when different user than <code class="docutils literal notranslate"><span class="pre">airflow</span></code> is used. Needed for OpenShift
-compatibility</p></li>
-<li><p>Allows to exec to <code class="docutils literal notranslate"><span class="pre">bash</span></code> or <code class="docutils literal notranslate"><span class="pre">python</span></code> if specified as parameters</p></li>
-<li><p>Remove <code class="docutils literal notranslate"><span class="pre">airflow</span></code> command if it is specified as first parameter of the <code class="docutils literal notranslate"><span class="pre">run</span></code> command</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.0.0</dt><dd><ul class="simple">
-<li><p>Initial release of the image based on Debian Buster</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-</ul>
+ <div class="section" id="module-airflow.example_dags.example_branch_day_of_week_operator">
+<span id="airflow-example-dags-example-branch-day-of-week-operator"></span><h1><a class="reference internal" href="#module-airflow.example_dags.example_branch_day_of_week_operator" title="airflow.example_dags.example_branch_day_of_week_operator"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_day_of_week_operator</span></code></a><a class="headerlink" href="#module-airflow.example_dags.example_branch_day_of_week_operator" ti [...]
+<p>Example DAG demonstrating the usage of BranchDayOfWeekOperator.</p>
+<div class="section" id="module-contents">
+<h2>Module Contents<a class="headerlink" href="#module-contents" title="Permalink to this heading">ΒΆ</a></h2>
+<dl class="py data">
+<dt class="sig sig-object py" id="airflow.example_dags.example_branch_day_of_week_operator.empty_task_1">
+<span class="sig-prename descclassname"><span class="pre">airflow.example_dags.example_branch_day_of_week_operator.</span></span><span class="sig-name descname"><span class="pre">empty_task_1</span></span><a class="reference internal" href="../../../../_modules/airflow/example_dags/example_branch_day_of_week_operator.html#empty_task_1"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow.example_dags.example_branch_day_of_week_opera [...]
+<dd></dd></dl>
+
</div>
</div>
<div class="pager" role="navigation" aria-label="related navigation">
- <a rel="prev" title="Entrypoint" href="entrypoint.html" >
+ <a rel="prev" title="airflow.example_dags.example_branch_datetime_operator" href="../example_branch_datetime_operator/index.html" >
<button class="btn-hollow btn-blue bodytext__medium--cerulean-blue" accesskey="p">Previous</button>
</a>
- <a rel="next" title="Recipes" href="recipes.html" >
+ <a rel="next" title="airflow.example_dags.example_branch_labels" href="../example_branch_labels/index.html" >
<button class="btn-hollow btn-blue bodytext__medium--cerulean-blue" accesskey="n">Next</button>
</a>
</div>
@@ -894,13 +856,12 @@ compatibility</p></li>
<nav class="wy-nav-side-toc">
<div class="wy-menu-vertical">
<ul>
-<li><a class="reference internal" href="#">Dockerfile Changelog</a><ul>
-<li><a class="reference internal" href="#changes-after-publishing-the-images">Changes after publishing the images</a></li>
-<li><a class="reference internal" href="#airflow-2-4">Airflow 2.4</a></li>
-<li><a class="reference internal" href="#airflow-2-3">Airflow 2.3</a></li>
-<li><a class="reference internal" href="#airflow-2-2">Airflow 2.2</a></li>
-<li><a class="reference internal" href="#airflow-2-1">Airflow 2.1</a></li>
-<li><a class="reference internal" href="#airflow-2-0">Airflow 2.0</a></li>
+<li><a class="reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_day_of_week_operator</span></code></a><ul>
+<li><a class="reference internal" href="#module-contents">Module Contents</a><ul>
+<li><a class="reference internal" href="#airflow.example_dags.example_branch_day_of_week_operator.empty_task_1"><code class="docutils literal notranslate"><span class="pre">empty_task_1</span></code></a></li>
+<li><a class="reference internal" href="#airflow.example_dags.example_branch_day_of_week_operator.empty_task_1">empty_task_1</a></li>
+</ul>
+</li>
</ul>
</li>
</ul>
@@ -925,7 +886,7 @@ compatibility</p></li>
<div class="base-layout--button">
- <a href="https://github.com/apache/airflow/edit/main/docs/docker-stack/changelog.rst" rel="nofollow">
+ <a href="https://github.com/apache/airflow/edit/main/docs/apache-airflow/_api/airflow/example_dags/example_branch_day_of_week_operator/index.rst" rel="nofollow">
<button class="btn-hollow btn-brown btn-with-icon with-box-shadow button-fixed">
<svg xmlns="http://www.w3.org/2000/svg" width="30.76" height="30">
@@ -1059,18 +1020,20 @@ compatibility</p></li>
</span>
</div>
</footer>
- <script type="text/javascript" src="_static/_gen/js/docs.js"></script>
- <script type="text/javascript" id="documentation_options" data-url_root="./" src="_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../../../_static/_gen/js/docs.js"></script>
+ <script type="text/javascript" id="documentation_options" data-url_root="../../../../" src="../../../../_static/documentation_options.js"></script>
<script src="https://code.jquery.com/jquery-3.4.1.min.js" integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo=" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.3/umd/popper.min.js" integrity="sha384-ZMP7rVo3mIykV+2+9J3UJ46jBk0WLaUAdn689aCwoqbBJiSnjAK/l8WvCWPIPm49" crossorigin="anonymous"></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/js/bootstrap.min.js" integrity="sha384-ChfqqxuZUCnJSK3+MXmPNIyE6ZbWh2IMqE241rYiqJxyMiZ6OW/JmZQ5stwEULTy" crossorigin="anonymous"></script>
- <script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script>
- <script src="_static/jquery.js"></script>
- <script src="_static/underscore.js"></script>
- <script src="_static/_sphinx_javascript_frameworks_compat.js"></script>
- <script src="_static/doctools.js"></script>
- <script src="_static/clipboard.min.js"></script>
- <script src="_static/copybutton.js"></script>
- <script src="_static/js/globaltoc.js"></script>
+ <script data-url_root="../../../../" id="documentation_options" src="../../../../_static/documentation_options.js"></script>
+ <script src="../../../../_static/jquery.js"></script>
+ <script src="../../../../_static/underscore.js"></script>
+ <script src="../../../../_static/_sphinx_javascript_frameworks_compat.js"></script>
+ <script src="../../../../_static/doctools.js"></script>
+ <script src="../../../../_static/sphinx_highlight.js"></script>
+ <script src="../../../../_static/clipboard.min.js"></script>
+ <script src="../../../../_static/copybutton.js"></script>
+ <script src="../../../../_static/js/globaltoc.js"></script>
+ <script src="../../../../_static/gh-jira-links.js"></script>
</body>
</html>
\ No newline at end of file
diff --git a/docs-archive/docker-stack/changelog.html b/docs-archive/apache-airflow/2.4.2/_api/airflow/example_dags/example_branch_labels/index.html
similarity index 69%
copy from docs-archive/docker-stack/changelog.html
copy to docs-archive/apache-airflow/2.4.2/_api/airflow/example_dags/example_branch_labels/index.html
index 2fa2b8d179..b89d66f6e4 100644
--- a/docs-archive/docker-stack/changelog.html
+++ b/docs-archive/apache-airflow/2.4.2/_api/airflow/example_dags/example_branch_labels/index.html
@@ -9,17 +9,18 @@
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1">
- <title>Dockerfile Changelog — docker-stack Documentation</title>
- <link rel="stylesheet" href="_static/_gen/css/main.min.css" type="text/css" />
- <link rel="stylesheet" type="text/css" href="_static/pygments.css" />
- <link rel="stylesheet" type="text/css" href="_static/_gen/css/main.min.css" />
- <link rel="stylesheet" type="text/css" href="_static/copybutton.css" />
- <link rel="stylesheet" type="text/css" href="_static/_gen/css/main-custom.min.css" />
- <link rel="shortcut icon" href="_static/pin_32.png"/>
- <link rel="index" title="Index" href="genindex.html" />
- <link rel="search" title="Search" href="search.html" />
- <link rel="next" title="Recipes" href="recipes.html" />
- <link rel="prev" title="Entrypoint" href="entrypoint.html" />
+ <title>airflow.example_dags.example_branch_labels — Airflow Documentation</title>
+ <link rel="stylesheet" href="../../../../_static/_gen/css/main.min.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../../../_static/pygments.css" />
+ <link rel="stylesheet" type="text/css" href="../../../../_static/_gen/css/main.min.css" />
+ <link rel="stylesheet" type="text/css" href="../../../../_static/copybutton.css" />
+ <link rel="stylesheet" type="text/css" href="../../../../_static/_gen/css/main-custom.min.css" />
+ <link rel="stylesheet" type="text/css" href="../../../../_static/graphviz.css" />
+ <link rel="shortcut icon" href="../../../../_static/pin_32.png"/>
+ <link rel="index" title="Index" href="../../../../genindex.html" />
+ <link rel="search" title="Search" href="../../../../search.html" />
+ <link rel="next" title="airflow.example_dags.example_branch_operator" href="../example_branch_operator/index.html" />
+ <link rel="prev" title="airflow.example_dags.example_branch_day_of_week_operator" href="../example_branch_day_of_week_operator/index.html" />
<!-- Matomo -->
<script>
var _paq = window._paq = window._paq || [];
@@ -280,8 +281,21 @@
<div class="content-drawer">
<div class="td-sidebar">
+<div id="docs-version-selector" class="docs-version-selector sidebar__version-selector">
+ <a class="dropdown-toggle" href="#" id="versionDropdown" role="button" data-toggle="dropdown" aria-haspopup="true"
+ aria-expanded="false">
+ <span class="bodytext__medium--greyish-brown">Version: </span><span class="version">2.4.2</span>
+ </a>
+ <div class="dropdown-menu" aria-labelledby="navbarDropdownMenuLink">
+
+ </div>
+ <script type="application/x-template" id="version-item-template">
+ <a class="dropdown-item"></a>
+ </script>
+</div>
+
<div class="searchb-box">
- <form class="search-form" action="search.html" method="get">
+ <form class="search-form" action="../../../../search.html" method="get">
<input class="search-form__input" type="text" name="q" placeholder="Search docs" size="16">
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
@@ -311,24 +325,113 @@
<div class="toctree" role="navigation" aria-label="main navigation">
- <ul class="current">
-<li class="toctree-l1"><a class="reference internal" href="index.html">Home</a></li>
-<li class="toctree-l1"><a class="reference internal" href="build.html">Building the image</a></li>
-<li class="toctree-l1"><a class="reference internal" href="entrypoint.html">Entrypoint</a></li>
-<li class="toctree-l1 current"><a class="current reference internal" href="#">Dockerfile Changelog</a><ul>
-<li class="toctree-l2"><a class="reference internal" href="#changes-after-publishing-the-images">Changes after publishing the images</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-4">Airflow 2.4</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-3">Airflow 2.3</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-2">Airflow 2.2</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-1">Airflow 2.1</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-0">Airflow 2.0</a></li>
+ <p class="caption" role="heading"><span class="caption-text">Content</span></p>
+<ul>
+<li class="toctree-l1"><a class="reference internal" href="../../../../index.html">Overview</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../project.html">Project</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../license.html">License</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../start.html">Quick Start</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../installation/index.html">Installation</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../upgrading-from-1-10/index.html">Upgrading from 1.10 to 2</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../tutorial/index.html">Tutorials</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../howto/index.html">How-to Guides</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../ui.html">UI / Screenshots</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../concepts/index.html">Concepts</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../executor/index.html">Executor</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../dag-run.html">DAG Runs</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../plugins.html">Plugins</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../security/index.html">Security</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../logging-monitoring/index.html">Logging & Monitoring</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../timezone.html">Time Zones</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../usage-cli.html">Using the CLI</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../integration.html">Integration</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../kubernetes.html">Kubernetes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../lineage.html">Lineage</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../listeners.html">Listeners</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../dag-serialization.html">DAG Serialization</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../modules_management.html">Modules Management</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release-process.html">Release Policies</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release_notes.html">Release Notes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../best-practices.html">Best Practices</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../production-deployment.html">Production Deployment</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../faq.html">FAQ</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../privacy_notice.html">Privacy Notice</a></li>
+</ul>
+<p class="caption" role="heading"><span class="caption-text">References</span></p>
+<ul class="current">
+<li class="toctree-l1"><a class="reference internal" href="../../../../operators-and-hooks-ref.html">Operators and hooks</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../cli-and-env-variables-ref.html">CLI</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../templates-ref.html">Templates</a></li>
+<li class="toctree-l1 current"><a class="reference internal" href="../../../../python-api-ref.html">Python API</a><ul class="current">
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#dags">DAGs</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#operators">Operators</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#hooks">Hooks</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#executors">Executors</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#models">Models</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#exceptions">Exceptions</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#secrets-backends">Secrets Backends</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#timetables">Timetables</a></li>
+<li class="toctree-l2 current"><a class="reference internal" href="../../../../python-api-ref.html#example-dags">Example DAGs</a><ul class="current">
+<li class="toctree-l3 current"><a class="reference internal" href="../index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags</span></code></a><ul class="current">
+<li class="toctree-l4"><a class="reference internal" href="../index.html#subpackages">Subpackages</a></li>
+<li class="toctree-l4 current"><a class="reference internal" href="../index.html#submodules">Submodules</a><ul class="current">
+<li class="toctree-l5"><a class="reference internal" href="../example_bash_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_bash_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_datetime_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_datetime_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_day_of_week_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_day_of_week_operator</span></code></a></li>
+<li class="toctree-l5 current"><a class="current reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_labels</span></code></a><ul>
+<li class="toctree-l6"><a class="reference internal" href="#module-contents">Module Contents</a><ul>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_branch_labels.ingest"><code class="docutils literal notranslate"><span class="pre">ingest</span></code></a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_branch_labels.ingest">ingest</a></li>
</ul>
</li>
-<li class="toctree-l1"><a class="reference internal" href="recipes.html">Recipes</a></li>
</ul>
-<p class="caption" role="heading"><span class="caption-text">References</span></p>
+</li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_operator_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_operator_decorator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_python_dop_operator_3/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_python_dop_operator_3</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_complex/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_complex</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_datasets/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_datasets</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_external_task_marker_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_external_task_marker_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_kubernetes_executor/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_kubernetes_executor</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_latest_only/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_latest_only</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_latest_only_with_trigger/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_latest_only_with_trigger</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_local_kubernetes_executor/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_local_kubernetes_executor</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_nested_branch_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_nested_branch_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_passing_params_via_test_command/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_passing_params_via_test_command</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_python_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_python_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_short_circuit_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_short_circuit_decorator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_short_circuit_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_short_circuit_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_skip_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_skip_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_subdag_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_subdag_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_task_group/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_task_group</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_task_group_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_task_group_decorator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_time_delta_sensor_async/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_time_delta_sensor_async</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_trigger_controller_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_trigger_controller_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_trigger_target_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_trigger_target_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_xcom/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_xcom</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_xcomargs/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_xcomargs</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial_taskflow_api/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_taskflow_api</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial_taskflow_api_virtualenv/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_taskflow_api_virtualenv</span></code></a></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#utils">Utils</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../stable-rest-api-ref.html">Stable REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../deprecated-rest-api-ref.html">Deprecated REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../configurations-ref.html">Configurations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../extra-packages-ref.html">Extra packages</a></li>
+</ul>
+<p class="caption" role="heading"><span class="caption-text">Internal DB details</span></p>
<ul>
-<li class="toctree-l1"><a class="reference internal" href="build-arg-ref.html">Image build arguments reference</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../migrations-ref.html">Database Migrations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../database-erd-ref.html">Database ERD Schema</a></li>
</ul>
</div>
@@ -409,8 +512,21 @@
<div class="td-sidebar desktop-only d-print-none">
+<div id="docs-version-selector" class="docs-version-selector sidebar__version-selector">
+ <a class="dropdown-toggle" href="#" id="versionDropdown" role="button" data-toggle="dropdown" aria-haspopup="true"
+ aria-expanded="false">
+ <span class="bodytext__medium--greyish-brown">Version: </span><span class="version">2.4.2</span>
+ </a>
+ <div class="dropdown-menu" aria-labelledby="navbarDropdownMenuLink">
+
+ </div>
+ <script type="application/x-template" id="version-item-template">
+ <a class="dropdown-item"></a>
+ </script>
+</div>
+
<div class="searchb-box">
- <form class="search-form" action="search.html" method="get">
+ <form class="search-form" action="../../../../search.html" method="get">
<input class="search-form__input" type="text" name="q" placeholder="Search docs" size="16">
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
@@ -440,24 +556,113 @@
<div class="toctree" role="navigation" aria-label="main navigation">
- <ul class="current">
-<li class="toctree-l1"><a class="reference internal" href="index.html">Home</a></li>
-<li class="toctree-l1"><a class="reference internal" href="build.html">Building the image</a></li>
-<li class="toctree-l1"><a class="reference internal" href="entrypoint.html">Entrypoint</a></li>
-<li class="toctree-l1 current"><a class="current reference internal" href="#">Dockerfile Changelog</a><ul>
-<li class="toctree-l2"><a class="reference internal" href="#changes-after-publishing-the-images">Changes after publishing the images</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-4">Airflow 2.4</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-3">Airflow 2.3</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-2">Airflow 2.2</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-1">Airflow 2.1</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-0">Airflow 2.0</a></li>
+ <p class="caption" role="heading"><span class="caption-text">Content</span></p>
+<ul>
+<li class="toctree-l1"><a class="reference internal" href="../../../../index.html">Overview</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../project.html">Project</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../license.html">License</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../start.html">Quick Start</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../installation/index.html">Installation</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../upgrading-from-1-10/index.html">Upgrading from 1.10 to 2</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../tutorial/index.html">Tutorials</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../howto/index.html">How-to Guides</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../ui.html">UI / Screenshots</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../concepts/index.html">Concepts</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../executor/index.html">Executor</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../dag-run.html">DAG Runs</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../plugins.html">Plugins</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../security/index.html">Security</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../logging-monitoring/index.html">Logging & Monitoring</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../timezone.html">Time Zones</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../usage-cli.html">Using the CLI</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../integration.html">Integration</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../kubernetes.html">Kubernetes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../lineage.html">Lineage</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../listeners.html">Listeners</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../dag-serialization.html">DAG Serialization</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../modules_management.html">Modules Management</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release-process.html">Release Policies</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release_notes.html">Release Notes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../best-practices.html">Best Practices</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../production-deployment.html">Production Deployment</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../faq.html">FAQ</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../privacy_notice.html">Privacy Notice</a></li>
+</ul>
+<p class="caption" role="heading"><span class="caption-text">References</span></p>
+<ul class="current">
+<li class="toctree-l1"><a class="reference internal" href="../../../../operators-and-hooks-ref.html">Operators and hooks</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../cli-and-env-variables-ref.html">CLI</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../templates-ref.html">Templates</a></li>
+<li class="toctree-l1 current"><a class="reference internal" href="../../../../python-api-ref.html">Python API</a><ul class="current">
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#dags">DAGs</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#operators">Operators</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#hooks">Hooks</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#executors">Executors</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#models">Models</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#exceptions">Exceptions</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#secrets-backends">Secrets Backends</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#timetables">Timetables</a></li>
+<li class="toctree-l2 current"><a class="reference internal" href="../../../../python-api-ref.html#example-dags">Example DAGs</a><ul class="current">
+<li class="toctree-l3 current"><a class="reference internal" href="../index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags</span></code></a><ul class="current">
+<li class="toctree-l4"><a class="reference internal" href="../index.html#subpackages">Subpackages</a></li>
+<li class="toctree-l4 current"><a class="reference internal" href="../index.html#submodules">Submodules</a><ul class="current">
+<li class="toctree-l5"><a class="reference internal" href="../example_bash_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_bash_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_datetime_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_datetime_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_day_of_week_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_day_of_week_operator</span></code></a></li>
+<li class="toctree-l5 current"><a class="current reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_labels</span></code></a><ul>
+<li class="toctree-l6"><a class="reference internal" href="#module-contents">Module Contents</a><ul>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_branch_labels.ingest"><code class="docutils literal notranslate"><span class="pre">ingest</span></code></a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_branch_labels.ingest">ingest</a></li>
</ul>
</li>
-<li class="toctree-l1"><a class="reference internal" href="recipes.html">Recipes</a></li>
</ul>
-<p class="caption" role="heading"><span class="caption-text">References</span></p>
+</li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_operator_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_operator_decorator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_python_dop_operator_3/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_python_dop_operator_3</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_complex/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_complex</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_datasets/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_datasets</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_external_task_marker_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_external_task_marker_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_kubernetes_executor/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_kubernetes_executor</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_latest_only/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_latest_only</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_latest_only_with_trigger/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_latest_only_with_trigger</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_local_kubernetes_executor/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_local_kubernetes_executor</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_nested_branch_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_nested_branch_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_passing_params_via_test_command/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_passing_params_via_test_command</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_python_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_python_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_short_circuit_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_short_circuit_decorator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_short_circuit_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_short_circuit_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_skip_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_skip_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_subdag_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_subdag_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_task_group/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_task_group</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_task_group_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_task_group_decorator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_time_delta_sensor_async/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_time_delta_sensor_async</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_trigger_controller_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_trigger_controller_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_trigger_target_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_trigger_target_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_xcom/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_xcom</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_xcomargs/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_xcomargs</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial_taskflow_api/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_taskflow_api</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial_taskflow_api_virtualenv/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_taskflow_api_virtualenv</span></code></a></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#utils">Utils</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../stable-rest-api-ref.html">Stable REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../deprecated-rest-api-ref.html">Deprecated REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../configurations-ref.html">Configurations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../extra-packages-ref.html">Extra packages</a></li>
+</ul>
+<p class="caption" role="heading"><span class="caption-text">Internal DB details</span></p>
<ul>
-<li class="toctree-l1"><a class="reference internal" href="build-arg-ref.html">Image build arguments reference</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../migrations-ref.html">Database Migrations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../database-erd-ref.html">Database ERD Schema</a></li>
</ul>
</div>
@@ -546,9 +751,13 @@
<ul class="breadcrumb">
- <li class="breadcrumb-item"><a href="index.html" class="icon icon-home"> Home</a></li>
+ <li class="breadcrumb-item"><a href="../../../../index.html" class="icon icon-home"> Home</a></li>
+
+ <li class="breadcrumb-item"><a href="../../../../python-api-ref.html">Python API Reference</a></li>
+
+ <li class="breadcrumb-item"><a href="../index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags</span></code></a></li>
- <li class="breadcrumb-item"><a href="changelog.html"> Dockerfile Changelog</a></li>
+ <li class="breadcrumb-item"><a href="index.html"> <code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_labels</span></code></a></li>
</ul>
</div>
@@ -559,272 +768,25 @@
<div class="bodywrapper">
<div class="body" role="main">
- <blockquote>
-<div></div></blockquote>
-<div class="section" id="dockerfile-changelog">
-<h1>Dockerfile Changelog<a class="headerlink" href="#dockerfile-changelog" title="Permalink to this heading">ΒΆ</a></h1>
-<p>The <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> does not strictly follow the <a class="reference external" href="https://semver.org/">SemVer</a> approach of
-Apache Airflow when it comes to features and backwards compatibility. While Airflow code strictly
-follows it, the <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> is really a way to give users a conveniently packaged Airflow
-using standard container approach, so occasionally there are some changes in the building process
-or in the entrypoint of the image that require slight adaptation of how it is used or built.</p>
-<p>The Changelog below describes the changes introduced in each version of the docker images released by
-the Airflow team.</p>
-<dl class="field-list simple">
-<dt class="field-odd">note</dt>
-<dd class="field-odd"><p>The Changelog below concerns only the convenience production images released at
-<a class="reference external" href="https://hub.docker.com/r/apache/airflow">Airflow DockerHub</a> . The images that are released
-there, are usually built using the <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> released together with Airflow. However You are
-free to take latest released <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> from Airflow and use it to build an image for
-any Airflow version from the <code class="docutils literal notranslate"><span class="pre">Airflow</span> <span class="pre">2</span></code> line. There is no guarantee that it works, but if it does,
-then you can use latest features from that image to build the previous Airflow versions.</p>
-</dd>
-</dl>
-<div class="section" id="changes-after-publishing-the-images">
-<h2>Changes after publishing the images<a class="headerlink" href="#changes-after-publishing-the-images" title="Permalink to this heading">ΒΆ</a></h2>
-<p>Occasionally our images need to be regenerated using newer <code class="docutils literal notranslate"><span class="pre">Dockerfiles</span></code> or constraints.
-This happens when an issue is found or a breaking change is released by our dependencies
-that invalidates the already released image, and regenerating the image makes it usable again.
-While we cannot assure 100% backwards compatibility when it happens, we at least document it
-here so that users affected can find the reason for the changes.</p>
-<table class="docutils align-default">
-<colgroup>
-<col style="width: 10%" />
-<col style="width: 14%" />
-<col style="width: 28%" />
-<col style="width: 16%" />
-<col style="width: 32%" />
-</colgroup>
-<thead>
-<tr class="row-odd"><th class="head"><p>Date</p></th>
-<th class="head"><p>Affected images</p></th>
-<th class="head"><p>Potentially breaking change</p></th>
-<th class="head"><p>Reason</p></th>
-<th class="head"><p>Link to Pull Request</p></th>
-</tr>
-</thead>
-<tbody>
-<tr class="row-even"><td><p>17 June 2022</p></td>
-<td><p>2.2.5</p>
-<p>2.3.0-2.3.2</p>
-</td>
-<td><ul class="simple">
-<li><p>The <code class="docutils literal notranslate"><span class="pre">Authlib</span></code> library downgraded
-from 1.0.1 to 0.15.5 version</p></li>
-</ul>
-</td>
-<td><p>Flask App Builder
-not compatible with
-Authlib >= 1.0.0</p></td>
-<td><p><a class="reference external" href="https://github.com/apache/airflow/pull/24516">https://github.com/apache/airflow/pull/24516</a></p></td>
-</tr>
-<tr class="row-odd"><td><p>18 Jan 2022</p></td>
-<td><p>All 2.2.*, 2.1.*</p></td>
-<td><ul class="simple">
-<li><p>The AIRFLOW_GID 500 was removed</p></li>
-<li><p>MySQL <code class="docutils literal notranslate"><span class="pre">apt</span></code> repository key changed.</p></li>
-</ul>
-</td>
-<td><p>MySQL changed keys
-to sign their packages
-on 17 Jan 2022</p></td>
-<td><p><a class="reference external" href="https://github.com/apache/airflow/pull/20912">https://github.com/apache/airflow/pull/20912</a></p></td>
-</tr>
-</tbody>
-</table>
-</div>
-<div class="section" id="airflow-2-4">
-<h2>Airflow 2.4<a class="headerlink" href="#airflow-2-4" title="Permalink to this heading">ΒΆ</a></h2>
-<ul class="simple">
-<li><p>2.4.0</p>
-<ul>
-<li><p>You can specify additional <code class="docutils literal notranslate"><span class="pre">pip</span> <span class="pre">install</span></code> flags when you build the image via <code class="docutils literal notranslate"><span class="pre">ADDITIONAL_PIP_INSTALL_FLAGS</span></code>
-build arg.</p></li>
-<li><p>Support for <code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Buster</span></code> was dropped, including the possibility of building customized images as
-<code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Buster</span></code> reached end of life.</p></li>
-</ul>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-3">
-<h2>Airflow 2.3<a class="headerlink" href="#airflow-2-3" title="Permalink to this heading">ΒΆ</a></h2>
-<ul class="simple">
-<li><p>2.3.0</p>
-<ul>
-<li><p>Airflow 2.3 <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> is now better optimized for caching and βstandaloneβ which means that you
-can copy <strong>just</strong> the <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> to any folder and start building custom images. This
-however requires <a class="reference external" href="https://docs.docker.com/develop/develop-images/build_enhancements/">Buildkit</a>
-to build the image because we started using features that are only available in <code class="docutils literal notranslate"><span class="pre">Buildkit</span></code>.
-This can be done by setting <code class="docutils literal notranslate"><span class="pre">DOCKER_BUILDKIT=1</span></code> as an environment variable
-or by installing <a class="reference external" href="https://docs.docker.com/buildx/working-with-buildx/">the buildx plugin</a>
-and running <code class="docutils literal notranslate"><span class="pre">docker</span> <span class="pre">buildx</span> <span class="pre">build</span></code> command.</p></li>
-<li><p>Add Python 3.10 support</p></li>
-<li><p>Switch to <code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Bullseye</span></code> based images. <code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Buster</span></code> is deprecated and only available for
-customized image building.</p></li>
-<li><p>Add Multi-Platform support (AMD64/ARM64) in order to accommodate MacOS M1 users</p></li>
-<li><p>Build parameters which control if packages and Airflow should be installed from context file were
-unified</p></li>
-<li><p>The <code class="docutils literal notranslate"><span class="pre">INSTALL_FROM_PYPI</span></code> arg was removed - it is automatically detected now.</p></li>
-<li><p>The <code class="docutils literal notranslate"><span class="pre">INSTALL_FROM_DOCKER_CONTEXT_FILES</span></code> arg changed to <code class="docutils literal notranslate"><span class="pre">INSTALL_PACKAGES_FROM_CONTEXT</span></code></p></li>
-</ul>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-2">
-<h2>Airflow 2.2<a class="headerlink" href="#airflow-2-2" title="Permalink to this heading">ΒΆ</a></h2>
-<ul class="simple">
-<li><p>2.2.4
-* Add support for both <code class="docutils literal notranslate"><span class="pre">.piprc</span></code> and <code class="docutils literal notranslate"><span class="pre">pip.conf</span></code> customizations
-* Add ArtifactHub labels for better discovery of the images
-* Update default Python image to be 3.7
-* Build images with <code class="docutils literal notranslate"><span class="pre">Buildkit</span></code> (optional)
-* Fix building the image on Azure with <code class="docutils literal notranslate"><span class="pre">text</span> <span class="pre">file</span> <span class="pre">busy</span></code> error</p></li>
-<li><p>2.2.3
-* No changes</p></li>
-<li><p>2.2.2
-* No changes</p></li>
-<li><p>2.2.1
-* Workaround the problem with <code class="docutils literal notranslate"><span class="pre">libstdcpp</span></code> TLS error</p></li>
-<li><p>2.2.0
-* Remove AIRFLOW_GID (5000) from Airflow images (potentially breaking change for users using it)
-* Added warnings for Quick-start docker compose
-* Fix warm shutdown for celery worker (signal propagation)
-* Add Oauth libraries to PROD images
-* Add Python 3.9 support</p></li>
-</ul>
-</div>
-<div class="section" id="airflow-2-1">
-<h2>Airflow 2.1<a class="headerlink" href="#airflow-2-1" title="Permalink to this heading">ΒΆ</a></h2>
-<ul>
-<li><p>MySQL changed the keys to sign their packages on 17 Feb 2022. This caused all released images
-to fail when being extended. As result, on 18 Feb 2021 we re-released all
-the <code class="docutils literal notranslate"><span class="pre">2.2</span></code> and <code class="docutils literal notranslate"><span class="pre">2.1</span></code> images with latest versions of <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code>
-containing the new signing key.</p>
-<p>There were subtle changes in the behaviour of some 2.1 images due to that (more details below)
-Detailed <a class="reference external" href="https://github.com/apache/airflow/issues/20911">issue here</a></p>
-</li>
-</ul>
-<dl class="field-list simple">
-<dt class="field-odd">note</dt>
-<dd class="field-odd"><p>that the changes below were valid before image refreshing on 18 Feb 2022.
-Since all the images were refreshed on 18 Feb with the same <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code>
-as 2.1.4, the changes 2.1.1 -> 2.1.3 are
-effectively applied to all the images in 2.1.* line.
-The images refreshed have also those fixes added:</p>
-</dd>
-</dl>
-<ul class="simple">
-<li><p>All 2.1.* image versions refreshed on 18 Feb 2022 have those fixes applied:
-* Fix building the image on Azure with <code class="docutils literal notranslate"><span class="pre">text</span> <span class="pre">file</span> <span class="pre">busy</span></code> error
-* Workaround the problem with <code class="docutils literal notranslate"><span class="pre">libstdcpp</span></code> TLS error
-* Remove AIRFLOW_GID (5000) from Airflow images (potentially breaking change for users using it)
-* Added warnings for Quick-start docker compose
-* Add Oauth libraries to PROD images</p></li>
-</ul>
-<p>Original image Changelog (before the refresh on 18 Feb 2022):</p>
-<ul class="simple">
-<li><dl class="simple">
-<dt>2.1.4</dt><dd><ul>
-<li><p>Workaround the problem with <code class="docutils literal notranslate"><span class="pre">libstdcpp</span></code> TLS error</p></li>
-<li><p>fixed detection of port number in connection URL</p></li>
-<li><p>Improve warnings for quick-start-docker compose</p></li>
-<li><p>Fix warm shutdown for celery worker (signal propagation)</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.3</dt><dd><ul>
-<li><p>fixed auto-creation of user to use non-deprecated <code class="docutils literal notranslate"><span class="pre">create</span> <span class="pre">user</span></code> rather than <code class="docutils literal notranslate"><span class="pre">user_create</span></code></p></li>
-<li><p>remove waiting for celery backend for <code class="docutils literal notranslate"><span class="pre">worker</span></code> and <code class="docutils literal notranslate"><span class="pre">flower</span></code> commands rather than <code class="docutils literal notranslate"><span class="pre">scheduler</span></code> and <code class="docutils literal notranslate"><span class="pre">celery</span></code> only</p></li>
-<li><p>remove deprecated <code class="docutils literal notranslate"><span class="pre">airflow</span> <span class="pre">upgradedb</span></code> command from Airflow 1.10 in case upgrade is requested</p></li>
-<li><p>Add Python 3.9 support</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.2</dt><dd><ul>
-<li><p>No changes</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.1</dt><dd><ul>
-<li><p>Fix failure of lack of default commands (failed when no commands were passed)</p></li>
-<li><p>Added <code class="docutils literal notranslate"><span class="pre">_PIP_ADDITIONAL_REQUIREMENTS</span></code> development feature</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.0</dt><dd><ul>
-<li><p>Unset default <code class="docutils literal notranslate"><span class="pre">PIP_USER</span></code> variable - which caused PythonVirtualEnv to fail</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-0">
-<h2>Airflow 2.0<a class="headerlink" href="#airflow-2-0" title="Permalink to this heading">ΒΆ</a></h2>
-<ul>
-<li><p>MySQL changed the keys to sign their packages on 17 Feb 2022. This caused all released images
-to fail when being extended. As result, on 18 Feb 2021 we re-released all
-the <code class="docutils literal notranslate"><span class="pre">2.2</span></code> and <code class="docutils literal notranslate"><span class="pre">2.1</span></code> images with latest versions of <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code>
-containing the new signing key.</p>
-<p>There were no changes in the behaviour of 2.0.2 image due to that
-Detailed <a class="reference external" href="https://github.com/apache/airflow/issues/20911">issue here</a> .
-Only 2.0.2 image was regenerated, as 2.0.1 and 2.0.0 versions are hardly used and it is unlikely someone
-would like to extend those images. Extending 2.0.1 and 2.0.0 images will lead to failures of βmissing keyβ.</p>
-</li>
-<li><dl class="simple">
-<dt>2.0.2</dt><dd><ul class="simple">
-<li><p>Set correct PYTHONPATH for <code class="docutils literal notranslate"><span class="pre">root</span></code> user. Allows to run the image as root</p></li>
-<li><p>Warn if the deprecated 5000 group ID was used for airflow user when running the image
-(should be 0 for the OpenShift compatibility). Fails if the group 5000 was used with any other user
-(it would not work anyway but with cryptic errors)</p></li>
-<li><p>Set umask as 002 by default, so that you can actually change the user id used to run the image
-(required for OpenShift compatibility)</p></li>
-<li><p>Skip checking the DB and celery backend if CONNECTION_CHECK_MAX_COUNT is equal to 0</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.0.1</dt><dd><ul class="simple">
-<li><p>Avoid reverse IP lookup when checking DB availability. This helped to solve long delays on misconfigured
-docker engines</p></li>
-<li><p>Add auto-detection of redis and amqp broker ports</p></li>
-<li><p>Fixed detection of all user/password combinations in URLs - helps in auto-detecting ports and testing
-connectivity</p></li>
-<li><p>Add possibility to create Admin user automatically when entering the image</p></li>
-<li><p>Automatically create system user when different user than <code class="docutils literal notranslate"><span class="pre">airflow</span></code> is used. Needed for OpenShift
-compatibility</p></li>
-<li><p>Allows to exec to <code class="docutils literal notranslate"><span class="pre">bash</span></code> or <code class="docutils literal notranslate"><span class="pre">python</span></code> if specified as parameters</p></li>
-<li><p>Remove <code class="docutils literal notranslate"><span class="pre">airflow</span></code> command if it is specified as first parameter of the <code class="docutils literal notranslate"><span class="pre">run</span></code> command</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.0.0</dt><dd><ul class="simple">
-<li><p>Initial release of the image based on Debian Buster</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-</ul>
+ <div class="section" id="module-airflow.example_dags.example_branch_labels">
+<span id="airflow-example-dags-example-branch-labels"></span><h1><a class="reference internal" href="#module-airflow.example_dags.example_branch_labels" title="airflow.example_dags.example_branch_labels"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_labels</span></code></a><a class="headerlink" href="#module-airflow.example_dags.example_branch_labels" title="Permalink to this heading">ΒΆ</a></h1>
+<p>Example DAG demonstrating the usage of labels with different branches.</p>
+<div class="section" id="module-contents">
+<h2>Module Contents<a class="headerlink" href="#module-contents" title="Permalink to this heading">ΒΆ</a></h2>
+<dl class="py data">
+<dt class="sig sig-object py" id="airflow.example_dags.example_branch_labels.ingest">
+<span class="sig-prename descclassname"><span class="pre">airflow.example_dags.example_branch_labels.</span></span><span class="sig-name descname"><span class="pre">ingest</span></span><a class="reference internal" href="../../../../_modules/airflow/example_dags/example_branch_labels.html#ingest"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow.example_dags.example_branch_labels.ingest" title="Permalink to this definition">ΒΆ</a></dt>
+<dd></dd></dl>
+
</div>
</div>
<div class="pager" role="navigation" aria-label="related navigation">
- <a rel="prev" title="Entrypoint" href="entrypoint.html" >
+ <a rel="prev" title="airflow.example_dags.example_branch_day_of_week_operator" href="../example_branch_day_of_week_operator/index.html" >
<button class="btn-hollow btn-blue bodytext__medium--cerulean-blue" accesskey="p">Previous</button>
</a>
- <a rel="next" title="Recipes" href="recipes.html" >
+ <a rel="next" title="airflow.example_dags.example_branch_operator" href="../example_branch_operator/index.html" >
<button class="btn-hollow btn-blue bodytext__medium--cerulean-blue" accesskey="n">Next</button>
</a>
</div>
@@ -894,13 +856,12 @@ compatibility</p></li>
<nav class="wy-nav-side-toc">
<div class="wy-menu-vertical">
<ul>
-<li><a class="reference internal" href="#">Dockerfile Changelog</a><ul>
-<li><a class="reference internal" href="#changes-after-publishing-the-images">Changes after publishing the images</a></li>
-<li><a class="reference internal" href="#airflow-2-4">Airflow 2.4</a></li>
-<li><a class="reference internal" href="#airflow-2-3">Airflow 2.3</a></li>
-<li><a class="reference internal" href="#airflow-2-2">Airflow 2.2</a></li>
-<li><a class="reference internal" href="#airflow-2-1">Airflow 2.1</a></li>
-<li><a class="reference internal" href="#airflow-2-0">Airflow 2.0</a></li>
+<li><a class="reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_labels</span></code></a><ul>
+<li><a class="reference internal" href="#module-contents">Module Contents</a><ul>
+<li><a class="reference internal" href="#airflow.example_dags.example_branch_labels.ingest"><code class="docutils literal notranslate"><span class="pre">ingest</span></code></a></li>
+<li><a class="reference internal" href="#airflow.example_dags.example_branch_labels.ingest">ingest</a></li>
+</ul>
+</li>
</ul>
</li>
</ul>
@@ -925,7 +886,7 @@ compatibility</p></li>
<div class="base-layout--button">
- <a href="https://github.com/apache/airflow/edit/main/docs/docker-stack/changelog.rst" rel="nofollow">
+ <a href="https://github.com/apache/airflow/edit/main/docs/apache-airflow/_api/airflow/example_dags/example_branch_labels/index.rst" rel="nofollow">
<button class="btn-hollow btn-brown btn-with-icon with-box-shadow button-fixed">
<svg xmlns="http://www.w3.org/2000/svg" width="30.76" height="30">
@@ -1059,18 +1020,20 @@ compatibility</p></li>
</span>
</div>
</footer>
- <script type="text/javascript" src="_static/_gen/js/docs.js"></script>
- <script type="text/javascript" id="documentation_options" data-url_root="./" src="_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../../../_static/_gen/js/docs.js"></script>
+ <script type="text/javascript" id="documentation_options" data-url_root="../../../../" src="../../../../_static/documentation_options.js"></script>
<script src="https://code.jquery.com/jquery-3.4.1.min.js" integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo=" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.3/umd/popper.min.js" integrity="sha384-ZMP7rVo3mIykV+2+9J3UJ46jBk0WLaUAdn689aCwoqbBJiSnjAK/l8WvCWPIPm49" crossorigin="anonymous"></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/js/bootstrap.min.js" integrity="sha384-ChfqqxuZUCnJSK3+MXmPNIyE6ZbWh2IMqE241rYiqJxyMiZ6OW/JmZQ5stwEULTy" crossorigin="anonymous"></script>
- <script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script>
- <script src="_static/jquery.js"></script>
- <script src="_static/underscore.js"></script>
- <script src="_static/_sphinx_javascript_frameworks_compat.js"></script>
- <script src="_static/doctools.js"></script>
- <script src="_static/clipboard.min.js"></script>
- <script src="_static/copybutton.js"></script>
- <script src="_static/js/globaltoc.js"></script>
+ <script data-url_root="../../../../" id="documentation_options" src="../../../../_static/documentation_options.js"></script>
+ <script src="../../../../_static/jquery.js"></script>
+ <script src="../../../../_static/underscore.js"></script>
+ <script src="../../../../_static/_sphinx_javascript_frameworks_compat.js"></script>
+ <script src="../../../../_static/doctools.js"></script>
+ <script src="../../../../_static/sphinx_highlight.js"></script>
+ <script src="../../../../_static/clipboard.min.js"></script>
+ <script src="../../../../_static/copybutton.js"></script>
+ <script src="../../../../_static/js/globaltoc.js"></script>
+ <script src="../../../../_static/gh-jira-links.js"></script>
</body>
</html>
\ No newline at end of file
diff --git a/docs-archive/docker-stack/changelog.html b/docs-archive/apache-airflow/2.4.2/_api/airflow/example_dags/example_branch_operator/index.html
similarity index 69%
copy from docs-archive/docker-stack/changelog.html
copy to docs-archive/apache-airflow/2.4.2/_api/airflow/example_dags/example_branch_operator/index.html
index 2fa2b8d179..937c2f864d 100644
--- a/docs-archive/docker-stack/changelog.html
+++ b/docs-archive/apache-airflow/2.4.2/_api/airflow/example_dags/example_branch_operator/index.html
@@ -9,17 +9,18 @@
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1">
- <title>Dockerfile Changelog — docker-stack Documentation</title>
- <link rel="stylesheet" href="_static/_gen/css/main.min.css" type="text/css" />
- <link rel="stylesheet" type="text/css" href="_static/pygments.css" />
- <link rel="stylesheet" type="text/css" href="_static/_gen/css/main.min.css" />
- <link rel="stylesheet" type="text/css" href="_static/copybutton.css" />
- <link rel="stylesheet" type="text/css" href="_static/_gen/css/main-custom.min.css" />
- <link rel="shortcut icon" href="_static/pin_32.png"/>
- <link rel="index" title="Index" href="genindex.html" />
- <link rel="search" title="Search" href="search.html" />
- <link rel="next" title="Recipes" href="recipes.html" />
- <link rel="prev" title="Entrypoint" href="entrypoint.html" />
+ <title>airflow.example_dags.example_branch_operator — Airflow Documentation</title>
+ <link rel="stylesheet" href="../../../../_static/_gen/css/main.min.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../../../_static/pygments.css" />
+ <link rel="stylesheet" type="text/css" href="../../../../_static/_gen/css/main.min.css" />
+ <link rel="stylesheet" type="text/css" href="../../../../_static/copybutton.css" />
+ <link rel="stylesheet" type="text/css" href="../../../../_static/_gen/css/main-custom.min.css" />
+ <link rel="stylesheet" type="text/css" href="../../../../_static/graphviz.css" />
+ <link rel="shortcut icon" href="../../../../_static/pin_32.png"/>
+ <link rel="index" title="Index" href="../../../../genindex.html" />
+ <link rel="search" title="Search" href="../../../../search.html" />
+ <link rel="next" title="airflow.example_dags.example_branch_operator_decorator" href="../example_branch_operator_decorator/index.html" />
+ <link rel="prev" title="airflow.example_dags.example_branch_labels" href="../example_branch_labels/index.html" />
<!-- Matomo -->
<script>
var _paq = window._paq = window._paq || [];
@@ -280,8 +281,21 @@
<div class="content-drawer">
<div class="td-sidebar">
+<div id="docs-version-selector" class="docs-version-selector sidebar__version-selector">
+ <a class="dropdown-toggle" href="#" id="versionDropdown" role="button" data-toggle="dropdown" aria-haspopup="true"
+ aria-expanded="false">
+ <span class="bodytext__medium--greyish-brown">Version: </span><span class="version">2.4.2</span>
+ </a>
+ <div class="dropdown-menu" aria-labelledby="navbarDropdownMenuLink">
+
+ </div>
+ <script type="application/x-template" id="version-item-template">
+ <a class="dropdown-item"></a>
+ </script>
+</div>
+
<div class="searchb-box">
- <form class="search-form" action="search.html" method="get">
+ <form class="search-form" action="../../../../search.html" method="get">
<input class="search-form__input" type="text" name="q" placeholder="Search docs" size="16">
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
@@ -311,24 +325,113 @@
<div class="toctree" role="navigation" aria-label="main navigation">
- <ul class="current">
-<li class="toctree-l1"><a class="reference internal" href="index.html">Home</a></li>
-<li class="toctree-l1"><a class="reference internal" href="build.html">Building the image</a></li>
-<li class="toctree-l1"><a class="reference internal" href="entrypoint.html">Entrypoint</a></li>
-<li class="toctree-l1 current"><a class="current reference internal" href="#">Dockerfile Changelog</a><ul>
-<li class="toctree-l2"><a class="reference internal" href="#changes-after-publishing-the-images">Changes after publishing the images</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-4">Airflow 2.4</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-3">Airflow 2.3</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-2">Airflow 2.2</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-1">Airflow 2.1</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-0">Airflow 2.0</a></li>
+ <p class="caption" role="heading"><span class="caption-text">Content</span></p>
+<ul>
+<li class="toctree-l1"><a class="reference internal" href="../../../../index.html">Overview</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../project.html">Project</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../license.html">License</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../start.html">Quick Start</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../installation/index.html">Installation</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../upgrading-from-1-10/index.html">Upgrading from 1.10 to 2</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../tutorial/index.html">Tutorials</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../howto/index.html">How-to Guides</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../ui.html">UI / Screenshots</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../concepts/index.html">Concepts</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../executor/index.html">Executor</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../dag-run.html">DAG Runs</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../plugins.html">Plugins</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../security/index.html">Security</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../logging-monitoring/index.html">Logging & Monitoring</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../timezone.html">Time Zones</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../usage-cli.html">Using the CLI</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../integration.html">Integration</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../kubernetes.html">Kubernetes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../lineage.html">Lineage</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../listeners.html">Listeners</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../dag-serialization.html">DAG Serialization</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../modules_management.html">Modules Management</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release-process.html">Release Policies</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release_notes.html">Release Notes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../best-practices.html">Best Practices</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../production-deployment.html">Production Deployment</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../faq.html">FAQ</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../privacy_notice.html">Privacy Notice</a></li>
+</ul>
+<p class="caption" role="heading"><span class="caption-text">References</span></p>
+<ul class="current">
+<li class="toctree-l1"><a class="reference internal" href="../../../../operators-and-hooks-ref.html">Operators and hooks</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../cli-and-env-variables-ref.html">CLI</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../templates-ref.html">Templates</a></li>
+<li class="toctree-l1 current"><a class="reference internal" href="../../../../python-api-ref.html">Python API</a><ul class="current">
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#dags">DAGs</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#operators">Operators</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#hooks">Hooks</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#executors">Executors</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#models">Models</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#exceptions">Exceptions</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#secrets-backends">Secrets Backends</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#timetables">Timetables</a></li>
+<li class="toctree-l2 current"><a class="reference internal" href="../../../../python-api-ref.html#example-dags">Example DAGs</a><ul class="current">
+<li class="toctree-l3 current"><a class="reference internal" href="../index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags</span></code></a><ul class="current">
+<li class="toctree-l4"><a class="reference internal" href="../index.html#subpackages">Subpackages</a></li>
+<li class="toctree-l4 current"><a class="reference internal" href="../index.html#submodules">Submodules</a><ul class="current">
+<li class="toctree-l5"><a class="reference internal" href="../example_bash_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_bash_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_datetime_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_datetime_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_day_of_week_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_day_of_week_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_labels/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_labels</span></code></a></li>
+<li class="toctree-l5 current"><a class="current reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_operator</span></code></a><ul>
+<li class="toctree-l6"><a class="reference internal" href="#module-contents">Module Contents</a><ul>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_branch_operator.run_this_first"><code class="docutils literal notranslate"><span class="pre">run_this_first</span></code></a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_branch_operator.run_this_first">run_this_first</a></li>
</ul>
</li>
-<li class="toctree-l1"><a class="reference internal" href="recipes.html">Recipes</a></li>
</ul>
-<p class="caption" role="heading"><span class="caption-text">References</span></p>
+</li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_operator_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_operator_decorator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_python_dop_operator_3/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_python_dop_operator_3</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_complex/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_complex</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_datasets/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_datasets</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_external_task_marker_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_external_task_marker_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_kubernetes_executor/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_kubernetes_executor</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_latest_only/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_latest_only</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_latest_only_with_trigger/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_latest_only_with_trigger</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_local_kubernetes_executor/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_local_kubernetes_executor</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_nested_branch_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_nested_branch_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_passing_params_via_test_command/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_passing_params_via_test_command</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_python_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_python_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_short_circuit_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_short_circuit_decorator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_short_circuit_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_short_circuit_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_skip_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_skip_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_subdag_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_subdag_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_task_group/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_task_group</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_task_group_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_task_group_decorator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_time_delta_sensor_async/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_time_delta_sensor_async</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_trigger_controller_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_trigger_controller_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_trigger_target_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_trigger_target_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_xcom/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_xcom</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_xcomargs/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_xcomargs</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial_taskflow_api/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_taskflow_api</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial_taskflow_api_virtualenv/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_taskflow_api_virtualenv</span></code></a></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#utils">Utils</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../stable-rest-api-ref.html">Stable REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../deprecated-rest-api-ref.html">Deprecated REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../configurations-ref.html">Configurations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../extra-packages-ref.html">Extra packages</a></li>
+</ul>
+<p class="caption" role="heading"><span class="caption-text">Internal DB details</span></p>
<ul>
-<li class="toctree-l1"><a class="reference internal" href="build-arg-ref.html">Image build arguments reference</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../migrations-ref.html">Database Migrations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../database-erd-ref.html">Database ERD Schema</a></li>
</ul>
</div>
@@ -409,8 +512,21 @@
<div class="td-sidebar desktop-only d-print-none">
+<div id="docs-version-selector" class="docs-version-selector sidebar__version-selector">
+ <a class="dropdown-toggle" href="#" id="versionDropdown" role="button" data-toggle="dropdown" aria-haspopup="true"
+ aria-expanded="false">
+ <span class="bodytext__medium--greyish-brown">Version: </span><span class="version">2.4.2</span>
+ </a>
+ <div class="dropdown-menu" aria-labelledby="navbarDropdownMenuLink">
+
+ </div>
+ <script type="application/x-template" id="version-item-template">
+ <a class="dropdown-item"></a>
+ </script>
+</div>
+
<div class="searchb-box">
- <form class="search-form" action="search.html" method="get">
+ <form class="search-form" action="../../../../search.html" method="get">
<input class="search-form__input" type="text" name="q" placeholder="Search docs" size="16">
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
@@ -440,24 +556,113 @@
<div class="toctree" role="navigation" aria-label="main navigation">
- <ul class="current">
-<li class="toctree-l1"><a class="reference internal" href="index.html">Home</a></li>
-<li class="toctree-l1"><a class="reference internal" href="build.html">Building the image</a></li>
-<li class="toctree-l1"><a class="reference internal" href="entrypoint.html">Entrypoint</a></li>
-<li class="toctree-l1 current"><a class="current reference internal" href="#">Dockerfile Changelog</a><ul>
-<li class="toctree-l2"><a class="reference internal" href="#changes-after-publishing-the-images">Changes after publishing the images</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-4">Airflow 2.4</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-3">Airflow 2.3</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-2">Airflow 2.2</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-1">Airflow 2.1</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-0">Airflow 2.0</a></li>
+ <p class="caption" role="heading"><span class="caption-text">Content</span></p>
+<ul>
+<li class="toctree-l1"><a class="reference internal" href="../../../../index.html">Overview</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../project.html">Project</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../license.html">License</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../start.html">Quick Start</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../installation/index.html">Installation</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../upgrading-from-1-10/index.html">Upgrading from 1.10 to 2</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../tutorial/index.html">Tutorials</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../howto/index.html">How-to Guides</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../ui.html">UI / Screenshots</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../concepts/index.html">Concepts</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../executor/index.html">Executor</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../dag-run.html">DAG Runs</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../plugins.html">Plugins</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../security/index.html">Security</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../logging-monitoring/index.html">Logging & Monitoring</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../timezone.html">Time Zones</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../usage-cli.html">Using the CLI</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../integration.html">Integration</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../kubernetes.html">Kubernetes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../lineage.html">Lineage</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../listeners.html">Listeners</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../dag-serialization.html">DAG Serialization</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../modules_management.html">Modules Management</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release-process.html">Release Policies</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release_notes.html">Release Notes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../best-practices.html">Best Practices</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../production-deployment.html">Production Deployment</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../faq.html">FAQ</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../privacy_notice.html">Privacy Notice</a></li>
+</ul>
+<p class="caption" role="heading"><span class="caption-text">References</span></p>
+<ul class="current">
+<li class="toctree-l1"><a class="reference internal" href="../../../../operators-and-hooks-ref.html">Operators and hooks</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../cli-and-env-variables-ref.html">CLI</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../templates-ref.html">Templates</a></li>
+<li class="toctree-l1 current"><a class="reference internal" href="../../../../python-api-ref.html">Python API</a><ul class="current">
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#dags">DAGs</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#operators">Operators</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#hooks">Hooks</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#executors">Executors</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#models">Models</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#exceptions">Exceptions</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#secrets-backends">Secrets Backends</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#timetables">Timetables</a></li>
+<li class="toctree-l2 current"><a class="reference internal" href="../../../../python-api-ref.html#example-dags">Example DAGs</a><ul class="current">
+<li class="toctree-l3 current"><a class="reference internal" href="../index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags</span></code></a><ul class="current">
+<li class="toctree-l4"><a class="reference internal" href="../index.html#subpackages">Subpackages</a></li>
+<li class="toctree-l4 current"><a class="reference internal" href="../index.html#submodules">Submodules</a><ul class="current">
+<li class="toctree-l5"><a class="reference internal" href="../example_bash_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_bash_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_datetime_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_datetime_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_day_of_week_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_day_of_week_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_labels/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_labels</span></code></a></li>
+<li class="toctree-l5 current"><a class="current reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_operator</span></code></a><ul>
+<li class="toctree-l6"><a class="reference internal" href="#module-contents">Module Contents</a><ul>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_branch_operator.run_this_first"><code class="docutils literal notranslate"><span class="pre">run_this_first</span></code></a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_branch_operator.run_this_first">run_this_first</a></li>
</ul>
</li>
-<li class="toctree-l1"><a class="reference internal" href="recipes.html">Recipes</a></li>
</ul>
-<p class="caption" role="heading"><span class="caption-text">References</span></p>
+</li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_operator_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_operator_decorator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_python_dop_operator_3/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_python_dop_operator_3</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_complex/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_complex</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_datasets/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_datasets</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_external_task_marker_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_external_task_marker_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_kubernetes_executor/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_kubernetes_executor</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_latest_only/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_latest_only</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_latest_only_with_trigger/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_latest_only_with_trigger</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_local_kubernetes_executor/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_local_kubernetes_executor</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_nested_branch_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_nested_branch_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_passing_params_via_test_command/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_passing_params_via_test_command</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_python_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_python_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_short_circuit_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_short_circuit_decorator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_short_circuit_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_short_circuit_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_skip_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_skip_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_subdag_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_subdag_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_task_group/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_task_group</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_task_group_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_task_group_decorator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_time_delta_sensor_async/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_time_delta_sensor_async</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_trigger_controller_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_trigger_controller_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_trigger_target_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_trigger_target_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_xcom/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_xcom</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_xcomargs/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_xcomargs</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial_taskflow_api/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_taskflow_api</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial_taskflow_api_virtualenv/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_taskflow_api_virtualenv</span></code></a></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#utils">Utils</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../stable-rest-api-ref.html">Stable REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../deprecated-rest-api-ref.html">Deprecated REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../configurations-ref.html">Configurations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../extra-packages-ref.html">Extra packages</a></li>
+</ul>
+<p class="caption" role="heading"><span class="caption-text">Internal DB details</span></p>
<ul>
-<li class="toctree-l1"><a class="reference internal" href="build-arg-ref.html">Image build arguments reference</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../migrations-ref.html">Database Migrations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../database-erd-ref.html">Database ERD Schema</a></li>
</ul>
</div>
@@ -546,9 +751,13 @@
<ul class="breadcrumb">
- <li class="breadcrumb-item"><a href="index.html" class="icon icon-home"> Home</a></li>
+ <li class="breadcrumb-item"><a href="../../../../index.html" class="icon icon-home"> Home</a></li>
+
+ <li class="breadcrumb-item"><a href="../../../../python-api-ref.html">Python API Reference</a></li>
+
+ <li class="breadcrumb-item"><a href="../index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags</span></code></a></li>
- <li class="breadcrumb-item"><a href="changelog.html"> Dockerfile Changelog</a></li>
+ <li class="breadcrumb-item"><a href="index.html"> <code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_operator</span></code></a></li>
</ul>
</div>
@@ -559,272 +768,25 @@
<div class="bodywrapper">
<div class="body" role="main">
- <blockquote>
-<div></div></blockquote>
-<div class="section" id="dockerfile-changelog">
-<h1>Dockerfile Changelog<a class="headerlink" href="#dockerfile-changelog" title="Permalink to this heading">ΒΆ</a></h1>
-<p>The <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> does not strictly follow the <a class="reference external" href="https://semver.org/">SemVer</a> approach of
-Apache Airflow when it comes to features and backwards compatibility. While Airflow code strictly
-follows it, the <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> is really a way to give users a conveniently packaged Airflow
-using standard container approach, so occasionally there are some changes in the building process
-or in the entrypoint of the image that require slight adaptation of how it is used or built.</p>
-<p>The Changelog below describes the changes introduced in each version of the docker images released by
-the Airflow team.</p>
-<dl class="field-list simple">
-<dt class="field-odd">note</dt>
-<dd class="field-odd"><p>The Changelog below concerns only the convenience production images released at
-<a class="reference external" href="https://hub.docker.com/r/apache/airflow">Airflow DockerHub</a> . The images that are released
-there, are usually built using the <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> released together with Airflow. However You are
-free to take latest released <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> from Airflow and use it to build an image for
-any Airflow version from the <code class="docutils literal notranslate"><span class="pre">Airflow</span> <span class="pre">2</span></code> line. There is no guarantee that it works, but if it does,
-then you can use latest features from that image to build the previous Airflow versions.</p>
-</dd>
-</dl>
-<div class="section" id="changes-after-publishing-the-images">
-<h2>Changes after publishing the images<a class="headerlink" href="#changes-after-publishing-the-images" title="Permalink to this heading">ΒΆ</a></h2>
-<p>Occasionally our images need to be regenerated using newer <code class="docutils literal notranslate"><span class="pre">Dockerfiles</span></code> or constraints.
-This happens when an issue is found or a breaking change is released by our dependencies
-that invalidates the already released image, and regenerating the image makes it usable again.
-While we cannot assure 100% backwards compatibility when it happens, we at least document it
-here so that users affected can find the reason for the changes.</p>
-<table class="docutils align-default">
-<colgroup>
-<col style="width: 10%" />
-<col style="width: 14%" />
-<col style="width: 28%" />
-<col style="width: 16%" />
-<col style="width: 32%" />
-</colgroup>
-<thead>
-<tr class="row-odd"><th class="head"><p>Date</p></th>
-<th class="head"><p>Affected images</p></th>
-<th class="head"><p>Potentially breaking change</p></th>
-<th class="head"><p>Reason</p></th>
-<th class="head"><p>Link to Pull Request</p></th>
-</tr>
-</thead>
-<tbody>
-<tr class="row-even"><td><p>17 June 2022</p></td>
-<td><p>2.2.5</p>
-<p>2.3.0-2.3.2</p>
-</td>
-<td><ul class="simple">
-<li><p>The <code class="docutils literal notranslate"><span class="pre">Authlib</span></code> library downgraded
-from 1.0.1 to 0.15.5 version</p></li>
-</ul>
-</td>
-<td><p>Flask App Builder
-not compatible with
-Authlib >= 1.0.0</p></td>
-<td><p><a class="reference external" href="https://github.com/apache/airflow/pull/24516">https://github.com/apache/airflow/pull/24516</a></p></td>
-</tr>
-<tr class="row-odd"><td><p>18 Jan 2022</p></td>
-<td><p>All 2.2.*, 2.1.*</p></td>
-<td><ul class="simple">
-<li><p>The AIRFLOW_GID 500 was removed</p></li>
-<li><p>MySQL <code class="docutils literal notranslate"><span class="pre">apt</span></code> repository key changed.</p></li>
-</ul>
-</td>
-<td><p>MySQL changed keys
-to sign their packages
-on 17 Jan 2022</p></td>
-<td><p><a class="reference external" href="https://github.com/apache/airflow/pull/20912">https://github.com/apache/airflow/pull/20912</a></p></td>
-</tr>
-</tbody>
-</table>
-</div>
-<div class="section" id="airflow-2-4">
-<h2>Airflow 2.4<a class="headerlink" href="#airflow-2-4" title="Permalink to this heading">ΒΆ</a></h2>
-<ul class="simple">
-<li><p>2.4.0</p>
-<ul>
-<li><p>You can specify additional <code class="docutils literal notranslate"><span class="pre">pip</span> <span class="pre">install</span></code> flags when you build the image via <code class="docutils literal notranslate"><span class="pre">ADDITIONAL_PIP_INSTALL_FLAGS</span></code>
-build arg.</p></li>
-<li><p>Support for <code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Buster</span></code> was dropped, including the possibility of building customized images as
-<code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Buster</span></code> reached end of life.</p></li>
-</ul>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-3">
-<h2>Airflow 2.3<a class="headerlink" href="#airflow-2-3" title="Permalink to this heading">ΒΆ</a></h2>
-<ul class="simple">
-<li><p>2.3.0</p>
-<ul>
-<li><p>Airflow 2.3 <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> is now better optimized for caching and βstandaloneβ which means that you
-can copy <strong>just</strong> the <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> to any folder and start building custom images. This
-however requires <a class="reference external" href="https://docs.docker.com/develop/develop-images/build_enhancements/">Buildkit</a>
-to build the image because we started using features that are only available in <code class="docutils literal notranslate"><span class="pre">Buildkit</span></code>.
-This can be done by setting <code class="docutils literal notranslate"><span class="pre">DOCKER_BUILDKIT=1</span></code> as an environment variable
-or by installing <a class="reference external" href="https://docs.docker.com/buildx/working-with-buildx/">the buildx plugin</a>
-and running <code class="docutils literal notranslate"><span class="pre">docker</span> <span class="pre">buildx</span> <span class="pre">build</span></code> command.</p></li>
-<li><p>Add Python 3.10 support</p></li>
-<li><p>Switch to <code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Bullseye</span></code> based images. <code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Buster</span></code> is deprecated and only available for
-customized image building.</p></li>
-<li><p>Add Multi-Platform support (AMD64/ARM64) in order to accommodate MacOS M1 users</p></li>
-<li><p>Build parameters which control if packages and Airflow should be installed from context file were
-unified</p></li>
-<li><p>The <code class="docutils literal notranslate"><span class="pre">INSTALL_FROM_PYPI</span></code> arg was removed - it is automatically detected now.</p></li>
-<li><p>The <code class="docutils literal notranslate"><span class="pre">INSTALL_FROM_DOCKER_CONTEXT_FILES</span></code> arg changed to <code class="docutils literal notranslate"><span class="pre">INSTALL_PACKAGES_FROM_CONTEXT</span></code></p></li>
-</ul>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-2">
-<h2>Airflow 2.2<a class="headerlink" href="#airflow-2-2" title="Permalink to this heading">ΒΆ</a></h2>
-<ul class="simple">
-<li><p>2.2.4
-* Add support for both <code class="docutils literal notranslate"><span class="pre">.piprc</span></code> and <code class="docutils literal notranslate"><span class="pre">pip.conf</span></code> customizations
-* Add ArtifactHub labels for better discovery of the images
-* Update default Python image to be 3.7
-* Build images with <code class="docutils literal notranslate"><span class="pre">Buildkit</span></code> (optional)
-* Fix building the image on Azure with <code class="docutils literal notranslate"><span class="pre">text</span> <span class="pre">file</span> <span class="pre">busy</span></code> error</p></li>
-<li><p>2.2.3
-* No changes</p></li>
-<li><p>2.2.2
-* No changes</p></li>
-<li><p>2.2.1
-* Workaround the problem with <code class="docutils literal notranslate"><span class="pre">libstdcpp</span></code> TLS error</p></li>
-<li><p>2.2.0
-* Remove AIRFLOW_GID (5000) from Airflow images (potentially breaking change for users using it)
-* Added warnings for Quick-start docker compose
-* Fix warm shutdown for celery worker (signal propagation)
-* Add Oauth libraries to PROD images
-* Add Python 3.9 support</p></li>
-</ul>
-</div>
-<div class="section" id="airflow-2-1">
-<h2>Airflow 2.1<a class="headerlink" href="#airflow-2-1" title="Permalink to this heading">ΒΆ</a></h2>
-<ul>
-<li><p>MySQL changed the keys to sign their packages on 17 Feb 2022. This caused all released images
-to fail when being extended. As result, on 18 Feb 2021 we re-released all
-the <code class="docutils literal notranslate"><span class="pre">2.2</span></code> and <code class="docutils literal notranslate"><span class="pre">2.1</span></code> images with latest versions of <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code>
-containing the new signing key.</p>
-<p>There were subtle changes in the behaviour of some 2.1 images due to that (more details below)
-Detailed <a class="reference external" href="https://github.com/apache/airflow/issues/20911">issue here</a></p>
-</li>
-</ul>
-<dl class="field-list simple">
-<dt class="field-odd">note</dt>
-<dd class="field-odd"><p>that the changes below were valid before image refreshing on 18 Feb 2022.
-Since all the images were refreshed on 18 Feb with the same <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code>
-as 2.1.4, the changes 2.1.1 -> 2.1.3 are
-effectively applied to all the images in 2.1.* line.
-The images refreshed have also those fixes added:</p>
-</dd>
-</dl>
-<ul class="simple">
-<li><p>All 2.1.* image versions refreshed on 18 Feb 2022 have those fixes applied:
-* Fix building the image on Azure with <code class="docutils literal notranslate"><span class="pre">text</span> <span class="pre">file</span> <span class="pre">busy</span></code> error
-* Workaround the problem with <code class="docutils literal notranslate"><span class="pre">libstdcpp</span></code> TLS error
-* Remove AIRFLOW_GID (5000) from Airflow images (potentially breaking change for users using it)
-* Added warnings for Quick-start docker compose
-* Add Oauth libraries to PROD images</p></li>
-</ul>
-<p>Original image Changelog (before the refresh on 18 Feb 2022):</p>
-<ul class="simple">
-<li><dl class="simple">
-<dt>2.1.4</dt><dd><ul>
-<li><p>Workaround the problem with <code class="docutils literal notranslate"><span class="pre">libstdcpp</span></code> TLS error</p></li>
-<li><p>fixed detection of port number in connection URL</p></li>
-<li><p>Improve warnings for quick-start-docker compose</p></li>
-<li><p>Fix warm shutdown for celery worker (signal propagation)</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.3</dt><dd><ul>
-<li><p>fixed auto-creation of user to use non-deprecated <code class="docutils literal notranslate"><span class="pre">create</span> <span class="pre">user</span></code> rather than <code class="docutils literal notranslate"><span class="pre">user_create</span></code></p></li>
-<li><p>remove waiting for celery backend for <code class="docutils literal notranslate"><span class="pre">worker</span></code> and <code class="docutils literal notranslate"><span class="pre">flower</span></code> commands rather than <code class="docutils literal notranslate"><span class="pre">scheduler</span></code> and <code class="docutils literal notranslate"><span class="pre">celery</span></code> only</p></li>
-<li><p>remove deprecated <code class="docutils literal notranslate"><span class="pre">airflow</span> <span class="pre">upgradedb</span></code> command from Airflow 1.10 in case upgrade is requested</p></li>
-<li><p>Add Python 3.9 support</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.2</dt><dd><ul>
-<li><p>No changes</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.1</dt><dd><ul>
-<li><p>Fix failure of lack of default commands (failed when no commands were passed)</p></li>
-<li><p>Added <code class="docutils literal notranslate"><span class="pre">_PIP_ADDITIONAL_REQUIREMENTS</span></code> development feature</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.0</dt><dd><ul>
-<li><p>Unset default <code class="docutils literal notranslate"><span class="pre">PIP_USER</span></code> variable - which caused PythonVirtualEnv to fail</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-0">
-<h2>Airflow 2.0<a class="headerlink" href="#airflow-2-0" title="Permalink to this heading">ΒΆ</a></h2>
-<ul>
-<li><p>MySQL changed the keys to sign their packages on 17 Feb 2022. This caused all released images
-to fail when being extended. As result, on 18 Feb 2021 we re-released all
-the <code class="docutils literal notranslate"><span class="pre">2.2</span></code> and <code class="docutils literal notranslate"><span class="pre">2.1</span></code> images with latest versions of <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code>
-containing the new signing key.</p>
-<p>There were no changes in the behaviour of 2.0.2 image due to that
-Detailed <a class="reference external" href="https://github.com/apache/airflow/issues/20911">issue here</a> .
-Only 2.0.2 image was regenerated, as 2.0.1 and 2.0.0 versions are hardly used and it is unlikely someone
-would like to extend those images. Extending 2.0.1 and 2.0.0 images will lead to failures of βmissing keyβ.</p>
-</li>
-<li><dl class="simple">
-<dt>2.0.2</dt><dd><ul class="simple">
-<li><p>Set correct PYTHONPATH for <code class="docutils literal notranslate"><span class="pre">root</span></code> user. Allows to run the image as root</p></li>
-<li><p>Warn if the deprecated 5000 group ID was used for airflow user when running the image
-(should be 0 for the OpenShift compatibility). Fails if the group 5000 was used with any other user
-(it would not work anyway but with cryptic errors)</p></li>
-<li><p>Set umask as 002 by default, so that you can actually change the user id used to run the image
-(required for OpenShift compatibility)</p></li>
-<li><p>Skip checking the DB and celery backend if CONNECTION_CHECK_MAX_COUNT is equal to 0</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.0.1</dt><dd><ul class="simple">
-<li><p>Avoid reverse IP lookup when checking DB availability. This helped to solve long delays on misconfigured
-docker engines</p></li>
-<li><p>Add auto-detection of redis and amqp broker ports</p></li>
-<li><p>Fixed detection of all user/password combinations in URLs - helps in auto-detecting ports and testing
-connectivity</p></li>
-<li><p>Add possibility to create Admin user automatically when entering the image</p></li>
-<li><p>Automatically create system user when different user than <code class="docutils literal notranslate"><span class="pre">airflow</span></code> is used. Needed for OpenShift
-compatibility</p></li>
-<li><p>Allows to exec to <code class="docutils literal notranslate"><span class="pre">bash</span></code> or <code class="docutils literal notranslate"><span class="pre">python</span></code> if specified as parameters</p></li>
-<li><p>Remove <code class="docutils literal notranslate"><span class="pre">airflow</span></code> command if it is specified as first parameter of the <code class="docutils literal notranslate"><span class="pre">run</span></code> command</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.0.0</dt><dd><ul class="simple">
-<li><p>Initial release of the image based on Debian Buster</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-</ul>
+ <div class="section" id="module-airflow.example_dags.example_branch_operator">
+<span id="airflow-example-dags-example-branch-operator"></span><h1><a class="reference internal" href="#module-airflow.example_dags.example_branch_operator" title="airflow.example_dags.example_branch_operator"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_operator</span></code></a><a class="headerlink" href="#module-airflow.example_dags.example_branch_operator" title="Permalink to this heading">ΒΆ</a></h1>
+<p>Example DAG demonstrating the usage of the BranchPythonOperator.</p>
+<div class="section" id="module-contents">
+<h2>Module Contents<a class="headerlink" href="#module-contents" title="Permalink to this heading">ΒΆ</a></h2>
+<dl class="py data">
+<dt class="sig sig-object py" id="airflow.example_dags.example_branch_operator.run_this_first">
+<span class="sig-prename descclassname"><span class="pre">airflow.example_dags.example_branch_operator.</span></span><span class="sig-name descname"><span class="pre">run_this_first</span></span><a class="reference internal" href="../../../../_modules/airflow/example_dags/example_branch_operator.html#run_this_first"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow.example_dags.example_branch_operator.run_this_first" title="Perma [...]
+<dd></dd></dl>
+
</div>
</div>
<div class="pager" role="navigation" aria-label="related navigation">
- <a rel="prev" title="Entrypoint" href="entrypoint.html" >
+ <a rel="prev" title="airflow.example_dags.example_branch_labels" href="../example_branch_labels/index.html" >
<button class="btn-hollow btn-blue bodytext__medium--cerulean-blue" accesskey="p">Previous</button>
</a>
- <a rel="next" title="Recipes" href="recipes.html" >
+ <a rel="next" title="airflow.example_dags.example_branch_operator_decorator" href="../example_branch_operator_decorator/index.html" >
<button class="btn-hollow btn-blue bodytext__medium--cerulean-blue" accesskey="n">Next</button>
</a>
</div>
@@ -894,13 +856,12 @@ compatibility</p></li>
<nav class="wy-nav-side-toc">
<div class="wy-menu-vertical">
<ul>
-<li><a class="reference internal" href="#">Dockerfile Changelog</a><ul>
-<li><a class="reference internal" href="#changes-after-publishing-the-images">Changes after publishing the images</a></li>
-<li><a class="reference internal" href="#airflow-2-4">Airflow 2.4</a></li>
-<li><a class="reference internal" href="#airflow-2-3">Airflow 2.3</a></li>
-<li><a class="reference internal" href="#airflow-2-2">Airflow 2.2</a></li>
-<li><a class="reference internal" href="#airflow-2-1">Airflow 2.1</a></li>
-<li><a class="reference internal" href="#airflow-2-0">Airflow 2.0</a></li>
+<li><a class="reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_operator</span></code></a><ul>
+<li><a class="reference internal" href="#module-contents">Module Contents</a><ul>
+<li><a class="reference internal" href="#airflow.example_dags.example_branch_operator.run_this_first"><code class="docutils literal notranslate"><span class="pre">run_this_first</span></code></a></li>
+<li><a class="reference internal" href="#airflow.example_dags.example_branch_operator.run_this_first">run_this_first</a></li>
+</ul>
+</li>
</ul>
</li>
</ul>
@@ -925,7 +886,7 @@ compatibility</p></li>
<div class="base-layout--button">
- <a href="https://github.com/apache/airflow/edit/main/docs/docker-stack/changelog.rst" rel="nofollow">
+ <a href="https://github.com/apache/airflow/edit/main/docs/apache-airflow/_api/airflow/example_dags/example_branch_operator/index.rst" rel="nofollow">
<button class="btn-hollow btn-brown btn-with-icon with-box-shadow button-fixed">
<svg xmlns="http://www.w3.org/2000/svg" width="30.76" height="30">
@@ -1059,18 +1020,20 @@ compatibility</p></li>
</span>
</div>
</footer>
- <script type="text/javascript" src="_static/_gen/js/docs.js"></script>
- <script type="text/javascript" id="documentation_options" data-url_root="./" src="_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../../../_static/_gen/js/docs.js"></script>
+ <script type="text/javascript" id="documentation_options" data-url_root="../../../../" src="../../../../_static/documentation_options.js"></script>
<script src="https://code.jquery.com/jquery-3.4.1.min.js" integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo=" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.3/umd/popper.min.js" integrity="sha384-ZMP7rVo3mIykV+2+9J3UJ46jBk0WLaUAdn689aCwoqbBJiSnjAK/l8WvCWPIPm49" crossorigin="anonymous"></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/js/bootstrap.min.js" integrity="sha384-ChfqqxuZUCnJSK3+MXmPNIyE6ZbWh2IMqE241rYiqJxyMiZ6OW/JmZQ5stwEULTy" crossorigin="anonymous"></script>
- <script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script>
- <script src="_static/jquery.js"></script>
- <script src="_static/underscore.js"></script>
- <script src="_static/_sphinx_javascript_frameworks_compat.js"></script>
- <script src="_static/doctools.js"></script>
- <script src="_static/clipboard.min.js"></script>
- <script src="_static/copybutton.js"></script>
- <script src="_static/js/globaltoc.js"></script>
+ <script data-url_root="../../../../" id="documentation_options" src="../../../../_static/documentation_options.js"></script>
+ <script src="../../../../_static/jquery.js"></script>
+ <script src="../../../../_static/underscore.js"></script>
+ <script src="../../../../_static/_sphinx_javascript_frameworks_compat.js"></script>
+ <script src="../../../../_static/doctools.js"></script>
+ <script src="../../../../_static/sphinx_highlight.js"></script>
+ <script src="../../../../_static/clipboard.min.js"></script>
+ <script src="../../../../_static/copybutton.js"></script>
+ <script src="../../../../_static/js/globaltoc.js"></script>
+ <script src="../../../../_static/gh-jira-links.js"></script>
</body>
</html>
\ No newline at end of file
diff --git a/docs-archive/docker-stack/changelog.html b/docs-archive/apache-airflow/2.4.2/_api/airflow/example_dags/example_branch_operator_decorator/index.html
similarity index 69%
copy from docs-archive/docker-stack/changelog.html
copy to docs-archive/apache-airflow/2.4.2/_api/airflow/example_dags/example_branch_operator_decorator/index.html
index 2fa2b8d179..c71bf2f236 100644
--- a/docs-archive/docker-stack/changelog.html
+++ b/docs-archive/apache-airflow/2.4.2/_api/airflow/example_dags/example_branch_operator_decorator/index.html
@@ -9,17 +9,18 @@
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1">
- <title>Dockerfile Changelog — docker-stack Documentation</title>
- <link rel="stylesheet" href="_static/_gen/css/main.min.css" type="text/css" />
- <link rel="stylesheet" type="text/css" href="_static/pygments.css" />
- <link rel="stylesheet" type="text/css" href="_static/_gen/css/main.min.css" />
- <link rel="stylesheet" type="text/css" href="_static/copybutton.css" />
- <link rel="stylesheet" type="text/css" href="_static/_gen/css/main-custom.min.css" />
- <link rel="shortcut icon" href="_static/pin_32.png"/>
- <link rel="index" title="Index" href="genindex.html" />
- <link rel="search" title="Search" href="search.html" />
- <link rel="next" title="Recipes" href="recipes.html" />
- <link rel="prev" title="Entrypoint" href="entrypoint.html" />
+ <title>airflow.example_dags.example_branch_operator_decorator — Airflow Documentation</title>
+ <link rel="stylesheet" href="../../../../_static/_gen/css/main.min.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../../../_static/pygments.css" />
+ <link rel="stylesheet" type="text/css" href="../../../../_static/_gen/css/main.min.css" />
+ <link rel="stylesheet" type="text/css" href="../../../../_static/copybutton.css" />
+ <link rel="stylesheet" type="text/css" href="../../../../_static/_gen/css/main-custom.min.css" />
+ <link rel="stylesheet" type="text/css" href="../../../../_static/graphviz.css" />
+ <link rel="shortcut icon" href="../../../../_static/pin_32.png"/>
+ <link rel="index" title="Index" href="../../../../genindex.html" />
+ <link rel="search" title="Search" href="../../../../search.html" />
+ <link rel="next" title="airflow.example_dags.example_branch_python_dop_operator_3" href="../example_branch_python_dop_operator_3/index.html" />
+ <link rel="prev" title="airflow.example_dags.example_branch_operator" href="../example_branch_operator/index.html" />
<!-- Matomo -->
<script>
var _paq = window._paq = window._paq || [];
@@ -280,8 +281,21 @@
<div class="content-drawer">
<div class="td-sidebar">
+<div id="docs-version-selector" class="docs-version-selector sidebar__version-selector">
+ <a class="dropdown-toggle" href="#" id="versionDropdown" role="button" data-toggle="dropdown" aria-haspopup="true"
+ aria-expanded="false">
+ <span class="bodytext__medium--greyish-brown">Version: </span><span class="version">2.4.2</span>
+ </a>
+ <div class="dropdown-menu" aria-labelledby="navbarDropdownMenuLink">
+
+ </div>
+ <script type="application/x-template" id="version-item-template">
+ <a class="dropdown-item"></a>
+ </script>
+</div>
+
<div class="searchb-box">
- <form class="search-form" action="search.html" method="get">
+ <form class="search-form" action="../../../../search.html" method="get">
<input class="search-form__input" type="text" name="q" placeholder="Search docs" size="16">
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
@@ -311,24 +325,113 @@
<div class="toctree" role="navigation" aria-label="main navigation">
- <ul class="current">
-<li class="toctree-l1"><a class="reference internal" href="index.html">Home</a></li>
-<li class="toctree-l1"><a class="reference internal" href="build.html">Building the image</a></li>
-<li class="toctree-l1"><a class="reference internal" href="entrypoint.html">Entrypoint</a></li>
-<li class="toctree-l1 current"><a class="current reference internal" href="#">Dockerfile Changelog</a><ul>
-<li class="toctree-l2"><a class="reference internal" href="#changes-after-publishing-the-images">Changes after publishing the images</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-4">Airflow 2.4</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-3">Airflow 2.3</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-2">Airflow 2.2</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-1">Airflow 2.1</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-0">Airflow 2.0</a></li>
+ <p class="caption" role="heading"><span class="caption-text">Content</span></p>
+<ul>
+<li class="toctree-l1"><a class="reference internal" href="../../../../index.html">Overview</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../project.html">Project</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../license.html">License</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../start.html">Quick Start</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../installation/index.html">Installation</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../upgrading-from-1-10/index.html">Upgrading from 1.10 to 2</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../tutorial/index.html">Tutorials</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../howto/index.html">How-to Guides</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../ui.html">UI / Screenshots</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../concepts/index.html">Concepts</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../executor/index.html">Executor</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../dag-run.html">DAG Runs</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../plugins.html">Plugins</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../security/index.html">Security</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../logging-monitoring/index.html">Logging & Monitoring</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../timezone.html">Time Zones</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../usage-cli.html">Using the CLI</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../integration.html">Integration</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../kubernetes.html">Kubernetes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../lineage.html">Lineage</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../listeners.html">Listeners</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../dag-serialization.html">DAG Serialization</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../modules_management.html">Modules Management</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release-process.html">Release Policies</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release_notes.html">Release Notes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../best-practices.html">Best Practices</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../production-deployment.html">Production Deployment</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../faq.html">FAQ</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../privacy_notice.html">Privacy Notice</a></li>
+</ul>
+<p class="caption" role="heading"><span class="caption-text">References</span></p>
+<ul class="current">
+<li class="toctree-l1"><a class="reference internal" href="../../../../operators-and-hooks-ref.html">Operators and hooks</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../cli-and-env-variables-ref.html">CLI</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../templates-ref.html">Templates</a></li>
+<li class="toctree-l1 current"><a class="reference internal" href="../../../../python-api-ref.html">Python API</a><ul class="current">
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#dags">DAGs</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#operators">Operators</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#hooks">Hooks</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#executors">Executors</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#models">Models</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#exceptions">Exceptions</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#secrets-backends">Secrets Backends</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#timetables">Timetables</a></li>
+<li class="toctree-l2 current"><a class="reference internal" href="../../../../python-api-ref.html#example-dags">Example DAGs</a><ul class="current">
+<li class="toctree-l3 current"><a class="reference internal" href="../index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags</span></code></a><ul class="current">
+<li class="toctree-l4"><a class="reference internal" href="../index.html#subpackages">Subpackages</a></li>
+<li class="toctree-l4 current"><a class="reference internal" href="../index.html#submodules">Submodules</a><ul class="current">
+<li class="toctree-l5"><a class="reference internal" href="../example_bash_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_bash_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_datetime_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_datetime_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_day_of_week_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_day_of_week_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_labels/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_labels</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_operator</span></code></a></li>
+<li class="toctree-l5 current"><a class="current reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_operator_decorator</span></code></a><ul>
+<li class="toctree-l6"><a class="reference internal" href="#module-contents">Module Contents</a><ul>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_branch_operator_decorator.run_this_first"><code class="docutils literal notranslate"><span class="pre">run_this_first</span></code></a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_branch_operator_decorator.run_this_first">run_this_first</a></li>
</ul>
</li>
-<li class="toctree-l1"><a class="reference internal" href="recipes.html">Recipes</a></li>
</ul>
-<p class="caption" role="heading"><span class="caption-text">References</span></p>
+</li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_python_dop_operator_3/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_python_dop_operator_3</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_complex/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_complex</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_datasets/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_datasets</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_external_task_marker_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_external_task_marker_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_kubernetes_executor/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_kubernetes_executor</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_latest_only/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_latest_only</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_latest_only_with_trigger/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_latest_only_with_trigger</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_local_kubernetes_executor/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_local_kubernetes_executor</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_nested_branch_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_nested_branch_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_passing_params_via_test_command/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_passing_params_via_test_command</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_python_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_python_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_short_circuit_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_short_circuit_decorator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_short_circuit_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_short_circuit_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_skip_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_skip_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_subdag_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_subdag_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_task_group/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_task_group</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_task_group_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_task_group_decorator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_time_delta_sensor_async/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_time_delta_sensor_async</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_trigger_controller_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_trigger_controller_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_trigger_target_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_trigger_target_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_xcom/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_xcom</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_xcomargs/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_xcomargs</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial_taskflow_api/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_taskflow_api</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial_taskflow_api_virtualenv/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_taskflow_api_virtualenv</span></code></a></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#utils">Utils</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../stable-rest-api-ref.html">Stable REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../deprecated-rest-api-ref.html">Deprecated REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../configurations-ref.html">Configurations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../extra-packages-ref.html">Extra packages</a></li>
+</ul>
+<p class="caption" role="heading"><span class="caption-text">Internal DB details</span></p>
<ul>
-<li class="toctree-l1"><a class="reference internal" href="build-arg-ref.html">Image build arguments reference</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../migrations-ref.html">Database Migrations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../database-erd-ref.html">Database ERD Schema</a></li>
</ul>
</div>
@@ -409,8 +512,21 @@
<div class="td-sidebar desktop-only d-print-none">
+<div id="docs-version-selector" class="docs-version-selector sidebar__version-selector">
+ <a class="dropdown-toggle" href="#" id="versionDropdown" role="button" data-toggle="dropdown" aria-haspopup="true"
+ aria-expanded="false">
+ <span class="bodytext__medium--greyish-brown">Version: </span><span class="version">2.4.2</span>
+ </a>
+ <div class="dropdown-menu" aria-labelledby="navbarDropdownMenuLink">
+
+ </div>
+ <script type="application/x-template" id="version-item-template">
+ <a class="dropdown-item"></a>
+ </script>
+</div>
+
<div class="searchb-box">
- <form class="search-form" action="search.html" method="get">
+ <form class="search-form" action="../../../../search.html" method="get">
<input class="search-form__input" type="text" name="q" placeholder="Search docs" size="16">
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
@@ -440,24 +556,113 @@
<div class="toctree" role="navigation" aria-label="main navigation">
- <ul class="current">
-<li class="toctree-l1"><a class="reference internal" href="index.html">Home</a></li>
-<li class="toctree-l1"><a class="reference internal" href="build.html">Building the image</a></li>
-<li class="toctree-l1"><a class="reference internal" href="entrypoint.html">Entrypoint</a></li>
-<li class="toctree-l1 current"><a class="current reference internal" href="#">Dockerfile Changelog</a><ul>
-<li class="toctree-l2"><a class="reference internal" href="#changes-after-publishing-the-images">Changes after publishing the images</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-4">Airflow 2.4</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-3">Airflow 2.3</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-2">Airflow 2.2</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-1">Airflow 2.1</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-0">Airflow 2.0</a></li>
+ <p class="caption" role="heading"><span class="caption-text">Content</span></p>
+<ul>
+<li class="toctree-l1"><a class="reference internal" href="../../../../index.html">Overview</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../project.html">Project</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../license.html">License</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../start.html">Quick Start</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../installation/index.html">Installation</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../upgrading-from-1-10/index.html">Upgrading from 1.10 to 2</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../tutorial/index.html">Tutorials</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../howto/index.html">How-to Guides</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../ui.html">UI / Screenshots</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../concepts/index.html">Concepts</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../executor/index.html">Executor</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../dag-run.html">DAG Runs</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../plugins.html">Plugins</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../security/index.html">Security</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../logging-monitoring/index.html">Logging & Monitoring</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../timezone.html">Time Zones</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../usage-cli.html">Using the CLI</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../integration.html">Integration</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../kubernetes.html">Kubernetes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../lineage.html">Lineage</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../listeners.html">Listeners</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../dag-serialization.html">DAG Serialization</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../modules_management.html">Modules Management</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release-process.html">Release Policies</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release_notes.html">Release Notes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../best-practices.html">Best Practices</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../production-deployment.html">Production Deployment</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../faq.html">FAQ</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../privacy_notice.html">Privacy Notice</a></li>
+</ul>
+<p class="caption" role="heading"><span class="caption-text">References</span></p>
+<ul class="current">
+<li class="toctree-l1"><a class="reference internal" href="../../../../operators-and-hooks-ref.html">Operators and hooks</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../cli-and-env-variables-ref.html">CLI</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../templates-ref.html">Templates</a></li>
+<li class="toctree-l1 current"><a class="reference internal" href="../../../../python-api-ref.html">Python API</a><ul class="current">
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#dags">DAGs</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#operators">Operators</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#hooks">Hooks</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#executors">Executors</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#models">Models</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#exceptions">Exceptions</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#secrets-backends">Secrets Backends</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#timetables">Timetables</a></li>
+<li class="toctree-l2 current"><a class="reference internal" href="../../../../python-api-ref.html#example-dags">Example DAGs</a><ul class="current">
+<li class="toctree-l3 current"><a class="reference internal" href="../index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags</span></code></a><ul class="current">
+<li class="toctree-l4"><a class="reference internal" href="../index.html#subpackages">Subpackages</a></li>
+<li class="toctree-l4 current"><a class="reference internal" href="../index.html#submodules">Submodules</a><ul class="current">
+<li class="toctree-l5"><a class="reference internal" href="../example_bash_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_bash_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_datetime_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_datetime_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_day_of_week_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_day_of_week_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_labels/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_labels</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_operator</span></code></a></li>
+<li class="toctree-l5 current"><a class="current reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_operator_decorator</span></code></a><ul>
+<li class="toctree-l6"><a class="reference internal" href="#module-contents">Module Contents</a><ul>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_branch_operator_decorator.run_this_first"><code class="docutils literal notranslate"><span class="pre">run_this_first</span></code></a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_branch_operator_decorator.run_this_first">run_this_first</a></li>
</ul>
</li>
-<li class="toctree-l1"><a class="reference internal" href="recipes.html">Recipes</a></li>
</ul>
-<p class="caption" role="heading"><span class="caption-text">References</span></p>
+</li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_python_dop_operator_3/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_python_dop_operator_3</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_complex/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_complex</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_datasets/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_datasets</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_external_task_marker_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_external_task_marker_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_kubernetes_executor/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_kubernetes_executor</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_latest_only/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_latest_only</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_latest_only_with_trigger/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_latest_only_with_trigger</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_local_kubernetes_executor/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_local_kubernetes_executor</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_nested_branch_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_nested_branch_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_passing_params_via_test_command/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_passing_params_via_test_command</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_python_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_python_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_short_circuit_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_short_circuit_decorator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_short_circuit_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_short_circuit_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_skip_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_skip_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_subdag_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_subdag_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_task_group/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_task_group</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_task_group_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_task_group_decorator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_time_delta_sensor_async/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_time_delta_sensor_async</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_trigger_controller_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_trigger_controller_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_trigger_target_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_trigger_target_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_xcom/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_xcom</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_xcomargs/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_xcomargs</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial_taskflow_api/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_taskflow_api</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial_taskflow_api_virtualenv/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_taskflow_api_virtualenv</span></code></a></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#utils">Utils</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../stable-rest-api-ref.html">Stable REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../deprecated-rest-api-ref.html">Deprecated REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../configurations-ref.html">Configurations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../extra-packages-ref.html">Extra packages</a></li>
+</ul>
+<p class="caption" role="heading"><span class="caption-text">Internal DB details</span></p>
<ul>
-<li class="toctree-l1"><a class="reference internal" href="build-arg-ref.html">Image build arguments reference</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../migrations-ref.html">Database Migrations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../database-erd-ref.html">Database ERD Schema</a></li>
</ul>
</div>
@@ -546,9 +751,13 @@
<ul class="breadcrumb">
- <li class="breadcrumb-item"><a href="index.html" class="icon icon-home"> Home</a></li>
+ <li class="breadcrumb-item"><a href="../../../../index.html" class="icon icon-home"> Home</a></li>
+
+ <li class="breadcrumb-item"><a href="../../../../python-api-ref.html">Python API Reference</a></li>
+
+ <li class="breadcrumb-item"><a href="../index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags</span></code></a></li>
- <li class="breadcrumb-item"><a href="changelog.html"> Dockerfile Changelog</a></li>
+ <li class="breadcrumb-item"><a href="index.html"> <code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_operator_decorator</span></code></a></li>
</ul>
</div>
@@ -559,272 +768,25 @@
<div class="bodywrapper">
<div class="body" role="main">
- <blockquote>
-<div></div></blockquote>
-<div class="section" id="dockerfile-changelog">
-<h1>Dockerfile Changelog<a class="headerlink" href="#dockerfile-changelog" title="Permalink to this heading">ΒΆ</a></h1>
-<p>The <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> does not strictly follow the <a class="reference external" href="https://semver.org/">SemVer</a> approach of
-Apache Airflow when it comes to features and backwards compatibility. While Airflow code strictly
-follows it, the <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> is really a way to give users a conveniently packaged Airflow
-using standard container approach, so occasionally there are some changes in the building process
-or in the entrypoint of the image that require slight adaptation of how it is used or built.</p>
-<p>The Changelog below describes the changes introduced in each version of the docker images released by
-the Airflow team.</p>
-<dl class="field-list simple">
-<dt class="field-odd">note</dt>
-<dd class="field-odd"><p>The Changelog below concerns only the convenience production images released at
-<a class="reference external" href="https://hub.docker.com/r/apache/airflow">Airflow DockerHub</a> . The images that are released
-there, are usually built using the <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> released together with Airflow. However You are
-free to take latest released <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> from Airflow and use it to build an image for
-any Airflow version from the <code class="docutils literal notranslate"><span class="pre">Airflow</span> <span class="pre">2</span></code> line. There is no guarantee that it works, but if it does,
-then you can use latest features from that image to build the previous Airflow versions.</p>
-</dd>
-</dl>
-<div class="section" id="changes-after-publishing-the-images">
-<h2>Changes after publishing the images<a class="headerlink" href="#changes-after-publishing-the-images" title="Permalink to this heading">ΒΆ</a></h2>
-<p>Occasionally our images need to be regenerated using newer <code class="docutils literal notranslate"><span class="pre">Dockerfiles</span></code> or constraints.
-This happens when an issue is found or a breaking change is released by our dependencies
-that invalidates the already released image, and regenerating the image makes it usable again.
-While we cannot assure 100% backwards compatibility when it happens, we at least document it
-here so that users affected can find the reason for the changes.</p>
-<table class="docutils align-default">
-<colgroup>
-<col style="width: 10%" />
-<col style="width: 14%" />
-<col style="width: 28%" />
-<col style="width: 16%" />
-<col style="width: 32%" />
-</colgroup>
-<thead>
-<tr class="row-odd"><th class="head"><p>Date</p></th>
-<th class="head"><p>Affected images</p></th>
-<th class="head"><p>Potentially breaking change</p></th>
-<th class="head"><p>Reason</p></th>
-<th class="head"><p>Link to Pull Request</p></th>
-</tr>
-</thead>
-<tbody>
-<tr class="row-even"><td><p>17 June 2022</p></td>
-<td><p>2.2.5</p>
-<p>2.3.0-2.3.2</p>
-</td>
-<td><ul class="simple">
-<li><p>The <code class="docutils literal notranslate"><span class="pre">Authlib</span></code> library downgraded
-from 1.0.1 to 0.15.5 version</p></li>
-</ul>
-</td>
-<td><p>Flask App Builder
-not compatible with
-Authlib >= 1.0.0</p></td>
-<td><p><a class="reference external" href="https://github.com/apache/airflow/pull/24516">https://github.com/apache/airflow/pull/24516</a></p></td>
-</tr>
-<tr class="row-odd"><td><p>18 Jan 2022</p></td>
-<td><p>All 2.2.*, 2.1.*</p></td>
-<td><ul class="simple">
-<li><p>The AIRFLOW_GID 500 was removed</p></li>
-<li><p>MySQL <code class="docutils literal notranslate"><span class="pre">apt</span></code> repository key changed.</p></li>
-</ul>
-</td>
-<td><p>MySQL changed keys
-to sign their packages
-on 17 Jan 2022</p></td>
-<td><p><a class="reference external" href="https://github.com/apache/airflow/pull/20912">https://github.com/apache/airflow/pull/20912</a></p></td>
-</tr>
-</tbody>
-</table>
-</div>
-<div class="section" id="airflow-2-4">
-<h2>Airflow 2.4<a class="headerlink" href="#airflow-2-4" title="Permalink to this heading">ΒΆ</a></h2>
-<ul class="simple">
-<li><p>2.4.0</p>
-<ul>
-<li><p>You can specify additional <code class="docutils literal notranslate"><span class="pre">pip</span> <span class="pre">install</span></code> flags when you build the image via <code class="docutils literal notranslate"><span class="pre">ADDITIONAL_PIP_INSTALL_FLAGS</span></code>
-build arg.</p></li>
-<li><p>Support for <code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Buster</span></code> was dropped, including the possibility of building customized images as
-<code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Buster</span></code> reached end of life.</p></li>
-</ul>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-3">
-<h2>Airflow 2.3<a class="headerlink" href="#airflow-2-3" title="Permalink to this heading">ΒΆ</a></h2>
-<ul class="simple">
-<li><p>2.3.0</p>
-<ul>
-<li><p>Airflow 2.3 <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> is now better optimized for caching and βstandaloneβ which means that you
-can copy <strong>just</strong> the <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> to any folder and start building custom images. This
-however requires <a class="reference external" href="https://docs.docker.com/develop/develop-images/build_enhancements/">Buildkit</a>
-to build the image because we started using features that are only available in <code class="docutils literal notranslate"><span class="pre">Buildkit</span></code>.
-This can be done by setting <code class="docutils literal notranslate"><span class="pre">DOCKER_BUILDKIT=1</span></code> as an environment variable
-or by installing <a class="reference external" href="https://docs.docker.com/buildx/working-with-buildx/">the buildx plugin</a>
-and running <code class="docutils literal notranslate"><span class="pre">docker</span> <span class="pre">buildx</span> <span class="pre">build</span></code> command.</p></li>
-<li><p>Add Python 3.10 support</p></li>
-<li><p>Switch to <code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Bullseye</span></code> based images. <code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Buster</span></code> is deprecated and only available for
-customized image building.</p></li>
-<li><p>Add Multi-Platform support (AMD64/ARM64) in order to accommodate MacOS M1 users</p></li>
-<li><p>Build parameters which control if packages and Airflow should be installed from context file were
-unified</p></li>
-<li><p>The <code class="docutils literal notranslate"><span class="pre">INSTALL_FROM_PYPI</span></code> arg was removed - it is automatically detected now.</p></li>
-<li><p>The <code class="docutils literal notranslate"><span class="pre">INSTALL_FROM_DOCKER_CONTEXT_FILES</span></code> arg changed to <code class="docutils literal notranslate"><span class="pre">INSTALL_PACKAGES_FROM_CONTEXT</span></code></p></li>
-</ul>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-2">
-<h2>Airflow 2.2<a class="headerlink" href="#airflow-2-2" title="Permalink to this heading">ΒΆ</a></h2>
-<ul class="simple">
-<li><p>2.2.4
-* Add support for both <code class="docutils literal notranslate"><span class="pre">.piprc</span></code> and <code class="docutils literal notranslate"><span class="pre">pip.conf</span></code> customizations
-* Add ArtifactHub labels for better discovery of the images
-* Update default Python image to be 3.7
-* Build images with <code class="docutils literal notranslate"><span class="pre">Buildkit</span></code> (optional)
-* Fix building the image on Azure with <code class="docutils literal notranslate"><span class="pre">text</span> <span class="pre">file</span> <span class="pre">busy</span></code> error</p></li>
-<li><p>2.2.3
-* No changes</p></li>
-<li><p>2.2.2
-* No changes</p></li>
-<li><p>2.2.1
-* Workaround the problem with <code class="docutils literal notranslate"><span class="pre">libstdcpp</span></code> TLS error</p></li>
-<li><p>2.2.0
-* Remove AIRFLOW_GID (5000) from Airflow images (potentially breaking change for users using it)
-* Added warnings for Quick-start docker compose
-* Fix warm shutdown for celery worker (signal propagation)
-* Add Oauth libraries to PROD images
-* Add Python 3.9 support</p></li>
-</ul>
-</div>
-<div class="section" id="airflow-2-1">
-<h2>Airflow 2.1<a class="headerlink" href="#airflow-2-1" title="Permalink to this heading">ΒΆ</a></h2>
-<ul>
-<li><p>MySQL changed the keys to sign their packages on 17 Feb 2022. This caused all released images
-to fail when being extended. As result, on 18 Feb 2021 we re-released all
-the <code class="docutils literal notranslate"><span class="pre">2.2</span></code> and <code class="docutils literal notranslate"><span class="pre">2.1</span></code> images with latest versions of <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code>
-containing the new signing key.</p>
-<p>There were subtle changes in the behaviour of some 2.1 images due to that (more details below)
-Detailed <a class="reference external" href="https://github.com/apache/airflow/issues/20911">issue here</a></p>
-</li>
-</ul>
-<dl class="field-list simple">
-<dt class="field-odd">note</dt>
-<dd class="field-odd"><p>that the changes below were valid before image refreshing on 18 Feb 2022.
-Since all the images were refreshed on 18 Feb with the same <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code>
-as 2.1.4, the changes 2.1.1 -> 2.1.3 are
-effectively applied to all the images in 2.1.* line.
-The images refreshed have also those fixes added:</p>
-</dd>
-</dl>
-<ul class="simple">
-<li><p>All 2.1.* image versions refreshed on 18 Feb 2022 have those fixes applied:
-* Fix building the image on Azure with <code class="docutils literal notranslate"><span class="pre">text</span> <span class="pre">file</span> <span class="pre">busy</span></code> error
-* Workaround the problem with <code class="docutils literal notranslate"><span class="pre">libstdcpp</span></code> TLS error
-* Remove AIRFLOW_GID (5000) from Airflow images (potentially breaking change for users using it)
-* Added warnings for Quick-start docker compose
-* Add Oauth libraries to PROD images</p></li>
-</ul>
-<p>Original image Changelog (before the refresh on 18 Feb 2022):</p>
-<ul class="simple">
-<li><dl class="simple">
-<dt>2.1.4</dt><dd><ul>
-<li><p>Workaround the problem with <code class="docutils literal notranslate"><span class="pre">libstdcpp</span></code> TLS error</p></li>
-<li><p>fixed detection of port number in connection URL</p></li>
-<li><p>Improve warnings for quick-start-docker compose</p></li>
-<li><p>Fix warm shutdown for celery worker (signal propagation)</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.3</dt><dd><ul>
-<li><p>fixed auto-creation of user to use non-deprecated <code class="docutils literal notranslate"><span class="pre">create</span> <span class="pre">user</span></code> rather than <code class="docutils literal notranslate"><span class="pre">user_create</span></code></p></li>
-<li><p>remove waiting for celery backend for <code class="docutils literal notranslate"><span class="pre">worker</span></code> and <code class="docutils literal notranslate"><span class="pre">flower</span></code> commands rather than <code class="docutils literal notranslate"><span class="pre">scheduler</span></code> and <code class="docutils literal notranslate"><span class="pre">celery</span></code> only</p></li>
-<li><p>remove deprecated <code class="docutils literal notranslate"><span class="pre">airflow</span> <span class="pre">upgradedb</span></code> command from Airflow 1.10 in case upgrade is requested</p></li>
-<li><p>Add Python 3.9 support</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.2</dt><dd><ul>
-<li><p>No changes</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.1</dt><dd><ul>
-<li><p>Fix failure of lack of default commands (failed when no commands were passed)</p></li>
-<li><p>Added <code class="docutils literal notranslate"><span class="pre">_PIP_ADDITIONAL_REQUIREMENTS</span></code> development feature</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.0</dt><dd><ul>
-<li><p>Unset default <code class="docutils literal notranslate"><span class="pre">PIP_USER</span></code> variable - which caused PythonVirtualEnv to fail</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-0">
-<h2>Airflow 2.0<a class="headerlink" href="#airflow-2-0" title="Permalink to this heading">ΒΆ</a></h2>
-<ul>
-<li><p>MySQL changed the keys to sign their packages on 17 Feb 2022. This caused all released images
-to fail when being extended. As result, on 18 Feb 2021 we re-released all
-the <code class="docutils literal notranslate"><span class="pre">2.2</span></code> and <code class="docutils literal notranslate"><span class="pre">2.1</span></code> images with latest versions of <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code>
-containing the new signing key.</p>
-<p>There were no changes in the behaviour of 2.0.2 image due to that
-Detailed <a class="reference external" href="https://github.com/apache/airflow/issues/20911">issue here</a> .
-Only 2.0.2 image was regenerated, as 2.0.1 and 2.0.0 versions are hardly used and it is unlikely someone
-would like to extend those images. Extending 2.0.1 and 2.0.0 images will lead to failures of βmissing keyβ.</p>
-</li>
-<li><dl class="simple">
-<dt>2.0.2</dt><dd><ul class="simple">
-<li><p>Set correct PYTHONPATH for <code class="docutils literal notranslate"><span class="pre">root</span></code> user. Allows to run the image as root</p></li>
-<li><p>Warn if the deprecated 5000 group ID was used for airflow user when running the image
-(should be 0 for the OpenShift compatibility). Fails if the group 5000 was used with any other user
-(it would not work anyway but with cryptic errors)</p></li>
-<li><p>Set umask as 002 by default, so that you can actually change the user id used to run the image
-(required for OpenShift compatibility)</p></li>
-<li><p>Skip checking the DB and celery backend if CONNECTION_CHECK_MAX_COUNT is equal to 0</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.0.1</dt><dd><ul class="simple">
-<li><p>Avoid reverse IP lookup when checking DB availability. This helped to solve long delays on misconfigured
-docker engines</p></li>
-<li><p>Add auto-detection of redis and amqp broker ports</p></li>
-<li><p>Fixed detection of all user/password combinations in URLs - helps in auto-detecting ports and testing
-connectivity</p></li>
-<li><p>Add possibility to create Admin user automatically when entering the image</p></li>
-<li><p>Automatically create system user when different user than <code class="docutils literal notranslate"><span class="pre">airflow</span></code> is used. Needed for OpenShift
-compatibility</p></li>
-<li><p>Allows to exec to <code class="docutils literal notranslate"><span class="pre">bash</span></code> or <code class="docutils literal notranslate"><span class="pre">python</span></code> if specified as parameters</p></li>
-<li><p>Remove <code class="docutils literal notranslate"><span class="pre">airflow</span></code> command if it is specified as first parameter of the <code class="docutils literal notranslate"><span class="pre">run</span></code> command</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.0.0</dt><dd><ul class="simple">
-<li><p>Initial release of the image based on Debian Buster</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-</ul>
+ <div class="section" id="module-airflow.example_dags.example_branch_operator_decorator">
+<span id="airflow-example-dags-example-branch-operator-decorator"></span><h1><a class="reference internal" href="#module-airflow.example_dags.example_branch_operator_decorator" title="airflow.example_dags.example_branch_operator_decorator"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_operator_decorator</span></code></a><a class="headerlink" href="#module-airflow.example_dags.example_branch_operator_decorator" title="Perma [...]
+<p>Example DAG demonstrating the usage of the <code class="docutils literal notranslate"><span class="pre">@task.branch</span></code> TaskFlow API decorator.</p>
+<div class="section" id="module-contents">
+<h2>Module Contents<a class="headerlink" href="#module-contents" title="Permalink to this heading">ΒΆ</a></h2>
+<dl class="py data">
+<dt class="sig sig-object py" id="airflow.example_dags.example_branch_operator_decorator.run_this_first">
+<span class="sig-prename descclassname"><span class="pre">airflow.example_dags.example_branch_operator_decorator.</span></span><span class="sig-name descname"><span class="pre">run_this_first</span></span><a class="reference internal" href="../../../../_modules/airflow/example_dags/example_branch_operator_decorator.html#run_this_first"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow.example_dags.example_branch_operator_decorato [...]
+<dd></dd></dl>
+
</div>
</div>
<div class="pager" role="navigation" aria-label="related navigation">
- <a rel="prev" title="Entrypoint" href="entrypoint.html" >
+ <a rel="prev" title="airflow.example_dags.example_branch_operator" href="../example_branch_operator/index.html" >
<button class="btn-hollow btn-blue bodytext__medium--cerulean-blue" accesskey="p">Previous</button>
</a>
- <a rel="next" title="Recipes" href="recipes.html" >
+ <a rel="next" title="airflow.example_dags.example_branch_python_dop_operator_3" href="../example_branch_python_dop_operator_3/index.html" >
<button class="btn-hollow btn-blue bodytext__medium--cerulean-blue" accesskey="n">Next</button>
</a>
</div>
@@ -894,13 +856,12 @@ compatibility</p></li>
<nav class="wy-nav-side-toc">
<div class="wy-menu-vertical">
<ul>
-<li><a class="reference internal" href="#">Dockerfile Changelog</a><ul>
-<li><a class="reference internal" href="#changes-after-publishing-the-images">Changes after publishing the images</a></li>
-<li><a class="reference internal" href="#airflow-2-4">Airflow 2.4</a></li>
-<li><a class="reference internal" href="#airflow-2-3">Airflow 2.3</a></li>
-<li><a class="reference internal" href="#airflow-2-2">Airflow 2.2</a></li>
-<li><a class="reference internal" href="#airflow-2-1">Airflow 2.1</a></li>
-<li><a class="reference internal" href="#airflow-2-0">Airflow 2.0</a></li>
+<li><a class="reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_operator_decorator</span></code></a><ul>
+<li><a class="reference internal" href="#module-contents">Module Contents</a><ul>
+<li><a class="reference internal" href="#airflow.example_dags.example_branch_operator_decorator.run_this_first"><code class="docutils literal notranslate"><span class="pre">run_this_first</span></code></a></li>
+<li><a class="reference internal" href="#airflow.example_dags.example_branch_operator_decorator.run_this_first">run_this_first</a></li>
+</ul>
+</li>
</ul>
</li>
</ul>
@@ -925,7 +886,7 @@ compatibility</p></li>
<div class="base-layout--button">
- <a href="https://github.com/apache/airflow/edit/main/docs/docker-stack/changelog.rst" rel="nofollow">
+ <a href="https://github.com/apache/airflow/edit/main/docs/apache-airflow/_api/airflow/example_dags/example_branch_operator_decorator/index.rst" rel="nofollow">
<button class="btn-hollow btn-brown btn-with-icon with-box-shadow button-fixed">
<svg xmlns="http://www.w3.org/2000/svg" width="30.76" height="30">
@@ -1059,18 +1020,20 @@ compatibility</p></li>
</span>
</div>
</footer>
- <script type="text/javascript" src="_static/_gen/js/docs.js"></script>
- <script type="text/javascript" id="documentation_options" data-url_root="./" src="_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../../../_static/_gen/js/docs.js"></script>
+ <script type="text/javascript" id="documentation_options" data-url_root="../../../../" src="../../../../_static/documentation_options.js"></script>
<script src="https://code.jquery.com/jquery-3.4.1.min.js" integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo=" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.3/umd/popper.min.js" integrity="sha384-ZMP7rVo3mIykV+2+9J3UJ46jBk0WLaUAdn689aCwoqbBJiSnjAK/l8WvCWPIPm49" crossorigin="anonymous"></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/js/bootstrap.min.js" integrity="sha384-ChfqqxuZUCnJSK3+MXmPNIyE6ZbWh2IMqE241rYiqJxyMiZ6OW/JmZQ5stwEULTy" crossorigin="anonymous"></script>
- <script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script>
- <script src="_static/jquery.js"></script>
- <script src="_static/underscore.js"></script>
- <script src="_static/_sphinx_javascript_frameworks_compat.js"></script>
- <script src="_static/doctools.js"></script>
- <script src="_static/clipboard.min.js"></script>
- <script src="_static/copybutton.js"></script>
- <script src="_static/js/globaltoc.js"></script>
+ <script data-url_root="../../../../" id="documentation_options" src="../../../../_static/documentation_options.js"></script>
+ <script src="../../../../_static/jquery.js"></script>
+ <script src="../../../../_static/underscore.js"></script>
+ <script src="../../../../_static/_sphinx_javascript_frameworks_compat.js"></script>
+ <script src="../../../../_static/doctools.js"></script>
+ <script src="../../../../_static/sphinx_highlight.js"></script>
+ <script src="../../../../_static/clipboard.min.js"></script>
+ <script src="../../../../_static/copybutton.js"></script>
+ <script src="../../../../_static/js/globaltoc.js"></script>
+ <script src="../../../../_static/gh-jira-links.js"></script>
</body>
</html>
\ No newline at end of file
diff --git a/docs-archive/docker-stack/changelog.html b/docs-archive/apache-airflow/2.4.2/_api/airflow/example_dags/example_branch_python_dop_operator_3/index.html
similarity index 66%
copy from docs-archive/docker-stack/changelog.html
copy to docs-archive/apache-airflow/2.4.2/_api/airflow/example_dags/example_branch_python_dop_operator_3/index.html
index 2fa2b8d179..b6acdad059 100644
--- a/docs-archive/docker-stack/changelog.html
+++ b/docs-archive/apache-airflow/2.4.2/_api/airflow/example_dags/example_branch_python_dop_operator_3/index.html
@@ -9,17 +9,18 @@
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1">
- <title>Dockerfile Changelog — docker-stack Documentation</title>
- <link rel="stylesheet" href="_static/_gen/css/main.min.css" type="text/css" />
- <link rel="stylesheet" type="text/css" href="_static/pygments.css" />
- <link rel="stylesheet" type="text/css" href="_static/_gen/css/main.min.css" />
- <link rel="stylesheet" type="text/css" href="_static/copybutton.css" />
- <link rel="stylesheet" type="text/css" href="_static/_gen/css/main-custom.min.css" />
- <link rel="shortcut icon" href="_static/pin_32.png"/>
- <link rel="index" title="Index" href="genindex.html" />
- <link rel="search" title="Search" href="search.html" />
- <link rel="next" title="Recipes" href="recipes.html" />
- <link rel="prev" title="Entrypoint" href="entrypoint.html" />
+ <title>airflow.example_dags.example_branch_python_dop_operator_3 — Airflow Documentation</title>
+ <link rel="stylesheet" href="../../../../_static/_gen/css/main.min.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../../../_static/pygments.css" />
+ <link rel="stylesheet" type="text/css" href="../../../../_static/_gen/css/main.min.css" />
+ <link rel="stylesheet" type="text/css" href="../../../../_static/copybutton.css" />
+ <link rel="stylesheet" type="text/css" href="../../../../_static/_gen/css/main-custom.min.css" />
+ <link rel="stylesheet" type="text/css" href="../../../../_static/graphviz.css" />
+ <link rel="shortcut icon" href="../../../../_static/pin_32.png"/>
+ <link rel="index" title="Index" href="../../../../genindex.html" />
+ <link rel="search" title="Search" href="../../../../search.html" />
+ <link rel="next" title="airflow.example_dags.example_complex" href="../example_complex/index.html" />
+ <link rel="prev" title="airflow.example_dags.example_branch_operator_decorator" href="../example_branch_operator_decorator/index.html" />
<!-- Matomo -->
<script>
var _paq = window._paq = window._paq || [];
@@ -280,8 +281,21 @@
<div class="content-drawer">
<div class="td-sidebar">
+<div id="docs-version-selector" class="docs-version-selector sidebar__version-selector">
+ <a class="dropdown-toggle" href="#" id="versionDropdown" role="button" data-toggle="dropdown" aria-haspopup="true"
+ aria-expanded="false">
+ <span class="bodytext__medium--greyish-brown">Version: </span><span class="version">2.4.2</span>
+ </a>
+ <div class="dropdown-menu" aria-labelledby="navbarDropdownMenuLink">
+
+ </div>
+ <script type="application/x-template" id="version-item-template">
+ <a class="dropdown-item"></a>
+ </script>
+</div>
+
<div class="searchb-box">
- <form class="search-form" action="search.html" method="get">
+ <form class="search-form" action="../../../../search.html" method="get">
<input class="search-form__input" type="text" name="q" placeholder="Search docs" size="16">
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
@@ -311,24 +325,119 @@
<div class="toctree" role="navigation" aria-label="main navigation">
- <ul class="current">
-<li class="toctree-l1"><a class="reference internal" href="index.html">Home</a></li>
-<li class="toctree-l1"><a class="reference internal" href="build.html">Building the image</a></li>
-<li class="toctree-l1"><a class="reference internal" href="entrypoint.html">Entrypoint</a></li>
-<li class="toctree-l1 current"><a class="current reference internal" href="#">Dockerfile Changelog</a><ul>
-<li class="toctree-l2"><a class="reference internal" href="#changes-after-publishing-the-images">Changes after publishing the images</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-4">Airflow 2.4</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-3">Airflow 2.3</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-2">Airflow 2.2</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-1">Airflow 2.1</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-0">Airflow 2.0</a></li>
+ <p class="caption" role="heading"><span class="caption-text">Content</span></p>
+<ul>
+<li class="toctree-l1"><a class="reference internal" href="../../../../index.html">Overview</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../project.html">Project</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../license.html">License</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../start.html">Quick Start</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../installation/index.html">Installation</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../upgrading-from-1-10/index.html">Upgrading from 1.10 to 2</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../tutorial/index.html">Tutorials</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../howto/index.html">How-to Guides</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../ui.html">UI / Screenshots</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../concepts/index.html">Concepts</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../executor/index.html">Executor</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../dag-run.html">DAG Runs</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../plugins.html">Plugins</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../security/index.html">Security</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../logging-monitoring/index.html">Logging & Monitoring</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../timezone.html">Time Zones</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../usage-cli.html">Using the CLI</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../integration.html">Integration</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../kubernetes.html">Kubernetes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../lineage.html">Lineage</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../listeners.html">Listeners</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../dag-serialization.html">DAG Serialization</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../modules_management.html">Modules Management</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release-process.html">Release Policies</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release_notes.html">Release Notes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../best-practices.html">Best Practices</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../production-deployment.html">Production Deployment</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../faq.html">FAQ</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../privacy_notice.html">Privacy Notice</a></li>
+</ul>
+<p class="caption" role="heading"><span class="caption-text">References</span></p>
+<ul class="current">
+<li class="toctree-l1"><a class="reference internal" href="../../../../operators-and-hooks-ref.html">Operators and hooks</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../cli-and-env-variables-ref.html">CLI</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../templates-ref.html">Templates</a></li>
+<li class="toctree-l1 current"><a class="reference internal" href="../../../../python-api-ref.html">Python API</a><ul class="current">
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#dags">DAGs</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#operators">Operators</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#hooks">Hooks</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#executors">Executors</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#models">Models</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#exceptions">Exceptions</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#secrets-backends">Secrets Backends</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#timetables">Timetables</a></li>
+<li class="toctree-l2 current"><a class="reference internal" href="../../../../python-api-ref.html#example-dags">Example DAGs</a><ul class="current">
+<li class="toctree-l3 current"><a class="reference internal" href="../index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags</span></code></a><ul class="current">
+<li class="toctree-l4"><a class="reference internal" href="../index.html#subpackages">Subpackages</a></li>
+<li class="toctree-l4 current"><a class="reference internal" href="../index.html#submodules">Submodules</a><ul class="current">
+<li class="toctree-l5"><a class="reference internal" href="../example_bash_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_bash_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_datetime_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_datetime_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_day_of_week_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_day_of_week_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_labels/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_labels</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_operator_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_operator_decorator</span></code></a></li>
+<li class="toctree-l5 current"><a class="current reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_python_dop_operator_3</span></code></a><ul>
+<li class="toctree-l6"><a class="reference internal" href="#module-contents">Module Contents</a><ul>
+<li class="toctree-l7"><a class="reference internal" href="#functions">Functions</a></li>
+<li class="toctree-l7"><a class="reference internal" href="#attributes">Attributes</a><ul>
+<li class="toctree-l8"><a class="reference internal" href="#airflow.example_dags.example_branch_python_dop_operator_3.should_run"><code class="docutils literal notranslate"><span class="pre">should_run()</span></code></a></li>
+<li class="toctree-l8"><a class="reference internal" href="#airflow.example_dags.example_branch_python_dop_operator_3.cond"><code class="docutils literal notranslate"><span class="pre">cond</span></code></a></li>
+<li class="toctree-l8"><a class="reference internal" href="#airflow.example_dags.example_branch_python_dop_operator_3.should_run">should_run</a></li>
+<li class="toctree-l8"><a class="reference internal" href="#airflow.example_dags.example_branch_python_dop_operator_3.cond">cond</a></li>
</ul>
</li>
-<li class="toctree-l1"><a class="reference internal" href="recipes.html">Recipes</a></li>
</ul>
-<p class="caption" role="heading"><span class="caption-text">References</span></p>
+</li>
+</ul>
+</li>
+<li class="toctree-l5"><a class="reference internal" href="../example_complex/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_complex</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_datasets/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_datasets</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_external_task_marker_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_external_task_marker_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_kubernetes_executor/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_kubernetes_executor</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_latest_only/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_latest_only</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_latest_only_with_trigger/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_latest_only_with_trigger</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_local_kubernetes_executor/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_local_kubernetes_executor</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_nested_branch_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_nested_branch_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_passing_params_via_test_command/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_passing_params_via_test_command</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_python_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_python_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_short_circuit_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_short_circuit_decorator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_short_circuit_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_short_circuit_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_skip_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_skip_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_subdag_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_subdag_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_task_group/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_task_group</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_task_group_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_task_group_decorator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_time_delta_sensor_async/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_time_delta_sensor_async</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_trigger_controller_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_trigger_controller_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_trigger_target_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_trigger_target_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_xcom/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_xcom</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_xcomargs/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_xcomargs</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial_taskflow_api/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_taskflow_api</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial_taskflow_api_virtualenv/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_taskflow_api_virtualenv</span></code></a></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#utils">Utils</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../stable-rest-api-ref.html">Stable REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../deprecated-rest-api-ref.html">Deprecated REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../configurations-ref.html">Configurations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../extra-packages-ref.html">Extra packages</a></li>
+</ul>
+<p class="caption" role="heading"><span class="caption-text">Internal DB details</span></p>
<ul>
-<li class="toctree-l1"><a class="reference internal" href="build-arg-ref.html">Image build arguments reference</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../migrations-ref.html">Database Migrations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../database-erd-ref.html">Database ERD Schema</a></li>
</ul>
</div>
@@ -409,8 +518,21 @@
<div class="td-sidebar desktop-only d-print-none">
+<div id="docs-version-selector" class="docs-version-selector sidebar__version-selector">
+ <a class="dropdown-toggle" href="#" id="versionDropdown" role="button" data-toggle="dropdown" aria-haspopup="true"
+ aria-expanded="false">
+ <span class="bodytext__medium--greyish-brown">Version: </span><span class="version">2.4.2</span>
+ </a>
+ <div class="dropdown-menu" aria-labelledby="navbarDropdownMenuLink">
+
+ </div>
+ <script type="application/x-template" id="version-item-template">
+ <a class="dropdown-item"></a>
+ </script>
+</div>
+
<div class="searchb-box">
- <form class="search-form" action="search.html" method="get">
+ <form class="search-form" action="../../../../search.html" method="get">
<input class="search-form__input" type="text" name="q" placeholder="Search docs" size="16">
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
@@ -440,24 +562,119 @@
<div class="toctree" role="navigation" aria-label="main navigation">
- <ul class="current">
-<li class="toctree-l1"><a class="reference internal" href="index.html">Home</a></li>
-<li class="toctree-l1"><a class="reference internal" href="build.html">Building the image</a></li>
-<li class="toctree-l1"><a class="reference internal" href="entrypoint.html">Entrypoint</a></li>
-<li class="toctree-l1 current"><a class="current reference internal" href="#">Dockerfile Changelog</a><ul>
-<li class="toctree-l2"><a class="reference internal" href="#changes-after-publishing-the-images">Changes after publishing the images</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-4">Airflow 2.4</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-3">Airflow 2.3</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-2">Airflow 2.2</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-1">Airflow 2.1</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-0">Airflow 2.0</a></li>
+ <p class="caption" role="heading"><span class="caption-text">Content</span></p>
+<ul>
+<li class="toctree-l1"><a class="reference internal" href="../../../../index.html">Overview</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../project.html">Project</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../license.html">License</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../start.html">Quick Start</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../installation/index.html">Installation</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../upgrading-from-1-10/index.html">Upgrading from 1.10 to 2</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../tutorial/index.html">Tutorials</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../howto/index.html">How-to Guides</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../ui.html">UI / Screenshots</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../concepts/index.html">Concepts</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../executor/index.html">Executor</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../dag-run.html">DAG Runs</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../plugins.html">Plugins</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../security/index.html">Security</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../logging-monitoring/index.html">Logging & Monitoring</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../timezone.html">Time Zones</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../usage-cli.html">Using the CLI</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../integration.html">Integration</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../kubernetes.html">Kubernetes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../lineage.html">Lineage</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../listeners.html">Listeners</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../dag-serialization.html">DAG Serialization</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../modules_management.html">Modules Management</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release-process.html">Release Policies</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release_notes.html">Release Notes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../best-practices.html">Best Practices</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../production-deployment.html">Production Deployment</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../faq.html">FAQ</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../privacy_notice.html">Privacy Notice</a></li>
+</ul>
+<p class="caption" role="heading"><span class="caption-text">References</span></p>
+<ul class="current">
+<li class="toctree-l1"><a class="reference internal" href="../../../../operators-and-hooks-ref.html">Operators and hooks</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../cli-and-env-variables-ref.html">CLI</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../templates-ref.html">Templates</a></li>
+<li class="toctree-l1 current"><a class="reference internal" href="../../../../python-api-ref.html">Python API</a><ul class="current">
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#dags">DAGs</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#operators">Operators</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#hooks">Hooks</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#executors">Executors</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#models">Models</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#exceptions">Exceptions</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#secrets-backends">Secrets Backends</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#timetables">Timetables</a></li>
+<li class="toctree-l2 current"><a class="reference internal" href="../../../../python-api-ref.html#example-dags">Example DAGs</a><ul class="current">
+<li class="toctree-l3 current"><a class="reference internal" href="../index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags</span></code></a><ul class="current">
+<li class="toctree-l4"><a class="reference internal" href="../index.html#subpackages">Subpackages</a></li>
+<li class="toctree-l4 current"><a class="reference internal" href="../index.html#submodules">Submodules</a><ul class="current">
+<li class="toctree-l5"><a class="reference internal" href="../example_bash_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_bash_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_datetime_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_datetime_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_day_of_week_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_day_of_week_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_labels/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_labels</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_operator_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_operator_decorator</span></code></a></li>
+<li class="toctree-l5 current"><a class="current reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_python_dop_operator_3</span></code></a><ul>
+<li class="toctree-l6"><a class="reference internal" href="#module-contents">Module Contents</a><ul>
+<li class="toctree-l7"><a class="reference internal" href="#functions">Functions</a></li>
+<li class="toctree-l7"><a class="reference internal" href="#attributes">Attributes</a><ul>
+<li class="toctree-l8"><a class="reference internal" href="#airflow.example_dags.example_branch_python_dop_operator_3.should_run"><code class="docutils literal notranslate"><span class="pre">should_run()</span></code></a></li>
+<li class="toctree-l8"><a class="reference internal" href="#airflow.example_dags.example_branch_python_dop_operator_3.cond"><code class="docutils literal notranslate"><span class="pre">cond</span></code></a></li>
+<li class="toctree-l8"><a class="reference internal" href="#airflow.example_dags.example_branch_python_dop_operator_3.should_run">should_run</a></li>
+<li class="toctree-l8"><a class="reference internal" href="#airflow.example_dags.example_branch_python_dop_operator_3.cond">cond</a></li>
</ul>
</li>
-<li class="toctree-l1"><a class="reference internal" href="recipes.html">Recipes</a></li>
</ul>
-<p class="caption" role="heading"><span class="caption-text">References</span></p>
+</li>
+</ul>
+</li>
+<li class="toctree-l5"><a class="reference internal" href="../example_complex/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_complex</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_datasets/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_datasets</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_external_task_marker_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_external_task_marker_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_kubernetes_executor/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_kubernetes_executor</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_latest_only/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_latest_only</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_latest_only_with_trigger/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_latest_only_with_trigger</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_local_kubernetes_executor/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_local_kubernetes_executor</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_nested_branch_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_nested_branch_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_passing_params_via_test_command/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_passing_params_via_test_command</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_python_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_python_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_short_circuit_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_short_circuit_decorator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_short_circuit_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_short_circuit_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_skip_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_skip_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_subdag_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_subdag_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_task_group/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_task_group</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_task_group_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_task_group_decorator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_time_delta_sensor_async/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_time_delta_sensor_async</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_trigger_controller_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_trigger_controller_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_trigger_target_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_trigger_target_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_xcom/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_xcom</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_xcomargs/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_xcomargs</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial_taskflow_api/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_taskflow_api</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial_taskflow_api_virtualenv/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_taskflow_api_virtualenv</span></code></a></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#utils">Utils</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../stable-rest-api-ref.html">Stable REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../deprecated-rest-api-ref.html">Deprecated REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../configurations-ref.html">Configurations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../extra-packages-ref.html">Extra packages</a></li>
+</ul>
+<p class="caption" role="heading"><span class="caption-text">Internal DB details</span></p>
<ul>
-<li class="toctree-l1"><a class="reference internal" href="build-arg-ref.html">Image build arguments reference</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../migrations-ref.html">Database Migrations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../database-erd-ref.html">Database ERD Schema</a></li>
</ul>
</div>
@@ -546,9 +763,13 @@
<ul class="breadcrumb">
- <li class="breadcrumb-item"><a href="index.html" class="icon icon-home"> Home</a></li>
+ <li class="breadcrumb-item"><a href="../../../../index.html" class="icon icon-home"> Home</a></li>
+
+ <li class="breadcrumb-item"><a href="../../../../python-api-ref.html">Python API Reference</a></li>
- <li class="breadcrumb-item"><a href="changelog.html"> Dockerfile Changelog</a></li>
+ <li class="breadcrumb-item"><a href="../index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags</span></code></a></li>
+
+ <li class="breadcrumb-item"><a href="index.html"> <code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_python_dop_operator_3</span></code></a></li>
</ul>
</div>
@@ -559,272 +780,71 @@
<div class="bodywrapper">
<div class="body" role="main">
- <blockquote>
-<div></div></blockquote>
-<div class="section" id="dockerfile-changelog">
-<h1>Dockerfile Changelog<a class="headerlink" href="#dockerfile-changelog" title="Permalink to this heading">ΒΆ</a></h1>
-<p>The <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> does not strictly follow the <a class="reference external" href="https://semver.org/">SemVer</a> approach of
-Apache Airflow when it comes to features and backwards compatibility. While Airflow code strictly
-follows it, the <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> is really a way to give users a conveniently packaged Airflow
-using standard container approach, so occasionally there are some changes in the building process
-or in the entrypoint of the image that require slight adaptation of how it is used or built.</p>
-<p>The Changelog below describes the changes introduced in each version of the docker images released by
-the Airflow team.</p>
-<dl class="field-list simple">
-<dt class="field-odd">note</dt>
-<dd class="field-odd"><p>The Changelog below concerns only the convenience production images released at
-<a class="reference external" href="https://hub.docker.com/r/apache/airflow">Airflow DockerHub</a> . The images that are released
-there, are usually built using the <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> released together with Airflow. However You are
-free to take latest released <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> from Airflow and use it to build an image for
-any Airflow version from the <code class="docutils literal notranslate"><span class="pre">Airflow</span> <span class="pre">2</span></code> line. There is no guarantee that it works, but if it does,
-then you can use latest features from that image to build the previous Airflow versions.</p>
-</dd>
-</dl>
-<div class="section" id="changes-after-publishing-the-images">
-<h2>Changes after publishing the images<a class="headerlink" href="#changes-after-publishing-the-images" title="Permalink to this heading">ΒΆ</a></h2>
-<p>Occasionally our images need to be regenerated using newer <code class="docutils literal notranslate"><span class="pre">Dockerfiles</span></code> or constraints.
-This happens when an issue is found or a breaking change is released by our dependencies
-that invalidates the already released image, and regenerating the image makes it usable again.
-While we cannot assure 100% backwards compatibility when it happens, we at least document it
-here so that users affected can find the reason for the changes.</p>
-<table class="docutils align-default">
+ <div class="section" id="module-airflow.example_dags.example_branch_python_dop_operator_3">
+<span id="airflow-example-dags-example-branch-python-dop-operator-3"></span><h1><a class="reference internal" href="#module-airflow.example_dags.example_branch_python_dop_operator_3" title="airflow.example_dags.example_branch_python_dop_operator_3"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_python_dop_operator_3</span></code></a><a class="headerlink" href="#module-airflow.example_dags.example_branch_python_dop_operator_ [...]
+<p>Example DAG demonstrating the usage of <code class="docutils literal notranslate"><span class="pre">@task.branch</span></code> TaskFlow API decorator with depends_on_past=True,
+where tasks may be run or skipped on alternating runs.</p>
+<div class="section" id="module-contents">
+<h2>Module Contents<a class="headerlink" href="#module-contents" title="Permalink to this heading">ΒΆ</a></h2>
+<div class="section" id="functions">
+<h3>Functions<a class="headerlink" href="#functions" title="Permalink to this heading">ΒΆ</a></h3>
+<table class="autosummary longtable docutils align-default">
<colgroup>
<col style="width: 10%" />
-<col style="width: 14%" />
-<col style="width: 28%" />
-<col style="width: 16%" />
-<col style="width: 32%" />
+<col style="width: 90%" />
</colgroup>
-<thead>
-<tr class="row-odd"><th class="head"><p>Date</p></th>
-<th class="head"><p>Affected images</p></th>
-<th class="head"><p>Potentially breaking change</p></th>
-<th class="head"><p>Reason</p></th>
-<th class="head"><p>Link to Pull Request</p></th>
-</tr>
-</thead>
<tbody>
-<tr class="row-even"><td><p>17 June 2022</p></td>
-<td><p>2.2.5</p>
-<p>2.3.0-2.3.2</p>
-</td>
-<td><ul class="simple">
-<li><p>The <code class="docutils literal notranslate"><span class="pre">Authlib</span></code> library downgraded
-from 1.0.1 to 0.15.5 version</p></li>
-</ul>
-</td>
-<td><p>Flask App Builder
-not compatible with
-Authlib >= 1.0.0</p></td>
-<td><p><a class="reference external" href="https://github.com/apache/airflow/pull/24516">https://github.com/apache/airflow/pull/24516</a></p></td>
-</tr>
-<tr class="row-odd"><td><p>18 Jan 2022</p></td>
-<td><p>All 2.2.*, 2.1.*</p></td>
-<td><ul class="simple">
-<li><p>The AIRFLOW_GID 500 was removed</p></li>
-<li><p>MySQL <code class="docutils literal notranslate"><span class="pre">apt</span></code> repository key changed.</p></li>
-</ul>
-</td>
-<td><p>MySQL changed keys
-to sign their packages
-on 17 Jan 2022</p></td>
-<td><p><a class="reference external" href="https://github.com/apache/airflow/pull/20912">https://github.com/apache/airflow/pull/20912</a></p></td>
+<tr class="row-odd"><td><p><a class="reference internal" href="#airflow.example_dags.example_branch_python_dop_operator_3.should_run" title="airflow.example_dags.example_branch_python_dop_operator_3.should_run"><code class="xref py py-obj docutils literal notranslate"><span class="pre">should_run</span></code></a>(**kwargs)</p></td>
+<td><p>Determine which empty_task should be run based on if the execution date minute is even or odd.</p></td>
</tr>
</tbody>
</table>
</div>
-<div class="section" id="airflow-2-4">
-<h2>Airflow 2.4<a class="headerlink" href="#airflow-2-4" title="Permalink to this heading">ΒΆ</a></h2>
-<ul class="simple">
-<li><p>2.4.0</p>
-<ul>
-<li><p>You can specify additional <code class="docutils literal notranslate"><span class="pre">pip</span> <span class="pre">install</span></code> flags when you build the image via <code class="docutils literal notranslate"><span class="pre">ADDITIONAL_PIP_INSTALL_FLAGS</span></code>
-build arg.</p></li>
-<li><p>Support for <code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Buster</span></code> was dropped, including the possibility of building customized images as
-<code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Buster</span></code> reached end of life.</p></li>
-</ul>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-3">
-<h2>Airflow 2.3<a class="headerlink" href="#airflow-2-3" title="Permalink to this heading">ΒΆ</a></h2>
-<ul class="simple">
-<li><p>2.3.0</p>
-<ul>
-<li><p>Airflow 2.3 <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> is now better optimized for caching and βstandaloneβ which means that you
-can copy <strong>just</strong> the <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> to any folder and start building custom images. This
-however requires <a class="reference external" href="https://docs.docker.com/develop/develop-images/build_enhancements/">Buildkit</a>
-to build the image because we started using features that are only available in <code class="docutils literal notranslate"><span class="pre">Buildkit</span></code>.
-This can be done by setting <code class="docutils literal notranslate"><span class="pre">DOCKER_BUILDKIT=1</span></code> as an environment variable
-or by installing <a class="reference external" href="https://docs.docker.com/buildx/working-with-buildx/">the buildx plugin</a>
-and running <code class="docutils literal notranslate"><span class="pre">docker</span> <span class="pre">buildx</span> <span class="pre">build</span></code> command.</p></li>
-<li><p>Add Python 3.10 support</p></li>
-<li><p>Switch to <code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Bullseye</span></code> based images. <code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Buster</span></code> is deprecated and only available for
-customized image building.</p></li>
-<li><p>Add Multi-Platform support (AMD64/ARM64) in order to accommodate MacOS M1 users</p></li>
-<li><p>Build parameters which control if packages and Airflow should be installed from context file were
-unified</p></li>
-<li><p>The <code class="docutils literal notranslate"><span class="pre">INSTALL_FROM_PYPI</span></code> arg was removed - it is automatically detected now.</p></li>
-<li><p>The <code class="docutils literal notranslate"><span class="pre">INSTALL_FROM_DOCKER_CONTEXT_FILES</span></code> arg changed to <code class="docutils literal notranslate"><span class="pre">INSTALL_PACKAGES_FROM_CONTEXT</span></code></p></li>
-</ul>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-2">
-<h2>Airflow 2.2<a class="headerlink" href="#airflow-2-2" title="Permalink to this heading">ΒΆ</a></h2>
-<ul class="simple">
-<li><p>2.2.4
-* Add support for both <code class="docutils literal notranslate"><span class="pre">.piprc</span></code> and <code class="docutils literal notranslate"><span class="pre">pip.conf</span></code> customizations
-* Add ArtifactHub labels for better discovery of the images
-* Update default Python image to be 3.7
-* Build images with <code class="docutils literal notranslate"><span class="pre">Buildkit</span></code> (optional)
-* Fix building the image on Azure with <code class="docutils literal notranslate"><span class="pre">text</span> <span class="pre">file</span> <span class="pre">busy</span></code> error</p></li>
-<li><p>2.2.3
-* No changes</p></li>
-<li><p>2.2.2
-* No changes</p></li>
-<li><p>2.2.1
-* Workaround the problem with <code class="docutils literal notranslate"><span class="pre">libstdcpp</span></code> TLS error</p></li>
-<li><p>2.2.0
-* Remove AIRFLOW_GID (5000) from Airflow images (potentially breaking change for users using it)
-* Added warnings for Quick-start docker compose
-* Fix warm shutdown for celery worker (signal propagation)
-* Add Oauth libraries to PROD images
-* Add Python 3.9 support</p></li>
-</ul>
-</div>
-<div class="section" id="airflow-2-1">
-<h2>Airflow 2.1<a class="headerlink" href="#airflow-2-1" title="Permalink to this heading">ΒΆ</a></h2>
-<ul>
-<li><p>MySQL changed the keys to sign their packages on 17 Feb 2022. This caused all released images
-to fail when being extended. As result, on 18 Feb 2021 we re-released all
-the <code class="docutils literal notranslate"><span class="pre">2.2</span></code> and <code class="docutils literal notranslate"><span class="pre">2.1</span></code> images with latest versions of <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code>
-containing the new signing key.</p>
-<p>There were subtle changes in the behaviour of some 2.1 images due to that (more details below)
-Detailed <a class="reference external" href="https://github.com/apache/airflow/issues/20911">issue here</a></p>
-</li>
-</ul>
+<div class="section" id="attributes">
+<h3>Attributes<a class="headerlink" href="#attributes" title="Permalink to this heading">ΒΆ</a></h3>
+<table class="autosummary longtable docutils align-default">
+<colgroup>
+<col style="width: 10%" />
+<col style="width: 90%" />
+</colgroup>
+<tbody>
+<tr class="row-odd"><td><p><a class="reference internal" href="#airflow.example_dags.example_branch_python_dop_operator_3.cond" title="airflow.example_dags.example_branch_python_dop_operator_3.cond"><code class="xref py py-obj docutils literal notranslate"><span class="pre">cond</span></code></a></p></td>
+<td><p></p></td>
+</tr>
+</tbody>
+</table>
+<dl class="py function">
+<dt class="sig sig-object py" id="airflow.example_dags.example_branch_python_dop_operator_3.should_run">
+<span class="sig-prename descclassname"><span class="pre">airflow.example_dags.example_branch_python_dop_operator_3.</span></span><span class="sig-name descname"><span class="pre">should_run</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../../../../_modules/airflow/example_dags/example_branch_ [...]
+<dd><p>Determine which empty_task should be run based on if the execution date minute is even or odd.</p>
<dl class="field-list simple">
-<dt class="field-odd">note</dt>
-<dd class="field-odd"><p>that the changes below were valid before image refreshing on 18 Feb 2022.
-Since all the images were refreshed on 18 Feb with the same <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code>
-as 2.1.4, the changes 2.1.1 -> 2.1.3 are
-effectively applied to all the images in 2.1.* line.
-The images refreshed have also those fixes added:</p>
+<dt class="field-odd">Parameters</dt>
+<dd class="field-odd"><p><strong>kwargs</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#dict" title="(in Python v3.10)"><em>dict</em></a>) β Context</p>
</dd>
-</dl>
-<ul class="simple">
-<li><p>All 2.1.* image versions refreshed on 18 Feb 2022 have those fixes applied:
-* Fix building the image on Azure with <code class="docutils literal notranslate"><span class="pre">text</span> <span class="pre">file</span> <span class="pre">busy</span></code> error
-* Workaround the problem with <code class="docutils literal notranslate"><span class="pre">libstdcpp</span></code> TLS error
-* Remove AIRFLOW_GID (5000) from Airflow images (potentially breaking change for users using it)
-* Added warnings for Quick-start docker compose
-* Add Oauth libraries to PROD images</p></li>
-</ul>
-<p>Original image Changelog (before the refresh on 18 Feb 2022):</p>
-<ul class="simple">
-<li><dl class="simple">
-<dt>2.1.4</dt><dd><ul>
-<li><p>Workaround the problem with <code class="docutils literal notranslate"><span class="pre">libstdcpp</span></code> TLS error</p></li>
-<li><p>fixed detection of port number in connection URL</p></li>
-<li><p>Improve warnings for quick-start-docker compose</p></li>
-<li><p>Fix warm shutdown for celery worker (signal propagation)</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.3</dt><dd><ul>
-<li><p>fixed auto-creation of user to use non-deprecated <code class="docutils literal notranslate"><span class="pre">create</span> <span class="pre">user</span></code> rather than <code class="docutils literal notranslate"><span class="pre">user_create</span></code></p></li>
-<li><p>remove waiting for celery backend for <code class="docutils literal notranslate"><span class="pre">worker</span></code> and <code class="docutils literal notranslate"><span class="pre">flower</span></code> commands rather than <code class="docutils literal notranslate"><span class="pre">scheduler</span></code> and <code class="docutils literal notranslate"><span class="pre">celery</span></code> only</p></li>
-<li><p>remove deprecated <code class="docutils literal notranslate"><span class="pre">airflow</span> <span class="pre">upgradedb</span></code> command from Airflow 1.10 in case upgrade is requested</p></li>
-<li><p>Add Python 3.9 support</p></li>
-</ul>
+<dt class="field-even">Returns</dt>
+<dd class="field-even"><p>Id of the task to run</p>
</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.2</dt><dd><ul>
-<li><p>No changes</p></li>
-</ul>
+<dt class="field-odd">Return type</dt>
+<dd class="field-odd"><p><a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.10)">str</a></p>
</dd>
</dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.1</dt><dd><ul>
-<li><p>Fix failure of lack of default commands (failed when no commands were passed)</p></li>
-<li><p>Added <code class="docutils literal notranslate"><span class="pre">_PIP_ADDITIONAL_REQUIREMENTS</span></code> development feature</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.0</dt><dd><ul>
-<li><p>Unset default <code class="docutils literal notranslate"><span class="pre">PIP_USER</span></code> variable - which caused PythonVirtualEnv to fail</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-</ul>
+</dd></dl>
+
+<dl class="py data">
+<dt class="sig sig-object py" id="airflow.example_dags.example_branch_python_dop_operator_3.cond">
+<span class="sig-prename descclassname"><span class="pre">airflow.example_dags.example_branch_python_dop_operator_3.</span></span><span class="sig-name descname"><span class="pre">cond</span></span><a class="reference internal" href="../../../../_modules/airflow/example_dags/example_branch_python_dop_operator_3.html#cond"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow.example_dags.example_branch_python_dop_operator_3.cond" tit [...]
+<dd></dd></dl>
+
</div>
-<div class="section" id="airflow-2-0">
-<h2>Airflow 2.0<a class="headerlink" href="#airflow-2-0" title="Permalink to this heading">ΒΆ</a></h2>
-<ul>
-<li><p>MySQL changed the keys to sign their packages on 17 Feb 2022. This caused all released images
-to fail when being extended. As result, on 18 Feb 2021 we re-released all
-the <code class="docutils literal notranslate"><span class="pre">2.2</span></code> and <code class="docutils literal notranslate"><span class="pre">2.1</span></code> images with latest versions of <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code>
-containing the new signing key.</p>
-<p>There were no changes in the behaviour of 2.0.2 image due to that
-Detailed <a class="reference external" href="https://github.com/apache/airflow/issues/20911">issue here</a> .
-Only 2.0.2 image was regenerated, as 2.0.1 and 2.0.0 versions are hardly used and it is unlikely someone
-would like to extend those images. Extending 2.0.1 and 2.0.0 images will lead to failures of βmissing keyβ.</p>
-</li>
-<li><dl class="simple">
-<dt>2.0.2</dt><dd><ul class="simple">
-<li><p>Set correct PYTHONPATH for <code class="docutils literal notranslate"><span class="pre">root</span></code> user. Allows to run the image as root</p></li>
-<li><p>Warn if the deprecated 5000 group ID was used for airflow user when running the image
-(should be 0 for the OpenShift compatibility). Fails if the group 5000 was used with any other user
-(it would not work anyway but with cryptic errors)</p></li>
-<li><p>Set umask as 002 by default, so that you can actually change the user id used to run the image
-(required for OpenShift compatibility)</p></li>
-<li><p>Skip checking the DB and celery backend if CONNECTION_CHECK_MAX_COUNT is equal to 0</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.0.1</dt><dd><ul class="simple">
-<li><p>Avoid reverse IP lookup when checking DB availability. This helped to solve long delays on misconfigured
-docker engines</p></li>
-<li><p>Add auto-detection of redis and amqp broker ports</p></li>
-<li><p>Fixed detection of all user/password combinations in URLs - helps in auto-detecting ports and testing
-connectivity</p></li>
-<li><p>Add possibility to create Admin user automatically when entering the image</p></li>
-<li><p>Automatically create system user when different user than <code class="docutils literal notranslate"><span class="pre">airflow</span></code> is used. Needed for OpenShift
-compatibility</p></li>
-<li><p>Allows to exec to <code class="docutils literal notranslate"><span class="pre">bash</span></code> or <code class="docutils literal notranslate"><span class="pre">python</span></code> if specified as parameters</p></li>
-<li><p>Remove <code class="docutils literal notranslate"><span class="pre">airflow</span></code> command if it is specified as first parameter of the <code class="docutils literal notranslate"><span class="pre">run</span></code> command</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.0.0</dt><dd><ul class="simple">
-<li><p>Initial release of the image based on Debian Buster</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-</ul>
</div>
</div>
<div class="pager" role="navigation" aria-label="related navigation">
- <a rel="prev" title="Entrypoint" href="entrypoint.html" >
+ <a rel="prev" title="airflow.example_dags.example_branch_operator_decorator" href="../example_branch_operator_decorator/index.html" >
<button class="btn-hollow btn-blue bodytext__medium--cerulean-blue" accesskey="p">Previous</button>
</a>
- <a rel="next" title="Recipes" href="recipes.html" >
+ <a rel="next" title="airflow.example_dags.example_complex" href="../example_complex/index.html" >
<button class="btn-hollow btn-blue bodytext__medium--cerulean-blue" accesskey="n">Next</button>
</a>
</div>
@@ -894,13 +914,18 @@ compatibility</p></li>
<nav class="wy-nav-side-toc">
<div class="wy-menu-vertical">
<ul>
-<li><a class="reference internal" href="#">Dockerfile Changelog</a><ul>
-<li><a class="reference internal" href="#changes-after-publishing-the-images">Changes after publishing the images</a></li>
-<li><a class="reference internal" href="#airflow-2-4">Airflow 2.4</a></li>
-<li><a class="reference internal" href="#airflow-2-3">Airflow 2.3</a></li>
-<li><a class="reference internal" href="#airflow-2-2">Airflow 2.2</a></li>
-<li><a class="reference internal" href="#airflow-2-1">Airflow 2.1</a></li>
-<li><a class="reference internal" href="#airflow-2-0">Airflow 2.0</a></li>
+<li><a class="reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_python_dop_operator_3</span></code></a><ul>
+<li><a class="reference internal" href="#module-contents">Module Contents</a><ul>
+<li><a class="reference internal" href="#functions">Functions</a></li>
+<li><a class="reference internal" href="#attributes">Attributes</a><ul>
+<li><a class="reference internal" href="#airflow.example_dags.example_branch_python_dop_operator_3.should_run"><code class="docutils literal notranslate"><span class="pre">should_run()</span></code></a></li>
+<li><a class="reference internal" href="#airflow.example_dags.example_branch_python_dop_operator_3.cond"><code class="docutils literal notranslate"><span class="pre">cond</span></code></a></li>
+<li><a class="reference internal" href="#airflow.example_dags.example_branch_python_dop_operator_3.should_run">should_run</a></li>
+<li><a class="reference internal" href="#airflow.example_dags.example_branch_python_dop_operator_3.cond">cond</a></li>
+</ul>
+</li>
+</ul>
+</li>
</ul>
</li>
</ul>
@@ -925,7 +950,7 @@ compatibility</p></li>
<div class="base-layout--button">
- <a href="https://github.com/apache/airflow/edit/main/docs/docker-stack/changelog.rst" rel="nofollow">
+ <a href="https://github.com/apache/airflow/edit/main/docs/apache-airflow/_api/airflow/example_dags/example_branch_python_dop_operator_3/index.rst" rel="nofollow">
<button class="btn-hollow btn-brown btn-with-icon with-box-shadow button-fixed">
<svg xmlns="http://www.w3.org/2000/svg" width="30.76" height="30">
@@ -1059,18 +1084,20 @@ compatibility</p></li>
</span>
</div>
</footer>
- <script type="text/javascript" src="_static/_gen/js/docs.js"></script>
- <script type="text/javascript" id="documentation_options" data-url_root="./" src="_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../../../_static/_gen/js/docs.js"></script>
+ <script type="text/javascript" id="documentation_options" data-url_root="../../../../" src="../../../../_static/documentation_options.js"></script>
<script src="https://code.jquery.com/jquery-3.4.1.min.js" integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo=" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.3/umd/popper.min.js" integrity="sha384-ZMP7rVo3mIykV+2+9J3UJ46jBk0WLaUAdn689aCwoqbBJiSnjAK/l8WvCWPIPm49" crossorigin="anonymous"></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/js/bootstrap.min.js" integrity="sha384-ChfqqxuZUCnJSK3+MXmPNIyE6ZbWh2IMqE241rYiqJxyMiZ6OW/JmZQ5stwEULTy" crossorigin="anonymous"></script>
- <script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script>
- <script src="_static/jquery.js"></script>
- <script src="_static/underscore.js"></script>
- <script src="_static/_sphinx_javascript_frameworks_compat.js"></script>
- <script src="_static/doctools.js"></script>
- <script src="_static/clipboard.min.js"></script>
- <script src="_static/copybutton.js"></script>
- <script src="_static/js/globaltoc.js"></script>
+ <script data-url_root="../../../../" id="documentation_options" src="../../../../_static/documentation_options.js"></script>
+ <script src="../../../../_static/jquery.js"></script>
+ <script src="../../../../_static/underscore.js"></script>
+ <script src="../../../../_static/_sphinx_javascript_frameworks_compat.js"></script>
+ <script src="../../../../_static/doctools.js"></script>
+ <script src="../../../../_static/sphinx_highlight.js"></script>
+ <script src="../../../../_static/clipboard.min.js"></script>
+ <script src="../../../../_static/copybutton.js"></script>
+ <script src="../../../../_static/js/globaltoc.js"></script>
+ <script src="../../../../_static/gh-jira-links.js"></script>
</body>
</html>
\ No newline at end of file
diff --git a/docs-archive/docker-stack/changelog.html b/docs-archive/apache-airflow/2.4.2/_api/airflow/example_dags/example_complex/index.html
similarity index 69%
copy from docs-archive/docker-stack/changelog.html
copy to docs-archive/apache-airflow/2.4.2/_api/airflow/example_dags/example_complex/index.html
index 2fa2b8d179..0490666324 100644
--- a/docs-archive/docker-stack/changelog.html
+++ b/docs-archive/apache-airflow/2.4.2/_api/airflow/example_dags/example_complex/index.html
@@ -9,17 +9,18 @@
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1">
- <title>Dockerfile Changelog — docker-stack Documentation</title>
- <link rel="stylesheet" href="_static/_gen/css/main.min.css" type="text/css" />
- <link rel="stylesheet" type="text/css" href="_static/pygments.css" />
- <link rel="stylesheet" type="text/css" href="_static/_gen/css/main.min.css" />
- <link rel="stylesheet" type="text/css" href="_static/copybutton.css" />
- <link rel="stylesheet" type="text/css" href="_static/_gen/css/main-custom.min.css" />
- <link rel="shortcut icon" href="_static/pin_32.png"/>
- <link rel="index" title="Index" href="genindex.html" />
- <link rel="search" title="Search" href="search.html" />
- <link rel="next" title="Recipes" href="recipes.html" />
- <link rel="prev" title="Entrypoint" href="entrypoint.html" />
+ <title>airflow.example_dags.example_complex — Airflow Documentation</title>
+ <link rel="stylesheet" href="../../../../_static/_gen/css/main.min.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../../../_static/pygments.css" />
+ <link rel="stylesheet" type="text/css" href="../../../../_static/_gen/css/main.min.css" />
+ <link rel="stylesheet" type="text/css" href="../../../../_static/copybutton.css" />
+ <link rel="stylesheet" type="text/css" href="../../../../_static/_gen/css/main-custom.min.css" />
+ <link rel="stylesheet" type="text/css" href="../../../../_static/graphviz.css" />
+ <link rel="shortcut icon" href="../../../../_static/pin_32.png"/>
+ <link rel="index" title="Index" href="../../../../genindex.html" />
+ <link rel="search" title="Search" href="../../../../search.html" />
+ <link rel="next" title="airflow.example_dags.example_datasets" href="../example_datasets/index.html" />
+ <link rel="prev" title="airflow.example_dags.example_branch_python_dop_operator_3" href="../example_branch_python_dop_operator_3/index.html" />
<!-- Matomo -->
<script>
var _paq = window._paq = window._paq || [];
@@ -280,8 +281,21 @@
<div class="content-drawer">
<div class="td-sidebar">
+<div id="docs-version-selector" class="docs-version-selector sidebar__version-selector">
+ <a class="dropdown-toggle" href="#" id="versionDropdown" role="button" data-toggle="dropdown" aria-haspopup="true"
+ aria-expanded="false">
+ <span class="bodytext__medium--greyish-brown">Version: </span><span class="version">2.4.2</span>
+ </a>
+ <div class="dropdown-menu" aria-labelledby="navbarDropdownMenuLink">
+
+ </div>
+ <script type="application/x-template" id="version-item-template">
+ <a class="dropdown-item"></a>
+ </script>
+</div>
+
<div class="searchb-box">
- <form class="search-form" action="search.html" method="get">
+ <form class="search-form" action="../../../../search.html" method="get">
<input class="search-form__input" type="text" name="q" placeholder="Search docs" size="16">
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
@@ -311,24 +325,113 @@
<div class="toctree" role="navigation" aria-label="main navigation">
- <ul class="current">
-<li class="toctree-l1"><a class="reference internal" href="index.html">Home</a></li>
-<li class="toctree-l1"><a class="reference internal" href="build.html">Building the image</a></li>
-<li class="toctree-l1"><a class="reference internal" href="entrypoint.html">Entrypoint</a></li>
-<li class="toctree-l1 current"><a class="current reference internal" href="#">Dockerfile Changelog</a><ul>
-<li class="toctree-l2"><a class="reference internal" href="#changes-after-publishing-the-images">Changes after publishing the images</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-4">Airflow 2.4</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-3">Airflow 2.3</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-2">Airflow 2.2</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-1">Airflow 2.1</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-0">Airflow 2.0</a></li>
+ <p class="caption" role="heading"><span class="caption-text">Content</span></p>
+<ul>
+<li class="toctree-l1"><a class="reference internal" href="../../../../index.html">Overview</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../project.html">Project</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../license.html">License</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../start.html">Quick Start</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../installation/index.html">Installation</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../upgrading-from-1-10/index.html">Upgrading from 1.10 to 2</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../tutorial/index.html">Tutorials</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../howto/index.html">How-to Guides</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../ui.html">UI / Screenshots</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../concepts/index.html">Concepts</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../executor/index.html">Executor</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../dag-run.html">DAG Runs</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../plugins.html">Plugins</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../security/index.html">Security</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../logging-monitoring/index.html">Logging & Monitoring</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../timezone.html">Time Zones</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../usage-cli.html">Using the CLI</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../integration.html">Integration</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../kubernetes.html">Kubernetes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../lineage.html">Lineage</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../listeners.html">Listeners</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../dag-serialization.html">DAG Serialization</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../modules_management.html">Modules Management</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release-process.html">Release Policies</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release_notes.html">Release Notes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../best-practices.html">Best Practices</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../production-deployment.html">Production Deployment</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../faq.html">FAQ</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../privacy_notice.html">Privacy Notice</a></li>
+</ul>
+<p class="caption" role="heading"><span class="caption-text">References</span></p>
+<ul class="current">
+<li class="toctree-l1"><a class="reference internal" href="../../../../operators-and-hooks-ref.html">Operators and hooks</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../cli-and-env-variables-ref.html">CLI</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../templates-ref.html">Templates</a></li>
+<li class="toctree-l1 current"><a class="reference internal" href="../../../../python-api-ref.html">Python API</a><ul class="current">
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#dags">DAGs</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#operators">Operators</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#hooks">Hooks</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#executors">Executors</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#models">Models</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#exceptions">Exceptions</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#secrets-backends">Secrets Backends</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#timetables">Timetables</a></li>
+<li class="toctree-l2 current"><a class="reference internal" href="../../../../python-api-ref.html#example-dags">Example DAGs</a><ul class="current">
+<li class="toctree-l3 current"><a class="reference internal" href="../index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags</span></code></a><ul class="current">
+<li class="toctree-l4"><a class="reference internal" href="../index.html#subpackages">Subpackages</a></li>
+<li class="toctree-l4 current"><a class="reference internal" href="../index.html#submodules">Submodules</a><ul class="current">
+<li class="toctree-l5"><a class="reference internal" href="../example_bash_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_bash_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_datetime_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_datetime_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_day_of_week_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_day_of_week_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_labels/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_labels</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_operator_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_operator_decorator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_python_dop_operator_3/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_python_dop_operator_3</span></code></a></li>
+<li class="toctree-l5 current"><a class="current reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_complex</span></code></a><ul>
+<li class="toctree-l6"><a class="reference internal" href="#module-contents">Module Contents</a><ul>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_complex.create_entry_group"><code class="docutils literal notranslate"><span class="pre">create_entry_group</span></code></a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_complex.create_entry_group">create_entry_group</a></li>
</ul>
</li>
-<li class="toctree-l1"><a class="reference internal" href="recipes.html">Recipes</a></li>
</ul>
-<p class="caption" role="heading"><span class="caption-text">References</span></p>
+</li>
+<li class="toctree-l5"><a class="reference internal" href="../example_datasets/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_datasets</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_external_task_marker_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_external_task_marker_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_kubernetes_executor/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_kubernetes_executor</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_latest_only/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_latest_only</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_latest_only_with_trigger/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_latest_only_with_trigger</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_local_kubernetes_executor/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_local_kubernetes_executor</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_nested_branch_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_nested_branch_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_passing_params_via_test_command/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_passing_params_via_test_command</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_python_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_python_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_short_circuit_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_short_circuit_decorator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_short_circuit_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_short_circuit_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_skip_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_skip_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_subdag_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_subdag_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_task_group/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_task_group</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_task_group_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_task_group_decorator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_time_delta_sensor_async/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_time_delta_sensor_async</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_trigger_controller_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_trigger_controller_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_trigger_target_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_trigger_target_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_xcom/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_xcom</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_xcomargs/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_xcomargs</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial_taskflow_api/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_taskflow_api</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial_taskflow_api_virtualenv/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_taskflow_api_virtualenv</span></code></a></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#utils">Utils</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../stable-rest-api-ref.html">Stable REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../deprecated-rest-api-ref.html">Deprecated REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../configurations-ref.html">Configurations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../extra-packages-ref.html">Extra packages</a></li>
+</ul>
+<p class="caption" role="heading"><span class="caption-text">Internal DB details</span></p>
<ul>
-<li class="toctree-l1"><a class="reference internal" href="build-arg-ref.html">Image build arguments reference</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../migrations-ref.html">Database Migrations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../database-erd-ref.html">Database ERD Schema</a></li>
</ul>
</div>
@@ -409,8 +512,21 @@
<div class="td-sidebar desktop-only d-print-none">
+<div id="docs-version-selector" class="docs-version-selector sidebar__version-selector">
+ <a class="dropdown-toggle" href="#" id="versionDropdown" role="button" data-toggle="dropdown" aria-haspopup="true"
+ aria-expanded="false">
+ <span class="bodytext__medium--greyish-brown">Version: </span><span class="version">2.4.2</span>
+ </a>
+ <div class="dropdown-menu" aria-labelledby="navbarDropdownMenuLink">
+
+ </div>
+ <script type="application/x-template" id="version-item-template">
+ <a class="dropdown-item"></a>
+ </script>
+</div>
+
<div class="searchb-box">
- <form class="search-form" action="search.html" method="get">
+ <form class="search-form" action="../../../../search.html" method="get">
<input class="search-form__input" type="text" name="q" placeholder="Search docs" size="16">
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
@@ -440,24 +556,113 @@
<div class="toctree" role="navigation" aria-label="main navigation">
- <ul class="current">
-<li class="toctree-l1"><a class="reference internal" href="index.html">Home</a></li>
-<li class="toctree-l1"><a class="reference internal" href="build.html">Building the image</a></li>
-<li class="toctree-l1"><a class="reference internal" href="entrypoint.html">Entrypoint</a></li>
-<li class="toctree-l1 current"><a class="current reference internal" href="#">Dockerfile Changelog</a><ul>
-<li class="toctree-l2"><a class="reference internal" href="#changes-after-publishing-the-images">Changes after publishing the images</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-4">Airflow 2.4</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-3">Airflow 2.3</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-2">Airflow 2.2</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-1">Airflow 2.1</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-0">Airflow 2.0</a></li>
+ <p class="caption" role="heading"><span class="caption-text">Content</span></p>
+<ul>
+<li class="toctree-l1"><a class="reference internal" href="../../../../index.html">Overview</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../project.html">Project</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../license.html">License</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../start.html">Quick Start</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../installation/index.html">Installation</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../upgrading-from-1-10/index.html">Upgrading from 1.10 to 2</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../tutorial/index.html">Tutorials</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../howto/index.html">How-to Guides</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../ui.html">UI / Screenshots</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../concepts/index.html">Concepts</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../executor/index.html">Executor</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../dag-run.html">DAG Runs</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../plugins.html">Plugins</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../security/index.html">Security</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../logging-monitoring/index.html">Logging & Monitoring</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../timezone.html">Time Zones</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../usage-cli.html">Using the CLI</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../integration.html">Integration</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../kubernetes.html">Kubernetes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../lineage.html">Lineage</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../listeners.html">Listeners</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../dag-serialization.html">DAG Serialization</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../modules_management.html">Modules Management</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release-process.html">Release Policies</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release_notes.html">Release Notes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../best-practices.html">Best Practices</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../production-deployment.html">Production Deployment</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../faq.html">FAQ</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../privacy_notice.html">Privacy Notice</a></li>
+</ul>
+<p class="caption" role="heading"><span class="caption-text">References</span></p>
+<ul class="current">
+<li class="toctree-l1"><a class="reference internal" href="../../../../operators-and-hooks-ref.html">Operators and hooks</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../cli-and-env-variables-ref.html">CLI</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../templates-ref.html">Templates</a></li>
+<li class="toctree-l1 current"><a class="reference internal" href="../../../../python-api-ref.html">Python API</a><ul class="current">
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#dags">DAGs</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#operators">Operators</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#hooks">Hooks</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#executors">Executors</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#models">Models</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#exceptions">Exceptions</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#secrets-backends">Secrets Backends</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#timetables">Timetables</a></li>
+<li class="toctree-l2 current"><a class="reference internal" href="../../../../python-api-ref.html#example-dags">Example DAGs</a><ul class="current">
+<li class="toctree-l3 current"><a class="reference internal" href="../index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags</span></code></a><ul class="current">
+<li class="toctree-l4"><a class="reference internal" href="../index.html#subpackages">Subpackages</a></li>
+<li class="toctree-l4 current"><a class="reference internal" href="../index.html#submodules">Submodules</a><ul class="current">
+<li class="toctree-l5"><a class="reference internal" href="../example_bash_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_bash_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_datetime_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_datetime_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_day_of_week_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_day_of_week_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_labels/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_labels</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_operator_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_operator_decorator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_python_dop_operator_3/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_python_dop_operator_3</span></code></a></li>
+<li class="toctree-l5 current"><a class="current reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_complex</span></code></a><ul>
+<li class="toctree-l6"><a class="reference internal" href="#module-contents">Module Contents</a><ul>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_complex.create_entry_group"><code class="docutils literal notranslate"><span class="pre">create_entry_group</span></code></a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_complex.create_entry_group">create_entry_group</a></li>
</ul>
</li>
-<li class="toctree-l1"><a class="reference internal" href="recipes.html">Recipes</a></li>
</ul>
-<p class="caption" role="heading"><span class="caption-text">References</span></p>
+</li>
+<li class="toctree-l5"><a class="reference internal" href="../example_datasets/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_datasets</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_external_task_marker_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_external_task_marker_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_kubernetes_executor/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_kubernetes_executor</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_latest_only/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_latest_only</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_latest_only_with_trigger/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_latest_only_with_trigger</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_local_kubernetes_executor/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_local_kubernetes_executor</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_nested_branch_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_nested_branch_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_passing_params_via_test_command/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_passing_params_via_test_command</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_python_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_python_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_short_circuit_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_short_circuit_decorator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_short_circuit_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_short_circuit_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_skip_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_skip_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_subdag_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_subdag_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_task_group/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_task_group</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_task_group_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_task_group_decorator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_time_delta_sensor_async/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_time_delta_sensor_async</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_trigger_controller_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_trigger_controller_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_trigger_target_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_trigger_target_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_xcom/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_xcom</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_xcomargs/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_xcomargs</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial_taskflow_api/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_taskflow_api</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial_taskflow_api_virtualenv/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_taskflow_api_virtualenv</span></code></a></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#utils">Utils</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../stable-rest-api-ref.html">Stable REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../deprecated-rest-api-ref.html">Deprecated REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../configurations-ref.html">Configurations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../extra-packages-ref.html">Extra packages</a></li>
+</ul>
+<p class="caption" role="heading"><span class="caption-text">Internal DB details</span></p>
<ul>
-<li class="toctree-l1"><a class="reference internal" href="build-arg-ref.html">Image build arguments reference</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../migrations-ref.html">Database Migrations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../database-erd-ref.html">Database ERD Schema</a></li>
</ul>
</div>
@@ -546,9 +751,13 @@
<ul class="breadcrumb">
- <li class="breadcrumb-item"><a href="index.html" class="icon icon-home"> Home</a></li>
+ <li class="breadcrumb-item"><a href="../../../../index.html" class="icon icon-home"> Home</a></li>
+
+ <li class="breadcrumb-item"><a href="../../../../python-api-ref.html">Python API Reference</a></li>
+
+ <li class="breadcrumb-item"><a href="../index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags</span></code></a></li>
- <li class="breadcrumb-item"><a href="changelog.html"> Dockerfile Changelog</a></li>
+ <li class="breadcrumb-item"><a href="index.html"> <code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_complex</span></code></a></li>
</ul>
</div>
@@ -559,272 +768,25 @@
<div class="bodywrapper">
<div class="body" role="main">
- <blockquote>
-<div></div></blockquote>
-<div class="section" id="dockerfile-changelog">
-<h1>Dockerfile Changelog<a class="headerlink" href="#dockerfile-changelog" title="Permalink to this heading">ΒΆ</a></h1>
-<p>The <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> does not strictly follow the <a class="reference external" href="https://semver.org/">SemVer</a> approach of
-Apache Airflow when it comes to features and backwards compatibility. While Airflow code strictly
-follows it, the <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> is really a way to give users a conveniently packaged Airflow
-using standard container approach, so occasionally there are some changes in the building process
-or in the entrypoint of the image that require slight adaptation of how it is used or built.</p>
-<p>The Changelog below describes the changes introduced in each version of the docker images released by
-the Airflow team.</p>
-<dl class="field-list simple">
-<dt class="field-odd">note</dt>
-<dd class="field-odd"><p>The Changelog below concerns only the convenience production images released at
-<a class="reference external" href="https://hub.docker.com/r/apache/airflow">Airflow DockerHub</a> . The images that are released
-there, are usually built using the <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> released together with Airflow. However You are
-free to take latest released <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> from Airflow and use it to build an image for
-any Airflow version from the <code class="docutils literal notranslate"><span class="pre">Airflow</span> <span class="pre">2</span></code> line. There is no guarantee that it works, but if it does,
-then you can use latest features from that image to build the previous Airflow versions.</p>
-</dd>
-</dl>
-<div class="section" id="changes-after-publishing-the-images">
-<h2>Changes after publishing the images<a class="headerlink" href="#changes-after-publishing-the-images" title="Permalink to this heading">ΒΆ</a></h2>
-<p>Occasionally our images need to be regenerated using newer <code class="docutils literal notranslate"><span class="pre">Dockerfiles</span></code> or constraints.
-This happens when an issue is found or a breaking change is released by our dependencies
-that invalidates the already released image, and regenerating the image makes it usable again.
-While we cannot assure 100% backwards compatibility when it happens, we at least document it
-here so that users affected can find the reason for the changes.</p>
-<table class="docutils align-default">
-<colgroup>
-<col style="width: 10%" />
-<col style="width: 14%" />
-<col style="width: 28%" />
-<col style="width: 16%" />
-<col style="width: 32%" />
-</colgroup>
-<thead>
-<tr class="row-odd"><th class="head"><p>Date</p></th>
-<th class="head"><p>Affected images</p></th>
-<th class="head"><p>Potentially breaking change</p></th>
-<th class="head"><p>Reason</p></th>
-<th class="head"><p>Link to Pull Request</p></th>
-</tr>
-</thead>
-<tbody>
-<tr class="row-even"><td><p>17 June 2022</p></td>
-<td><p>2.2.5</p>
-<p>2.3.0-2.3.2</p>
-</td>
-<td><ul class="simple">
-<li><p>The <code class="docutils literal notranslate"><span class="pre">Authlib</span></code> library downgraded
-from 1.0.1 to 0.15.5 version</p></li>
-</ul>
-</td>
-<td><p>Flask App Builder
-not compatible with
-Authlib >= 1.0.0</p></td>
-<td><p><a class="reference external" href="https://github.com/apache/airflow/pull/24516">https://github.com/apache/airflow/pull/24516</a></p></td>
-</tr>
-<tr class="row-odd"><td><p>18 Jan 2022</p></td>
-<td><p>All 2.2.*, 2.1.*</p></td>
-<td><ul class="simple">
-<li><p>The AIRFLOW_GID 500 was removed</p></li>
-<li><p>MySQL <code class="docutils literal notranslate"><span class="pre">apt</span></code> repository key changed.</p></li>
-</ul>
-</td>
-<td><p>MySQL changed keys
-to sign their packages
-on 17 Jan 2022</p></td>
-<td><p><a class="reference external" href="https://github.com/apache/airflow/pull/20912">https://github.com/apache/airflow/pull/20912</a></p></td>
-</tr>
-</tbody>
-</table>
-</div>
-<div class="section" id="airflow-2-4">
-<h2>Airflow 2.4<a class="headerlink" href="#airflow-2-4" title="Permalink to this heading">ΒΆ</a></h2>
-<ul class="simple">
-<li><p>2.4.0</p>
-<ul>
-<li><p>You can specify additional <code class="docutils literal notranslate"><span class="pre">pip</span> <span class="pre">install</span></code> flags when you build the image via <code class="docutils literal notranslate"><span class="pre">ADDITIONAL_PIP_INSTALL_FLAGS</span></code>
-build arg.</p></li>
-<li><p>Support for <code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Buster</span></code> was dropped, including the possibility of building customized images as
-<code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Buster</span></code> reached end of life.</p></li>
-</ul>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-3">
-<h2>Airflow 2.3<a class="headerlink" href="#airflow-2-3" title="Permalink to this heading">ΒΆ</a></h2>
-<ul class="simple">
-<li><p>2.3.0</p>
-<ul>
-<li><p>Airflow 2.3 <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> is now better optimized for caching and βstandaloneβ which means that you
-can copy <strong>just</strong> the <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> to any folder and start building custom images. This
-however requires <a class="reference external" href="https://docs.docker.com/develop/develop-images/build_enhancements/">Buildkit</a>
-to build the image because we started using features that are only available in <code class="docutils literal notranslate"><span class="pre">Buildkit</span></code>.
-This can be done by setting <code class="docutils literal notranslate"><span class="pre">DOCKER_BUILDKIT=1</span></code> as an environment variable
-or by installing <a class="reference external" href="https://docs.docker.com/buildx/working-with-buildx/">the buildx plugin</a>
-and running <code class="docutils literal notranslate"><span class="pre">docker</span> <span class="pre">buildx</span> <span class="pre">build</span></code> command.</p></li>
-<li><p>Add Python 3.10 support</p></li>
-<li><p>Switch to <code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Bullseye</span></code> based images. <code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Buster</span></code> is deprecated and only available for
-customized image building.</p></li>
-<li><p>Add Multi-Platform support (AMD64/ARM64) in order to accommodate MacOS M1 users</p></li>
-<li><p>Build parameters which control if packages and Airflow should be installed from context file were
-unified</p></li>
-<li><p>The <code class="docutils literal notranslate"><span class="pre">INSTALL_FROM_PYPI</span></code> arg was removed - it is automatically detected now.</p></li>
-<li><p>The <code class="docutils literal notranslate"><span class="pre">INSTALL_FROM_DOCKER_CONTEXT_FILES</span></code> arg changed to <code class="docutils literal notranslate"><span class="pre">INSTALL_PACKAGES_FROM_CONTEXT</span></code></p></li>
-</ul>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-2">
-<h2>Airflow 2.2<a class="headerlink" href="#airflow-2-2" title="Permalink to this heading">ΒΆ</a></h2>
-<ul class="simple">
-<li><p>2.2.4
-* Add support for both <code class="docutils literal notranslate"><span class="pre">.piprc</span></code> and <code class="docutils literal notranslate"><span class="pre">pip.conf</span></code> customizations
-* Add ArtifactHub labels for better discovery of the images
-* Update default Python image to be 3.7
-* Build images with <code class="docutils literal notranslate"><span class="pre">Buildkit</span></code> (optional)
-* Fix building the image on Azure with <code class="docutils literal notranslate"><span class="pre">text</span> <span class="pre">file</span> <span class="pre">busy</span></code> error</p></li>
-<li><p>2.2.3
-* No changes</p></li>
-<li><p>2.2.2
-* No changes</p></li>
-<li><p>2.2.1
-* Workaround the problem with <code class="docutils literal notranslate"><span class="pre">libstdcpp</span></code> TLS error</p></li>
-<li><p>2.2.0
-* Remove AIRFLOW_GID (5000) from Airflow images (potentially breaking change for users using it)
-* Added warnings for Quick-start docker compose
-* Fix warm shutdown for celery worker (signal propagation)
-* Add Oauth libraries to PROD images
-* Add Python 3.9 support</p></li>
-</ul>
-</div>
-<div class="section" id="airflow-2-1">
-<h2>Airflow 2.1<a class="headerlink" href="#airflow-2-1" title="Permalink to this heading">ΒΆ</a></h2>
-<ul>
-<li><p>MySQL changed the keys to sign their packages on 17 Feb 2022. This caused all released images
-to fail when being extended. As result, on 18 Feb 2021 we re-released all
-the <code class="docutils literal notranslate"><span class="pre">2.2</span></code> and <code class="docutils literal notranslate"><span class="pre">2.1</span></code> images with latest versions of <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code>
-containing the new signing key.</p>
-<p>There were subtle changes in the behaviour of some 2.1 images due to that (more details below)
-Detailed <a class="reference external" href="https://github.com/apache/airflow/issues/20911">issue here</a></p>
-</li>
-</ul>
-<dl class="field-list simple">
-<dt class="field-odd">note</dt>
-<dd class="field-odd"><p>that the changes below were valid before image refreshing on 18 Feb 2022.
-Since all the images were refreshed on 18 Feb with the same <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code>
-as 2.1.4, the changes 2.1.1 -> 2.1.3 are
-effectively applied to all the images in 2.1.* line.
-The images refreshed have also those fixes added:</p>
-</dd>
-</dl>
-<ul class="simple">
-<li><p>All 2.1.* image versions refreshed on 18 Feb 2022 have those fixes applied:
-* Fix building the image on Azure with <code class="docutils literal notranslate"><span class="pre">text</span> <span class="pre">file</span> <span class="pre">busy</span></code> error
-* Workaround the problem with <code class="docutils literal notranslate"><span class="pre">libstdcpp</span></code> TLS error
-* Remove AIRFLOW_GID (5000) from Airflow images (potentially breaking change for users using it)
-* Added warnings for Quick-start docker compose
-* Add Oauth libraries to PROD images</p></li>
-</ul>
-<p>Original image Changelog (before the refresh on 18 Feb 2022):</p>
-<ul class="simple">
-<li><dl class="simple">
-<dt>2.1.4</dt><dd><ul>
-<li><p>Workaround the problem with <code class="docutils literal notranslate"><span class="pre">libstdcpp</span></code> TLS error</p></li>
-<li><p>fixed detection of port number in connection URL</p></li>
-<li><p>Improve warnings for quick-start-docker compose</p></li>
-<li><p>Fix warm shutdown for celery worker (signal propagation)</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.3</dt><dd><ul>
-<li><p>fixed auto-creation of user to use non-deprecated <code class="docutils literal notranslate"><span class="pre">create</span> <span class="pre">user</span></code> rather than <code class="docutils literal notranslate"><span class="pre">user_create</span></code></p></li>
-<li><p>remove waiting for celery backend for <code class="docutils literal notranslate"><span class="pre">worker</span></code> and <code class="docutils literal notranslate"><span class="pre">flower</span></code> commands rather than <code class="docutils literal notranslate"><span class="pre">scheduler</span></code> and <code class="docutils literal notranslate"><span class="pre">celery</span></code> only</p></li>
-<li><p>remove deprecated <code class="docutils literal notranslate"><span class="pre">airflow</span> <span class="pre">upgradedb</span></code> command from Airflow 1.10 in case upgrade is requested</p></li>
-<li><p>Add Python 3.9 support</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.2</dt><dd><ul>
-<li><p>No changes</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.1</dt><dd><ul>
-<li><p>Fix failure of lack of default commands (failed when no commands were passed)</p></li>
-<li><p>Added <code class="docutils literal notranslate"><span class="pre">_PIP_ADDITIONAL_REQUIREMENTS</span></code> development feature</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.0</dt><dd><ul>
-<li><p>Unset default <code class="docutils literal notranslate"><span class="pre">PIP_USER</span></code> variable - which caused PythonVirtualEnv to fail</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-0">
-<h2>Airflow 2.0<a class="headerlink" href="#airflow-2-0" title="Permalink to this heading">ΒΆ</a></h2>
-<ul>
-<li><p>MySQL changed the keys to sign their packages on 17 Feb 2022. This caused all released images
-to fail when being extended. As result, on 18 Feb 2021 we re-released all
-the <code class="docutils literal notranslate"><span class="pre">2.2</span></code> and <code class="docutils literal notranslate"><span class="pre">2.1</span></code> images with latest versions of <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code>
-containing the new signing key.</p>
-<p>There were no changes in the behaviour of 2.0.2 image due to that
-Detailed <a class="reference external" href="https://github.com/apache/airflow/issues/20911">issue here</a> .
-Only 2.0.2 image was regenerated, as 2.0.1 and 2.0.0 versions are hardly used and it is unlikely someone
-would like to extend those images. Extending 2.0.1 and 2.0.0 images will lead to failures of βmissing keyβ.</p>
-</li>
-<li><dl class="simple">
-<dt>2.0.2</dt><dd><ul class="simple">
-<li><p>Set correct PYTHONPATH for <code class="docutils literal notranslate"><span class="pre">root</span></code> user. Allows to run the image as root</p></li>
-<li><p>Warn if the deprecated 5000 group ID was used for airflow user when running the image
-(should be 0 for the OpenShift compatibility). Fails if the group 5000 was used with any other user
-(it would not work anyway but with cryptic errors)</p></li>
-<li><p>Set umask as 002 by default, so that you can actually change the user id used to run the image
-(required for OpenShift compatibility)</p></li>
-<li><p>Skip checking the DB and celery backend if CONNECTION_CHECK_MAX_COUNT is equal to 0</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.0.1</dt><dd><ul class="simple">
-<li><p>Avoid reverse IP lookup when checking DB availability. This helped to solve long delays on misconfigured
-docker engines</p></li>
-<li><p>Add auto-detection of redis and amqp broker ports</p></li>
-<li><p>Fixed detection of all user/password combinations in URLs - helps in auto-detecting ports and testing
-connectivity</p></li>
-<li><p>Add possibility to create Admin user automatically when entering the image</p></li>
-<li><p>Automatically create system user when different user than <code class="docutils literal notranslate"><span class="pre">airflow</span></code> is used. Needed for OpenShift
-compatibility</p></li>
-<li><p>Allows to exec to <code class="docutils literal notranslate"><span class="pre">bash</span></code> or <code class="docutils literal notranslate"><span class="pre">python</span></code> if specified as parameters</p></li>
-<li><p>Remove <code class="docutils literal notranslate"><span class="pre">airflow</span></code> command if it is specified as first parameter of the <code class="docutils literal notranslate"><span class="pre">run</span></code> command</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.0.0</dt><dd><ul class="simple">
-<li><p>Initial release of the image based on Debian Buster</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-</ul>
+ <div class="section" id="module-airflow.example_dags.example_complex">
+<span id="airflow-example-dags-example-complex"></span><h1><a class="reference internal" href="#module-airflow.example_dags.example_complex" title="airflow.example_dags.example_complex"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_complex</span></code></a><a class="headerlink" href="#module-airflow.example_dags.example_complex" title="Permalink to this heading">ΒΆ</a></h1>
+<p>Example Airflow DAG that shows the complex DAG structure.</p>
+<div class="section" id="module-contents">
+<h2>Module Contents<a class="headerlink" href="#module-contents" title="Permalink to this heading">ΒΆ</a></h2>
+<dl class="py data">
+<dt class="sig sig-object py" id="airflow.example_dags.example_complex.create_entry_group">
+<span class="sig-prename descclassname"><span class="pre">airflow.example_dags.example_complex.</span></span><span class="sig-name descname"><span class="pre">create_entry_group</span></span><a class="reference internal" href="../../../../_modules/airflow/example_dags/example_complex.html#create_entry_group"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow.example_dags.example_complex.create_entry_group" title="Permalink to this [...]
+<dd></dd></dl>
+
</div>
</div>
<div class="pager" role="navigation" aria-label="related navigation">
- <a rel="prev" title="Entrypoint" href="entrypoint.html" >
+ <a rel="prev" title="airflow.example_dags.example_branch_python_dop_operator_3" href="../example_branch_python_dop_operator_3/index.html" >
<button class="btn-hollow btn-blue bodytext__medium--cerulean-blue" accesskey="p">Previous</button>
</a>
- <a rel="next" title="Recipes" href="recipes.html" >
+ <a rel="next" title="airflow.example_dags.example_datasets" href="../example_datasets/index.html" >
<button class="btn-hollow btn-blue bodytext__medium--cerulean-blue" accesskey="n">Next</button>
</a>
</div>
@@ -894,13 +856,12 @@ compatibility</p></li>
<nav class="wy-nav-side-toc">
<div class="wy-menu-vertical">
<ul>
-<li><a class="reference internal" href="#">Dockerfile Changelog</a><ul>
-<li><a class="reference internal" href="#changes-after-publishing-the-images">Changes after publishing the images</a></li>
-<li><a class="reference internal" href="#airflow-2-4">Airflow 2.4</a></li>
-<li><a class="reference internal" href="#airflow-2-3">Airflow 2.3</a></li>
-<li><a class="reference internal" href="#airflow-2-2">Airflow 2.2</a></li>
-<li><a class="reference internal" href="#airflow-2-1">Airflow 2.1</a></li>
-<li><a class="reference internal" href="#airflow-2-0">Airflow 2.0</a></li>
+<li><a class="reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_complex</span></code></a><ul>
+<li><a class="reference internal" href="#module-contents">Module Contents</a><ul>
+<li><a class="reference internal" href="#airflow.example_dags.example_complex.create_entry_group"><code class="docutils literal notranslate"><span class="pre">create_entry_group</span></code></a></li>
+<li><a class="reference internal" href="#airflow.example_dags.example_complex.create_entry_group">create_entry_group</a></li>
+</ul>
+</li>
</ul>
</li>
</ul>
@@ -925,7 +886,7 @@ compatibility</p></li>
<div class="base-layout--button">
- <a href="https://github.com/apache/airflow/edit/main/docs/docker-stack/changelog.rst" rel="nofollow">
+ <a href="https://github.com/apache/airflow/edit/main/docs/apache-airflow/_api/airflow/example_dags/example_complex/index.rst" rel="nofollow">
<button class="btn-hollow btn-brown btn-with-icon with-box-shadow button-fixed">
<svg xmlns="http://www.w3.org/2000/svg" width="30.76" height="30">
@@ -1059,18 +1020,20 @@ compatibility</p></li>
</span>
</div>
</footer>
- <script type="text/javascript" src="_static/_gen/js/docs.js"></script>
- <script type="text/javascript" id="documentation_options" data-url_root="./" src="_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../../../_static/_gen/js/docs.js"></script>
+ <script type="text/javascript" id="documentation_options" data-url_root="../../../../" src="../../../../_static/documentation_options.js"></script>
<script src="https://code.jquery.com/jquery-3.4.1.min.js" integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo=" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.3/umd/popper.min.js" integrity="sha384-ZMP7rVo3mIykV+2+9J3UJ46jBk0WLaUAdn689aCwoqbBJiSnjAK/l8WvCWPIPm49" crossorigin="anonymous"></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/js/bootstrap.min.js" integrity="sha384-ChfqqxuZUCnJSK3+MXmPNIyE6ZbWh2IMqE241rYiqJxyMiZ6OW/JmZQ5stwEULTy" crossorigin="anonymous"></script>
- <script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script>
- <script src="_static/jquery.js"></script>
- <script src="_static/underscore.js"></script>
- <script src="_static/_sphinx_javascript_frameworks_compat.js"></script>
- <script src="_static/doctools.js"></script>
- <script src="_static/clipboard.min.js"></script>
- <script src="_static/copybutton.js"></script>
- <script src="_static/js/globaltoc.js"></script>
+ <script data-url_root="../../../../" id="documentation_options" src="../../../../_static/documentation_options.js"></script>
+ <script src="../../../../_static/jquery.js"></script>
+ <script src="../../../../_static/underscore.js"></script>
+ <script src="../../../../_static/_sphinx_javascript_frameworks_compat.js"></script>
+ <script src="../../../../_static/doctools.js"></script>
+ <script src="../../../../_static/sphinx_highlight.js"></script>
+ <script src="../../../../_static/clipboard.min.js"></script>
+ <script src="../../../../_static/copybutton.js"></script>
+ <script src="../../../../_static/js/globaltoc.js"></script>
+ <script src="../../../../_static/gh-jira-links.js"></script>
</body>
</html>
\ No newline at end of file
diff --git a/docs-archive/docker-stack/changelog.html b/docs-archive/apache-airflow/2.4.2/_api/airflow/example_dags/example_datasets/index.html
similarity index 68%
copy from docs-archive/docker-stack/changelog.html
copy to docs-archive/apache-airflow/2.4.2/_api/airflow/example_dags/example_datasets/index.html
index 2fa2b8d179..d0a25deff8 100644
--- a/docs-archive/docker-stack/changelog.html
+++ b/docs-archive/apache-airflow/2.4.2/_api/airflow/example_dags/example_datasets/index.html
@@ -9,17 +9,18 @@
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1">
- <title>Dockerfile Changelog — docker-stack Documentation</title>
- <link rel="stylesheet" href="_static/_gen/css/main.min.css" type="text/css" />
- <link rel="stylesheet" type="text/css" href="_static/pygments.css" />
- <link rel="stylesheet" type="text/css" href="_static/_gen/css/main.min.css" />
- <link rel="stylesheet" type="text/css" href="_static/copybutton.css" />
- <link rel="stylesheet" type="text/css" href="_static/_gen/css/main-custom.min.css" />
- <link rel="shortcut icon" href="_static/pin_32.png"/>
- <link rel="index" title="Index" href="genindex.html" />
- <link rel="search" title="Search" href="search.html" />
- <link rel="next" title="Recipes" href="recipes.html" />
- <link rel="prev" title="Entrypoint" href="entrypoint.html" />
+ <title>airflow.example_dags.example_datasets — Airflow Documentation</title>
+ <link rel="stylesheet" href="../../../../_static/_gen/css/main.min.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../../../_static/pygments.css" />
+ <link rel="stylesheet" type="text/css" href="../../../../_static/_gen/css/main.min.css" />
+ <link rel="stylesheet" type="text/css" href="../../../../_static/copybutton.css" />
+ <link rel="stylesheet" type="text/css" href="../../../../_static/_gen/css/main-custom.min.css" />
+ <link rel="stylesheet" type="text/css" href="../../../../_static/graphviz.css" />
+ <link rel="shortcut icon" href="../../../../_static/pin_32.png"/>
+ <link rel="index" title="Index" href="../../../../genindex.html" />
+ <link rel="search" title="Search" href="../../../../search.html" />
+ <link rel="next" title="airflow.example_dags.example_external_task_marker_dag" href="../example_external_task_marker_dag/index.html" />
+ <link rel="prev" title="airflow.example_dags.example_complex" href="../example_complex/index.html" />
<!-- Matomo -->
<script>
var _paq = window._paq = window._paq || [];
@@ -280,8 +281,21 @@
<div class="content-drawer">
<div class="td-sidebar">
+<div id="docs-version-selector" class="docs-version-selector sidebar__version-selector">
+ <a class="dropdown-toggle" href="#" id="versionDropdown" role="button" data-toggle="dropdown" aria-haspopup="true"
+ aria-expanded="false">
+ <span class="bodytext__medium--greyish-brown">Version: </span><span class="version">2.4.2</span>
+ </a>
+ <div class="dropdown-menu" aria-labelledby="navbarDropdownMenuLink">
+
+ </div>
+ <script type="application/x-template" id="version-item-template">
+ <a class="dropdown-item"></a>
+ </script>
+</div>
+
<div class="searchb-box">
- <form class="search-form" action="search.html" method="get">
+ <form class="search-form" action="../../../../search.html" method="get">
<input class="search-form__input" type="text" name="q" placeholder="Search docs" size="16">
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
@@ -311,24 +325,115 @@
<div class="toctree" role="navigation" aria-label="main navigation">
- <ul class="current">
-<li class="toctree-l1"><a class="reference internal" href="index.html">Home</a></li>
-<li class="toctree-l1"><a class="reference internal" href="build.html">Building the image</a></li>
-<li class="toctree-l1"><a class="reference internal" href="entrypoint.html">Entrypoint</a></li>
-<li class="toctree-l1 current"><a class="current reference internal" href="#">Dockerfile Changelog</a><ul>
-<li class="toctree-l2"><a class="reference internal" href="#changes-after-publishing-the-images">Changes after publishing the images</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-4">Airflow 2.4</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-3">Airflow 2.3</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-2">Airflow 2.2</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-1">Airflow 2.1</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-0">Airflow 2.0</a></li>
+ <p class="caption" role="heading"><span class="caption-text">Content</span></p>
+<ul>
+<li class="toctree-l1"><a class="reference internal" href="../../../../index.html">Overview</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../project.html">Project</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../license.html">License</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../start.html">Quick Start</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../installation/index.html">Installation</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../upgrading-from-1-10/index.html">Upgrading from 1.10 to 2</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../tutorial/index.html">Tutorials</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../howto/index.html">How-to Guides</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../ui.html">UI / Screenshots</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../concepts/index.html">Concepts</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../executor/index.html">Executor</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../dag-run.html">DAG Runs</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../plugins.html">Plugins</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../security/index.html">Security</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../logging-monitoring/index.html">Logging & Monitoring</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../timezone.html">Time Zones</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../usage-cli.html">Using the CLI</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../integration.html">Integration</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../kubernetes.html">Kubernetes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../lineage.html">Lineage</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../listeners.html">Listeners</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../dag-serialization.html">DAG Serialization</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../modules_management.html">Modules Management</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release-process.html">Release Policies</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release_notes.html">Release Notes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../best-practices.html">Best Practices</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../production-deployment.html">Production Deployment</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../faq.html">FAQ</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../privacy_notice.html">Privacy Notice</a></li>
+</ul>
+<p class="caption" role="heading"><span class="caption-text">References</span></p>
+<ul class="current">
+<li class="toctree-l1"><a class="reference internal" href="../../../../operators-and-hooks-ref.html">Operators and hooks</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../cli-and-env-variables-ref.html">CLI</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../templates-ref.html">Templates</a></li>
+<li class="toctree-l1 current"><a class="reference internal" href="../../../../python-api-ref.html">Python API</a><ul class="current">
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#dags">DAGs</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#operators">Operators</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#hooks">Hooks</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#executors">Executors</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#models">Models</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#exceptions">Exceptions</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#secrets-backends">Secrets Backends</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#timetables">Timetables</a></li>
+<li class="toctree-l2 current"><a class="reference internal" href="../../../../python-api-ref.html#example-dags">Example DAGs</a><ul class="current">
+<li class="toctree-l3 current"><a class="reference internal" href="../index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags</span></code></a><ul class="current">
+<li class="toctree-l4"><a class="reference internal" href="../index.html#subpackages">Subpackages</a></li>
+<li class="toctree-l4 current"><a class="reference internal" href="../index.html#submodules">Submodules</a><ul class="current">
+<li class="toctree-l5"><a class="reference internal" href="../example_bash_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_bash_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_datetime_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_datetime_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_day_of_week_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_day_of_week_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_labels/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_labels</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_operator_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_operator_decorator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_python_dop_operator_3/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_python_dop_operator_3</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_complex/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_complex</span></code></a></li>
+<li class="toctree-l5 current"><a class="current reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_datasets</span></code></a><ul>
+<li class="toctree-l6"><a class="reference internal" href="#module-contents">Module Contents</a><ul>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_datasets.dag1_dataset"><code class="docutils literal notranslate"><span class="pre">dag1_dataset</span></code></a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_datasets.dag2_dataset"><code class="docutils literal notranslate"><span class="pre">dag2_dataset</span></code></a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_datasets.dag1_dataset">dag1_dataset</a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_datasets.dag2_dataset">dag2_dataset</a></li>
</ul>
</li>
-<li class="toctree-l1"><a class="reference internal" href="recipes.html">Recipes</a></li>
</ul>
-<p class="caption" role="heading"><span class="caption-text">References</span></p>
+</li>
+<li class="toctree-l5"><a class="reference internal" href="../example_external_task_marker_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_external_task_marker_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_kubernetes_executor/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_kubernetes_executor</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_latest_only/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_latest_only</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_latest_only_with_trigger/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_latest_only_with_trigger</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_local_kubernetes_executor/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_local_kubernetes_executor</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_nested_branch_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_nested_branch_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_passing_params_via_test_command/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_passing_params_via_test_command</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_python_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_python_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_short_circuit_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_short_circuit_decorator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_short_circuit_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_short_circuit_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_skip_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_skip_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_subdag_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_subdag_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_task_group/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_task_group</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_task_group_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_task_group_decorator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_time_delta_sensor_async/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_time_delta_sensor_async</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_trigger_controller_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_trigger_controller_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_trigger_target_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_trigger_target_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_xcom/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_xcom</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_xcomargs/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_xcomargs</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial_taskflow_api/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_taskflow_api</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial_taskflow_api_virtualenv/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_taskflow_api_virtualenv</span></code></a></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#utils">Utils</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../stable-rest-api-ref.html">Stable REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../deprecated-rest-api-ref.html">Deprecated REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../configurations-ref.html">Configurations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../extra-packages-ref.html">Extra packages</a></li>
+</ul>
+<p class="caption" role="heading"><span class="caption-text">Internal DB details</span></p>
<ul>
-<li class="toctree-l1"><a class="reference internal" href="build-arg-ref.html">Image build arguments reference</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../migrations-ref.html">Database Migrations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../database-erd-ref.html">Database ERD Schema</a></li>
</ul>
</div>
@@ -409,8 +514,21 @@
<div class="td-sidebar desktop-only d-print-none">
+<div id="docs-version-selector" class="docs-version-selector sidebar__version-selector">
+ <a class="dropdown-toggle" href="#" id="versionDropdown" role="button" data-toggle="dropdown" aria-haspopup="true"
+ aria-expanded="false">
+ <span class="bodytext__medium--greyish-brown">Version: </span><span class="version">2.4.2</span>
+ </a>
+ <div class="dropdown-menu" aria-labelledby="navbarDropdownMenuLink">
+
+ </div>
+ <script type="application/x-template" id="version-item-template">
+ <a class="dropdown-item"></a>
+ </script>
+</div>
+
<div class="searchb-box">
- <form class="search-form" action="search.html" method="get">
+ <form class="search-form" action="../../../../search.html" method="get">
<input class="search-form__input" type="text" name="q" placeholder="Search docs" size="16">
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
@@ -440,24 +558,115 @@
<div class="toctree" role="navigation" aria-label="main navigation">
- <ul class="current">
-<li class="toctree-l1"><a class="reference internal" href="index.html">Home</a></li>
-<li class="toctree-l1"><a class="reference internal" href="build.html">Building the image</a></li>
-<li class="toctree-l1"><a class="reference internal" href="entrypoint.html">Entrypoint</a></li>
-<li class="toctree-l1 current"><a class="current reference internal" href="#">Dockerfile Changelog</a><ul>
-<li class="toctree-l2"><a class="reference internal" href="#changes-after-publishing-the-images">Changes after publishing the images</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-4">Airflow 2.4</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-3">Airflow 2.3</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-2">Airflow 2.2</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-1">Airflow 2.1</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-0">Airflow 2.0</a></li>
+ <p class="caption" role="heading"><span class="caption-text">Content</span></p>
+<ul>
+<li class="toctree-l1"><a class="reference internal" href="../../../../index.html">Overview</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../project.html">Project</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../license.html">License</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../start.html">Quick Start</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../installation/index.html">Installation</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../upgrading-from-1-10/index.html">Upgrading from 1.10 to 2</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../tutorial/index.html">Tutorials</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../howto/index.html">How-to Guides</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../ui.html">UI / Screenshots</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../concepts/index.html">Concepts</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../executor/index.html">Executor</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../dag-run.html">DAG Runs</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../plugins.html">Plugins</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../security/index.html">Security</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../logging-monitoring/index.html">Logging & Monitoring</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../timezone.html">Time Zones</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../usage-cli.html">Using the CLI</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../integration.html">Integration</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../kubernetes.html">Kubernetes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../lineage.html">Lineage</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../listeners.html">Listeners</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../dag-serialization.html">DAG Serialization</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../modules_management.html">Modules Management</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release-process.html">Release Policies</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release_notes.html">Release Notes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../best-practices.html">Best Practices</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../production-deployment.html">Production Deployment</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../faq.html">FAQ</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../privacy_notice.html">Privacy Notice</a></li>
+</ul>
+<p class="caption" role="heading"><span class="caption-text">References</span></p>
+<ul class="current">
+<li class="toctree-l1"><a class="reference internal" href="../../../../operators-and-hooks-ref.html">Operators and hooks</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../cli-and-env-variables-ref.html">CLI</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../templates-ref.html">Templates</a></li>
+<li class="toctree-l1 current"><a class="reference internal" href="../../../../python-api-ref.html">Python API</a><ul class="current">
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#dags">DAGs</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#operators">Operators</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#hooks">Hooks</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#executors">Executors</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#models">Models</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#exceptions">Exceptions</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#secrets-backends">Secrets Backends</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#timetables">Timetables</a></li>
+<li class="toctree-l2 current"><a class="reference internal" href="../../../../python-api-ref.html#example-dags">Example DAGs</a><ul class="current">
+<li class="toctree-l3 current"><a class="reference internal" href="../index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags</span></code></a><ul class="current">
+<li class="toctree-l4"><a class="reference internal" href="../index.html#subpackages">Subpackages</a></li>
+<li class="toctree-l4 current"><a class="reference internal" href="../index.html#submodules">Submodules</a><ul class="current">
+<li class="toctree-l5"><a class="reference internal" href="../example_bash_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_bash_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_datetime_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_datetime_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_day_of_week_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_day_of_week_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_labels/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_labels</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_operator_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_operator_decorator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_python_dop_operator_3/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_python_dop_operator_3</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_complex/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_complex</span></code></a></li>
+<li class="toctree-l5 current"><a class="current reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_datasets</span></code></a><ul>
+<li class="toctree-l6"><a class="reference internal" href="#module-contents">Module Contents</a><ul>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_datasets.dag1_dataset"><code class="docutils literal notranslate"><span class="pre">dag1_dataset</span></code></a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_datasets.dag2_dataset"><code class="docutils literal notranslate"><span class="pre">dag2_dataset</span></code></a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_datasets.dag1_dataset">dag1_dataset</a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_datasets.dag2_dataset">dag2_dataset</a></li>
</ul>
</li>
-<li class="toctree-l1"><a class="reference internal" href="recipes.html">Recipes</a></li>
</ul>
-<p class="caption" role="heading"><span class="caption-text">References</span></p>
+</li>
+<li class="toctree-l5"><a class="reference internal" href="../example_external_task_marker_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_external_task_marker_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_kubernetes_executor/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_kubernetes_executor</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_latest_only/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_latest_only</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_latest_only_with_trigger/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_latest_only_with_trigger</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_local_kubernetes_executor/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_local_kubernetes_executor</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_nested_branch_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_nested_branch_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_passing_params_via_test_command/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_passing_params_via_test_command</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_python_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_python_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_short_circuit_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_short_circuit_decorator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_short_circuit_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_short_circuit_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_skip_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_skip_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_subdag_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_subdag_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_task_group/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_task_group</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_task_group_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_task_group_decorator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_time_delta_sensor_async/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_time_delta_sensor_async</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_trigger_controller_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_trigger_controller_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_trigger_target_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_trigger_target_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_xcom/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_xcom</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_xcomargs/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_xcomargs</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial_taskflow_api/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_taskflow_api</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial_taskflow_api_virtualenv/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_taskflow_api_virtualenv</span></code></a></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#utils">Utils</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../stable-rest-api-ref.html">Stable REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../deprecated-rest-api-ref.html">Deprecated REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../configurations-ref.html">Configurations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../extra-packages-ref.html">Extra packages</a></li>
+</ul>
+<p class="caption" role="heading"><span class="caption-text">Internal DB details</span></p>
<ul>
-<li class="toctree-l1"><a class="reference internal" href="build-arg-ref.html">Image build arguments reference</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../migrations-ref.html">Database Migrations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../database-erd-ref.html">Database ERD Schema</a></li>
</ul>
</div>
@@ -546,9 +755,13 @@
<ul class="breadcrumb">
- <li class="breadcrumb-item"><a href="index.html" class="icon icon-home"> Home</a></li>
+ <li class="breadcrumb-item"><a href="../../../../index.html" class="icon icon-home"> Home</a></li>
+
+ <li class="breadcrumb-item"><a href="../../../../python-api-ref.html">Python API Reference</a></li>
+
+ <li class="breadcrumb-item"><a href="../index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags</span></code></a></li>
- <li class="breadcrumb-item"><a href="changelog.html"> Dockerfile Changelog</a></li>
+ <li class="breadcrumb-item"><a href="index.html"> <code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_datasets</span></code></a></li>
</ul>
</div>
@@ -559,272 +772,42 @@
<div class="bodywrapper">
<div class="body" role="main">
- <blockquote>
-<div></div></blockquote>
-<div class="section" id="dockerfile-changelog">
-<h1>Dockerfile Changelog<a class="headerlink" href="#dockerfile-changelog" title="Permalink to this heading">ΒΆ</a></h1>
-<p>The <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> does not strictly follow the <a class="reference external" href="https://semver.org/">SemVer</a> approach of
-Apache Airflow when it comes to features and backwards compatibility. While Airflow code strictly
-follows it, the <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> is really a way to give users a conveniently packaged Airflow
-using standard container approach, so occasionally there are some changes in the building process
-or in the entrypoint of the image that require slight adaptation of how it is used or built.</p>
-<p>The Changelog below describes the changes introduced in each version of the docker images released by
-the Airflow team.</p>
-<dl class="field-list simple">
-<dt class="field-odd">note</dt>
-<dd class="field-odd"><p>The Changelog below concerns only the convenience production images released at
-<a class="reference external" href="https://hub.docker.com/r/apache/airflow">Airflow DockerHub</a> . The images that are released
-there, are usually built using the <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> released together with Airflow. However You are
-free to take latest released <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> from Airflow and use it to build an image for
-any Airflow version from the <code class="docutils literal notranslate"><span class="pre">Airflow</span> <span class="pre">2</span></code> line. There is no guarantee that it works, but if it does,
-then you can use latest features from that image to build the previous Airflow versions.</p>
-</dd>
-</dl>
-<div class="section" id="changes-after-publishing-the-images">
-<h2>Changes after publishing the images<a class="headerlink" href="#changes-after-publishing-the-images" title="Permalink to this heading">ΒΆ</a></h2>
-<p>Occasionally our images need to be regenerated using newer <code class="docutils literal notranslate"><span class="pre">Dockerfiles</span></code> or constraints.
-This happens when an issue is found or a breaking change is released by our dependencies
-that invalidates the already released image, and regenerating the image makes it usable again.
-While we cannot assure 100% backwards compatibility when it happens, we at least document it
-here so that users affected can find the reason for the changes.</p>
-<table class="docutils align-default">
-<colgroup>
-<col style="width: 10%" />
-<col style="width: 14%" />
-<col style="width: 28%" />
-<col style="width: 16%" />
-<col style="width: 32%" />
-</colgroup>
-<thead>
-<tr class="row-odd"><th class="head"><p>Date</p></th>
-<th class="head"><p>Affected images</p></th>
-<th class="head"><p>Potentially breaking change</p></th>
-<th class="head"><p>Reason</p></th>
-<th class="head"><p>Link to Pull Request</p></th>
-</tr>
-</thead>
-<tbody>
-<tr class="row-even"><td><p>17 June 2022</p></td>
-<td><p>2.2.5</p>
-<p>2.3.0-2.3.2</p>
-</td>
-<td><ul class="simple">
-<li><p>The <code class="docutils literal notranslate"><span class="pre">Authlib</span></code> library downgraded
-from 1.0.1 to 0.15.5 version</p></li>
-</ul>
-</td>
-<td><p>Flask App Builder
-not compatible with
-Authlib >= 1.0.0</p></td>
-<td><p><a class="reference external" href="https://github.com/apache/airflow/pull/24516">https://github.com/apache/airflow/pull/24516</a></p></td>
-</tr>
-<tr class="row-odd"><td><p>18 Jan 2022</p></td>
-<td><p>All 2.2.*, 2.1.*</p></td>
-<td><ul class="simple">
-<li><p>The AIRFLOW_GID 500 was removed</p></li>
-<li><p>MySQL <code class="docutils literal notranslate"><span class="pre">apt</span></code> repository key changed.</p></li>
-</ul>
-</td>
-<td><p>MySQL changed keys
-to sign their packages
-on 17 Jan 2022</p></td>
-<td><p><a class="reference external" href="https://github.com/apache/airflow/pull/20912">https://github.com/apache/airflow/pull/20912</a></p></td>
-</tr>
-</tbody>
-</table>
-</div>
-<div class="section" id="airflow-2-4">
-<h2>Airflow 2.4<a class="headerlink" href="#airflow-2-4" title="Permalink to this heading">ΒΆ</a></h2>
-<ul class="simple">
-<li><p>2.4.0</p>
-<ul>
-<li><p>You can specify additional <code class="docutils literal notranslate"><span class="pre">pip</span> <span class="pre">install</span></code> flags when you build the image via <code class="docutils literal notranslate"><span class="pre">ADDITIONAL_PIP_INSTALL_FLAGS</span></code>
-build arg.</p></li>
-<li><p>Support for <code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Buster</span></code> was dropped, including the possibility of building customized images as
-<code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Buster</span></code> reached end of life.</p></li>
-</ul>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-3">
-<h2>Airflow 2.3<a class="headerlink" href="#airflow-2-3" title="Permalink to this heading">ΒΆ</a></h2>
-<ul class="simple">
-<li><p>2.3.0</p>
-<ul>
-<li><p>Airflow 2.3 <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> is now better optimized for caching and βstandaloneβ which means that you
-can copy <strong>just</strong> the <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> to any folder and start building custom images. This
-however requires <a class="reference external" href="https://docs.docker.com/develop/develop-images/build_enhancements/">Buildkit</a>
-to build the image because we started using features that are only available in <code class="docutils literal notranslate"><span class="pre">Buildkit</span></code>.
-This can be done by setting <code class="docutils literal notranslate"><span class="pre">DOCKER_BUILDKIT=1</span></code> as an environment variable
-or by installing <a class="reference external" href="https://docs.docker.com/buildx/working-with-buildx/">the buildx plugin</a>
-and running <code class="docutils literal notranslate"><span class="pre">docker</span> <span class="pre">buildx</span> <span class="pre">build</span></code> command.</p></li>
-<li><p>Add Python 3.10 support</p></li>
-<li><p>Switch to <code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Bullseye</span></code> based images. <code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Buster</span></code> is deprecated and only available for
-customized image building.</p></li>
-<li><p>Add Multi-Platform support (AMD64/ARM64) in order to accommodate MacOS M1 users</p></li>
-<li><p>Build parameters which control if packages and Airflow should be installed from context file were
-unified</p></li>
-<li><p>The <code class="docutils literal notranslate"><span class="pre">INSTALL_FROM_PYPI</span></code> arg was removed - it is automatically detected now.</p></li>
-<li><p>The <code class="docutils literal notranslate"><span class="pre">INSTALL_FROM_DOCKER_CONTEXT_FILES</span></code> arg changed to <code class="docutils literal notranslate"><span class="pre">INSTALL_PACKAGES_FROM_CONTEXT</span></code></p></li>
-</ul>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-2">
-<h2>Airflow 2.2<a class="headerlink" href="#airflow-2-2" title="Permalink to this heading">ΒΆ</a></h2>
-<ul class="simple">
-<li><p>2.2.4
-* Add support for both <code class="docutils literal notranslate"><span class="pre">.piprc</span></code> and <code class="docutils literal notranslate"><span class="pre">pip.conf</span></code> customizations
-* Add ArtifactHub labels for better discovery of the images
-* Update default Python image to be 3.7
-* Build images with <code class="docutils literal notranslate"><span class="pre">Buildkit</span></code> (optional)
-* Fix building the image on Azure with <code class="docutils literal notranslate"><span class="pre">text</span> <span class="pre">file</span> <span class="pre">busy</span></code> error</p></li>
-<li><p>2.2.3
-* No changes</p></li>
-<li><p>2.2.2
-* No changes</p></li>
-<li><p>2.2.1
-* Workaround the problem with <code class="docutils literal notranslate"><span class="pre">libstdcpp</span></code> TLS error</p></li>
-<li><p>2.2.0
-* Remove AIRFLOW_GID (5000) from Airflow images (potentially breaking change for users using it)
-* Added warnings for Quick-start docker compose
-* Fix warm shutdown for celery worker (signal propagation)
-* Add Oauth libraries to PROD images
-* Add Python 3.9 support</p></li>
-</ul>
-</div>
-<div class="section" id="airflow-2-1">
-<h2>Airflow 2.1<a class="headerlink" href="#airflow-2-1" title="Permalink to this heading">ΒΆ</a></h2>
-<ul>
-<li><p>MySQL changed the keys to sign their packages on 17 Feb 2022. This caused all released images
-to fail when being extended. As result, on 18 Feb 2021 we re-released all
-the <code class="docutils literal notranslate"><span class="pre">2.2</span></code> and <code class="docutils literal notranslate"><span class="pre">2.1</span></code> images with latest versions of <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code>
-containing the new signing key.</p>
-<p>There were subtle changes in the behaviour of some 2.1 images due to that (more details below)
-Detailed <a class="reference external" href="https://github.com/apache/airflow/issues/20911">issue here</a></p>
-</li>
-</ul>
-<dl class="field-list simple">
-<dt class="field-odd">note</dt>
-<dd class="field-odd"><p>that the changes below were valid before image refreshing on 18 Feb 2022.
-Since all the images were refreshed on 18 Feb with the same <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code>
-as 2.1.4, the changes 2.1.1 -> 2.1.3 are
-effectively applied to all the images in 2.1.* line.
-The images refreshed have also those fixes added:</p>
-</dd>
-</dl>
-<ul class="simple">
-<li><p>All 2.1.* image versions refreshed on 18 Feb 2022 have those fixes applied:
-* Fix building the image on Azure with <code class="docutils literal notranslate"><span class="pre">text</span> <span class="pre">file</span> <span class="pre">busy</span></code> error
-* Workaround the problem with <code class="docutils literal notranslate"><span class="pre">libstdcpp</span></code> TLS error
-* Remove AIRFLOW_GID (5000) from Airflow images (potentially breaking change for users using it)
-* Added warnings for Quick-start docker compose
-* Add Oauth libraries to PROD images</p></li>
-</ul>
-<p>Original image Changelog (before the refresh on 18 Feb 2022):</p>
-<ul class="simple">
-<li><dl class="simple">
-<dt>2.1.4</dt><dd><ul>
-<li><p>Workaround the problem with <code class="docutils literal notranslate"><span class="pre">libstdcpp</span></code> TLS error</p></li>
-<li><p>fixed detection of port number in connection URL</p></li>
-<li><p>Improve warnings for quick-start-docker compose</p></li>
-<li><p>Fix warm shutdown for celery worker (signal propagation)</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.3</dt><dd><ul>
-<li><p>fixed auto-creation of user to use non-deprecated <code class="docutils literal notranslate"><span class="pre">create</span> <span class="pre">user</span></code> rather than <code class="docutils literal notranslate"><span class="pre">user_create</span></code></p></li>
-<li><p>remove waiting for celery backend for <code class="docutils literal notranslate"><span class="pre">worker</span></code> and <code class="docutils literal notranslate"><span class="pre">flower</span></code> commands rather than <code class="docutils literal notranslate"><span class="pre">scheduler</span></code> and <code class="docutils literal notranslate"><span class="pre">celery</span></code> only</p></li>
-<li><p>remove deprecated <code class="docutils literal notranslate"><span class="pre">airflow</span> <span class="pre">upgradedb</span></code> command from Airflow 1.10 in case upgrade is requested</p></li>
-<li><p>Add Python 3.9 support</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.2</dt><dd><ul>
-<li><p>No changes</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.1</dt><dd><ul>
-<li><p>Fix failure of lack of default commands (failed when no commands were passed)</p></li>
-<li><p>Added <code class="docutils literal notranslate"><span class="pre">_PIP_ADDITIONAL_REQUIREMENTS</span></code> development feature</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.0</dt><dd><ul>
-<li><p>Unset default <code class="docutils literal notranslate"><span class="pre">PIP_USER</span></code> variable - which caused PythonVirtualEnv to fail</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-0">
-<h2>Airflow 2.0<a class="headerlink" href="#airflow-2-0" title="Permalink to this heading">ΒΆ</a></h2>
-<ul>
-<li><p>MySQL changed the keys to sign their packages on 17 Feb 2022. This caused all released images
-to fail when being extended. As result, on 18 Feb 2021 we re-released all
-the <code class="docutils literal notranslate"><span class="pre">2.2</span></code> and <code class="docutils literal notranslate"><span class="pre">2.1</span></code> images with latest versions of <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code>
-containing the new signing key.</p>
-<p>There were no changes in the behaviour of 2.0.2 image due to that
-Detailed <a class="reference external" href="https://github.com/apache/airflow/issues/20911">issue here</a> .
-Only 2.0.2 image was regenerated, as 2.0.1 and 2.0.0 versions are hardly used and it is unlikely someone
-would like to extend those images. Extending 2.0.1 and 2.0.0 images will lead to failures of βmissing keyβ.</p>
-</li>
-<li><dl class="simple">
-<dt>2.0.2</dt><dd><ul class="simple">
-<li><p>Set correct PYTHONPATH for <code class="docutils literal notranslate"><span class="pre">root</span></code> user. Allows to run the image as root</p></li>
-<li><p>Warn if the deprecated 5000 group ID was used for airflow user when running the image
-(should be 0 for the OpenShift compatibility). Fails if the group 5000 was used with any other user
-(it would not work anyway but with cryptic errors)</p></li>
-<li><p>Set umask as 002 by default, so that you can actually change the user id used to run the image
-(required for OpenShift compatibility)</p></li>
-<li><p>Skip checking the DB and celery backend if CONNECTION_CHECK_MAX_COUNT is equal to 0</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.0.1</dt><dd><ul class="simple">
-<li><p>Avoid reverse IP lookup when checking DB availability. This helped to solve long delays on misconfigured
-docker engines</p></li>
-<li><p>Add auto-detection of redis and amqp broker ports</p></li>
-<li><p>Fixed detection of all user/password combinations in URLs - helps in auto-detecting ports and testing
-connectivity</p></li>
-<li><p>Add possibility to create Admin user automatically when entering the image</p></li>
-<li><p>Automatically create system user when different user than <code class="docutils literal notranslate"><span class="pre">airflow</span></code> is used. Needed for OpenShift
-compatibility</p></li>
-<li><p>Allows to exec to <code class="docutils literal notranslate"><span class="pre">bash</span></code> or <code class="docutils literal notranslate"><span class="pre">python</span></code> if specified as parameters</p></li>
-<li><p>Remove <code class="docutils literal notranslate"><span class="pre">airflow</span></code> command if it is specified as first parameter of the <code class="docutils literal notranslate"><span class="pre">run</span></code> command</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.0.0</dt><dd><ul class="simple">
-<li><p>Initial release of the image based on Debian Buster</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-</ul>
+ <div class="section" id="module-airflow.example_dags.example_datasets">
+<span id="airflow-example-dags-example-datasets"></span><h1><a class="reference internal" href="#module-airflow.example_dags.example_datasets" title="airflow.example_dags.example_datasets"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_datasets</span></code></a><a class="headerlink" href="#module-airflow.example_dags.example_datasets" title="Permalink to this heading">ΒΆ</a></h1>
+<p>Example DAG for demonstrating behavior of Datasets feature.</p>
+<p>Notes on usage:</p>
+<p>Turn on all the dags.</p>
+<p>DAG dataset_produces_1 should run because itβs on a schedule.</p>
+<p>After dataset_produces_1 runs, dataset_consumes_1 should be triggered immediately
+because its only dataset dependency is managed by dataset_produces_1.</p>
+<p>No other dags should be triggered. Note that even though dataset_consumes_1_and_2 depends on
+the dataset in dataset_produces_1, it will not be triggered until dataset_produces_2 runs
+(and dataset_produces_2 is left with no schedule so that we can trigger it manually).</p>
+<p>Next, trigger dataset_produces_2. After dataset_produces_2 finishes,
+dataset_consumes_1_and_2 should run.</p>
+<p>Dags dataset_consumes_1_never_scheduled and dataset_consumes_unknown_never_scheduled should not run because
+they depend on datasets that never get updated.</p>
+<div class="section" id="module-contents">
+<h2>Module Contents<a class="headerlink" href="#module-contents" title="Permalink to this heading">ΒΆ</a></h2>
+<dl class="py data">
+<dt class="sig sig-object py" id="airflow.example_dags.example_datasets.dag1_dataset">
+<span class="sig-prename descclassname"><span class="pre">airflow.example_dags.example_datasets.</span></span><span class="sig-name descname"><span class="pre">dag1_dataset</span></span><a class="reference internal" href="../../../../_modules/airflow/example_dags/example_datasets.html#dag1_dataset"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow.example_dags.example_datasets.dag1_dataset" title="Permalink to this definition">ΒΆ< [...]
+<dd></dd></dl>
+
+<dl class="py data">
+<dt class="sig sig-object py" id="airflow.example_dags.example_datasets.dag2_dataset">
+<span class="sig-prename descclassname"><span class="pre">airflow.example_dags.example_datasets.</span></span><span class="sig-name descname"><span class="pre">dag2_dataset</span></span><a class="reference internal" href="../../../../_modules/airflow/example_dags/example_datasets.html#dag2_dataset"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow.example_dags.example_datasets.dag2_dataset" title="Permalink to this definition">ΒΆ< [...]
+<dd></dd></dl>
+
</div>
</div>
<div class="pager" role="navigation" aria-label="related navigation">
- <a rel="prev" title="Entrypoint" href="entrypoint.html" >
+ <a rel="prev" title="airflow.example_dags.example_complex" href="../example_complex/index.html" >
<button class="btn-hollow btn-blue bodytext__medium--cerulean-blue" accesskey="p">Previous</button>
</a>
- <a rel="next" title="Recipes" href="recipes.html" >
+ <a rel="next" title="airflow.example_dags.example_external_task_marker_dag" href="../example_external_task_marker_dag/index.html" >
<button class="btn-hollow btn-blue bodytext__medium--cerulean-blue" accesskey="n">Next</button>
</a>
</div>
@@ -894,13 +877,14 @@ compatibility</p></li>
<nav class="wy-nav-side-toc">
<div class="wy-menu-vertical">
<ul>
-<li><a class="reference internal" href="#">Dockerfile Changelog</a><ul>
-<li><a class="reference internal" href="#changes-after-publishing-the-images">Changes after publishing the images</a></li>
-<li><a class="reference internal" href="#airflow-2-4">Airflow 2.4</a></li>
-<li><a class="reference internal" href="#airflow-2-3">Airflow 2.3</a></li>
-<li><a class="reference internal" href="#airflow-2-2">Airflow 2.2</a></li>
-<li><a class="reference internal" href="#airflow-2-1">Airflow 2.1</a></li>
-<li><a class="reference internal" href="#airflow-2-0">Airflow 2.0</a></li>
+<li><a class="reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_datasets</span></code></a><ul>
+<li><a class="reference internal" href="#module-contents">Module Contents</a><ul>
+<li><a class="reference internal" href="#airflow.example_dags.example_datasets.dag1_dataset"><code class="docutils literal notranslate"><span class="pre">dag1_dataset</span></code></a></li>
+<li><a class="reference internal" href="#airflow.example_dags.example_datasets.dag2_dataset"><code class="docutils literal notranslate"><span class="pre">dag2_dataset</span></code></a></li>
+<li><a class="reference internal" href="#airflow.example_dags.example_datasets.dag1_dataset">dag1_dataset</a></li>
+<li><a class="reference internal" href="#airflow.example_dags.example_datasets.dag2_dataset">dag2_dataset</a></li>
+</ul>
+</li>
</ul>
</li>
</ul>
@@ -925,7 +909,7 @@ compatibility</p></li>
<div class="base-layout--button">
- <a href="https://github.com/apache/airflow/edit/main/docs/docker-stack/changelog.rst" rel="nofollow">
+ <a href="https://github.com/apache/airflow/edit/main/docs/apache-airflow/_api/airflow/example_dags/example_datasets/index.rst" rel="nofollow">
<button class="btn-hollow btn-brown btn-with-icon with-box-shadow button-fixed">
<svg xmlns="http://www.w3.org/2000/svg" width="30.76" height="30">
@@ -1059,18 +1043,20 @@ compatibility</p></li>
</span>
</div>
</footer>
- <script type="text/javascript" src="_static/_gen/js/docs.js"></script>
- <script type="text/javascript" id="documentation_options" data-url_root="./" src="_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../../../_static/_gen/js/docs.js"></script>
+ <script type="text/javascript" id="documentation_options" data-url_root="../../../../" src="../../../../_static/documentation_options.js"></script>
<script src="https://code.jquery.com/jquery-3.4.1.min.js" integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo=" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.3/umd/popper.min.js" integrity="sha384-ZMP7rVo3mIykV+2+9J3UJ46jBk0WLaUAdn689aCwoqbBJiSnjAK/l8WvCWPIPm49" crossorigin="anonymous"></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/js/bootstrap.min.js" integrity="sha384-ChfqqxuZUCnJSK3+MXmPNIyE6ZbWh2IMqE241rYiqJxyMiZ6OW/JmZQ5stwEULTy" crossorigin="anonymous"></script>
- <script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script>
- <script src="_static/jquery.js"></script>
- <script src="_static/underscore.js"></script>
- <script src="_static/_sphinx_javascript_frameworks_compat.js"></script>
- <script src="_static/doctools.js"></script>
- <script src="_static/clipboard.min.js"></script>
- <script src="_static/copybutton.js"></script>
- <script src="_static/js/globaltoc.js"></script>
+ <script data-url_root="../../../../" id="documentation_options" src="../../../../_static/documentation_options.js"></script>
+ <script src="../../../../_static/jquery.js"></script>
+ <script src="../../../../_static/underscore.js"></script>
+ <script src="../../../../_static/_sphinx_javascript_frameworks_compat.js"></script>
+ <script src="../../../../_static/doctools.js"></script>
+ <script src="../../../../_static/sphinx_highlight.js"></script>
+ <script src="../../../../_static/clipboard.min.js"></script>
+ <script src="../../../../_static/copybutton.js"></script>
+ <script src="../../../../_static/js/globaltoc.js"></script>
+ <script src="../../../../_static/gh-jira-links.js"></script>
</body>
</html>
\ No newline at end of file
diff --git a/docs-archive/docker-stack/changelog.html b/docs-archive/apache-airflow/2.4.2/_api/airflow/example_dags/example_external_task_marker_dag/index.html
similarity index 66%
copy from docs-archive/docker-stack/changelog.html
copy to docs-archive/apache-airflow/2.4.2/_api/airflow/example_dags/example_external_task_marker_dag/index.html
index 2fa2b8d179..3ca97f4736 100644
--- a/docs-archive/docker-stack/changelog.html
+++ b/docs-archive/apache-airflow/2.4.2/_api/airflow/example_dags/example_external_task_marker_dag/index.html
@@ -9,17 +9,18 @@
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1">
- <title>Dockerfile Changelog — docker-stack Documentation</title>
- <link rel="stylesheet" href="_static/_gen/css/main.min.css" type="text/css" />
- <link rel="stylesheet" type="text/css" href="_static/pygments.css" />
- <link rel="stylesheet" type="text/css" href="_static/_gen/css/main.min.css" />
- <link rel="stylesheet" type="text/css" href="_static/copybutton.css" />
- <link rel="stylesheet" type="text/css" href="_static/_gen/css/main-custom.min.css" />
- <link rel="shortcut icon" href="_static/pin_32.png"/>
- <link rel="index" title="Index" href="genindex.html" />
- <link rel="search" title="Search" href="search.html" />
- <link rel="next" title="Recipes" href="recipes.html" />
- <link rel="prev" title="Entrypoint" href="entrypoint.html" />
+ <title>airflow.example_dags.example_external_task_marker_dag — Airflow Documentation</title>
+ <link rel="stylesheet" href="../../../../_static/_gen/css/main.min.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../../../_static/pygments.css" />
+ <link rel="stylesheet" type="text/css" href="../../../../_static/_gen/css/main.min.css" />
+ <link rel="stylesheet" type="text/css" href="../../../../_static/copybutton.css" />
+ <link rel="stylesheet" type="text/css" href="../../../../_static/_gen/css/main-custom.min.css" />
+ <link rel="stylesheet" type="text/css" href="../../../../_static/graphviz.css" />
+ <link rel="shortcut icon" href="../../../../_static/pin_32.png"/>
+ <link rel="index" title="Index" href="../../../../genindex.html" />
+ <link rel="search" title="Search" href="../../../../search.html" />
+ <link rel="next" title="airflow.example_dags.example_kubernetes_executor" href="../example_kubernetes_executor/index.html" />
+ <link rel="prev" title="airflow.example_dags.example_datasets" href="../example_datasets/index.html" />
<!-- Matomo -->
<script>
var _paq = window._paq = window._paq || [];
@@ -280,8 +281,21 @@
<div class="content-drawer">
<div class="td-sidebar">
+<div id="docs-version-selector" class="docs-version-selector sidebar__version-selector">
+ <a class="dropdown-toggle" href="#" id="versionDropdown" role="button" data-toggle="dropdown" aria-haspopup="true"
+ aria-expanded="false">
+ <span class="bodytext__medium--greyish-brown">Version: </span><span class="version">2.4.2</span>
+ </a>
+ <div class="dropdown-menu" aria-labelledby="navbarDropdownMenuLink">
+
+ </div>
+ <script type="application/x-template" id="version-item-template">
+ <a class="dropdown-item"></a>
+ </script>
+</div>
+
<div class="searchb-box">
- <form class="search-form" action="search.html" method="get">
+ <form class="search-form" action="../../../../search.html" method="get">
<input class="search-form__input" type="text" name="q" placeholder="Search docs" size="16">
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
@@ -311,24 +325,117 @@
<div class="toctree" role="navigation" aria-label="main navigation">
- <ul class="current">
-<li class="toctree-l1"><a class="reference internal" href="index.html">Home</a></li>
-<li class="toctree-l1"><a class="reference internal" href="build.html">Building the image</a></li>
-<li class="toctree-l1"><a class="reference internal" href="entrypoint.html">Entrypoint</a></li>
-<li class="toctree-l1 current"><a class="current reference internal" href="#">Dockerfile Changelog</a><ul>
-<li class="toctree-l2"><a class="reference internal" href="#changes-after-publishing-the-images">Changes after publishing the images</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-4">Airflow 2.4</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-3">Airflow 2.3</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-2">Airflow 2.2</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-1">Airflow 2.1</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-0">Airflow 2.0</a></li>
+ <p class="caption" role="heading"><span class="caption-text">Content</span></p>
+<ul>
+<li class="toctree-l1"><a class="reference internal" href="../../../../index.html">Overview</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../project.html">Project</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../license.html">License</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../start.html">Quick Start</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../installation/index.html">Installation</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../upgrading-from-1-10/index.html">Upgrading from 1.10 to 2</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../tutorial/index.html">Tutorials</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../howto/index.html">How-to Guides</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../ui.html">UI / Screenshots</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../concepts/index.html">Concepts</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../executor/index.html">Executor</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../dag-run.html">DAG Runs</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../plugins.html">Plugins</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../security/index.html">Security</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../logging-monitoring/index.html">Logging & Monitoring</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../timezone.html">Time Zones</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../usage-cli.html">Using the CLI</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../integration.html">Integration</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../kubernetes.html">Kubernetes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../lineage.html">Lineage</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../listeners.html">Listeners</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../dag-serialization.html">DAG Serialization</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../modules_management.html">Modules Management</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release-process.html">Release Policies</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release_notes.html">Release Notes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../best-practices.html">Best Practices</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../production-deployment.html">Production Deployment</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../faq.html">FAQ</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../privacy_notice.html">Privacy Notice</a></li>
+</ul>
+<p class="caption" role="heading"><span class="caption-text">References</span></p>
+<ul class="current">
+<li class="toctree-l1"><a class="reference internal" href="../../../../operators-and-hooks-ref.html">Operators and hooks</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../cli-and-env-variables-ref.html">CLI</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../templates-ref.html">Templates</a></li>
+<li class="toctree-l1 current"><a class="reference internal" href="../../../../python-api-ref.html">Python API</a><ul class="current">
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#dags">DAGs</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#operators">Operators</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#hooks">Hooks</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#executors">Executors</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#models">Models</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#exceptions">Exceptions</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#secrets-backends">Secrets Backends</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#timetables">Timetables</a></li>
+<li class="toctree-l2 current"><a class="reference internal" href="../../../../python-api-ref.html#example-dags">Example DAGs</a><ul class="current">
+<li class="toctree-l3 current"><a class="reference internal" href="../index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags</span></code></a><ul class="current">
+<li class="toctree-l4"><a class="reference internal" href="../index.html#subpackages">Subpackages</a></li>
+<li class="toctree-l4 current"><a class="reference internal" href="../index.html#submodules">Submodules</a><ul class="current">
+<li class="toctree-l5"><a class="reference internal" href="../example_bash_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_bash_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_datetime_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_datetime_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_day_of_week_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_day_of_week_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_labels/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_labels</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_operator_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_operator_decorator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_python_dop_operator_3/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_python_dop_operator_3</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_complex/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_complex</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_datasets/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_datasets</span></code></a></li>
+<li class="toctree-l5 current"><a class="current reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_external_task_marker_dag</span></code></a><ul>
+<li class="toctree-l6"><a class="reference internal" href="#module-contents">Module Contents</a><ul>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_external_task_marker_dag.start_date"><code class="docutils literal notranslate"><span class="pre">start_date</span></code></a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_external_task_marker_dag.parent_task"><code class="docutils literal notranslate"><span class="pre">parent_task</span></code></a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_external_task_marker_dag.child_task1"><code class="docutils literal notranslate"><span class="pre">child_task1</span></code></a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_external_task_marker_dag.start_date">start_date</a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_external_task_marker_dag.parent_task">parent_task</a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_external_task_marker_dag.child_task1">child_task1</a></li>
</ul>
</li>
-<li class="toctree-l1"><a class="reference internal" href="recipes.html">Recipes</a></li>
</ul>
-<p class="caption" role="heading"><span class="caption-text">References</span></p>
+</li>
+<li class="toctree-l5"><a class="reference internal" href="../example_kubernetes_executor/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_kubernetes_executor</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_latest_only/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_latest_only</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_latest_only_with_trigger/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_latest_only_with_trigger</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_local_kubernetes_executor/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_local_kubernetes_executor</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_nested_branch_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_nested_branch_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_passing_params_via_test_command/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_passing_params_via_test_command</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_python_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_python_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_short_circuit_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_short_circuit_decorator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_short_circuit_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_short_circuit_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_skip_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_skip_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_subdag_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_subdag_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_task_group/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_task_group</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_task_group_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_task_group_decorator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_time_delta_sensor_async/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_time_delta_sensor_async</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_trigger_controller_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_trigger_controller_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_trigger_target_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_trigger_target_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_xcom/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_xcom</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_xcomargs/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_xcomargs</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial_taskflow_api/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_taskflow_api</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial_taskflow_api_virtualenv/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_taskflow_api_virtualenv</span></code></a></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#utils">Utils</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../stable-rest-api-ref.html">Stable REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../deprecated-rest-api-ref.html">Deprecated REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../configurations-ref.html">Configurations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../extra-packages-ref.html">Extra packages</a></li>
+</ul>
+<p class="caption" role="heading"><span class="caption-text">Internal DB details</span></p>
<ul>
-<li class="toctree-l1"><a class="reference internal" href="build-arg-ref.html">Image build arguments reference</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../migrations-ref.html">Database Migrations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../database-erd-ref.html">Database ERD Schema</a></li>
</ul>
</div>
@@ -409,8 +516,21 @@
<div class="td-sidebar desktop-only d-print-none">
+<div id="docs-version-selector" class="docs-version-selector sidebar__version-selector">
+ <a class="dropdown-toggle" href="#" id="versionDropdown" role="button" data-toggle="dropdown" aria-haspopup="true"
+ aria-expanded="false">
+ <span class="bodytext__medium--greyish-brown">Version: </span><span class="version">2.4.2</span>
+ </a>
+ <div class="dropdown-menu" aria-labelledby="navbarDropdownMenuLink">
+
+ </div>
+ <script type="application/x-template" id="version-item-template">
+ <a class="dropdown-item"></a>
+ </script>
+</div>
+
<div class="searchb-box">
- <form class="search-form" action="search.html" method="get">
+ <form class="search-form" action="../../../../search.html" method="get">
<input class="search-form__input" type="text" name="q" placeholder="Search docs" size="16">
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
@@ -440,24 +560,117 @@
<div class="toctree" role="navigation" aria-label="main navigation">
- <ul class="current">
-<li class="toctree-l1"><a class="reference internal" href="index.html">Home</a></li>
-<li class="toctree-l1"><a class="reference internal" href="build.html">Building the image</a></li>
-<li class="toctree-l1"><a class="reference internal" href="entrypoint.html">Entrypoint</a></li>
-<li class="toctree-l1 current"><a class="current reference internal" href="#">Dockerfile Changelog</a><ul>
-<li class="toctree-l2"><a class="reference internal" href="#changes-after-publishing-the-images">Changes after publishing the images</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-4">Airflow 2.4</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-3">Airflow 2.3</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-2">Airflow 2.2</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-1">Airflow 2.1</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-0">Airflow 2.0</a></li>
+ <p class="caption" role="heading"><span class="caption-text">Content</span></p>
+<ul>
+<li class="toctree-l1"><a class="reference internal" href="../../../../index.html">Overview</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../project.html">Project</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../license.html">License</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../start.html">Quick Start</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../installation/index.html">Installation</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../upgrading-from-1-10/index.html">Upgrading from 1.10 to 2</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../tutorial/index.html">Tutorials</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../howto/index.html">How-to Guides</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../ui.html">UI / Screenshots</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../concepts/index.html">Concepts</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../executor/index.html">Executor</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../dag-run.html">DAG Runs</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../plugins.html">Plugins</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../security/index.html">Security</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../logging-monitoring/index.html">Logging & Monitoring</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../timezone.html">Time Zones</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../usage-cli.html">Using the CLI</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../integration.html">Integration</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../kubernetes.html">Kubernetes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../lineage.html">Lineage</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../listeners.html">Listeners</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../dag-serialization.html">DAG Serialization</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../modules_management.html">Modules Management</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release-process.html">Release Policies</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release_notes.html">Release Notes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../best-practices.html">Best Practices</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../production-deployment.html">Production Deployment</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../faq.html">FAQ</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../privacy_notice.html">Privacy Notice</a></li>
+</ul>
+<p class="caption" role="heading"><span class="caption-text">References</span></p>
+<ul class="current">
+<li class="toctree-l1"><a class="reference internal" href="../../../../operators-and-hooks-ref.html">Operators and hooks</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../cli-and-env-variables-ref.html">CLI</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../templates-ref.html">Templates</a></li>
+<li class="toctree-l1 current"><a class="reference internal" href="../../../../python-api-ref.html">Python API</a><ul class="current">
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#dags">DAGs</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#operators">Operators</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#hooks">Hooks</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#executors">Executors</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#models">Models</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#exceptions">Exceptions</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#secrets-backends">Secrets Backends</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#timetables">Timetables</a></li>
+<li class="toctree-l2 current"><a class="reference internal" href="../../../../python-api-ref.html#example-dags">Example DAGs</a><ul class="current">
+<li class="toctree-l3 current"><a class="reference internal" href="../index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags</span></code></a><ul class="current">
+<li class="toctree-l4"><a class="reference internal" href="../index.html#subpackages">Subpackages</a></li>
+<li class="toctree-l4 current"><a class="reference internal" href="../index.html#submodules">Submodules</a><ul class="current">
+<li class="toctree-l5"><a class="reference internal" href="../example_bash_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_bash_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_datetime_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_datetime_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_day_of_week_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_day_of_week_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_labels/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_labels</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_operator_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_operator_decorator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_python_dop_operator_3/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_python_dop_operator_3</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_complex/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_complex</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_datasets/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_datasets</span></code></a></li>
+<li class="toctree-l5 current"><a class="current reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_external_task_marker_dag</span></code></a><ul>
+<li class="toctree-l6"><a class="reference internal" href="#module-contents">Module Contents</a><ul>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_external_task_marker_dag.start_date"><code class="docutils literal notranslate"><span class="pre">start_date</span></code></a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_external_task_marker_dag.parent_task"><code class="docutils literal notranslate"><span class="pre">parent_task</span></code></a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_external_task_marker_dag.child_task1"><code class="docutils literal notranslate"><span class="pre">child_task1</span></code></a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_external_task_marker_dag.start_date">start_date</a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_external_task_marker_dag.parent_task">parent_task</a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_external_task_marker_dag.child_task1">child_task1</a></li>
</ul>
</li>
-<li class="toctree-l1"><a class="reference internal" href="recipes.html">Recipes</a></li>
</ul>
-<p class="caption" role="heading"><span class="caption-text">References</span></p>
+</li>
+<li class="toctree-l5"><a class="reference internal" href="../example_kubernetes_executor/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_kubernetes_executor</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_latest_only/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_latest_only</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_latest_only_with_trigger/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_latest_only_with_trigger</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_local_kubernetes_executor/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_local_kubernetes_executor</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_nested_branch_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_nested_branch_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_passing_params_via_test_command/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_passing_params_via_test_command</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_python_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_python_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_short_circuit_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_short_circuit_decorator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_short_circuit_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_short_circuit_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_skip_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_skip_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_subdag_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_subdag_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_task_group/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_task_group</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_task_group_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_task_group_decorator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_time_delta_sensor_async/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_time_delta_sensor_async</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_trigger_controller_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_trigger_controller_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_trigger_target_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_trigger_target_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_xcom/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_xcom</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_xcomargs/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_xcomargs</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial_taskflow_api/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_taskflow_api</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial_taskflow_api_virtualenv/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_taskflow_api_virtualenv</span></code></a></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#utils">Utils</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../stable-rest-api-ref.html">Stable REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../deprecated-rest-api-ref.html">Deprecated REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../configurations-ref.html">Configurations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../extra-packages-ref.html">Extra packages</a></li>
+</ul>
+<p class="caption" role="heading"><span class="caption-text">Internal DB details</span></p>
<ul>
-<li class="toctree-l1"><a class="reference internal" href="build-arg-ref.html">Image build arguments reference</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../migrations-ref.html">Database Migrations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../database-erd-ref.html">Database ERD Schema</a></li>
</ul>
</div>
@@ -546,9 +759,13 @@
<ul class="breadcrumb">
- <li class="breadcrumb-item"><a href="index.html" class="icon icon-home"> Home</a></li>
+ <li class="breadcrumb-item"><a href="../../../../index.html" class="icon icon-home"> Home</a></li>
+
+ <li class="breadcrumb-item"><a href="../../../../python-api-ref.html">Python API Reference</a></li>
+
+ <li class="breadcrumb-item"><a href="../index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags</span></code></a></li>
- <li class="breadcrumb-item"><a href="changelog.html"> Dockerfile Changelog</a></li>
+ <li class="breadcrumb-item"><a href="index.html"> <code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_external_task_marker_dag</span></code></a></li>
</ul>
</div>
@@ -559,272 +776,48 @@
<div class="bodywrapper">
<div class="body" role="main">
- <blockquote>
-<div></div></blockquote>
-<div class="section" id="dockerfile-changelog">
-<h1>Dockerfile Changelog<a class="headerlink" href="#dockerfile-changelog" title="Permalink to this heading">ΒΆ</a></h1>
-<p>The <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> does not strictly follow the <a class="reference external" href="https://semver.org/">SemVer</a> approach of
-Apache Airflow when it comes to features and backwards compatibility. While Airflow code strictly
-follows it, the <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> is really a way to give users a conveniently packaged Airflow
-using standard container approach, so occasionally there are some changes in the building process
-or in the entrypoint of the image that require slight adaptation of how it is used or built.</p>
-<p>The Changelog below describes the changes introduced in each version of the docker images released by
-the Airflow team.</p>
-<dl class="field-list simple">
-<dt class="field-odd">note</dt>
-<dd class="field-odd"><p>The Changelog below concerns only the convenience production images released at
-<a class="reference external" href="https://hub.docker.com/r/apache/airflow">Airflow DockerHub</a> . The images that are released
-there, are usually built using the <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> released together with Airflow. However You are
-free to take latest released <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> from Airflow and use it to build an image for
-any Airflow version from the <code class="docutils literal notranslate"><span class="pre">Airflow</span> <span class="pre">2</span></code> line. There is no guarantee that it works, but if it does,
-then you can use latest features from that image to build the previous Airflow versions.</p>
-</dd>
-</dl>
-<div class="section" id="changes-after-publishing-the-images">
-<h2>Changes after publishing the images<a class="headerlink" href="#changes-after-publishing-the-images" title="Permalink to this heading">ΒΆ</a></h2>
-<p>Occasionally our images need to be regenerated using newer <code class="docutils literal notranslate"><span class="pre">Dockerfiles</span></code> or constraints.
-This happens when an issue is found or a breaking change is released by our dependencies
-that invalidates the already released image, and regenerating the image makes it usable again.
-While we cannot assure 100% backwards compatibility when it happens, we at least document it
-here so that users affected can find the reason for the changes.</p>
-<table class="docutils align-default">
-<colgroup>
-<col style="width: 10%" />
-<col style="width: 14%" />
-<col style="width: 28%" />
-<col style="width: 16%" />
-<col style="width: 32%" />
-</colgroup>
-<thead>
-<tr class="row-odd"><th class="head"><p>Date</p></th>
-<th class="head"><p>Affected images</p></th>
-<th class="head"><p>Potentially breaking change</p></th>
-<th class="head"><p>Reason</p></th>
-<th class="head"><p>Link to Pull Request</p></th>
-</tr>
-</thead>
-<tbody>
-<tr class="row-even"><td><p>17 June 2022</p></td>
-<td><p>2.2.5</p>
-<p>2.3.0-2.3.2</p>
-</td>
-<td><ul class="simple">
-<li><p>The <code class="docutils literal notranslate"><span class="pre">Authlib</span></code> library downgraded
-from 1.0.1 to 0.15.5 version</p></li>
-</ul>
-</td>
-<td><p>Flask App Builder
-not compatible with
-Authlib >= 1.0.0</p></td>
-<td><p><a class="reference external" href="https://github.com/apache/airflow/pull/24516">https://github.com/apache/airflow/pull/24516</a></p></td>
-</tr>
-<tr class="row-odd"><td><p>18 Jan 2022</p></td>
-<td><p>All 2.2.*, 2.1.*</p></td>
-<td><ul class="simple">
-<li><p>The AIRFLOW_GID 500 was removed</p></li>
-<li><p>MySQL <code class="docutils literal notranslate"><span class="pre">apt</span></code> repository key changed.</p></li>
-</ul>
-</td>
-<td><p>MySQL changed keys
-to sign their packages
-on 17 Jan 2022</p></td>
-<td><p><a class="reference external" href="https://github.com/apache/airflow/pull/20912">https://github.com/apache/airflow/pull/20912</a></p></td>
-</tr>
-</tbody>
-</table>
-</div>
-<div class="section" id="airflow-2-4">
-<h2>Airflow 2.4<a class="headerlink" href="#airflow-2-4" title="Permalink to this heading">ΒΆ</a></h2>
-<ul class="simple">
-<li><p>2.4.0</p>
-<ul>
-<li><p>You can specify additional <code class="docutils literal notranslate"><span class="pre">pip</span> <span class="pre">install</span></code> flags when you build the image via <code class="docutils literal notranslate"><span class="pre">ADDITIONAL_PIP_INSTALL_FLAGS</span></code>
-build arg.</p></li>
-<li><p>Support for <code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Buster</span></code> was dropped, including the possibility of building customized images as
-<code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Buster</span></code> reached end of life.</p></li>
-</ul>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-3">
-<h2>Airflow 2.3<a class="headerlink" href="#airflow-2-3" title="Permalink to this heading">ΒΆ</a></h2>
-<ul class="simple">
-<li><p>2.3.0</p>
-<ul>
-<li><p>Airflow 2.3 <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> is now better optimized for caching and βstandaloneβ which means that you
-can copy <strong>just</strong> the <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> to any folder and start building custom images. This
-however requires <a class="reference external" href="https://docs.docker.com/develop/develop-images/build_enhancements/">Buildkit</a>
-to build the image because we started using features that are only available in <code class="docutils literal notranslate"><span class="pre">Buildkit</span></code>.
-This can be done by setting <code class="docutils literal notranslate"><span class="pre">DOCKER_BUILDKIT=1</span></code> as an environment variable
-or by installing <a class="reference external" href="https://docs.docker.com/buildx/working-with-buildx/">the buildx plugin</a>
-and running <code class="docutils literal notranslate"><span class="pre">docker</span> <span class="pre">buildx</span> <span class="pre">build</span></code> command.</p></li>
-<li><p>Add Python 3.10 support</p></li>
-<li><p>Switch to <code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Bullseye</span></code> based images. <code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Buster</span></code> is deprecated and only available for
-customized image building.</p></li>
-<li><p>Add Multi-Platform support (AMD64/ARM64) in order to accommodate MacOS M1 users</p></li>
-<li><p>Build parameters which control if packages and Airflow should be installed from context file were
-unified</p></li>
-<li><p>The <code class="docutils literal notranslate"><span class="pre">INSTALL_FROM_PYPI</span></code> arg was removed - it is automatically detected now.</p></li>
-<li><p>The <code class="docutils literal notranslate"><span class="pre">INSTALL_FROM_DOCKER_CONTEXT_FILES</span></code> arg changed to <code class="docutils literal notranslate"><span class="pre">INSTALL_PACKAGES_FROM_CONTEXT</span></code></p></li>
-</ul>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-2">
-<h2>Airflow 2.2<a class="headerlink" href="#airflow-2-2" title="Permalink to this heading">ΒΆ</a></h2>
-<ul class="simple">
-<li><p>2.2.4
-* Add support for both <code class="docutils literal notranslate"><span class="pre">.piprc</span></code> and <code class="docutils literal notranslate"><span class="pre">pip.conf</span></code> customizations
-* Add ArtifactHub labels for better discovery of the images
-* Update default Python image to be 3.7
-* Build images with <code class="docutils literal notranslate"><span class="pre">Buildkit</span></code> (optional)
-* Fix building the image on Azure with <code class="docutils literal notranslate"><span class="pre">text</span> <span class="pre">file</span> <span class="pre">busy</span></code> error</p></li>
-<li><p>2.2.3
-* No changes</p></li>
-<li><p>2.2.2
-* No changes</p></li>
-<li><p>2.2.1
-* Workaround the problem with <code class="docutils literal notranslate"><span class="pre">libstdcpp</span></code> TLS error</p></li>
-<li><p>2.2.0
-* Remove AIRFLOW_GID (5000) from Airflow images (potentially breaking change for users using it)
-* Added warnings for Quick-start docker compose
-* Fix warm shutdown for celery worker (signal propagation)
-* Add Oauth libraries to PROD images
-* Add Python 3.9 support</p></li>
-</ul>
-</div>
-<div class="section" id="airflow-2-1">
-<h2>Airflow 2.1<a class="headerlink" href="#airflow-2-1" title="Permalink to this heading">ΒΆ</a></h2>
-<ul>
-<li><p>MySQL changed the keys to sign their packages on 17 Feb 2022. This caused all released images
-to fail when being extended. As result, on 18 Feb 2021 we re-released all
-the <code class="docutils literal notranslate"><span class="pre">2.2</span></code> and <code class="docutils literal notranslate"><span class="pre">2.1</span></code> images with latest versions of <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code>
-containing the new signing key.</p>
-<p>There were subtle changes in the behaviour of some 2.1 images due to that (more details below)
-Detailed <a class="reference external" href="https://github.com/apache/airflow/issues/20911">issue here</a></p>
-</li>
-</ul>
-<dl class="field-list simple">
-<dt class="field-odd">note</dt>
-<dd class="field-odd"><p>that the changes below were valid before image refreshing on 18 Feb 2022.
-Since all the images were refreshed on 18 Feb with the same <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code>
-as 2.1.4, the changes 2.1.1 -> 2.1.3 are
-effectively applied to all the images in 2.1.* line.
-The images refreshed have also those fixes added:</p>
-</dd>
-</dl>
-<ul class="simple">
-<li><p>All 2.1.* image versions refreshed on 18 Feb 2022 have those fixes applied:
-* Fix building the image on Azure with <code class="docutils literal notranslate"><span class="pre">text</span> <span class="pre">file</span> <span class="pre">busy</span></code> error
-* Workaround the problem with <code class="docutils literal notranslate"><span class="pre">libstdcpp</span></code> TLS error
-* Remove AIRFLOW_GID (5000) from Airflow images (potentially breaking change for users using it)
-* Added warnings for Quick-start docker compose
-* Add Oauth libraries to PROD images</p></li>
-</ul>
-<p>Original image Changelog (before the refresh on 18 Feb 2022):</p>
-<ul class="simple">
-<li><dl class="simple">
-<dt>2.1.4</dt><dd><ul>
-<li><p>Workaround the problem with <code class="docutils literal notranslate"><span class="pre">libstdcpp</span></code> TLS error</p></li>
-<li><p>fixed detection of port number in connection URL</p></li>
-<li><p>Improve warnings for quick-start-docker compose</p></li>
-<li><p>Fix warm shutdown for celery worker (signal propagation)</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.3</dt><dd><ul>
-<li><p>fixed auto-creation of user to use non-deprecated <code class="docutils literal notranslate"><span class="pre">create</span> <span class="pre">user</span></code> rather than <code class="docutils literal notranslate"><span class="pre">user_create</span></code></p></li>
-<li><p>remove waiting for celery backend for <code class="docutils literal notranslate"><span class="pre">worker</span></code> and <code class="docutils literal notranslate"><span class="pre">flower</span></code> commands rather than <code class="docutils literal notranslate"><span class="pre">scheduler</span></code> and <code class="docutils literal notranslate"><span class="pre">celery</span></code> only</p></li>
-<li><p>remove deprecated <code class="docutils literal notranslate"><span class="pre">airflow</span> <span class="pre">upgradedb</span></code> command from Airflow 1.10 in case upgrade is requested</p></li>
-<li><p>Add Python 3.9 support</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.2</dt><dd><ul>
-<li><p>No changes</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.1</dt><dd><ul>
-<li><p>Fix failure of lack of default commands (failed when no commands were passed)</p></li>
-<li><p>Added <code class="docutils literal notranslate"><span class="pre">_PIP_ADDITIONAL_REQUIREMENTS</span></code> development feature</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.0</dt><dd><ul>
-<li><p>Unset default <code class="docutils literal notranslate"><span class="pre">PIP_USER</span></code> variable - which caused PythonVirtualEnv to fail</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-0">
-<h2>Airflow 2.0<a class="headerlink" href="#airflow-2-0" title="Permalink to this heading">ΒΆ</a></h2>
-<ul>
-<li><p>MySQL changed the keys to sign their packages on 17 Feb 2022. This caused all released images
-to fail when being extended. As result, on 18 Feb 2021 we re-released all
-the <code class="docutils literal notranslate"><span class="pre">2.2</span></code> and <code class="docutils literal notranslate"><span class="pre">2.1</span></code> images with latest versions of <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code>
-containing the new signing key.</p>
-<p>There were no changes in the behaviour of 2.0.2 image due to that
-Detailed <a class="reference external" href="https://github.com/apache/airflow/issues/20911">issue here</a> .
-Only 2.0.2 image was regenerated, as 2.0.1 and 2.0.0 versions are hardly used and it is unlikely someone
-would like to extend those images. Extending 2.0.1 and 2.0.0 images will lead to failures of βmissing keyβ.</p>
-</li>
-<li><dl class="simple">
-<dt>2.0.2</dt><dd><ul class="simple">
-<li><p>Set correct PYTHONPATH for <code class="docutils literal notranslate"><span class="pre">root</span></code> user. Allows to run the image as root</p></li>
-<li><p>Warn if the deprecated 5000 group ID was used for airflow user when running the image
-(should be 0 for the OpenShift compatibility). Fails if the group 5000 was used with any other user
-(it would not work anyway but with cryptic errors)</p></li>
-<li><p>Set umask as 002 by default, so that you can actually change the user id used to run the image
-(required for OpenShift compatibility)</p></li>
-<li><p>Skip checking the DB and celery backend if CONNECTION_CHECK_MAX_COUNT is equal to 0</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.0.1</dt><dd><ul class="simple">
-<li><p>Avoid reverse IP lookup when checking DB availability. This helped to solve long delays on misconfigured
-docker engines</p></li>
-<li><p>Add auto-detection of redis and amqp broker ports</p></li>
-<li><p>Fixed detection of all user/password combinations in URLs - helps in auto-detecting ports and testing
-connectivity</p></li>
-<li><p>Add possibility to create Admin user automatically when entering the image</p></li>
-<li><p>Automatically create system user when different user than <code class="docutils literal notranslate"><span class="pre">airflow</span></code> is used. Needed for OpenShift
-compatibility</p></li>
-<li><p>Allows to exec to <code class="docutils literal notranslate"><span class="pre">bash</span></code> or <code class="docutils literal notranslate"><span class="pre">python</span></code> if specified as parameters</p></li>
-<li><p>Remove <code class="docutils literal notranslate"><span class="pre">airflow</span></code> command if it is specified as first parameter of the <code class="docutils literal notranslate"><span class="pre">run</span></code> command</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.0.0</dt><dd><ul class="simple">
-<li><p>Initial release of the image based on Debian Buster</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-</ul>
+ <div class="section" id="module-airflow.example_dags.example_external_task_marker_dag">
+<span id="airflow-example-dags-example-external-task-marker-dag"></span><h1><a class="reference internal" href="#module-airflow.example_dags.example_external_task_marker_dag" title="airflow.example_dags.example_external_task_marker_dag"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_external_task_marker_dag</span></code></a><a class="headerlink" href="#module-airflow.example_dags.example_external_task_marker_dag" title="Permalink [...]
+<p>Example DAG demonstrating setting up inter-DAG dependencies using ExternalTaskSensor and
+ExternalTaskMarker.</p>
+<p>In this example, child_task1 in example_external_task_marker_child depends on parent_task in
+example_external_task_marker_parent. When parent_task is cleared with βRecursiveβ selected,
+the presence of ExternalTaskMarker tells Airflow to clear child_task1 and its downstream tasks.</p>
+<p>ExternalTaskSensor will keep poking for the status of remote ExternalTaskMarker task at a regular
+interval till one of the following will happen:</p>
+<p>ExternalTaskMarker reaches the states mentioned in the allowed_states list.
+In this case, ExternalTaskSensor will exit with a success status code</p>
+<p>ExternalTaskMarker reaches the states mentioned in the failed_states list
+In this case, ExternalTaskSensor will raise an AirflowException and user need to handle this
+with multiple downstream tasks</p>
+<p>ExternalTaskSensor times out. In this case, ExternalTaskSensor will raise AirflowSkipException
+or AirflowSensorTimeout exception</p>
+<div class="section" id="module-contents">
+<h2>Module Contents<a class="headerlink" href="#module-contents" title="Permalink to this heading">ΒΆ</a></h2>
+<dl class="py data">
+<dt class="sig sig-object py" id="airflow.example_dags.example_external_task_marker_dag.start_date">
+<span class="sig-prename descclassname"><span class="pre">airflow.example_dags.example_external_task_marker_dag.</span></span><span class="sig-name descname"><span class="pre">start_date</span></span><a class="reference internal" href="../../../../_modules/airflow/example_dags/example_external_task_marker_dag.html#start_date"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow.example_dags.example_external_task_marker_dag.start_dat [...]
+<dd></dd></dl>
+
+<dl class="py data">
+<dt class="sig sig-object py" id="airflow.example_dags.example_external_task_marker_dag.parent_task">
+<span class="sig-prename descclassname"><span class="pre">airflow.example_dags.example_external_task_marker_dag.</span></span><span class="sig-name descname"><span class="pre">parent_task</span></span><a class="reference internal" href="../../../../_modules/airflow/example_dags/example_external_task_marker_dag.html#parent_task"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow.example_dags.example_external_task_marker_dag.parent_ [...]
+<dd></dd></dl>
+
+<dl class="py data">
+<dt class="sig sig-object py" id="airflow.example_dags.example_external_task_marker_dag.child_task1">
+<span class="sig-prename descclassname"><span class="pre">airflow.example_dags.example_external_task_marker_dag.</span></span><span class="sig-name descname"><span class="pre">child_task1</span></span><a class="reference internal" href="../../../../_modules/airflow/example_dags/example_external_task_marker_dag.html#child_task1"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow.example_dags.example_external_task_marker_dag.child_t [...]
+<dd></dd></dl>
+
</div>
</div>
<div class="pager" role="navigation" aria-label="related navigation">
- <a rel="prev" title="Entrypoint" href="entrypoint.html" >
+ <a rel="prev" title="airflow.example_dags.example_datasets" href="../example_datasets/index.html" >
<button class="btn-hollow btn-blue bodytext__medium--cerulean-blue" accesskey="p">Previous</button>
</a>
- <a rel="next" title="Recipes" href="recipes.html" >
+ <a rel="next" title="airflow.example_dags.example_kubernetes_executor" href="../example_kubernetes_executor/index.html" >
<button class="btn-hollow btn-blue bodytext__medium--cerulean-blue" accesskey="n">Next</button>
</a>
</div>
@@ -894,13 +887,16 @@ compatibility</p></li>
<nav class="wy-nav-side-toc">
<div class="wy-menu-vertical">
<ul>
-<li><a class="reference internal" href="#">Dockerfile Changelog</a><ul>
-<li><a class="reference internal" href="#changes-after-publishing-the-images">Changes after publishing the images</a></li>
-<li><a class="reference internal" href="#airflow-2-4">Airflow 2.4</a></li>
-<li><a class="reference internal" href="#airflow-2-3">Airflow 2.3</a></li>
-<li><a class="reference internal" href="#airflow-2-2">Airflow 2.2</a></li>
-<li><a class="reference internal" href="#airflow-2-1">Airflow 2.1</a></li>
-<li><a class="reference internal" href="#airflow-2-0">Airflow 2.0</a></li>
+<li><a class="reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_external_task_marker_dag</span></code></a><ul>
+<li><a class="reference internal" href="#module-contents">Module Contents</a><ul>
+<li><a class="reference internal" href="#airflow.example_dags.example_external_task_marker_dag.start_date"><code class="docutils literal notranslate"><span class="pre">start_date</span></code></a></li>
+<li><a class="reference internal" href="#airflow.example_dags.example_external_task_marker_dag.parent_task"><code class="docutils literal notranslate"><span class="pre">parent_task</span></code></a></li>
+<li><a class="reference internal" href="#airflow.example_dags.example_external_task_marker_dag.child_task1"><code class="docutils literal notranslate"><span class="pre">child_task1</span></code></a></li>
+<li><a class="reference internal" href="#airflow.example_dags.example_external_task_marker_dag.start_date">start_date</a></li>
+<li><a class="reference internal" href="#airflow.example_dags.example_external_task_marker_dag.parent_task">parent_task</a></li>
+<li><a class="reference internal" href="#airflow.example_dags.example_external_task_marker_dag.child_task1">child_task1</a></li>
+</ul>
+</li>
</ul>
</li>
</ul>
@@ -925,7 +921,7 @@ compatibility</p></li>
<div class="base-layout--button">
- <a href="https://github.com/apache/airflow/edit/main/docs/docker-stack/changelog.rst" rel="nofollow">
+ <a href="https://github.com/apache/airflow/edit/main/docs/apache-airflow/_api/airflow/example_dags/example_external_task_marker_dag/index.rst" rel="nofollow">
<button class="btn-hollow btn-brown btn-with-icon with-box-shadow button-fixed">
<svg xmlns="http://www.w3.org/2000/svg" width="30.76" height="30">
@@ -1059,18 +1055,20 @@ compatibility</p></li>
</span>
</div>
</footer>
- <script type="text/javascript" src="_static/_gen/js/docs.js"></script>
- <script type="text/javascript" id="documentation_options" data-url_root="./" src="_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../../../_static/_gen/js/docs.js"></script>
+ <script type="text/javascript" id="documentation_options" data-url_root="../../../../" src="../../../../_static/documentation_options.js"></script>
<script src="https://code.jquery.com/jquery-3.4.1.min.js" integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo=" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.3/umd/popper.min.js" integrity="sha384-ZMP7rVo3mIykV+2+9J3UJ46jBk0WLaUAdn689aCwoqbBJiSnjAK/l8WvCWPIPm49" crossorigin="anonymous"></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/js/bootstrap.min.js" integrity="sha384-ChfqqxuZUCnJSK3+MXmPNIyE6ZbWh2IMqE241rYiqJxyMiZ6OW/JmZQ5stwEULTy" crossorigin="anonymous"></script>
- <script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script>
- <script src="_static/jquery.js"></script>
- <script src="_static/underscore.js"></script>
- <script src="_static/_sphinx_javascript_frameworks_compat.js"></script>
- <script src="_static/doctools.js"></script>
- <script src="_static/clipboard.min.js"></script>
- <script src="_static/copybutton.js"></script>
- <script src="_static/js/globaltoc.js"></script>
+ <script data-url_root="../../../../" id="documentation_options" src="../../../../_static/documentation_options.js"></script>
+ <script src="../../../../_static/jquery.js"></script>
+ <script src="../../../../_static/underscore.js"></script>
+ <script src="../../../../_static/_sphinx_javascript_frameworks_compat.js"></script>
+ <script src="../../../../_static/doctools.js"></script>
+ <script src="../../../../_static/sphinx_highlight.js"></script>
+ <script src="../../../../_static/clipboard.min.js"></script>
+ <script src="../../../../_static/copybutton.js"></script>
+ <script src="../../../../_static/js/globaltoc.js"></script>
+ <script src="../../../../_static/gh-jira-links.js"></script>
</body>
</html>
\ No newline at end of file
diff --git a/docs-archive/docker-stack/changelog.html b/docs-archive/apache-airflow/2.4.2/_api/airflow/example_dags/example_kubernetes_executor/index.html
similarity index 65%
copy from docs-archive/docker-stack/changelog.html
copy to docs-archive/apache-airflow/2.4.2/_api/airflow/example_dags/example_kubernetes_executor/index.html
index 2fa2b8d179..0f95a3cea5 100644
--- a/docs-archive/docker-stack/changelog.html
+++ b/docs-archive/apache-airflow/2.4.2/_api/airflow/example_dags/example_kubernetes_executor/index.html
@@ -9,17 +9,18 @@
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1">
- <title>Dockerfile Changelog — docker-stack Documentation</title>
- <link rel="stylesheet" href="_static/_gen/css/main.min.css" type="text/css" />
- <link rel="stylesheet" type="text/css" href="_static/pygments.css" />
- <link rel="stylesheet" type="text/css" href="_static/_gen/css/main.min.css" />
- <link rel="stylesheet" type="text/css" href="_static/copybutton.css" />
- <link rel="stylesheet" type="text/css" href="_static/_gen/css/main-custom.min.css" />
- <link rel="shortcut icon" href="_static/pin_32.png"/>
- <link rel="index" title="Index" href="genindex.html" />
- <link rel="search" title="Search" href="search.html" />
- <link rel="next" title="Recipes" href="recipes.html" />
- <link rel="prev" title="Entrypoint" href="entrypoint.html" />
+ <title>airflow.example_dags.example_kubernetes_executor — Airflow Documentation</title>
+ <link rel="stylesheet" href="../../../../_static/_gen/css/main.min.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../../../_static/pygments.css" />
+ <link rel="stylesheet" type="text/css" href="../../../../_static/_gen/css/main.min.css" />
+ <link rel="stylesheet" type="text/css" href="../../../../_static/copybutton.css" />
+ <link rel="stylesheet" type="text/css" href="../../../../_static/_gen/css/main-custom.min.css" />
+ <link rel="stylesheet" type="text/css" href="../../../../_static/graphviz.css" />
+ <link rel="shortcut icon" href="../../../../_static/pin_32.png"/>
+ <link rel="index" title="Index" href="../../../../genindex.html" />
+ <link rel="search" title="Search" href="../../../../search.html" />
+ <link rel="next" title="airflow.example_dags.example_latest_only" href="../example_latest_only/index.html" />
+ <link rel="prev" title="airflow.example_dags.example_external_task_marker_dag" href="../example_external_task_marker_dag/index.html" />
<!-- Matomo -->
<script>
var _paq = window._paq = window._paq || [];
@@ -280,8 +281,21 @@
<div class="content-drawer">
<div class="td-sidebar">
+<div id="docs-version-selector" class="docs-version-selector sidebar__version-selector">
+ <a class="dropdown-toggle" href="#" id="versionDropdown" role="button" data-toggle="dropdown" aria-haspopup="true"
+ aria-expanded="false">
+ <span class="bodytext__medium--greyish-brown">Version: </span><span class="version">2.4.2</span>
+ </a>
+ <div class="dropdown-menu" aria-labelledby="navbarDropdownMenuLink">
+
+ </div>
+ <script type="application/x-template" id="version-item-template">
+ <a class="dropdown-item"></a>
+ </script>
+</div>
+
<div class="searchb-box">
- <form class="search-form" action="search.html" method="get">
+ <form class="search-form" action="../../../../search.html" method="get">
<input class="search-form__input" type="text" name="q" placeholder="Search docs" size="16">
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
@@ -311,24 +325,121 @@
<div class="toctree" role="navigation" aria-label="main navigation">
- <ul class="current">
-<li class="toctree-l1"><a class="reference internal" href="index.html">Home</a></li>
-<li class="toctree-l1"><a class="reference internal" href="build.html">Building the image</a></li>
-<li class="toctree-l1"><a class="reference internal" href="entrypoint.html">Entrypoint</a></li>
-<li class="toctree-l1 current"><a class="current reference internal" href="#">Dockerfile Changelog</a><ul>
-<li class="toctree-l2"><a class="reference internal" href="#changes-after-publishing-the-images">Changes after publishing the images</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-4">Airflow 2.4</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-3">Airflow 2.3</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-2">Airflow 2.2</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-1">Airflow 2.1</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-0">Airflow 2.0</a></li>
+ <p class="caption" role="heading"><span class="caption-text">Content</span></p>
+<ul>
+<li class="toctree-l1"><a class="reference internal" href="../../../../index.html">Overview</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../project.html">Project</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../license.html">License</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../start.html">Quick Start</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../installation/index.html">Installation</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../upgrading-from-1-10/index.html">Upgrading from 1.10 to 2</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../tutorial/index.html">Tutorials</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../howto/index.html">How-to Guides</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../ui.html">UI / Screenshots</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../concepts/index.html">Concepts</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../executor/index.html">Executor</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../dag-run.html">DAG Runs</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../plugins.html">Plugins</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../security/index.html">Security</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../logging-monitoring/index.html">Logging & Monitoring</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../timezone.html">Time Zones</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../usage-cli.html">Using the CLI</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../integration.html">Integration</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../kubernetes.html">Kubernetes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../lineage.html">Lineage</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../listeners.html">Listeners</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../dag-serialization.html">DAG Serialization</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../modules_management.html">Modules Management</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release-process.html">Release Policies</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release_notes.html">Release Notes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../best-practices.html">Best Practices</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../production-deployment.html">Production Deployment</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../faq.html">FAQ</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../privacy_notice.html">Privacy Notice</a></li>
+</ul>
+<p class="caption" role="heading"><span class="caption-text">References</span></p>
+<ul class="current">
+<li class="toctree-l1"><a class="reference internal" href="../../../../operators-and-hooks-ref.html">Operators and hooks</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../cli-and-env-variables-ref.html">CLI</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../templates-ref.html">Templates</a></li>
+<li class="toctree-l1 current"><a class="reference internal" href="../../../../python-api-ref.html">Python API</a><ul class="current">
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#dags">DAGs</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#operators">Operators</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#hooks">Hooks</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#executors">Executors</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#models">Models</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#exceptions">Exceptions</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#secrets-backends">Secrets Backends</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#timetables">Timetables</a></li>
+<li class="toctree-l2 current"><a class="reference internal" href="../../../../python-api-ref.html#example-dags">Example DAGs</a><ul class="current">
+<li class="toctree-l3 current"><a class="reference internal" href="../index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags</span></code></a><ul class="current">
+<li class="toctree-l4"><a class="reference internal" href="../index.html#subpackages">Subpackages</a></li>
+<li class="toctree-l4 current"><a class="reference internal" href="../index.html#submodules">Submodules</a><ul class="current">
+<li class="toctree-l5"><a class="reference internal" href="../example_bash_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_bash_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_datetime_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_datetime_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_day_of_week_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_day_of_week_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_labels/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_labels</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_operator_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_operator_decorator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_python_dop_operator_3/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_python_dop_operator_3</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_complex/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_complex</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_datasets/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_datasets</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_external_task_marker_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_external_task_marker_dag</span></code></a></li>
+<li class="toctree-l5 current"><a class="current reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_kubernetes_executor</span></code></a><ul>
+<li class="toctree-l6"><a class="reference internal" href="#module-contents">Module Contents</a><ul>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_kubernetes_executor.log"><code class="docutils literal notranslate"><span class="pre">log</span></code></a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_kubernetes_executor.worker_container_repository"><code class="docutils literal notranslate"><span class="pre">worker_container_repository</span></code></a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_kubernetes_executor.worker_container_tag"><code class="docutils literal notranslate"><span class="pre">worker_container_tag</span></code></a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_kubernetes_executor.k8s"><code class="docutils literal notranslate"><span class="pre">k8s</span></code></a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_kubernetes_executor.start_task_executor_config"><code class="docutils literal notranslate"><span class="pre">start_task_executor_config</span></code></a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_kubernetes_executor.log">log</a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_kubernetes_executor.worker_container_repository">worker_container_repository</a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_kubernetes_executor.worker_container_tag">worker_container_tag</a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_kubernetes_executor.k8s">k8s</a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_kubernetes_executor.start_task_executor_config">start_task_executor_config</a></li>
</ul>
</li>
-<li class="toctree-l1"><a class="reference internal" href="recipes.html">Recipes</a></li>
</ul>
-<p class="caption" role="heading"><span class="caption-text">References</span></p>
+</li>
+<li class="toctree-l5"><a class="reference internal" href="../example_latest_only/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_latest_only</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_latest_only_with_trigger/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_latest_only_with_trigger</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_local_kubernetes_executor/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_local_kubernetes_executor</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_nested_branch_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_nested_branch_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_passing_params_via_test_command/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_passing_params_via_test_command</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_python_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_python_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_short_circuit_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_short_circuit_decorator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_short_circuit_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_short_circuit_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_skip_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_skip_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_subdag_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_subdag_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_task_group/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_task_group</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_task_group_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_task_group_decorator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_time_delta_sensor_async/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_time_delta_sensor_async</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_trigger_controller_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_trigger_controller_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_trigger_target_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_trigger_target_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_xcom/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_xcom</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_xcomargs/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_xcomargs</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial_taskflow_api/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_taskflow_api</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial_taskflow_api_virtualenv/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_taskflow_api_virtualenv</span></code></a></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#utils">Utils</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../stable-rest-api-ref.html">Stable REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../deprecated-rest-api-ref.html">Deprecated REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../configurations-ref.html">Configurations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../extra-packages-ref.html">Extra packages</a></li>
+</ul>
+<p class="caption" role="heading"><span class="caption-text">Internal DB details</span></p>
<ul>
-<li class="toctree-l1"><a class="reference internal" href="build-arg-ref.html">Image build arguments reference</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../migrations-ref.html">Database Migrations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../database-erd-ref.html">Database ERD Schema</a></li>
</ul>
</div>
@@ -409,8 +520,21 @@
<div class="td-sidebar desktop-only d-print-none">
+<div id="docs-version-selector" class="docs-version-selector sidebar__version-selector">
+ <a class="dropdown-toggle" href="#" id="versionDropdown" role="button" data-toggle="dropdown" aria-haspopup="true"
+ aria-expanded="false">
+ <span class="bodytext__medium--greyish-brown">Version: </span><span class="version">2.4.2</span>
+ </a>
+ <div class="dropdown-menu" aria-labelledby="navbarDropdownMenuLink">
+
+ </div>
+ <script type="application/x-template" id="version-item-template">
+ <a class="dropdown-item"></a>
+ </script>
+</div>
+
<div class="searchb-box">
- <form class="search-form" action="search.html" method="get">
+ <form class="search-form" action="../../../../search.html" method="get">
<input class="search-form__input" type="text" name="q" placeholder="Search docs" size="16">
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
@@ -440,24 +564,121 @@
<div class="toctree" role="navigation" aria-label="main navigation">
- <ul class="current">
-<li class="toctree-l1"><a class="reference internal" href="index.html">Home</a></li>
-<li class="toctree-l1"><a class="reference internal" href="build.html">Building the image</a></li>
-<li class="toctree-l1"><a class="reference internal" href="entrypoint.html">Entrypoint</a></li>
-<li class="toctree-l1 current"><a class="current reference internal" href="#">Dockerfile Changelog</a><ul>
-<li class="toctree-l2"><a class="reference internal" href="#changes-after-publishing-the-images">Changes after publishing the images</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-4">Airflow 2.4</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-3">Airflow 2.3</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-2">Airflow 2.2</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-1">Airflow 2.1</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-0">Airflow 2.0</a></li>
+ <p class="caption" role="heading"><span class="caption-text">Content</span></p>
+<ul>
+<li class="toctree-l1"><a class="reference internal" href="../../../../index.html">Overview</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../project.html">Project</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../license.html">License</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../start.html">Quick Start</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../installation/index.html">Installation</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../upgrading-from-1-10/index.html">Upgrading from 1.10 to 2</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../tutorial/index.html">Tutorials</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../howto/index.html">How-to Guides</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../ui.html">UI / Screenshots</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../concepts/index.html">Concepts</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../executor/index.html">Executor</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../dag-run.html">DAG Runs</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../plugins.html">Plugins</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../security/index.html">Security</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../logging-monitoring/index.html">Logging & Monitoring</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../timezone.html">Time Zones</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../usage-cli.html">Using the CLI</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../integration.html">Integration</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../kubernetes.html">Kubernetes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../lineage.html">Lineage</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../listeners.html">Listeners</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../dag-serialization.html">DAG Serialization</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../modules_management.html">Modules Management</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release-process.html">Release Policies</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release_notes.html">Release Notes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../best-practices.html">Best Practices</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../production-deployment.html">Production Deployment</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../faq.html">FAQ</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../privacy_notice.html">Privacy Notice</a></li>
+</ul>
+<p class="caption" role="heading"><span class="caption-text">References</span></p>
+<ul class="current">
+<li class="toctree-l1"><a class="reference internal" href="../../../../operators-and-hooks-ref.html">Operators and hooks</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../cli-and-env-variables-ref.html">CLI</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../templates-ref.html">Templates</a></li>
+<li class="toctree-l1 current"><a class="reference internal" href="../../../../python-api-ref.html">Python API</a><ul class="current">
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#dags">DAGs</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#operators">Operators</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#hooks">Hooks</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#executors">Executors</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#models">Models</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#exceptions">Exceptions</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#secrets-backends">Secrets Backends</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#timetables">Timetables</a></li>
+<li class="toctree-l2 current"><a class="reference internal" href="../../../../python-api-ref.html#example-dags">Example DAGs</a><ul class="current">
+<li class="toctree-l3 current"><a class="reference internal" href="../index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags</span></code></a><ul class="current">
+<li class="toctree-l4"><a class="reference internal" href="../index.html#subpackages">Subpackages</a></li>
+<li class="toctree-l4 current"><a class="reference internal" href="../index.html#submodules">Submodules</a><ul class="current">
+<li class="toctree-l5"><a class="reference internal" href="../example_bash_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_bash_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_datetime_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_datetime_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_day_of_week_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_day_of_week_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_labels/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_labels</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_operator_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_operator_decorator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_python_dop_operator_3/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_python_dop_operator_3</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_complex/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_complex</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_datasets/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_datasets</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_external_task_marker_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_external_task_marker_dag</span></code></a></li>
+<li class="toctree-l5 current"><a class="current reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_kubernetes_executor</span></code></a><ul>
+<li class="toctree-l6"><a class="reference internal" href="#module-contents">Module Contents</a><ul>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_kubernetes_executor.log"><code class="docutils literal notranslate"><span class="pre">log</span></code></a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_kubernetes_executor.worker_container_repository"><code class="docutils literal notranslate"><span class="pre">worker_container_repository</span></code></a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_kubernetes_executor.worker_container_tag"><code class="docutils literal notranslate"><span class="pre">worker_container_tag</span></code></a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_kubernetes_executor.k8s"><code class="docutils literal notranslate"><span class="pre">k8s</span></code></a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_kubernetes_executor.start_task_executor_config"><code class="docutils literal notranslate"><span class="pre">start_task_executor_config</span></code></a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_kubernetes_executor.log">log</a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_kubernetes_executor.worker_container_repository">worker_container_repository</a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_kubernetes_executor.worker_container_tag">worker_container_tag</a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_kubernetes_executor.k8s">k8s</a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_kubernetes_executor.start_task_executor_config">start_task_executor_config</a></li>
</ul>
</li>
-<li class="toctree-l1"><a class="reference internal" href="recipes.html">Recipes</a></li>
</ul>
-<p class="caption" role="heading"><span class="caption-text">References</span></p>
+</li>
+<li class="toctree-l5"><a class="reference internal" href="../example_latest_only/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_latest_only</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_latest_only_with_trigger/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_latest_only_with_trigger</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_local_kubernetes_executor/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_local_kubernetes_executor</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_nested_branch_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_nested_branch_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_passing_params_via_test_command/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_passing_params_via_test_command</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_python_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_python_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_short_circuit_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_short_circuit_decorator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_short_circuit_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_short_circuit_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_skip_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_skip_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_subdag_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_subdag_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_task_group/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_task_group</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_task_group_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_task_group_decorator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_time_delta_sensor_async/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_time_delta_sensor_async</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_trigger_controller_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_trigger_controller_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_trigger_target_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_trigger_target_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_xcom/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_xcom</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_xcomargs/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_xcomargs</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial_taskflow_api/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_taskflow_api</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial_taskflow_api_virtualenv/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_taskflow_api_virtualenv</span></code></a></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#utils">Utils</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../stable-rest-api-ref.html">Stable REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../deprecated-rest-api-ref.html">Deprecated REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../configurations-ref.html">Configurations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../extra-packages-ref.html">Extra packages</a></li>
+</ul>
+<p class="caption" role="heading"><span class="caption-text">Internal DB details</span></p>
<ul>
-<li class="toctree-l1"><a class="reference internal" href="build-arg-ref.html">Image build arguments reference</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../migrations-ref.html">Database Migrations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../database-erd-ref.html">Database ERD Schema</a></li>
</ul>
</div>
@@ -546,9 +767,13 @@
<ul class="breadcrumb">
- <li class="breadcrumb-item"><a href="index.html" class="icon icon-home"> Home</a></li>
+ <li class="breadcrumb-item"><a href="../../../../index.html" class="icon icon-home"> Home</a></li>
+
+ <li class="breadcrumb-item"><a href="../../../../python-api-ref.html">Python API Reference</a></li>
+
+ <li class="breadcrumb-item"><a href="../index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags</span></code></a></li>
- <li class="breadcrumb-item"><a href="changelog.html"> Dockerfile Changelog</a></li>
+ <li class="breadcrumb-item"><a href="index.html"> <code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_kubernetes_executor</span></code></a></li>
</ul>
</div>
@@ -559,272 +784,45 @@
<div class="bodywrapper">
<div class="body" role="main">
- <blockquote>
-<div></div></blockquote>
-<div class="section" id="dockerfile-changelog">
-<h1>Dockerfile Changelog<a class="headerlink" href="#dockerfile-changelog" title="Permalink to this heading">ΒΆ</a></h1>
-<p>The <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> does not strictly follow the <a class="reference external" href="https://semver.org/">SemVer</a> approach of
-Apache Airflow when it comes to features and backwards compatibility. While Airflow code strictly
-follows it, the <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> is really a way to give users a conveniently packaged Airflow
-using standard container approach, so occasionally there are some changes in the building process
-or in the entrypoint of the image that require slight adaptation of how it is used or built.</p>
-<p>The Changelog below describes the changes introduced in each version of the docker images released by
-the Airflow team.</p>
-<dl class="field-list simple">
-<dt class="field-odd">note</dt>
-<dd class="field-odd"><p>The Changelog below concerns only the convenience production images released at
-<a class="reference external" href="https://hub.docker.com/r/apache/airflow">Airflow DockerHub</a> . The images that are released
-there, are usually built using the <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> released together with Airflow. However You are
-free to take latest released <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> from Airflow and use it to build an image for
-any Airflow version from the <code class="docutils literal notranslate"><span class="pre">Airflow</span> <span class="pre">2</span></code> line. There is no guarantee that it works, but if it does,
-then you can use latest features from that image to build the previous Airflow versions.</p>
-</dd>
-</dl>
-<div class="section" id="changes-after-publishing-the-images">
-<h2>Changes after publishing the images<a class="headerlink" href="#changes-after-publishing-the-images" title="Permalink to this heading">ΒΆ</a></h2>
-<p>Occasionally our images need to be regenerated using newer <code class="docutils literal notranslate"><span class="pre">Dockerfiles</span></code> or constraints.
-This happens when an issue is found or a breaking change is released by our dependencies
-that invalidates the already released image, and regenerating the image makes it usable again.
-While we cannot assure 100% backwards compatibility when it happens, we at least document it
-here so that users affected can find the reason for the changes.</p>
-<table class="docutils align-default">
-<colgroup>
-<col style="width: 10%" />
-<col style="width: 14%" />
-<col style="width: 28%" />
-<col style="width: 16%" />
-<col style="width: 32%" />
-</colgroup>
-<thead>
-<tr class="row-odd"><th class="head"><p>Date</p></th>
-<th class="head"><p>Affected images</p></th>
-<th class="head"><p>Potentially breaking change</p></th>
-<th class="head"><p>Reason</p></th>
-<th class="head"><p>Link to Pull Request</p></th>
-</tr>
-</thead>
-<tbody>
-<tr class="row-even"><td><p>17 June 2022</p></td>
-<td><p>2.2.5</p>
-<p>2.3.0-2.3.2</p>
-</td>
-<td><ul class="simple">
-<li><p>The <code class="docutils literal notranslate"><span class="pre">Authlib</span></code> library downgraded
-from 1.0.1 to 0.15.5 version</p></li>
-</ul>
-</td>
-<td><p>Flask App Builder
-not compatible with
-Authlib >= 1.0.0</p></td>
-<td><p><a class="reference external" href="https://github.com/apache/airflow/pull/24516">https://github.com/apache/airflow/pull/24516</a></p></td>
-</tr>
-<tr class="row-odd"><td><p>18 Jan 2022</p></td>
-<td><p>All 2.2.*, 2.1.*</p></td>
-<td><ul class="simple">
-<li><p>The AIRFLOW_GID 500 was removed</p></li>
-<li><p>MySQL <code class="docutils literal notranslate"><span class="pre">apt</span></code> repository key changed.</p></li>
-</ul>
-</td>
-<td><p>MySQL changed keys
-to sign their packages
-on 17 Jan 2022</p></td>
-<td><p><a class="reference external" href="https://github.com/apache/airflow/pull/20912">https://github.com/apache/airflow/pull/20912</a></p></td>
-</tr>
-</tbody>
-</table>
-</div>
-<div class="section" id="airflow-2-4">
-<h2>Airflow 2.4<a class="headerlink" href="#airflow-2-4" title="Permalink to this heading">ΒΆ</a></h2>
-<ul class="simple">
-<li><p>2.4.0</p>
-<ul>
-<li><p>You can specify additional <code class="docutils literal notranslate"><span class="pre">pip</span> <span class="pre">install</span></code> flags when you build the image via <code class="docutils literal notranslate"><span class="pre">ADDITIONAL_PIP_INSTALL_FLAGS</span></code>
-build arg.</p></li>
-<li><p>Support for <code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Buster</span></code> was dropped, including the possibility of building customized images as
-<code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Buster</span></code> reached end of life.</p></li>
-</ul>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-3">
-<h2>Airflow 2.3<a class="headerlink" href="#airflow-2-3" title="Permalink to this heading">ΒΆ</a></h2>
-<ul class="simple">
-<li><p>2.3.0</p>
-<ul>
-<li><p>Airflow 2.3 <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> is now better optimized for caching and βstandaloneβ which means that you
-can copy <strong>just</strong> the <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> to any folder and start building custom images. This
-however requires <a class="reference external" href="https://docs.docker.com/develop/develop-images/build_enhancements/">Buildkit</a>
-to build the image because we started using features that are only available in <code class="docutils literal notranslate"><span class="pre">Buildkit</span></code>.
-This can be done by setting <code class="docutils literal notranslate"><span class="pre">DOCKER_BUILDKIT=1</span></code> as an environment variable
-or by installing <a class="reference external" href="https://docs.docker.com/buildx/working-with-buildx/">the buildx plugin</a>
-and running <code class="docutils literal notranslate"><span class="pre">docker</span> <span class="pre">buildx</span> <span class="pre">build</span></code> command.</p></li>
-<li><p>Add Python 3.10 support</p></li>
-<li><p>Switch to <code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Bullseye</span></code> based images. <code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Buster</span></code> is deprecated and only available for
-customized image building.</p></li>
-<li><p>Add Multi-Platform support (AMD64/ARM64) in order to accommodate MacOS M1 users</p></li>
-<li><p>Build parameters which control if packages and Airflow should be installed from context file were
-unified</p></li>
-<li><p>The <code class="docutils literal notranslate"><span class="pre">INSTALL_FROM_PYPI</span></code> arg was removed - it is automatically detected now.</p></li>
-<li><p>The <code class="docutils literal notranslate"><span class="pre">INSTALL_FROM_DOCKER_CONTEXT_FILES</span></code> arg changed to <code class="docutils literal notranslate"><span class="pre">INSTALL_PACKAGES_FROM_CONTEXT</span></code></p></li>
-</ul>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-2">
-<h2>Airflow 2.2<a class="headerlink" href="#airflow-2-2" title="Permalink to this heading">ΒΆ</a></h2>
-<ul class="simple">
-<li><p>2.2.4
-* Add support for both <code class="docutils literal notranslate"><span class="pre">.piprc</span></code> and <code class="docutils literal notranslate"><span class="pre">pip.conf</span></code> customizations
-* Add ArtifactHub labels for better discovery of the images
-* Update default Python image to be 3.7
-* Build images with <code class="docutils literal notranslate"><span class="pre">Buildkit</span></code> (optional)
-* Fix building the image on Azure with <code class="docutils literal notranslate"><span class="pre">text</span> <span class="pre">file</span> <span class="pre">busy</span></code> error</p></li>
-<li><p>2.2.3
-* No changes</p></li>
-<li><p>2.2.2
-* No changes</p></li>
-<li><p>2.2.1
-* Workaround the problem with <code class="docutils literal notranslate"><span class="pre">libstdcpp</span></code> TLS error</p></li>
-<li><p>2.2.0
-* Remove AIRFLOW_GID (5000) from Airflow images (potentially breaking change for users using it)
-* Added warnings for Quick-start docker compose
-* Fix warm shutdown for celery worker (signal propagation)
-* Add Oauth libraries to PROD images
-* Add Python 3.9 support</p></li>
-</ul>
-</div>
-<div class="section" id="airflow-2-1">
-<h2>Airflow 2.1<a class="headerlink" href="#airflow-2-1" title="Permalink to this heading">ΒΆ</a></h2>
-<ul>
-<li><p>MySQL changed the keys to sign their packages on 17 Feb 2022. This caused all released images
-to fail when being extended. As result, on 18 Feb 2021 we re-released all
-the <code class="docutils literal notranslate"><span class="pre">2.2</span></code> and <code class="docutils literal notranslate"><span class="pre">2.1</span></code> images with latest versions of <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code>
-containing the new signing key.</p>
-<p>There were subtle changes in the behaviour of some 2.1 images due to that (more details below)
-Detailed <a class="reference external" href="https://github.com/apache/airflow/issues/20911">issue here</a></p>
-</li>
-</ul>
-<dl class="field-list simple">
-<dt class="field-odd">note</dt>
-<dd class="field-odd"><p>that the changes below were valid before image refreshing on 18 Feb 2022.
-Since all the images were refreshed on 18 Feb with the same <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code>
-as 2.1.4, the changes 2.1.1 -> 2.1.3 are
-effectively applied to all the images in 2.1.* line.
-The images refreshed have also those fixes added:</p>
-</dd>
-</dl>
-<ul class="simple">
-<li><p>All 2.1.* image versions refreshed on 18 Feb 2022 have those fixes applied:
-* Fix building the image on Azure with <code class="docutils literal notranslate"><span class="pre">text</span> <span class="pre">file</span> <span class="pre">busy</span></code> error
-* Workaround the problem with <code class="docutils literal notranslate"><span class="pre">libstdcpp</span></code> TLS error
-* Remove AIRFLOW_GID (5000) from Airflow images (potentially breaking change for users using it)
-* Added warnings for Quick-start docker compose
-* Add Oauth libraries to PROD images</p></li>
-</ul>
-<p>Original image Changelog (before the refresh on 18 Feb 2022):</p>
-<ul class="simple">
-<li><dl class="simple">
-<dt>2.1.4</dt><dd><ul>
-<li><p>Workaround the problem with <code class="docutils literal notranslate"><span class="pre">libstdcpp</span></code> TLS error</p></li>
-<li><p>fixed detection of port number in connection URL</p></li>
-<li><p>Improve warnings for quick-start-docker compose</p></li>
-<li><p>Fix warm shutdown for celery worker (signal propagation)</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.3</dt><dd><ul>
-<li><p>fixed auto-creation of user to use non-deprecated <code class="docutils literal notranslate"><span class="pre">create</span> <span class="pre">user</span></code> rather than <code class="docutils literal notranslate"><span class="pre">user_create</span></code></p></li>
-<li><p>remove waiting for celery backend for <code class="docutils literal notranslate"><span class="pre">worker</span></code> and <code class="docutils literal notranslate"><span class="pre">flower</span></code> commands rather than <code class="docutils literal notranslate"><span class="pre">scheduler</span></code> and <code class="docutils literal notranslate"><span class="pre">celery</span></code> only</p></li>
-<li><p>remove deprecated <code class="docutils literal notranslate"><span class="pre">airflow</span> <span class="pre">upgradedb</span></code> command from Airflow 1.10 in case upgrade is requested</p></li>
-<li><p>Add Python 3.9 support</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.2</dt><dd><ul>
-<li><p>No changes</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.1</dt><dd><ul>
-<li><p>Fix failure of lack of default commands (failed when no commands were passed)</p></li>
-<li><p>Added <code class="docutils literal notranslate"><span class="pre">_PIP_ADDITIONAL_REQUIREMENTS</span></code> development feature</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.0</dt><dd><ul>
-<li><p>Unset default <code class="docutils literal notranslate"><span class="pre">PIP_USER</span></code> variable - which caused PythonVirtualEnv to fail</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-0">
-<h2>Airflow 2.0<a class="headerlink" href="#airflow-2-0" title="Permalink to this heading">ΒΆ</a></h2>
-<ul>
-<li><p>MySQL changed the keys to sign their packages on 17 Feb 2022. This caused all released images
-to fail when being extended. As result, on 18 Feb 2021 we re-released all
-the <code class="docutils literal notranslate"><span class="pre">2.2</span></code> and <code class="docutils literal notranslate"><span class="pre">2.1</span></code> images with latest versions of <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code>
-containing the new signing key.</p>
-<p>There were no changes in the behaviour of 2.0.2 image due to that
-Detailed <a class="reference external" href="https://github.com/apache/airflow/issues/20911">issue here</a> .
-Only 2.0.2 image was regenerated, as 2.0.1 and 2.0.0 versions are hardly used and it is unlikely someone
-would like to extend those images. Extending 2.0.1 and 2.0.0 images will lead to failures of βmissing keyβ.</p>
-</li>
-<li><dl class="simple">
-<dt>2.0.2</dt><dd><ul class="simple">
-<li><p>Set correct PYTHONPATH for <code class="docutils literal notranslate"><span class="pre">root</span></code> user. Allows to run the image as root</p></li>
-<li><p>Warn if the deprecated 5000 group ID was used for airflow user when running the image
-(should be 0 for the OpenShift compatibility). Fails if the group 5000 was used with any other user
-(it would not work anyway but with cryptic errors)</p></li>
-<li><p>Set umask as 002 by default, so that you can actually change the user id used to run the image
-(required for OpenShift compatibility)</p></li>
-<li><p>Skip checking the DB and celery backend if CONNECTION_CHECK_MAX_COUNT is equal to 0</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.0.1</dt><dd><ul class="simple">
-<li><p>Avoid reverse IP lookup when checking DB availability. This helped to solve long delays on misconfigured
-docker engines</p></li>
-<li><p>Add auto-detection of redis and amqp broker ports</p></li>
-<li><p>Fixed detection of all user/password combinations in URLs - helps in auto-detecting ports and testing
-connectivity</p></li>
-<li><p>Add possibility to create Admin user automatically when entering the image</p></li>
-<li><p>Automatically create system user when different user than <code class="docutils literal notranslate"><span class="pre">airflow</span></code> is used. Needed for OpenShift
-compatibility</p></li>
-<li><p>Allows to exec to <code class="docutils literal notranslate"><span class="pre">bash</span></code> or <code class="docutils literal notranslate"><span class="pre">python</span></code> if specified as parameters</p></li>
-<li><p>Remove <code class="docutils literal notranslate"><span class="pre">airflow</span></code> command if it is specified as first parameter of the <code class="docutils literal notranslate"><span class="pre">run</span></code> command</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.0.0</dt><dd><ul class="simple">
-<li><p>Initial release of the image based on Debian Buster</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-</ul>
+ <div class="section" id="module-airflow.example_dags.example_kubernetes_executor">
+<span id="airflow-example-dags-example-kubernetes-executor"></span><h1><a class="reference internal" href="#module-airflow.example_dags.example_kubernetes_executor" title="airflow.example_dags.example_kubernetes_executor"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_kubernetes_executor</span></code></a><a class="headerlink" href="#module-airflow.example_dags.example_kubernetes_executor" title="Permalink to this heading">ΒΆ</a></h1>
+<p>This is an example dag for using a Kubernetes Executor Configuration.</p>
+<div class="section" id="module-contents">
+<h2>Module Contents<a class="headerlink" href="#module-contents" title="Permalink to this heading">ΒΆ</a></h2>
+<dl class="py data">
+<dt class="sig sig-object py" id="airflow.example_dags.example_kubernetes_executor.log">
+<span class="sig-prename descclassname"><span class="pre">airflow.example_dags.example_kubernetes_executor.</span></span><span class="sig-name descname"><span class="pre">log</span></span><a class="reference internal" href="../../../../_modules/airflow/example_dags/example_kubernetes_executor.html#log"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow.example_dags.example_kubernetes_executor.log" title="Permalink to this definiti [...]
+<dd></dd></dl>
+
+<dl class="py data">
+<dt class="sig sig-object py" id="airflow.example_dags.example_kubernetes_executor.worker_container_repository">
+<span class="sig-prename descclassname"><span class="pre">airflow.example_dags.example_kubernetes_executor.</span></span><span class="sig-name descname"><span class="pre">worker_container_repository</span></span><a class="reference internal" href="../../../../_modules/airflow/example_dags/example_kubernetes_executor.html#worker_container_repository"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow.example_dags.example_kubernetes [...]
+<dd></dd></dl>
+
+<dl class="py data">
+<dt class="sig sig-object py" id="airflow.example_dags.example_kubernetes_executor.worker_container_tag">
+<span class="sig-prename descclassname"><span class="pre">airflow.example_dags.example_kubernetes_executor.</span></span><span class="sig-name descname"><span class="pre">worker_container_tag</span></span><a class="reference internal" href="../../../../_modules/airflow/example_dags/example_kubernetes_executor.html#worker_container_tag"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow.example_dags.example_kubernetes_executor.work [...]
+<dd></dd></dl>
+
+<dl class="py data">
+<dt class="sig sig-object py" id="airflow.example_dags.example_kubernetes_executor.k8s">
+<span class="sig-prename descclassname"><span class="pre">airflow.example_dags.example_kubernetes_executor.</span></span><span class="sig-name descname"><span class="pre">k8s</span></span><a class="reference internal" href="../../../../_modules/airflow/example_dags/example_kubernetes_executor.html#k8s"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow.example_dags.example_kubernetes_executor.k8s" title="Permalink to this definiti [...]
+<dd></dd></dl>
+
+<dl class="py data">
+<dt class="sig sig-object py" id="airflow.example_dags.example_kubernetes_executor.start_task_executor_config">
+<span class="sig-prename descclassname"><span class="pre">airflow.example_dags.example_kubernetes_executor.</span></span><span class="sig-name descname"><span class="pre">start_task_executor_config</span></span><a class="reference internal" href="../../../../_modules/airflow/example_dags/example_kubernetes_executor.html#start_task_executor_config"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow.example_dags.example_kubernetes_e [...]
+<dd></dd></dl>
+
</div>
</div>
<div class="pager" role="navigation" aria-label="related navigation">
- <a rel="prev" title="Entrypoint" href="entrypoint.html" >
+ <a rel="prev" title="airflow.example_dags.example_external_task_marker_dag" href="../example_external_task_marker_dag/index.html" >
<button class="btn-hollow btn-blue bodytext__medium--cerulean-blue" accesskey="p">Previous</button>
</a>
- <a rel="next" title="Recipes" href="recipes.html" >
+ <a rel="next" title="airflow.example_dags.example_latest_only" href="../example_latest_only/index.html" >
<button class="btn-hollow btn-blue bodytext__medium--cerulean-blue" accesskey="n">Next</button>
</a>
</div>
@@ -894,13 +892,20 @@ compatibility</p></li>
<nav class="wy-nav-side-toc">
<div class="wy-menu-vertical">
<ul>
-<li><a class="reference internal" href="#">Dockerfile Changelog</a><ul>
-<li><a class="reference internal" href="#changes-after-publishing-the-images">Changes after publishing the images</a></li>
-<li><a class="reference internal" href="#airflow-2-4">Airflow 2.4</a></li>
-<li><a class="reference internal" href="#airflow-2-3">Airflow 2.3</a></li>
-<li><a class="reference internal" href="#airflow-2-2">Airflow 2.2</a></li>
-<li><a class="reference internal" href="#airflow-2-1">Airflow 2.1</a></li>
-<li><a class="reference internal" href="#airflow-2-0">Airflow 2.0</a></li>
+<li><a class="reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_kubernetes_executor</span></code></a><ul>
+<li><a class="reference internal" href="#module-contents">Module Contents</a><ul>
+<li><a class="reference internal" href="#airflow.example_dags.example_kubernetes_executor.log"><code class="docutils literal notranslate"><span class="pre">log</span></code></a></li>
+<li><a class="reference internal" href="#airflow.example_dags.example_kubernetes_executor.worker_container_repository"><code class="docutils literal notranslate"><span class="pre">worker_container_repository</span></code></a></li>
+<li><a class="reference internal" href="#airflow.example_dags.example_kubernetes_executor.worker_container_tag"><code class="docutils literal notranslate"><span class="pre">worker_container_tag</span></code></a></li>
+<li><a class="reference internal" href="#airflow.example_dags.example_kubernetes_executor.k8s"><code class="docutils literal notranslate"><span class="pre">k8s</span></code></a></li>
+<li><a class="reference internal" href="#airflow.example_dags.example_kubernetes_executor.start_task_executor_config"><code class="docutils literal notranslate"><span class="pre">start_task_executor_config</span></code></a></li>
+<li><a class="reference internal" href="#airflow.example_dags.example_kubernetes_executor.log">log</a></li>
+<li><a class="reference internal" href="#airflow.example_dags.example_kubernetes_executor.worker_container_repository">worker_container_repository</a></li>
+<li><a class="reference internal" href="#airflow.example_dags.example_kubernetes_executor.worker_container_tag">worker_container_tag</a></li>
+<li><a class="reference internal" href="#airflow.example_dags.example_kubernetes_executor.k8s">k8s</a></li>
+<li><a class="reference internal" href="#airflow.example_dags.example_kubernetes_executor.start_task_executor_config">start_task_executor_config</a></li>
+</ul>
+</li>
</ul>
</li>
</ul>
@@ -925,7 +930,7 @@ compatibility</p></li>
<div class="base-layout--button">
- <a href="https://github.com/apache/airflow/edit/main/docs/docker-stack/changelog.rst" rel="nofollow">
+ <a href="https://github.com/apache/airflow/edit/main/docs/apache-airflow/_api/airflow/example_dags/example_kubernetes_executor/index.rst" rel="nofollow">
<button class="btn-hollow btn-brown btn-with-icon with-box-shadow button-fixed">
<svg xmlns="http://www.w3.org/2000/svg" width="30.76" height="30">
@@ -1059,18 +1064,20 @@ compatibility</p></li>
</span>
</div>
</footer>
- <script type="text/javascript" src="_static/_gen/js/docs.js"></script>
- <script type="text/javascript" id="documentation_options" data-url_root="./" src="_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../../../_static/_gen/js/docs.js"></script>
+ <script type="text/javascript" id="documentation_options" data-url_root="../../../../" src="../../../../_static/documentation_options.js"></script>
<script src="https://code.jquery.com/jquery-3.4.1.min.js" integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo=" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.3/umd/popper.min.js" integrity="sha384-ZMP7rVo3mIykV+2+9J3UJ46jBk0WLaUAdn689aCwoqbBJiSnjAK/l8WvCWPIPm49" crossorigin="anonymous"></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/js/bootstrap.min.js" integrity="sha384-ChfqqxuZUCnJSK3+MXmPNIyE6ZbWh2IMqE241rYiqJxyMiZ6OW/JmZQ5stwEULTy" crossorigin="anonymous"></script>
- <script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script>
- <script src="_static/jquery.js"></script>
- <script src="_static/underscore.js"></script>
- <script src="_static/_sphinx_javascript_frameworks_compat.js"></script>
- <script src="_static/doctools.js"></script>
- <script src="_static/clipboard.min.js"></script>
- <script src="_static/copybutton.js"></script>
- <script src="_static/js/globaltoc.js"></script>
+ <script data-url_root="../../../../" id="documentation_options" src="../../../../_static/documentation_options.js"></script>
+ <script src="../../../../_static/jquery.js"></script>
+ <script src="../../../../_static/underscore.js"></script>
+ <script src="../../../../_static/_sphinx_javascript_frameworks_compat.js"></script>
+ <script src="../../../../_static/doctools.js"></script>
+ <script src="../../../../_static/sphinx_highlight.js"></script>
+ <script src="../../../../_static/clipboard.min.js"></script>
+ <script src="../../../../_static/copybutton.js"></script>
+ <script src="../../../../_static/js/globaltoc.js"></script>
+ <script src="../../../../_static/gh-jira-links.js"></script>
</body>
</html>
\ No newline at end of file
diff --git a/docs-archive/docker-stack/changelog.html b/docs-archive/apache-airflow/2.4.2/_api/airflow/example_dags/example_latest_only/index.html
similarity index 69%
copy from docs-archive/docker-stack/changelog.html
copy to docs-archive/apache-airflow/2.4.2/_api/airflow/example_dags/example_latest_only/index.html
index 2fa2b8d179..c50cb8d35a 100644
--- a/docs-archive/docker-stack/changelog.html
+++ b/docs-archive/apache-airflow/2.4.2/_api/airflow/example_dags/example_latest_only/index.html
@@ -9,17 +9,18 @@
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1">
- <title>Dockerfile Changelog — docker-stack Documentation</title>
- <link rel="stylesheet" href="_static/_gen/css/main.min.css" type="text/css" />
- <link rel="stylesheet" type="text/css" href="_static/pygments.css" />
- <link rel="stylesheet" type="text/css" href="_static/_gen/css/main.min.css" />
- <link rel="stylesheet" type="text/css" href="_static/copybutton.css" />
- <link rel="stylesheet" type="text/css" href="_static/_gen/css/main-custom.min.css" />
- <link rel="shortcut icon" href="_static/pin_32.png"/>
- <link rel="index" title="Index" href="genindex.html" />
- <link rel="search" title="Search" href="search.html" />
- <link rel="next" title="Recipes" href="recipes.html" />
- <link rel="prev" title="Entrypoint" href="entrypoint.html" />
+ <title>airflow.example_dags.example_latest_only — Airflow Documentation</title>
+ <link rel="stylesheet" href="../../../../_static/_gen/css/main.min.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../../../_static/pygments.css" />
+ <link rel="stylesheet" type="text/css" href="../../../../_static/_gen/css/main.min.css" />
+ <link rel="stylesheet" type="text/css" href="../../../../_static/copybutton.css" />
+ <link rel="stylesheet" type="text/css" href="../../../../_static/_gen/css/main-custom.min.css" />
+ <link rel="stylesheet" type="text/css" href="../../../../_static/graphviz.css" />
+ <link rel="shortcut icon" href="../../../../_static/pin_32.png"/>
+ <link rel="index" title="Index" href="../../../../genindex.html" />
+ <link rel="search" title="Search" href="../../../../search.html" />
+ <link rel="next" title="airflow.example_dags.example_latest_only_with_trigger" href="../example_latest_only_with_trigger/index.html" />
+ <link rel="prev" title="airflow.example_dags.example_kubernetes_executor" href="../example_kubernetes_executor/index.html" />
<!-- Matomo -->
<script>
var _paq = window._paq = window._paq || [];
@@ -280,8 +281,21 @@
<div class="content-drawer">
<div class="td-sidebar">
+<div id="docs-version-selector" class="docs-version-selector sidebar__version-selector">
+ <a class="dropdown-toggle" href="#" id="versionDropdown" role="button" data-toggle="dropdown" aria-haspopup="true"
+ aria-expanded="false">
+ <span class="bodytext__medium--greyish-brown">Version: </span><span class="version">2.4.2</span>
+ </a>
+ <div class="dropdown-menu" aria-labelledby="navbarDropdownMenuLink">
+
+ </div>
+ <script type="application/x-template" id="version-item-template">
+ <a class="dropdown-item"></a>
+ </script>
+</div>
+
<div class="searchb-box">
- <form class="search-form" action="search.html" method="get">
+ <form class="search-form" action="../../../../search.html" method="get">
<input class="search-form__input" type="text" name="q" placeholder="Search docs" size="16">
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
@@ -311,24 +325,113 @@
<div class="toctree" role="navigation" aria-label="main navigation">
- <ul class="current">
-<li class="toctree-l1"><a class="reference internal" href="index.html">Home</a></li>
-<li class="toctree-l1"><a class="reference internal" href="build.html">Building the image</a></li>
-<li class="toctree-l1"><a class="reference internal" href="entrypoint.html">Entrypoint</a></li>
-<li class="toctree-l1 current"><a class="current reference internal" href="#">Dockerfile Changelog</a><ul>
-<li class="toctree-l2"><a class="reference internal" href="#changes-after-publishing-the-images">Changes after publishing the images</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-4">Airflow 2.4</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-3">Airflow 2.3</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-2">Airflow 2.2</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-1">Airflow 2.1</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-0">Airflow 2.0</a></li>
+ <p class="caption" role="heading"><span class="caption-text">Content</span></p>
+<ul>
+<li class="toctree-l1"><a class="reference internal" href="../../../../index.html">Overview</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../project.html">Project</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../license.html">License</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../start.html">Quick Start</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../installation/index.html">Installation</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../upgrading-from-1-10/index.html">Upgrading from 1.10 to 2</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../tutorial/index.html">Tutorials</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../howto/index.html">How-to Guides</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../ui.html">UI / Screenshots</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../concepts/index.html">Concepts</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../executor/index.html">Executor</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../dag-run.html">DAG Runs</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../plugins.html">Plugins</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../security/index.html">Security</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../logging-monitoring/index.html">Logging & Monitoring</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../timezone.html">Time Zones</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../usage-cli.html">Using the CLI</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../integration.html">Integration</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../kubernetes.html">Kubernetes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../lineage.html">Lineage</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../listeners.html">Listeners</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../dag-serialization.html">DAG Serialization</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../modules_management.html">Modules Management</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release-process.html">Release Policies</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release_notes.html">Release Notes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../best-practices.html">Best Practices</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../production-deployment.html">Production Deployment</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../faq.html">FAQ</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../privacy_notice.html">Privacy Notice</a></li>
+</ul>
+<p class="caption" role="heading"><span class="caption-text">References</span></p>
+<ul class="current">
+<li class="toctree-l1"><a class="reference internal" href="../../../../operators-and-hooks-ref.html">Operators and hooks</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../cli-and-env-variables-ref.html">CLI</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../templates-ref.html">Templates</a></li>
+<li class="toctree-l1 current"><a class="reference internal" href="../../../../python-api-ref.html">Python API</a><ul class="current">
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#dags">DAGs</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#operators">Operators</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#hooks">Hooks</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#executors">Executors</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#models">Models</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#exceptions">Exceptions</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#secrets-backends">Secrets Backends</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#timetables">Timetables</a></li>
+<li class="toctree-l2 current"><a class="reference internal" href="../../../../python-api-ref.html#example-dags">Example DAGs</a><ul class="current">
+<li class="toctree-l3 current"><a class="reference internal" href="../index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags</span></code></a><ul class="current">
+<li class="toctree-l4"><a class="reference internal" href="../index.html#subpackages">Subpackages</a></li>
+<li class="toctree-l4 current"><a class="reference internal" href="../index.html#submodules">Submodules</a><ul class="current">
+<li class="toctree-l5"><a class="reference internal" href="../example_bash_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_bash_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_datetime_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_datetime_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_day_of_week_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_day_of_week_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_labels/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_labels</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_operator_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_operator_decorator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_python_dop_operator_3/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_python_dop_operator_3</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_complex/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_complex</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_datasets/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_datasets</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_external_task_marker_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_external_task_marker_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_kubernetes_executor/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_kubernetes_executor</span></code></a></li>
+<li class="toctree-l5 current"><a class="current reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_latest_only</span></code></a><ul>
+<li class="toctree-l6"><a class="reference internal" href="#module-contents">Module Contents</a><ul>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_latest_only.latest_only"><code class="docutils literal notranslate"><span class="pre">latest_only</span></code></a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_latest_only.latest_only">latest_only</a></li>
</ul>
</li>
-<li class="toctree-l1"><a class="reference internal" href="recipes.html">Recipes</a></li>
</ul>
-<p class="caption" role="heading"><span class="caption-text">References</span></p>
+</li>
+<li class="toctree-l5"><a class="reference internal" href="../example_latest_only_with_trigger/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_latest_only_with_trigger</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_local_kubernetes_executor/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_local_kubernetes_executor</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_nested_branch_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_nested_branch_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_passing_params_via_test_command/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_passing_params_via_test_command</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_python_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_python_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_short_circuit_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_short_circuit_decorator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_short_circuit_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_short_circuit_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_skip_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_skip_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_subdag_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_subdag_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_task_group/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_task_group</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_task_group_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_task_group_decorator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_time_delta_sensor_async/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_time_delta_sensor_async</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_trigger_controller_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_trigger_controller_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_trigger_target_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_trigger_target_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_xcom/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_xcom</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_xcomargs/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_xcomargs</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial_taskflow_api/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_taskflow_api</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial_taskflow_api_virtualenv/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_taskflow_api_virtualenv</span></code></a></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#utils">Utils</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../stable-rest-api-ref.html">Stable REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../deprecated-rest-api-ref.html">Deprecated REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../configurations-ref.html">Configurations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../extra-packages-ref.html">Extra packages</a></li>
+</ul>
+<p class="caption" role="heading"><span class="caption-text">Internal DB details</span></p>
<ul>
-<li class="toctree-l1"><a class="reference internal" href="build-arg-ref.html">Image build arguments reference</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../migrations-ref.html">Database Migrations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../database-erd-ref.html">Database ERD Schema</a></li>
</ul>
</div>
@@ -409,8 +512,21 @@
<div class="td-sidebar desktop-only d-print-none">
+<div id="docs-version-selector" class="docs-version-selector sidebar__version-selector">
+ <a class="dropdown-toggle" href="#" id="versionDropdown" role="button" data-toggle="dropdown" aria-haspopup="true"
+ aria-expanded="false">
+ <span class="bodytext__medium--greyish-brown">Version: </span><span class="version">2.4.2</span>
+ </a>
+ <div class="dropdown-menu" aria-labelledby="navbarDropdownMenuLink">
+
+ </div>
+ <script type="application/x-template" id="version-item-template">
+ <a class="dropdown-item"></a>
+ </script>
+</div>
+
<div class="searchb-box">
- <form class="search-form" action="search.html" method="get">
+ <form class="search-form" action="../../../../search.html" method="get">
<input class="search-form__input" type="text" name="q" placeholder="Search docs" size="16">
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
@@ -440,24 +556,113 @@
<div class="toctree" role="navigation" aria-label="main navigation">
- <ul class="current">
-<li class="toctree-l1"><a class="reference internal" href="index.html">Home</a></li>
-<li class="toctree-l1"><a class="reference internal" href="build.html">Building the image</a></li>
-<li class="toctree-l1"><a class="reference internal" href="entrypoint.html">Entrypoint</a></li>
-<li class="toctree-l1 current"><a class="current reference internal" href="#">Dockerfile Changelog</a><ul>
-<li class="toctree-l2"><a class="reference internal" href="#changes-after-publishing-the-images">Changes after publishing the images</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-4">Airflow 2.4</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-3">Airflow 2.3</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-2">Airflow 2.2</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-1">Airflow 2.1</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-0">Airflow 2.0</a></li>
+ <p class="caption" role="heading"><span class="caption-text">Content</span></p>
+<ul>
+<li class="toctree-l1"><a class="reference internal" href="../../../../index.html">Overview</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../project.html">Project</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../license.html">License</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../start.html">Quick Start</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../installation/index.html">Installation</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../upgrading-from-1-10/index.html">Upgrading from 1.10 to 2</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../tutorial/index.html">Tutorials</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../howto/index.html">How-to Guides</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../ui.html">UI / Screenshots</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../concepts/index.html">Concepts</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../executor/index.html">Executor</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../dag-run.html">DAG Runs</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../plugins.html">Plugins</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../security/index.html">Security</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../logging-monitoring/index.html">Logging & Monitoring</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../timezone.html">Time Zones</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../usage-cli.html">Using the CLI</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../integration.html">Integration</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../kubernetes.html">Kubernetes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../lineage.html">Lineage</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../listeners.html">Listeners</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../dag-serialization.html">DAG Serialization</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../modules_management.html">Modules Management</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release-process.html">Release Policies</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release_notes.html">Release Notes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../best-practices.html">Best Practices</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../production-deployment.html">Production Deployment</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../faq.html">FAQ</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../privacy_notice.html">Privacy Notice</a></li>
+</ul>
+<p class="caption" role="heading"><span class="caption-text">References</span></p>
+<ul class="current">
+<li class="toctree-l1"><a class="reference internal" href="../../../../operators-and-hooks-ref.html">Operators and hooks</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../cli-and-env-variables-ref.html">CLI</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../templates-ref.html">Templates</a></li>
+<li class="toctree-l1 current"><a class="reference internal" href="../../../../python-api-ref.html">Python API</a><ul class="current">
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#dags">DAGs</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#operators">Operators</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#hooks">Hooks</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#executors">Executors</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#models">Models</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#exceptions">Exceptions</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#secrets-backends">Secrets Backends</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#timetables">Timetables</a></li>
+<li class="toctree-l2 current"><a class="reference internal" href="../../../../python-api-ref.html#example-dags">Example DAGs</a><ul class="current">
+<li class="toctree-l3 current"><a class="reference internal" href="../index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags</span></code></a><ul class="current">
+<li class="toctree-l4"><a class="reference internal" href="../index.html#subpackages">Subpackages</a></li>
+<li class="toctree-l4 current"><a class="reference internal" href="../index.html#submodules">Submodules</a><ul class="current">
+<li class="toctree-l5"><a class="reference internal" href="../example_bash_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_bash_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_datetime_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_datetime_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_day_of_week_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_day_of_week_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_labels/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_labels</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_operator_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_operator_decorator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_python_dop_operator_3/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_python_dop_operator_3</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_complex/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_complex</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_datasets/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_datasets</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_external_task_marker_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_external_task_marker_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_kubernetes_executor/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_kubernetes_executor</span></code></a></li>
+<li class="toctree-l5 current"><a class="current reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_latest_only</span></code></a><ul>
+<li class="toctree-l6"><a class="reference internal" href="#module-contents">Module Contents</a><ul>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_latest_only.latest_only"><code class="docutils literal notranslate"><span class="pre">latest_only</span></code></a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_latest_only.latest_only">latest_only</a></li>
</ul>
</li>
-<li class="toctree-l1"><a class="reference internal" href="recipes.html">Recipes</a></li>
</ul>
-<p class="caption" role="heading"><span class="caption-text">References</span></p>
+</li>
+<li class="toctree-l5"><a class="reference internal" href="../example_latest_only_with_trigger/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_latest_only_with_trigger</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_local_kubernetes_executor/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_local_kubernetes_executor</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_nested_branch_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_nested_branch_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_passing_params_via_test_command/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_passing_params_via_test_command</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_python_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_python_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_short_circuit_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_short_circuit_decorator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_short_circuit_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_short_circuit_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_skip_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_skip_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_subdag_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_subdag_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_task_group/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_task_group</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_task_group_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_task_group_decorator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_time_delta_sensor_async/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_time_delta_sensor_async</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_trigger_controller_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_trigger_controller_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_trigger_target_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_trigger_target_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_xcom/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_xcom</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_xcomargs/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_xcomargs</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial_taskflow_api/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_taskflow_api</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial_taskflow_api_virtualenv/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_taskflow_api_virtualenv</span></code></a></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#utils">Utils</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../stable-rest-api-ref.html">Stable REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../deprecated-rest-api-ref.html">Deprecated REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../configurations-ref.html">Configurations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../extra-packages-ref.html">Extra packages</a></li>
+</ul>
+<p class="caption" role="heading"><span class="caption-text">Internal DB details</span></p>
<ul>
-<li class="toctree-l1"><a class="reference internal" href="build-arg-ref.html">Image build arguments reference</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../migrations-ref.html">Database Migrations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../database-erd-ref.html">Database ERD Schema</a></li>
</ul>
</div>
@@ -546,9 +751,13 @@
<ul class="breadcrumb">
- <li class="breadcrumb-item"><a href="index.html" class="icon icon-home"> Home</a></li>
+ <li class="breadcrumb-item"><a href="../../../../index.html" class="icon icon-home"> Home</a></li>
+
+ <li class="breadcrumb-item"><a href="../../../../python-api-ref.html">Python API Reference</a></li>
+
+ <li class="breadcrumb-item"><a href="../index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags</span></code></a></li>
- <li class="breadcrumb-item"><a href="changelog.html"> Dockerfile Changelog</a></li>
+ <li class="breadcrumb-item"><a href="index.html"> <code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_latest_only</span></code></a></li>
</ul>
</div>
@@ -559,272 +768,25 @@
<div class="bodywrapper">
<div class="body" role="main">
- <blockquote>
-<div></div></blockquote>
-<div class="section" id="dockerfile-changelog">
-<h1>Dockerfile Changelog<a class="headerlink" href="#dockerfile-changelog" title="Permalink to this heading">ΒΆ</a></h1>
-<p>The <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> does not strictly follow the <a class="reference external" href="https://semver.org/">SemVer</a> approach of
-Apache Airflow when it comes to features and backwards compatibility. While Airflow code strictly
-follows it, the <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> is really a way to give users a conveniently packaged Airflow
-using standard container approach, so occasionally there are some changes in the building process
-or in the entrypoint of the image that require slight adaptation of how it is used or built.</p>
-<p>The Changelog below describes the changes introduced in each version of the docker images released by
-the Airflow team.</p>
-<dl class="field-list simple">
-<dt class="field-odd">note</dt>
-<dd class="field-odd"><p>The Changelog below concerns only the convenience production images released at
-<a class="reference external" href="https://hub.docker.com/r/apache/airflow">Airflow DockerHub</a> . The images that are released
-there, are usually built using the <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> released together with Airflow. However You are
-free to take latest released <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> from Airflow and use it to build an image for
-any Airflow version from the <code class="docutils literal notranslate"><span class="pre">Airflow</span> <span class="pre">2</span></code> line. There is no guarantee that it works, but if it does,
-then you can use latest features from that image to build the previous Airflow versions.</p>
-</dd>
-</dl>
-<div class="section" id="changes-after-publishing-the-images">
-<h2>Changes after publishing the images<a class="headerlink" href="#changes-after-publishing-the-images" title="Permalink to this heading">ΒΆ</a></h2>
-<p>Occasionally our images need to be regenerated using newer <code class="docutils literal notranslate"><span class="pre">Dockerfiles</span></code> or constraints.
-This happens when an issue is found or a breaking change is released by our dependencies
-that invalidates the already released image, and regenerating the image makes it usable again.
-While we cannot assure 100% backwards compatibility when it happens, we at least document it
-here so that users affected can find the reason for the changes.</p>
-<table class="docutils align-default">
-<colgroup>
-<col style="width: 10%" />
-<col style="width: 14%" />
-<col style="width: 28%" />
-<col style="width: 16%" />
-<col style="width: 32%" />
-</colgroup>
-<thead>
-<tr class="row-odd"><th class="head"><p>Date</p></th>
-<th class="head"><p>Affected images</p></th>
-<th class="head"><p>Potentially breaking change</p></th>
-<th class="head"><p>Reason</p></th>
-<th class="head"><p>Link to Pull Request</p></th>
-</tr>
-</thead>
-<tbody>
-<tr class="row-even"><td><p>17 June 2022</p></td>
-<td><p>2.2.5</p>
-<p>2.3.0-2.3.2</p>
-</td>
-<td><ul class="simple">
-<li><p>The <code class="docutils literal notranslate"><span class="pre">Authlib</span></code> library downgraded
-from 1.0.1 to 0.15.5 version</p></li>
-</ul>
-</td>
-<td><p>Flask App Builder
-not compatible with
-Authlib >= 1.0.0</p></td>
-<td><p><a class="reference external" href="https://github.com/apache/airflow/pull/24516">https://github.com/apache/airflow/pull/24516</a></p></td>
-</tr>
-<tr class="row-odd"><td><p>18 Jan 2022</p></td>
-<td><p>All 2.2.*, 2.1.*</p></td>
-<td><ul class="simple">
-<li><p>The AIRFLOW_GID 500 was removed</p></li>
-<li><p>MySQL <code class="docutils literal notranslate"><span class="pre">apt</span></code> repository key changed.</p></li>
-</ul>
-</td>
-<td><p>MySQL changed keys
-to sign their packages
-on 17 Jan 2022</p></td>
-<td><p><a class="reference external" href="https://github.com/apache/airflow/pull/20912">https://github.com/apache/airflow/pull/20912</a></p></td>
-</tr>
-</tbody>
-</table>
-</div>
-<div class="section" id="airflow-2-4">
-<h2>Airflow 2.4<a class="headerlink" href="#airflow-2-4" title="Permalink to this heading">ΒΆ</a></h2>
-<ul class="simple">
-<li><p>2.4.0</p>
-<ul>
-<li><p>You can specify additional <code class="docutils literal notranslate"><span class="pre">pip</span> <span class="pre">install</span></code> flags when you build the image via <code class="docutils literal notranslate"><span class="pre">ADDITIONAL_PIP_INSTALL_FLAGS</span></code>
-build arg.</p></li>
-<li><p>Support for <code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Buster</span></code> was dropped, including the possibility of building customized images as
-<code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Buster</span></code> reached end of life.</p></li>
-</ul>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-3">
-<h2>Airflow 2.3<a class="headerlink" href="#airflow-2-3" title="Permalink to this heading">ΒΆ</a></h2>
-<ul class="simple">
-<li><p>2.3.0</p>
-<ul>
-<li><p>Airflow 2.3 <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> is now better optimized for caching and βstandaloneβ which means that you
-can copy <strong>just</strong> the <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> to any folder and start building custom images. This
-however requires <a class="reference external" href="https://docs.docker.com/develop/develop-images/build_enhancements/">Buildkit</a>
-to build the image because we started using features that are only available in <code class="docutils literal notranslate"><span class="pre">Buildkit</span></code>.
-This can be done by setting <code class="docutils literal notranslate"><span class="pre">DOCKER_BUILDKIT=1</span></code> as an environment variable
-or by installing <a class="reference external" href="https://docs.docker.com/buildx/working-with-buildx/">the buildx plugin</a>
-and running <code class="docutils literal notranslate"><span class="pre">docker</span> <span class="pre">buildx</span> <span class="pre">build</span></code> command.</p></li>
-<li><p>Add Python 3.10 support</p></li>
-<li><p>Switch to <code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Bullseye</span></code> based images. <code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Buster</span></code> is deprecated and only available for
-customized image building.</p></li>
-<li><p>Add Multi-Platform support (AMD64/ARM64) in order to accommodate MacOS M1 users</p></li>
-<li><p>Build parameters which control if packages and Airflow should be installed from context file were
-unified</p></li>
-<li><p>The <code class="docutils literal notranslate"><span class="pre">INSTALL_FROM_PYPI</span></code> arg was removed - it is automatically detected now.</p></li>
-<li><p>The <code class="docutils literal notranslate"><span class="pre">INSTALL_FROM_DOCKER_CONTEXT_FILES</span></code> arg changed to <code class="docutils literal notranslate"><span class="pre">INSTALL_PACKAGES_FROM_CONTEXT</span></code></p></li>
-</ul>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-2">
-<h2>Airflow 2.2<a class="headerlink" href="#airflow-2-2" title="Permalink to this heading">ΒΆ</a></h2>
-<ul class="simple">
-<li><p>2.2.4
-* Add support for both <code class="docutils literal notranslate"><span class="pre">.piprc</span></code> and <code class="docutils literal notranslate"><span class="pre">pip.conf</span></code> customizations
-* Add ArtifactHub labels for better discovery of the images
-* Update default Python image to be 3.7
-* Build images with <code class="docutils literal notranslate"><span class="pre">Buildkit</span></code> (optional)
-* Fix building the image on Azure with <code class="docutils literal notranslate"><span class="pre">text</span> <span class="pre">file</span> <span class="pre">busy</span></code> error</p></li>
-<li><p>2.2.3
-* No changes</p></li>
-<li><p>2.2.2
-* No changes</p></li>
-<li><p>2.2.1
-* Workaround the problem with <code class="docutils literal notranslate"><span class="pre">libstdcpp</span></code> TLS error</p></li>
-<li><p>2.2.0
-* Remove AIRFLOW_GID (5000) from Airflow images (potentially breaking change for users using it)
-* Added warnings for Quick-start docker compose
-* Fix warm shutdown for celery worker (signal propagation)
-* Add Oauth libraries to PROD images
-* Add Python 3.9 support</p></li>
-</ul>
-</div>
-<div class="section" id="airflow-2-1">
-<h2>Airflow 2.1<a class="headerlink" href="#airflow-2-1" title="Permalink to this heading">ΒΆ</a></h2>
-<ul>
-<li><p>MySQL changed the keys to sign their packages on 17 Feb 2022. This caused all released images
-to fail when being extended. As result, on 18 Feb 2021 we re-released all
-the <code class="docutils literal notranslate"><span class="pre">2.2</span></code> and <code class="docutils literal notranslate"><span class="pre">2.1</span></code> images with latest versions of <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code>
-containing the new signing key.</p>
-<p>There were subtle changes in the behaviour of some 2.1 images due to that (more details below)
-Detailed <a class="reference external" href="https://github.com/apache/airflow/issues/20911">issue here</a></p>
-</li>
-</ul>
-<dl class="field-list simple">
-<dt class="field-odd">note</dt>
-<dd class="field-odd"><p>that the changes below were valid before image refreshing on 18 Feb 2022.
-Since all the images were refreshed on 18 Feb with the same <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code>
-as 2.1.4, the changes 2.1.1 -> 2.1.3 are
-effectively applied to all the images in 2.1.* line.
-The images refreshed have also those fixes added:</p>
-</dd>
-</dl>
-<ul class="simple">
-<li><p>All 2.1.* image versions refreshed on 18 Feb 2022 have those fixes applied:
-* Fix building the image on Azure with <code class="docutils literal notranslate"><span class="pre">text</span> <span class="pre">file</span> <span class="pre">busy</span></code> error
-* Workaround the problem with <code class="docutils literal notranslate"><span class="pre">libstdcpp</span></code> TLS error
-* Remove AIRFLOW_GID (5000) from Airflow images (potentially breaking change for users using it)
-* Added warnings for Quick-start docker compose
-* Add Oauth libraries to PROD images</p></li>
-</ul>
-<p>Original image Changelog (before the refresh on 18 Feb 2022):</p>
-<ul class="simple">
-<li><dl class="simple">
-<dt>2.1.4</dt><dd><ul>
-<li><p>Workaround the problem with <code class="docutils literal notranslate"><span class="pre">libstdcpp</span></code> TLS error</p></li>
-<li><p>fixed detection of port number in connection URL</p></li>
-<li><p>Improve warnings for quick-start-docker compose</p></li>
-<li><p>Fix warm shutdown for celery worker (signal propagation)</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.3</dt><dd><ul>
-<li><p>fixed auto-creation of user to use non-deprecated <code class="docutils literal notranslate"><span class="pre">create</span> <span class="pre">user</span></code> rather than <code class="docutils literal notranslate"><span class="pre">user_create</span></code></p></li>
-<li><p>remove waiting for celery backend for <code class="docutils literal notranslate"><span class="pre">worker</span></code> and <code class="docutils literal notranslate"><span class="pre">flower</span></code> commands rather than <code class="docutils literal notranslate"><span class="pre">scheduler</span></code> and <code class="docutils literal notranslate"><span class="pre">celery</span></code> only</p></li>
-<li><p>remove deprecated <code class="docutils literal notranslate"><span class="pre">airflow</span> <span class="pre">upgradedb</span></code> command from Airflow 1.10 in case upgrade is requested</p></li>
-<li><p>Add Python 3.9 support</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.2</dt><dd><ul>
-<li><p>No changes</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.1</dt><dd><ul>
-<li><p>Fix failure of lack of default commands (failed when no commands were passed)</p></li>
-<li><p>Added <code class="docutils literal notranslate"><span class="pre">_PIP_ADDITIONAL_REQUIREMENTS</span></code> development feature</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.0</dt><dd><ul>
-<li><p>Unset default <code class="docutils literal notranslate"><span class="pre">PIP_USER</span></code> variable - which caused PythonVirtualEnv to fail</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-0">
-<h2>Airflow 2.0<a class="headerlink" href="#airflow-2-0" title="Permalink to this heading">ΒΆ</a></h2>
-<ul>
-<li><p>MySQL changed the keys to sign their packages on 17 Feb 2022. This caused all released images
-to fail when being extended. As result, on 18 Feb 2021 we re-released all
-the <code class="docutils literal notranslate"><span class="pre">2.2</span></code> and <code class="docutils literal notranslate"><span class="pre">2.1</span></code> images with latest versions of <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code>
-containing the new signing key.</p>
-<p>There were no changes in the behaviour of 2.0.2 image due to that
-Detailed <a class="reference external" href="https://github.com/apache/airflow/issues/20911">issue here</a> .
-Only 2.0.2 image was regenerated, as 2.0.1 and 2.0.0 versions are hardly used and it is unlikely someone
-would like to extend those images. Extending 2.0.1 and 2.0.0 images will lead to failures of βmissing keyβ.</p>
-</li>
-<li><dl class="simple">
-<dt>2.0.2</dt><dd><ul class="simple">
-<li><p>Set correct PYTHONPATH for <code class="docutils literal notranslate"><span class="pre">root</span></code> user. Allows to run the image as root</p></li>
-<li><p>Warn if the deprecated 5000 group ID was used for airflow user when running the image
-(should be 0 for the OpenShift compatibility). Fails if the group 5000 was used with any other user
-(it would not work anyway but with cryptic errors)</p></li>
-<li><p>Set umask as 002 by default, so that you can actually change the user id used to run the image
-(required for OpenShift compatibility)</p></li>
-<li><p>Skip checking the DB and celery backend if CONNECTION_CHECK_MAX_COUNT is equal to 0</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.0.1</dt><dd><ul class="simple">
-<li><p>Avoid reverse IP lookup when checking DB availability. This helped to solve long delays on misconfigured
-docker engines</p></li>
-<li><p>Add auto-detection of redis and amqp broker ports</p></li>
-<li><p>Fixed detection of all user/password combinations in URLs - helps in auto-detecting ports and testing
-connectivity</p></li>
-<li><p>Add possibility to create Admin user automatically when entering the image</p></li>
-<li><p>Automatically create system user when different user than <code class="docutils literal notranslate"><span class="pre">airflow</span></code> is used. Needed for OpenShift
-compatibility</p></li>
-<li><p>Allows to exec to <code class="docutils literal notranslate"><span class="pre">bash</span></code> or <code class="docutils literal notranslate"><span class="pre">python</span></code> if specified as parameters</p></li>
-<li><p>Remove <code class="docutils literal notranslate"><span class="pre">airflow</span></code> command if it is specified as first parameter of the <code class="docutils literal notranslate"><span class="pre">run</span></code> command</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.0.0</dt><dd><ul class="simple">
-<li><p>Initial release of the image based on Debian Buster</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-</ul>
+ <div class="section" id="module-airflow.example_dags.example_latest_only">
+<span id="airflow-example-dags-example-latest-only"></span><h1><a class="reference internal" href="#module-airflow.example_dags.example_latest_only" title="airflow.example_dags.example_latest_only"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_latest_only</span></code></a><a class="headerlink" href="#module-airflow.example_dags.example_latest_only" title="Permalink to this heading">ΒΆ</a></h1>
+<p>Example of the LatestOnlyOperator</p>
+<div class="section" id="module-contents">
+<h2>Module Contents<a class="headerlink" href="#module-contents" title="Permalink to this heading">ΒΆ</a></h2>
+<dl class="py data">
+<dt class="sig sig-object py" id="airflow.example_dags.example_latest_only.latest_only">
+<span class="sig-prename descclassname"><span class="pre">airflow.example_dags.example_latest_only.</span></span><span class="sig-name descname"><span class="pre">latest_only</span></span><a class="reference internal" href="../../../../_modules/airflow/example_dags/example_latest_only.html#latest_only"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow.example_dags.example_latest_only.latest_only" title="Permalink to this definiti [...]
+<dd></dd></dl>
+
</div>
</div>
<div class="pager" role="navigation" aria-label="related navigation">
- <a rel="prev" title="Entrypoint" href="entrypoint.html" >
+ <a rel="prev" title="airflow.example_dags.example_kubernetes_executor" href="../example_kubernetes_executor/index.html" >
<button class="btn-hollow btn-blue bodytext__medium--cerulean-blue" accesskey="p">Previous</button>
</a>
- <a rel="next" title="Recipes" href="recipes.html" >
+ <a rel="next" title="airflow.example_dags.example_latest_only_with_trigger" href="../example_latest_only_with_trigger/index.html" >
<button class="btn-hollow btn-blue bodytext__medium--cerulean-blue" accesskey="n">Next</button>
</a>
</div>
@@ -894,13 +856,12 @@ compatibility</p></li>
<nav class="wy-nav-side-toc">
<div class="wy-menu-vertical">
<ul>
-<li><a class="reference internal" href="#">Dockerfile Changelog</a><ul>
-<li><a class="reference internal" href="#changes-after-publishing-the-images">Changes after publishing the images</a></li>
-<li><a class="reference internal" href="#airflow-2-4">Airflow 2.4</a></li>
-<li><a class="reference internal" href="#airflow-2-3">Airflow 2.3</a></li>
-<li><a class="reference internal" href="#airflow-2-2">Airflow 2.2</a></li>
-<li><a class="reference internal" href="#airflow-2-1">Airflow 2.1</a></li>
-<li><a class="reference internal" href="#airflow-2-0">Airflow 2.0</a></li>
+<li><a class="reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_latest_only</span></code></a><ul>
+<li><a class="reference internal" href="#module-contents">Module Contents</a><ul>
+<li><a class="reference internal" href="#airflow.example_dags.example_latest_only.latest_only"><code class="docutils literal notranslate"><span class="pre">latest_only</span></code></a></li>
+<li><a class="reference internal" href="#airflow.example_dags.example_latest_only.latest_only">latest_only</a></li>
+</ul>
+</li>
</ul>
</li>
</ul>
@@ -925,7 +886,7 @@ compatibility</p></li>
<div class="base-layout--button">
- <a href="https://github.com/apache/airflow/edit/main/docs/docker-stack/changelog.rst" rel="nofollow">
+ <a href="https://github.com/apache/airflow/edit/main/docs/apache-airflow/_api/airflow/example_dags/example_latest_only/index.rst" rel="nofollow">
<button class="btn-hollow btn-brown btn-with-icon with-box-shadow button-fixed">
<svg xmlns="http://www.w3.org/2000/svg" width="30.76" height="30">
@@ -1059,18 +1020,20 @@ compatibility</p></li>
</span>
</div>
</footer>
- <script type="text/javascript" src="_static/_gen/js/docs.js"></script>
- <script type="text/javascript" id="documentation_options" data-url_root="./" src="_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../../../_static/_gen/js/docs.js"></script>
+ <script type="text/javascript" id="documentation_options" data-url_root="../../../../" src="../../../../_static/documentation_options.js"></script>
<script src="https://code.jquery.com/jquery-3.4.1.min.js" integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo=" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.3/umd/popper.min.js" integrity="sha384-ZMP7rVo3mIykV+2+9J3UJ46jBk0WLaUAdn689aCwoqbBJiSnjAK/l8WvCWPIPm49" crossorigin="anonymous"></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/js/bootstrap.min.js" integrity="sha384-ChfqqxuZUCnJSK3+MXmPNIyE6ZbWh2IMqE241rYiqJxyMiZ6OW/JmZQ5stwEULTy" crossorigin="anonymous"></script>
- <script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script>
- <script src="_static/jquery.js"></script>
- <script src="_static/underscore.js"></script>
- <script src="_static/_sphinx_javascript_frameworks_compat.js"></script>
- <script src="_static/doctools.js"></script>
- <script src="_static/clipboard.min.js"></script>
- <script src="_static/copybutton.js"></script>
- <script src="_static/js/globaltoc.js"></script>
+ <script data-url_root="../../../../" id="documentation_options" src="../../../../_static/documentation_options.js"></script>
+ <script src="../../../../_static/jquery.js"></script>
+ <script src="../../../../_static/underscore.js"></script>
+ <script src="../../../../_static/_sphinx_javascript_frameworks_compat.js"></script>
+ <script src="../../../../_static/doctools.js"></script>
+ <script src="../../../../_static/sphinx_highlight.js"></script>
+ <script src="../../../../_static/clipboard.min.js"></script>
+ <script src="../../../../_static/copybutton.js"></script>
+ <script src="../../../../_static/js/globaltoc.js"></script>
+ <script src="../../../../_static/gh-jira-links.js"></script>
</body>
</html>
\ No newline at end of file
diff --git a/docs-archive/docker-stack/changelog.html b/docs-archive/apache-airflow/2.4.2/_api/airflow/example_dags/example_latest_only_with_trigger/index.html
similarity index 69%
copy from docs-archive/docker-stack/changelog.html
copy to docs-archive/apache-airflow/2.4.2/_api/airflow/example_dags/example_latest_only_with_trigger/index.html
index 2fa2b8d179..d7a30945ee 100644
--- a/docs-archive/docker-stack/changelog.html
+++ b/docs-archive/apache-airflow/2.4.2/_api/airflow/example_dags/example_latest_only_with_trigger/index.html
@@ -9,17 +9,18 @@
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1">
- <title>Dockerfile Changelog — docker-stack Documentation</title>
- <link rel="stylesheet" href="_static/_gen/css/main.min.css" type="text/css" />
- <link rel="stylesheet" type="text/css" href="_static/pygments.css" />
- <link rel="stylesheet" type="text/css" href="_static/_gen/css/main.min.css" />
- <link rel="stylesheet" type="text/css" href="_static/copybutton.css" />
- <link rel="stylesheet" type="text/css" href="_static/_gen/css/main-custom.min.css" />
- <link rel="shortcut icon" href="_static/pin_32.png"/>
- <link rel="index" title="Index" href="genindex.html" />
- <link rel="search" title="Search" href="search.html" />
- <link rel="next" title="Recipes" href="recipes.html" />
- <link rel="prev" title="Entrypoint" href="entrypoint.html" />
+ <title>airflow.example_dags.example_latest_only_with_trigger — Airflow Documentation</title>
+ <link rel="stylesheet" href="../../../../_static/_gen/css/main.min.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../../../_static/pygments.css" />
+ <link rel="stylesheet" type="text/css" href="../../../../_static/_gen/css/main.min.css" />
+ <link rel="stylesheet" type="text/css" href="../../../../_static/copybutton.css" />
+ <link rel="stylesheet" type="text/css" href="../../../../_static/_gen/css/main-custom.min.css" />
+ <link rel="stylesheet" type="text/css" href="../../../../_static/graphviz.css" />
+ <link rel="shortcut icon" href="../../../../_static/pin_32.png"/>
+ <link rel="index" title="Index" href="../../../../genindex.html" />
+ <link rel="search" title="Search" href="../../../../search.html" />
+ <link rel="next" title="airflow.example_dags.example_local_kubernetes_executor" href="../example_local_kubernetes_executor/index.html" />
+ <link rel="prev" title="airflow.example_dags.example_latest_only" href="../example_latest_only/index.html" />
<!-- Matomo -->
<script>
var _paq = window._paq = window._paq || [];
@@ -280,8 +281,21 @@
<div class="content-drawer">
<div class="td-sidebar">
+<div id="docs-version-selector" class="docs-version-selector sidebar__version-selector">
+ <a class="dropdown-toggle" href="#" id="versionDropdown" role="button" data-toggle="dropdown" aria-haspopup="true"
+ aria-expanded="false">
+ <span class="bodytext__medium--greyish-brown">Version: </span><span class="version">2.4.2</span>
+ </a>
+ <div class="dropdown-menu" aria-labelledby="navbarDropdownMenuLink">
+
+ </div>
+ <script type="application/x-template" id="version-item-template">
+ <a class="dropdown-item"></a>
+ </script>
+</div>
+
<div class="searchb-box">
- <form class="search-form" action="search.html" method="get">
+ <form class="search-form" action="../../../../search.html" method="get">
<input class="search-form__input" type="text" name="q" placeholder="Search docs" size="16">
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
@@ -311,24 +325,113 @@
<div class="toctree" role="navigation" aria-label="main navigation">
- <ul class="current">
-<li class="toctree-l1"><a class="reference internal" href="index.html">Home</a></li>
-<li class="toctree-l1"><a class="reference internal" href="build.html">Building the image</a></li>
-<li class="toctree-l1"><a class="reference internal" href="entrypoint.html">Entrypoint</a></li>
-<li class="toctree-l1 current"><a class="current reference internal" href="#">Dockerfile Changelog</a><ul>
-<li class="toctree-l2"><a class="reference internal" href="#changes-after-publishing-the-images">Changes after publishing the images</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-4">Airflow 2.4</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-3">Airflow 2.3</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-2">Airflow 2.2</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-1">Airflow 2.1</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-0">Airflow 2.0</a></li>
+ <p class="caption" role="heading"><span class="caption-text">Content</span></p>
+<ul>
+<li class="toctree-l1"><a class="reference internal" href="../../../../index.html">Overview</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../project.html">Project</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../license.html">License</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../start.html">Quick Start</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../installation/index.html">Installation</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../upgrading-from-1-10/index.html">Upgrading from 1.10 to 2</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../tutorial/index.html">Tutorials</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../howto/index.html">How-to Guides</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../ui.html">UI / Screenshots</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../concepts/index.html">Concepts</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../executor/index.html">Executor</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../dag-run.html">DAG Runs</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../plugins.html">Plugins</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../security/index.html">Security</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../logging-monitoring/index.html">Logging & Monitoring</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../timezone.html">Time Zones</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../usage-cli.html">Using the CLI</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../integration.html">Integration</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../kubernetes.html">Kubernetes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../lineage.html">Lineage</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../listeners.html">Listeners</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../dag-serialization.html">DAG Serialization</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../modules_management.html">Modules Management</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release-process.html">Release Policies</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release_notes.html">Release Notes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../best-practices.html">Best Practices</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../production-deployment.html">Production Deployment</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../faq.html">FAQ</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../privacy_notice.html">Privacy Notice</a></li>
+</ul>
+<p class="caption" role="heading"><span class="caption-text">References</span></p>
+<ul class="current">
+<li class="toctree-l1"><a class="reference internal" href="../../../../operators-and-hooks-ref.html">Operators and hooks</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../cli-and-env-variables-ref.html">CLI</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../templates-ref.html">Templates</a></li>
+<li class="toctree-l1 current"><a class="reference internal" href="../../../../python-api-ref.html">Python API</a><ul class="current">
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#dags">DAGs</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#operators">Operators</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#hooks">Hooks</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#executors">Executors</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#models">Models</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#exceptions">Exceptions</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#secrets-backends">Secrets Backends</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#timetables">Timetables</a></li>
+<li class="toctree-l2 current"><a class="reference internal" href="../../../../python-api-ref.html#example-dags">Example DAGs</a><ul class="current">
+<li class="toctree-l3 current"><a class="reference internal" href="../index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags</span></code></a><ul class="current">
+<li class="toctree-l4"><a class="reference internal" href="../index.html#subpackages">Subpackages</a></li>
+<li class="toctree-l4 current"><a class="reference internal" href="../index.html#submodules">Submodules</a><ul class="current">
+<li class="toctree-l5"><a class="reference internal" href="../example_bash_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_bash_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_datetime_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_datetime_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_day_of_week_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_day_of_week_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_labels/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_labels</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_operator_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_operator_decorator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_python_dop_operator_3/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_python_dop_operator_3</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_complex/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_complex</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_datasets/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_datasets</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_external_task_marker_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_external_task_marker_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_kubernetes_executor/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_kubernetes_executor</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_latest_only/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_latest_only</span></code></a></li>
+<li class="toctree-l5 current"><a class="current reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_latest_only_with_trigger</span></code></a><ul>
+<li class="toctree-l6"><a class="reference internal" href="#module-contents">Module Contents</a><ul>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_latest_only_with_trigger.latest_only"><code class="docutils literal notranslate"><span class="pre">latest_only</span></code></a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_latest_only_with_trigger.latest_only">latest_only</a></li>
</ul>
</li>
-<li class="toctree-l1"><a class="reference internal" href="recipes.html">Recipes</a></li>
</ul>
-<p class="caption" role="heading"><span class="caption-text">References</span></p>
+</li>
+<li class="toctree-l5"><a class="reference internal" href="../example_local_kubernetes_executor/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_local_kubernetes_executor</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_nested_branch_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_nested_branch_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_passing_params_via_test_command/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_passing_params_via_test_command</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_python_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_python_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_short_circuit_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_short_circuit_decorator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_short_circuit_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_short_circuit_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_skip_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_skip_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_subdag_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_subdag_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_task_group/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_task_group</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_task_group_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_task_group_decorator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_time_delta_sensor_async/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_time_delta_sensor_async</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_trigger_controller_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_trigger_controller_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_trigger_target_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_trigger_target_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_xcom/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_xcom</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_xcomargs/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_xcomargs</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial_taskflow_api/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_taskflow_api</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial_taskflow_api_virtualenv/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_taskflow_api_virtualenv</span></code></a></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#utils">Utils</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../stable-rest-api-ref.html">Stable REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../deprecated-rest-api-ref.html">Deprecated REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../configurations-ref.html">Configurations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../extra-packages-ref.html">Extra packages</a></li>
+</ul>
+<p class="caption" role="heading"><span class="caption-text">Internal DB details</span></p>
<ul>
-<li class="toctree-l1"><a class="reference internal" href="build-arg-ref.html">Image build arguments reference</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../migrations-ref.html">Database Migrations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../database-erd-ref.html">Database ERD Schema</a></li>
</ul>
</div>
@@ -409,8 +512,21 @@
<div class="td-sidebar desktop-only d-print-none">
+<div id="docs-version-selector" class="docs-version-selector sidebar__version-selector">
+ <a class="dropdown-toggle" href="#" id="versionDropdown" role="button" data-toggle="dropdown" aria-haspopup="true"
+ aria-expanded="false">
+ <span class="bodytext__medium--greyish-brown">Version: </span><span class="version">2.4.2</span>
+ </a>
+ <div class="dropdown-menu" aria-labelledby="navbarDropdownMenuLink">
+
+ </div>
+ <script type="application/x-template" id="version-item-template">
+ <a class="dropdown-item"></a>
+ </script>
+</div>
+
<div class="searchb-box">
- <form class="search-form" action="search.html" method="get">
+ <form class="search-form" action="../../../../search.html" method="get">
<input class="search-form__input" type="text" name="q" placeholder="Search docs" size="16">
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
@@ -440,24 +556,113 @@
<div class="toctree" role="navigation" aria-label="main navigation">
- <ul class="current">
-<li class="toctree-l1"><a class="reference internal" href="index.html">Home</a></li>
-<li class="toctree-l1"><a class="reference internal" href="build.html">Building the image</a></li>
-<li class="toctree-l1"><a class="reference internal" href="entrypoint.html">Entrypoint</a></li>
-<li class="toctree-l1 current"><a class="current reference internal" href="#">Dockerfile Changelog</a><ul>
-<li class="toctree-l2"><a class="reference internal" href="#changes-after-publishing-the-images">Changes after publishing the images</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-4">Airflow 2.4</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-3">Airflow 2.3</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-2">Airflow 2.2</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-1">Airflow 2.1</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-0">Airflow 2.0</a></li>
+ <p class="caption" role="heading"><span class="caption-text">Content</span></p>
+<ul>
+<li class="toctree-l1"><a class="reference internal" href="../../../../index.html">Overview</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../project.html">Project</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../license.html">License</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../start.html">Quick Start</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../installation/index.html">Installation</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../upgrading-from-1-10/index.html">Upgrading from 1.10 to 2</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../tutorial/index.html">Tutorials</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../howto/index.html">How-to Guides</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../ui.html">UI / Screenshots</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../concepts/index.html">Concepts</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../executor/index.html">Executor</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../dag-run.html">DAG Runs</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../plugins.html">Plugins</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../security/index.html">Security</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../logging-monitoring/index.html">Logging & Monitoring</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../timezone.html">Time Zones</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../usage-cli.html">Using the CLI</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../integration.html">Integration</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../kubernetes.html">Kubernetes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../lineage.html">Lineage</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../listeners.html">Listeners</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../dag-serialization.html">DAG Serialization</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../modules_management.html">Modules Management</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release-process.html">Release Policies</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release_notes.html">Release Notes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../best-practices.html">Best Practices</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../production-deployment.html">Production Deployment</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../faq.html">FAQ</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../privacy_notice.html">Privacy Notice</a></li>
+</ul>
+<p class="caption" role="heading"><span class="caption-text">References</span></p>
+<ul class="current">
+<li class="toctree-l1"><a class="reference internal" href="../../../../operators-and-hooks-ref.html">Operators and hooks</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../cli-and-env-variables-ref.html">CLI</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../templates-ref.html">Templates</a></li>
+<li class="toctree-l1 current"><a class="reference internal" href="../../../../python-api-ref.html">Python API</a><ul class="current">
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#dags">DAGs</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#operators">Operators</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#hooks">Hooks</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#executors">Executors</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#models">Models</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#exceptions">Exceptions</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#secrets-backends">Secrets Backends</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#timetables">Timetables</a></li>
+<li class="toctree-l2 current"><a class="reference internal" href="../../../../python-api-ref.html#example-dags">Example DAGs</a><ul class="current">
+<li class="toctree-l3 current"><a class="reference internal" href="../index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags</span></code></a><ul class="current">
+<li class="toctree-l4"><a class="reference internal" href="../index.html#subpackages">Subpackages</a></li>
+<li class="toctree-l4 current"><a class="reference internal" href="../index.html#submodules">Submodules</a><ul class="current">
+<li class="toctree-l5"><a class="reference internal" href="../example_bash_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_bash_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_datetime_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_datetime_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_day_of_week_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_day_of_week_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_labels/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_labels</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_operator_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_operator_decorator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_branch_python_dop_operator_3/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_python_dop_operator_3</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_complex/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_complex</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_datasets/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_datasets</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_external_task_marker_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_external_task_marker_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_kubernetes_executor/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_kubernetes_executor</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_latest_only/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_latest_only</span></code></a></li>
+<li class="toctree-l5 current"><a class="current reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_latest_only_with_trigger</span></code></a><ul>
+<li class="toctree-l6"><a class="reference internal" href="#module-contents">Module Contents</a><ul>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_latest_only_with_trigger.latest_only"><code class="docutils literal notranslate"><span class="pre">latest_only</span></code></a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.example_dags.example_latest_only_with_trigger.latest_only">latest_only</a></li>
</ul>
</li>
-<li class="toctree-l1"><a class="reference internal" href="recipes.html">Recipes</a></li>
</ul>
-<p class="caption" role="heading"><span class="caption-text">References</span></p>
+</li>
+<li class="toctree-l5"><a class="reference internal" href="../example_local_kubernetes_executor/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_local_kubernetes_executor</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_nested_branch_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_nested_branch_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_passing_params_via_test_command/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_passing_params_via_test_command</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_python_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_python_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_short_circuit_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_short_circuit_decorator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_short_circuit_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_short_circuit_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_skip_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_skip_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_subdag_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_subdag_operator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_task_group/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_task_group</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_task_group_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_task_group_decorator</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_time_delta_sensor_async/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_time_delta_sensor_async</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_trigger_controller_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_trigger_controller_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_trigger_target_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_trigger_target_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_xcom/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_xcom</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../example_xcomargs/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_xcomargs</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_dag</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial_taskflow_api/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_taskflow_api</span></code></a></li>
+<li class="toctree-l5"><a class="reference internal" href="../tutorial_taskflow_api_virtualenv/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_taskflow_api_virtualenv</span></code></a></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../python-api-ref.html#utils">Utils</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../stable-rest-api-ref.html">Stable REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../deprecated-rest-api-ref.html">Deprecated REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../configurations-ref.html">Configurations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../extra-packages-ref.html">Extra packages</a></li>
+</ul>
+<p class="caption" role="heading"><span class="caption-text">Internal DB details</span></p>
<ul>
-<li class="toctree-l1"><a class="reference internal" href="build-arg-ref.html">Image build arguments reference</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../migrations-ref.html">Database Migrations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../database-erd-ref.html">Database ERD Schema</a></li>
</ul>
</div>
@@ -546,9 +751,13 @@
<ul class="breadcrumb">
- <li class="breadcrumb-item"><a href="index.html" class="icon icon-home"> Home</a></li>
+ <li class="breadcrumb-item"><a href="../../../../index.html" class="icon icon-home"> Home</a></li>
+
+ <li class="breadcrumb-item"><a href="../../../../python-api-ref.html">Python API Reference</a></li>
+
+ <li class="breadcrumb-item"><a href="../index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags</span></code></a></li>
- <li class="breadcrumb-item"><a href="changelog.html"> Dockerfile Changelog</a></li>
+ <li class="breadcrumb-item"><a href="index.html"> <code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_latest_only_with_trigger</span></code></a></li>
</ul>
</div>
@@ -559,272 +768,25 @@
<div class="bodywrapper">
<div class="body" role="main">
- <blockquote>
-<div></div></blockquote>
-<div class="section" id="dockerfile-changelog">
-<h1>Dockerfile Changelog<a class="headerlink" href="#dockerfile-changelog" title="Permalink to this heading">ΒΆ</a></h1>
-<p>The <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> does not strictly follow the <a class="reference external" href="https://semver.org/">SemVer</a> approach of
-Apache Airflow when it comes to features and backwards compatibility. While Airflow code strictly
-follows it, the <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> is really a way to give users a conveniently packaged Airflow
-using standard container approach, so occasionally there are some changes in the building process
-or in the entrypoint of the image that require slight adaptation of how it is used or built.</p>
-<p>The Changelog below describes the changes introduced in each version of the docker images released by
-the Airflow team.</p>
-<dl class="field-list simple">
-<dt class="field-odd">note</dt>
-<dd class="field-odd"><p>The Changelog below concerns only the convenience production images released at
-<a class="reference external" href="https://hub.docker.com/r/apache/airflow">Airflow DockerHub</a> . The images that are released
-there, are usually built using the <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> released together with Airflow. However You are
-free to take latest released <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> from Airflow and use it to build an image for
-any Airflow version from the <code class="docutils literal notranslate"><span class="pre">Airflow</span> <span class="pre">2</span></code> line. There is no guarantee that it works, but if it does,
... 372350 lines suppressed ...