Skip to content

[AIRFLOW-5449] User can now set an existing variable value to None#6083

Closed
andrewldesousa wants to merge 8 commits intoapache:v1-10-stablefrom
modmed-external:modmed-1.10
Closed

[AIRFLOW-5449] User can now set an existing variable value to None#6083
andrewldesousa wants to merge 8 commits intoapache:v1-10-stablefrom
modmed-external:modmed-1.10

Conversation

@andrewldesousa
Copy link

Make sure you have checked all steps below.

Jira

  • My PR addresses the following Airflow Jira issues and references them in the PR title. For example, "[AIRFLOW-XXX] My Airflow PR"
    • https://issues.apache.org/jira/browse/AIRFLOW-XXX
    • In case you are fixing a typo in the documentation you can prepend your commit with [AIRFLOW-XXX], code changes always need a Jira issue.
    • In case you are proposing a fundamental code change, you need to create an Airflow Improvement Proposal (AIP).
    • In case you are adding a dependency, check if the license complies with the ASF 3rd Party License Policy.

Description

  • Here are some details about my PR, including screenshots of any UI changes:
    -------Users can now set variable values to None

Tests

  • My PR adds the following unit tests OR does not need testing for this extremely good reason:
    --------test_variable_set_existing_value_to_blank:

Commits

  • My commits all reference Jira issues in their subject lines, and I have squashed multiple commits if they address the same issue. In addition, my commits follow the guidelines from "How to write a good git commit message":
    1. Subject is separated from body by a blank line
    2. Subject is limited to 50 characters (not including Jira issue reference)
    3. Subject does not end with a period
    4. Subject uses the imperative mood ("add", not "adding")
    5. Body wraps at 72 characters
    6. Body explains "what" and "why", not "how"

Documentation

  • [N/A] In case of new functionality, my PR adds documentation that describes how to use it.
    • All the public functions and the classes in the PR contain docstrings that explain what it does
    • If you implement backwards incompatible changes, please leave a note in the Updating.md so we can assign it to a appropriate release

Aaron Richter and others added 8 commits January 25, 2019 11:41
…FLOW-5449

# Conflicts:
#	airflow/www/templates/airflow/graph.html
#	airflow/www/views.py
# Conflicts:
#	.dockerignore
#	.github/PULL_REQUEST_TEMPLATE.md
#	.gitignore
#	.pre-commit-config.yaml
#	.rat-excludes
#	.travis.yml
#	BREEZE.rst
#	CHANGELOG.txt
#	CONTRIBUTING.md
#	Dockerfile
#	MANIFEST.in
#	NOTICE
#	README.md
#	UPDATING.md
#	airflow/__init__.py
#	airflow/_vendor/nvd3/NVD3Chart.py
#	airflow/_vendor/nvd3/cumulativeLineChart.py
#	airflow/_vendor/nvd3/discreteBarChart.py
#	airflow/_vendor/nvd3/lineChart.py
#	airflow/_vendor/nvd3/linePlusBarChart.py
#	airflow/_vendor/nvd3/lineWithFocusChart.py
#	airflow/_vendor/nvd3/multiBarChart.py
#	airflow/_vendor/nvd3/multiBarHorizontalChart.py
#	airflow/_vendor/nvd3/pieChart.py
#	airflow/_vendor/nvd3/scatterChart.py
#	airflow/_vendor/nvd3/stackedAreaChart.py
#	airflow/_vendor/slugify/slugify.py
#	airflow/api/__init__.py
#	airflow/api/auth/backend/default.py
#	airflow/api/auth/backend/deny_all.py
#	airflow/api/auth/backend/kerberos_auth.py
#	airflow/api/client/json_client.py
#	airflow/api/common/experimental/__init__.py
#	airflow/api/common/experimental/delete_dag.py
#	airflow/api/common/experimental/get_code.py
#	airflow/api/common/experimental/get_dag_run_state.py
#	airflow/api/common/experimental/get_dag_runs.py
#	airflow/api/common/experimental/get_task.py
#	airflow/api/common/experimental/get_task_instance.py
#	airflow/api/common/experimental/mark_tasks.py
#	airflow/api/common/experimental/trigger_dag.py
#	airflow/bin/cli.py
#	airflow/config_templates/airflow_local_settings.py
#	airflow/config_templates/default_airflow.cfg
#	airflow/config_templates/default_celery.py
#	airflow/config_templates/default_test.cfg
#	airflow/configuration.py
#	airflow/contrib/auth/backends/github_enterprise_auth.py
#	airflow/contrib/auth/backends/google_auth.py
#	airflow/contrib/auth/backends/kerberos_auth.py
#	airflow/contrib/auth/backends/ldap_auth.py
#	airflow/contrib/auth/backends/password_auth.py
#	airflow/contrib/example_dags/example_azure_container_instances_operator.py
#	airflow/contrib/example_dags/example_azure_cosmosdb_sensor.py
#	airflow/contrib/example_dags/example_databricks_operator.py
#	airflow/contrib/example_dags/example_dingding_operator.py
#	airflow/contrib/example_dags/example_kubernetes_executor.py
#	airflow/contrib/example_dags/example_kubernetes_executor_config.py
#	airflow/contrib/example_dags/example_twitter_README.md
#	airflow/contrib/example_dags/example_winrm_operator.py
#	airflow/contrib/example_dags/libs/helper.py
#	airflow/contrib/executors/mesos_executor.py
#	airflow/contrib/hooks/aws_athena_hook.py
#	airflow/contrib/hooks/aws_glue_catalog_hook.py
#	airflow/contrib/hooks/aws_hook.py
#	airflow/contrib/hooks/aws_logs_hook.py
#	airflow/contrib/hooks/aws_sns_hook.py
#	airflow/contrib/hooks/aws_sqs_hook.py
#	airflow/contrib/hooks/azure_container_instance_hook.py
#	airflow/contrib/hooks/azure_container_registry_hook.py
#	airflow/contrib/hooks/bigquery_hook.py
#	airflow/contrib/hooks/databricks_hook.py
#	airflow/contrib/hooks/datastore_hook.py
#	airflow/contrib/hooks/dingding_hook.py
#	airflow/contrib/hooks/emr_hook.py
#	airflow/contrib/hooks/ftp_hook.py
#	airflow/contrib/hooks/gcp_api_base_hook.py
#	airflow/contrib/hooks/gcp_bigtable_hook.py
#	airflow/contrib/hooks/gcp_cloud_build_hook.py
#	airflow/contrib/hooks/gcp_compute_hook.py
#	airflow/contrib/hooks/gcp_container_hook.py
#	airflow/contrib/hooks/gcp_dataflow_hook.py
#	airflow/contrib/hooks/gcp_dataproc_hook.py
#	airflow/contrib/hooks/gcp_dlp_hook.py
#	airflow/contrib/hooks/gcp_function_hook.py
#	airflow/contrib/hooks/gcp_kms_hook.py
#	airflow/contrib/hooks/gcp_mlengine_hook.py
#	airflow/contrib/hooks/gcp_natural_language_hook.py
#	airflow/contrib/hooks/gcp_pubsub_hook.py
#	airflow/contrib/hooks/gcp_spanner_hook.py
#	airflow/contrib/hooks/gcp_speech_to_text_hook.py
#	airflow/contrib/hooks/gcp_sql_hook.py
#	airflow/contrib/hooks/gcp_text_to_speech_hook.py
#	airflow/contrib/hooks/gcp_transfer_hook.py
#	airflow/contrib/hooks/gcp_translate_hook.py
#	airflow/contrib/hooks/gcp_video_intelligence_hook.py
#	airflow/contrib/hooks/gcp_vision_hook.py
#	airflow/contrib/hooks/gcs_hook.py
#	airflow/contrib/hooks/grpc_hook.py
#	airflow/contrib/hooks/imap_hook.py
#	airflow/contrib/hooks/mongo_hook.py
#	airflow/contrib/hooks/openfaas_hook.py
#	airflow/contrib/hooks/opsgenie_alert_hook.py
#	airflow/contrib/hooks/qubole_hook.py
#	airflow/contrib/hooks/redis_hook.py
#	airflow/contrib/hooks/sagemaker_hook.py
#	airflow/contrib/hooks/salesforce_hook.py
#	airflow/contrib/hooks/sftp_hook.py
#	airflow/contrib/hooks/slack_webhook_hook.py
#	airflow/contrib/hooks/spark_submit_hook.py
#	airflow/contrib/hooks/ssh_hook.py
#	airflow/contrib/hooks/winrm_hook.py
#	airflow/contrib/kubernetes/kubernetes_request_factory/kubernetes_request_factory.py
#	airflow/contrib/kubernetes/kubernetes_request_factory/pod_request_factory.py
#	airflow/contrib/kubernetes/pod.py
#	airflow/contrib/kubernetes/pod_generator.py
#	airflow/contrib/kubernetes/secret.py
#	airflow/contrib/kubernetes/worker_configuration.py
#	airflow/contrib/operators/adls_list_operator.py
#	airflow/contrib/operators/adls_to_gcs.py
#	airflow/contrib/operators/aws_athena_operator.py
#	airflow/contrib/operators/aws_sqs_publish_operator.py
#	airflow/contrib/operators/awsbatch_operator.py
#	airflow/contrib/operators/azure_container_instances_operator.py
#	airflow/contrib/operators/azure_cosmos_operator.py
#	airflow/contrib/operators/bigquery_check_operator.py
#	airflow/contrib/operators/bigquery_get_data.py
#	airflow/contrib/operators/bigquery_operator.py
#	airflow/contrib/operators/bigquery_table_delete_operator.py
#	airflow/contrib/operators/bigquery_to_bigquery.py
#	airflow/contrib/operators/bigquery_to_gcs.py
#	airflow/contrib/operators/cassandra_to_gcs.py
#	airflow/contrib/operators/databricks_operator.py
#	airflow/contrib/operators/dataflow_operator.py
#	airflow/contrib/operators/dataproc_operator.py
#	airflow/contrib/operators/datastore_export_operator.py
#	airflow/contrib/operators/datastore_import_operator.py
#	airflow/contrib/operators/dingding_operator.py
#	airflow/contrib/operators/ecs_operator.py
#	airflow/contrib/operators/file_to_gcs.py
#	airflow/contrib/operators/gcp_bigtable_operator.py
#	airflow/contrib/operators/gcp_cloud_build_operator.py
#	airflow/contrib/operators/gcp_compute_operator.py
#	airflow/contrib/operators/gcp_container_operator.py
#	airflow/contrib/operators/gcp_dlp_operator.py
#	airflow/contrib/operators/gcp_function_operator.py
#	airflow/contrib/operators/gcp_natural_language_operator.py
#	airflow/contrib/operators/gcp_spanner_operator.py
#	airflow/contrib/operators/gcp_speech_to_text_operator.py
#	airflow/contrib/operators/gcp_sql_operator.py
#	airflow/contrib/operators/gcp_text_to_speech_operator.py
#	airflow/contrib/operators/gcp_transfer_operator.py
#	airflow/contrib/operators/gcp_translate_operator.py
#	airflow/contrib/operators/gcp_translate_speech_operator.py
#	airflow/contrib/operators/gcp_video_intelligence_operator.py
#	airflow/contrib/operators/gcp_vision_operator.py
#	airflow/contrib/operators/gcs_acl_operator.py
#	airflow/contrib/operators/gcs_delete_operator.py
#	airflow/contrib/operators/gcs_download_operator.py
#	airflow/contrib/operators/gcs_list_operator.py
#	airflow/contrib/operators/gcs_operator.py
#	airflow/contrib/operators/gcs_to_bq.py
#	airflow/contrib/operators/gcs_to_gcs.py
#	airflow/contrib/operators/gcs_to_gcs_transfer_operator.py
#	airflow/contrib/operators/gcs_to_s3.py
#	airflow/contrib/operators/imap_attachment_to_s3_operator.py
#	airflow/contrib/operators/jenkins_job_trigger_operator.py
#	airflow/contrib/operators/kubernetes_pod_operator.py
#	airflow/contrib/operators/mlengine_operator.py
#	airflow/contrib/operators/mlengine_operator_utils.py
#	airflow/contrib/operators/mssql_to_gcs.py
#	airflow/contrib/operators/mysql_to_gcs.py
#	airflow/contrib/operators/opsgenie_alert_operator.py
#	airflow/contrib/operators/oracle_to_azure_data_lake_transfer.py
#	airflow/contrib/operators/oracle_to_oracle_transfer.py
#	airflow/contrib/operators/postgres_to_gcs_operator.py
#	airflow/contrib/operators/pubsub_operator.py
#	airflow/contrib/operators/qubole_operator.py
#	airflow/contrib/operators/redis_publish_operator.py
#	airflow/contrib/operators/s3_copy_object_operator.py
#	airflow/contrib/operators/s3_delete_objects_operator.py
#	airflow/contrib/operators/s3_to_gcs_operator.py
#	airflow/contrib/operators/s3_to_gcs_transfer_operator.py
#	airflow/contrib/operators/s3_to_sftp_operator.py
#	airflow/contrib/operators/sagemaker_base_operator.py
#	airflow/contrib/operators/sagemaker_endpoint_config_operator.py
#	airflow/contrib/operators/sagemaker_endpoint_operator.py
#	airflow/contrib/operators/sagemaker_model_operator.py
#	airflow/contrib/operators/sagemaker_training_operator.py
#	airflow/contrib/operators/sagemaker_transform_operator.py
#	airflow/contrib/operators/sagemaker_tuning_operator.py
#	airflow/contrib/operators/sftp_operator.py
#	airflow/contrib/operators/sftp_to_s3_operator.py
#	airflow/contrib/operators/snowflake_operator.py
#	airflow/contrib/operators/sns_publish_operator.py
#	airflow/contrib/operators/spark_submit_operator.py
#	airflow/contrib/operators/sql_to_gcs.py
#	airflow/contrib/operators/sqoop_operator.py
#	airflow/contrib/operators/ssh_operator.py
#	airflow/contrib/operators/wasb_delete_blob_operator.py
#	airflow/contrib/operators/winrm_operator.py
#	airflow/contrib/plugins/metastore_browser/main.py
#	airflow/contrib/sensors/aws_athena_sensor.py
#	airflow/contrib/sensors/aws_glue_catalog_partition_sensor.py
#	airflow/contrib/sensors/aws_sqs_sensor.py
#	airflow/contrib/sensors/azure_cosmos_sensor.py
#	airflow/contrib/sensors/cassandra_record_sensor.py
#	airflow/contrib/sensors/cassandra_table_sensor.py
#	airflow/contrib/sensors/file_sensor.py
#	airflow/contrib/sensors/ftp_sensor.py
#	airflow/contrib/sensors/gcp_transfer_sensor.py
#	airflow/contrib/sensors/gcs_sensor.py
#	airflow/contrib/sensors/imap_attachment_sensor.py
#	airflow/contrib/sensors/mongo_sensor.py
#	airflow/contrib/sensors/pubsub_sensor.py
#	airflow/contrib/sensors/python_sensor.py
#	airflow/contrib/sensors/redis_key_sensor.py
#	airflow/contrib/sensors/redis_pub_sub_sensor.py
#	airflow/contrib/sensors/sagemaker_base_sensor.py
#	airflow/contrib/sensors/sagemaker_endpoint_sensor.py
#	airflow/contrib/sensors/sagemaker_training_sensor.py
#	airflow/contrib/sensors/sagemaker_transform_sensor.py
#	airflow/contrib/sensors/sagemaker_tuning_sensor.py
#	airflow/contrib/sensors/weekday_sensor.py
#	airflow/contrib/task_runner/cgroup_task_runner.py
#	airflow/contrib/utils/gcp_field_sanitizer.py
#	airflow/contrib/utils/gcp_field_validator.py
#	airflow/contrib/utils/mlengine_operator_utils.py
#	airflow/contrib/utils/mlengine_prediction_summary.py
#	airflow/contrib/utils/sendgrid.py
#	airflow/contrib/utils/weekday.py
#	airflow/default_login.py
#	airflow/example_dags/entrypoint.sh
#	airflow/example_dags/example_bash_operator.py
#	airflow/example_dags/example_branch_operator.py
#	airflow/example_dags/example_branch_python_dop_operator_3.py
#	airflow/example_dags/example_http_operator.py
#	airflow/example_dags/example_pig_operator.py
#	airflow/example_dags/example_python_operator.py
#	airflow/example_dags/example_short_circuit_operator.py
#	airflow/example_dags/example_skip_dag.py
#	airflow/example_dags/example_subdag_operator.py
#	airflow/example_dags/example_trigger_target_dag.py
#	airflow/example_dags/example_xcom.py
#	airflow/exceptions.py
#	airflow/executors/base_executor.py
#	airflow/executors/celery_executor.py
#	airflow/executors/kubernetes_executor.py
#	airflow/executors/local_executor.py
#	airflow/gcp/utils/mlengine_operator_utils.py
#	airflow/gcp/utils/mlengine_prediction_summary.py
#	airflow/hooks/S3_hook.py
#	airflow/hooks/base_hook.py
#	airflow/hooks/dbapi_hook.py
#	airflow/hooks/hdfs_hook.py
#	airflow/hooks/hive_hooks.py
#	airflow/hooks/mysql_hook.py
#	airflow/hooks/postgres_hook.py
#	airflow/hooks/slack_hook.py
#	airflow/hooks/webhdfs_hook.py
#	airflow/jobs/backfill_job.py
#	airflow/jobs/base_job.py
#	airflow/jobs/local_task_job.py
#	airflow/jobs/scheduler_job.py
#	airflow/kubernetes/pod_launcher.py
#	airflow/lineage/datasets.py
#	airflow/migrations/versions/4addfa1236f1_add_fractional_seconds_to_mysql_tables.py
#	airflow/migrations/versions/6e96a59344a4_make_taskinstance_pool_not_nullable.py
#	airflow/migrations/versions/856955da8476_fix_sqlite_foreign_key.py
#	airflow/migrations/versions/939bb1e647c8_task_reschedule_fk_on_cascade_delete.py
#	airflow/models/__init__.py
#	airflow/models/base.py
#	airflow/models/baseoperator.py
#	airflow/models/connection.py
#	airflow/models/crypto.py
#	airflow/models/dag.py
#	airflow/models/dagbag.py
#	airflow/models/dagrun.py
#	airflow/models/pool.py
#	airflow/models/skipmixin.py
#	airflow/models/taskinstance.py
#	airflow/models/variable.py
#	airflow/models/xcom.py
#	airflow/operators/__init__.py
#	airflow/operators/bash_operator.py
#	airflow/operators/branch_operator.py
#	airflow/operators/check_operator.py
#	airflow/operators/dagrun_operator.py
#	airflow/operators/docker_operator.py
#	airflow/operators/hive_stats_operator.py
#	airflow/operators/hive_to_druid.py
#	airflow/operators/hive_to_mysql.py
#	airflow/operators/hive_to_samba_operator.py
#	airflow/operators/http_operator.py
#	airflow/operators/mysql_to_hive.py
#	airflow/operators/pig_operator.py
#	airflow/operators/python_operator.py
#	airflow/operators/redshift_to_s3_operator.py
#	airflow/operators/s3_file_transform_operator.py
#	airflow/operators/s3_to_hive_operator.py
#	airflow/operators/s3_to_redshift_operator.py
#	airflow/operators/slack_operator.py
#	airflow/operators/subdag_operator.py
#	airflow/plugins_manager.py
#	airflow/security/kerberos.py
#	airflow/security/utils.py
#	airflow/sensors/base_sensor_operator.py
#	airflow/sensors/external_task_sensor.py
#	airflow/sensors/hdfs_sensor.py
#	airflow/sensors/sql_sensor.py
#	airflow/settings.py
#	airflow/task/task_runner/__init__.py
#	airflow/task/task_runner/base_task_runner.py
#	airflow/task/task_runner/standard_task_runner.py
#	airflow/ti_deps/dep_context.py
#	airflow/utils/cli.py
#	airflow/utils/dag_processing.py
#	airflow/utils/dates.py
#	airflow/utils/db.py
#	airflow/utils/email.py
#	airflow/utils/helpers.py
#	airflow/utils/log/colored_log.py
#	airflow/utils/log/es_task_handler.py
#	airflow/utils/log/gcs_task_handler.py
#	airflow/utils/log/json_formatter.py
#	airflow/utils/log/logging_mixin.py
#	airflow/utils/log/s3_task_handler.py
#	airflow/utils/log/wasb_task_handler.py
#	airflow/utils/sqlalchemy.py
#	airflow/utils/trigger_rule.py
#	airflow/utils/weight_rule.py
#	airflow/version.py
#	airflow/www/api/experimental/endpoints.py
#	airflow/www/app.py
#	airflow/www/blueprints.py
#	airflow/www/static/bootstrap-toggle.min.css
#	airflow/www/static/bootstrap-toggle.min.js
#	airflow/www/static/connection_form.js
#	airflow/www/static/css/css/bootstrap-theme.css
#	airflow/www/static/css/css/flash.css
#	airflow/www/static/css/css/gantt.css
#	airflow/www/static/css/css/graph.css
#	airflow/www/static/css/css/main.css
#	airflow/www/static/css/css/tree.css
#	airflow/www/static/css/graph.css
#	airflow/www/static/css/js/gantt-chart-d3v2.js
#	airflow/www/static/css/main.css
#	airflow/www/static/d3.v3.min.js
#	airflow/www/static/dagre-d3.min.js
#	airflow/www/static/dataTables.bootstrap.css
#	airflow/www/static/graph.css
#	airflow/www/static/jquery.dataTables.min.js
#	airflow/www/static/main.css
#	airflow/www/static/nv.d3.css
#	airflow/www/static/nv.d3.js
#	airflow/www/templates/admin/master.html
#	airflow/www/templates/airflow/chart/create.html
#	airflow/www/templates/airflow/chart/edit.html
#	airflow/www/templates/airflow/confirm.html
#	airflow/www/templates/airflow/conn_create.html
#	airflow/www/templates/airflow/conn_edit.html
#	airflow/www/templates/airflow/conn_list.html
#	airflow/www/templates/airflow/dag.html
#	airflow/www/templates/airflow/dag_details.html
#	airflow/www/templates/airflow/dags.html
#	airflow/www/templates/airflow/graph.html
#	airflow/www/templates/airflow/list_dags.html
#	airflow/www/templates/airflow/login.html
#	airflow/www/templates/airflow/master.html
#	airflow/www/templates/airflow/model_create.html
#	airflow/www/templates/airflow/model_edit.html
#	airflow/www/templates/airflow/modelchart.html
#	airflow/www/templates/airflow/nvd3.html
#	airflow/www/templates/airflow/para/para.html
#	airflow/www/templates/airflow/query.html
#	airflow/www/templates/airflow/tree.html
#	airflow/www/templates/airflow/variable_list.html
#	airflow/www/templates/airflow/variables/README.md
#	airflow/www/utils.py
#	airflow/www/validators.py
#	airflow/www/views.py
#	airflow/www_rbac/__init__.py
#	airflow/www_rbac/api/experimental/endpoints.py
#	airflow/www_rbac/app.py
#	airflow/www_rbac/decorators.py
#	airflow/www_rbac/forms.py
#	airflow/www_rbac/security.py
#	airflow/www_rbac/static/graph.css
#	airflow/www_rbac/static/main.css
#	airflow/www_rbac/templates/airflow/chart.html
#	airflow/www_rbac/templates/airflow/circles.html
#	airflow/www_rbac/templates/airflow/config.html
#	airflow/www_rbac/templates/airflow/confirm.html
#	airflow/www_rbac/templates/airflow/conn_create.html
#	airflow/www_rbac/templates/airflow/conn_edit.html
#	airflow/www_rbac/templates/airflow/dag.html
#	airflow/www_rbac/templates/airflow/dag_code.html
#	airflow/www_rbac/templates/airflow/dag_details.html
#	airflow/www_rbac/templates/airflow/dags.html
#	airflow/www_rbac/templates/airflow/duration_chart.html
#	airflow/www_rbac/templates/airflow/gantt.html
#	airflow/www_rbac/templates/airflow/graph.html
#	airflow/www_rbac/templates/airflow/task.html
#	airflow/www_rbac/templates/airflow/task_instance.html
#	airflow/www_rbac/templates/airflow/ti_code.html
#	airflow/www_rbac/templates/airflow/ti_log.html
#	airflow/www_rbac/templates/airflow/tree.html
#	airflow/www_rbac/templates/airflow/variable_list.html
#	airflow/www_rbac/templates/airflow/version.html
#	airflow/www_rbac/templates/appbuilder/baselayout.html
#	airflow/www_rbac/templates/appbuilder/index.html
#	airflow/www_rbac/utils.py
#	airflow/www_rbac/validators.py
#	airflow/www_rbac/views.py
#	breeze
#	breeze-complete
#	common/_default_branch.sh
#	dev/README.md
#	dev/airflow-jira
#	dev/airflow-pr
#	docs/api.rst
#	docs/autoapi_templates/index.rst
#	docs/cli.rst
#	docs/concepts.rst
#	docs/conf.py
#	docs/executor/celery.rst
#	docs/exts/exampleinclude.py
#	docs/howto/connection/gcp.rst
#	docs/howto/connection/gcp_sql.rst
#	docs/howto/connection/index.rst
#	docs/howto/connection/mysql.rst
#	docs/howto/connection/oracle.rst
#	docs/howto/connection/postgres.rst
#	docs/howto/connection/ssh.rst
#	docs/howto/define_extra_link.rst
#	docs/howto/executor/use-dask.rst
#	docs/howto/executor/use-mesos.rst
#	docs/howto/index.rst
#	docs/howto/initialize-database.rst
#	docs/howto/operator/gcp/bigtable.rst
#	docs/howto/operator/gcp/cloud_build.rst
#	docs/howto/operator/gcp/compute.rst
#	docs/howto/operator/gcp/function.rst
#	docs/howto/operator/gcp/gcs.rst
#	docs/howto/operator/gcp/natural_language.rst
#	docs/howto/operator/gcp/spanner.rst
#	docs/howto/operator/gcp/speech.rst
#	docs/howto/operator/gcp/sql.rst
#	docs/howto/operator/gcp/transfer.rst
#	docs/howto/operator/gcp/translate-speech.rst
#	docs/howto/operator/gcp/translate.rst
#	docs/howto/operator/gcp/video.rst
#	docs/howto/operator/gcp/vision.rst
#	docs/howto/operator/index.rst
#	docs/howto/operator/python.rst
#	docs/howto/tracking-user-activity.rst
#	docs/howto/write-logs.rst
#	docs/index.rst
#	docs/installation.rst
#	docs/integration.rst
#	docs/kubernetes.rst
#	docs/metrics.rst
#	docs/plugins.rst
#	docs/profiling.rst
#	docs/project.rst
#	docs/scheduler.rst
#	docs/security.rst
#	docs/templates/layout.html
#	docs/timezone.rst
#	docs/tutorial.rst
#	hooks/_default_branch.sh
#	hooks/build
#	init.sh
#	run-tests
#	scripts/ci/_utils.sh
#	scripts/ci/ci_before_install.sh
#	scripts/ci/ci_build.sh
#	scripts/ci/ci_check_license.sh
#	scripts/ci/ci_docs.sh
#	scripts/ci/ci_flake8.sh
#	scripts/ci/ci_mypy.sh
#	scripts/ci/ci_run_all_static_tests.sh
#	scripts/ci/docker-compose-local.yml
#	scripts/ci/docker-compose-postgres.yml
#	scripts/ci/docker-compose.yml
#	scripts/ci/in_container/entrypoint_ci.sh
#	scripts/ci/in_container/run_check_licence.sh
#	scripts/ci/in_container/run_ci_tests.sh
#	scripts/ci/in_container/run_fix_ownership.sh
#	scripts/ci/in_container/run_flake8.sh
#	scripts/ci/in_container/run_mypy.sh
#	scripts/ci/kubernetes/docker/Dockerfile
#	scripts/ci/kubernetes/docker/airflow-test-env-init.sh
#	scripts/ci/kubernetes/docker/build.sh
#	scripts/ci/kubernetes/kube/deploy.sh
#	scripts/ci/kubernetes/kube/templates/configmaps.template.yaml
#	scripts/ci/load_fixtures.sh
#	scripts/ci/openldap/ldif/04-rootdn.ldif
#	scripts/ci/requirements.txt
#	scripts/perf/scheduler_ops_metrics.py
#	setup.py
#	tests/__init__.py
#	tests/api/client/test_local_client.py
#	tests/api/common/experimental/test_delete_dag.py
#	tests/api/common/experimental/test_mark_tasks.py
#	tests/api/common/experimental/test_pool.py
#	tests/cli/test_cli.py
#	tests/cli/test_worker_initialisation.py
#	tests/compat.py
#	tests/contrib/executors/test_kubernetes_executor.py
#	tests/contrib/executors/test_mesos_executor.py
#	tests/contrib/hooks/test_aws_glue_catalog_hook.py
#	tests/contrib/hooks/test_aws_hook.py
#	tests/contrib/hooks/test_azure_container_instance_hook.py
#	tests/contrib/hooks/test_azure_container_registry_hook.py
#	tests/contrib/hooks/test_azure_container_volume_hook.py
#	tests/contrib/hooks/test_azure_cosmos_hook.py
#	tests/contrib/hooks/test_azure_data_lake_hook.py
#	tests/contrib/hooks/test_azure_fileshare_hook.py
#	tests/contrib/hooks/test_bigquery_hook.py
#	tests/contrib/hooks/test_databricks_hook.py
#	tests/contrib/hooks/test_datadog_hook.py
#	tests/contrib/hooks/test_dingding_hook.py
#	tests/contrib/hooks/test_discord_webhook_hook.py
#	tests/contrib/hooks/test_emr_hook.py
#	tests/contrib/hooks/test_ftp_hook.py
#	tests/contrib/hooks/test_gcp_api_base_hook.py
#	tests/contrib/hooks/test_gcp_container_hook.py
#	tests/contrib/hooks/test_gcp_dataflow_hook.py
#	tests/contrib/hooks/test_gcp_dataproc_hook.py
#	tests/contrib/hooks/test_gcs_hook.py
#	tests/contrib/hooks/test_grpc_hook.py
#	tests/contrib/hooks/test_imap_hook.py
#	tests/contrib/hooks/test_jdbc_hook.py
#	tests/contrib/hooks/test_openfaas_hook.py
#	tests/contrib/hooks/test_opsgenie_alert_hook.py
#	tests/contrib/hooks/test_redis_hook.py
#	tests/contrib/hooks/test_redshift_hook.py
#	tests/contrib/hooks/test_sagemaker_hook.py
#	tests/contrib/hooks/test_sftp_hook.py
#	tests/contrib/hooks/test_slack_webhook_hook.py
#	tests/contrib/hooks/test_snowflake_hook.py
#	tests/contrib/hooks/test_spark_jdbc_hook.py
#	tests/contrib/hooks/test_spark_sql_hook.py
#	tests/contrib/hooks/test_spark_submit_hook.py
#	tests/contrib/hooks/test_sqoop_hook.py
#	tests/contrib/hooks/test_ssh_hook.py
#	tests/contrib/hooks/test_wasb_hook.py
#	tests/contrib/hooks/test_winrm_hook.py
#	tests/contrib/hooks/test_zendesk_hook.py
#	tests/contrib/kubernetes/__init__.py
#	tests/contrib/minikube/test_kubernetes_pod_operator.py
#	tests/contrib/operators/postgres_local_executor.cfg
#	tests/contrib/operators/test_adls_list_operator.py
#	tests/contrib/operators/test_aws_athena_operator.py
#	tests/contrib/operators/test_aws_sqs_publish_operator.py
#	tests/contrib/operators/test_azure_cosmos_insertdocument_operator.py
#	tests/contrib/operators/test_bigquery_operator.py
#	tests/contrib/operators/test_cassandra_to_gcs_operator.py
#	tests/contrib/operators/test_databricks_operator.py
#	tests/contrib/operators/test_dataflow_operator.py
#	tests/contrib/operators/test_dataproc_operator.py
#	tests/contrib/operators/test_dingding_operator.py
#	tests/contrib/operators/test_ecs_operator.py
#	tests/contrib/operators/test_gcp_container_operator.py
#	tests/contrib/operators/test_gcs_acl_operator.py
#	tests/contrib/operators/test_gcs_delete_operator.py
#	tests/contrib/operators/test_gcs_operator.py
#	tests/contrib/operators/test_gcs_to_gcs_operator.py
#	tests/contrib/operators/test_gcs_to_s3_operator.py
#	tests/contrib/operators/test_hipchat_operator.py
#	tests/contrib/operators/test_hive_to_dynamodb_operator.py
#	tests/contrib/operators/test_imap_attachment_to_s3_operator.py
#	tests/contrib/operators/test_jenkins_operator.py
#	tests/contrib/operators/test_mlengine_operator_utils.py
#	tests/contrib/operators/test_mysql_to_gcs_operator.py
#	tests/contrib/operators/test_opsgenie_alert_operator.py
#	tests/contrib/operators/test_oracle_to_azure_data_lake_transfer.py
#	tests/contrib/operators/test_oracle_to_oracle_transfer.py
#	tests/contrib/operators/test_qubole_check_operator.py
#	tests/contrib/operators/test_qubole_operator.py
#	tests/contrib/operators/test_redis_publish_operator.py
#	tests/contrib/operators/test_s3_to_gcs_operator.py
#	tests/contrib/operators/test_s3_to_sftp_operator.py
#	tests/contrib/operators/test_sagemaker_base_operator.py
#	tests/contrib/operators/test_sagemaker_endpoint_config_operator.py
#	tests/contrib/operators/test_sagemaker_endpoint_operator.py
#	tests/contrib/operators/test_sagemaker_model_operator.py
#	tests/contrib/operators/test_sagemaker_training_operator.py
#	tests/contrib/operators/test_sagemaker_transform_operator.py
#	tests/contrib/operators/test_sagemaker_tuning_operator.py
#	tests/contrib/operators/test_segment_track_event_operator.py
#	tests/contrib/operators/test_sftp_operator.py
#	tests/contrib/operators/test_sftp_to_s3_operator.py
#	tests/contrib/operators/test_sns_publish_operator.py
#	tests/contrib/operators/test_spark_submit_operator.py
#	tests/contrib/operators/test_ssh_operator.py
#	tests/contrib/operators/test_vertica_operator.py
#	tests/contrib/operators/test_wasb_delete_blob_operator.py
#	tests/contrib/operators/test_winrm_operator.py
#	tests/contrib/sensors/test_athena_sensor.py
#	tests/contrib/sensors/test_aws_glue_catalog_partition_sensor.py
#	tests/contrib/sensors/test_aws_redshift_cluster_sensor.py
#	tests/contrib/sensors/test_cassandra_sensor.py
#	tests/contrib/sensors/test_datadog_sensor.py
#	tests/contrib/sensors/test_emr_base_sensor.py
#	tests/contrib/sensors/test_emr_job_flow_sensor.py
#	tests/contrib/sensors/test_file_sensor.py
#	tests/contrib/sensors/test_ftp_sensor.py
#	tests/contrib/sensors/test_gcs_sensor.py
#	tests/contrib/sensors/test_gcs_upload_session_sensor.py
#	tests/contrib/sensors/test_imap_attachment_sensor.py
#	tests/contrib/sensors/test_jira_sensor_test.py
#	tests/contrib/sensors/test_mongo_sensor.py
#	tests/contrib/sensors/test_python_sensor.py
#	tests/contrib/sensors/test_redis_pub_sub_sensor.py
#	tests/contrib/sensors/test_redis_sensor.py
#	tests/contrib/sensors/test_sagemaker_base_sensor.py
#	tests/contrib/sensors/test_sagemaker_endpoint_sensor.py
#	tests/contrib/sensors/test_sagemaker_training_sensor.py
#	tests/contrib/sensors/test_sagemaker_transform_sensor.py
#	tests/contrib/sensors/test_sagemaker_tuning_sensor.py
#	tests/contrib/sensors/test_sqs_sensor.py
#	tests/contrib/sensors/test_weekday_sensor.py
#	tests/contrib/task_runner/__init__.py
#	tests/contrib/task_runner/test_cgroup_task_runner.py
#	tests/contrib/utils/base_gcp_mock.py
#	tests/contrib/utils/base_gcp_system_test_case.py
#	tests/contrib/utils/gcp_authenticator.py
#	tests/contrib/utils/logging_command_executor.py
#	tests/contrib/utils/run_once_decorator.py
#	tests/contrib/utils/test_mlengine_operator_utils.py
#	tests/contrib/utils/test_sendgrid.py
#	tests/contrib/utils/test_weekday.py
#	tests/core.py
#	tests/dags/.gitignore
#	tests/dags/test_cli_triggered_dags.py
#	tests/dags/test_task_view_type_check.py
#	tests/executors/test_base_executor.py
#	tests/executors/test_celery_executor.py
#	tests/executors/test_dask_executor.py
#	tests/executors/test_executor.py
#	tests/executors/test_local_executor.py
#	tests/executors/test_sequential_executor.py
#	tests/gcp/hooks/test_mlengine.py
#	tests/gcp/hooks/test_pubsub.py
#	tests/gcp/operators/test_mlengine.py
#	tests/gcp/operators/test_mlengine_utils.py
#	tests/gcp/sensors/test_pubsub.py
#	tests/hooks/test_docker_hook.py
#	tests/hooks/test_hive_hook.py
#	tests/hooks/test_http_hook.py
#	tests/hooks/test_mysql_hook.py
#	tests/hooks/test_oracle_hook.py
#	tests/hooks/test_pig_hook.py
#	tests/hooks/test_postgres_hook.py
#	tests/hooks/test_s3_hook.py
#	tests/hooks/test_webhdfs_hook.py
#	tests/jobs/test_backfill_job.py
#	tests/jobs/test_base_job.py
#	tests/jobs/test_local_task_job.py
#	tests/jobs/test_scheduler_job.py
#	tests/kubernetes/test_pod_launcher.py
#	tests/lineage/backend/test_atlas.py
#	tests/minikube/test_kubernetes_executor.py
#	tests/models/__init__.py
#	tests/models/test_cleartasks.py
#	tests/models/test_connection.py
#	tests/models/test_dag.py
#	tests/models/test_dagbag.py
#	tests/models/test_dagrun.py
#	tests/models/test_kubernetes.py
#	tests/models/test_pool.py
#	tests/models/test_skipmixin.py
#	tests/models/test_taskinstance.py
#	tests/models/test_variable.py
#	tests/operators/test_bash_operator.py
#	tests/operators/test_branch_operator.py
#	tests/operators/test_check_operator.py
#	tests/operators/test_docker_operator.py
#	tests/operators/test_druid_check_operator.py
#	tests/operators/test_email_operator.py
#	tests/operators/test_hive_operator.py
#	tests/operators/test_http_operator.py
#	tests/operators/test_jdbc_operator.py
#	tests/operators/test_latest_only_operator.py
#	tests/operators/test_operators.py
#	tests/operators/test_postgres_to_gcs.py
#	tests/operators/test_python_operator.py
#	tests/operators/test_s3_to_hive_operator.py
#	tests/operators/test_slack_operator.py
#	tests/operators/test_subdag_operator.py
#	tests/operators/test_virtualenv_operator.py
#	tests/plugins/test_plugin.py
#	tests/plugins/test_plugins_manager_www.py
#	tests/security/kerberos.py
#	tests/security/test_kerberos.py
#	tests/sensors/test_base_sensor.py
#	tests/sensors/test_http_sensor.py
#	tests/sensors/test_sql_sensor.py
#	tests/test_configuration.py
#	tests/test_impersonation.py
#	tests/test_local_settings.py
#	tests/test_logging_config.py
#	tests/test_utils/config.py
#	tests/ti_deps/deps/test_ready_to_reschedule_dep.py
#	tests/ti_deps/deps/test_runnable_exec_date_dep.py
#	tests/utils/log/elasticmock/fake_elasticsearch.py
#	tests/utils/test_dag_processing.py
#	tests/utils/test_db.py
#	tests/utils/test_email.py
#	tests/utils/test_helpers.py
#	tests/utils/test_json.py
#	tests/utils/test_operator_helpers.py
#	tests/utils/test_sqlalchemy.py
#	tests/utils/test_tests.py
#	tests/www/api/experimental/test_endpoints.py
#	tests/www/api/experimental/test_kerberos_endpoints.py
#	tests/www/api/experimental/test_password_endpoints.py
#	tests/www/test_utils.py
#	tests/www/test_views.py
#	tests/www_rbac/__init__.py
#	tests/www_rbac/api/__init__.py
#	tests/www_rbac/api/experimental/__init__.py
#	tests/www_rbac/api/experimental/test_endpoints.py
#	tests/www_rbac/api/experimental/test_kerberos_endpoints.py
#	tests/www_rbac/test_security.py
#	tests/www_rbac/test_utils.py
#	tests/www_rbac/test_validators.py
#	tests/www_rbac/test_views.py
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants