You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airflow.apache.org by ka...@apache.org on 2019/11/05 08:38:29 UTC
[airflow-site] branch aip-11 updated: Add archived documentation
(#114)
This is an automated email from the ASF dual-hosted git repository.
kamilbregula pushed a commit to branch aip-11
in repository https://gitbox.apache.org/repos/asf/airflow-site.git
The following commit(s) were added to refs/heads/aip-11 by this push:
new f81e48a Add archived documentation (#114)
f81e48a is described below
commit f81e48aadee354653679693fa54b04ac42d24bfd
Author: Kamil BreguĊa <mi...@users.noreply.github.com>
AuthorDate: Tue Nov 5 09:38:22 2019 +0100
Add archived documentation (#114)
---
.pre-commit-config.yaml | 1 +
docs-archive/1.10.1/_images/adhoc.png | Bin 0 -> 182773 bytes
docs-archive/1.10.1/_images/airflow.gif | Bin 0 -> 622832 bytes
docs-archive/1.10.1/_images/apache.jpg | Bin 0 -> 43364 bytes
docs-archive/1.10.1/_images/branch_bad.png | Bin 0 -> 8825 bytes
docs-archive/1.10.1/_images/branch_good.png | Bin 0 -> 12035 bytes
docs-archive/1.10.1/_images/chart.png | Bin 0 -> 169382 bytes
docs-archive/1.10.1/_images/chart_form.png | Bin 0 -> 203224 bytes
docs-archive/1.10.1/_images/code.png | Bin 0 -> 218215 bytes
docs-archive/1.10.1/_images/connection_create.png | Bin 0 -> 41547 bytes
docs-archive/1.10.1/_images/connection_edit.png | Bin 0 -> 53636 bytes
docs-archive/1.10.1/_images/connections.png | Bin 0 -> 48442 bytes
docs-archive/1.10.1/_images/context.png | Bin 0 -> 238360 bytes
docs-archive/1.10.1/_images/dags.png | Bin 0 -> 115068 bytes
docs-archive/1.10.1/_images/duration.png | Bin 0 -> 254497 bytes
docs-archive/1.10.1/_images/gantt.png | Bin 0 -> 213845 bytes
docs-archive/1.10.1/_images/graph.png | Bin 0 -> 333294 bytes
docs-archive/1.10.1/_images/incubator.jpg | Bin 0 -> 91227 bytes
.../1.10.1/_images/latest_only_with_trigger.png | Bin 0 -> 40034 bytes
docs-archive/1.10.1/_images/pin_large.png | Bin 0 -> 358276 bytes
docs-archive/1.10.1/_images/subdag_after.png | Bin 0 -> 30245 bytes
docs-archive/1.10.1/_images/subdag_before.png | Bin 0 -> 70382 bytes
docs-archive/1.10.1/_images/subdag_zoom.png | Bin 0 -> 150185 bytes
docs-archive/1.10.1/_images/tree.png | Bin 0 -> 163147 bytes
docs-archive/1.10.1/_images/variable_hidden.png | Bin 0 -> 154299 bytes
.../airflow/contrib/hooks/aws_dynamodb_hook.html | 280 +
.../airflow/contrib/hooks/aws_firehose_hook.html | 267 +
.../_modules/airflow/contrib/hooks/aws_hook.html | 415 +
.../airflow/contrib/hooks/aws_lambda_hook.html | 279 +
.../contrib/hooks/azure_data_lake_hook.html | 352 +
.../contrib/hooks/azure_fileshare_hook.html | 423 +
.../airflow/contrib/hooks/bigquery_hook.html | 1801 +++
.../airflow/contrib/hooks/cassandra_hook.html | 393 +
.../airflow/contrib/hooks/cloudant_hook.html | 294 +
.../airflow/contrib/hooks/databricks_hook.html | 473 +
.../airflow/contrib/hooks/datadog_hook.html | 353 +
.../airflow/contrib/hooks/datastore_hook.html | 417 +
.../contrib/hooks/discord_webhook_hook.html | 351 +
.../_modules/airflow/contrib/hooks/emr_hook.html | 267 +
.../_modules/airflow/contrib/hooks/fs_hook.html | 257 +
.../_modules/airflow/contrib/hooks/ftp_hook.html | 526 +
.../airflow/contrib/hooks/gcp_api_base_hook.html | 363 +
.../airflow/contrib/hooks/gcp_container_hook.html | 432 +
.../airflow/contrib/hooks/gcp_dataflow_hook.html | 505 +
.../airflow/contrib/hooks/gcp_dataproc_hook.html | 451 +
.../airflow/contrib/hooks/gcp_function_hook.html | 406 +
.../airflow/contrib/hooks/gcp_mlengine_hook.html | 482 +
.../airflow/contrib/hooks/gcp_pubsub_hook.html | 496 +
.../airflow/contrib/hooks/gcp_sql_hook.html | 474 +
.../_modules/airflow/contrib/hooks/gcs_hook.html | 769 +
.../_modules/airflow/contrib/hooks/imap_hook.html | 491 +
.../airflow/contrib/hooks/jenkins_hook.html | 259 +
.../_modules/airflow/contrib/hooks/jira_hook.html | 298 +
.../_modules/airflow/contrib/hooks/mongo_hook.html | 330 +
.../_modules/airflow/contrib/hooks/pinot_hook.html | 316 +
.../airflow/contrib/hooks/qubole_hook.html | 425 +
.../_modules/airflow/contrib/hooks/redis_hook.html | 304 +
.../airflow/contrib/hooks/redshift_hook.html | 324 +
.../airflow/contrib/hooks/sagemaker_hook.html | 972 ++
.../airflow/contrib/hooks/segment_hook.html | 303 +
.../_modules/airflow/contrib/hooks/sftp_hook.html | 425 +
.../airflow/contrib/hooks/slack_webhook_hook.html | 340 +
.../airflow/contrib/hooks/snowflake_hook.html | 309 +
.../airflow/contrib/hooks/spark_jdbc_hook.html | 457 +
.../airflow/contrib/hooks/spark_sql_hook.html | 373 +
.../airflow/contrib/hooks/spark_submit_hook.html | 778 +
.../_modules/airflow/contrib/hooks/sqoop_hook.html | 563 +
.../_modules/airflow/contrib/hooks/ssh_hook.html | 450 +
.../airflow/contrib/hooks/vertica_hook.html | 264 +
.../_modules/airflow/contrib/hooks/wasb_hook.html | 402 +
.../_modules/airflow/contrib/hooks/winrm_hook.html | 348 +
.../airflow/contrib/kubernetes/secret.html | 252 +
.../contrib/operators/awsbatch_operator.html | 390 +
.../contrib/operators/bigquery_check_operator.html | 356 +
.../contrib/operators/bigquery_get_data.html | 327 +
.../contrib/operators/bigquery_operator.html | 761 +
.../operators/bigquery_table_delete_operator.html | 277 +
.../contrib/operators/bigquery_to_bigquery.html | 306 +
.../airflow/contrib/operators/bigquery_to_gcs.html | 316 +
.../contrib/operators/cassandra_to_gcs.html | 566 +
.../contrib/operators/databricks_operator.html | 488 +
.../contrib/operators/dataflow_operator.html | 588 +
.../contrib/operators/dataproc_operator.html | 1567 ++
.../operators/datastore_export_operator.html | 321 +
.../operators/datastore_import_operator.html | 309 +
.../operators/discord_webhook_operator.html | 309 +
.../airflow/contrib/operators/druid_operator.html | 273 +
.../airflow/contrib/operators/ecs_operator.html | 363 +
.../contrib/operators/emr_add_steps_operator.html | 274 +
.../operators/emr_create_job_flow_operator.html | 281 +
.../operators/emr_terminate_job_flow_operator.html | 268 +
.../airflow/contrib/operators/file_to_gcs.html | 293 +
.../airflow/contrib/operators/file_to_wasb.html | 275 +
.../contrib/operators/gcp_compute_operator.html | 394 +
.../contrib/operators/gcp_container_operator.html | 383 +
.../contrib/operators/gcp_function_operator.html | 522 +
.../contrib/operators/gcp_sql_operator.html | 737 +
.../contrib/operators/gcs_download_operator.html | 302 +
.../contrib/operators/gcs_list_operator.html | 303 +
.../airflow/contrib/operators/gcs_operator.html | 333 +
.../airflow/contrib/operators/gcs_to_bq.html | 460 +
.../airflow/contrib/operators/gcs_to_gcs.html | 380 +
.../airflow/contrib/operators/gcs_to_s3.html | 324 +
.../contrib/operators/hipchat_operator.html | 346 +
.../contrib/operators/hive_to_dynamodb.html | 320 +
.../operators/jenkins_job_trigger_operator.html | 460 +
.../airflow/contrib/operators/jira_operator.html | 305 +
.../contrib/operators/kubernetes_pod_operator.html | 404 +
.../contrib/operators/mlengine_operator.html | 824 +
.../airflow/contrib/operators/mongo_to_s3.html | 330 +
.../airflow/contrib/operators/mysql_to_gcs.html | 499 +
.../operators/postgres_to_gcs_operator.html | 457 +
.../airflow/contrib/operators/pubsub_operator.html | 644 +
.../contrib/operators/qubole_check_operator.html | 436 +
.../airflow/contrib/operators/qubole_operator.html | 387 +
.../contrib/operators/s3_list_operator.html | 293 +
.../contrib/operators/s3_to_gcs_operator.html | 401 +
.../contrib/operators/sagemaker_base_operator.html | 311 +
.../sagemaker_endpoint_config_operator.html | 278 +
.../operators/sagemaker_endpoint_operator.html | 362 +
.../operators/sagemaker_model_operator.html | 279 +
.../operators/sagemaker_training_operator.html | 310 +
.../operators/sagemaker_transform_operator.html | 336 +
.../operators/sagemaker_tuning_operator.html | 310 +
.../operators/segment_track_event_operator.html | 280 +
.../airflow/contrib/operators/sftp_operator.html | 319 +
.../contrib/operators/slack_webhook_operator.html | 303 +
.../contrib/operators/snowflake_operator.html | 278 +
.../contrib/operators/spark_jdbc_operator.html | 425 +
.../contrib/operators/spark_sql_operator.html | 322 +
.../contrib/operators/spark_submit_operator.html | 382 +
.../airflow/contrib/operators/sqoop_operator.html | 449 +
.../airflow/contrib/operators/ssh_operator.html | 371 +
.../contrib/operators/vertica_operator.html | 260 +
.../airflow/contrib/operators/vertica_to_hive.html | 350 +
.../airflow/contrib/operators/winrm_operator.html | 321 +
.../sensors/aws_redshift_cluster_sensor.html | 263 +
.../airflow/contrib/sensors/bash_sensor.html | 306 +
.../airflow/contrib/sensors/bigquery_sensor.html | 281 +
.../airflow/contrib/sensors/cassandra_sensor.html | 271 +
.../airflow/contrib/sensors/datadog_sensor.html | 294 +
.../airflow/contrib/sensors/emr_base_sensor.html | 267 +
.../contrib/sensors/emr_job_flow_sensor.html | 265 +
.../airflow/contrib/sensors/emr_step_sensor.html | 268 +
.../airflow/contrib/sensors/file_sensor.html | 282 +
.../airflow/contrib/sensors/ftp_sensor.html | 278 +
.../airflow/contrib/sensors/gcs_sensor.html | 377 +
.../airflow/contrib/sensors/hdfs_sensor.html | 289 +
.../airflow/contrib/sensors/jira_sensor.html | 362 +
.../airflow/contrib/sensors/pubsub_sensor.html | 316 +
.../airflow/contrib/sensors/qubole_sensor.html | 299 +
.../airflow/contrib/sensors/redis_key_sensor.html | 258 +
.../contrib/sensors/sagemaker_base_sensor.html | 285 +
.../contrib/sensors/sagemaker_endpoint_sensor.html | 272 +
.../contrib/sensors/sagemaker_training_sensor.html | 313 +
.../sensors/sagemaker_transform_sensor.html | 273 +
.../contrib/sensors/sagemaker_tuning_sensor.html | 273 +
.../airflow/contrib/sensors/sftp_sensor.html | 263 +
.../airflow/contrib/sensors/wasb_sensor.html | 310 +
.../airflow/executors/celery_executor.html | 330 +
.../_modules/airflow/executors/local_executor.html | 442 +
.../airflow/executors/sequential_executor.html | 268 +
.../1.10.1/_modules/airflow/hooks/S3_hook.html | 731 +
.../1.10.1/_modules/airflow/hooks/dbapi_hook.html | 514 +
.../1.10.1/_modules/airflow/hooks/docker_hook.html | 296 +
.../1.10.1/_modules/airflow/hooks/druid_hook.html | 376 +
.../1.10.1/_modules/airflow/hooks/hdfs_hook.html | 312 +
.../1.10.1/_modules/airflow/hooks/hive_hooks.html | 1091 ++
.../1.10.1/_modules/airflow/hooks/http_hook.html | 414 +
.../1.10.1/_modules/airflow/hooks/jdbc_hook.html | 272 +
.../1.10.1/_modules/airflow/hooks/mssql_hook.html | 263 +
.../1.10.1/_modules/airflow/hooks/mysql_hook.html | 355 +
.../1.10.1/_modules/airflow/hooks/oracle_hook.html | 370 +
.../1.10.1/_modules/airflow/hooks/pig_hook.html | 305 +
.../_modules/airflow/hooks/postgres_hook.html | 324 +
.../1.10.1/_modules/airflow/hooks/presto_hook.html | 343 +
.../1.10.1/_modules/airflow/hooks/samba_hook.html | 263 +
.../1.10.1/_modules/airflow/hooks/slack_hook.html | 273 +
.../1.10.1/_modules/airflow/hooks/sqlite_hook.html | 252 +
.../_modules/airflow/hooks/webhdfs_hook.html | 322 +
.../_modules/airflow/hooks/zendesk_hook.html | 322 +
docs-archive/1.10.1/_modules/airflow/macros.html | 304 +
.../1.10.1/_modules/airflow/macros/hive.html | 331 +
docs-archive/1.10.1/_modules/airflow/models.html | 5617 +++++++
.../_modules/airflow/operators/bash_operator.html | 336 +
.../_modules/airflow/operators/check_operator.html | 473 +
.../airflow/operators/dagrun_operator.html | 291 +
.../airflow/operators/docker_operator.html | 472 +
.../airflow/operators/druid_check_operator.html | 302 +
.../_modules/airflow/operators/dummy_operator.html | 249 +
.../_modules/airflow/operators/email_operator.html | 289 +
.../airflow/operators/generic_transfer.html | 292 +
.../_modules/airflow/operators/hive_operator.html | 353 +
.../airflow/operators/hive_stats_operator.html | 401 +
.../_modules/airflow/operators/hive_to_druid.html | 449 +
.../_modules/airflow/operators/hive_to_mysql.html | 323 +
.../airflow/operators/hive_to_samba_operator.html | 276 +
.../_modules/airflow/operators/http_operator.html | 312 +
.../_modules/airflow/operators/jdbc_operator.html | 269 +
.../airflow/operators/latest_only_operator.html | 275 +
.../_modules/airflow/operators/mssql_operator.html | 269 +
.../_modules/airflow/operators/mssql_to_hive.html | 350 +
.../_modules/airflow/operators/mysql_operator.html | 272 +
.../_modules/airflow/operators/mysql_to_hive.html | 353 +
.../airflow/operators/oracle_operator.html | 267 +
.../_modules/airflow/operators/pig_operator.html | 284 +
.../airflow/operators/postgres_operator.html | 273 +
.../airflow/operators/presto_check_operator.html | 338 +
.../airflow/operators/presto_to_mysql.html | 291 +
.../airflow/operators/python_operator.html | 604 +
.../airflow/operators/redshift_to_s3_operator.html | 350 +
.../operators/s3_file_transform_operator.html | 360 +
.../airflow/operators/s3_to_hive_operator.html | 495 +
.../airflow/operators/s3_to_redshift_operator.html | 307 +
.../_modules/airflow/operators/slack_operator.html | 349 +
.../airflow/operators/sqlite_operator.html | 263 +
.../airflow/operators/subdag_operator.html | 314 +
.../airflow/sensors/base_sensor_operator.html | 296 +
.../airflow/sensors/external_task_sensor.html | 312 +
.../_modules/airflow/sensors/hdfs_sensor.html | 328 +
.../airflow/sensors/hive_partition_sensor.html | 286 +
.../_modules/airflow/sensors/http_sensor.html | 303 +
.../sensors/metastore_partition_sensor.html | 294 +
.../sensors/named_hive_partition_sensor.html | 315 +
.../_modules/airflow/sensors/s3_key_sensor.html | 292 +
.../_modules/airflow/sensors/s3_prefix_sensor.html | 281 +
.../_modules/airflow/sensors/sql_sensor.html | 269 +
.../airflow/sensors/time_delta_sensor.html | 257 +
.../_modules/airflow/sensors/time_sensor.html | 251 +
.../_modules/airflow/sensors/web_hdfs_sensor.html | 255 +
docs-archive/1.10.1/_modules/index.html | 414 +
docs-archive/1.10.1/_sources/api.rst.txt | 79 +
docs-archive/1.10.1/_sources/cli.rst.txt | 28 +
docs-archive/1.10.1/_sources/code.rst.txt | 458 +
docs-archive/1.10.1/_sources/concepts.rst.txt | 900 ++
docs-archive/1.10.1/_sources/faq.rst.txt | 201 +
.../_sources/howto/executor/use-celery.rst.txt | 64 +
.../_sources/howto/executor/use-dask.rst.txt | 50 +
.../_sources/howto/executor/use-mesos.rst.txt | 82 +
docs-archive/1.10.1/_sources/howto/index.rst.txt | 41 +
.../_sources/howto/initialize-database.rst.txt | 48 +
.../_sources/howto/manage-connections.rst.txt | 230 +
.../1.10.1/_sources/howto/operator.rst.txt | 596 +
.../1.10.1/_sources/howto/run-with-systemd.rst.txt | 32 +
.../1.10.1/_sources/howto/run-with-upstart.rst.txt | 37 +
.../_sources/howto/secure-connections.rst.txt | 50 +
.../1.10.1/_sources/howto/set-config.rst.txt | 66 +
.../1.10.1/_sources/howto/use-test-config.rst.txt | 34 +
.../1.10.1/_sources/howto/write-logs.rst.txt | 137 +
docs-archive/1.10.1/_sources/index.rst.txt | 93 +
docs-archive/1.10.1/_sources/installation.rst.txt | 136 +
docs-archive/1.10.1/_sources/integration.rst.txt | 938 ++
docs-archive/1.10.1/_sources/kubernetes.rst.txt | 129 +
docs-archive/1.10.1/_sources/license.rst.txt | 199 +
docs-archive/1.10.1/_sources/lineage.rst.txt | 102 +
docs-archive/1.10.1/_sources/plugins.rst.txt | 200 +
docs-archive/1.10.1/_sources/profiling.rst.txt | 58 +
docs-archive/1.10.1/_sources/project.rst.txt | 73 +
docs-archive/1.10.1/_sources/scheduler.rst.txt | 184 +
docs-archive/1.10.1/_sources/security.rst.txt | 397 +
docs-archive/1.10.1/_sources/start.rst.txt | 71 +
docs-archive/1.10.1/_sources/timezone.rst.txt | 163 +
docs-archive/1.10.1/_sources/tutorial.rst.txt | 470 +
docs-archive/1.10.1/_sources/ui.rst.txt | 119 +
docs-archive/1.10.1/_static/ajax-loader.gif | Bin 0 -> 673 bytes
docs-archive/1.10.1/_static/basic.css | 676 +
docs-archive/1.10.1/_static/comment-bright.png | Bin 0 -> 756 bytes
docs-archive/1.10.1/_static/comment-close.png | Bin 0 -> 829 bytes
docs-archive/1.10.1/_static/comment.png | Bin 0 -> 641 bytes
docs-archive/1.10.1/_static/css/badge_only.css | 1 +
docs-archive/1.10.1/_static/css/theme.css | 6 +
docs-archive/1.10.1/_static/doctools.js | 315 +
.../1.10.1/_static/documentation_options.js | 296 +
docs-archive/1.10.1/_static/down-pressed.png | Bin 0 -> 222 bytes
docs-archive/1.10.1/_static/down.png | Bin 0 -> 202 bytes
docs-archive/1.10.1/_static/file.png | Bin 0 -> 286 bytes
.../1.10.1/_static/fonts/Inconsolata-Bold.ttf | Bin 0 -> 109948 bytes
.../1.10.1/_static/fonts/Inconsolata-Regular.ttf | Bin 0 -> 96964 bytes
docs-archive/1.10.1/_static/fonts/Inconsolata.ttf | Bin 0 -> 63184 bytes
docs-archive/1.10.1/_static/fonts/Lato-Bold.ttf | Bin 0 -> 656544 bytes
docs-archive/1.10.1/_static/fonts/Lato-Regular.ttf | Bin 0 -> 656568 bytes
.../1.10.1/_static/fonts/Lato/lato-bold.eot | Bin 0 -> 256056 bytes
.../1.10.1/_static/fonts/Lato/lato-bold.ttf | Bin 0 -> 600856 bytes
.../1.10.1/_static/fonts/Lato/lato-bold.woff | Bin 0 -> 309728 bytes
.../1.10.1/_static/fonts/Lato/lato-bold.woff2 | Bin 0 -> 184912 bytes
.../1.10.1/_static/fonts/Lato/lato-bolditalic.eot | Bin 0 -> 266158 bytes
.../1.10.1/_static/fonts/Lato/lato-bolditalic.ttf | Bin 0 -> 622572 bytes
.../1.10.1/_static/fonts/Lato/lato-bolditalic.woff | Bin 0 -> 323344 bytes
.../_static/fonts/Lato/lato-bolditalic.woff2 | Bin 0 -> 193308 bytes
.../1.10.1/_static/fonts/Lato/lato-italic.eot | Bin 0 -> 268604 bytes
.../1.10.1/_static/fonts/Lato/lato-italic.ttf | Bin 0 -> 639388 bytes
.../1.10.1/_static/fonts/Lato/lato-italic.woff | Bin 0 -> 328412 bytes
.../1.10.1/_static/fonts/Lato/lato-italic.woff2 | Bin 0 -> 195704 bytes
.../1.10.1/_static/fonts/Lato/lato-regular.eot | Bin 0 -> 253461 bytes
.../1.10.1/_static/fonts/Lato/lato-regular.ttf | Bin 0 -> 607720 bytes
.../1.10.1/_static/fonts/Lato/lato-regular.woff | Bin 0 -> 309192 bytes
.../1.10.1/_static/fonts/Lato/lato-regular.woff2 | Bin 0 -> 182708 bytes
.../1.10.1/_static/fonts/RobotoSlab-Bold.ttf | Bin 0 -> 170616 bytes
.../1.10.1/_static/fonts/RobotoSlab-Regular.ttf | Bin 0 -> 169064 bytes
.../fonts/RobotoSlab/roboto-slab-v7-bold.eot | Bin 0 -> 79520 bytes
.../fonts/RobotoSlab/roboto-slab-v7-bold.ttf | Bin 0 -> 170616 bytes
.../fonts/RobotoSlab/roboto-slab-v7-bold.woff | Bin 0 -> 87624 bytes
.../fonts/RobotoSlab/roboto-slab-v7-bold.woff2 | Bin 0 -> 67312 bytes
.../fonts/RobotoSlab/roboto-slab-v7-regular.eot | Bin 0 -> 78331 bytes
.../fonts/RobotoSlab/roboto-slab-v7-regular.ttf | Bin 0 -> 169064 bytes
.../fonts/RobotoSlab/roboto-slab-v7-regular.woff | Bin 0 -> 86288 bytes
.../fonts/RobotoSlab/roboto-slab-v7-regular.woff2 | Bin 0 -> 66444 bytes
.../1.10.1/_static/fonts/fontawesome-webfont.eot | Bin 0 -> 165742 bytes
.../1.10.1/_static/fonts/fontawesome-webfont.svg | 2671 ++++
.../1.10.1/_static/fonts/fontawesome-webfont.ttf | Bin 0 -> 165548 bytes
.../1.10.1/_static/fonts/fontawesome-webfont.woff | Bin 0 -> 98024 bytes
.../1.10.1/_static/fonts/fontawesome-webfont.woff2 | Bin 0 -> 77160 bytes
docs-archive/1.10.1/_static/jquery-3.2.1.js | 10253 +++++++++++++
docs-archive/1.10.1/_static/jquery.js | 4 +
docs-archive/1.10.1/_static/js/modernizr.min.js | 4 +
docs-archive/1.10.1/_static/js/theme.js | 3 +
docs-archive/1.10.1/_static/minus.png | Bin 0 -> 90 bytes
docs-archive/1.10.1/_static/plus.png | Bin 0 -> 90 bytes
docs-archive/1.10.1/_static/pygments.css | 69 +
docs-archive/1.10.1/_static/searchtools.js | 482 +
docs-archive/1.10.1/_static/underscore-1.3.1.js | 999 ++
docs-archive/1.10.1/_static/underscore.js | 31 +
docs-archive/1.10.1/_static/up-pressed.png | Bin 0 -> 214 bytes
docs-archive/1.10.1/_static/up.png | Bin 0 -> 203 bytes
docs-archive/1.10.1/_static/websupport.js | 808 +
docs-archive/1.10.1/api.html | 278 +
docs-archive/1.10.1/cli.html | 1613 ++
docs-archive/1.10.1/code.html | 15082 ++++++++++++++++++
docs-archive/1.10.1/concepts.html | 1026 ++
docs-archive/1.10.1/faq.html | 395 +
docs-archive/1.10.1/genindex.html | 2330 +++
docs-archive/1.10.1/howto/executor/use-celery.html | 280 +
docs-archive/1.10.1/howto/executor/use-dask.html | 266 +
docs-archive/1.10.1/howto/executor/use-mesos.html | 305 +
docs-archive/1.10.1/howto/index.html | 281 +
docs-archive/1.10.1/howto/initialize-database.html | 271 +
docs-archive/1.10.1/howto/manage-connections.html | 433 +
docs-archive/1.10.1/howto/operator.html | 945 ++
docs-archive/1.10.1/howto/run-with-systemd.html | 253 +
docs-archive/1.10.1/howto/run-with-upstart.html | 255 +
docs-archive/1.10.1/howto/secure-connections.html | 269 +
docs-archive/1.10.1/howto/set-config.html | 281 +
docs-archive/1.10.1/howto/use-test-config.html | 254 +
docs-archive/1.10.1/howto/write-logs.html | 366 +
docs-archive/1.10.1/index.html | 785 +
docs-archive/1.10.1/installation.html | 402 +
docs-archive/1.10.1/integration.html | 6152 ++++++++
docs-archive/1.10.1/kubernetes.html | 382 +
docs-archive/1.10.1/license.html | 403 +
docs-archive/1.10.1/lineage.html | 307 +
docs-archive/1.10.1/objects.inv | Bin 0 -> 8915 bytes
docs-archive/1.10.1/plugins.html | 399 +
docs-archive/1.10.1/profiling.html | 264 +
docs-archive/1.10.1/project.html | 279 +
docs-archive/1.10.1/py-modindex.html | 244 +
docs-archive/1.10.1/scheduler.html | 403 +
docs-archive/1.10.1/search.html | 230 +
docs-archive/1.10.1/searchindex.js | 1 +
docs-archive/1.10.1/security.html | 588 +
docs-archive/1.10.1/start.html | 275 +
docs-archive/1.10.1/timezone.html | 357 +
docs-archive/1.10.1/tutorial.html | 659 +
docs-archive/1.10.1/ui.html | 310 +
docs-archive/1.10.2/.buildinfo | 4 +
docs-archive/1.10.2/_images/adhoc.png | Bin 0 -> 182773 bytes
docs-archive/1.10.2/_images/airflow.gif | Bin 0 -> 622832 bytes
docs-archive/1.10.2/_images/apache.jpg | Bin 0 -> 43364 bytes
docs-archive/1.10.2/_images/branch_bad.png | Bin 0 -> 8825 bytes
docs-archive/1.10.2/_images/branch_good.png | Bin 0 -> 12035 bytes
docs-archive/1.10.2/_images/chart.png | Bin 0 -> 169382 bytes
docs-archive/1.10.2/_images/chart_form.png | Bin 0 -> 203224 bytes
docs-archive/1.10.2/_images/code.png | Bin 0 -> 285906 bytes
docs-archive/1.10.2/_images/connection_create.png | Bin 0 -> 41547 bytes
docs-archive/1.10.2/_images/connection_edit.png | Bin 0 -> 53636 bytes
docs-archive/1.10.2/_images/connections.png | Bin 0 -> 48442 bytes
docs-archive/1.10.2/_images/context.png | Bin 0 -> 149588 bytes
docs-archive/1.10.2/_images/dags.png | Bin 0 -> 217069 bytes
docs-archive/1.10.2/_images/duration.png | Bin 0 -> 250846 bytes
docs-archive/1.10.2/_images/gantt.png | Bin 0 -> 121795 bytes
docs-archive/1.10.2/_images/graph.png | Bin 0 -> 152205 bytes
.../1.10.2/_images/latest_only_with_trigger.png | Bin 0 -> 40034 bytes
docs-archive/1.10.2/_images/pin_large.png | Bin 0 -> 358276 bytes
docs-archive/1.10.2/_images/subdag_after.png | Bin 0 -> 30245 bytes
docs-archive/1.10.2/_images/subdag_before.png | Bin 0 -> 70382 bytes
docs-archive/1.10.2/_images/subdag_zoom.png | Bin 0 -> 150185 bytes
docs-archive/1.10.2/_images/tree.png | Bin 0 -> 128024 bytes
docs-archive/1.10.2/_images/variable_hidden.png | Bin 0 -> 154299 bytes
.../contrib/executors/kubernetes_executor.html | 897 ++
.../airflow/contrib/executors/mesos_executor.html | 549 +
.../airflow/contrib/hooks/aws_athena_hook.html | 369 +
.../airflow/contrib/hooks/aws_dynamodb_hook.html | 288 +
.../airflow/contrib/hooks/aws_firehose_hook.html | 275 +
.../contrib/hooks/aws_glue_catalog_hook.html | 337 +
.../_modules/airflow/contrib/hooks/aws_hook.html | 424 +
.../airflow/contrib/hooks/aws_lambda_hook.html | 287 +
.../airflow/contrib/hooks/azure_cosmos_hook.html | 506 +
.../contrib/hooks/azure_data_lake_hook.html | 360 +
.../contrib/hooks/azure_fileshare_hook.html | 431 +
.../airflow/contrib/hooks/bigquery_hook.html | 2184 +++
.../airflow/contrib/hooks/cassandra_hook.html | 416 +
.../airflow/contrib/hooks/cloudant_hook.html | 302 +
.../airflow/contrib/hooks/databricks_hook.html | 495 +
.../airflow/contrib/hooks/datadog_hook.html | 361 +
.../airflow/contrib/hooks/datastore_hook.html | 425 +
.../contrib/hooks/discord_webhook_hook.html | 359 +
.../_modules/airflow/contrib/hooks/emr_hook.html | 276 +
.../_modules/airflow/contrib/hooks/fs_hook.html | 265 +
.../_modules/airflow/contrib/hooks/ftp_hook.html | 534 +
.../airflow/contrib/hooks/gcp_api_base_hook.html | 414 +
.../airflow/contrib/hooks/gcp_compute_hook.html | 554 +
.../airflow/contrib/hooks/gcp_dataflow_hook.html | 513 +
.../airflow/contrib/hooks/gcp_dataproc_hook.html | 464 +
.../airflow/contrib/hooks/gcp_function_hook.html | 417 +
.../airflow/contrib/hooks/gcp_mlengine_hook.html | 490 +
.../airflow/contrib/hooks/gcp_pubsub_hook.html | 504 +
.../airflow/contrib/hooks/gcp_sql_hook.html | 1216 ++
.../airflow/contrib/hooks/gcp_transfer_hook.html | 326 +
.../_modules/airflow/contrib/hooks/gcs_hook.html | 895 ++
.../_modules/airflow/contrib/hooks/imap_hook.html | 499 +
.../_modules/airflow/contrib/hooks/jira_hook.html | 306 +
.../_modules/airflow/contrib/hooks/mongo_hook.html | 356 +
.../airflow/contrib/hooks/openfaas_hook.html | 318 +
.../_modules/airflow/contrib/hooks/pinot_hook.html | 324 +
.../airflow/contrib/hooks/qubole_hook.html | 433 +
.../_modules/airflow/contrib/hooks/redis_hook.html | 312 +
.../airflow/contrib/hooks/redshift_hook.html | 332 +
.../airflow/contrib/hooks/sagemaker_hook.html | 981 ++
.../airflow/contrib/hooks/salesforce_hook.html | 544 +
.../_modules/airflow/contrib/hooks/sftp_hook.html | 433 +
.../airflow/contrib/hooks/slack_webhook_hook.html | 348 +
.../airflow/contrib/hooks/snowflake_hook.html | 317 +
.../airflow/contrib/hooks/spark_jdbc_hook.html | 465 +
.../airflow/contrib/hooks/spark_sql_hook.html | 381 +
.../airflow/contrib/hooks/spark_submit_hook.html | 786 +
.../_modules/airflow/contrib/hooks/sqoop_hook.html | 571 +
.../_modules/airflow/contrib/hooks/ssh_hook.html | 468 +
.../airflow/contrib/hooks/vertica_hook.html | 272 +
.../_modules/airflow/contrib/hooks/wasb_hook.html | 410 +
.../_modules/airflow/contrib/hooks/winrm_hook.html | 356 +
.../airflow/contrib/kubernetes/secret.html | 260 +
.../contrib/operators/adls_list_operator.html | 289 +
.../airflow/contrib/operators/adls_to_gcs.html | 365 +
.../contrib/operators/aws_athena_operator.html | 317 +
.../contrib/operators/awsbatch_operator.html | 398 +
.../contrib/operators/azure_cosmos_operator.html | 288 +
.../contrib/operators/bigquery_check_operator.html | 364 +
.../contrib/operators/bigquery_get_data.html | 335 +
.../contrib/operators/bigquery_operator.html | 856 ++
.../operators/bigquery_table_delete_operator.html | 285 +
.../contrib/operators/bigquery_to_bigquery.html | 314 +
.../airflow/contrib/operators/bigquery_to_gcs.html | 324 +
.../contrib/operators/cassandra_to_gcs.html | 574 +
.../contrib/operators/databricks_operator.html | 699 +
.../contrib/operators/dataflow_operator.html | 593 +
.../contrib/operators/dataproc_operator.html | 1678 ++
.../operators/datastore_export_operator.html | 329 +
.../operators/datastore_import_operator.html | 317 +
.../operators/discord_webhook_operator.html | 317 +
.../airflow/contrib/operators/druid_operator.html | 283 +
.../airflow/contrib/operators/ecs_operator.html | 371 +
.../contrib/operators/emr_add_steps_operator.html | 282 +
.../operators/emr_create_job_flow_operator.html | 293 +
.../operators/emr_terminate_job_flow_operator.html | 276 +
.../airflow/contrib/operators/file_to_gcs.html | 301 +
.../airflow/contrib/operators/file_to_wasb.html | 283 +
.../contrib/operators/gcp_compute_operator.html | 681 +
.../contrib/operators/gcp_function_operator.html | 539 +
.../contrib/operators/gcp_sql_operator.html | 988 ++
.../contrib/operators/gcs_acl_operator.html | 345 +
.../contrib/operators/gcs_download_operator.html | 310 +
.../contrib/operators/gcs_list_operator.html | 311 +
.../airflow/contrib/operators/gcs_operator.html | 341 +
.../airflow/contrib/operators/gcs_to_bq.html | 488 +
.../airflow/contrib/operators/gcs_to_gcs.html | 387 +
.../operators/gcs_to_gcs_transfer_operator.html | 346 +
.../airflow/contrib/operators/gcs_to_s3.html | 344 +
.../contrib/operators/hipchat_operator.html | 354 +
.../contrib/operators/hive_to_dynamodb.html | 328 +
.../airflow/contrib/operators/jira_operator.html | 313 +
.../contrib/operators/kubernetes_pod_operator.html | 422 +
.../contrib/operators/mlengine_operator.html | 829 +
.../airflow/contrib/operators/mongo_to_s3.html | 347 +
.../airflow/contrib/operators/mysql_to_gcs.html | 508 +
.../operators/postgres_to_gcs_operator.html | 475 +
.../airflow/contrib/operators/pubsub_operator.html | 652 +
.../contrib/operators/qubole_check_operator.html | 444 +
.../airflow/contrib/operators/qubole_operator.html | 395 +
.../contrib/operators/s3_list_operator.html | 313 +
.../contrib/operators/s3_to_gcs_operator.html | 424 +
.../operators/s3_to_gcs_transfer_operator.html | 356 +
.../contrib/operators/sagemaker_base_operator.html | 319 +
.../sagemaker_endpoint_config_operator.html | 285 +
.../operators/sagemaker_endpoint_operator.html | 369 +
.../operators/sagemaker_model_operator.html | 286 +
.../operators/sagemaker_training_operator.html | 317 +
.../operators/sagemaker_transform_operator.html | 343 +
.../operators/sagemaker_tuning_operator.html | 318 +
.../airflow/contrib/operators/sftp_operator.html | 399 +
.../contrib/operators/slack_webhook_operator.html | 311 +
.../contrib/operators/snowflake_operator.html | 286 +
.../contrib/operators/spark_jdbc_operator.html | 433 +
.../contrib/operators/spark_sql_operator.html | 330 +
.../contrib/operators/spark_submit_operator.html | 390 +
.../airflow/contrib/operators/sqoop_operator.html | 457 +
.../airflow/contrib/operators/ssh_operator.html | 392 +
.../contrib/operators/vertica_operator.html | 268 +
.../airflow/contrib/operators/vertica_to_hive.html | 358 +
.../airflow/contrib/operators/winrm_operator.html | 329 +
.../airflow/contrib/sensors/aws_athena_sensor.html | 298 +
.../sensors/aws_glue_catalog_partition_sensor.html | 312 +
.../sensors/aws_redshift_cluster_sensor.html | 271 +
.../contrib/sensors/azure_cosmos_sensor.html | 286 +
.../airflow/contrib/sensors/bash_sensor.html | 314 +
.../airflow/contrib/sensors/bigquery_sensor.html | 289 +
.../contrib/sensors/cassandra_record_sensor.html | 280 +
.../contrib/sensors/cassandra_table_sensor.html | 275 +
.../airflow/contrib/sensors/datadog_sensor.html | 302 +
.../airflow/contrib/sensors/emr_base_sensor.html | 275 +
.../contrib/sensors/emr_job_flow_sensor.html | 274 +
.../airflow/contrib/sensors/emr_step_sensor.html | 277 +
.../airflow/contrib/sensors/file_sensor.html | 290 +
.../airflow/contrib/sensors/ftp_sensor.html | 319 +
.../airflow/contrib/sensors/gcs_sensor.html | 385 +
.../airflow/contrib/sensors/hdfs_sensor.html | 297 +
.../airflow/contrib/sensors/jira_sensor.html | 370 +
.../airflow/contrib/sensors/pubsub_sensor.html | 324 +
.../airflow/contrib/sensors/python_sensor.html | 300 +
.../airflow/contrib/sensors/qubole_sensor.html | 339 +
.../airflow/contrib/sensors/redis_key_sensor.html | 266 +
.../contrib/sensors/sagemaker_base_sensor.html | 293 +
.../contrib/sensors/sagemaker_endpoint_sensor.html | 280 +
.../contrib/sensors/sagemaker_training_sensor.html | 321 +
.../sensors/sagemaker_transform_sensor.html | 281 +
.../contrib/sensors/sagemaker_tuning_sensor.html | 281 +
.../airflow/contrib/sensors/sftp_sensor.html | 271 +
.../airflow/contrib/sensors/wasb_sensor.html | 318 +
.../airflow/contrib/sensors/weekday_sensor.html | 322 +
.../airflow/executors/celery_executor.html | 338 +
.../_modules/airflow/executors/local_executor.html | 450 +
.../airflow/executors/sequential_executor.html | 276 +
.../1.10.2/_modules/airflow/hooks/S3_hook.html | 762 +
.../1.10.2/_modules/airflow/hooks/dbapi_hook.html | 522 +
.../1.10.2/_modules/airflow/hooks/druid_hook.html | 384 +
.../1.10.2/_modules/airflow/hooks/hdfs_hook.html | 320 +
.../1.10.2/_modules/airflow/hooks/hive_hooks.html | 1148 ++
.../1.10.2/_modules/airflow/hooks/http_hook.html | 422 +
.../1.10.2/_modules/airflow/hooks/mssql_hook.html | 271 +
.../1.10.2/_modules/airflow/hooks/mysql_hook.html | 363 +
.../1.10.2/_modules/airflow/hooks/pig_hook.html | 313 +
.../_modules/airflow/hooks/postgres_hook.html | 332 +
.../1.10.2/_modules/airflow/hooks/presto_hook.html | 359 +
.../1.10.2/_modules/airflow/hooks/samba_hook.html | 271 +
.../1.10.2/_modules/airflow/hooks/slack_hook.html | 281 +
.../1.10.2/_modules/airflow/hooks/sqlite_hook.html | 260 +
.../_modules/airflow/hooks/zendesk_hook.html | 331 +
docs-archive/1.10.2/_modules/airflow/macros.html | 312 +
.../1.10.2/_modules/airflow/macros/hive.html | 339 +
docs-archive/1.10.2/_modules/airflow/models.html | 5743 +++++++
.../_modules/airflow/operators/bash_operator.html | 357 +
.../_modules/airflow/operators/check_operator.html | 481 +
.../airflow/operators/dagrun_operator.html | 317 +
.../airflow/operators/druid_check_operator.html | 310 +
.../_modules/airflow/operators/dummy_operator.html | 257 +
.../_modules/airflow/operators/email_operator.html | 297 +
.../airflow/operators/generic_transfer.html | 300 +
.../_modules/airflow/operators/hive_operator.html | 361 +
.../airflow/operators/hive_stats_operator.html | 408 +
.../_modules/airflow/operators/hive_to_druid.html | 465 +
.../_modules/airflow/operators/hive_to_mysql.html | 333 +
.../airflow/operators/hive_to_samba_operator.html | 286 +
.../_modules/airflow/operators/http_operator.html | 320 +
.../airflow/operators/latest_only_operator.html | 283 +
.../_modules/airflow/operators/mssql_operator.html | 277 +
.../_modules/airflow/operators/mssql_to_hive.html | 358 +
.../_modules/airflow/operators/mysql_operator.html | 280 +
.../_modules/airflow/operators/mysql_to_hive.html | 361 +
.../_modules/airflow/operators/pig_operator.html | 292 +
.../airflow/operators/postgres_operator.html | 281 +
.../airflow/operators/presto_check_operator.html | 346 +
.../airflow/operators/presto_to_mysql.html | 299 +
.../airflow/operators/python_operator.html | 620 +
.../airflow/operators/redshift_to_s3_operator.html | 370 +
.../operators/s3_file_transform_operator.html | 386 +
.../airflow/operators/s3_to_hive_operator.html | 515 +
.../airflow/operators/s3_to_redshift_operator.html | 327 +
.../_modules/airflow/operators/slack_operator.html | 357 +
.../airflow/operators/sqlite_operator.html | 271 +
.../airflow/operators/subdag_operator.html | 322 +
.../airflow/sensors/base_sensor_operator.html | 350 +
.../airflow/sensors/external_task_sensor.html | 320 +
.../_modules/airflow/sensors/hdfs_sensor.html | 338 +
.../airflow/sensors/hive_partition_sensor.html | 294 +
.../_modules/airflow/sensors/http_sensor.html | 311 +
.../sensors/metastore_partition_sensor.html | 302 +
.../sensors/named_hive_partition_sensor.html | 323 +
.../_modules/airflow/sensors/s3_key_sensor.html | 312 +
.../_modules/airflow/sensors/s3_prefix_sensor.html | 301 +
.../_modules/airflow/sensors/sql_sensor.html | 277 +
.../airflow/sensors/time_delta_sensor.html | 265 +
.../_modules/airflow/sensors/time_sensor.html | 259 +
.../_modules/airflow/sensors/web_hdfs_sensor.html | 263 +
docs-archive/1.10.2/_modules/index.html | 431 +
docs-archive/1.10.2/_sources/api.rst.txt | 143 +
docs-archive/1.10.2/_sources/changelog.rst.txt | 21 +
docs-archive/1.10.2/_sources/cli.rst.txt | 28 +
docs-archive/1.10.2/_sources/code.rst.txt | 483 +
docs-archive/1.10.2/_sources/concepts.rst.txt | 901 ++
docs-archive/1.10.2/_sources/faq.rst.txt | 201 +
.../1.10.2/_sources/howto/check-health.rst.txt | 47 +
.../_sources/howto/executor/use-celery.rst.txt | 71 +
.../_sources/howto/executor/use-dask.rst.txt | 50 +
.../_sources/howto/executor/use-mesos.rst.txt | 82 +
docs-archive/1.10.2/_sources/howto/index.rst.txt | 42 +
.../_sources/howto/initialize-database.rst.txt | 48 +
.../_sources/howto/manage-connections.rst.txt | 400 +
.../1.10.2/_sources/howto/operator.rst.txt | 1657 ++
.../1.10.2/_sources/howto/run-with-systemd.rst.txt | 32 +
.../1.10.2/_sources/howto/run-with-upstart.rst.txt | 37 +
.../_sources/howto/secure-connections.rst.txt | 50 +
.../1.10.2/_sources/howto/set-config.rst.txt | 66 +
.../1.10.2/_sources/howto/use-test-config.rst.txt | 34 +
.../1.10.2/_sources/howto/write-logs.rst.txt | 138 +
docs-archive/1.10.2/_sources/index.rst.txt | 96 +
docs-archive/1.10.2/_sources/installation.rst.txt | 143 +
docs-archive/1.10.2/_sources/integration.rst.txt | 1419 ++
docs-archive/1.10.2/_sources/kubernetes.rst.txt | 132 +
docs-archive/1.10.2/_sources/license.rst.txt | 199 +
docs-archive/1.10.2/_sources/lineage.rst.txt | 102 +
docs-archive/1.10.2/_sources/metrics.rst.txt | 67 +
docs-archive/1.10.2/_sources/plugins.rst.txt | 253 +
docs-archive/1.10.2/_sources/profiling.rst.txt | 58 +
docs-archive/1.10.2/_sources/project.rst.txt | 74 +
docs-archive/1.10.2/_sources/scheduler.rst.txt | 186 +
docs-archive/1.10.2/_sources/security.rst.txt | 439 +
docs-archive/1.10.2/_sources/start.rst.txt | 71 +
docs-archive/1.10.2/_sources/timezone.rst.txt | 163 +
docs-archive/1.10.2/_sources/tutorial.rst.txt | 470 +
docs-archive/1.10.2/_sources/ui.rst.txt | 119 +
docs-archive/1.10.2/_static/ajax-loader.gif | Bin 0 -> 673 bytes
docs-archive/1.10.2/_static/basic.css | 676 +
docs-archive/1.10.2/_static/comment-bright.png | Bin 0 -> 756 bytes
docs-archive/1.10.2/_static/comment-close.png | Bin 0 -> 829 bytes
docs-archive/1.10.2/_static/comment.png | Bin 0 -> 641 bytes
docs-archive/1.10.2/_static/css/badge_only.css | 1 +
docs-archive/1.10.2/_static/css/theme.css | 6 +
docs-archive/1.10.2/_static/doctools.js | 315 +
.../1.10.2/_static/documentation_options.js | 10 +
docs-archive/1.10.2/_static/down-pressed.png | Bin 0 -> 222 bytes
docs-archive/1.10.2/_static/down.png | Bin 0 -> 202 bytes
docs-archive/1.10.2/_static/file.png | Bin 0 -> 286 bytes
.../1.10.2/_static/fonts/Inconsolata-Bold.ttf | Bin 0 -> 109948 bytes
.../1.10.2/_static/fonts/Inconsolata-Regular.ttf | Bin 0 -> 96964 bytes
docs-archive/1.10.2/_static/fonts/Inconsolata.ttf | Bin 0 -> 63184 bytes
docs-archive/1.10.2/_static/fonts/Lato-Bold.ttf | Bin 0 -> 656544 bytes
docs-archive/1.10.2/_static/fonts/Lato-Regular.ttf | Bin 0 -> 656568 bytes
.../1.10.2/_static/fonts/Lato/lato-bold.eot | Bin 0 -> 256056 bytes
.../1.10.2/_static/fonts/Lato/lato-bold.ttf | Bin 0 -> 600856 bytes
.../1.10.2/_static/fonts/Lato/lato-bold.woff | Bin 0 -> 309728 bytes
.../1.10.2/_static/fonts/Lato/lato-bold.woff2 | Bin 0 -> 184912 bytes
.../1.10.2/_static/fonts/Lato/lato-bolditalic.eot | Bin 0 -> 266158 bytes
.../1.10.2/_static/fonts/Lato/lato-bolditalic.ttf | Bin 0 -> 622572 bytes
.../1.10.2/_static/fonts/Lato/lato-bolditalic.woff | Bin 0 -> 323344 bytes
.../_static/fonts/Lato/lato-bolditalic.woff2 | Bin 0 -> 193308 bytes
.../1.10.2/_static/fonts/Lato/lato-italic.eot | Bin 0 -> 268604 bytes
.../1.10.2/_static/fonts/Lato/lato-italic.ttf | Bin 0 -> 639388 bytes
.../1.10.2/_static/fonts/Lato/lato-italic.woff | Bin 0 -> 328412 bytes
.../1.10.2/_static/fonts/Lato/lato-italic.woff2 | Bin 0 -> 195704 bytes
.../1.10.2/_static/fonts/Lato/lato-regular.eot | Bin 0 -> 253461 bytes
.../1.10.2/_static/fonts/Lato/lato-regular.ttf | Bin 0 -> 607720 bytes
.../1.10.2/_static/fonts/Lato/lato-regular.woff | Bin 0 -> 309192 bytes
.../1.10.2/_static/fonts/Lato/lato-regular.woff2 | Bin 0 -> 182708 bytes
.../1.10.2/_static/fonts/RobotoSlab-Bold.ttf | Bin 0 -> 170616 bytes
.../1.10.2/_static/fonts/RobotoSlab-Regular.ttf | Bin 0 -> 169064 bytes
.../fonts/RobotoSlab/roboto-slab-v7-bold.eot | Bin 0 -> 79520 bytes
.../fonts/RobotoSlab/roboto-slab-v7-bold.ttf | Bin 0 -> 170616 bytes
.../fonts/RobotoSlab/roboto-slab-v7-bold.woff | Bin 0 -> 87624 bytes
.../fonts/RobotoSlab/roboto-slab-v7-bold.woff2 | Bin 0 -> 67312 bytes
.../fonts/RobotoSlab/roboto-slab-v7-regular.eot | Bin 0 -> 78331 bytes
.../fonts/RobotoSlab/roboto-slab-v7-regular.ttf | Bin 0 -> 169064 bytes
.../fonts/RobotoSlab/roboto-slab-v7-regular.woff | Bin 0 -> 86288 bytes
.../fonts/RobotoSlab/roboto-slab-v7-regular.woff2 | Bin 0 -> 66444 bytes
.../1.10.2/_static/fonts/fontawesome-webfont.eot | Bin 0 -> 165742 bytes
.../1.10.2/_static/fonts/fontawesome-webfont.svg | 2671 ++++
.../1.10.2/_static/fonts/fontawesome-webfont.ttf | Bin 0 -> 165548 bytes
.../1.10.2/_static/fonts/fontawesome-webfont.woff | Bin 0 -> 98024 bytes
.../1.10.2/_static/fonts/fontawesome-webfont.woff2 | Bin 0 -> 77160 bytes
docs-archive/1.10.2/_static/jquery-3.2.1.js | 10253 +++++++++++++
docs-archive/1.10.2/_static/jquery.js | 4 +
docs-archive/1.10.2/_static/js/modernizr.min.js | 4 +
docs-archive/1.10.2/_static/js/theme.js | 3 +
docs-archive/1.10.2/_static/language_data.js | 297 +
docs-archive/1.10.2/_static/minus.png | Bin 0 -> 90 bytes
docs-archive/1.10.2/_static/plus.png | Bin 0 -> 90 bytes
docs-archive/1.10.2/_static/pygments.css | 69 +
docs-archive/1.10.2/_static/searchtools.js | 481 +
docs-archive/1.10.2/_static/underscore-1.3.1.js | 999 ++
docs-archive/1.10.2/_static/underscore.js | 31 +
docs-archive/1.10.2/_static/up-pressed.png | Bin 0 -> 214 bytes
docs-archive/1.10.2/_static/up.png | Bin 0 -> 203 bytes
docs-archive/1.10.2/_static/websupport.js | 808 +
docs-archive/1.10.2/api.html | 361 +
docs-archive/1.10.2/changelog.html | 2587 ++++
docs-archive/1.10.2/cli.html | 1750 +++
docs-archive/1.10.2/code.html | 15156 +++++++++++++++++++
docs-archive/1.10.2/concepts.html | 1035 ++
docs-archive/1.10.2/faq.html | 403 +
docs-archive/1.10.2/genindex.html | 2230 +++
docs-archive/1.10.2/howto/check-health.html | 282 +
docs-archive/1.10.2/howto/executor/use-celery.html | 293 +
docs-archive/1.10.2/howto/executor/use-dask.html | 275 +
docs-archive/1.10.2/howto/executor/use-mesos.html | 314 +
docs-archive/1.10.2/howto/index.html | 297 +
docs-archive/1.10.2/howto/initialize-database.html | 280 +
docs-archive/1.10.2/howto/manage-connections.html | 597 +
docs-archive/1.10.2/howto/operator.html | 2514 +++
docs-archive/1.10.2/howto/run-with-systemd.html | 262 +
docs-archive/1.10.2/howto/run-with-upstart.html | 264 +
docs-archive/1.10.2/howto/secure-connections.html | 278 +
docs-archive/1.10.2/howto/set-config.html | 290 +
docs-archive/1.10.2/howto/use-test-config.html | 263 +
docs-archive/1.10.2/howto/write-logs.html | 376 +
docs-archive/1.10.2/http-routingtable.html | 295 +
docs-archive/1.10.2/index.html | 937 ++
docs-archive/1.10.2/installation.html | 425 +
docs-archive/1.10.2/integration.html | 9075 +++++++++++
docs-archive/1.10.2/kubernetes.html | 403 +
docs-archive/1.10.2/license.html | 411 +
docs-archive/1.10.2/lineage.html | 315 +
docs-archive/1.10.2/metrics.html | 335 +
docs-archive/1.10.2/objects.inv | Bin 0 -> 9678 bytes
docs-archive/1.10.2/plugins.html | 457 +
docs-archive/1.10.2/profiling.html | 272 +
docs-archive/1.10.2/project.html | 288 +
docs-archive/1.10.2/py-modindex.html | 252 +
docs-archive/1.10.2/scheduler.html | 413 +
docs-archive/1.10.2/search.html | 238 +
docs-archive/1.10.2/searchindex.js | 1 +
docs-archive/1.10.2/security.html | 628 +
docs-archive/1.10.2/start.html | 283 +
docs-archive/1.10.2/timezone.html | 365 +
docs-archive/1.10.2/tutorial.html | 667 +
docs-archive/1.10.2/ui.html | 318 +
docs-archive/1.10.3/.buildinfo | 4 +
.../_api/airflow/contrib/executors/index.html | 331 +
.../executors/kubernetes_executor/index.html | 583 +
.../contrib/executors/mesos_executor/index.html | 440 +
.../contrib/hooks/aws_athena_hook/index.html | 452 +
.../contrib/hooks/aws_dynamodb_hook/index.html | 358 +
.../contrib/hooks/aws_firehose_hook/index.html | 354 +
.../contrib/hooks/aws_glue_catalog_hook/index.html | 443 +
.../_api/airflow/contrib/hooks/aws_hook/index.html | 399 +
.../contrib/hooks/aws_lambda_hook/index.html | 360 +
.../airflow/contrib/hooks/aws_sns_hook/index.html | 359 +
.../hooks/azure_container_instance_hook/index.html | 464 +
.../hooks/azure_container_registry_hook/index.html | 349 +
.../hooks/azure_container_volume_hook/index.html | 354 +
.../contrib/hooks/azure_cosmos_hook/index.html | 444 +
.../contrib/hooks/azure_data_lake_hook/index.html | 426 +
.../contrib/hooks/azure_fileshare_hook/index.html | 531 +
.../airflow/contrib/hooks/bigquery_hook/index.html | 1223 ++
.../contrib/hooks/cassandra_hook/index.html | 427 +
.../airflow/contrib/hooks/cloudant_hook/index.html | 353 +
.../contrib/hooks/databricks_hook/index.html | 536 +
.../airflow/contrib/hooks/datadog_hook/index.html | 417 +
.../contrib/hooks/datastore_hook/index.html | 493 +
.../airflow/contrib/hooks/dingding_hook/index.html | 386 +
.../contrib/hooks/discord_webhook_hook/index.html | 396 +
.../_api/airflow/contrib/hooks/emr_hook/index.html | 353 +
.../_api/airflow/contrib/hooks/fs_hook/index.html | 354 +
.../_api/airflow/contrib/hooks/ftp_hook/index.html | 548 +
.../contrib/hooks/gcp_api_base_hook/index.html | 449 +
.../contrib/hooks/gcp_bigtable_hook/index.html | 501 +
.../contrib/hooks/gcp_compute_hook/index.html | 589 +
.../contrib/hooks/gcp_container_hook/index.html | 504 +
.../contrib/hooks/gcp_dataflow_hook/index.html | 435 +
.../contrib/hooks/gcp_dataproc_hook/index.html | 478 +
.../contrib/hooks/gcp_function_hook/index.html | 495 +
.../airflow/contrib/hooks/gcp_kms_hook/index.html | 409 +
.../contrib/hooks/gcp_mlengine_hook/index.html | 457 +
.../hooks/gcp_natural_language_hook/index.html | 510 +
.../contrib/hooks/gcp_pubsub_hook/index.html | 513 +
.../contrib/hooks/gcp_spanner_hook/index.html | 584 +
.../airflow/contrib/hooks/gcp_sql_hook/index.html | 910 ++
.../contrib/hooks/gcp_transfer_hook/index.html | 860 ++
.../contrib/hooks/gcp_translate_hook/index.html | 403 +
.../contrib/hooks/gcp_vision_hook/index.html | 503 +
.../_api/airflow/contrib/hooks/gcs_hook/index.html | 661 +
.../airflow/contrib/hooks/imap_hook/index.html | 597 +
.../1.10.3/_api/airflow/contrib/hooks/index.html | 413 +
.../airflow/contrib/hooks/jenkins_hook/index.html | 343 +
.../airflow/contrib/hooks/jira_hook/index.html | 348 +
.../airflow/contrib/hooks/mongo_hook/index.html | 530 +
.../airflow/contrib/hooks/openfaas_hook/index.html | 397 +
.../contrib/hooks/opsgenie_alert_hook/index.html | 378 +
.../airflow/contrib/hooks/pinot_hook/index.html | 405 +
.../contrib/hooks/qubole_check_hook/index.html | 382 +
.../airflow/contrib/hooks/qubole_hook/index.html | 408 +
.../airflow/contrib/hooks/redis_hook/index.html | 346 +
.../airflow/contrib/hooks/redshift_hook/index.html | 408 +
.../contrib/hooks/sagemaker_hook/index.html | 856 ++
.../contrib/hooks/salesforce_hook/index.html | 474 +
.../airflow/contrib/hooks/segment_hook/index.html | 356 +
.../airflow/contrib/hooks/sftp_hook/index.html | 435 +
.../contrib/hooks/slack_webhook_hook/index.html | 384 +
.../contrib/hooks/snowflake_hook/index.html | 386 +
.../contrib/hooks/spark_jdbc_hook/index.html | 419 +
.../contrib/hooks/spark_jdbc_script/index.html | 351 +
.../contrib/hooks/spark_sql_hook/index.html | 398 +
.../contrib/hooks/spark_submit_hook/index.html | 507 +
.../airflow/contrib/hooks/sqoop_hook/index.html | 497 +
.../_api/airflow/contrib/hooks/ssh_hook/index.html | 401 +
.../airflow/contrib/hooks/vertica_hook/index.html | 359 +
.../airflow/contrib/hooks/wasb_hook/index.html | 482 +
.../airflow/contrib/hooks/winrm_hook/index.html | 388 +
.../operators/adls_list_operator/index.html | 383 +
.../contrib/operators/adls_to_gcs/index.html | 414 +
.../operators/aws_athena_operator/index.html | 380 +
.../contrib/operators/awsbatch_operator/index.html | 418 +
.../azure_container_instances_operator/index.html | 432 +
.../operators/azure_cosmos_operator/index.html | 368 +
.../operators/bigquery_check_operator/index.html | 432 +
.../contrib/operators/bigquery_get_data/index.html | 397 +
.../contrib/operators/bigquery_operator/index.html | 687 +
.../bigquery_table_delete_operator/index.html | 372 +
.../operators/bigquery_to_bigquery/index.html | 388 +
.../contrib/operators/bigquery_to_gcs/index.html | 391 +
.../contrib/operators/cassandra_to_gcs/index.html | 479 +
.../operators/databricks_operator/index.html | 690 +
.../contrib/operators/dataflow_operator/index.html | 623 +
.../contrib/operators/dataproc_operator/index.html | 1061 ++
.../operators/datastore_export_operator/index.html | 371 +
.../operators/datastore_import_operator/index.html | 369 +
.../contrib/operators/dingding_operator/index.html | 373 +
.../operators/discord_webhook_operator/index.html | 375 +
.../contrib/operators/druid_operator/index.html | 366 +
.../contrib/operators/ecs_operator/index.html | 408 +
.../operators/emr_add_steps_operator/index.html | 371 +
.../emr_create_job_flow_operator/index.html | 374 +
.../emr_terminate_job_flow_operator/index.html | 370 +
.../contrib/operators/file_to_gcs/index.html | 367 +
.../contrib/operators/file_to_wasb/index.html | 365 +
.../operators/gcp_bigtable_operator/index.html | 616 +
.../operators/gcp_compute_operator/index.html | 600 +
.../operators/gcp_container_operator/index.html | 535 +
.../operators/gcp_function_operator/index.html | 555 +
.../gcp_natural_language_operator/index.html | 490 +
.../operators/gcp_spanner_operator/index.html | 593 +
.../contrib/operators/gcp_sql_operator/index.html | 827 +
.../operators/gcp_transfer_operator/index.html | 890 ++
.../operators/gcp_translate_operator/index.html | 388 +
.../operators/gcp_vision_operator/index.html | 911 ++
.../contrib/operators/gcs_acl_operator/index.html | 416 +
.../operators/gcs_download_operator/index.html | 378 +
.../contrib/operators/gcs_list_operator/index.html | 392 +
.../contrib/operators/gcs_operator/index.html | 415 +
.../airflow/contrib/operators/gcs_to_bq/index.html | 440 +
.../contrib/operators/gcs_to_gcs/index.html | 436 +
.../airflow/contrib/operators/gcs_to_s3/index.html | 394 +
.../contrib/operators/hipchat_operator/index.html | 405 +
.../contrib/operators/hive_to_dynamodb/index.html | 380 +
.../imap_attachment_to_s3_operator/index.html | 371 +
.../_api/airflow/contrib/operators/index.html | 438 +
.../jenkins_job_trigger_operator/index.html | 446 +
.../contrib/operators/jira_operator/index.html | 365 +
.../operators/kubernetes_pod_operator/index.html | 395 +
.../contrib/operators/mlengine_operator/index.html | 587 +
.../contrib/operators/mongo_to_s3/index.html | 381 +
.../contrib/operators/mysql_to_gcs/index.html | 473 +
.../operators/opsgenie_alert_operator/index.html | 394 +
.../oracle_to_azure_data_lake_transfer/index.html | 379 +
.../operators/oracle_to_oracle_transfer/index.html | 375 +
.../operators/postgres_to_gcs_operator/index.html | 422 +
.../contrib/operators/pubsub_operator/index.html | 576 +
.../operators/qubole_check_operator/index.html | 522 +
.../contrib/operators/qubole_operator/index.html | 604 +
.../operators/s3_copy_object_operator/index.html | 393 +
.../s3_delete_objects_operator/index.html | 387 +
.../contrib/operators/s3_list_operator/index.html | 403 +
.../operators/s3_to_gcs_operator/index.html | 414 +
.../operators/s3_to_sftp_operator/index.html | 375 +
.../operators/sagemaker_base_operator/index.html | 395 +
.../sagemaker_endpoint_config_operator/index.html | 363 +
.../sagemaker_endpoint_operator/index.html | 392 +
.../operators/sagemaker_model_operator/index.html | 363 +
.../sagemaker_training_operator/index.html | 376 +
.../sagemaker_transform_operator/index.html | 388 +
.../operators/sagemaker_tuning_operator/index.html | 375 +
.../segment_track_event_operator/index.html | 369 +
.../contrib/operators/sftp_operator/index.html | 422 +
.../operators/sftp_to_s3_operator/index.html | 376 +
.../operators/slack_webhook_operator/index.html | 369 +
.../operators/snowflake_operator/index.html | 380 +
.../operators/sns_publish_operator/index.html | 366 +
.../operators/spark_jdbc_operator/index.html | 416 +
.../operators/spark_sql_operator/index.html | 383 +
.../operators/spark_submit_operator/index.html | 402 +
.../contrib/operators/sqoop_operator/index.html | 367 +
.../contrib/operators/ssh_operator/index.html | 378 +
.../contrib/operators/vertica_operator/index.html | 372 +
.../contrib/operators/vertica_to_hive/index.html | 394 +
.../contrib/operators/vertica_to_mysql/index.html | 384 +
.../operators/wasb_delete_blob_operator/index.html | 366 +
.../contrib/operators/winrm_operator/index.html | 364 +
.../contrib/sensors/aws_athena_sensor/index.html | 395 +
.../aws_glue_catalog_partition_sensor/index.html | 385 +
.../sensors/aws_redshift_cluster_sensor/index.html | 360 +
.../contrib/sensors/azure_cosmos_sensor/index.html | 360 +
.../airflow/contrib/sensors/bash_sensor/index.html | 368 +
.../contrib/sensors/bigquery_sensor/index.html | 374 +
.../sensors/cassandra_record_sensor/index.html | 361 +
.../sensors/cassandra_table_sensor/index.html | 359 +
.../contrib/sensors/datadog_sensor/index.html | 363 +
.../contrib/sensors/emr_base_sensor/index.html | 354 +
.../contrib/sensors/emr_job_flow_sensor/index.html | 378 +
.../contrib/sensors/emr_step_sensor/index.html | 381 +
.../airflow/contrib/sensors/file_sensor/index.html | 369 +
.../airflow/contrib/sensors/ftp_sensor/index.html | 388 +
.../contrib/sensors/gcp_transfer_sensor/index.html | 368 +
.../airflow/contrib/sensors/gcs_sensor/index.html | 521 +
.../airflow/contrib/sensors/hdfs_sensor/index.html | 369 +
.../sensors/imap_attachment_sensor/index.html | 379 +
.../1.10.3/_api/airflow/contrib/sensors/index.html | 370 +
.../airflow/contrib/sensors/jira_sensor/index.html | 390 +
.../contrib/sensors/mongo_sensor/index.html | 359 +
.../contrib/sensors/pubsub_sensor/index.html | 372 +
.../contrib/sensors/python_sensor/index.html | 376 +
.../contrib/sensors/qubole_sensor/index.html | 404 +
.../contrib/sensors/redis_key_sensor/index.html | 357 +
.../sensors/redis_pub_sub_sensor/index.html | 367 +
.../sensors/sagemaker_base_sensor/index.html | 380 +
.../sensors/sagemaker_endpoint_sensor/index.html | 383 +
.../sensors/sagemaker_training_sensor/index.html | 391 +
.../sensors/sagemaker_transform_sensor/index.html | 384 +
.../sensors/sagemaker_tuning_sensor/index.html | 384 +
.../airflow/contrib/sensors/sftp_sensor/index.html | 360 +
.../airflow/contrib/sensors/wasb_sensor/index.html | 391 +
.../contrib/sensors/weekday_sensor/index.html | 398 +
.../airflow/executors/base_executor/index.html | 436 +
.../airflow/executors/celery_executor/index.html | 456 +
.../airflow/executors/dask_executor/index.html | 368 +
.../1.10.3/_api/airflow/executors/index.html | 663 +
.../airflow/executors/local_executor/index.html | 492 +
.../executors/sequential_executor/index.html | 357 +
.../1.10.3/_api/airflow/hooks/S3_hook/index.html | 662 +
.../1.10.3/_api/airflow/hooks/base_hook/index.html | 392 +
.../_api/airflow/hooks/dbapi_hook/index.html | 537 +
.../_api/airflow/hooks/docker_hook/index.html | 354 +
.../_api/airflow/hooks/druid_hook/index.html | 412 +
.../1.10.3/_api/airflow/hooks/hdfs_hook/index.html | 364 +
.../_api/airflow/hooks/hive_hooks/index.html | 799 +
.../1.10.3/_api/airflow/hooks/http_hook/index.html | 434 +
docs-archive/1.10.3/_api/airflow/hooks/index.html | 372 +
.../1.10.3/_api/airflow/hooks/jdbc_hook/index.html | 375 +
.../_api/airflow/hooks/mssql_hook/index.html | 369 +
.../_api/airflow/hooks/mysql_hook/index.html | 418 +
.../_api/airflow/hooks/oracle_hook/index.html | 425 +
.../1.10.3/_api/airflow/hooks/pig_hook/index.html | 358 +
.../_api/airflow/hooks/postgres_hook/index.html | 409 +
.../_api/airflow/hooks/presto_hook/index.html | 417 +
.../_api/airflow/hooks/samba_hook/index.html | 348 +
.../_api/airflow/hooks/slack_hook/index.html | 348 +
.../_api/airflow/hooks/sqlite_hook/index.html | 359 +
.../_api/airflow/hooks/webhdfs_hook/index.html | 387 +
.../_api/airflow/hooks/zendesk_hook/index.html | 372 +
.../1.10.3/_api/airflow/models/base/index.html | 351 +
.../_api/airflow/models/connection/index.html | 472 +
.../_api/airflow/models/dagpickle/index.html | 369 +
.../1.10.3/_api/airflow/models/errors/index.html | 362 +
docs-archive/1.10.3/_api/airflow/models/index.html | 4411 ++++++
.../_api/airflow/models/kubernetes/index.html | 398 +
.../1.10.3/_api/airflow/models/log/index.html | 388 +
.../_api/airflow/models/skipmixin/index.html | 353 +
.../1.10.3/_api/airflow/models/slamiss/index.html | 390 +
.../1.10.3/_api/airflow/models/taskfail/index.html | 383 +
.../_api/airflow/models/taskreschedule/index.html | 402 +
.../airflow/operators/bash_operator/index.html | 389 +
.../airflow/operators/check_operator/index.html | 505 +
.../airflow/operators/dagrun_operator/index.html | 380 +
.../airflow/operators/docker_operator/index.html | 436 +
.../operators/druid_check_operator/index.html | 394 +
.../airflow/operators/dummy_operator/index.html | 353 +
.../airflow/operators/email_operator/index.html | 378 +
.../airflow/operators/generic_transfer/index.html | 378 +
.../airflow/operators/hive_operator/index.html | 407 +
.../operators/hive_stats_operator/index.html | 389 +
.../airflow/operators/hive_to_druid/index.html | 403 +
.../airflow/operators/hive_to_mysql/index.html | 386 +
.../operators/hive_to_samba_operator/index.html | 367 +
.../airflow/operators/http_operator/index.html | 384 +
.../1.10.3/_api/airflow/operators/index.html | 849 ++
.../airflow/operators/jdbc_operator/index.html | 376 +
.../operators/latest_only_operator/index.html | 355 +
.../airflow/operators/mssql_operator/index.html | 375 +
.../airflow/operators/mssql_to_hive/index.html | 396 +
.../airflow/operators/mysql_operator/index.html | 377 +
.../airflow/operators/mysql_to_hive/index.html | 395 +
.../airflow/operators/oracle_operator/index.html | 376 +
.../_api/airflow/operators/pig_operator/index.html | 390 +
.../airflow/operators/postgres_operator/index.html | 376 +
.../operators/presto_check_operator/index.html | 421 +
.../airflow/operators/presto_to_mysql/index.html | 379 +
.../airflow/operators/python_operator/index.html | 541 +
.../operators/redshift_to_s3_operator/index.html | 393 +
.../s3_file_transform_operator/index.html | 405 +
.../operators/s3_to_hive_operator/index.html | 434 +
.../operators/s3_to_redshift_operator/index.html | 393 +
.../_api/airflow/operators/sensors/index.html | 407 +
.../airflow/operators/slack_operator/index.html | 408 +
.../airflow/operators/sqlite_operator/index.html | 372 +
.../airflow/operators/subdag_operator/index.html | 368 +
.../sensors/base_sensor_operator/index.html | 409 +
.../sensors/external_task_sensor/index.html | 381 +
.../_api/airflow/sensors/hdfs_sensor/index.html | 395 +
.../sensors/hive_partition_sensor/index.html | 374 +
.../_api/airflow/sensors/http_sensor/index.html | 371 +
.../1.10.3/_api/airflow/sensors/index.html | 369 +
.../sensors/metastore_partition_sensor/index.html | 374 +
.../sensors/named_hive_partition_sensor/index.html | 382 +
.../_api/airflow/sensors/s3_key_sensor/index.html | 384 +
.../airflow/sensors/s3_prefix_sensor/index.html | 386 +
.../_api/airflow/sensors/sql_sensor/index.html | 373 +
.../airflow/sensors/time_delta_sensor/index.html | 355 +
.../_api/airflow/sensors/time_sensor/index.html | 352 +
.../airflow/sensors/web_hdfs_sensor/index.html | 352 +
docs-archive/1.10.3/_api/index.html | 438 +
docs-archive/1.10.3/_images/adhoc.png | Bin 0 -> 182773 bytes
docs-archive/1.10.3/_images/airflow.gif | Bin 0 -> 622832 bytes
docs-archive/1.10.3/_images/apache.jpg | Bin 0 -> 43364 bytes
docs-archive/1.10.3/_images/branch_bad.png | Bin 0 -> 8825 bytes
docs-archive/1.10.3/_images/branch_good.png | Bin 0 -> 12035 bytes
.../1.10.3/_images/branch_with_trigger.png | Bin 0 -> 34081 bytes
.../1.10.3/_images/branch_without_trigger.png | Bin 0 -> 39815 bytes
docs-archive/1.10.3/_images/chart.png | Bin 0 -> 169382 bytes
docs-archive/1.10.3/_images/chart_form.png | Bin 0 -> 203224 bytes
docs-archive/1.10.3/_images/code.png | Bin 0 -> 285906 bytes
docs-archive/1.10.3/_images/connection_create.png | Bin 0 -> 41547 bytes
docs-archive/1.10.3/_images/connection_edit.png | Bin 0 -> 53636 bytes
docs-archive/1.10.3/_images/connections.png | Bin 0 -> 48442 bytes
docs-archive/1.10.3/_images/context.png | Bin 0 -> 149588 bytes
docs-archive/1.10.3/_images/dags.png | Bin 0 -> 217069 bytes
docs-archive/1.10.3/_images/duration.png | Bin 0 -> 250846 bytes
docs-archive/1.10.3/_images/gantt.png | Bin 0 -> 121795 bytes
docs-archive/1.10.3/_images/graph.png | Bin 0 -> 152205 bytes
.../1.10.3/_images/latest_only_with_trigger.png | Bin 0 -> 49510 bytes
docs-archive/1.10.3/_images/pin_large.png | Bin 0 -> 358276 bytes
docs-archive/1.10.3/_images/subdag_after.png | Bin 0 -> 30245 bytes
docs-archive/1.10.3/_images/subdag_before.png | Bin 0 -> 70382 bytes
docs-archive/1.10.3/_images/subdag_zoom.png | Bin 0 -> 150185 bytes
docs-archive/1.10.3/_images/tree.png | Bin 0 -> 128024 bytes
docs-archive/1.10.3/_images/variable_hidden.png | Bin 0 -> 154299 bytes
.../example_gcp_bigtable_operators.html | 500 +
.../contrib/example_dags/example_gcp_compute.html | 409 +
.../example_dags/example_gcp_compute_igm.html | 439 +
.../contrib/example_dags/example_gcp_function.html | 428 +
.../example_dags/example_gcp_natural_language.html | 409 +
.../contrib/example_dags/example_gcp_spanner.html | 493 +
.../contrib/example_dags/example_gcp_sql.html | 718 +
.../example_dags/example_gcp_sql_query.html | 589 +
.../contrib/example_dags/example_gcp_transfer.html | 548 +
.../example_dags/example_gcp_translate.html | 347 +
.../contrib/example_dags/example_gcp_vision.html | 710 +
.../contrib/example_dags/example_gcs_acl.html | 371 +
.../example_dags/example_gcs_to_bq_operator.html | 362 +
.../contrib/executors/kubernetes_executor.html | 1066 ++
.../airflow/contrib/executors/mesos_executor.html | 621 +
.../1.10.3/_modules/airflow/contrib/hooks.html | 365 +
.../airflow/contrib/hooks/aws_athena_hook.html | 447 +
.../airflow/contrib/hooks/aws_dynamodb_hook.html | 366 +
.../airflow/contrib/hooks/aws_firehose_hook.html | 353 +
.../contrib/hooks/aws_glue_catalog_hook.html | 449 +
.../_modules/airflow/contrib/hooks/aws_hook.html | 502 +
.../airflow/contrib/hooks/aws_lambda_hook.html | 365 +
.../airflow/contrib/hooks/aws_sns_hook.html | 357 +
.../hooks/azure_container_instance_hook.html | 464 +
.../hooks/azure_container_registry_hook.html | 336 +
.../contrib/hooks/azure_container_volume_hook.html | 351 +
.../airflow/contrib/hooks/azure_cosmos_hook.html | 584 +
.../contrib/hooks/azure_data_lake_hook.html | 438 +
.../contrib/hooks/azure_fileshare_hook.html | 509 +
.../airflow/contrib/hooks/bigquery_hook.html | 2374 +++
.../airflow/contrib/hooks/cassandra_hook.html | 497 +
.../airflow/contrib/hooks/cloudant_hook.html | 380 +
.../airflow/contrib/hooks/databricks_hook.html | 570 +
.../airflow/contrib/hooks/datadog_hook.html | 455 +
.../airflow/contrib/hooks/datastore_hook.html | 503 +
.../airflow/contrib/hooks/dingding_hook.html | 431 +
.../contrib/hooks/discord_webhook_hook.html | 437 +
.../_modules/airflow/contrib/hooks/emr_hook.html | 354 +
.../_modules/airflow/contrib/hooks/fs_hook.html | 343 +
.../_modules/airflow/contrib/hooks/ftp_hook.html | 611 +
.../airflow/contrib/hooks/gcp_api_base_hook.html | 556 +
.../airflow/contrib/hooks/gcp_bigtable_hook.html | 559 +
.../airflow/contrib/hooks/gcp_compute_hook.html | 632 +
.../airflow/contrib/hooks/gcp_container_hook.html | 544 +
.../airflow/contrib/hooks/gcp_dataflow_hook.html | 590 +
.../airflow/contrib/hooks/gcp_dataproc_hook.html | 542 +
.../airflow/contrib/hooks/gcp_function_hook.html | 498 +
.../airflow/contrib/hooks/gcp_kms_hook.html | 405 +
.../airflow/contrib/hooks/gcp_mlengine_hook.html | 570 +
.../contrib/hooks/gcp_natural_language_hook.html | 514 +
.../airflow/contrib/hooks/gcp_pubsub_hook.html | 581 +
.../airflow/contrib/hooks/gcp_spanner_hook.html | 646 +
.../airflow/contrib/hooks/gcp_sql_hook.html | 1297 ++
.../airflow/contrib/hooks/gcp_transfer_hook.html | 689 +
.../airflow/contrib/hooks/gcp_translate_hook.html | 394 +
.../airflow/contrib/hooks/gcp_vision_hook.html | 751 +
.../_modules/airflow/contrib/hooks/gcs_hook.html | 1029 ++
.../_modules/airflow/contrib/hooks/imap_hook.html | 613 +
.../airflow/contrib/hooks/jenkins_hook.html | 345 +
.../_modules/airflow/contrib/hooks/jira_hook.html | 383 +
.../_modules/airflow/contrib/hooks/mongo_hook.html | 588 +
.../airflow/contrib/hooks/openfaas_hook.html | 396 +
.../airflow/contrib/hooks/opsgenie_alert_hook.html | 385 +
.../_modules/airflow/contrib/hooks/pinot_hook.html | 402 +
.../airflow/contrib/hooks/qubole_check_hook.html | 414 +
.../airflow/contrib/hooks/qubole_hook.html | 511 +
.../_modules/airflow/contrib/hooks/redis_hook.html | 363 +
.../airflow/contrib/hooks/redshift_hook.html | 410 +
.../airflow/contrib/hooks/sagemaker_hook.html | 1067 ++
.../airflow/contrib/hooks/salesforce_hook.html | 622 +
.../airflow/contrib/hooks/segment_hook.html | 387 +
.../_modules/airflow/contrib/hooks/sftp_hook.html | 511 +
.../airflow/contrib/hooks/slack_webhook_hook.html | 430 +
.../airflow/contrib/hooks/snowflake_hook.html | 395 +
.../airflow/contrib/hooks/spark_jdbc_hook.html | 543 +
.../airflow/contrib/hooks/spark_jdbc_script.html | 443 +
.../airflow/contrib/hooks/spark_sql_hook.html | 461 +
.../airflow/contrib/hooks/spark_submit_hook.html | 885 ++
.../_modules/airflow/contrib/hooks/sqoop_hook.html | 652 +
.../_modules/airflow/contrib/hooks/ssh_hook.html | 545 +
.../airflow/contrib/hooks/vertica_hook.html | 350 +
.../_modules/airflow/contrib/hooks/wasb_hook.html | 488 +
.../_modules/airflow/contrib/hooks/winrm_hook.html | 547 +
.../1.10.3/_modules/airflow/contrib/operators.html | 348 +
.../contrib/operators/adls_list_operator.html | 369 +
.../airflow/contrib/operators/adls_to_gcs.html | 446 +
.../contrib/operators/aws_athena_operator.html | 397 +
.../contrib/operators/awsbatch_operator.html | 478 +
.../azure_container_instances_operator.html | 560 +
.../contrib/operators/azure_cosmos_operator.html | 366 +
.../contrib/operators/bigquery_check_operator.html | 442 +
.../contrib/operators/bigquery_get_data.html | 413 +
.../contrib/operators/bigquery_operator.html | 939 ++
.../operators/bigquery_table_delete_operator.html | 363 +
.../contrib/operators/bigquery_to_bigquery.html | 392 +
.../airflow/contrib/operators/bigquery_to_gcs.html | 402 +
.../contrib/operators/cassandra_to_gcs.html | 652 +
.../contrib/operators/databricks_operator.html | 782 +
.../contrib/operators/dataflow_operator.html | 722 +
.../contrib/operators/dataproc_operator.html | 1757 +++
.../operators/datastore_export_operator.html | 407 +
.../operators/datastore_import_operator.html | 395 +
.../contrib/operators/dingding_operator.html | 371 +
.../operators/discord_webhook_operator.html | 395 +
.../airflow/contrib/operators/druid_operator.html | 361 +
.../airflow/contrib/operators/ecs_operator.html | 474 +
.../contrib/operators/emr_add_steps_operator.html | 360 +
.../operators/emr_create_job_flow_operator.html | 371 +
.../operators/emr_terminate_job_flow_operator.html | 354 +
.../airflow/contrib/operators/file_to_gcs.html | 379 +
.../airflow/contrib/operators/file_to_wasb.html | 361 +
.../contrib/operators/gcp_bigtable_operator.html | 782 +
.../contrib/operators/gcp_compute_operator.html | 781 +
.../contrib/operators/gcp_container_operator.html | 619 +
.../contrib/operators/gcp_function_operator.html | 625 +
.../operators/gcp_natural_language_operator.html | 559 +
.../contrib/operators/gcp_spanner_operator.html | 729 +
.../contrib/operators/gcp_sql_operator.html | 1102 ++
.../contrib/operators/gcp_transfer_operator.html | 1095 ++
.../contrib/operators/gcp_translate_operator.html | 410 +
.../contrib/operators/gcp_vision_operator.html | 1260 ++
.../contrib/operators/gcs_acl_operator.html | 431 +
.../contrib/operators/gcs_download_operator.html | 388 +
.../contrib/operators/gcs_list_operator.html | 391 +
.../airflow/contrib/operators/gcs_operator.html | 426 +
.../airflow/contrib/operators/gcs_to_bq.html | 574 +
.../airflow/contrib/operators/gcs_to_gcs.html | 490 +
.../airflow/contrib/operators/gcs_to_s3.html | 423 +
.../contrib/operators/hipchat_operator.html | 432 +
.../contrib/operators/hive_to_dynamodb.html | 406 +
.../operators/imap_attachment_to_s3_operator.html | 385 +
.../operators/jenkins_job_trigger_operator.html | 540 +
.../airflow/contrib/operators/jira_operator.html | 391 +
.../contrib/operators/kubernetes_pod_operator.html | 506 +
.../contrib/operators/mlengine_operator.html | 905 ++
.../airflow/contrib/operators/mongo_to_s3.html | 425 +
.../airflow/contrib/operators/mysql_to_gcs.html | 640 +
.../contrib/operators/opsgenie_alert_operator.html | 428 +
.../oracle_to_azure_data_lake_transfer.html | 412 +
.../operators/oracle_to_oracle_transfer.html | 388 +
.../operators/postgres_to_gcs_operator.html | 553 +
.../airflow/contrib/operators/pubsub_operator.html | 730 +
.../contrib/operators/qubole_check_operator.html | 523 +
.../airflow/contrib/operators/qubole_operator.html | 479 +
.../contrib/operators/s3_copy_object_operator.html | 393 +
.../operators/s3_delete_objects_operator.html | 384 +
.../contrib/operators/s3_list_operator.html | 396 +
.../contrib/operators/s3_to_gcs_operator.html | 504 +
.../contrib/operators/s3_to_sftp_operator.html | 382 +
.../contrib/operators/sagemaker_base_operator.html | 399 +
.../sagemaker_endpoint_config_operator.html | 363 +
.../operators/sagemaker_endpoint_operator.html | 447 +
.../operators/sagemaker_model_operator.html | 364 +
.../operators/sagemaker_training_operator.html | 395 +
.../operators/sagemaker_transform_operator.html | 421 +
.../operators/sagemaker_tuning_operator.html | 396 +
.../operators/segment_track_event_operator.html | 366 +
.../airflow/contrib/operators/sftp_operator.html | 477 +
.../contrib/operators/sftp_to_s3_operator.html | 388 +
.../contrib/operators/slack_webhook_operator.html | 395 +
.../contrib/operators/snowflake_operator.html | 364 +
.../contrib/operators/sns_publish_operator.html | 362 +
.../contrib/operators/spark_jdbc_operator.html | 511 +
.../contrib/operators/spark_sql_operator.html | 408 +
.../contrib/operators/spark_submit_operator.html | 476 +
.../airflow/contrib/operators/sqoop_operator.html | 535 +
.../airflow/contrib/operators/ssh_operator.html | 470 +
.../contrib/operators/vertica_operator.html | 346 +
.../airflow/contrib/operators/vertica_to_hive.html | 436 +
.../contrib/operators/vertica_to_mysql.html | 452 +
.../operators/wasb_delete_blob_operator.html | 368 +
.../airflow/contrib/operators/winrm_operator.html | 446 +
.../airflow/contrib/sensors/aws_athena_sensor.html | 374 +
.../sensors/aws_glue_catalog_partition_sensor.html | 388 +
.../sensors/aws_redshift_cluster_sensor.html | 347 +
.../contrib/sensors/azure_cosmos_sensor.html | 362 +
.../airflow/contrib/sensors/bash_sensor.html | 386 +
.../airflow/contrib/sensors/bigquery_sensor.html | 365 +
.../contrib/sensors/cassandra_record_sensor.html | 356 +
.../contrib/sensors/cassandra_table_sensor.html | 351 +
.../airflow/contrib/sensors/datadog_sensor.html | 378 +
.../airflow/contrib/sensors/emr_base_sensor.html | 351 +
.../contrib/sensors/emr_job_flow_sensor.html | 350 +
.../airflow/contrib/sensors/emr_step_sensor.html | 353 +
.../airflow/contrib/sensors/file_sensor.html | 366 +
.../airflow/contrib/sensors/ftp_sensor.html | 395 +
.../contrib/sensors/gcp_transfer_sensor.html | 375 +
.../airflow/contrib/sensors/gcs_sensor.html | 461 +
.../airflow/contrib/sensors/hdfs_sensor.html | 369 +
.../contrib/sensors/imap_attachment_sensor.html | 371 +
.../airflow/contrib/sensors/jira_sensor.html | 446 +
.../airflow/contrib/sensors/mongo_sensor.html | 353 +
.../airflow/contrib/sensors/pubsub_sensor.html | 400 +
.../airflow/contrib/sensors/python_sensor.html | 375 +
.../airflow/contrib/sensors/qubole_sensor.html | 407 +
.../airflow/contrib/sensors/redis_key_sensor.html | 334 +
.../contrib/sensors/redis_pub_sub_sensor.html | 368 +
.../contrib/sensors/sagemaker_base_sensor.html | 369 +
.../contrib/sensors/sagemaker_endpoint_sensor.html | 356 +
.../contrib/sensors/sagemaker_training_sensor.html | 397 +
.../sensors/sagemaker_transform_sensor.html | 357 +
.../contrib/sensors/sagemaker_tuning_sensor.html | 357 +
.../airflow/contrib/sensors/sftp_sensor.html | 347 +
.../airflow/contrib/sensors/wasb_sensor.html | 391 +
.../airflow/contrib/sensors/weekday_sensor.html | 400 +
.../1.10.3/_modules/airflow/dag/base_dag.html | 396 +
.../example_dags/example_bash_operator.html | 368 +
.../example_dags/example_python_operator.html | 369 +
.../1.10.3/_modules/airflow/exceptions.html | 404 +
.../1.10.3/_modules/airflow/executors.html | 394 +
.../_modules/airflow/executors/base_executor.html | 500 +
.../airflow/executors/celery_executor.html | 599 +
.../_modules/airflow/executors/dask_executor.html | 394 +
.../_modules/airflow/executors/local_executor.html | 527 +
.../airflow/executors/sequential_executor.html | 354 +
docs-archive/1.10.3/_modules/airflow/hooks.html | 391 +
.../1.10.3/_modules/airflow/hooks/S3_hook.html | 840 +
.../1.10.3/_modules/airflow/hooks/base_hook.html | 398 +
.../1.10.3/_modules/airflow/hooks/dbapi_hook.html | 602 +
.../1.10.3/_modules/airflow/hooks/docker_hook.html | 382 +
.../1.10.3/_modules/airflow/hooks/druid_hook.html | 461 +
.../1.10.3/_modules/airflow/hooks/hdfs_hook.html | 395 +
.../1.10.3/_modules/airflow/hooks/hive_hooks.html | 1263 ++
.../1.10.3/_modules/airflow/hooks/http_hook.html | 506 +
.../1.10.3/_modules/airflow/hooks/jdbc_hook.html | 358 +
.../1.10.3/_modules/airflow/hooks/mssql_hook.html | 352 +
.../1.10.3/_modules/airflow/hooks/mysql_hook.html | 442 +
.../1.10.3/_modules/airflow/hooks/oracle_hook.html | 528 +
.../1.10.3/_modules/airflow/hooks/pig_hook.html | 391 +
.../_modules/airflow/hooks/postgres_hook.html | 410 +
.../1.10.3/_modules/airflow/hooks/presto_hook.html | 437 +
.../1.10.3/_modules/airflow/hooks/samba_hook.html | 349 +
.../1.10.3/_modules/airflow/hooks/slack_hook.html | 359 +
.../1.10.3/_modules/airflow/hooks/sqlite_hook.html | 338 +
.../_modules/airflow/hooks/webhdfs_hook.html | 408 +
.../_modules/airflow/hooks/zendesk_hook.html | 409 +
docs-archive/1.10.3/_modules/airflow/lineage.html | 435 +
docs-archive/1.10.3/_modules/airflow/macros.html | 388 +
.../1.10.3/_modules/airflow/macros/hive.html | 415 +
docs-archive/1.10.3/_modules/airflow/models.html | 5326 +++++++
.../1.10.3/_modules/airflow/models/base.html | 332 +
.../1.10.3/_modules/airflow/models/connection.html | 590 +
.../1.10.3/_modules/airflow/models/dagpickle.html | 349 +
.../1.10.3/_modules/airflow/models/errors.html | 328 +
.../1.10.3/_modules/airflow/models/kubernetes.html | 376 +
.../1.10.3/_modules/airflow/models/log.html | 365 +
.../1.10.3/_modules/airflow/models/skipmixin.html | 363 +
.../1.10.3/_modules/airflow/models/slamiss.html | 345 +
.../1.10.3/_modules/airflow/models/taskfail.html | 352 +
.../_modules/airflow/models/taskreschedule.html | 382 +
.../1.10.3/_modules/airflow/operators.html | 418 +
.../_modules/airflow/operators/bash_operator.html | 439 +
.../_modules/airflow/operators/check_operator.html | 556 +
.../airflow/operators/dagrun_operator.html | 394 +
.../airflow/operators/docker_operator.html | 565 +
.../airflow/operators/druid_check_operator.html | 388 +
.../_modules/airflow/operators/dummy_operator.html | 334 +
.../_modules/airflow/operators/email_operator.html | 375 +
.../airflow/operators/generic_transfer.html | 378 +
.../_modules/airflow/operators/hive_operator.html | 439 +
.../airflow/operators/hive_stats_operator.html | 486 +
.../_modules/airflow/operators/hive_to_druid.html | 543 +
.../_modules/airflow/operators/hive_to_mysql.html | 411 +
.../airflow/operators/hive_to_samba_operator.html | 364 +
.../_modules/airflow/operators/http_operator.html | 396 +
.../_modules/airflow/operators/jdbc_operator.html | 360 +
.../airflow/operators/latest_only_operator.html | 362 +
.../_modules/airflow/operators/mssql_operator.html | 360 +
.../_modules/airflow/operators/mssql_to_hive.html | 436 +
.../_modules/airflow/operators/mysql_operator.html | 364 +
.../_modules/airflow/operators/mysql_to_hive.html | 441 +
.../airflow/operators/oracle_operator.html | 360 +
.../_modules/airflow/operators/pig_operator.html | 370 +
.../airflow/operators/postgres_operator.html | 364 +
.../airflow/operators/presto_check_operator.html | 424 +
.../airflow/operators/presto_to_mysql.html | 377 +
.../airflow/operators/python_operator.html | 727 +
.../airflow/operators/redshift_to_s3_operator.html | 447 +
.../operators/s3_file_transform_operator.html | 465 +
.../airflow/operators/s3_to_hive_operator.html | 594 +
.../airflow/operators/s3_to_redshift_operator.html | 406 +
.../1.10.3/_modules/airflow/operators/sensors.html | 391 +
.../_modules/airflow/operators/slack_operator.html | 435 +
.../airflow/operators/sqlite_operator.html | 351 +
.../airflow/operators/subdag_operator.html | 399 +
docs-archive/1.10.3/_modules/airflow/sensors.html | 360 +
.../airflow/sensors/base_sensor_operator.html | 439 +
.../airflow/sensors/external_task_sensor.html | 451 +
.../_modules/airflow/sensors/hdfs_sensor.html | 420 +
.../airflow/sensors/hive_partition_sensor.html | 372 +
.../_modules/airflow/sensors/http_sensor.html | 389 +
.../sensors/metastore_partition_sensor.html | 380 +
.../sensors/named_hive_partition_sensor.html | 399 +
.../_modules/airflow/sensors/s3_key_sensor.html | 390 +
.../_modules/airflow/sensors/s3_prefix_sensor.html | 379 +
.../_modules/airflow/sensors/sql_sensor.html | 369 +
.../airflow/sensors/time_delta_sensor.html | 343 +
.../_modules/airflow/sensors/time_sensor.html | 337 +
.../_modules/airflow/sensors/web_hdfs_sensor.html | 341 +
.../_modules/airflow/ti_deps/dep_context.html | 425 +
.../ti_deps/deps/not_in_retry_period_dep.html | 348 +
.../airflow/ti_deps/deps/prev_dagrun_dep.html | 381 +
.../airflow/ti_deps/deps/trigger_rule_dep.html | 519 +
.../_modules/airflow/utils/dag_processing.html | 1606 ++
.../1.10.3/_modules/airflow/utils/dates.html | 544 +
docs-archive/1.10.3/_modules/airflow/utils/db.html | 678 +
.../1.10.3/_modules/airflow/utils/decorators.html | 416 +
.../1.10.3/_modules/airflow/utils/email.html | 435 +
.../1.10.3/_modules/airflow/utils/helpers.html | 732 +
.../_modules/airflow/utils/log/logging_mixin.html | 473 +
.../1.10.3/_modules/airflow/utils/net.html | 340 +
.../_modules/airflow/utils/operator_resources.html | 417 +
.../1.10.3/_modules/airflow/utils/sqlalchemy.html | 501 +
.../1.10.3/_modules/airflow/utils/state.html | 417 +
.../1.10.3/_modules/airflow/utils/timeout.html | 353 +
.../_modules/airflow/utils/trigger_rule.html | 345 +
.../1.10.3/_modules/airflow/utils/weight_rule.html | 340 +
docs-archive/1.10.3/_modules/index.html | 610 +
.../_api/airflow/contrib/executors/index.rst.txt | 25 +
.../executors/kubernetes_executor/index.rst.txt | 410 +
.../contrib/executors/mesos_executor/index.rst.txt | 220 +
.../contrib/hooks/aws_athena_hook/index.rst.txt | 176 +
.../contrib/hooks/aws_dynamodb_hook/index.rst.txt | 66 +
.../contrib/hooks/aws_firehose_hook/index.rst.txt | 66 +
.../hooks/aws_glue_catalog_hook/index.rst.txt | 147 +
.../airflow/contrib/hooks/aws_hook/index.rst.txt | 128 +
.../contrib/hooks/aws_lambda_hook/index.rst.txt | 70 +
.../contrib/hooks/aws_sns_hook/index.rst.txt | 67 +
.../azure_container_instance_hook/index.rst.txt | 173 +
.../azure_container_registry_hook/index.rst.txt | 52 +
.../azure_container_volume_hook/index.rst.txt | 60 +
.../contrib/hooks/azure_cosmos_hook/index.rst.txt | 232 +
.../hooks/azure_data_lake_hook/index.rst.txt | 143 +
.../hooks/azure_fileshare_hook/index.rst.txt | 260 +
.../contrib/hooks/bigquery_hook/index.rst.txt | 1257 ++
.../contrib/hooks/cassandra_hook/index.rst.txt | 153 +
.../contrib/hooks/cloudant_hook/index.rst.txt | 65 +
.../contrib/hooks/databricks_hook/index.rst.txt | 385 +
.../contrib/hooks/datadog_hook/index.rst.txt | 133 +
.../contrib/hooks/datastore_hook/index.rst.txt | 215 +
.../contrib/hooks/dingding_hook/index.rst.txt | 107 +
.../hooks/discord_webhook_hook/index.rst.txt | 106 +
.../airflow/contrib/hooks/emr_hook/index.rst.txt | 63 +
.../airflow/contrib/hooks/fs_hook/index.rst.txt | 64 +
.../airflow/contrib/hooks/ftp_hook/index.rst.txt | 319 +
.../contrib/hooks/gcp_api_base_hook/index.rst.txt | 220 +
.../contrib/hooks/gcp_bigtable_hook/index.rst.txt | 243 +
.../contrib/hooks/gcp_compute_hook/index.rst.txt | 351 +
.../contrib/hooks/gcp_container_hook/index.rst.txt | 217 +
.../contrib/hooks/gcp_dataflow_hook/index.rst.txt | 211 +
.../contrib/hooks/gcp_dataproc_hook/index.rst.txt | 287 +
.../contrib/hooks/gcp_function_hook/index.rst.txt | 220 +
.../contrib/hooks/gcp_kms_hook/index.rst.txt | 129 +
.../contrib/hooks/gcp_mlengine_hook/index.rst.txt | 203 +
.../hooks/gcp_natural_language_hook/index.rst.txt | 233 +
.../contrib/hooks/gcp_pubsub_hook/index.rst.txt | 259 +
.../contrib/hooks/gcp_spanner_hook/index.rst.txt | 312 +
.../contrib/hooks/gcp_sql_hook/index.rst.txt | 842 ++
.../contrib/hooks/gcp_transfer_hook/index.rst.txt | 948 ++
.../contrib/hooks/gcp_translate_hook/index.rst.txt | 115 +
.../contrib/hooks/gcp_vision_hook/index.rst.txt | 312 +
.../airflow/contrib/hooks/gcs_hook/index.rst.txt | 427 +
.../airflow/contrib/hooks/imap_hook/index.rst.txt | 357 +
.../_api/airflow/contrib/hooks/index.rst.txt | 186 +
.../contrib/hooks/jenkins_hook/index.rst.txt | 48 +
.../airflow/contrib/hooks/jira_hook/index.rst.txt | 51 +
.../airflow/contrib/hooks/mongo_hook/index.rst.txt | 301 +
.../contrib/hooks/openfaas_hook/index.rst.txt | 143 +
.../hooks/opsgenie_alert_hook/index.rst.txt | 90 +
.../airflow/contrib/hooks/pinot_hook/index.rst.txt | 151 +
.../contrib/hooks/qubole_check_hook/index.rst.txt | 134 +
.../contrib/hooks/qubole_hook/index.rst.txt | 167 +
.../airflow/contrib/hooks/redis_hook/index.rst.txt | 58 +
.../contrib/hooks/redshift_hook/index.rst.txt | 124 +
.../contrib/hooks/sagemaker_hook/index.rst.txt | 676 +
.../contrib/hooks/salesforce_hook/index.rst.txt | 192 +
.../contrib/hooks/segment_hook/index.rst.txt | 66 +
.../airflow/contrib/hooks/sftp_hook/index.rst.txt | 187 +
.../contrib/hooks/slack_webhook_hook/index.rst.txt | 106 +
.../contrib/hooks/snowflake_hook/index.rst.txt | 131 +
.../contrib/hooks/spark_jdbc_hook/index.rst.txt | 155 +
.../contrib/hooks/spark_jdbc_script/index.rst.txt | 68 +
.../contrib/hooks/spark_sql_hook/index.rst.txt | 114 +
.../contrib/hooks/spark_submit_hook/index.rst.txt | 265 +
.../airflow/contrib/hooks/sqoop_hook/index.rst.txt | 214 +
.../airflow/contrib/hooks/ssh_hook/index.rst.txt | 119 +
.../contrib/hooks/vertica_hook/index.rst.txt | 82 +
.../airflow/contrib/hooks/wasb_hook/index.rst.txt | 206 +
.../airflow/contrib/hooks/winrm_hook/index.rst.txt | 107 +
.../operators/adls_list_operator/index.rst.txt | 90 +
.../contrib/operators/adls_to_gcs/index.rst.txt | 126 +
.../operators/aws_athena_operator/index.rst.txt | 103 +
.../operators/awsbatch_operator/index.rst.txt | 157 +
.../index.rst.txt | 190 +
.../operators/azure_cosmos_operator/index.rst.txt | 80 +
.../bigquery_check_operator/index.rst.txt | 163 +
.../operators/bigquery_get_data/index.rst.txt | 111 +
.../operators/bigquery_operator/index.rst.txt | 563 +
.../bigquery_table_delete_operator/index.rst.txt | 84 +
.../operators/bigquery_to_bigquery/index.rst.txt | 108 +
.../operators/bigquery_to_gcs/index.rst.txt | 113 +
.../operators/cassandra_to_gcs/index.rst.txt | 262 +
.../operators/databricks_operator/index.rst.txt | 485 +
.../operators/dataflow_operator/index.rst.txt | 422 +
.../operators/dataproc_operator/index.rst.txt | 1171 ++
.../datastore_export_operator/index.rst.txt | 77 +
.../datastore_import_operator/index.rst.txt | 74 +
.../operators/dingding_operator/index.rst.txt | 87 +
.../discord_webhook_operator/index.rst.txt | 87 +
.../contrib/operators/druid_operator/index.rst.txt | 76 +
.../contrib/operators/ecs_operator/index.rst.txt | 150 +
.../operators/emr_add_steps_operator/index.rst.txt | 88 +
.../emr_create_job_flow_operator/index.rst.txt | 91 +
.../emr_terminate_job_flow_operator/index.rst.txt | 86 +
.../contrib/operators/file_to_gcs/index.rst.txt | 78 +
.../contrib/operators/file_to_wasb/index.rst.txt | 74 +
.../operators/gcp_bigtable_operator/index.rst.txt | 496 +
.../operators/gcp_compute_operator/index.rst.txt | 453 +
.../operators/gcp_container_operator/index.rst.txt | 315 +
.../operators/gcp_function_operator/index.rst.txt | 410 +
.../gcp_natural_language_operator/index.rst.txt | 257 +
.../operators/gcp_spanner_operator/index.rst.txt | 448 +
.../operators/gcp_sql_operator/index.rst.txt | 848 ++
.../operators/gcp_transfer_operator/index.rst.txt | 898 ++
.../operators/gcp_translate_operator/index.rst.txt | 101 +
.../operators/gcp_vision_operator/index.rst.txt | 881 ++
.../operators/gcs_acl_operator/index.rst.txt | 146 +
.../operators/gcs_download_operator/index.rst.txt | 92 +
.../operators/gcs_list_operator/index.rst.txt | 102 +
.../contrib/operators/gcs_operator/index.rst.txt | 125 +
.../contrib/operators/gcs_to_bq/index.rst.txt | 180 +
.../contrib/operators/gcs_to_gcs/index.rst.txt | 152 +
.../contrib/operators/gcs_to_s3/index.rst.txt | 102 +
.../operators/hipchat_operator/index.rst.txt | 140 +
.../operators/hive_to_dynamodb/index.rst.txt | 104 +
.../imap_attachment_to_s3_operator/index.rst.txt | 80 +
.../_api/airflow/contrib/operators/index.rst.txt | 228 +
.../jenkins_job_trigger_operator/index.rst.txt | 168 +
.../contrib/operators/jira_operator/index.rst.txt | 72 +
.../kubernetes_pod_operator/index.rst.txt | 121 +
.../operators/mlengine_operator/index.rst.txt | 429 +
.../contrib/operators/mongo_to_s3/index.rst.txt | 99 +
.../contrib/operators/mysql_to_gcs/index.rst.txt | 241 +
.../opsgenie_alert_operator/index.rst.txt | 115 +
.../index.rst.txt | 101 +
.../oracle_to_oracle_transfer/index.rst.txt | 93 +
.../postgres_to_gcs_operator/index.rst.txt | 173 +
.../operators/pubsub_operator/index.rst.txt | 414 +
.../operators/qubole_check_operator/index.rst.txt | 307 +
.../operators/qubole_operator/index.rst.txt | 242 +
.../s3_copy_object_operator/index.rst.txt | 97 +
.../s3_delete_objects_operator/index.rst.txt | 89 +
.../operators/s3_list_operator/index.rst.txt | 108 +
.../operators/s3_to_gcs_operator/index.rst.txt | 130 +
.../operators/s3_to_sftp_operator/index.rst.txt | 87 +
.../sagemaker_base_operator/index.rst.txt | 129 +
.../index.rst.txt | 68 +
.../sagemaker_endpoint_operator/index.rst.txt | 105 +
.../sagemaker_model_operator/index.rst.txt | 65 +
.../sagemaker_training_operator/index.rst.txt | 88 +
.../sagemaker_transform_operator/index.rst.txt | 98 +
.../sagemaker_tuning_operator/index.rst.txt | 86 +
.../segment_track_event_operator/index.rst.txt | 82 +
.../contrib/operators/sftp_operator/index.rst.txt | 154 +
.../operators/sftp_to_s3_operator/index.rst.txt | 88 +
.../operators/slack_webhook_operator/index.rst.txt | 77 +
.../operators/snowflake_operator/index.rst.txt | 101 +
.../operators/sns_publish_operator/index.rst.txt | 77 +
.../operators/spark_jdbc_operator/index.rst.txt | 144 +
.../operators/spark_sql_operator/index.rst.txt | 108 +
.../operators/spark_submit_operator/index.rst.txt | 138 +
.../contrib/operators/sqoop_operator/index.rst.txt | 90 +
.../contrib/operators/ssh_operator/index.rst.txt | 95 +
.../operators/vertica_operator/index.rst.txt | 88 +
.../operators/vertica_to_hive/index.rst.txt | 119 +
.../operators/vertica_to_mysql/index.rst.txt | 105 +
.../wasb_delete_blob_operator/index.rst.txt | 73 +
.../contrib/operators/winrm_operator/index.rst.txt | 72 +
.../sensors/aws_athena_sensor/index.rst.txt | 134 +
.../index.rst.txt | 106 +
.../aws_redshift_cluster_sensor/index.rst.txt | 64 +
.../sensors/azure_cosmos_sensor/index.rst.txt | 66 +
.../contrib/sensors/bash_sensor/index.rst.txt | 76 +
.../contrib/sensors/bigquery_sensor/index.rst.txt | 87 +
.../sensors/cassandra_record_sensor/index.rst.txt | 68 +
.../sensors/cassandra_table_sensor/index.rst.txt | 66 +
.../contrib/sensors/datadog_sensor/index.rst.txt | 66 +
.../contrib/sensors/emr_base_sensor/index.rst.txt | 61 +
.../sensors/emr_job_flow_sensor/index.rst.txt | 104 +
.../contrib/sensors/emr_step_sensor/index.rst.txt | 106 +
.../contrib/sensors/file_sensor/index.rst.txt | 80 +
.../contrib/sensors/ftp_sensor/index.rst.txt | 134 +
.../sensors/gcp_transfer_sensor/index.rst.txt | 74 +
.../contrib/sensors/gcs_sensor/index.rst.txt | 246 +
.../contrib/sensors/hdfs_sensor/index.rst.txt | 77 +
.../sensors/imap_attachment_sensor/index.rst.txt | 81 +
.../_api/airflow/contrib/sensors/index.rst.txt | 87 +
.../contrib/sensors/jira_sensor/index.rst.txt | 116 +
.../contrib/sensors/mongo_sensor/index.rst.txt | 65 +
.../contrib/sensors/pubsub_sensor/index.rst.txt | 93 +
.../contrib/sensors/python_sensor/index.rst.txt | 84 +
.../contrib/sensors/qubole_sensor/index.rst.txt | 134 +
.../contrib/sensors/redis_key_sensor/index.rst.txt | 70 +
.../sensors/redis_pub_sub_sensor/index.rst.txt | 79 +
.../sensors/sagemaker_base_sensor/index.rst.txt | 102 +
.../sagemaker_endpoint_sensor/index.rst.txt | 106 +
.../sagemaker_training_sensor/index.rst.txt | 116 +
.../sagemaker_transform_sensor/index.rst.txt | 107 +
.../sensors/sagemaker_tuning_sensor/index.rst.txt | 107 +
.../contrib/sensors/sftp_sensor/index.rst.txt | 64 +
.../contrib/sensors/wasb_sensor/index.rst.txt | 119 +
.../contrib/sensors/weekday_sensor/index.rst.txt | 93 +
.../airflow/executors/base_executor/index.rst.txt | 185 +
.../executors/celery_executor/index.rst.txt | 231 +
.../airflow/executors/dask_executor/index.rst.txt | 88 +
.../_sources/_api/airflow/executors/index.rst.txt | 626 +
.../airflow/executors/local_executor/index.rst.txt | 295 +
.../executors/sequential_executor/index.rst.txt | 69 +
.../_api/airflow/hooks/S3_hook/index.rst.txt | 433 +
.../_api/airflow/hooks/base_hook/index.rst.txt | 129 +
.../_api/airflow/hooks/dbapi_hook/index.rst.txt | 300 +
.../_api/airflow/hooks/docker_hook/index.rst.txt | 60 +
.../_api/airflow/hooks/druid_hook/index.rst.txt | 171 +
.../_api/airflow/hooks/hdfs_hook/index.rst.txt | 85 +
.../_api/airflow/hooks/hive_hooks/index.rst.txt | 633 +
.../_api/airflow/hooks/http_hook/index.rst.txt | 150 +
.../_sources/_api/airflow/hooks/index.rst.txt | 107 +
.../_api/airflow/hooks/jdbc_hook/index.rst.txt | 97 +
.../_api/airflow/hooks/mssql_hook/index.rst.txt | 100 +
.../_api/airflow/hooks/mysql_hook/index.rst.txt | 156 +
.../_api/airflow/hooks/oracle_hook/index.rst.txt | 151 +
.../_api/airflow/hooks/pig_hook/index.rst.txt | 68 +
.../_api/airflow/hooks/postgres_hook/index.rst.txt | 148 +
.../_api/airflow/hooks/presto_hook/index.rst.txt | 172 +
.../_api/airflow/hooks/samba_hook/index.rst.txt | 56 +
.../_api/airflow/hooks/slack_hook/index.rst.txt | 56 +
.../_api/airflow/hooks/sqlite_hook/index.rst.txt | 82 +
.../_api/airflow/hooks/webhdfs_hook/index.rst.txt | 128 +
.../_api/airflow/hooks/zendesk_hook/index.rst.txt | 82 +
.../_api/airflow/models/base/index.rst.txt | 71 +
.../_api/airflow/models/connection/index.rst.txt | 304 +
.../_api/airflow/models/dagpickle/index.rst.txt | 102 +
.../_api/airflow/models/errors/index.rst.txt | 88 +
.../_sources/_api/airflow/models/index.rst.txt | 7249 +++++++++
.../_api/airflow/models/kubernetes/index.rst.txt | 153 +
.../_sources/_api/airflow/models/log/index.rst.txt | 150 +
.../_api/airflow/models/skipmixin/index.rst.txt | 49 +
.../_api/airflow/models/slamiss/index.rst.txt | 147 +
.../_api/airflow/models/taskfail/index.rst.txt | 139 +
.../airflow/models/taskreschedule/index.rst.txt | 176 +
.../airflow/operators/bash_operator/index.rst.txt | 111 +
.../airflow/operators/check_operator/index.rst.txt | 321 +
.../operators/dagrun_operator/index.rst.txt | 101 +
.../operators/docker_operator/index.rst.txt | 182 +
.../operators/druid_check_operator/index.rst.txt | 101 +
.../airflow/operators/dummy_operator/index.rst.txt | 60 +
.../airflow/operators/email_operator/index.rst.txt | 100 +
.../operators/generic_transfer/index.rst.txt | 98 +
.../airflow/operators/hive_operator/index.rst.txt | 141 +
.../operators/hive_stats_operator/index.rst.txt | 104 +
.../airflow/operators/hive_to_druid/index.rst.txt | 140 +
.../airflow/operators/hive_to_mysql/index.rst.txt | 107 +
.../operators/hive_to_samba_operator/index.rst.txt | 78 +
.../airflow/operators/http_operator/index.rst.txt | 107 +
.../_sources/_api/airflow/operators/index.rst.txt | 885 ++
.../airflow/operators/jdbc_operator/index.rst.txt | 95 +
.../operators/latest_only_operator/index.rst.txt | 61 +
.../airflow/operators/mssql_operator/index.rst.txt | 94 +
.../airflow/operators/mssql_to_hive/index.rst.txt | 122 +
.../airflow/operators/mysql_operator/index.rst.txt | 96 +
.../airflow/operators/mysql_to_hive/index.rst.txt | 121 +
.../operators/oracle_operator/index.rst.txt | 94 +
.../airflow/operators/pig_operator/index.rst.txt | 116 +
.../operators/postgres_operator/index.rst.txt | 95 +
.../operators/presto_check_operator/index.rst.txt | 151 +
.../operators/presto_to_mysql/index.rst.txt | 98 +
.../operators/python_operator/index.rst.txt | 351 +
.../redshift_to_s3_operator/index.rst.txt | 107 +
.../s3_file_transform_operator/index.rst.txt | 122 +
.../operators/s3_to_hive_operator/index.rst.txt | 166 +
.../s3_to_redshift_operator/index.rst.txt | 107 +
.../_api/airflow/operators/sensors/index.rst.txt | 187 +
.../airflow/operators/slack_operator/index.rst.txt | 145 +
.../operators/sqlite_operator/index.rst.txt | 89 +
.../operators/subdag_operator/index.rst.txt | 79 +
.../sensors/base_sensor_operator/index.rst.txt | 145 +
.../sensors/external_task_sensor/index.rst.txt | 95 +
.../_api/airflow/sensors/hdfs_sensor/index.rst.txt | 105 +
.../sensors/hive_partition_sensor/index.rst.txt | 86 +
.../_api/airflow/sensors/http_sensor/index.rst.txt | 78 +
.../_sources/_api/airflow/sensors/index.rst.txt | 93 +
.../metastore_partition_sensor/index.rst.txt | 86 +
.../named_hive_partition_sensor/index.rst.txt | 98 +
.../airflow/sensors/s3_key_sensor/index.rst.txt | 83 +
.../airflow/sensors/s3_prefix_sensor/index.rst.txt | 85 +
.../_api/airflow/sensors/sql_sensor/index.rst.txt | 90 +
.../sensors/time_delta_sensor/index.rst.txt | 54 +
.../_api/airflow/sensors/time_sensor/index.rst.txt | 51 +
.../airflow/sensors/web_hdfs_sensor/index.rst.txt | 59 +
docs-archive/1.10.3/_sources/_api/index.rst.txt | 129 +
docs-archive/1.10.3/_sources/api.rst.txt | 143 +
docs-archive/1.10.3/_sources/changelog.rst.txt | 21 +
docs-archive/1.10.3/_sources/cli.rst.txt | 32 +
docs-archive/1.10.3/_sources/concepts.rst.txt | 999 ++
docs-archive/1.10.3/_sources/faq.rst.txt | 201 +
.../1.10.3/_sources/howto/check-health.rst.txt | 49 +
.../1.10.3/_sources/howto/connection/aws.rst.txt | 64 +
.../1.10.3/_sources/howto/connection/gcp.rst.txt | 117 +
.../_sources/howto/connection/gcp_sql.rst.txt | 76 +
.../1.10.3/_sources/howto/connection/index.rst.txt | 92 +
.../1.10.3/_sources/howto/connection/mysql.rst.txt | 94 +
.../_sources/howto/connection/oracle.rst.txt | 85 +
.../_sources/howto/connection/postgres.rst.txt | 79 +
.../1.10.3/_sources/howto/connection/ssh.rst.txt | 65 +
.../_sources/howto/executor/use-celery.rst.txt | 71 +
.../_sources/howto/executor/use-dask.rst.txt | 50 +
.../_sources/howto/executor/use-mesos.rst.txt | 82 +
docs-archive/1.10.3/_sources/howto/index.rst.txt | 43 +
.../_sources/howto/initialize-database.rst.txt | 48 +
.../1.10.3/_sources/howto/operator/bash.rst.txt | 62 +
.../_sources/howto/operator/dingding.rst.txt | 91 +
.../_sources/howto/operator/gcp/bigtable.rst.txt | 170 +
.../_sources/howto/operator/gcp/compute.rst.txt | 325 +
.../_sources/howto/operator/gcp/function.rst.txt | 202 +
.../1.10.3/_sources/howto/operator/gcp/gcs.rst.txt | 127 +
.../_sources/howto/operator/gcp/index.rst.txt | 26 +
.../howto/operator/gcp/natural_language.rst.txt | 180 +
.../_sources/howto/operator/gcp/spanner.rst.txt | 276 +
.../1.10.3/_sources/howto/operator/gcp/sql.rst.txt | 644 +
.../_sources/howto/operator/gcp/transfer.rst.txt | 420 +
.../_sources/howto/operator/gcp/translate.rst.txt | 68 +
.../_sources/howto/operator/gcp/vision.rst.txt | 933 ++
.../1.10.3/_sources/howto/operator/index.rst.txt | 34 +
.../1.10.3/_sources/howto/operator/python.rst.txt | 50 +
.../1.10.3/_sources/howto/run-behind-proxy.rst.txt | 82 +
.../1.10.3/_sources/howto/run-with-systemd.rst.txt | 38 +
.../1.10.3/_sources/howto/run-with-upstart.rst.txt | 42 +
.../_sources/howto/secure-connections.rst.txt | 61 +
.../1.10.3/_sources/howto/set-config.rst.txt | 66 +
.../1.10.3/_sources/howto/use-test-config.rst.txt | 32 +
.../1.10.3/_sources/howto/write-logs.rst.txt | 139 +
docs-archive/1.10.3/_sources/index.rst.txt | 97 +
docs-archive/1.10.3/_sources/installation.rst.txt | 137 +
docs-archive/1.10.3/_sources/integration.rst.txt | 722 +
docs-archive/1.10.3/_sources/kubernetes.rst.txt | 144 +
docs-archive/1.10.3/_sources/license.rst.txt | 199 +
docs-archive/1.10.3/_sources/lineage.rst.txt | 111 +
docs-archive/1.10.3/_sources/macros.rst.txt | 118 +
docs-archive/1.10.3/_sources/metrics.rst.txt | 83 +
docs-archive/1.10.3/_sources/plugins.rst.txt | 275 +
docs-archive/1.10.3/_sources/profiling.rst.txt | 58 +
docs-archive/1.10.3/_sources/project.rst.txt | 79 +
docs-archive/1.10.3/_sources/scheduler.rst.txt | 186 +
docs-archive/1.10.3/_sources/security.rst.txt | 592 +
docs-archive/1.10.3/_sources/start.rst.txt | 71 +
docs-archive/1.10.3/_sources/timezone.rst.txt | 163 +
docs-archive/1.10.3/_sources/tutorial.rst.txt | 472 +
docs-archive/1.10.3/_sources/ui.rst.txt | 119 +
docs-archive/1.10.3/_static/basic.css | 748 +
docs-archive/1.10.3/_static/css/badge_only.css | 1 +
docs-archive/1.10.3/_static/css/theme.css | 6 +
docs-archive/1.10.3/_static/doctools.js | 314 +
.../1.10.3/_static/documentation_options.js | 10 +
docs-archive/1.10.3/_static/file.png | Bin 0 -> 286 bytes
.../1.10.3/_static/fonts/Inconsolata-Bold.ttf | Bin 0 -> 109948 bytes
.../1.10.3/_static/fonts/Inconsolata-Regular.ttf | Bin 0 -> 96964 bytes
docs-archive/1.10.3/_static/fonts/Inconsolata.ttf | Bin 0 -> 63184 bytes
docs-archive/1.10.3/_static/fonts/Lato-Bold.ttf | Bin 0 -> 656544 bytes
docs-archive/1.10.3/_static/fonts/Lato-Regular.ttf | Bin 0 -> 656568 bytes
.../1.10.3/_static/fonts/Lato/lato-bold.eot | Bin 0 -> 256056 bytes
.../1.10.3/_static/fonts/Lato/lato-bold.ttf | Bin 0 -> 600856 bytes
.../1.10.3/_static/fonts/Lato/lato-bold.woff | Bin 0 -> 309728 bytes
.../1.10.3/_static/fonts/Lato/lato-bold.woff2 | Bin 0 -> 184912 bytes
.../1.10.3/_static/fonts/Lato/lato-bolditalic.eot | Bin 0 -> 266158 bytes
.../1.10.3/_static/fonts/Lato/lato-bolditalic.ttf | Bin 0 -> 622572 bytes
.../1.10.3/_static/fonts/Lato/lato-bolditalic.woff | Bin 0 -> 323344 bytes
.../_static/fonts/Lato/lato-bolditalic.woff2 | Bin 0 -> 193308 bytes
.../1.10.3/_static/fonts/Lato/lato-italic.eot | Bin 0 -> 268604 bytes
.../1.10.3/_static/fonts/Lato/lato-italic.ttf | Bin 0 -> 639388 bytes
.../1.10.3/_static/fonts/Lato/lato-italic.woff | Bin 0 -> 328412 bytes
.../1.10.3/_static/fonts/Lato/lato-italic.woff2 | Bin 0 -> 195704 bytes
.../1.10.3/_static/fonts/Lato/lato-regular.eot | Bin 0 -> 253461 bytes
.../1.10.3/_static/fonts/Lato/lato-regular.ttf | Bin 0 -> 607720 bytes
.../1.10.3/_static/fonts/Lato/lato-regular.woff | Bin 0 -> 309192 bytes
.../1.10.3/_static/fonts/Lato/lato-regular.woff2 | Bin 0 -> 182708 bytes
.../1.10.3/_static/fonts/RobotoSlab-Bold.ttf | Bin 0 -> 170616 bytes
.../1.10.3/_static/fonts/RobotoSlab-Regular.ttf | Bin 0 -> 169064 bytes
.../fonts/RobotoSlab/roboto-slab-v7-bold.eot | Bin 0 -> 79520 bytes
.../fonts/RobotoSlab/roboto-slab-v7-bold.ttf | Bin 0 -> 170616 bytes
.../fonts/RobotoSlab/roboto-slab-v7-bold.woff | Bin 0 -> 87624 bytes
.../fonts/RobotoSlab/roboto-slab-v7-bold.woff2 | Bin 0 -> 67312 bytes
.../fonts/RobotoSlab/roboto-slab-v7-regular.eot | Bin 0 -> 78331 bytes
.../fonts/RobotoSlab/roboto-slab-v7-regular.ttf | Bin 0 -> 169064 bytes
.../fonts/RobotoSlab/roboto-slab-v7-regular.woff | Bin 0 -> 86288 bytes
.../fonts/RobotoSlab/roboto-slab-v7-regular.woff2 | Bin 0 -> 66444 bytes
.../1.10.3/_static/fonts/fontawesome-webfont.eot | Bin 0 -> 165742 bytes
.../1.10.3/_static/fonts/fontawesome-webfont.svg | 2671 ++++
.../1.10.3/_static/fonts/fontawesome-webfont.ttf | Bin 0 -> 165548 bytes
.../1.10.3/_static/fonts/fontawesome-webfont.woff | Bin 0 -> 98024 bytes
.../1.10.3/_static/fonts/fontawesome-webfont.woff2 | Bin 0 -> 77160 bytes
docs-archive/1.10.3/_static/jquery-3.2.1.js | 10253 +++++++++++++
docs-archive/1.10.3/_static/jquery.js | 4 +
docs-archive/1.10.3/_static/js/modernizr.min.js | 4 +
docs-archive/1.10.3/_static/js/theme.js | 3 +
docs-archive/1.10.3/_static/language_data.js | 297 +
docs-archive/1.10.3/_static/minus.png | Bin 0 -> 90 bytes
docs-archive/1.10.3/_static/plus.png | Bin 0 -> 90 bytes
docs-archive/1.10.3/_static/pygments.css | 69 +
docs-archive/1.10.3/_static/searchtools.js | 505 +
docs-archive/1.10.3/_static/underscore-1.3.1.js | 999 ++
docs-archive/1.10.3/_static/underscore.js | 31 +
docs-archive/1.10.3/api.html | 473 +
docs-archive/1.10.3/changelog.html | 3003 ++++
docs-archive/1.10.3/cli.html | 1594 ++
docs-archive/1.10.3/concepts.html | 1199 ++
docs-archive/1.10.3/faq.html | 479 +
docs-archive/1.10.3/genindex.html | 8090 ++++++++++
docs-archive/1.10.3/howto/check-health.html | 359 +
docs-archive/1.10.3/howto/connection/aws.html | 383 +
docs-archive/1.10.3/howto/connection/gcp.html | 430 +
docs-archive/1.10.3/howto/connection/gcp_sql.html | 393 +
docs-archive/1.10.3/howto/connection/index.html | 408 +
docs-archive/1.10.3/howto/connection/mysql.html | 414 +
docs-archive/1.10.3/howto/connection/oracle.html | 403 +
docs-archive/1.10.3/howto/connection/postgres.html | 399 +
docs-archive/1.10.3/howto/connection/ssh.html | 386 +
docs-archive/1.10.3/howto/executor/use-celery.html | 371 +
docs-archive/1.10.3/howto/executor/use-dask.html | 353 +
docs-archive/1.10.3/howto/executor/use-mesos.html | 395 +
docs-archive/1.10.3/howto/index.html | 372 +
docs-archive/1.10.3/howto/initialize-database.html | 358 +
docs-archive/1.10.3/howto/operator/bash.html | 388 +
docs-archive/1.10.3/howto/operator/dingding.html | 449 +
.../1.10.3/howto/operator/gcp/bigtable.html | 567 +
.../1.10.3/howto/operator/gcp/compute.html | 720 +
.../1.10.3/howto/operator/gcp/function.html | 565 +
docs-archive/1.10.3/howto/operator/gcp/gcs.html | 476 +
docs-archive/1.10.3/howto/operator/gcp/index.html | 363 +
.../howto/operator/gcp/natural_language.html | 535 +
.../1.10.3/howto/operator/gcp/spanner.html | 696 +
docs-archive/1.10.3/howto/operator/gcp/sql.html | 1356 ++
.../1.10.3/howto/operator/gcp/transfer.html | 887 ++
.../1.10.3/howto/operator/gcp/translate.html | 404 +
docs-archive/1.10.3/howto/operator/gcp/vision.html | 1330 ++
docs-archive/1.10.3/howto/operator/index.html | 377 +
docs-archive/1.10.3/howto/operator/python.html | 393 +
docs-archive/1.10.3/howto/run-behind-proxy.html | 393 +
docs-archive/1.10.3/howto/run-with-systemd.html | 343 +
docs-archive/1.10.3/howto/run-with-upstart.html | 353 +
docs-archive/1.10.3/howto/secure-connections.html | 371 +
docs-archive/1.10.3/howto/set-config.html | 368 +
docs-archive/1.10.3/howto/use-test-config.html | 338 +
docs-archive/1.10.3/howto/write-logs.html | 441 +
docs-archive/1.10.3/http-routingtable.html | 371 +
docs-archive/1.10.3/index.html | 957 ++
docs-archive/1.10.3/installation.html | 496 +
docs-archive/1.10.3/integration.html | 910 ++
docs-archive/1.10.3/kubernetes.html | 435 +
docs-archive/1.10.3/license.html | 487 +
docs-archive/1.10.3/lineage.html | 396 +
docs-archive/1.10.3/macros.html | 605 +
docs-archive/1.10.3/metrics.html | 437 +
docs-archive/1.10.3/objects.inv | Bin 0 -> 34724 bytes
docs-archive/1.10.3/plugins.html | 548 +
docs-archive/1.10.3/profiling.html | 348 +
docs-archive/1.10.3/project.html | 368 +
docs-archive/1.10.3/py-modindex.html | 1723 +++
docs-archive/1.10.3/scheduler.html | 489 +
docs-archive/1.10.3/search.html | 314 +
docs-archive/1.10.3/searchindex.js | 1 +
docs-archive/1.10.3/security.html | 860 ++
docs-archive/1.10.3/start.html | 359 +
docs-archive/1.10.3/timezone.html | 441 +
docs-archive/1.10.3/tutorial.html | 742 +
docs-archive/1.10.3/ui.html | 394 +
.../_api/airflow/contrib/executors/index.html | 335 +
.../executors/kubernetes_executor/index.html | 593 +
.../contrib/executors/mesos_executor/index.html | 440 +
.../contrib/hooks/aws_athena_hook/index.html | 461 +
.../contrib/hooks/aws_dynamodb_hook/index.html | 358 +
.../contrib/hooks/aws_firehose_hook/index.html | 354 +
.../contrib/hooks/aws_glue_catalog_hook/index.html | 443 +
.../_api/airflow/contrib/hooks/aws_hook/index.html | 401 +
.../contrib/hooks/aws_lambda_hook/index.html | 360 +
.../airflow/contrib/hooks/aws_sns_hook/index.html | 359 +
.../airflow/contrib/hooks/aws_sqs_hook/index.html | 397 +
.../hooks/azure_container_instance_hook/index.html | 479 +
.../hooks/azure_container_registry_hook/index.html | 349 +
.../hooks/azure_container_volume_hook/index.html | 354 +
.../contrib/hooks/azure_cosmos_hook/index.html | 444 +
.../contrib/hooks/azure_data_lake_hook/index.html | 426 +
.../contrib/hooks/azure_fileshare_hook/index.html | 531 +
.../airflow/contrib/hooks/bigquery_hook/index.html | 1233 ++
.../contrib/hooks/cassandra_hook/index.html | 427 +
.../airflow/contrib/hooks/cloudant_hook/index.html | 353 +
.../contrib/hooks/databricks_hook/index.html | 536 +
.../airflow/contrib/hooks/datadog_hook/index.html | 417 +
.../contrib/hooks/datastore_hook/index.html | 604 +
.../airflow/contrib/hooks/dingding_hook/index.html | 386 +
.../contrib/hooks/discord_webhook_hook/index.html | 396 +
.../_api/airflow/contrib/hooks/emr_hook/index.html | 353 +
.../_api/airflow/contrib/hooks/fs_hook/index.html | 354 +
.../_api/airflow/contrib/hooks/ftp_hook/index.html | 549 +
.../contrib/hooks/gcp_api_base_hook/index.html | 459 +
.../contrib/hooks/gcp_bigtable_hook/index.html | 501 +
.../contrib/hooks/gcp_cloud_build_hook/index.html | 414 +
.../contrib/hooks/gcp_compute_hook/index.html | 587 +
.../contrib/hooks/gcp_container_hook/index.html | 504 +
.../contrib/hooks/gcp_dataflow_hook/index.html | 435 +
.../contrib/hooks/gcp_dataproc_hook/index.html | 491 +
.../airflow/contrib/hooks/gcp_dlp_hook/index.html | 1212 ++
.../contrib/hooks/gcp_function_hook/index.html | 490 +
.../airflow/contrib/hooks/gcp_kms_hook/index.html | 411 +
.../contrib/hooks/gcp_mlengine_hook/index.html | 457 +
.../hooks/gcp_natural_language_hook/index.html | 510 +
.../contrib/hooks/gcp_pubsub_hook/index.html | 513 +
.../contrib/hooks/gcp_spanner_hook/index.html | 584 +
.../hooks/gcp_speech_to_text_hook/index.html | 387 +
.../airflow/contrib/hooks/gcp_sql_hook/index.html | 907 ++
.../hooks/gcp_text_to_speech_hook/index.html | 396 +
.../contrib/hooks/gcp_transfer_hook/index.html | 855 ++
.../contrib/hooks/gcp_translate_hook/index.html | 403 +
.../hooks/gcp_video_intelligence_hook/index.html | 394 +
.../contrib/hooks/gcp_vision_hook/index.html | 543 +
.../_api/airflow/contrib/hooks/gcs_hook/index.html | 655 +
.../airflow/contrib/hooks/grpc_hook/index.html | 357 +
.../airflow/contrib/hooks/imap_hook/index.html | 597 +
.../1.10.4/_api/airflow/contrib/hooks/index.html | 420 +
.../airflow/contrib/hooks/jenkins_hook/index.html | 343 +
.../airflow/contrib/hooks/jira_hook/index.html | 348 +
.../airflow/contrib/hooks/mongo_hook/index.html | 534 +
.../airflow/contrib/hooks/openfaas_hook/index.html | 397 +
.../contrib/hooks/opsgenie_alert_hook/index.html | 378 +
.../airflow/contrib/hooks/pinot_hook/index.html | 405 +
.../contrib/hooks/qubole_check_hook/index.html | 382 +
.../airflow/contrib/hooks/qubole_hook/index.html | 435 +
.../airflow/contrib/hooks/redis_hook/index.html | 346 +
.../airflow/contrib/hooks/redshift_hook/index.html | 408 +
.../contrib/hooks/sagemaker_hook/index.html | 859 ++
.../contrib/hooks/salesforce_hook/index.html | 474 +
.../airflow/contrib/hooks/segment_hook/index.html | 356 +
.../airflow/contrib/hooks/sftp_hook/index.html | 435 +
.../contrib/hooks/slack_webhook_hook/index.html | 385 +
.../contrib/hooks/snowflake_hook/index.html | 386 +
.../contrib/hooks/spark_jdbc_hook/index.html | 419 +
.../contrib/hooks/spark_jdbc_script/index.html | 351 +
.../contrib/hooks/spark_sql_hook/index.html | 398 +
.../contrib/hooks/spark_submit_hook/index.html | 507 +
.../airflow/contrib/hooks/sqoop_hook/index.html | 497 +
.../_api/airflow/contrib/hooks/ssh_hook/index.html | 401 +
.../airflow/contrib/hooks/vertica_hook/index.html | 359 +
.../airflow/contrib/hooks/wasb_hook/index.html | 482 +
.../airflow/contrib/hooks/winrm_hook/index.html | 385 +
.../operators/adls_list_operator/index.html | 383 +
.../contrib/operators/adls_to_gcs/index.html | 414 +
.../operators/aws_athena_operator/index.html | 388 +
.../operators/aws_sqs_publish_operator/index.html | 382 +
.../contrib/operators/awsbatch_operator/index.html | 418 +
.../azure_container_instances_operator/index.html | 457 +
.../operators/azure_cosmos_operator/index.html | 368 +
.../operators/bigquery_check_operator/index.html | 457 +
.../contrib/operators/bigquery_get_data/index.html | 397 +
.../contrib/operators/bigquery_operator/index.html | 711 +
.../bigquery_table_delete_operator/index.html | 372 +
.../operators/bigquery_to_bigquery/index.html | 388 +
.../contrib/operators/bigquery_to_gcs/index.html | 391 +
.../contrib/operators/cassandra_to_gcs/index.html | 505 +
.../operators/databricks_operator/index.html | 699 +
.../contrib/operators/dataflow_operator/index.html | 623 +
.../contrib/operators/dataproc_operator/index.html | 1011 ++
.../operators/datastore_export_operator/index.html | 371 +
.../operators/datastore_import_operator/index.html | 369 +
.../contrib/operators/dingding_operator/index.html | 373 +
.../operators/discord_webhook_operator/index.html | 375 +
.../contrib/operators/druid_operator/index.html | 366 +
.../contrib/operators/ecs_operator/index.html | 408 +
.../operators/emr_add_steps_operator/index.html | 371 +
.../emr_create_job_flow_operator/index.html | 374 +
.../emr_terminate_job_flow_operator/index.html | 370 +
.../contrib/operators/file_to_gcs/index.html | 367 +
.../contrib/operators/file_to_wasb/index.html | 365 +
.../operators/gcp_bigtable_operator/index.html | 616 +
.../operators/gcp_cloud_build_operator/index.html | 450 +
.../operators/gcp_compute_operator/index.html | 600 +
.../operators/gcp_container_operator/index.html | 535 +
.../contrib/operators/gcp_dlp_operator/index.html | 1531 ++
.../operators/gcp_function_operator/index.html | 555 +
.../gcp_natural_language_operator/index.html | 490 +
.../operators/gcp_spanner_operator/index.html | 593 +
.../gcp_speech_to_text_operator/index.html | 381 +
.../contrib/operators/gcp_sql_operator/index.html | 827 +
.../gcp_text_to_speech_operator/index.html | 385 +
.../operators/gcp_transfer_operator/index.html | 890 ++
.../operators/gcp_translate_operator/index.html | 388 +
.../gcp_translate_speech_operator/index.html | 401 +
.../gcp_video_intelligence_operator/index.html | 467 +
.../operators/gcp_vision_operator/index.html | 1073 ++
.../contrib/operators/gcs_acl_operator/index.html | 416 +
.../operators/gcs_delete_operator/index.html | 370 +
.../operators/gcs_download_operator/index.html | 378 +
.../contrib/operators/gcs_list_operator/index.html | 392 +
.../contrib/operators/gcs_operator/index.html | 414 +
.../airflow/contrib/operators/gcs_to_bq/index.html | 444 +
.../contrib/operators/gcs_to_gcs/index.html | 447 +
.../airflow/contrib/operators/gcs_to_s3/index.html | 401 +
.../contrib/operators/hipchat_operator/index.html | 405 +
.../contrib/operators/hive_to_dynamodb/index.html | 380 +
.../imap_attachment_to_s3_operator/index.html | 371 +
.../_api/airflow/contrib/operators/index.html | 449 +
.../jenkins_job_trigger_operator/index.html | 450 +
.../contrib/operators/jira_operator/index.html | 365 +
.../operators/kubernetes_pod_operator/index.html | 408 +
.../contrib/operators/mlengine_operator/index.html | 592 +
.../contrib/operators/mongo_to_s3/index.html | 381 +
.../contrib/operators/mssql_to_gcs/index.html | 401 +
.../contrib/operators/mysql_to_gcs/index.html | 398 +
.../operators/opsgenie_alert_operator/index.html | 394 +
.../oracle_to_azure_data_lake_transfer/index.html | 379 +
.../operators/oracle_to_oracle_transfer/index.html | 375 +
.../operators/postgres_to_gcs_operator/index.html | 383 +
.../contrib/operators/pubsub_operator/index.html | 576 +
.../operators/qubole_check_operator/index.html | 522 +
.../contrib/operators/qubole_operator/index.html | 673 +
.../operators/redis_publish_operator/index.html | 367 +
.../operators/s3_copy_object_operator/index.html | 393 +
.../s3_delete_objects_operator/index.html | 387 +
.../contrib/operators/s3_list_operator/index.html | 403 +
.../operators/s3_to_gcs_operator/index.html | 414 +
.../operators/s3_to_sftp_operator/index.html | 375 +
.../operators/sagemaker_base_operator/index.html | 395 +
.../sagemaker_endpoint_config_operator/index.html | 363 +
.../sagemaker_endpoint_operator/index.html | 392 +
.../operators/sagemaker_model_operator/index.html | 363 +
.../sagemaker_training_operator/index.html | 376 +
.../sagemaker_transform_operator/index.html | 388 +
.../operators/sagemaker_tuning_operator/index.html | 375 +
.../segment_track_event_operator/index.html | 369 +
.../contrib/operators/sftp_operator/index.html | 423 +
.../operators/sftp_to_s3_operator/index.html | 376 +
.../operators/slack_webhook_operator/index.html | 375 +
.../operators/snowflake_operator/index.html | 385 +
.../operators/sns_publish_operator/index.html | 366 +
.../operators/spark_jdbc_operator/index.html | 416 +
.../operators/spark_sql_operator/index.html | 383 +
.../operators/spark_submit_operator/index.html | 402 +
.../contrib/operators/sql_to_gcs/index.html | 472 +
.../contrib/operators/sqoop_operator/index.html | 367 +
.../contrib/operators/ssh_operator/index.html | 380 +
.../contrib/operators/vertica_operator/index.html | 372 +
.../contrib/operators/vertica_to_hive/index.html | 394 +
.../contrib/operators/vertica_to_mysql/index.html | 384 +
.../operators/wasb_delete_blob_operator/index.html | 366 +
.../contrib/operators/winrm_operator/index.html | 364 +
.../contrib/sensors/aws_athena_sensor/index.html | 395 +
.../aws_glue_catalog_partition_sensor/index.html | 385 +
.../sensors/aws_redshift_cluster_sensor/index.html | 360 +
.../contrib/sensors/aws_sqs_sensor/index.html | 373 +
.../contrib/sensors/azure_cosmos_sensor/index.html | 360 +
.../airflow/contrib/sensors/bash_sensor/index.html | 368 +
.../contrib/sensors/bigquery_sensor/index.html | 374 +
.../sensors/cassandra_record_sensor/index.html | 361 +
.../sensors/cassandra_table_sensor/index.html | 359 +
.../contrib/sensors/datadog_sensor/index.html | 363 +
.../contrib/sensors/emr_base_sensor/index.html | 354 +
.../contrib/sensors/emr_job_flow_sensor/index.html | 383 +
.../contrib/sensors/emr_step_sensor/index.html | 386 +
.../airflow/contrib/sensors/file_sensor/index.html | 369 +
.../airflow/contrib/sensors/ftp_sensor/index.html | 388 +
.../contrib/sensors/gcp_transfer_sensor/index.html | 368 +
.../airflow/contrib/sensors/gcs_sensor/index.html | 529 +
.../airflow/contrib/sensors/hdfs_sensor/index.html | 369 +
.../sensors/imap_attachment_sensor/index.html | 379 +
.../1.10.4/_api/airflow/contrib/sensors/index.html | 371 +
.../airflow/contrib/sensors/jira_sensor/index.html | 390 +
.../contrib/sensors/mongo_sensor/index.html | 359 +
.../contrib/sensors/pubsub_sensor/index.html | 372 +
.../contrib/sensors/python_sensor/index.html | 376 +
.../contrib/sensors/qubole_sensor/index.html | 404 +
.../contrib/sensors/redis_key_sensor/index.html | 357 +
.../sensors/redis_pub_sub_sensor/index.html | 367 +
.../sensors/sagemaker_base_sensor/index.html | 380 +
.../sensors/sagemaker_endpoint_sensor/index.html | 383 +
.../sensors/sagemaker_training_sensor/index.html | 391 +
.../sensors/sagemaker_transform_sensor/index.html | 384 +
.../sensors/sagemaker_tuning_sensor/index.html | 384 +
.../airflow/contrib/sensors/sftp_sensor/index.html | 360 +
.../airflow/contrib/sensors/wasb_sensor/index.html | 391 +
.../contrib/sensors/weekday_sensor/index.html | 398 +
.../airflow/executors/base_executor/index.html | 450 +
.../airflow/executors/celery_executor/index.html | 467 +
.../airflow/executors/dask_executor/index.html | 368 +
.../1.10.4/_api/airflow/executors/index.html | 682 +
.../airflow/executors/local_executor/index.html | 492 +
.../executors/sequential_executor/index.html | 357 +
.../1.10.4/_api/airflow/hooks/S3_hook/index.html | 662 +
.../1.10.4/_api/airflow/hooks/base_hook/index.html | 392 +
.../_api/airflow/hooks/dbapi_hook/index.html | 537 +
.../_api/airflow/hooks/docker_hook/index.html | 354 +
.../_api/airflow/hooks/druid_hook/index.html | 412 +
.../1.10.4/_api/airflow/hooks/hdfs_hook/index.html | 364 +
.../_api/airflow/hooks/hive_hooks/index.html | 815 +
.../1.10.4/_api/airflow/hooks/http_hook/index.html | 433 +
docs-archive/1.10.4/_api/airflow/hooks/index.html | 373 +
.../1.10.4/_api/airflow/hooks/jdbc_hook/index.html | 375 +
.../_api/airflow/hooks/mssql_hook/index.html | 369 +
.../_api/airflow/hooks/mysql_hook/index.html | 430 +
.../_api/airflow/hooks/oracle_hook/index.html | 425 +
.../1.10.4/_api/airflow/hooks/pig_hook/index.html | 358 +
.../_api/airflow/hooks/postgres_hook/index.html | 426 +
.../_api/airflow/hooks/presto_hook/index.html | 417 +
.../_api/airflow/hooks/samba_hook/index.html | 348 +
.../_api/airflow/hooks/slack_hook/index.html | 348 +
.../_api/airflow/hooks/sqlite_hook/index.html | 359 +
.../_api/airflow/hooks/webhdfs_hook/index.html | 419 +
.../_api/airflow/hooks/zendesk_hook/index.html | 372 +
.../1.10.4/_api/airflow/models/base/index.html | 351 +
.../_api/airflow/models/baseoperator/index.html | 870 ++
.../1.10.4/_api/airflow/models/chart/index.html | 427 +
.../_api/airflow/models/connection/index.html | 472 +
.../1.10.4/_api/airflow/models/crypto/index.html | 385 +
.../1.10.4/_api/airflow/models/dag/index.html | 1145 ++
.../1.10.4/_api/airflow/models/dagbag/index.html | 440 +
.../_api/airflow/models/dagpickle/index.html | 369 +
.../1.10.4/_api/airflow/models/dagrun/index.html | 556 +
.../1.10.4/_api/airflow/models/errors/index.html | 362 +
docs-archive/1.10.4/_api/airflow/models/index.html | 3564 +++++
.../_api/airflow/models/knownevent/index.html | 418 +
.../_api/airflow/models/kubernetes/index.html | 398 +
.../1.10.4/_api/airflow/models/log/index.html | 388 +
.../1.10.4/_api/airflow/models/pool/index.html | 411 +
.../_api/airflow/models/skipmixin/index.html | 361 +
.../1.10.4/_api/airflow/models/slamiss/index.html | 390 +
.../1.10.4/_api/airflow/models/taskfail/index.html | 383 +
.../_api/airflow/models/taskinstance/index.html | 865 ++
.../_api/airflow/models/taskreschedule/index.html | 405 +
.../1.10.4/_api/airflow/models/user/index.html | 377 +
.../1.10.4/_api/airflow/models/variable/index.html | 428 +
.../1.10.4/_api/airflow/models/xcom/index.html | 444 +
.../airflow/operators/bash_operator/index.html | 389 +
.../airflow/operators/branch_operator/index.html | 369 +
.../airflow/operators/check_operator/index.html | 535 +
.../airflow/operators/dagrun_operator/index.html | 380 +
.../airflow/operators/docker_operator/index.html | 438 +
.../operators/druid_check_operator/index.html | 394 +
.../airflow/operators/dummy_operator/index.html | 353 +
.../airflow/operators/email_operator/index.html | 378 +
.../airflow/operators/generic_transfer/index.html | 378 +
.../airflow/operators/hive_operator/index.html | 407 +
.../operators/hive_stats_operator/index.html | 389 +
.../airflow/operators/hive_to_druid/index.html | 403 +
.../airflow/operators/hive_to_mysql/index.html | 386 +
.../operators/hive_to_samba_operator/index.html | 367 +
.../airflow/operators/http_operator/index.html | 384 +
.../1.10.4/_api/airflow/operators/index.html | 892 ++
.../airflow/operators/jdbc_operator/index.html | 376 +
.../operators/latest_only_operator/index.html | 355 +
.../airflow/operators/mssql_operator/index.html | 375 +
.../airflow/operators/mssql_to_hive/index.html | 396 +
.../airflow/operators/mysql_operator/index.html | 377 +
.../airflow/operators/mysql_to_hive/index.html | 395 +
.../airflow/operators/oracle_operator/index.html | 376 +
.../_api/airflow/operators/pig_operator/index.html | 391 +
.../airflow/operators/postgres_operator/index.html | 376 +
.../operators/presto_check_operator/index.html | 421 +
.../airflow/operators/presto_to_mysql/index.html | 379 +
.../airflow/operators/python_operator/index.html | 541 +
.../operators/redshift_to_s3_operator/index.html | 393 +
.../s3_file_transform_operator/index.html | 405 +
.../operators/s3_to_hive_operator/index.html | 434 +
.../operators/s3_to_redshift_operator/index.html | 393 +
.../_api/airflow/operators/sensors/index.html | 407 +
.../airflow/operators/slack_operator/index.html | 408 +
.../airflow/operators/sqlite_operator/index.html | 372 +
.../airflow/operators/subdag_operator/index.html | 368 +
.../sensors/base_sensor_operator/index.html | 410 +
.../sensors/external_task_sensor/index.html | 381 +
.../_api/airflow/sensors/hdfs_sensor/index.html | 395 +
.../sensors/hive_partition_sensor/index.html | 374 +
.../_api/airflow/sensors/http_sensor/index.html | 371 +
.../1.10.4/_api/airflow/sensors/index.html | 370 +
.../sensors/metastore_partition_sensor/index.html | 374 +
.../sensors/named_hive_partition_sensor/index.html | 382 +
.../_api/airflow/sensors/s3_key_sensor/index.html | 384 +
.../airflow/sensors/s3_prefix_sensor/index.html | 386 +
.../_api/airflow/sensors/sql_sensor/index.html | 392 +
.../airflow/sensors/time_delta_sensor/index.html | 355 +
.../_api/airflow/sensors/time_sensor/index.html | 352 +
.../airflow/sensors/web_hdfs_sensor/index.html | 352 +
docs-archive/1.10.4/_api/index.html | 438 +
docs-archive/1.10.4/_images/adhoc.png | Bin 0 -> 182773 bytes
docs-archive/1.10.4/_images/airflow.gif | Bin 0 -> 622832 bytes
docs-archive/1.10.4/_images/apache.jpg | Bin 0 -> 43364 bytes
docs-archive/1.10.4/_images/branch_bad.png | Bin 0 -> 8825 bytes
docs-archive/1.10.4/_images/branch_good.png | Bin 0 -> 12035 bytes
.../1.10.4/_images/branch_with_trigger.png | Bin 0 -> 34081 bytes
.../1.10.4/_images/branch_without_trigger.png | Bin 0 -> 39815 bytes
docs-archive/1.10.4/_images/chart.png | Bin 0 -> 169382 bytes
docs-archive/1.10.4/_images/chart_form.png | Bin 0 -> 203224 bytes
docs-archive/1.10.4/_images/code.png | Bin 0 -> 285906 bytes
docs-archive/1.10.4/_images/connection_create.png | Bin 0 -> 41547 bytes
docs-archive/1.10.4/_images/connection_edit.png | Bin 0 -> 53636 bytes
docs-archive/1.10.4/_images/connections.png | Bin 0 -> 48442 bytes
docs-archive/1.10.4/_images/context.png | Bin 0 -> 149588 bytes
docs-archive/1.10.4/_images/dags.png | Bin 0 -> 217069 bytes
docs-archive/1.10.4/_images/duration.png | Bin 0 -> 250846 bytes
docs-archive/1.10.4/_images/gantt.png | Bin 0 -> 121795 bytes
docs-archive/1.10.4/_images/graph.png | Bin 0 -> 152205 bytes
.../1.10.4/_images/latest_only_with_trigger.png | Bin 0 -> 49510 bytes
.../1.10.4/_images/operator_extra_link.png | Bin 0 -> 276679 bytes
docs-archive/1.10.4/_images/pin_large.png | Bin 0 -> 358276 bytes
docs-archive/1.10.4/_images/subdag_after.png | Bin 0 -> 30245 bytes
docs-archive/1.10.4/_images/subdag_before.png | Bin 0 -> 70382 bytes
docs-archive/1.10.4/_images/subdag_zoom.png | Bin 0 -> 150185 bytes
docs-archive/1.10.4/_images/tree.png | Bin 0 -> 128024 bytes
docs-archive/1.10.4/_images/variable_hidden.png | Bin 0 -> 154299 bytes
.../example_dags/example_dingding_operator.html | 518 +
.../example_gcp_bigtable_operators.html | 500 +
.../example_dags/example_gcp_cloud_build.html | 401 +
.../contrib/example_dags/example_gcp_compute.html | 409 +
.../example_dags/example_gcp_compute_igm.html | 439 +
.../contrib/example_dags/example_gcp_function.html | 428 +
.../example_dags/example_gcp_natural_language.html | 409 +
.../contrib/example_dags/example_gcp_spanner.html | 493 +
.../contrib/example_dags/example_gcp_speech.html | 397 +
.../contrib/example_dags/example_gcp_sql.html | 718 +
.../example_dags/example_gcp_sql_query.html | 589 +
.../contrib/example_dags/example_gcp_transfer.html | 548 +
.../example_dags/example_gcp_translate.html | 347 +
.../example_gcp_video_intelligence.html | 417 +
.../contrib/example_dags/example_gcp_vision.html | 779 +
.../contrib/example_dags/example_gcs_acl.html | 371 +
.../example_dags/example_gcs_to_bq_operator.html | 362 +
.../contrib/executors/kubernetes_executor.html | 1118 ++
.../airflow/contrib/executors/mesos_executor.html | 621 +
.../1.10.4/_modules/airflow/contrib/hooks.html | 365 +
.../airflow/contrib/hooks/aws_athena_hook.html | 463 +
.../airflow/contrib/hooks/aws_dynamodb_hook.html | 366 +
.../airflow/contrib/hooks/aws_firehose_hook.html | 353 +
.../contrib/hooks/aws_glue_catalog_hook.html | 449 +
.../_modules/airflow/contrib/hooks/aws_hook.html | 502 +
.../airflow/contrib/hooks/aws_lambda_hook.html | 365 +
.../airflow/contrib/hooks/aws_sns_hook.html | 357 +
.../airflow/contrib/hooks/aws_sqs_hook.html | 368 +
.../hooks/azure_container_instance_hook.html | 475 +
.../hooks/azure_container_registry_hook.html | 336 +
.../contrib/hooks/azure_container_volume_hook.html | 351 +
.../airflow/contrib/hooks/azure_cosmos_hook.html | 584 +
.../contrib/hooks/azure_data_lake_hook.html | 438 +
.../contrib/hooks/azure_fileshare_hook.html | 509 +
.../airflow/contrib/hooks/bigquery_hook.html | 2400 +++
.../airflow/contrib/hooks/cassandra_hook.html | 497 +
.../airflow/contrib/hooks/cloudant_hook.html | 380 +
.../airflow/contrib/hooks/databricks_hook.html | 570 +
.../airflow/contrib/hooks/datadog_hook.html | 455 +
.../airflow/contrib/hooks/datastore_hook.html | 637 +
.../airflow/contrib/hooks/dingding_hook.html | 431 +
.../contrib/hooks/discord_webhook_hook.html | 437 +
.../_modules/airflow/contrib/hooks/emr_hook.html | 354 +
.../_modules/airflow/contrib/hooks/fs_hook.html | 343 +
.../_modules/airflow/contrib/hooks/ftp_hook.html | 617 +
.../airflow/contrib/hooks/gcp_api_base_hook.html | 555 +
.../airflow/contrib/hooks/gcp_bigtable_hook.html | 559 +
.../contrib/hooks/gcp_cloud_build_hook.html | 429 +
.../airflow/contrib/hooks/gcp_compute_hook.html | 637 +
.../airflow/contrib/hooks/gcp_container_hook.html | 544 +
.../airflow/contrib/hooks/gcp_dataflow_hook.html | 594 +
.../airflow/contrib/hooks/gcp_dataproc_hook.html | 635 +
.../airflow/contrib/hooks/gcp_dlp_hook.html | 2076 +++
.../airflow/contrib/hooks/gcp_function_hook.html | 495 +
.../airflow/contrib/hooks/gcp_kms_hook.html | 406 +
.../airflow/contrib/hooks/gcp_mlengine_hook.html | 570 +
.../contrib/hooks/gcp_natural_language_hook.html | 514 +
.../airflow/contrib/hooks/gcp_pubsub_hook.html | 582 +
.../airflow/contrib/hooks/gcp_spanner_hook.html | 646 +
.../contrib/hooks/gcp_speech_to_text_hook.html | 370 +
.../airflow/contrib/hooks/gcp_sql_hook.html | 1301 ++
.../contrib/hooks/gcp_text_to_speech_hook.html | 377 +
.../airflow/contrib/hooks/gcp_transfer_hook.html | 694 +
.../airflow/contrib/hooks/gcp_translate_hook.html | 394 +
.../contrib/hooks/gcp_video_intelligence_hook.html | 402 +
.../airflow/contrib/hooks/gcp_vision_hook.html | 871 ++
.../_modules/airflow/contrib/hooks/gcs_hook.html | 891 ++
.../_modules/airflow/contrib/hooks/grpc_hook.html | 420 +
.../_modules/airflow/contrib/hooks/imap_hook.html | 613 +
.../airflow/contrib/hooks/jenkins_hook.html | 345 +
.../_modules/airflow/contrib/hooks/jira_hook.html | 383 +
.../_modules/airflow/contrib/hooks/mongo_hook.html | 594 +
.../airflow/contrib/hooks/openfaas_hook.html | 396 +
.../airflow/contrib/hooks/opsgenie_alert_hook.html | 385 +
.../_modules/airflow/contrib/hooks/pinot_hook.html | 402 +
.../airflow/contrib/hooks/qubole_check_hook.html | 414 +
.../airflow/contrib/hooks/qubole_hook.html | 558 +
.../_modules/airflow/contrib/hooks/redis_hook.html | 363 +
.../airflow/contrib/hooks/redshift_hook.html | 410 +
.../airflow/contrib/hooks/sagemaker_hook.html | 1067 ++
.../airflow/contrib/hooks/salesforce_hook.html | 622 +
.../airflow/contrib/hooks/segment_hook.html | 387 +
.../_modules/airflow/contrib/hooks/sftp_hook.html | 511 +
.../airflow/contrib/hooks/slack_webhook_hook.html | 431 +
.../airflow/contrib/hooks/snowflake_hook.html | 431 +
.../airflow/contrib/hooks/spark_jdbc_hook.html | 543 +
.../airflow/contrib/hooks/spark_jdbc_script.html | 443 +
.../airflow/contrib/hooks/spark_sql_hook.html | 461 +
.../airflow/contrib/hooks/spark_submit_hook.html | 883 ++
.../_modules/airflow/contrib/hooks/sqoop_hook.html | 652 +
.../_modules/airflow/contrib/hooks/ssh_hook.html | 546 +
.../airflow/contrib/hooks/vertica_hook.html | 350 +
.../_modules/airflow/contrib/hooks/wasb_hook.html | 488 +
.../_modules/airflow/contrib/hooks/winrm_hook.html | 531 +
.../1.10.4/_modules/airflow/contrib/operators.html | 348 +
.../contrib/operators/adls_list_operator.html | 369 +
.../airflow/contrib/operators/adls_to_gcs.html | 446 +
.../contrib/operators/aws_athena_operator.html | 417 +
.../operators/aws_sqs_publish_operator.html | 378 +
.../contrib/operators/awsbatch_operator.html | 478 +
.../azure_container_instances_operator.html | 642 +
.../contrib/operators/azure_cosmos_operator.html | 366 +
.../contrib/operators/bigquery_check_operator.html | 450 +
.../contrib/operators/bigquery_get_data.html | 413 +
.../contrib/operators/bigquery_operator.html | 993 ++
.../operators/bigquery_table_delete_operator.html | 365 +
.../contrib/operators/bigquery_to_bigquery.html | 392 +
.../airflow/contrib/operators/bigquery_to_gcs.html | 402 +
.../contrib/operators/cassandra_to_gcs.html | 651 +
.../contrib/operators/databricks_operator.html | 783 +
.../contrib/operators/dataflow_operator.html | 722 +
.../contrib/operators/dataproc_operator.html | 1531 ++
.../operators/datastore_export_operator.html | 407 +
.../operators/datastore_import_operator.html | 395 +
.../contrib/operators/dingding_operator.html | 371 +
.../operators/discord_webhook_operator.html | 395 +
.../airflow/contrib/operators/druid_operator.html | 361 +
.../airflow/contrib/operators/ecs_operator.html | 474 +
.../contrib/operators/emr_add_steps_operator.html | 360 +
.../operators/emr_create_job_flow_operator.html | 371 +
.../operators/emr_terminate_job_flow_operator.html | 354 +
.../airflow/contrib/operators/file_to_gcs.html | 379 +
.../airflow/contrib/operators/file_to_wasb.html | 361 +
.../contrib/operators/gcp_bigtable_operator.html | 788 +
.../operators/gcp_cloud_build_operator.html | 493 +
.../contrib/operators/gcp_compute_operator.html | 781 +
.../contrib/operators/gcp_container_operator.html | 619 +
.../contrib/operators/gcp_dlp_operator.html | 2418 +++
.../contrib/operators/gcp_function_operator.html | 625 +
.../operators/gcp_natural_language_operator.html | 559 +
.../contrib/operators/gcp_spanner_operator.html | 729 +
.../operators/gcp_speech_to_text_operator.html | 387 +
.../contrib/operators/gcp_sql_operator.html | 1103 ++
.../operators/gcp_text_to_speech_operator.html | 426 +
.../contrib/operators/gcp_transfer_operator.html | 1095 ++
.../contrib/operators/gcp_translate_operator.html | 410 +
.../operators/gcp_translate_speech_operator.html | 456 +
.../operators/gcp_video_intelligence_operator.html | 542 +
.../contrib/operators/gcp_vision_operator.html | 1552 ++
.../contrib/operators/gcs_acl_operator.html | 431 +
.../contrib/operators/gcs_delete_operator.html | 380 +
.../contrib/operators/gcs_download_operator.html | 388 +
.../contrib/operators/gcs_list_operator.html | 391 +
.../airflow/contrib/operators/gcs_operator.html | 428 +
.../airflow/contrib/operators/gcs_to_bq.html | 578 +
.../airflow/contrib/operators/gcs_to_gcs.html | 496 +
.../airflow/contrib/operators/gcs_to_s3.html | 437 +
.../contrib/operators/hipchat_operator.html | 432 +
.../contrib/operators/hive_to_dynamodb.html | 406 +
.../operators/imap_attachment_to_s3_operator.html | 387 +
.../operators/jenkins_job_trigger_operator.html | 541 +
.../airflow/contrib/operators/jira_operator.html | 391 +
.../contrib/operators/kubernetes_pod_operator.html | 536 +
.../contrib/operators/mlengine_operator.html | 928 ++
.../airflow/contrib/operators/mongo_to_s3.html | 424 +
.../airflow/contrib/operators/mssql_to_gcs.html | 393 +
.../airflow/contrib/operators/mysql_to_gcs.html | 429 +
.../contrib/operators/opsgenie_alert_operator.html | 428 +
.../oracle_to_azure_data_lake_transfer.html | 412 +
.../operators/oracle_to_oracle_transfer.html | 388 +
.../operators/postgres_to_gcs_operator.html | 401 +
.../airflow/contrib/operators/pubsub_operator.html | 730 +
.../contrib/operators/qubole_check_operator.html | 525 +
.../airflow/contrib/operators/qubole_operator.html | 516 +
.../contrib/operators/redis_publish_operator.html | 363 +
.../contrib/operators/s3_copy_object_operator.html | 393 +
.../operators/s3_delete_objects_operator.html | 384 +
.../contrib/operators/s3_list_operator.html | 396 +
.../contrib/operators/s3_to_gcs_operator.html | 504 +
.../contrib/operators/s3_to_sftp_operator.html | 382 +
.../contrib/operators/sagemaker_base_operator.html | 399 +
.../sagemaker_endpoint_config_operator.html | 363 +
.../operators/sagemaker_endpoint_operator.html | 447 +
.../operators/sagemaker_model_operator.html | 364 +
.../operators/sagemaker_training_operator.html | 395 +
.../operators/sagemaker_transform_operator.html | 421 +
.../operators/sagemaker_tuning_operator.html | 396 +
.../operators/segment_track_event_operator.html | 369 +
.../airflow/contrib/operators/sftp_operator.html | 477 +
.../contrib/operators/sftp_to_s3_operator.html | 388 +
.../contrib/operators/slack_webhook_operator.html | 399 +
.../contrib/operators/snowflake_operator.html | 374 +
.../contrib/operators/sns_publish_operator.html | 362 +
.../contrib/operators/spark_jdbc_operator.html | 511 +
.../contrib/operators/spark_sql_operator.html | 408 +
.../contrib/operators/spark_submit_operator.html | 476 +
.../airflow/contrib/operators/sql_to_gcs.html | 572 +
.../airflow/contrib/operators/sqoop_operator.html | 535 +
.../airflow/contrib/operators/ssh_operator.html | 476 +
.../contrib/operators/vertica_operator.html | 346 +
.../airflow/contrib/operators/vertica_to_hive.html | 436 +
.../contrib/operators/vertica_to_mysql.html | 452 +
.../operators/wasb_delete_blob_operator.html | 367 +
.../airflow/contrib/operators/winrm_operator.html | 446 +
.../airflow/contrib/sensors/aws_athena_sensor.html | 374 +
.../sensors/aws_glue_catalog_partition_sensor.html | 388 +
.../sensors/aws_redshift_cluster_sensor.html | 347 +
.../airflow/contrib/sensors/aws_sqs_sensor.html | 388 +
.../contrib/sensors/azure_cosmos_sensor.html | 362 +
.../airflow/contrib/sensors/bash_sensor.html | 386 +
.../airflow/contrib/sensors/bigquery_sensor.html | 365 +
.../contrib/sensors/cassandra_record_sensor.html | 356 +
.../contrib/sensors/cassandra_table_sensor.html | 351 +
.../airflow/contrib/sensors/datadog_sensor.html | 378 +
.../airflow/contrib/sensors/emr_base_sensor.html | 355 +
.../contrib/sensors/emr_job_flow_sensor.html | 358 +
.../airflow/contrib/sensors/emr_step_sensor.html | 362 +
.../airflow/contrib/sensors/file_sensor.html | 366 +
.../airflow/contrib/sensors/ftp_sensor.html | 395 +
.../contrib/sensors/gcp_transfer_sensor.html | 375 +
.../airflow/contrib/sensors/gcs_sensor.html | 609 +
.../airflow/contrib/sensors/hdfs_sensor.html | 369 +
.../contrib/sensors/imap_attachment_sensor.html | 371 +
.../airflow/contrib/sensors/jira_sensor.html | 446 +
.../airflow/contrib/sensors/mongo_sensor.html | 353 +
.../airflow/contrib/sensors/pubsub_sensor.html | 400 +
.../airflow/contrib/sensors/python_sensor.html | 375 +
.../airflow/contrib/sensors/qubole_sensor.html | 407 +
.../airflow/contrib/sensors/redis_key_sensor.html | 334 +
.../contrib/sensors/redis_pub_sub_sensor.html | 368 +
.../contrib/sensors/sagemaker_base_sensor.html | 369 +
.../contrib/sensors/sagemaker_endpoint_sensor.html | 356 +
.../contrib/sensors/sagemaker_training_sensor.html | 397 +
.../sensors/sagemaker_transform_sensor.html | 357 +
.../contrib/sensors/sagemaker_tuning_sensor.html | 357 +
.../airflow/contrib/sensors/sftp_sensor.html | 347 +
.../airflow/contrib/sensors/wasb_sensor.html | 390 +
.../airflow/contrib/sensors/weekday_sensor.html | 400 +
.../example_dags/example_bash_operator.html | 368 +
.../example_dags/example_python_operator.html | 369 +
.../1.10.4/_modules/airflow/exceptions.html | 419 +
.../1.10.4/_modules/airflow/executors.html | 394 +
.../_modules/airflow/executors/base_executor.html | 509 +
.../airflow/executors/celery_executor.html | 591 +
.../_modules/airflow/executors/dask_executor.html | 394 +
.../_modules/airflow/executors/local_executor.html | 531 +
.../airflow/executors/sequential_executor.html | 354 +
docs-archive/1.10.4/_modules/airflow/hooks.html | 391 +
.../1.10.4/_modules/airflow/hooks/S3_hook.html | 840 +
.../1.10.4/_modules/airflow/hooks/base_hook.html | 399 +
.../1.10.4/_modules/airflow/hooks/dbapi_hook.html | 602 +
.../1.10.4/_modules/airflow/hooks/docker_hook.html | 385 +
.../1.10.4/_modules/airflow/hooks/druid_hook.html | 462 +
.../1.10.4/_modules/airflow/hooks/hdfs_hook.html | 395 +
.../1.10.4/_modules/airflow/hooks/hive_hooks.html | 1282 ++
.../1.10.4/_modules/airflow/hooks/http_hook.html | 510 +
.../1.10.4/_modules/airflow/hooks/jdbc_hook.html | 358 +
.../1.10.4/_modules/airflow/hooks/mssql_hook.html | 352 +
.../1.10.4/_modules/airflow/hooks/mysql_hook.html | 471 +
.../1.10.4/_modules/airflow/hooks/oracle_hook.html | 528 +
.../1.10.4/_modules/airflow/hooks/pig_hook.html | 397 +
.../_modules/airflow/hooks/postgres_hook.html | 458 +
.../1.10.4/_modules/airflow/hooks/presto_hook.html | 437 +
.../1.10.4/_modules/airflow/hooks/samba_hook.html | 349 +
.../1.10.4/_modules/airflow/hooks/slack_hook.html | 359 +
.../1.10.4/_modules/airflow/hooks/sqlite_hook.html | 338 +
.../_modules/airflow/hooks/webhdfs_hook.html | 429 +
.../_modules/airflow/hooks/zendesk_hook.html | 409 +
docs-archive/1.10.4/_modules/airflow/macros.html | 405 +
.../1.10.4/_modules/airflow/macros/hive.html | 415 +
docs-archive/1.10.4/_modules/airflow/models.html | 336 +
.../1.10.4/_modules/airflow/models/base.html | 332 +
.../_modules/airflow/models/baseoperator.html | 1314 ++
.../1.10.4/_modules/airflow/models/chart.html | 347 +
.../1.10.4/_modules/airflow/models/connection.html | 596 +
.../1.10.4/_modules/airflow/models/crypto.html | 394 +
.../1.10.4/_modules/airflow/models/dag.html | 1868 +++
.../1.10.4/_modules/airflow/models/dagbag.html | 738 +
.../1.10.4/_modules/airflow/models/dagpickle.html | 349 +
.../1.10.4/_modules/airflow/models/dagrun.html | 743 +
.../1.10.4/_modules/airflow/models/errors.html | 328 +
.../1.10.4/_modules/airflow/models/knownevent.html | 351 +
.../1.10.4/_modules/airflow/models/kubernetes.html | 376 +
.../1.10.4/_modules/airflow/models/log.html | 365 +
.../1.10.4/_modules/airflow/models/pool.html | 405 +
.../1.10.4/_modules/airflow/models/skipmixin.html | 399 +
.../1.10.4/_modules/airflow/models/slamiss.html | 345 +
.../1.10.4/_modules/airflow/models/taskfail.html | 352 +
.../_modules/airflow/models/taskinstance.html | 1705 +++
.../_modules/airflow/models/taskreschedule.html | 382 +
.../1.10.4/_modules/airflow/models/user.html | 337 +
.../1.10.4/_modules/airflow/models/variable.html | 446 +
.../1.10.4/_modules/airflow/models/xcom.html | 531 +
.../1.10.4/_modules/airflow/operators.html | 418 +
.../_modules/airflow/operators/bash_operator.html | 440 +
.../airflow/operators/branch_operator.html | 349 +
.../_modules/airflow/operators/check_operator.html | 631 +
.../airflow/operators/dagrun_operator.html | 394 +
.../airflow/operators/docker_operator.html | 574 +
.../airflow/operators/druid_check_operator.html | 388 +
.../_modules/airflow/operators/dummy_operator.html | 334 +
.../_modules/airflow/operators/email_operator.html | 375 +
.../airflow/operators/generic_transfer.html | 378 +
.../_modules/airflow/operators/hive_operator.html | 439 +
.../airflow/operators/hive_stats_operator.html | 481 +
.../_modules/airflow/operators/hive_to_druid.html | 543 +
.../_modules/airflow/operators/hive_to_mysql.html | 411 +
.../airflow/operators/hive_to_samba_operator.html | 364 +
.../_modules/airflow/operators/http_operator.html | 396 +
.../_modules/airflow/operators/jdbc_operator.html | 360 +
.../airflow/operators/latest_only_operator.html | 362 +
.../_modules/airflow/operators/mssql_operator.html | 360 +
.../_modules/airflow/operators/mssql_to_hive.html | 436 +
.../_modules/airflow/operators/mysql_operator.html | 364 +
.../_modules/airflow/operators/mysql_to_hive.html | 441 +
.../airflow/operators/oracle_operator.html | 360 +
.../_modules/airflow/operators/pig_operator.html | 374 +
.../airflow/operators/postgres_operator.html | 364 +
.../airflow/operators/presto_check_operator.html | 424 +
.../airflow/operators/presto_to_mysql.html | 377 +
.../airflow/operators/python_operator.html | 713 +
.../airflow/operators/redshift_to_s3_operator.html | 447 +
.../operators/s3_file_transform_operator.html | 465 +
.../airflow/operators/s3_to_hive_operator.html | 594 +
.../airflow/operators/s3_to_redshift_operator.html | 406 +
.../1.10.4/_modules/airflow/operators/sensors.html | 391 +
.../_modules/airflow/operators/slack_operator.html | 435 +
.../airflow/operators/sqlite_operator.html | 351 +
.../airflow/operators/subdag_operator.html | 399 +
docs-archive/1.10.4/_modules/airflow/sensors.html | 360 +
.../airflow/sensors/base_sensor_operator.html | 438 +
.../airflow/sensors/external_task_sensor.html | 451 +
.../_modules/airflow/sensors/hdfs_sensor.html | 420 +
.../airflow/sensors/hive_partition_sensor.html | 372 +
.../_modules/airflow/sensors/http_sensor.html | 389 +
.../sensors/metastore_partition_sensor.html | 380 +
.../sensors/named_hive_partition_sensor.html | 399 +
.../_modules/airflow/sensors/s3_key_sensor.html | 390 +
.../_modules/airflow/sensors/s3_prefix_sensor.html | 379 +
.../_modules/airflow/sensors/sql_sensor.html | 399 +
.../airflow/sensors/time_delta_sensor.html | 343 +
.../_modules/airflow/sensors/time_sensor.html | 337 +
.../_modules/airflow/sensors/web_hdfs_sensor.html | 341 +
.../_modules/airflow/utils/log/logging_mixin.html | 473 +
docs-archive/1.10.4/_modules/index.html | 627 +
.../_api/airflow/contrib/executors/index.rst.txt | 16 +
.../executors/kubernetes_executor/index.rst.txt | 255 +
.../contrib/executors/mesos_executor/index.rst.txt | 116 +
.../contrib/hooks/aws_athena_hook/index.rst.txt | 120 +
.../contrib/hooks/aws_dynamodb_hook/index.rst.txt | 35 +
.../contrib/hooks/aws_firehose_hook/index.rst.txt | 34 +
.../hooks/aws_glue_catalog_hook/index.rst.txt | 103 +
.../airflow/contrib/hooks/aws_hook/index.rst.txt | 72 +
.../contrib/hooks/aws_lambda_hook/index.rst.txt | 39 +
.../contrib/hooks/aws_sns_hook/index.rst.txt | 35 +
.../contrib/hooks/aws_sqs_hook/index.rst.txt | 62 +
.../azure_container_instance_hook/index.rst.txt | 128 +
.../azure_container_registry_hook/index.rst.txt | 25 +
.../azure_container_volume_hook/index.rst.txt | 30 +
.../contrib/hooks/azure_cosmos_hook/index.rst.txt | 124 +
.../hooks/azure_data_lake_hook/index.rst.txt | 103 +
.../hooks/azure_fileshare_hook/index.rst.txt | 196 +
.../contrib/hooks/bigquery_hook/index.rst.txt | 924 ++
.../contrib/hooks/cassandra_hook/index.rst.txt | 107 +
.../contrib/hooks/cloudant_hook/index.rst.txt | 34 +
.../contrib/hooks/databricks_hook/index.rst.txt | 195 +
.../contrib/hooks/datadog_hook/index.rst.txt | 94 +
.../contrib/hooks/datastore_hook/index.rst.txt | 217 +
.../contrib/hooks/dingding_hook/index.rst.txt | 67 +
.../hooks/discord_webhook_hook/index.rst.txt | 70 +
.../airflow/contrib/hooks/emr_hook/index.rst.txt | 32 +
.../airflow/contrib/hooks/fs_hook/index.rst.txt | 34 +
.../airflow/contrib/hooks/ftp_hook/index.rst.txt | 218 +
.../contrib/hooks/gcp_api_base_hook/index.rst.txt | 139 +
.../contrib/hooks/gcp_bigtable_hook/index.rst.txt | 178 +
.../hooks/gcp_cloud_build_hook/index.rst.txt | 81 +
.../contrib/hooks/gcp_compute_hook/index.rst.txt | 237 +
.../contrib/hooks/gcp_container_hook/index.rst.txt | 157 +
.../contrib/hooks/gcp_dataflow_hook/index.rst.txt | 111 +
.../contrib/hooks/gcp_dataproc_hook/index.rst.txt | 169 +
.../contrib/hooks/gcp_dlp_hook/index.rst.txt | 919 ++
.../contrib/hooks/gcp_function_hook/index.rst.txt | 137 +
.../contrib/hooks/gcp_kms_hook/index.rst.txt | 71 +
.../contrib/hooks/gcp_mlengine_hook/index.rst.txt | 132 +
.../hooks/gcp_natural_language_hook/index.rst.txt | 175 +
.../contrib/hooks/gcp_pubsub_hook/index.rst.txt | 174 +
.../contrib/hooks/gcp_spanner_hook/index.rst.txt | 235 +
.../hooks/gcp_speech_to_text_hook/index.rst.txt | 58 +
.../contrib/hooks/gcp_sql_hook/index.rst.txt | 535 +
.../hooks/gcp_text_to_speech_hook/index.rst.txt | 64 +
.../contrib/hooks/gcp_transfer_hook/index.rst.txt | 468 +
.../contrib/hooks/gcp_translate_hook/index.rst.txt | 77 +
.../gcp_video_intelligence_hook/index.rst.txt | 72 +
.../contrib/hooks/gcp_vision_hook/index.rst.txt | 232 +
.../airflow/contrib/hooks/gcs_hook/index.rst.txt | 318 +
.../airflow/contrib/hooks/grpc_hook/index.rst.txt | 36 +
.../airflow/contrib/hooks/imap_hook/index.rst.txt | 235 +
.../_api/airflow/contrib/hooks/index.rst.txt | 101 +
.../contrib/hooks/jenkins_hook/index.rst.txt | 21 +
.../airflow/contrib/hooks/jira_hook/index.rst.txt | 24 +
.../airflow/contrib/hooks/mongo_hook/index.rst.txt | 218 +
.../contrib/hooks/openfaas_hook/index.rst.txt | 72 +
.../hooks/opsgenie_alert_hook/index.rst.txt | 54 +
.../airflow/contrib/hooks/pinot_hook/index.rst.txt | 84 +
.../contrib/hooks/qubole_check_hook/index.rst.txt | 48 +
.../contrib/hooks/qubole_hook/index.rst.txt | 98 +
.../airflow/contrib/hooks/redis_hook/index.rst.txt | 28 +
.../contrib/hooks/redshift_hook/index.rst.txt | 79 +
.../contrib/hooks/sagemaker_hook/index.rst.txt | 454 +
.../contrib/hooks/salesforce_hook/index.rst.txt | 138 +
.../contrib/hooks/segment_hook/index.rst.txt | 36 +
.../airflow/contrib/hooks/sftp_hook/index.rst.txt | 124 +
.../contrib/hooks/slack_webhook_hook/index.rst.txt | 71 +
.../contrib/hooks/snowflake_hook/index.rst.txt | 70 +
.../contrib/hooks/spark_jdbc_hook/index.rst.txt | 119 +
.../contrib/hooks/spark_jdbc_script/index.rst.txt | 20 +
.../contrib/hooks/spark_sql_hook/index.rst.txt | 76 +
.../contrib/hooks/spark_submit_hook/index.rst.txt | 197 +
.../airflow/contrib/hooks/sqoop_hook/index.rst.txt | 154 +
.../airflow/contrib/hooks/ssh_hook/index.rst.txt | 78 +
.../contrib/hooks/vertica_hook/index.rst.txt | 38 +
.../airflow/contrib/hooks/wasb_hook/index.rst.txt | 150 +
.../airflow/contrib/hooks/winrm_hook/index.rst.txt | 77 +
.../operators/adls_list_operator/index.rst.txt | 51 +
.../contrib/operators/adls_to_gcs/index.rst.txt | 87 +
.../operators/aws_athena_operator/index.rst.txt | 66 +
.../aws_sqs_publish_operator/index.rst.txt | 51 +
.../operators/awsbatch_operator/index.rst.txt | 93 +
.../index.rst.txt | 140 +
.../operators/azure_cosmos_operator/index.rst.txt | 41 +
.../bigquery_check_operator/index.rst.txt | 127 +
.../operators/bigquery_get_data/index.rst.txt | 72 +
.../operators/bigquery_operator/index.rst.txt | 426 +
.../bigquery_table_delete_operator/index.rst.txt | 45 +
.../operators/bigquery_to_bigquery/index.rst.txt | 63 +
.../operators/bigquery_to_gcs/index.rst.txt | 68 +
.../operators/cassandra_to_gcs/index.rst.txt | 183 +
.../operators/databricks_operator/index.rst.txt | 356 +
.../operators/dataflow_operator/index.rst.txt | 306 +
.../operators/dataproc_operator/index.rst.txt | 739 +
.../datastore_export_operator/index.rst.txt | 50 +
.../datastore_import_operator/index.rst.txt | 47 +
.../operators/dingding_operator/index.rst.txt | 48 +
.../discord_webhook_operator/index.rst.txt | 53 +
.../contrib/operators/druid_operator/index.rst.txt | 37 +
.../contrib/operators/ecs_operator/index.rst.txt | 87 +
.../operators/emr_add_steps_operator/index.rst.txt | 43 +
.../emr_create_job_flow_operator/index.rst.txt | 46 +
.../emr_terminate_job_flow_operator/index.rst.txt | 41 +
.../contrib/operators/file_to_gcs/index.rst.txt | 44 +
.../contrib/operators/file_to_wasb/index.rst.txt | 40 +
.../operators/gcp_bigtable_operator/index.rst.txt | 288 +
.../gcp_cloud_build_operator/index.rst.txt | 123 +
.../operators/gcp_compute_operator/index.rst.txt | 275 +
.../operators/gcp_container_operator/index.rst.txt | 206 +
.../operators/gcp_dlp_operator/index.rst.txt | 1241 ++
.../operators/gcp_function_operator/index.rst.txt | 218 +
.../gcp_natural_language_operator/index.rst.txt | 155 +
.../operators/gcp_spanner_operator/index.rst.txt | 261 +
.../gcp_speech_to_text_operator/index.rst.txt | 55 +
.../operators/gcp_sql_operator/index.rst.txt | 504 +
.../gcp_text_to_speech_operator/index.rst.txt | 62 +
.../operators/gcp_transfer_operator/index.rst.txt | 555 +
.../operators/gcp_translate_operator/index.rst.txt | 68 +
.../gcp_translate_speech_operator/index.rst.txt | 88 +
.../gcp_video_intelligence_operator/index.rst.txt | 144 +
.../operators/gcp_vision_operator/index.rst.txt | 753 +
.../operators/gcs_acl_operator/index.rst.txt | 90 +
.../operators/gcs_delete_operator/index.rst.txt | 43 +
.../operators/gcs_download_operator/index.rst.txt | 53 +
.../operators/gcs_list_operator/index.rst.txt | 63 +
.../contrib/operators/gcs_operator/index.rst.txt | 87 +
.../contrib/operators/gcs_to_bq/index.rst.txt | 139 +
.../contrib/operators/gcs_to_gcs/index.rst.txt | 124 +
.../contrib/operators/gcs_to_s3/index.rst.txt | 71 +
.../operators/hipchat_operator/index.rst.txt | 80 +
.../operators/hive_to_dynamodb/index.rst.txt | 59 +
.../imap_attachment_to_s3_operator/index.rst.txt | 46 +
.../_api/airflow/contrib/operators/index.rst.txt | 126 +
.../jenkins_job_trigger_operator/index.rst.txt | 101 +
.../contrib/operators/jira_operator/index.rst.txt | 39 +
.../kubernetes_pod_operator/index.rst.txt | 106 +
.../operators/mlengine_operator/index.rst.txt | 316 +
.../contrib/operators/mongo_to_s3/index.rst.txt | 57 +
.../contrib/operators/mssql_to_gcs/index.rst.txt | 73 +
.../contrib/operators/mysql_to_gcs/index.rst.txt | 71 +
.../opsgenie_alert_operator/index.rst.txt | 77 +
.../index.rst.txt | 59 +
.../oracle_to_oracle_transfer/index.rst.txt | 51 +
.../postgres_to_gcs_operator/index.rst.txt | 60 +
.../operators/pubsub_operator/index.rst.txt | 259 +
.../operators/qubole_check_operator/index.rst.txt | 183 +
.../operators/qubole_operator/index.rst.txt | 214 +
.../operators/redis_publish_operator/index.rst.txt | 38 +
.../s3_copy_object_operator/index.rst.txt | 64 +
.../s3_delete_objects_operator/index.rst.txt | 56 +
.../operators/s3_list_operator/index.rst.txt | 69 +
.../operators/s3_to_gcs_operator/index.rst.txt | 88 +
.../operators/s3_to_sftp_operator/index.rst.txt | 50 +
.../sagemaker_base_operator/index.rst.txt | 66 +
.../index.rst.txt | 35 +
.../sagemaker_endpoint_operator/index.rst.txt | 72 +
.../sagemaker_model_operator/index.rst.txt | 35 +
.../sagemaker_training_operator/index.rst.txt | 52 +
.../sagemaker_transform_operator/index.rst.txt | 65 +
.../sagemaker_tuning_operator/index.rst.txt | 50 +
.../segment_track_event_operator/index.rst.txt | 43 +
.../contrib/operators/sftp_operator/index.rst.txt | 89 +
.../operators/sftp_to_s3_operator/index.rst.txt | 51 +
.../operators/slack_webhook_operator/index.rst.txt | 55 +
.../operators/snowflake_operator/index.rst.txt | 59 +
.../operators/sns_publish_operator/index.rst.txt | 38 +
.../operators/spark_jdbc_operator/index.rst.txt | 113 +
.../operators/spark_sql_operator/index.rst.txt | 65 +
.../operators/spark_submit_operator/index.rst.txt | 95 +
.../contrib/operators/sql_to_gcs/index.rst.txt | 157 +
.../contrib/operators/sqoop_operator/index.rst.txt | 45 +
.../contrib/operators/ssh_operator/index.rst.txt | 56 +
.../operators/vertica_operator/index.rst.txt | 43 +
.../operators/vertica_to_hive/index.rst.txt | 71 +
.../operators/vertica_to_mysql/index.rst.txt | 60 +
.../wasb_delete_blob_operator/index.rst.txt | 40 +
.../contrib/operators/winrm_operator/index.rst.txt | 39 +
.../sensors/aws_athena_sensor/index.rst.txt | 68 +
.../index.rst.txt | 62 +
.../aws_redshift_cluster_sensor/index.rst.txt | 31 +
.../contrib/sensors/aws_sqs_sensor/index.rst.txt | 43 +
.../sensors/azure_cosmos_sensor/index.rst.txt | 33 +
.../contrib/sensors/bash_sensor/index.rst.txt | 42 +
.../contrib/sensors/bigquery_sensor/index.rst.txt | 48 +
.../sensors/cassandra_record_sensor/index.rst.txt | 35 +
.../sensors/cassandra_table_sensor/index.rst.txt | 33 +
.../contrib/sensors/datadog_sensor/index.rst.txt | 33 +
.../contrib/sensors/emr_base_sensor/index.rst.txt | 28 +
.../sensors/emr_job_flow_sensor/index.rst.txt | 55 +
.../contrib/sensors/emr_step_sensor/index.rst.txt | 57 +
.../contrib/sensors/file_sensor/index.rst.txt | 41 +
.../contrib/sensors/ftp_sensor/index.rst.txt | 65 +
.../sensors/gcp_transfer_sensor/index.rst.txt | 41 +
.../contrib/sensors/gcs_sensor/index.rst.txt | 194 +
.../contrib/sensors/hdfs_sensor/index.rst.txt | 37 +
.../sensors/imap_attachment_sensor/index.rst.txt | 47 +
.../_api/airflow/contrib/sensors/index.rst.txt | 48 +
.../contrib/sensors/jira_sensor/index.rst.txt | 63 +
.../contrib/sensors/mongo_sensor/index.rst.txt | 32 +
.../contrib/sensors/pubsub_sensor/index.rst.txt | 50 +
.../contrib/sensors/python_sensor/index.rst.txt | 51 +
.../contrib/sensors/qubole_sensor/index.rst.txt | 67 +
.../contrib/sensors/redis_key_sensor/index.rst.txt | 31 +
.../sensors/redis_pub_sub_sensor/index.rst.txt | 39 +
.../sensors/sagemaker_base_sensor/index.rst.txt | 54 +
.../sagemaker_endpoint_sensor/index.rst.txt | 55 +
.../sagemaker_training_sensor/index.rst.txt | 62 +
.../sagemaker_transform_sensor/index.rst.txt | 56 +
.../sensors/sagemaker_tuning_sensor/index.rst.txt | 56 +
.../contrib/sensors/sftp_sensor/index.rst.txt | 31 +
.../contrib/sensors/wasb_sensor/index.rst.txt | 63 +
.../contrib/sensors/weekday_sensor/index.rst.txt | 66 +
.../airflow/executors/base_executor/index.rst.txt | 120 +
.../executors/celery_executor/index.rst.txt | 115 +
.../airflow/executors/dask_executor/index.rst.txt | 46 +
.../_sources/_api/airflow/executors/index.rst.txt | 337 +
.../airflow/executors/local_executor/index.rst.txt | 171 +
.../executors/sequential_executor/index.rst.txt | 36 +
.../_api/airflow/hooks/S3_hook/index.rst.txt | 333 +
.../_api/airflow/hooks/base_hook/index.rst.txt | 70 +
.../_api/airflow/hooks/dbapi_hook/index.rst.txt | 198 +
.../_api/airflow/hooks/docker_hook/index.rst.txt | 30 +
.../_api/airflow/hooks/druid_hook/index.rst.txt | 92 +
.../_api/airflow/hooks/hdfs_hook/index.rst.txt | 40 +
.../_api/airflow/hooks/hive_hooks/index.rst.txt | 469 +
.../_api/airflow/hooks/http_hook/index.rst.txt | 106 +
.../_sources/_api/airflow/hooks/index.rst.txt | 51 +
.../_api/airflow/hooks/jdbc_hook/index.rst.txt | 50 +
.../_api/airflow/hooks/mssql_hook/index.rst.txt | 48 +
.../_api/airflow/hooks/mysql_hook/index.rst.txt | 104 +
.../_api/airflow/hooks/oracle_hook/index.rst.txt | 99 +
.../_api/airflow/hooks/pig_hook/index.rst.txt | 37 +
.../_api/airflow/hooks/postgres_hook/index.rst.txt | 106 +
.../_api/airflow/hooks/presto_hook/index.rst.txt | 98 +
.../_api/airflow/hooks/samba_hook/index.rst.txt | 26 +
.../_api/airflow/hooks/slack_hook/index.rst.txt | 26 +
.../_api/airflow/hooks/sqlite_hook/index.rst.txt | 38 +
.../_api/airflow/hooks/webhdfs_hook/index.rst.txt | 85 +
.../_api/airflow/hooks/zendesk_hook/index.rst.txt | 47 +
.../_api/airflow/models/base/index.rst.txt | 29 +
.../_api/airflow/models/baseoperator/index.rst.txt | 589 +
.../_api/airflow/models/chart/index.rst.txt | 104 +
.../_api/airflow/models/connection/index.rst.txt | 147 +
.../_api/airflow/models/crypto/index.rst.txt | 56 +
.../_sources/_api/airflow/models/dag/index.rst.txt | 796 +
.../_api/airflow/models/dagbag/index.rst.txt | 118 +
.../_api/airflow/models/dagpickle/index.rst.txt | 48 +
.../_api/airflow/models/dagrun/index.rst.txt | 230 +
.../_api/airflow/models/errors/index.rst.txt | 39 +
.../_sources/_api/airflow/models/index.rst.txt | 3261 ++++
.../_api/airflow/models/knownevent/index.rst.txt | 94 +
.../_api/airflow/models/kubernetes/index.rst.txt | 74 +
.../_sources/_api/airflow/models/log/index.rst.txt | 66 +
.../_api/airflow/models/pool/index.rst.txt | 92 +
.../_api/airflow/models/skipmixin/index.rst.txt | 35 +
.../_api/airflow/models/slamiss/index.rst.txt | 68 +
.../_api/airflow/models/taskfail/index.rst.txt | 61 +
.../_api/airflow/models/taskinstance/index.rst.txt | 549 +
.../airflow/models/taskreschedule/index.rst.txt | 82 +
.../_api/airflow/models/user/index.rst.txt | 54 +
.../_api/airflow/models/variable/index.rst.txt | 101 +
.../_api/airflow/models/xcom/index.rst.txt | 122 +
.../airflow/operators/bash_operator/index.rst.txt | 62 +
.../operators/branch_operator/index.rst.txt | 47 +
.../airflow/operators/check_operator/index.rst.txt | 205 +
.../operators/dagrun_operator/index.rst.txt | 51 +
.../operators/docker_operator/index.rst.txt | 135 +
.../operators/druid_check_operator/index.rst.txt | 66 +
.../airflow/operators/dummy_operator/index.rst.txt | 27 +
.../airflow/operators/email_operator/index.rst.txt | 55 +
.../operators/generic_transfer/index.rst.txt | 53 +
.../airflow/operators/hive_operator/index.rst.txt | 84 +
.../operators/hive_stats_operator/index.rst.txt | 62 +
.../airflow/operators/hive_to_druid/index.rst.txt | 81 +
.../airflow/operators/hive_to_mysql/index.rst.txt | 62 +
.../operators/hive_to_samba_operator/index.rst.txt | 39 +
.../airflow/operators/http_operator/index.rst.txt | 62 +
.../_sources/_api/airflow/operators/index.rst.txt | 617 +
.../airflow/operators/jdbc_operator/index.rst.txt | 50 +
.../operators/latest_only_operator/index.rst.txt | 30 +
.../airflow/operators/mssql_operator/index.rst.txt | 49 +
.../airflow/operators/mssql_to_hive/index.rst.txt | 74 +
.../airflow/operators/mysql_operator/index.rst.txt | 51 +
.../airflow/operators/mysql_to_hive/index.rst.txt | 73 +
.../operators/oracle_operator/index.rst.txt | 49 +
.../airflow/operators/pig_operator/index.rst.txt | 64 +
.../operators/postgres_operator/index.rst.txt | 50 +
.../operators/presto_check_operator/index.rst.txt | 90 +
.../operators/presto_to_mysql/index.rst.txt | 53 +
.../operators/python_operator/index.rst.txt | 226 +
.../redshift_to_s3_operator/index.rst.txt | 62 +
.../s3_file_transform_operator/index.rst.txt | 77 +
.../operators/s3_to_hive_operator/index.rst.txt | 112 +
.../s3_to_redshift_operator/index.rst.txt | 62 +
.../_api/airflow/operators/sensors/index.rst.txt | 69 +
.../airflow/operators/slack_operator/index.rst.txt | 84 +
.../operators/sqlite_operator/index.rst.txt | 44 +
.../operators/subdag_operator/index.rst.txt | 40 +
.../sensors/base_sensor_operator/index.rst.txt | 85 +
.../sensors/external_task_sensor/index.rst.txt | 56 +
.../_api/airflow/sensors/hdfs_sensor/index.rst.txt | 58 +
.../sensors/hive_partition_sensor/index.rst.txt | 47 +
.../_api/airflow/sensors/http_sensor/index.rst.txt | 45 +
.../_sources/_api/airflow/sensors/index.rst.txt | 44 +
.../metastore_partition_sensor/index.rst.txt | 47 +
.../named_hive_partition_sensor/index.rst.txt | 53 +
.../airflow/sensors/s3_key_sensor/index.rst.txt | 50 +
.../airflow/sensors/s3_prefix_sensor/index.rst.txt | 52 +
.../_api/airflow/sensors/sql_sensor/index.rst.txt | 58 +
.../sensors/time_delta_sensor/index.rst.txt | 27 +
.../_api/airflow/sensors/time_sensor/index.rst.txt | 24 +
.../airflow/sensors/web_hdfs_sensor/index.rst.txt | 26 +
docs-archive/1.10.4/_sources/_api/index.rst.txt | 129 +
docs-archive/1.10.4/_sources/api.rst.txt | 143 +
docs-archive/1.10.4/_sources/changelog.rst.txt | 21 +
docs-archive/1.10.4/_sources/cli.rst.txt | 32 +
docs-archive/1.10.4/_sources/concepts.rst.txt | 1144 ++
docs-archive/1.10.4/_sources/faq.rst.txt | 212 +
.../1.10.4/_sources/howto/check-health.rst.txt | 49 +
.../1.10.4/_sources/howto/connection/aws.rst.txt | 64 +
.../1.10.4/_sources/howto/connection/gcp.rst.txt | 119 +
.../_sources/howto/connection/gcp_sql.rst.txt | 76 +
.../1.10.4/_sources/howto/connection/grpc.rst.txt | 73 +
.../1.10.4/_sources/howto/connection/index.rst.txt | 92 +
.../1.10.4/_sources/howto/connection/mysql.rst.txt | 94 +
.../_sources/howto/connection/oracle.rst.txt | 85 +
.../_sources/howto/connection/postgres.rst.txt | 79 +
.../1.10.4/_sources/howto/connection/ssh.rst.txt | 65 +
.../_sources/howto/define_extra_link.rst.txt | 56 +
.../_sources/howto/executor/use-celery.rst.txt | 72 +
.../_sources/howto/executor/use-dask.rst.txt | 50 +
.../_sources/howto/executor/use-mesos.rst.txt | 82 +
docs-archive/1.10.4/_sources/howto/index.rst.txt | 44 +
.../_sources/howto/initialize-database.rst.txt | 48 +
.../1.10.4/_sources/howto/operator/bash.rst.txt | 62 +
.../_sources/howto/operator/dingding.rst.txt | 91 +
.../_sources/howto/operator/gcp/bigtable.rst.txt | 170 +
.../howto/operator/gcp/cloud_build.rst.txt | 115 +
.../_sources/howto/operator/gcp/compute.rst.txt | 325 +
.../_sources/howto/operator/gcp/function.rst.txt | 202 +
.../1.10.4/_sources/howto/operator/gcp/gcs.rst.txt | 127 +
.../_sources/howto/operator/gcp/index.rst.txt | 26 +
.../howto/operator/gcp/natural_language.rst.txt | 180 +
.../_sources/howto/operator/gcp/spanner.rst.txt | 276 +
.../_sources/howto/operator/gcp/speech.rst.txt | 125 +
.../1.10.4/_sources/howto/operator/gcp/sql.rst.txt | 644 +
.../_sources/howto/operator/gcp/transfer.rst.txt | 420 +
.../howto/operator/gcp/translate-speech.rst.txt | 72 +
.../_sources/howto/operator/gcp/translate.rst.txt | 68 +
.../_sources/howto/operator/gcp/video.rst.txt | 199 +
.../_sources/howto/operator/gcp/vision.rst.txt | 1182 ++
.../1.10.4/_sources/howto/operator/index.rst.txt | 34 +
.../1.10.4/_sources/howto/operator/python.rst.txt | 50 +
.../1.10.4/_sources/howto/run-behind-proxy.rst.txt | 82 +
.../1.10.4/_sources/howto/run-with-systemd.rst.txt | 38 +
.../1.10.4/_sources/howto/run-with-upstart.rst.txt | 42 +
.../_sources/howto/secure-connections.rst.txt | 61 +
.../1.10.4/_sources/howto/set-config.rst.txt | 66 +
.../1.10.4/_sources/howto/use-test-config.rst.txt | 32 +
.../1.10.4/_sources/howto/write-logs.rst.txt | 184 +
docs-archive/1.10.4/_sources/index.rst.txt | 97 +
docs-archive/1.10.4/_sources/installation.rst.txt | 136 +
docs-archive/1.10.4/_sources/integration.rst.txt | 902 ++
docs-archive/1.10.4/_sources/kubernetes.rst.txt | 167 +
docs-archive/1.10.4/_sources/license.rst.txt | 199 +
docs-archive/1.10.4/_sources/lineage.rst.txt | 111 +
docs-archive/1.10.4/_sources/macros.rst.txt | 121 +
docs-archive/1.10.4/_sources/metrics.rst.txt | 90 +
docs-archive/1.10.4/_sources/plugins.rst.txt | 300 +
docs-archive/1.10.4/_sources/profiling.rst.txt | 58 +
docs-archive/1.10.4/_sources/project.rst.txt | 88 +
docs-archive/1.10.4/_sources/scheduler.rst.txt | 186 +
docs-archive/1.10.4/_sources/security.rst.txt | 592 +
docs-archive/1.10.4/_sources/start.rst.txt | 71 +
docs-archive/1.10.4/_sources/timezone.rst.txt | 163 +
docs-archive/1.10.4/_sources/tutorial.rst.txt | 472 +
docs-archive/1.10.4/_sources/ui.rst.txt | 119 +
docs-archive/1.10.4/_static/basic.css | 763 +
docs-archive/1.10.4/_static/css/badge_only.css | 1 +
docs-archive/1.10.4/_static/css/theme.css | 6 +
docs-archive/1.10.4/_static/doctools.js | 314 +
.../1.10.4/_static/documentation_options.js | 10 +
docs-archive/1.10.4/_static/file.png | Bin 0 -> 286 bytes
.../1.10.4/_static/fonts/Inconsolata-Bold.ttf | Bin 0 -> 109948 bytes
.../1.10.4/_static/fonts/Inconsolata-Regular.ttf | Bin 0 -> 96964 bytes
docs-archive/1.10.4/_static/fonts/Inconsolata.ttf | Bin 0 -> 63184 bytes
docs-archive/1.10.4/_static/fonts/Lato-Bold.ttf | Bin 0 -> 656544 bytes
docs-archive/1.10.4/_static/fonts/Lato-Regular.ttf | Bin 0 -> 656568 bytes
.../1.10.4/_static/fonts/Lato/lato-bold.eot | Bin 0 -> 256056 bytes
.../1.10.4/_static/fonts/Lato/lato-bold.ttf | Bin 0 -> 600856 bytes
.../1.10.4/_static/fonts/Lato/lato-bold.woff | Bin 0 -> 309728 bytes
.../1.10.4/_static/fonts/Lato/lato-bold.woff2 | Bin 0 -> 184912 bytes
.../1.10.4/_static/fonts/Lato/lato-bolditalic.eot | Bin 0 -> 266158 bytes
.../1.10.4/_static/fonts/Lato/lato-bolditalic.ttf | Bin 0 -> 622572 bytes
.../1.10.4/_static/fonts/Lato/lato-bolditalic.woff | Bin 0 -> 323344 bytes
.../_static/fonts/Lato/lato-bolditalic.woff2 | Bin 0 -> 193308 bytes
.../1.10.4/_static/fonts/Lato/lato-italic.eot | Bin 0 -> 268604 bytes
.../1.10.4/_static/fonts/Lato/lato-italic.ttf | Bin 0 -> 639388 bytes
.../1.10.4/_static/fonts/Lato/lato-italic.woff | Bin 0 -> 328412 bytes
.../1.10.4/_static/fonts/Lato/lato-italic.woff2 | Bin 0 -> 195704 bytes
.../1.10.4/_static/fonts/Lato/lato-regular.eot | Bin 0 -> 253461 bytes
.../1.10.4/_static/fonts/Lato/lato-regular.ttf | Bin 0 -> 607720 bytes
.../1.10.4/_static/fonts/Lato/lato-regular.woff | Bin 0 -> 309192 bytes
.../1.10.4/_static/fonts/Lato/lato-regular.woff2 | Bin 0 -> 182708 bytes
.../1.10.4/_static/fonts/RobotoSlab-Bold.ttf | Bin 0 -> 170616 bytes
.../1.10.4/_static/fonts/RobotoSlab-Regular.ttf | Bin 0 -> 169064 bytes
.../fonts/RobotoSlab/roboto-slab-v7-bold.eot | Bin 0 -> 79520 bytes
.../fonts/RobotoSlab/roboto-slab-v7-bold.ttf | Bin 0 -> 170616 bytes
.../fonts/RobotoSlab/roboto-slab-v7-bold.woff | Bin 0 -> 87624 bytes
.../fonts/RobotoSlab/roboto-slab-v7-bold.woff2 | Bin 0 -> 67312 bytes
.../fonts/RobotoSlab/roboto-slab-v7-regular.eot | Bin 0 -> 78331 bytes
.../fonts/RobotoSlab/roboto-slab-v7-regular.ttf | Bin 0 -> 169064 bytes
.../fonts/RobotoSlab/roboto-slab-v7-regular.woff | Bin 0 -> 86288 bytes
.../fonts/RobotoSlab/roboto-slab-v7-regular.woff2 | Bin 0 -> 66444 bytes
.../1.10.4/_static/fonts/fontawesome-webfont.eot | Bin 0 -> 165742 bytes
.../1.10.4/_static/fonts/fontawesome-webfont.svg | 2671 ++++
.../1.10.4/_static/fonts/fontawesome-webfont.ttf | Bin 0 -> 165548 bytes
.../1.10.4/_static/fonts/fontawesome-webfont.woff | Bin 0 -> 98024 bytes
.../1.10.4/_static/fonts/fontawesome-webfont.woff2 | Bin 0 -> 77160 bytes
docs-archive/1.10.4/_static/jquery-3.2.1.js | 10253 +++++++++++++
docs-archive/1.10.4/_static/jquery.js | 4 +
docs-archive/1.10.4/_static/js/modernizr.min.js | 4 +
docs-archive/1.10.4/_static/js/theme.js | 3 +
docs-archive/1.10.4/_static/language_data.js | 297 +
docs-archive/1.10.4/_static/minus.png | Bin 0 -> 90 bytes
docs-archive/1.10.4/_static/plus.png | Bin 0 -> 90 bytes
docs-archive/1.10.4/_static/pygments.css | 69 +
docs-archive/1.10.4/_static/searchtools.js | 506 +
docs-archive/1.10.4/_static/underscore-1.3.1.js | 999 ++
docs-archive/1.10.4/_static/underscore.js | 31 +
docs-archive/1.10.4/api.html | 473 +
docs-archive/1.10.4/changelog.html | 3347 ++++
docs-archive/1.10.4/cli.html | 1594 ++
docs-archive/1.10.4/concepts.html | 1312 ++
docs-archive/1.10.4/faq.html | 490 +
docs-archive/1.10.4/genindex.html | 9584 ++++++++++++
docs-archive/1.10.4/howto/check-health.html | 360 +
docs-archive/1.10.4/howto/connection/aws.html | 385 +
docs-archive/1.10.4/howto/connection/gcp.html | 433 +
docs-archive/1.10.4/howto/connection/gcp_sql.html | 395 +
docs-archive/1.10.4/howto/connection/grpc.html | 397 +
docs-archive/1.10.4/howto/connection/index.html | 411 +
docs-archive/1.10.4/howto/connection/mysql.html | 416 +
docs-archive/1.10.4/howto/connection/oracle.html | 405 +
docs-archive/1.10.4/howto/connection/postgres.html | 401 +
docs-archive/1.10.4/howto/connection/ssh.html | 388 +
docs-archive/1.10.4/howto/define_extra_link.html | 361 +
docs-archive/1.10.4/howto/executor/use-celery.html | 373 +
docs-archive/1.10.4/howto/executor/use-dask.html | 354 +
docs-archive/1.10.4/howto/executor/use-mesos.html | 396 +
docs-archive/1.10.4/howto/index.html | 375 +
docs-archive/1.10.4/howto/initialize-database.html | 359 +
docs-archive/1.10.4/howto/operator/bash.html | 389 +
docs-archive/1.10.4/howto/operator/dingding.html | 462 +
.../1.10.4/howto/operator/gcp/bigtable.html | 573 +
.../1.10.4/howto/operator/gcp/cloud_build.html | 463 +
.../1.10.4/howto/operator/gcp/compute.html | 711 +
.../1.10.4/howto/operator/gcp/function.html | 565 +
docs-archive/1.10.4/howto/operator/gcp/gcs.html | 476 +
docs-archive/1.10.4/howto/operator/gcp/index.html | 374 +
.../howto/operator/gcp/natural_language.html | 541 +
.../1.10.4/howto/operator/gcp/spanner.html | 687 +
docs-archive/1.10.4/howto/operator/gcp/speech.html | 471 +
docs-archive/1.10.4/howto/operator/gcp/sql.html | 1335 ++
.../1.10.4/howto/operator/gcp/transfer.html | 866 ++
.../howto/operator/gcp/translate-speech.html | 415 +
.../1.10.4/howto/operator/gcp/translate.html | 407 +
docs-archive/1.10.4/howto/operator/gcp/video.html | 549 +
docs-archive/1.10.4/howto/operator/gcp/vision.html | 1519 ++
docs-archive/1.10.4/howto/operator/index.html | 383 +
docs-archive/1.10.4/howto/operator/python.html | 394 +
docs-archive/1.10.4/howto/run-behind-proxy.html | 394 +
docs-archive/1.10.4/howto/run-with-systemd.html | 344 +
docs-archive/1.10.4/howto/run-with-upstart.html | 354 +
docs-archive/1.10.4/howto/secure-connections.html | 372 +
docs-archive/1.10.4/howto/set-config.html | 369 +
docs-archive/1.10.4/howto/use-test-config.html | 339 +
docs-archive/1.10.4/howto/write-logs.html | 480 +
docs-archive/1.10.4/http-routingtable.html | 371 +
docs-archive/1.10.4/index.html | 983 ++
docs-archive/1.10.4/installation.html | 495 +
docs-archive/1.10.4/integration.html | 1061 ++
docs-archive/1.10.4/kubernetes.html | 454 +
docs-archive/1.10.4/license.html | 487 +
docs-archive/1.10.4/lineage.html | 396 +
docs-archive/1.10.4/macros.html | 633 +
docs-archive/1.10.4/metrics.html | 456 +
docs-archive/1.10.4/objects.inv | Bin 0 -> 39815 bytes
docs-archive/1.10.4/plugins.html | 571 +
docs-archive/1.10.4/profiling.html | 348 +
docs-archive/1.10.4/project.html | 377 +
docs-archive/1.10.4/py-modindex.html | 1883 +++
docs-archive/1.10.4/scheduler.html | 489 +
docs-archive/1.10.4/search.html | 314 +
docs-archive/1.10.4/searchindex.js | 1 +
docs-archive/1.10.4/security.html | 860 ++
docs-archive/1.10.4/start.html | 359 +
docs-archive/1.10.4/timezone.html | 441 +
docs-archive/1.10.4/tutorial.html | 742 +
docs-archive/1.10.4/ui.html | 394 +
docs-archive/1.10.5/.buildinfo | 4 +
.../_api/airflow/contrib/executors/index.html | 367 +
.../executors/kubernetes_executor/index.html | 625 +
.../contrib/executors/mesos_executor/index.html | 472 +
.../contrib/hooks/aws_athena_hook/index.html | 493 +
.../contrib/hooks/aws_dynamodb_hook/index.html | 390 +
.../contrib/hooks/aws_firehose_hook/index.html | 386 +
.../contrib/hooks/aws_glue_catalog_hook/index.html | 475 +
.../_api/airflow/contrib/hooks/aws_hook/index.html | 433 +
.../contrib/hooks/aws_lambda_hook/index.html | 392 +
.../airflow/contrib/hooks/aws_logs_hook/index.html | 423 +
.../airflow/contrib/hooks/aws_sns_hook/index.html | 391 +
.../airflow/contrib/hooks/aws_sqs_hook/index.html | 429 +
.../hooks/azure_container_instance_hook/index.html | 511 +
.../hooks/azure_container_registry_hook/index.html | 381 +
.../hooks/azure_container_volume_hook/index.html | 386 +
.../contrib/hooks/azure_cosmos_hook/index.html | 476 +
.../contrib/hooks/azure_data_lake_hook/index.html | 458 +
.../contrib/hooks/azure_fileshare_hook/index.html | 563 +
.../airflow/contrib/hooks/bigquery_hook/index.html | 1315 ++
.../contrib/hooks/cassandra_hook/index.html | 459 +
.../airflow/contrib/hooks/cloudant_hook/index.html | 385 +
.../contrib/hooks/databricks_hook/index.html | 568 +
.../airflow/contrib/hooks/datadog_hook/index.html | 449 +
.../contrib/hooks/datastore_hook/index.html | 636 +
.../airflow/contrib/hooks/dingding_hook/index.html | 418 +
.../contrib/hooks/discord_webhook_hook/index.html | 428 +
.../_api/airflow/contrib/hooks/emr_hook/index.html | 385 +
.../_api/airflow/contrib/hooks/fs_hook/index.html | 386 +
.../_api/airflow/contrib/hooks/ftp_hook/index.html | 581 +
.../contrib/hooks/gcp_api_base_hook/index.html | 505 +
.../contrib/hooks/gcp_bigtable_hook/index.html | 533 +
.../contrib/hooks/gcp_cloud_build_hook/index.html | 446 +
.../contrib/hooks/gcp_compute_hook/index.html | 619 +
.../contrib/hooks/gcp_container_hook/index.html | 536 +
.../contrib/hooks/gcp_dataflow_hook/index.html | 467 +
.../contrib/hooks/gcp_dataproc_hook/index.html | 534 +
.../airflow/contrib/hooks/gcp_dlp_hook/index.html | 1244 ++
.../contrib/hooks/gcp_function_hook/index.html | 522 +
.../airflow/contrib/hooks/gcp_kms_hook/index.html | 443 +
.../contrib/hooks/gcp_mlengine_hook/index.html | 489 +
.../hooks/gcp_natural_language_hook/index.html | 542 +
.../contrib/hooks/gcp_pubsub_hook/index.html | 545 +
.../contrib/hooks/gcp_spanner_hook/index.html | 616 +
.../hooks/gcp_speech_to_text_hook/index.html | 419 +
.../airflow/contrib/hooks/gcp_sql_hook/index.html | 939 ++
.../hooks/gcp_text_to_speech_hook/index.html | 428 +
.../contrib/hooks/gcp_transfer_hook/index.html | 887 ++
.../contrib/hooks/gcp_translate_hook/index.html | 435 +
.../hooks/gcp_video_intelligence_hook/index.html | 426 +
.../contrib/hooks/gcp_vision_hook/index.html | 575 +
.../_api/airflow/contrib/hooks/gcs_hook/index.html | 687 +
.../airflow/contrib/hooks/grpc_hook/index.html | 389 +
.../airflow/contrib/hooks/imap_hook/index.html | 629 +
.../1.10.5/_api/airflow/contrib/hooks/index.html | 453 +
.../airflow/contrib/hooks/jenkins_hook/index.html | 375 +
.../airflow/contrib/hooks/jira_hook/index.html | 380 +
.../airflow/contrib/hooks/mongo_hook/index.html | 566 +
.../airflow/contrib/hooks/openfaas_hook/index.html | 429 +
.../contrib/hooks/opsgenie_alert_hook/index.html | 410 +
.../airflow/contrib/hooks/pinot_hook/index.html | 437 +
.../contrib/hooks/qubole_check_hook/index.html | 414 +
.../airflow/contrib/hooks/qubole_hook/index.html | 467 +
.../airflow/contrib/hooks/redis_hook/index.html | 378 +
.../airflow/contrib/hooks/redshift_hook/index.html | 440 +
.../contrib/hooks/sagemaker_hook/index.html | 862 ++
.../contrib/hooks/salesforce_hook/index.html | 506 +
.../airflow/contrib/hooks/segment_hook/index.html | 388 +
.../airflow/contrib/hooks/sftp_hook/index.html | 473 +
.../contrib/hooks/slack_webhook_hook/index.html | 418 +
.../contrib/hooks/snowflake_hook/index.html | 418 +
.../contrib/hooks/spark_jdbc_hook/index.html | 451 +
.../contrib/hooks/spark_jdbc_script/index.html | 383 +
.../contrib/hooks/spark_sql_hook/index.html | 430 +
.../contrib/hooks/spark_submit_hook/index.html | 539 +
.../airflow/contrib/hooks/sqoop_hook/index.html | 529 +
.../_api/airflow/contrib/hooks/ssh_hook/index.html | 433 +
.../airflow/contrib/hooks/vertica_hook/index.html | 391 +
.../airflow/contrib/hooks/wasb_hook/index.html | 514 +
.../airflow/contrib/hooks/winrm_hook/index.html | 417 +
.../operators/adls_list_operator/index.html | 415 +
.../contrib/operators/adls_to_gcs/index.html | 446 +
.../operators/aws_athena_operator/index.html | 420 +
.../operators/aws_sqs_publish_operator/index.html | 414 +
.../contrib/operators/awsbatch_operator/index.html | 450 +
.../azure_container_instances_operator/index.html | 489 +
.../operators/azure_cosmos_operator/index.html | 400 +
.../operators/bigquery_check_operator/index.html | 489 +
.../contrib/operators/bigquery_get_data/index.html | 429 +
.../contrib/operators/bigquery_operator/index.html | 767 +
.../bigquery_table_delete_operator/index.html | 404 +
.../operators/bigquery_to_bigquery/index.html | 428 +
.../contrib/operators/bigquery_to_gcs/index.html | 423 +
.../contrib/operators/cassandra_to_gcs/index.html | 537 +
.../operators/databricks_operator/index.html | 731 +
.../contrib/operators/dataflow_operator/index.html | 655 +
.../contrib/operators/dataproc_operator/index.html | 1044 ++
.../operators/datastore_export_operator/index.html | 403 +
.../operators/datastore_import_operator/index.html | 401 +
.../contrib/operators/dingding_operator/index.html | 405 +
.../operators/discord_webhook_operator/index.html | 407 +
.../contrib/operators/druid_operator/index.html | 398 +
.../contrib/operators/ecs_operator/index.html | 455 +
.../operators/emr_add_steps_operator/index.html | 403 +
.../emr_create_job_flow_operator/index.html | 406 +
.../emr_terminate_job_flow_operator/index.html | 402 +
.../contrib/operators/file_to_gcs/index.html | 399 +
.../contrib/operators/file_to_wasb/index.html | 397 +
.../operators/gcp_bigtable_operator/index.html | 648 +
.../operators/gcp_cloud_build_operator/index.html | 482 +
.../operators/gcp_compute_operator/index.html | 632 +
.../operators/gcp_container_operator/index.html | 567 +
.../contrib/operators/gcp_dlp_operator/index.html | 1563 ++
.../operators/gcp_function_operator/index.html | 587 +
.../gcp_natural_language_operator/index.html | 522 +
.../operators/gcp_spanner_operator/index.html | 625 +
.../gcp_speech_to_text_operator/index.html | 413 +
.../contrib/operators/gcp_sql_operator/index.html | 859 ++
.../gcp_text_to_speech_operator/index.html | 417 +
.../operators/gcp_transfer_operator/index.html | 922 ++
.../operators/gcp_translate_operator/index.html | 420 +
.../gcp_translate_speech_operator/index.html | 433 +
.../gcp_video_intelligence_operator/index.html | 507 +
.../operators/gcp_vision_operator/index.html | 1105 ++
.../contrib/operators/gcs_acl_operator/index.html | 448 +
.../operators/gcs_delete_operator/index.html | 402 +
.../operators/gcs_download_operator/index.html | 410 +
.../contrib/operators/gcs_list_operator/index.html | 424 +
.../contrib/operators/gcs_operator/index.html | 446 +
.../airflow/contrib/operators/gcs_to_bq/index.html | 484 +
.../contrib/operators/gcs_to_gcs/index.html | 479 +
.../airflow/contrib/operators/gcs_to_s3/index.html | 433 +
.../contrib/operators/hipchat_operator/index.html | 437 +
.../contrib/operators/hive_to_dynamodb/index.html | 412 +
.../imap_attachment_to_s3_operator/index.html | 403 +
.../_api/airflow/contrib/operators/index.html | 481 +
.../jenkins_job_trigger_operator/index.html | 482 +
.../contrib/operators/jira_operator/index.html | 397 +
.../operators/kubernetes_pod_operator/index.html | 440 +
.../contrib/operators/mlengine_operator/index.html | 624 +
.../contrib/operators/mongo_to_s3/index.html | 413 +
.../contrib/operators/mssql_to_gcs/index.html | 433 +
.../contrib/operators/mysql_to_gcs/index.html | 430 +
.../operators/opsgenie_alert_operator/index.html | 426 +
.../oracle_to_azure_data_lake_transfer/index.html | 411 +
.../operators/oracle_to_oracle_transfer/index.html | 407 +
.../operators/postgres_to_gcs_operator/index.html | 415 +
.../contrib/operators/pubsub_operator/index.html | 608 +
.../operators/qubole_check_operator/index.html | 554 +
.../contrib/operators/qubole_operator/index.html | 705 +
.../operators/redis_publish_operator/index.html | 399 +
.../operators/s3_copy_object_operator/index.html | 425 +
.../s3_delete_objects_operator/index.html | 419 +
.../contrib/operators/s3_list_operator/index.html | 435 +
.../operators/s3_to_gcs_operator/index.html | 446 +
.../operators/s3_to_sftp_operator/index.html | 407 +
.../operators/sagemaker_base_operator/index.html | 427 +
.../sagemaker_endpoint_config_operator/index.html | 395 +
.../sagemaker_endpoint_operator/index.html | 424 +
.../operators/sagemaker_model_operator/index.html | 395 +
.../sagemaker_training_operator/index.html | 408 +
.../sagemaker_transform_operator/index.html | 420 +
.../operators/sagemaker_tuning_operator/index.html | 407 +
.../segment_track_event_operator/index.html | 401 +
.../contrib/operators/sftp_operator/index.html | 455 +
.../operators/sftp_to_s3_operator/index.html | 408 +
.../operators/slack_webhook_operator/index.html | 408 +
.../operators/snowflake_operator/index.html | 417 +
.../operators/sns_publish_operator/index.html | 398 +
.../operators/spark_jdbc_operator/index.html | 448 +
.../operators/spark_sql_operator/index.html | 415 +
.../operators/spark_submit_operator/index.html | 434 +
.../contrib/operators/sql_to_gcs/index.html | 504 +
.../contrib/operators/sqoop_operator/index.html | 399 +
.../contrib/operators/ssh_operator/index.html | 412 +
.../contrib/operators/vertica_operator/index.html | 404 +
.../contrib/operators/vertica_to_hive/index.html | 426 +
.../contrib/operators/vertica_to_mysql/index.html | 416 +
.../operators/wasb_delete_blob_operator/index.html | 398 +
.../contrib/operators/winrm_operator/index.html | 396 +
.../contrib/sensors/aws_athena_sensor/index.html | 427 +
.../aws_glue_catalog_partition_sensor/index.html | 417 +
.../sensors/aws_redshift_cluster_sensor/index.html | 392 +
.../contrib/sensors/aws_sqs_sensor/index.html | 405 +
.../contrib/sensors/azure_cosmos_sensor/index.html | 392 +
.../airflow/contrib/sensors/bash_sensor/index.html | 400 +
.../contrib/sensors/bigquery_sensor/index.html | 406 +
.../sensors/cassandra_record_sensor/index.html | 393 +
.../sensors/cassandra_table_sensor/index.html | 391 +
.../contrib/sensors/datadog_sensor/index.html | 395 +
.../contrib/sensors/emr_base_sensor/index.html | 386 +
.../contrib/sensors/emr_job_flow_sensor/index.html | 415 +
.../contrib/sensors/emr_step_sensor/index.html | 418 +
.../airflow/contrib/sensors/file_sensor/index.html | 401 +
.../airflow/contrib/sensors/ftp_sensor/index.html | 420 +
.../contrib/sensors/gcp_transfer_sensor/index.html | 400 +
.../airflow/contrib/sensors/gcs_sensor/index.html | 561 +
.../airflow/contrib/sensors/hdfs_sensor/index.html | 401 +
.../sensors/imap_attachment_sensor/index.html | 411 +
.../1.10.5/_api/airflow/contrib/sensors/index.html | 403 +
.../airflow/contrib/sensors/jira_sensor/index.html | 422 +
.../contrib/sensors/mongo_sensor/index.html | 391 +
.../contrib/sensors/pubsub_sensor/index.html | 404 +
.../contrib/sensors/python_sensor/index.html | 408 +
.../contrib/sensors/qubole_sensor/index.html | 436 +
.../contrib/sensors/redis_key_sensor/index.html | 389 +
.../sensors/redis_pub_sub_sensor/index.html | 399 +
.../sensors/sagemaker_base_sensor/index.html | 412 +
.../sensors/sagemaker_endpoint_sensor/index.html | 415 +
.../sensors/sagemaker_training_sensor/index.html | 423 +
.../sensors/sagemaker_transform_sensor/index.html | 416 +
.../sensors/sagemaker_tuning_sensor/index.html | 416 +
.../airflow/contrib/sensors/sftp_sensor/index.html | 392 +
.../airflow/contrib/sensors/wasb_sensor/index.html | 423 +
.../contrib/sensors/weekday_sensor/index.html | 430 +
.../airflow/executors/base_executor/index.html | 482 +
.../airflow/executors/celery_executor/index.html | 499 +
.../airflow/executors/dask_executor/index.html | 400 +
.../1.10.5/_api/airflow/executors/index.html | 714 +
.../airflow/executors/local_executor/index.html | 524 +
.../executors/sequential_executor/index.html | 389 +
.../1.10.5/_api/airflow/hooks/S3_hook/index.html | 694 +
.../1.10.5/_api/airflow/hooks/base_hook/index.html | 424 +
.../_api/airflow/hooks/dbapi_hook/index.html | 569 +
.../_api/airflow/hooks/docker_hook/index.html | 386 +
.../_api/airflow/hooks/druid_hook/index.html | 444 +
.../1.10.5/_api/airflow/hooks/hdfs_hook/index.html | 396 +
.../_api/airflow/hooks/hive_hooks/index.html | 847 ++
.../1.10.5/_api/airflow/hooks/http_hook/index.html | 465 +
docs-archive/1.10.5/_api/airflow/hooks/index.html | 405 +
.../1.10.5/_api/airflow/hooks/jdbc_hook/index.html | 407 +
.../_api/airflow/hooks/mssql_hook/index.html | 401 +
.../_api/airflow/hooks/mysql_hook/index.html | 462 +
.../_api/airflow/hooks/oracle_hook/index.html | 457 +
.../1.10.5/_api/airflow/hooks/pig_hook/index.html | 390 +
.../_api/airflow/hooks/postgres_hook/index.html | 458 +
.../_api/airflow/hooks/presto_hook/index.html | 449 +
.../_api/airflow/hooks/samba_hook/index.html | 380 +
.../_api/airflow/hooks/slack_hook/index.html | 380 +
.../_api/airflow/hooks/sqlite_hook/index.html | 391 +
.../_api/airflow/hooks/webhdfs_hook/index.html | 451 +
.../_api/airflow/hooks/zendesk_hook/index.html | 404 +
.../1.10.5/_api/airflow/models/base/index.html | 383 +
.../_api/airflow/models/baseoperator/index.html | 902 ++
.../1.10.5/_api/airflow/models/chart/index.html | 459 +
.../_api/airflow/models/connection/index.html | 504 +
.../1.10.5/_api/airflow/models/crypto/index.html | 417 +
.../1.10.5/_api/airflow/models/dag/index.html | 1195 ++
.../1.10.5/_api/airflow/models/dagbag/index.html | 472 +
.../_api/airflow/models/dagpickle/index.html | 401 +
.../1.10.5/_api/airflow/models/dagrun/index.html | 588 +
.../1.10.5/_api/airflow/models/errors/index.html | 394 +
docs-archive/1.10.5/_api/airflow/models/index.html | 3619 +++++
.../_api/airflow/models/knownevent/index.html | 450 +
.../_api/airflow/models/kubernetes/index.html | 430 +
.../1.10.5/_api/airflow/models/log/index.html | 420 +
.../1.10.5/_api/airflow/models/pool/index.html | 443 +
.../_api/airflow/models/skipmixin/index.html | 393 +
.../1.10.5/_api/airflow/models/slamiss/index.html | 422 +
.../1.10.5/_api/airflow/models/taskfail/index.html | 415 +
.../_api/airflow/models/taskinstance/index.html | 902 ++
.../_api/airflow/models/taskreschedule/index.html | 437 +
.../1.10.5/_api/airflow/models/user/index.html | 409 +
.../1.10.5/_api/airflow/models/variable/index.html | 460 +
.../1.10.5/_api/airflow/models/xcom/index.html | 479 +
.../airflow/operators/bash_operator/index.html | 421 +
.../airflow/operators/branch_operator/index.html | 401 +
.../airflow/operators/check_operator/index.html | 567 +
.../airflow/operators/dagrun_operator/index.html | 412 +
.../airflow/operators/docker_operator/index.html | 470 +
.../operators/druid_check_operator/index.html | 426 +
.../airflow/operators/dummy_operator/index.html | 385 +
.../airflow/operators/email_operator/index.html | 410 +
.../airflow/operators/generic_transfer/index.html | 410 +
.../airflow/operators/hive_operator/index.html | 439 +
.../operators/hive_stats_operator/index.html | 421 +
.../airflow/operators/hive_to_druid/index.html | 435 +
.../airflow/operators/hive_to_mysql/index.html | 418 +
.../operators/hive_to_samba_operator/index.html | 399 +
.../airflow/operators/http_operator/index.html | 416 +
.../1.10.5/_api/airflow/operators/index.html | 924 ++
.../airflow/operators/jdbc_operator/index.html | 408 +
.../operators/latest_only_operator/index.html | 387 +
.../airflow/operators/mssql_operator/index.html | 407 +
.../airflow/operators/mssql_to_hive/index.html | 428 +
.../airflow/operators/mysql_operator/index.html | 409 +
.../airflow/operators/mysql_to_hive/index.html | 427 +
.../airflow/operators/oracle_operator/index.html | 408 +
.../_api/airflow/operators/pig_operator/index.html | 423 +
.../airflow/operators/postgres_operator/index.html | 408 +
.../operators/presto_check_operator/index.html | 453 +
.../airflow/operators/presto_to_mysql/index.html | 411 +
.../airflow/operators/python_operator/index.html | 573 +
.../operators/redshift_to_s3_operator/index.html | 425 +
.../s3_file_transform_operator/index.html | 437 +
.../operators/s3_to_hive_operator/index.html | 466 +
.../operators/s3_to_redshift_operator/index.html | 425 +
.../_api/airflow/operators/sensors/index.html | 439 +
.../airflow/operators/slack_operator/index.html | 440 +
.../airflow/operators/sqlite_operator/index.html | 404 +
.../airflow/operators/subdag_operator/index.html | 400 +
.../sensors/base_sensor_operator/index.html | 442 +
.../sensors/external_task_sensor/index.html | 413 +
.../_api/airflow/sensors/hdfs_sensor/index.html | 427 +
.../sensors/hive_partition_sensor/index.html | 406 +
.../_api/airflow/sensors/http_sensor/index.html | 403 +
.../1.10.5/_api/airflow/sensors/index.html | 402 +
.../sensors/metastore_partition_sensor/index.html | 406 +
.../sensors/named_hive_partition_sensor/index.html | 414 +
.../_api/airflow/sensors/s3_key_sensor/index.html | 416 +
.../airflow/sensors/s3_prefix_sensor/index.html | 418 +
.../_api/airflow/sensors/sql_sensor/index.html | 424 +
.../airflow/sensors/time_delta_sensor/index.html | 387 +
.../_api/airflow/sensors/time_sensor/index.html | 384 +
.../airflow/sensors/web_hdfs_sensor/index.html | 384 +
docs-archive/1.10.5/_api/index.html | 472 +
docs-archive/1.10.5/_images/adhoc.png | Bin 0 -> 182773 bytes
docs-archive/1.10.5/_images/airflow.gif | Bin 0 -> 622832 bytes
docs-archive/1.10.5/_images/apache.jpg | Bin 0 -> 43364 bytes
docs-archive/1.10.5/_images/branch_bad.png | Bin 0 -> 8825 bytes
docs-archive/1.10.5/_images/branch_good.png | Bin 0 -> 12035 bytes
.../1.10.5/_images/branch_with_trigger.png | Bin 0 -> 34081 bytes
.../1.10.5/_images/branch_without_trigger.png | Bin 0 -> 39815 bytes
docs-archive/1.10.5/_images/chart.png | Bin 0 -> 169382 bytes
docs-archive/1.10.5/_images/chart_form.png | Bin 0 -> 203224 bytes
docs-archive/1.10.5/_images/code.png | Bin 0 -> 285906 bytes
docs-archive/1.10.5/_images/connection_create.png | Bin 0 -> 41547 bytes
docs-archive/1.10.5/_images/connection_edit.png | Bin 0 -> 53636 bytes
docs-archive/1.10.5/_images/connections.png | Bin 0 -> 48442 bytes
docs-archive/1.10.5/_images/context.png | Bin 0 -> 149588 bytes
docs-archive/1.10.5/_images/dags.png | Bin 0 -> 217069 bytes
docs-archive/1.10.5/_images/duration.png | Bin 0 -> 250846 bytes
docs-archive/1.10.5/_images/gantt.png | Bin 0 -> 121795 bytes
docs-archive/1.10.5/_images/graph.png | Bin 0 -> 152205 bytes
.../1.10.5/_images/latest_only_with_trigger.png | Bin 0 -> 49510 bytes
.../1.10.5/_images/operator_extra_link.png | Bin 0 -> 276679 bytes
docs-archive/1.10.5/_images/pin_large.png | Bin 0 -> 358276 bytes
docs-archive/1.10.5/_images/subdag_after.png | Bin 0 -> 30245 bytes
docs-archive/1.10.5/_images/subdag_before.png | Bin 0 -> 70382 bytes
docs-archive/1.10.5/_images/subdag_zoom.png | Bin 0 -> 150185 bytes
docs-archive/1.10.5/_images/tree.png | Bin 0 -> 128024 bytes
docs-archive/1.10.5/_images/variable_hidden.png | Bin 0 -> 154299 bytes
.../example_dags/example_dingding_operator.html | 550 +
.../example_gcp_bigtable_operators.html | 532 +
.../example_dags/example_gcp_cloud_build.html | 433 +
.../contrib/example_dags/example_gcp_compute.html | 441 +
.../example_dags/example_gcp_compute_igm.html | 471 +
.../contrib/example_dags/example_gcp_function.html | 460 +
.../example_dags/example_gcp_natural_language.html | 441 +
.../contrib/example_dags/example_gcp_spanner.html | 525 +
.../contrib/example_dags/example_gcp_speech.html | 429 +
.../contrib/example_dags/example_gcp_sql.html | 750 +
.../example_dags/example_gcp_sql_query.html | 621 +
.../contrib/example_dags/example_gcp_transfer.html | 580 +
.../example_dags/example_gcp_translate.html | 379 +
.../example_gcp_video_intelligence.html | 449 +
.../contrib/example_dags/example_gcp_vision.html | 811 +
.../contrib/example_dags/example_gcs_acl.html | 403 +
.../example_dags/example_gcs_to_bq_operator.html | 394 +
.../contrib/executors/kubernetes_executor.html | 1160 ++
.../airflow/contrib/executors/mesos_executor.html | 653 +
.../1.10.5/_modules/airflow/contrib/hooks.html | 397 +
.../airflow/contrib/hooks/aws_athena_hook.html | 495 +
.../airflow/contrib/hooks/aws_dynamodb_hook.html | 398 +
.../airflow/contrib/hooks/aws_firehose_hook.html | 385 +
.../contrib/hooks/aws_glue_catalog_hook.html | 481 +
.../_modules/airflow/contrib/hooks/aws_hook.html | 534 +
.../airflow/contrib/hooks/aws_lambda_hook.html | 397 +
.../airflow/contrib/hooks/aws_logs_hook.html | 432 +
.../airflow/contrib/hooks/aws_sns_hook.html | 389 +
.../airflow/contrib/hooks/aws_sqs_hook.html | 400 +
.../hooks/azure_container_instance_hook.html | 507 +
.../hooks/azure_container_registry_hook.html | 368 +
.../contrib/hooks/azure_container_volume_hook.html | 383 +
.../airflow/contrib/hooks/azure_cosmos_hook.html | 616 +
.../contrib/hooks/azure_data_lake_hook.html | 470 +
.../contrib/hooks/azure_fileshare_hook.html | 541 +
.../airflow/contrib/hooks/bigquery_hook.html | 2503 +++
.../airflow/contrib/hooks/cassandra_hook.html | 529 +
.../airflow/contrib/hooks/cloudant_hook.html | 412 +
.../airflow/contrib/hooks/databricks_hook.html | 602 +
.../airflow/contrib/hooks/datadog_hook.html | 487 +
.../airflow/contrib/hooks/datastore_hook.html | 668 +
.../airflow/contrib/hooks/dingding_hook.html | 463 +
.../contrib/hooks/discord_webhook_hook.html | 469 +
.../_modules/airflow/contrib/hooks/emr_hook.html | 386 +
.../_modules/airflow/contrib/hooks/fs_hook.html | 375 +
.../_modules/airflow/contrib/hooks/ftp_hook.html | 649 +
.../airflow/contrib/hooks/gcp_api_base_hook.html | 597 +
.../airflow/contrib/hooks/gcp_bigtable_hook.html | 591 +
.../contrib/hooks/gcp_cloud_build_hook.html | 460 +
.../airflow/contrib/hooks/gcp_compute_hook.html | 668 +
.../airflow/contrib/hooks/gcp_container_hook.html | 576 +
.../airflow/contrib/hooks/gcp_dataflow_hook.html | 625 +
.../airflow/contrib/hooks/gcp_dataproc_hook.html | 678 +
.../airflow/contrib/hooks/gcp_dlp_hook.html | 2108 +++
.../airflow/contrib/hooks/gcp_function_hook.html | 526 +
.../airflow/contrib/hooks/gcp_kms_hook.html | 437 +
.../airflow/contrib/hooks/gcp_mlengine_hook.html | 602 +
.../contrib/hooks/gcp_natural_language_hook.html | 546 +
.../airflow/contrib/hooks/gcp_pubsub_hook.html | 613 +
.../airflow/contrib/hooks/gcp_spanner_hook.html | 678 +
.../contrib/hooks/gcp_speech_to_text_hook.html | 402 +
.../airflow/contrib/hooks/gcp_sql_hook.html | 1332 ++
.../contrib/hooks/gcp_text_to_speech_hook.html | 409 +
.../airflow/contrib/hooks/gcp_transfer_hook.html | 725 +
.../airflow/contrib/hooks/gcp_translate_hook.html | 426 +
.../contrib/hooks/gcp_video_intelligence_hook.html | 434 +
.../airflow/contrib/hooks/gcp_vision_hook.html | 903 ++
.../_modules/airflow/contrib/hooks/gcs_hook.html | 924 ++
.../_modules/airflow/contrib/hooks/grpc_hook.html | 452 +
.../_modules/airflow/contrib/hooks/imap_hook.html | 645 +
.../airflow/contrib/hooks/jenkins_hook.html | 377 +
.../_modules/airflow/contrib/hooks/jira_hook.html | 415 +
.../_modules/airflow/contrib/hooks/mongo_hook.html | 626 +
.../airflow/contrib/hooks/openfaas_hook.html | 428 +
.../airflow/contrib/hooks/opsgenie_alert_hook.html | 417 +
.../_modules/airflow/contrib/hooks/pinot_hook.html | 434 +
.../airflow/contrib/hooks/qubole_check_hook.html | 446 +
.../airflow/contrib/hooks/qubole_hook.html | 590 +
.../_modules/airflow/contrib/hooks/redis_hook.html | 395 +
.../airflow/contrib/hooks/redshift_hook.html | 442 +
.../airflow/contrib/hooks/sagemaker_hook.html | 1069 ++
.../airflow/contrib/hooks/salesforce_hook.html | 654 +
.../airflow/contrib/hooks/segment_hook.html | 419 +
.../_modules/airflow/contrib/hooks/sftp_hook.html | 543 +
.../airflow/contrib/hooks/slack_webhook_hook.html | 469 +
.../airflow/contrib/hooks/snowflake_hook.html | 463 +
.../airflow/contrib/hooks/spark_jdbc_hook.html | 575 +
.../airflow/contrib/hooks/spark_jdbc_script.html | 475 +
.../airflow/contrib/hooks/spark_sql_hook.html | 493 +
.../airflow/contrib/hooks/spark_submit_hook.html | 915 ++
.../_modules/airflow/contrib/hooks/sqoop_hook.html | 684 +
.../_modules/airflow/contrib/hooks/ssh_hook.html | 578 +
.../airflow/contrib/hooks/vertica_hook.html | 382 +
.../_modules/airflow/contrib/hooks/wasb_hook.html | 520 +
.../_modules/airflow/contrib/hooks/winrm_hook.html | 563 +
.../1.10.5/_modules/airflow/contrib/operators.html | 380 +
.../contrib/operators/adls_list_operator.html | 401 +
.../airflow/contrib/operators/adls_to_gcs.html | 478 +
.../contrib/operators/aws_athena_operator.html | 449 +
.../operators/aws_sqs_publish_operator.html | 410 +
.../contrib/operators/awsbatch_operator.html | 510 +
.../azure_container_instances_operator.html | 674 +
.../contrib/operators/azure_cosmos_operator.html | 398 +
.../contrib/operators/bigquery_check_operator.html | 482 +
.../contrib/operators/bigquery_get_data.html | 445 +
.../contrib/operators/bigquery_operator.html | 1055 ++
.../operators/bigquery_table_delete_operator.html | 397 +
.../contrib/operators/bigquery_to_bigquery.html | 434 +
.../airflow/contrib/operators/bigquery_to_gcs.html | 434 +
.../contrib/operators/cassandra_to_gcs.html | 683 +
.../contrib/operators/databricks_operator.html | 815 +
.../contrib/operators/dataflow_operator.html | 754 +
.../contrib/operators/dataproc_operator.html | 1561 ++
.../operators/datastore_export_operator.html | 439 +
.../operators/datastore_import_operator.html | 427 +
.../contrib/operators/dingding_operator.html | 403 +
.../operators/discord_webhook_operator.html | 427 +
.../airflow/contrib/operators/druid_operator.html | 393 +
.../airflow/contrib/operators/ecs_operator.html | 544 +
.../contrib/operators/emr_add_steps_operator.html | 392 +
.../operators/emr_create_job_flow_operator.html | 403 +
.../operators/emr_terminate_job_flow_operator.html | 386 +
.../airflow/contrib/operators/file_to_gcs.html | 411 +
.../airflow/contrib/operators/file_to_wasb.html | 393 +
.../contrib/operators/gcp_bigtable_operator.html | 820 +
.../operators/gcp_cloud_build_operator.html | 525 +
.../contrib/operators/gcp_compute_operator.html | 813 +
.../contrib/operators/gcp_container_operator.html | 651 +
.../contrib/operators/gcp_dlp_operator.html | 2450 +++
.../contrib/operators/gcp_function_operator.html | 657 +
.../operators/gcp_natural_language_operator.html | 591 +
.../contrib/operators/gcp_spanner_operator.html | 761 +
.../operators/gcp_speech_to_text_operator.html | 419 +
.../contrib/operators/gcp_sql_operator.html | 1135 ++
.../operators/gcp_text_to_speech_operator.html | 458 +
.../contrib/operators/gcp_transfer_operator.html | 1134 ++
.../contrib/operators/gcp_translate_operator.html | 442 +
.../operators/gcp_translate_speech_operator.html | 488 +
.../operators/gcp_video_intelligence_operator.html | 593 +
.../contrib/operators/gcp_vision_operator.html | 1584 ++
.../contrib/operators/gcs_acl_operator.html | 463 +
.../contrib/operators/gcs_delete_operator.html | 412 +
.../contrib/operators/gcs_download_operator.html | 420 +
.../contrib/operators/gcs_list_operator.html | 423 +
.../airflow/contrib/operators/gcs_operator.html | 460 +
.../airflow/contrib/operators/gcs_to_bq.html | 621 +
.../airflow/contrib/operators/gcs_to_gcs.html | 528 +
.../airflow/contrib/operators/gcs_to_s3.html | 469 +
.../contrib/operators/hipchat_operator.html | 464 +
.../contrib/operators/hive_to_dynamodb.html | 438 +
.../operators/imap_attachment_to_s3_operator.html | 419 +
.../operators/jenkins_job_trigger_operator.html | 573 +
.../airflow/contrib/operators/jira_operator.html | 423 +
.../contrib/operators/kubernetes_pod_operator.html | 568 +
.../contrib/operators/mlengine_operator.html | 960 ++
.../airflow/contrib/operators/mongo_to_s3.html | 456 +
.../airflow/contrib/operators/mssql_to_gcs.html | 425 +
.../airflow/contrib/operators/mysql_to_gcs.html | 461 +
.../contrib/operators/opsgenie_alert_operator.html | 460 +
.../oracle_to_azure_data_lake_transfer.html | 444 +
.../operators/oracle_to_oracle_transfer.html | 420 +
.../operators/postgres_to_gcs_operator.html | 433 +
.../airflow/contrib/operators/pubsub_operator.html | 762 +
.../contrib/operators/qubole_check_operator.html | 557 +
.../airflow/contrib/operators/qubole_operator.html | 548 +
.../contrib/operators/redis_publish_operator.html | 395 +
.../contrib/operators/s3_copy_object_operator.html | 425 +
.../operators/s3_delete_objects_operator.html | 416 +
.../contrib/operators/s3_list_operator.html | 428 +
.../contrib/operators/s3_to_gcs_operator.html | 536 +
.../contrib/operators/s3_to_sftp_operator.html | 414 +
.../contrib/operators/sagemaker_base_operator.html | 431 +
.../sagemaker_endpoint_config_operator.html | 395 +
.../operators/sagemaker_endpoint_operator.html | 479 +
.../operators/sagemaker_model_operator.html | 396 +
.../operators/sagemaker_training_operator.html | 427 +
.../operators/sagemaker_transform_operator.html | 453 +
.../operators/sagemaker_tuning_operator.html | 428 +
.../operators/segment_track_event_operator.html | 401 +
.../airflow/contrib/operators/sftp_operator.html | 509 +
.../contrib/operators/sftp_to_s3_operator.html | 420 +
.../contrib/operators/slack_webhook_operator.html | 436 +
.../contrib/operators/snowflake_operator.html | 406 +
.../contrib/operators/sns_publish_operator.html | 394 +
.../contrib/operators/spark_jdbc_operator.html | 543 +
.../contrib/operators/spark_sql_operator.html | 440 +
.../contrib/operators/spark_submit_operator.html | 508 +
.../airflow/contrib/operators/sql_to_gcs.html | 604 +
.../airflow/contrib/operators/sqoop_operator.html | 567 +
.../airflow/contrib/operators/ssh_operator.html | 508 +
.../contrib/operators/vertica_operator.html | 378 +
.../airflow/contrib/operators/vertica_to_hive.html | 468 +
.../contrib/operators/vertica_to_mysql.html | 484 +
.../operators/wasb_delete_blob_operator.html | 399 +
.../airflow/contrib/operators/winrm_operator.html | 478 +
.../airflow/contrib/sensors/aws_athena_sensor.html | 406 +
.../sensors/aws_glue_catalog_partition_sensor.html | 420 +
.../sensors/aws_redshift_cluster_sensor.html | 379 +
.../airflow/contrib/sensors/aws_sqs_sensor.html | 420 +
.../contrib/sensors/azure_cosmos_sensor.html | 394 +
.../airflow/contrib/sensors/bash_sensor.html | 418 +
.../airflow/contrib/sensors/bigquery_sensor.html | 397 +
.../contrib/sensors/cassandra_record_sensor.html | 388 +
.../contrib/sensors/cassandra_table_sensor.html | 383 +
.../airflow/contrib/sensors/datadog_sensor.html | 410 +
.../airflow/contrib/sensors/emr_base_sensor.html | 387 +
.../contrib/sensors/emr_job_flow_sensor.html | 390 +
.../airflow/contrib/sensors/emr_step_sensor.html | 394 +
.../airflow/contrib/sensors/file_sensor.html | 398 +
.../airflow/contrib/sensors/ftp_sensor.html | 427 +
.../contrib/sensors/gcp_transfer_sensor.html | 407 +
.../airflow/contrib/sensors/gcs_sensor.html | 641 +
.../airflow/contrib/sensors/hdfs_sensor.html | 401 +
.../contrib/sensors/imap_attachment_sensor.html | 403 +
.../airflow/contrib/sensors/jira_sensor.html | 478 +
.../airflow/contrib/sensors/mongo_sensor.html | 385 +
.../airflow/contrib/sensors/pubsub_sensor.html | 432 +
.../airflow/contrib/sensors/python_sensor.html | 407 +
.../airflow/contrib/sensors/qubole_sensor.html | 439 +
.../airflow/contrib/sensors/redis_key_sensor.html | 366 +
.../contrib/sensors/redis_pub_sub_sensor.html | 400 +
.../contrib/sensors/sagemaker_base_sensor.html | 401 +
.../contrib/sensors/sagemaker_endpoint_sensor.html | 388 +
.../contrib/sensors/sagemaker_training_sensor.html | 429 +
.../sensors/sagemaker_transform_sensor.html | 389 +
.../contrib/sensors/sagemaker_tuning_sensor.html | 389 +
.../airflow/contrib/sensors/sftp_sensor.html | 379 +
.../airflow/contrib/sensors/wasb_sensor.html | 422 +
.../airflow/contrib/sensors/weekday_sensor.html | 432 +
.../example_dags/example_bash_operator.html | 400 +
.../example_dags/example_python_operator.html | 401 +
.../1.10.5/_modules/airflow/exceptions.html | 451 +
.../1.10.5/_modules/airflow/executors.html | 426 +
.../_modules/airflow/executors/base_executor.html | 541 +
.../airflow/executors/celery_executor.html | 623 +
.../_modules/airflow/executors/dask_executor.html | 426 +
.../_modules/airflow/executors/local_executor.html | 563 +
.../airflow/executors/sequential_executor.html | 386 +
docs-archive/1.10.5/_modules/airflow/hooks.html | 423 +
.../1.10.5/_modules/airflow/hooks/S3_hook.html | 872 ++
.../1.10.5/_modules/airflow/hooks/base_hook.html | 431 +
.../1.10.5/_modules/airflow/hooks/dbapi_hook.html | 634 +
.../1.10.5/_modules/airflow/hooks/docker_hook.html | 417 +
.../1.10.5/_modules/airflow/hooks/druid_hook.html | 494 +
.../1.10.5/_modules/airflow/hooks/hdfs_hook.html | 427 +
.../1.10.5/_modules/airflow/hooks/hive_hooks.html | 1314 ++
.../1.10.5/_modules/airflow/hooks/http_hook.html | 542 +
.../1.10.5/_modules/airflow/hooks/jdbc_hook.html | 390 +
.../1.10.5/_modules/airflow/hooks/mssql_hook.html | 384 +
.../1.10.5/_modules/airflow/hooks/mysql_hook.html | 503 +
.../1.10.5/_modules/airflow/hooks/oracle_hook.html | 560 +
.../1.10.5/_modules/airflow/hooks/pig_hook.html | 429 +
.../_modules/airflow/hooks/postgres_hook.html | 490 +
.../1.10.5/_modules/airflow/hooks/presto_hook.html | 469 +
.../1.10.5/_modules/airflow/hooks/samba_hook.html | 381 +
.../1.10.5/_modules/airflow/hooks/slack_hook.html | 391 +
.../1.10.5/_modules/airflow/hooks/sqlite_hook.html | 370 +
.../_modules/airflow/hooks/webhdfs_hook.html | 461 +
.../_modules/airflow/hooks/zendesk_hook.html | 441 +
docs-archive/1.10.5/_modules/airflow/macros.html | 437 +
.../1.10.5/_modules/airflow/macros/hive.html | 447 +
docs-archive/1.10.5/_modules/airflow/models.html | 368 +
.../1.10.5/_modules/airflow/models/base.html | 364 +
.../_modules/airflow/models/baseoperator.html | 1346 ++
.../1.10.5/_modules/airflow/models/chart.html | 379 +
.../1.10.5/_modules/airflow/models/connection.html | 628 +
.../1.10.5/_modules/airflow/models/crypto.html | 426 +
.../1.10.5/_modules/airflow/models/dag.html | 1920 +++
.../1.10.5/_modules/airflow/models/dagbag.html | 770 +
.../1.10.5/_modules/airflow/models/dagpickle.html | 381 +
.../1.10.5/_modules/airflow/models/dagrun.html | 775 +
.../1.10.5/_modules/airflow/models/errors.html | 360 +
.../1.10.5/_modules/airflow/models/knownevent.html | 383 +
.../1.10.5/_modules/airflow/models/kubernetes.html | 408 +
.../1.10.5/_modules/airflow/models/log.html | 397 +
.../1.10.5/_modules/airflow/models/pool.html | 437 +
.../1.10.5/_modules/airflow/models/skipmixin.html | 431 +
.../1.10.5/_modules/airflow/models/slamiss.html | 377 +
.../1.10.5/_modules/airflow/models/taskfail.html | 384 +
.../_modules/airflow/models/taskinstance.html | 1741 +++
.../_modules/airflow/models/taskreschedule.html | 414 +
.../1.10.5/_modules/airflow/models/user.html | 369 +
.../1.10.5/_modules/airflow/models/variable.html | 478 +
.../1.10.5/_modules/airflow/models/xcom.html | 563 +
.../1.10.5/_modules/airflow/operators.html | 450 +
.../_modules/airflow/operators/bash_operator.html | 472 +
.../airflow/operators/branch_operator.html | 381 +
.../_modules/airflow/operators/check_operator.html | 663 +
.../airflow/operators/dagrun_operator.html | 426 +
.../airflow/operators/docker_operator.html | 606 +
.../airflow/operators/druid_check_operator.html | 420 +
.../_modules/airflow/operators/dummy_operator.html | 366 +
.../_modules/airflow/operators/email_operator.html | 407 +
.../airflow/operators/generic_transfer.html | 410 +
.../_modules/airflow/operators/hive_operator.html | 471 +
.../airflow/operators/hive_stats_operator.html | 513 +
.../_modules/airflow/operators/hive_to_druid.html | 575 +
.../_modules/airflow/operators/hive_to_mysql.html | 443 +
.../airflow/operators/hive_to_samba_operator.html | 396 +
.../_modules/airflow/operators/http_operator.html | 428 +
.../_modules/airflow/operators/jdbc_operator.html | 392 +
.../airflow/operators/latest_only_operator.html | 394 +
.../_modules/airflow/operators/mssql_operator.html | 392 +
.../_modules/airflow/operators/mssql_to_hive.html | 468 +
.../_modules/airflow/operators/mysql_operator.html | 396 +
.../_modules/airflow/operators/mysql_to_hive.html | 473 +
.../airflow/operators/oracle_operator.html | 392 +
.../_modules/airflow/operators/pig_operator.html | 406 +
.../airflow/operators/postgres_operator.html | 396 +
.../airflow/operators/presto_check_operator.html | 456 +
.../airflow/operators/presto_to_mysql.html | 409 +
.../airflow/operators/python_operator.html | 745 +
.../airflow/operators/redshift_to_s3_operator.html | 479 +
.../operators/s3_file_transform_operator.html | 497 +
.../airflow/operators/s3_to_hive_operator.html | 626 +
.../airflow/operators/s3_to_redshift_operator.html | 438 +
.../1.10.5/_modules/airflow/operators/sensors.html | 423 +
.../_modules/airflow/operators/slack_operator.html | 467 +
.../airflow/operators/sqlite_operator.html | 383 +
.../airflow/operators/subdag_operator.html | 431 +
docs-archive/1.10.5/_modules/airflow/sensors.html | 392 +
.../airflow/sensors/base_sensor_operator.html | 470 +
.../airflow/sensors/external_task_sensor.html | 483 +
.../_modules/airflow/sensors/hdfs_sensor.html | 452 +
.../airflow/sensors/hive_partition_sensor.html | 404 +
.../_modules/airflow/sensors/http_sensor.html | 421 +
.../sensors/metastore_partition_sensor.html | 412 +
.../sensors/named_hive_partition_sensor.html | 431 +
.../_modules/airflow/sensors/s3_key_sensor.html | 422 +
.../_modules/airflow/sensors/s3_prefix_sensor.html | 411 +
.../_modules/airflow/sensors/sql_sensor.html | 431 +
.../airflow/sensors/time_delta_sensor.html | 375 +
.../_modules/airflow/sensors/time_sensor.html | 369 +
.../_modules/airflow/sensors/web_hdfs_sensor.html | 373 +
.../_modules/airflow/utils/log/logging_mixin.html | 505 +
docs-archive/1.10.5/_modules/index.html | 660 +
.../_api/airflow/contrib/executors/index.rst.txt | 16 +
.../executors/kubernetes_executor/index.rst.txt | 255 +
.../contrib/executors/mesos_executor/index.rst.txt | 116 +
.../contrib/hooks/aws_athena_hook/index.rst.txt | 120 +
.../contrib/hooks/aws_dynamodb_hook/index.rst.txt | 35 +
.../contrib/hooks/aws_firehose_hook/index.rst.txt | 34 +
.../hooks/aws_glue_catalog_hook/index.rst.txt | 103 +
.../airflow/contrib/hooks/aws_hook/index.rst.txt | 72 +
.../contrib/hooks/aws_lambda_hook/index.rst.txt | 39 +
.../contrib/hooks/aws_logs_hook/index.rst.txt | 60 +
.../contrib/hooks/aws_sns_hook/index.rst.txt | 35 +
.../contrib/hooks/aws_sqs_hook/index.rst.txt | 62 +
.../azure_container_instance_hook/index.rst.txt | 128 +
.../azure_container_registry_hook/index.rst.txt | 25 +
.../azure_container_volume_hook/index.rst.txt | 30 +
.../contrib/hooks/azure_cosmos_hook/index.rst.txt | 124 +
.../hooks/azure_data_lake_hook/index.rst.txt | 103 +
.../hooks/azure_fileshare_hook/index.rst.txt | 196 +
.../contrib/hooks/bigquery_hook/index.rst.txt | 966 ++
.../contrib/hooks/cassandra_hook/index.rst.txt | 107 +
.../contrib/hooks/cloudant_hook/index.rst.txt | 34 +
.../contrib/hooks/databricks_hook/index.rst.txt | 195 +
.../contrib/hooks/datadog_hook/index.rst.txt | 94 +
.../contrib/hooks/datastore_hook/index.rst.txt | 217 +
.../contrib/hooks/dingding_hook/index.rst.txt | 67 +
.../hooks/discord_webhook_hook/index.rst.txt | 70 +
.../airflow/contrib/hooks/emr_hook/index.rst.txt | 32 +
.../airflow/contrib/hooks/fs_hook/index.rst.txt | 34 +
.../airflow/contrib/hooks/ftp_hook/index.rst.txt | 218 +
.../contrib/hooks/gcp_api_base_hook/index.rst.txt | 148 +
.../contrib/hooks/gcp_bigtable_hook/index.rst.txt | 178 +
.../hooks/gcp_cloud_build_hook/index.rst.txt | 81 +
.../contrib/hooks/gcp_compute_hook/index.rst.txt | 237 +
.../contrib/hooks/gcp_container_hook/index.rst.txt | 157 +
.../contrib/hooks/gcp_dataflow_hook/index.rst.txt | 111 +
.../contrib/hooks/gcp_dataproc_hook/index.rst.txt | 179 +
.../contrib/hooks/gcp_dlp_hook/index.rst.txt | 919 ++
.../contrib/hooks/gcp_function_hook/index.rst.txt | 137 +
.../contrib/hooks/gcp_kms_hook/index.rst.txt | 71 +
.../contrib/hooks/gcp_mlengine_hook/index.rst.txt | 132 +
.../hooks/gcp_natural_language_hook/index.rst.txt | 175 +
.../contrib/hooks/gcp_pubsub_hook/index.rst.txt | 174 +
.../contrib/hooks/gcp_spanner_hook/index.rst.txt | 235 +
.../hooks/gcp_speech_to_text_hook/index.rst.txt | 58 +
.../contrib/hooks/gcp_sql_hook/index.rst.txt | 535 +
.../hooks/gcp_text_to_speech_hook/index.rst.txt | 64 +
.../contrib/hooks/gcp_transfer_hook/index.rst.txt | 468 +
.../contrib/hooks/gcp_translate_hook/index.rst.txt | 77 +
.../gcp_video_intelligence_hook/index.rst.txt | 72 +
.../contrib/hooks/gcp_vision_hook/index.rst.txt | 232 +
.../airflow/contrib/hooks/gcs_hook/index.rst.txt | 318 +
.../airflow/contrib/hooks/grpc_hook/index.rst.txt | 36 +
.../airflow/contrib/hooks/imap_hook/index.rst.txt | 235 +
.../_api/airflow/contrib/hooks/index.rst.txt | 102 +
.../contrib/hooks/jenkins_hook/index.rst.txt | 21 +
.../airflow/contrib/hooks/jira_hook/index.rst.txt | 24 +
.../airflow/contrib/hooks/mongo_hook/index.rst.txt | 218 +
.../contrib/hooks/openfaas_hook/index.rst.txt | 72 +
.../hooks/opsgenie_alert_hook/index.rst.txt | 54 +
.../airflow/contrib/hooks/pinot_hook/index.rst.txt | 84 +
.../contrib/hooks/qubole_check_hook/index.rst.txt | 48 +
.../contrib/hooks/qubole_hook/index.rst.txt | 98 +
.../airflow/contrib/hooks/redis_hook/index.rst.txt | 28 +
.../contrib/hooks/redshift_hook/index.rst.txt | 79 +
.../contrib/hooks/sagemaker_hook/index.rst.txt | 438 +
.../contrib/hooks/salesforce_hook/index.rst.txt | 138 +
.../contrib/hooks/segment_hook/index.rst.txt | 36 +
.../airflow/contrib/hooks/sftp_hook/index.rst.txt | 124 +
.../contrib/hooks/slack_webhook_hook/index.rst.txt | 73 +
.../contrib/hooks/snowflake_hook/index.rst.txt | 70 +
.../contrib/hooks/spark_jdbc_hook/index.rst.txt | 119 +
.../contrib/hooks/spark_jdbc_script/index.rst.txt | 20 +
.../contrib/hooks/spark_sql_hook/index.rst.txt | 76 +
.../contrib/hooks/spark_submit_hook/index.rst.txt | 197 +
.../airflow/contrib/hooks/sqoop_hook/index.rst.txt | 154 +
.../airflow/contrib/hooks/ssh_hook/index.rst.txt | 78 +
.../contrib/hooks/vertica_hook/index.rst.txt | 38 +
.../airflow/contrib/hooks/wasb_hook/index.rst.txt | 150 +
.../airflow/contrib/hooks/winrm_hook/index.rst.txt | 77 +
.../operators/adls_list_operator/index.rst.txt | 51 +
.../contrib/operators/adls_to_gcs/index.rst.txt | 87 +
.../operators/aws_athena_operator/index.rst.txt | 66 +
.../aws_sqs_publish_operator/index.rst.txt | 51 +
.../operators/awsbatch_operator/index.rst.txt | 93 +
.../index.rst.txt | 140 +
.../operators/azure_cosmos_operator/index.rst.txt | 41 +
.../bigquery_check_operator/index.rst.txt | 127 +
.../operators/bigquery_get_data/index.rst.txt | 72 +
.../operators/bigquery_operator/index.rst.txt | 447 +
.../bigquery_table_delete_operator/index.rst.txt | 45 +
.../operators/bigquery_to_bigquery/index.rst.txt | 70 +
.../operators/bigquery_to_gcs/index.rst.txt | 68 +
.../operators/cassandra_to_gcs/index.rst.txt | 183 +
.../operators/databricks_operator/index.rst.txt | 356 +
.../operators/dataflow_operator/index.rst.txt | 306 +
.../operators/dataproc_operator/index.rst.txt | 741 +
.../datastore_export_operator/index.rst.txt | 50 +
.../datastore_import_operator/index.rst.txt | 47 +
.../operators/dingding_operator/index.rst.txt | 48 +
.../discord_webhook_operator/index.rst.txt | 53 +
.../contrib/operators/druid_operator/index.rst.txt | 37 +
.../contrib/operators/ecs_operator/index.rst.txt | 105 +
.../operators/emr_add_steps_operator/index.rst.txt | 43 +
.../emr_create_job_flow_operator/index.rst.txt | 46 +
.../emr_terminate_job_flow_operator/index.rst.txt | 41 +
.../contrib/operators/file_to_gcs/index.rst.txt | 44 +
.../contrib/operators/file_to_wasb/index.rst.txt | 40 +
.../operators/gcp_bigtable_operator/index.rst.txt | 288 +
.../gcp_cloud_build_operator/index.rst.txt | 123 +
.../operators/gcp_compute_operator/index.rst.txt | 275 +
.../operators/gcp_container_operator/index.rst.txt | 206 +
.../operators/gcp_dlp_operator/index.rst.txt | 1241 ++
.../operators/gcp_function_operator/index.rst.txt | 218 +
.../gcp_natural_language_operator/index.rst.txt | 155 +
.../operators/gcp_spanner_operator/index.rst.txt | 261 +
.../gcp_speech_to_text_operator/index.rst.txt | 55 +
.../operators/gcp_sql_operator/index.rst.txt | 504 +
.../gcp_text_to_speech_operator/index.rst.txt | 62 +
.../operators/gcp_transfer_operator/index.rst.txt | 555 +
.../operators/gcp_translate_operator/index.rst.txt | 68 +
.../gcp_translate_speech_operator/index.rst.txt | 88 +
.../gcp_video_intelligence_operator/index.rst.txt | 158 +
.../operators/gcp_vision_operator/index.rst.txt | 753 +
.../operators/gcs_acl_operator/index.rst.txt | 90 +
.../operators/gcs_delete_operator/index.rst.txt | 43 +
.../operators/gcs_download_operator/index.rst.txt | 53 +
.../operators/gcs_list_operator/index.rst.txt | 63 +
.../contrib/operators/gcs_operator/index.rst.txt | 87 +
.../contrib/operators/gcs_to_bq/index.rst.txt | 146 +
.../contrib/operators/gcs_to_gcs/index.rst.txt | 124 +
.../contrib/operators/gcs_to_s3/index.rst.txt | 71 +
.../operators/hipchat_operator/index.rst.txt | 80 +
.../operators/hive_to_dynamodb/index.rst.txt | 59 +
.../imap_attachment_to_s3_operator/index.rst.txt | 46 +
.../_api/airflow/contrib/operators/index.rst.txt | 126 +
.../jenkins_job_trigger_operator/index.rst.txt | 101 +
.../contrib/operators/jira_operator/index.rst.txt | 39 +
.../kubernetes_pod_operator/index.rst.txt | 106 +
.../operators/mlengine_operator/index.rst.txt | 316 +
.../contrib/operators/mongo_to_s3/index.rst.txt | 57 +
.../contrib/operators/mssql_to_gcs/index.rst.txt | 73 +
.../contrib/operators/mysql_to_gcs/index.rst.txt | 71 +
.../opsgenie_alert_operator/index.rst.txt | 77 +
.../index.rst.txt | 59 +
.../oracle_to_oracle_transfer/index.rst.txt | 51 +
.../postgres_to_gcs_operator/index.rst.txt | 60 +
.../operators/pubsub_operator/index.rst.txt | 259 +
.../operators/qubole_check_operator/index.rst.txt | 183 +
.../operators/qubole_operator/index.rst.txt | 214 +
.../operators/redis_publish_operator/index.rst.txt | 38 +
.../s3_copy_object_operator/index.rst.txt | 64 +
.../s3_delete_objects_operator/index.rst.txt | 56 +
.../operators/s3_list_operator/index.rst.txt | 69 +
.../operators/s3_to_gcs_operator/index.rst.txt | 88 +
.../operators/s3_to_sftp_operator/index.rst.txt | 50 +
.../sagemaker_base_operator/index.rst.txt | 66 +
.../index.rst.txt | 35 +
.../sagemaker_endpoint_operator/index.rst.txt | 72 +
.../sagemaker_model_operator/index.rst.txt | 35 +
.../sagemaker_training_operator/index.rst.txt | 52 +
.../sagemaker_transform_operator/index.rst.txt | 65 +
.../sagemaker_tuning_operator/index.rst.txt | 50 +
.../segment_track_event_operator/index.rst.txt | 43 +
.../contrib/operators/sftp_operator/index.rst.txt | 89 +
.../operators/sftp_to_s3_operator/index.rst.txt | 51 +
.../operators/slack_webhook_operator/index.rst.txt | 57 +
.../operators/snowflake_operator/index.rst.txt | 59 +
.../operators/sns_publish_operator/index.rst.txt | 38 +
.../operators/spark_jdbc_operator/index.rst.txt | 113 +
.../operators/spark_sql_operator/index.rst.txt | 65 +
.../operators/spark_submit_operator/index.rst.txt | 95 +
.../contrib/operators/sql_to_gcs/index.rst.txt | 157 +
.../contrib/operators/sqoop_operator/index.rst.txt | 45 +
.../contrib/operators/ssh_operator/index.rst.txt | 56 +
.../operators/vertica_operator/index.rst.txt | 43 +
.../operators/vertica_to_hive/index.rst.txt | 71 +
.../operators/vertica_to_mysql/index.rst.txt | 60 +
.../wasb_delete_blob_operator/index.rst.txt | 40 +
.../contrib/operators/winrm_operator/index.rst.txt | 39 +
.../sensors/aws_athena_sensor/index.rst.txt | 68 +
.../index.rst.txt | 62 +
.../aws_redshift_cluster_sensor/index.rst.txt | 31 +
.../contrib/sensors/aws_sqs_sensor/index.rst.txt | 43 +
.../sensors/azure_cosmos_sensor/index.rst.txt | 33 +
.../contrib/sensors/bash_sensor/index.rst.txt | 42 +
.../contrib/sensors/bigquery_sensor/index.rst.txt | 48 +
.../sensors/cassandra_record_sensor/index.rst.txt | 35 +
.../sensors/cassandra_table_sensor/index.rst.txt | 33 +
.../contrib/sensors/datadog_sensor/index.rst.txt | 33 +
.../contrib/sensors/emr_base_sensor/index.rst.txt | 28 +
.../sensors/emr_job_flow_sensor/index.rst.txt | 55 +
.../contrib/sensors/emr_step_sensor/index.rst.txt | 57 +
.../contrib/sensors/file_sensor/index.rst.txt | 41 +
.../contrib/sensors/ftp_sensor/index.rst.txt | 65 +
.../sensors/gcp_transfer_sensor/index.rst.txt | 41 +
.../contrib/sensors/gcs_sensor/index.rst.txt | 194 +
.../contrib/sensors/hdfs_sensor/index.rst.txt | 37 +
.../sensors/imap_attachment_sensor/index.rst.txt | 47 +
.../_api/airflow/contrib/sensors/index.rst.txt | 48 +
.../contrib/sensors/jira_sensor/index.rst.txt | 63 +
.../contrib/sensors/mongo_sensor/index.rst.txt | 32 +
.../contrib/sensors/pubsub_sensor/index.rst.txt | 50 +
.../contrib/sensors/python_sensor/index.rst.txt | 51 +
.../contrib/sensors/qubole_sensor/index.rst.txt | 67 +
.../contrib/sensors/redis_key_sensor/index.rst.txt | 31 +
.../sensors/redis_pub_sub_sensor/index.rst.txt | 39 +
.../sensors/sagemaker_base_sensor/index.rst.txt | 54 +
.../sagemaker_endpoint_sensor/index.rst.txt | 55 +
.../sagemaker_training_sensor/index.rst.txt | 62 +
.../sagemaker_transform_sensor/index.rst.txt | 56 +
.../sensors/sagemaker_tuning_sensor/index.rst.txt | 56 +
.../contrib/sensors/sftp_sensor/index.rst.txt | 31 +
.../contrib/sensors/wasb_sensor/index.rst.txt | 63 +
.../contrib/sensors/weekday_sensor/index.rst.txt | 66 +
.../airflow/executors/base_executor/index.rst.txt | 120 +
.../executors/celery_executor/index.rst.txt | 115 +
.../airflow/executors/dask_executor/index.rst.txt | 46 +
.../_sources/_api/airflow/executors/index.rst.txt | 337 +
.../airflow/executors/local_executor/index.rst.txt | 171 +
.../executors/sequential_executor/index.rst.txt | 36 +
.../_api/airflow/hooks/S3_hook/index.rst.txt | 333 +
.../_api/airflow/hooks/base_hook/index.rst.txt | 70 +
.../_api/airflow/hooks/dbapi_hook/index.rst.txt | 198 +
.../_api/airflow/hooks/docker_hook/index.rst.txt | 30 +
.../_api/airflow/hooks/druid_hook/index.rst.txt | 92 +
.../_api/airflow/hooks/hdfs_hook/index.rst.txt | 40 +
.../_api/airflow/hooks/hive_hooks/index.rst.txt | 469 +
.../_api/airflow/hooks/http_hook/index.rst.txt | 106 +
.../_sources/_api/airflow/hooks/index.rst.txt | 51 +
.../_api/airflow/hooks/jdbc_hook/index.rst.txt | 50 +
.../_api/airflow/hooks/mssql_hook/index.rst.txt | 48 +
.../_api/airflow/hooks/mysql_hook/index.rst.txt | 104 +
.../_api/airflow/hooks/oracle_hook/index.rst.txt | 99 +
.../_api/airflow/hooks/pig_hook/index.rst.txt | 37 +
.../_api/airflow/hooks/postgres_hook/index.rst.txt | 106 +
.../_api/airflow/hooks/presto_hook/index.rst.txt | 98 +
.../_api/airflow/hooks/samba_hook/index.rst.txt | 26 +
.../_api/airflow/hooks/slack_hook/index.rst.txt | 26 +
.../_api/airflow/hooks/sqlite_hook/index.rst.txt | 38 +
.../_api/airflow/hooks/webhdfs_hook/index.rst.txt | 85 +
.../_api/airflow/hooks/zendesk_hook/index.rst.txt | 47 +
.../_api/airflow/models/base/index.rst.txt | 29 +
.../_api/airflow/models/baseoperator/index.rst.txt | 589 +
.../_api/airflow/models/chart/index.rst.txt | 104 +
.../_api/airflow/models/connection/index.rst.txt | 147 +
.../_api/airflow/models/crypto/index.rst.txt | 56 +
.../_sources/_api/airflow/models/dag/index.rst.txt | 808 +
.../_api/airflow/models/dagbag/index.rst.txt | 118 +
.../_api/airflow/models/dagpickle/index.rst.txt | 48 +
.../_api/airflow/models/dagrun/index.rst.txt | 230 +
.../_api/airflow/models/errors/index.rst.txt | 39 +
.../_sources/_api/airflow/models/index.rst.txt | 3276 ++++
.../_api/airflow/models/knownevent/index.rst.txt | 94 +
.../_api/airflow/models/kubernetes/index.rst.txt | 74 +
.../_sources/_api/airflow/models/log/index.rst.txt | 66 +
.../_api/airflow/models/pool/index.rst.txt | 92 +
.../_api/airflow/models/skipmixin/index.rst.txt | 35 +
.../_api/airflow/models/slamiss/index.rst.txt | 68 +
.../_api/airflow/models/taskfail/index.rst.txt | 61 +
.../_api/airflow/models/taskinstance/index.rst.txt | 552 +
.../airflow/models/taskreschedule/index.rst.txt | 82 +
.../_api/airflow/models/user/index.rst.txt | 54 +
.../_api/airflow/models/variable/index.rst.txt | 101 +
.../_api/airflow/models/xcom/index.rst.txt | 122 +
.../airflow/operators/bash_operator/index.rst.txt | 62 +
.../operators/branch_operator/index.rst.txt | 47 +
.../airflow/operators/check_operator/index.rst.txt | 205 +
.../operators/dagrun_operator/index.rst.txt | 51 +
.../operators/docker_operator/index.rst.txt | 135 +
.../operators/druid_check_operator/index.rst.txt | 66 +
.../airflow/operators/dummy_operator/index.rst.txt | 27 +
.../airflow/operators/email_operator/index.rst.txt | 55 +
.../operators/generic_transfer/index.rst.txt | 53 +
.../airflow/operators/hive_operator/index.rst.txt | 84 +
.../operators/hive_stats_operator/index.rst.txt | 62 +
.../airflow/operators/hive_to_druid/index.rst.txt | 81 +
.../airflow/operators/hive_to_mysql/index.rst.txt | 62 +
.../operators/hive_to_samba_operator/index.rst.txt | 39 +
.../airflow/operators/http_operator/index.rst.txt | 62 +
.../_sources/_api/airflow/operators/index.rst.txt | 617 +
.../airflow/operators/jdbc_operator/index.rst.txt | 50 +
.../operators/latest_only_operator/index.rst.txt | 30 +
.../airflow/operators/mssql_operator/index.rst.txt | 49 +
.../airflow/operators/mssql_to_hive/index.rst.txt | 74 +
.../airflow/operators/mysql_operator/index.rst.txt | 51 +
.../airflow/operators/mysql_to_hive/index.rst.txt | 73 +
.../operators/oracle_operator/index.rst.txt | 49 +
.../airflow/operators/pig_operator/index.rst.txt | 64 +
.../operators/postgres_operator/index.rst.txt | 50 +
.../operators/presto_check_operator/index.rst.txt | 90 +
.../operators/presto_to_mysql/index.rst.txt | 53 +
.../operators/python_operator/index.rst.txt | 226 +
.../redshift_to_s3_operator/index.rst.txt | 62 +
.../s3_file_transform_operator/index.rst.txt | 77 +
.../operators/s3_to_hive_operator/index.rst.txt | 112 +
.../s3_to_redshift_operator/index.rst.txt | 62 +
.../_api/airflow/operators/sensors/index.rst.txt | 69 +
.../airflow/operators/slack_operator/index.rst.txt | 84 +
.../operators/sqlite_operator/index.rst.txt | 44 +
.../operators/subdag_operator/index.rst.txt | 40 +
.../sensors/base_sensor_operator/index.rst.txt | 85 +
.../sensors/external_task_sensor/index.rst.txt | 56 +
.../_api/airflow/sensors/hdfs_sensor/index.rst.txt | 58 +
.../sensors/hive_partition_sensor/index.rst.txt | 47 +
.../_api/airflow/sensors/http_sensor/index.rst.txt | 45 +
.../_sources/_api/airflow/sensors/index.rst.txt | 44 +
.../metastore_partition_sensor/index.rst.txt | 47 +
.../named_hive_partition_sensor/index.rst.txt | 53 +
.../airflow/sensors/s3_key_sensor/index.rst.txt | 50 +
.../airflow/sensors/s3_prefix_sensor/index.rst.txt | 52 +
.../_api/airflow/sensors/sql_sensor/index.rst.txt | 58 +
.../sensors/time_delta_sensor/index.rst.txt | 27 +
.../_api/airflow/sensors/time_sensor/index.rst.txt | 24 +
.../airflow/sensors/web_hdfs_sensor/index.rst.txt | 26 +
docs-archive/1.10.5/_sources/_api/index.rst.txt | 129 +
docs-archive/1.10.5/_sources/api.rst.txt | 148 +
docs-archive/1.10.5/_sources/changelog.rst.txt | 23 +
docs-archive/1.10.5/_sources/cli.rst.txt | 33 +
docs-archive/1.10.5/_sources/concepts.rst.txt | 1145 ++
docs-archive/1.10.5/_sources/faq.rst.txt | 214 +
.../1.10.5/_sources/howto/check-health.rst.txt | 50 +
.../1.10.5/_sources/howto/connection/aws.rst.txt | 66 +
.../1.10.5/_sources/howto/connection/gcp.rst.txt | 121 +
.../_sources/howto/connection/gcp_sql.rst.txt | 78 +
.../1.10.5/_sources/howto/connection/grpc.rst.txt | 75 +
.../1.10.5/_sources/howto/connection/index.rst.txt | 94 +
.../1.10.5/_sources/howto/connection/mysql.rst.txt | 96 +
.../_sources/howto/connection/oracle.rst.txt | 87 +
.../_sources/howto/connection/postgres.rst.txt | 81 +
.../1.10.5/_sources/howto/connection/ssh.rst.txt | 69 +
.../_sources/howto/define_extra_link.rst.txt | 58 +
.../_sources/howto/executor/use-celery.rst.txt | 72 +
.../_sources/howto/executor/use-dask.rst.txt | 50 +
.../_sources/howto/executor/use-mesos.rst.txt | 82 +
docs-archive/1.10.5/_sources/howto/index.rst.txt | 47 +
.../_sources/howto/initialize-database.rst.txt | 48 +
.../1.10.5/_sources/howto/operator/bash.rst.txt | 64 +
.../_sources/howto/operator/dingding.rst.txt | 93 +
.../_sources/howto/operator/gcp/bigtable.rst.txt | 172 +
.../howto/operator/gcp/cloud_build.rst.txt | 117 +
.../_sources/howto/operator/gcp/compute.rst.txt | 327 +
.../_sources/howto/operator/gcp/function.rst.txt | 204 +
.../1.10.5/_sources/howto/operator/gcp/gcs.rst.txt | 129 +
.../_sources/howto/operator/gcp/index.rst.txt | 28 +
.../howto/operator/gcp/natural_language.rst.txt | 182 +
.../_sources/howto/operator/gcp/spanner.rst.txt | 278 +
.../_sources/howto/operator/gcp/speech.rst.txt | 127 +
.../1.10.5/_sources/howto/operator/gcp/sql.rst.txt | 646 +
.../_sources/howto/operator/gcp/transfer.rst.txt | 422 +
.../howto/operator/gcp/translate-speech.rst.txt | 89 +
.../_sources/howto/operator/gcp/translate.rst.txt | 70 +
.../_sources/howto/operator/gcp/video.rst.txt | 216 +
.../_sources/howto/operator/gcp/vision.rst.txt | 1184 ++
.../1.10.5/_sources/howto/operator/index.rst.txt | 36 +
.../1.10.5/_sources/howto/operator/python.rst.txt | 52 +
.../1.10.5/_sources/howto/run-behind-proxy.rst.txt | 84 +
.../1.10.5/_sources/howto/run-with-systemd.rst.txt | 40 +
.../1.10.5/_sources/howto/run-with-upstart.rst.txt | 44 +
.../_sources/howto/secure-connections.rst.txt | 63 +
.../1.10.5/_sources/howto/set-config.rst.txt | 68 +
.../_sources/howto/tracking-user-activity.rst.txt | 36 +
.../1.10.5/_sources/howto/use-test-config.rst.txt | 34 +
.../1.10.5/_sources/howto/write-logs.rst.txt | 207 +
docs-archive/1.10.5/_sources/index.rst.txt | 100 +
docs-archive/1.10.5/_sources/installation.rst.txt | 138 +
docs-archive/1.10.5/_sources/integration.rst.txt | 967 ++
docs-archive/1.10.5/_sources/kubernetes.rst.txt | 168 +
docs-archive/1.10.5/_sources/license.rst.txt | 201 +
docs-archive/1.10.5/_sources/lineage.rst.txt | 113 +
docs-archive/1.10.5/_sources/macros.rst.txt | 123 +
docs-archive/1.10.5/_sources/metrics.rst.txt | 92 +
docs-archive/1.10.5/_sources/plugins.rst.txt | 302 +
.../1.10.5/_sources/privacy_notice.rst.txt | 68 +
docs-archive/1.10.5/_sources/profiling.rst.txt | 58 +
docs-archive/1.10.5/_sources/project.rst.txt | 91 +
docs-archive/1.10.5/_sources/scheduler.rst.txt | 187 +
docs-archive/1.10.5/_sources/security.rst.txt | 593 +
docs-archive/1.10.5/_sources/start.rst.txt | 73 +
docs-archive/1.10.5/_sources/timezone.rst.txt | 164 +
docs-archive/1.10.5/_sources/tutorial.rst.txt | 474 +
docs-archive/1.10.5/_sources/ui.rst.txt | 121 +
docs-archive/1.10.5/_static/basic.css | 764 +
docs-archive/1.10.5/_static/css/badge_only.css | 1 +
docs-archive/1.10.5/_static/css/theme.css | 6 +
docs-archive/1.10.5/_static/doctools.js | 314 +
.../1.10.5/_static/documentation_options.js | 10 +
docs-archive/1.10.5/_static/file.png | Bin 0 -> 286 bytes
.../1.10.5/_static/fonts/Inconsolata-Bold.ttf | Bin 0 -> 109948 bytes
.../1.10.5/_static/fonts/Inconsolata-Regular.ttf | Bin 0 -> 96964 bytes
docs-archive/1.10.5/_static/fonts/Inconsolata.ttf | Bin 0 -> 63184 bytes
docs-archive/1.10.5/_static/fonts/Lato-Bold.ttf | Bin 0 -> 656544 bytes
docs-archive/1.10.5/_static/fonts/Lato-Regular.ttf | Bin 0 -> 656568 bytes
.../1.10.5/_static/fonts/Lato/lato-bold.eot | Bin 0 -> 256056 bytes
.../1.10.5/_static/fonts/Lato/lato-bold.ttf | Bin 0 -> 600856 bytes
.../1.10.5/_static/fonts/Lato/lato-bold.woff | Bin 0 -> 309728 bytes
.../1.10.5/_static/fonts/Lato/lato-bold.woff2 | Bin 0 -> 184912 bytes
.../1.10.5/_static/fonts/Lato/lato-bolditalic.eot | Bin 0 -> 266158 bytes
.../1.10.5/_static/fonts/Lato/lato-bolditalic.ttf | Bin 0 -> 622572 bytes
.../1.10.5/_static/fonts/Lato/lato-bolditalic.woff | Bin 0 -> 323344 bytes
.../_static/fonts/Lato/lato-bolditalic.woff2 | Bin 0 -> 193308 bytes
.../1.10.5/_static/fonts/Lato/lato-italic.eot | Bin 0 -> 268604 bytes
.../1.10.5/_static/fonts/Lato/lato-italic.ttf | Bin 0 -> 639388 bytes
.../1.10.5/_static/fonts/Lato/lato-italic.woff | Bin 0 -> 328412 bytes
.../1.10.5/_static/fonts/Lato/lato-italic.woff2 | Bin 0 -> 195704 bytes
.../1.10.5/_static/fonts/Lato/lato-regular.eot | Bin 0 -> 253461 bytes
.../1.10.5/_static/fonts/Lato/lato-regular.ttf | Bin 0 -> 607720 bytes
.../1.10.5/_static/fonts/Lato/lato-regular.woff | Bin 0 -> 309192 bytes
.../1.10.5/_static/fonts/Lato/lato-regular.woff2 | Bin 0 -> 182708 bytes
.../1.10.5/_static/fonts/RobotoSlab-Bold.ttf | Bin 0 -> 170616 bytes
.../1.10.5/_static/fonts/RobotoSlab-Regular.ttf | Bin 0 -> 169064 bytes
.../fonts/RobotoSlab/roboto-slab-v7-bold.eot | Bin 0 -> 79520 bytes
.../fonts/RobotoSlab/roboto-slab-v7-bold.ttf | Bin 0 -> 170616 bytes
.../fonts/RobotoSlab/roboto-slab-v7-bold.woff | Bin 0 -> 87624 bytes
.../fonts/RobotoSlab/roboto-slab-v7-bold.woff2 | Bin 0 -> 67312 bytes
.../fonts/RobotoSlab/roboto-slab-v7-regular.eot | Bin 0 -> 78331 bytes
.../fonts/RobotoSlab/roboto-slab-v7-regular.ttf | Bin 0 -> 169064 bytes
.../fonts/RobotoSlab/roboto-slab-v7-regular.woff | Bin 0 -> 86288 bytes
.../fonts/RobotoSlab/roboto-slab-v7-regular.woff2 | Bin 0 -> 66444 bytes
.../1.10.5/_static/fonts/fontawesome-webfont.eot | Bin 0 -> 165742 bytes
.../1.10.5/_static/fonts/fontawesome-webfont.svg | 2671 ++++
.../1.10.5/_static/fonts/fontawesome-webfont.ttf | Bin 0 -> 165548 bytes
.../1.10.5/_static/fonts/fontawesome-webfont.woff | Bin 0 -> 98024 bytes
.../1.10.5/_static/fonts/fontawesome-webfont.woff2 | Bin 0 -> 77160 bytes
docs-archive/1.10.5/_static/jquery-3.4.1.js | 10598 +++++++++++++
docs-archive/1.10.5/_static/jquery.js | 2 +
docs-archive/1.10.5/_static/js/modernizr.min.js | 4 +
docs-archive/1.10.5/_static/js/theme.js | 3 +
docs-archive/1.10.5/_static/language_data.js | 297 +
docs-archive/1.10.5/_static/minus.png | Bin 0 -> 90 bytes
docs-archive/1.10.5/_static/plus.png | Bin 0 -> 90 bytes
docs-archive/1.10.5/_static/pygments.css | 69 +
docs-archive/1.10.5/_static/searchtools.js | 506 +
docs-archive/1.10.5/_static/underscore-1.3.1.js | 999 ++
docs-archive/1.10.5/_static/underscore.js | 31 +
docs-archive/1.10.5/api.html | 511 +
docs-archive/1.10.5/changelog.html | 3490 +++++
docs-archive/1.10.5/cli.html | 1628 ++
docs-archive/1.10.5/concepts.html | 1346 ++
docs-archive/1.10.5/faq.html | 524 +
docs-archive/1.10.5/genindex.html | 9636 ++++++++++++
docs-archive/1.10.5/howto/check-health.html | 395 +
docs-archive/1.10.5/howto/connection/aws.html | 420 +
docs-archive/1.10.5/howto/connection/gcp.html | 468 +
docs-archive/1.10.5/howto/connection/gcp_sql.html | 430 +
docs-archive/1.10.5/howto/connection/grpc.html | 432 +
docs-archive/1.10.5/howto/connection/index.html | 446 +
docs-archive/1.10.5/howto/connection/mysql.html | 451 +
docs-archive/1.10.5/howto/connection/oracle.html | 440 +
docs-archive/1.10.5/howto/connection/postgres.html | 436 +
docs-archive/1.10.5/howto/connection/ssh.html | 425 +
docs-archive/1.10.5/howto/define_extra_link.html | 396 +
docs-archive/1.10.5/howto/executor/use-celery.html | 408 +
docs-archive/1.10.5/howto/executor/use-dask.html | 389 +
docs-archive/1.10.5/howto/executor/use-mesos.html | 431 +
docs-archive/1.10.5/howto/index.html | 412 +
docs-archive/1.10.5/howto/initialize-database.html | 394 +
docs-archive/1.10.5/howto/operator/bash.html | 424 +
docs-archive/1.10.5/howto/operator/dingding.html | 497 +
.../1.10.5/howto/operator/gcp/bigtable.html | 608 +
.../1.10.5/howto/operator/gcp/cloud_build.html | 500 +
.../1.10.5/howto/operator/gcp/compute.html | 746 +
.../1.10.5/howto/operator/gcp/function.html | 600 +
docs-archive/1.10.5/howto/operator/gcp/gcs.html | 511 +
docs-archive/1.10.5/howto/operator/gcp/index.html | 409 +
.../howto/operator/gcp/natural_language.html | 578 +
.../1.10.5/howto/operator/gcp/spanner.html | 722 +
docs-archive/1.10.5/howto/operator/gcp/speech.html | 506 +
docs-archive/1.10.5/howto/operator/gcp/sql.html | 1370 ++
.../1.10.5/howto/operator/gcp/transfer.html | 901 ++
.../howto/operator/gcp/translate-speech.html | 450 +
.../1.10.5/howto/operator/gcp/translate.html | 442 +
docs-archive/1.10.5/howto/operator/gcp/video.html | 584 +
docs-archive/1.10.5/howto/operator/gcp/vision.html | 1554 ++
docs-archive/1.10.5/howto/operator/index.html | 418 +
docs-archive/1.10.5/howto/operator/python.html | 429 +
docs-archive/1.10.5/howto/run-behind-proxy.html | 429 +
docs-archive/1.10.5/howto/run-with-systemd.html | 379 +
docs-archive/1.10.5/howto/run-with-upstart.html | 389 +
docs-archive/1.10.5/howto/secure-connections.html | 407 +
docs-archive/1.10.5/howto/set-config.html | 404 +
.../1.10.5/howto/tracking-user-activity.html | 381 +
docs-archive/1.10.5/howto/use-test-config.html | 374 +
docs-archive/1.10.5/howto/write-logs.html | 533 +
docs-archive/1.10.5/http-routingtable.html | 403 +
docs-archive/1.10.5/index.html | 1033 ++
docs-archive/1.10.5/installation.html | 529 +
docs-archive/1.10.5/integration.html | 1144 ++
docs-archive/1.10.5/kubernetes.html | 487 +
docs-archive/1.10.5/license.html | 521 +
docs-archive/1.10.5/lineage.html | 430 +
docs-archive/1.10.5/macros.html | 667 +
docs-archive/1.10.5/metrics.html | 490 +
docs-archive/1.10.5/objects.inv | Bin 0 -> 39960 bytes
docs-archive/1.10.5/plugins.html | 605 +
docs-archive/1.10.5/privacy_notice.html | 381 +
docs-archive/1.10.5/profiling.html | 382 +
docs-archive/1.10.5/project.html | 412 +
docs-archive/1.10.5/py-modindex.html | 1920 +++
docs-archive/1.10.5/scheduler.html | 523 +
docs-archive/1.10.5/search.html | 346 +
docs-archive/1.10.5/searchindex.js | 1 +
docs-archive/1.10.5/security.html | 894 ++
docs-archive/1.10.5/start.html | 393 +
docs-archive/1.10.5/timezone.html | 475 +
docs-archive/1.10.5/tutorial.html | 776 +
docs-archive/1.10.5/ui.html | 428 +
.../_api/airflow/contrib/executors/index.html | 395 +
.../executors/kubernetes_executor/index.html | 694 +
.../contrib/executors/mesos_executor/index.html | 500 +
.../contrib/hooks/aws_athena_hook/index.html | 523 +
.../contrib/hooks/aws_dynamodb_hook/index.html | 420 +
.../contrib/hooks/aws_firehose_hook/index.html | 416 +
.../contrib/hooks/aws_glue_catalog_hook/index.html | 505 +
.../_api/airflow/contrib/hooks/aws_hook/index.html | 465 +
.../contrib/hooks/aws_lambda_hook/index.html | 422 +
.../airflow/contrib/hooks/aws_logs_hook/index.html | 451 +
.../airflow/contrib/hooks/aws_sns_hook/index.html | 421 +
.../airflow/contrib/hooks/aws_sqs_hook/index.html | 459 +
.../hooks/azure_container_instance_hook/index.html | 539 +
.../hooks/azure_container_registry_hook/index.html | 409 +
.../hooks/azure_container_volume_hook/index.html | 414 +
.../contrib/hooks/azure_cosmos_hook/index.html | 504 +
.../contrib/hooks/azure_data_lake_hook/index.html | 486 +
.../contrib/hooks/azure_fileshare_hook/index.html | 591 +
.../airflow/contrib/hooks/bigquery_hook/index.html | 1402 ++
.../contrib/hooks/cassandra_hook/index.html | 487 +
.../airflow/contrib/hooks/cloudant_hook/index.html | 413 +
.../contrib/hooks/databricks_hook/index.html | 596 +
.../airflow/contrib/hooks/datadog_hook/index.html | 477 +
.../contrib/hooks/datastore_hook/index.html | 664 +
.../airflow/contrib/hooks/dingding_hook/index.html | 446 +
.../contrib/hooks/discord_webhook_hook/index.html | 456 +
.../_api/airflow/contrib/hooks/emr_hook/index.html | 413 +
.../_api/airflow/contrib/hooks/fs_hook/index.html | 414 +
.../_api/airflow/contrib/hooks/ftp_hook/index.html | 609 +
.../contrib/hooks/gcp_api_base_hook/index.html | 573 +
.../contrib/hooks/gcp_bigtable_hook/index.html | 561 +
.../contrib/hooks/gcp_cloud_build_hook/index.html | 474 +
.../contrib/hooks/gcp_compute_hook/index.html | 647 +
.../contrib/hooks/gcp_container_hook/index.html | 564 +
.../contrib/hooks/gcp_dataflow_hook/index.html | 495 +
.../contrib/hooks/gcp_dataproc_hook/index.html | 562 +
.../airflow/contrib/hooks/gcp_dlp_hook/index.html | 1272 ++
.../contrib/hooks/gcp_function_hook/index.html | 550 +
.../airflow/contrib/hooks/gcp_kms_hook/index.html | 471 +
.../contrib/hooks/gcp_mlengine_hook/index.html | 517 +
.../hooks/gcp_natural_language_hook/index.html | 570 +
.../contrib/hooks/gcp_pubsub_hook/index.html | 573 +
.../contrib/hooks/gcp_spanner_hook/index.html | 644 +
.../hooks/gcp_speech_to_text_hook/index.html | 447 +
.../airflow/contrib/hooks/gcp_sql_hook/index.html | 967 ++
.../hooks/gcp_text_to_speech_hook/index.html | 456 +
.../contrib/hooks/gcp_transfer_hook/index.html | 915 ++
.../contrib/hooks/gcp_translate_hook/index.html | 463 +
.../hooks/gcp_video_intelligence_hook/index.html | 454 +
.../contrib/hooks/gcp_vision_hook/index.html | 603 +
.../_api/airflow/contrib/hooks/gcs_hook/index.html | 715 +
.../airflow/contrib/hooks/grpc_hook/index.html | 419 +
.../airflow/contrib/hooks/imap_hook/index.html | 657 +
.../1.10.6/_api/airflow/contrib/hooks/index.html | 481 +
.../airflow/contrib/hooks/jenkins_hook/index.html | 403 +
.../airflow/contrib/hooks/jira_hook/index.html | 408 +
.../airflow/contrib/hooks/mongo_hook/index.html | 594 +
.../airflow/contrib/hooks/openfaas_hook/index.html | 457 +
.../contrib/hooks/opsgenie_alert_hook/index.html | 438 +
.../airflow/contrib/hooks/pinot_hook/index.html | 465 +
.../contrib/hooks/qubole_check_hook/index.html | 442 +
.../airflow/contrib/hooks/qubole_hook/index.html | 514 +
.../airflow/contrib/hooks/redis_hook/index.html | 406 +
.../airflow/contrib/hooks/redshift_hook/index.html | 468 +
.../contrib/hooks/sagemaker_hook/index.html | 890 ++
.../contrib/hooks/salesforce_hook/index.html | 534 +
.../airflow/contrib/hooks/segment_hook/index.html | 416 +
.../airflow/contrib/hooks/sftp_hook/index.html | 495 +
.../contrib/hooks/slack_webhook_hook/index.html | 446 +
.../contrib/hooks/snowflake_hook/index.html | 446 +
.../contrib/hooks/spark_jdbc_hook/index.html | 479 +
.../contrib/hooks/spark_jdbc_script/index.html | 411 +
.../contrib/hooks/spark_sql_hook/index.html | 458 +
.../contrib/hooks/spark_submit_hook/index.html | 568 +
.../airflow/contrib/hooks/sqoop_hook/index.html | 557 +
.../_api/airflow/contrib/hooks/ssh_hook/index.html | 461 +
.../airflow/contrib/hooks/vertica_hook/index.html | 419 +
.../airflow/contrib/hooks/wasb_hook/index.html | 542 +
.../airflow/contrib/hooks/winrm_hook/index.html | 445 +
.../operators/adls_list_operator/index.html | 447 +
.../contrib/operators/adls_to_gcs/index.html | 479 +
.../operators/aws_athena_operator/index.html | 452 +
.../operators/aws_sqs_publish_operator/index.html | 448 +
.../contrib/operators/awsbatch_operator/index.html | 485 +
.../azure_container_instances_operator/index.html | 521 +
.../operators/azure_cosmos_operator/index.html | 432 +
.../operators/bigquery_check_operator/index.html | 521 +
.../contrib/operators/bigquery_get_data/index.html | 461 +
.../contrib/operators/bigquery_operator/index.html | 924 ++
.../bigquery_table_delete_operator/index.html | 436 +
.../operators/bigquery_to_bigquery/index.html | 460 +
.../contrib/operators/bigquery_to_gcs/index.html | 455 +
.../contrib/operators/cassandra_to_gcs/index.html | 573 +
.../operators/databricks_operator/index.html | 763 +
.../contrib/operators/dataflow_operator/index.html | 687 +
.../contrib/operators/dataproc_operator/index.html | 1076 ++
.../operators/datastore_export_operator/index.html | 435 +
.../operators/datastore_import_operator/index.html | 433 +
.../contrib/operators/dingding_operator/index.html | 437 +
.../operators/discord_webhook_operator/index.html | 439 +
.../contrib/operators/druid_operator/index.html | 430 +
.../contrib/operators/ecs_operator/index.html | 488 +
.../operators/emr_add_steps_operator/index.html | 435 +
.../emr_create_job_flow_operator/index.html | 438 +
.../emr_terminate_job_flow_operator/index.html | 434 +
.../contrib/operators/file_to_gcs/index.html | 431 +
.../contrib/operators/file_to_wasb/index.html | 429 +
.../operators/gcp_bigtable_operator/index.html | 680 +
.../operators/gcp_cloud_build_operator/index.html | 514 +
.../operators/gcp_compute_operator/index.html | 664 +
.../operators/gcp_container_operator/index.html | 594 +
.../contrib/operators/gcp_dlp_operator/index.html | 1595 ++
.../operators/gcp_function_operator/index.html | 619 +
.../gcp_natural_language_operator/index.html | 554 +
.../operators/gcp_spanner_operator/index.html | 657 +
.../gcp_speech_to_text_operator/index.html | 445 +
.../contrib/operators/gcp_sql_operator/index.html | 891 ++
.../gcp_text_to_speech_operator/index.html | 449 +
.../operators/gcp_transfer_operator/index.html | 954 ++
.../operators/gcp_translate_operator/index.html | 452 +
.../gcp_translate_speech_operator/index.html | 465 +
.../gcp_video_intelligence_operator/index.html | 539 +
.../operators/gcp_vision_operator/index.html | 1137 ++
.../contrib/operators/gcs_acl_operator/index.html | 480 +
.../operators/gcs_delete_operator/index.html | 434 +
.../operators/gcs_download_operator/index.html | 446 +
.../contrib/operators/gcs_list_operator/index.html | 456 +
.../contrib/operators/gcs_operator/index.html | 478 +
.../airflow/contrib/operators/gcs_to_bq/index.html | 516 +
.../contrib/operators/gcs_to_gcs/index.html | 511 +
.../airflow/contrib/operators/gcs_to_s3/index.html | 465 +
.../contrib/operators/hipchat_operator/index.html | 469 +
.../contrib/operators/hive_to_dynamodb/index.html | 444 +
.../imap_attachment_to_s3_operator/index.html | 435 +
.../_api/airflow/contrib/operators/index.html | 513 +
.../jenkins_job_trigger_operator/index.html | 514 +
.../contrib/operators/jira_operator/index.html | 429 +
.../operators/kubernetes_pod_operator/index.html | 474 +
.../contrib/operators/mlengine_operator/index.html | 656 +
.../contrib/operators/mongo_to_s3/index.html | 445 +
.../contrib/operators/mssql_to_gcs/index.html | 465 +
.../contrib/operators/mysql_to_gcs/index.html | 462 +
.../operators/opsgenie_alert_operator/index.html | 458 +
.../oracle_to_azure_data_lake_transfer/index.html | 443 +
.../operators/oracle_to_oracle_transfer/index.html | 439 +
.../operators/postgres_to_gcs_operator/index.html | 447 +
.../contrib/operators/pubsub_operator/index.html | 640 +
.../operators/qubole_check_operator/index.html | 586 +
.../contrib/operators/qubole_operator/index.html | 744 +
.../operators/redis_publish_operator/index.html | 431 +
.../operators/s3_copy_object_operator/index.html | 457 +
.../s3_delete_objects_operator/index.html | 451 +
.../contrib/operators/s3_list_operator/index.html | 467 +
.../operators/s3_to_gcs_operator/index.html | 480 +
.../operators/s3_to_sftp_operator/index.html | 439 +
.../operators/sagemaker_base_operator/index.html | 459 +
.../sagemaker_endpoint_config_operator/index.html | 427 +
.../sagemaker_endpoint_operator/index.html | 456 +
.../operators/sagemaker_model_operator/index.html | 427 +
.../sagemaker_training_operator/index.html | 440 +
.../sagemaker_transform_operator/index.html | 452 +
.../operators/sagemaker_tuning_operator/index.html | 439 +
.../segment_track_event_operator/index.html | 433 +
.../contrib/operators/sftp_operator/index.html | 487 +
.../operators/sftp_to_s3_operator/index.html | 440 +
.../operators/slack_webhook_operator/index.html | 440 +
.../operators/snowflake_operator/index.html | 449 +
.../operators/sns_publish_operator/index.html | 430 +
.../operators/spark_jdbc_operator/index.html | 480 +
.../operators/spark_sql_operator/index.html | 447 +
.../operators/spark_submit_operator/index.html | 467 +
.../contrib/operators/sql_to_gcs/index.html | 536 +
.../contrib/operators/sqoop_operator/index.html | 431 +
.../contrib/operators/ssh_operator/index.html | 444 +
.../contrib/operators/vertica_operator/index.html | 436 +
.../contrib/operators/vertica_to_hive/index.html | 458 +
.../contrib/operators/vertica_to_mysql/index.html | 448 +
.../operators/wasb_delete_blob_operator/index.html | 430 +
.../contrib/operators/winrm_operator/index.html | 428 +
.../contrib/sensors/aws_athena_sensor/index.html | 459 +
.../aws_glue_catalog_partition_sensor/index.html | 449 +
.../sensors/aws_redshift_cluster_sensor/index.html | 424 +
.../contrib/sensors/aws_sqs_sensor/index.html | 437 +
.../contrib/sensors/azure_cosmos_sensor/index.html | 424 +
.../airflow/contrib/sensors/bash_sensor/index.html | 432 +
.../contrib/sensors/bigquery_sensor/index.html | 438 +
.../sensors/cassandra_record_sensor/index.html | 425 +
.../sensors/cassandra_table_sensor/index.html | 423 +
.../contrib/sensors/datadog_sensor/index.html | 427 +
.../contrib/sensors/emr_base_sensor/index.html | 418 +
.../contrib/sensors/emr_job_flow_sensor/index.html | 447 +
.../contrib/sensors/emr_step_sensor/index.html | 450 +
.../airflow/contrib/sensors/file_sensor/index.html | 433 +
.../airflow/contrib/sensors/ftp_sensor/index.html | 452 +
.../contrib/sensors/gcp_transfer_sensor/index.html | 432 +
.../airflow/contrib/sensors/gcs_sensor/index.html | 593 +
.../airflow/contrib/sensors/hdfs_sensor/index.html | 433 +
.../sensors/imap_attachment_sensor/index.html | 443 +
.../1.10.6/_api/airflow/contrib/sensors/index.html | 435 +
.../airflow/contrib/sensors/jira_sensor/index.html | 454 +
.../contrib/sensors/mongo_sensor/index.html | 423 +
.../contrib/sensors/pubsub_sensor/index.html | 436 +
.../contrib/sensors/python_sensor/index.html | 440 +
.../contrib/sensors/qubole_sensor/index.html | 468 +
.../contrib/sensors/redis_key_sensor/index.html | 421 +
.../sensors/redis_pub_sub_sensor/index.html | 431 +
.../sensors/sagemaker_base_sensor/index.html | 444 +
.../sensors/sagemaker_endpoint_sensor/index.html | 447 +
.../sensors/sagemaker_training_sensor/index.html | 455 +
.../sensors/sagemaker_transform_sensor/index.html | 448 +
.../sensors/sagemaker_tuning_sensor/index.html | 448 +
.../airflow/contrib/sensors/sftp_sensor/index.html | 424 +
.../airflow/contrib/sensors/wasb_sensor/index.html | 455 +
.../contrib/sensors/weekday_sensor/index.html | 462 +
.../airflow/executors/base_executor/index.html | 510 +
.../airflow/executors/celery_executor/index.html | 527 +
.../airflow/executors/dask_executor/index.html | 428 +
.../1.10.6/_api/airflow/executors/index.html | 747 +
.../airflow/executors/local_executor/index.html | 552 +
.../executors/sequential_executor/index.html | 417 +
.../1.10.6/_api/airflow/hooks/S3_hook/index.html | 722 +
.../1.10.6/_api/airflow/hooks/base_hook/index.html | 452 +
.../_api/airflow/hooks/dbapi_hook/index.html | 597 +
.../_api/airflow/hooks/docker_hook/index.html | 414 +
.../_api/airflow/hooks/druid_hook/index.html | 472 +
.../1.10.6/_api/airflow/hooks/hdfs_hook/index.html | 424 +
.../_api/airflow/hooks/hive_hooks/index.html | 880 ++
.../1.10.6/_api/airflow/hooks/http_hook/index.html | 493 +
docs-archive/1.10.6/_api/airflow/hooks/index.html | 433 +
.../1.10.6/_api/airflow/hooks/jdbc_hook/index.html | 435 +
.../_api/airflow/hooks/mssql_hook/index.html | 429 +
.../_api/airflow/hooks/mysql_hook/index.html | 490 +
.../_api/airflow/hooks/oracle_hook/index.html | 485 +
.../1.10.6/_api/airflow/hooks/pig_hook/index.html | 418 +
.../_api/airflow/hooks/postgres_hook/index.html | 486 +
.../_api/airflow/hooks/presto_hook/index.html | 477 +
.../_api/airflow/hooks/samba_hook/index.html | 408 +
.../_api/airflow/hooks/slack_hook/index.html | 408 +
.../_api/airflow/hooks/sqlite_hook/index.html | 419 +
.../_api/airflow/hooks/webhdfs_hook/index.html | 479 +
.../_api/airflow/hooks/zendesk_hook/index.html | 432 +
.../1.10.6/_api/airflow/models/base/index.html | 411 +
.../_api/airflow/models/baseoperator/index.html | 993 ++
.../1.10.6/_api/airflow/models/chart/index.html | 487 +
.../_api/airflow/models/connection/index.html | 532 +
.../1.10.6/_api/airflow/models/crypto/index.html | 445 +
.../1.10.6/_api/airflow/models/dag/index.html | 1242 ++
.../1.10.6/_api/airflow/models/dagbag/index.html | 518 +
.../_api/airflow/models/dagpickle/index.html | 429 +
.../1.10.6/_api/airflow/models/dagrun/index.html | 616 +
.../1.10.6/_api/airflow/models/errors/index.html | 422 +
docs-archive/1.10.6/_api/airflow/models/index.html | 3767 +++++
.../_api/airflow/models/knownevent/index.html | 478 +
.../_api/airflow/models/kubernetes/index.html | 458 +
.../1.10.6/_api/airflow/models/log/index.html | 448 +
.../1.10.6/_api/airflow/models/pool/index.html | 471 +
.../_api/airflow/models/skipmixin/index.html | 421 +
.../1.10.6/_api/airflow/models/slamiss/index.html | 450 +
.../1.10.6/_api/airflow/models/taskfail/index.html | 445 +
.../_api/airflow/models/taskinstance/index.html | 931 ++
.../_api/airflow/models/taskreschedule/index.html | 467 +
.../1.10.6/_api/airflow/models/user/index.html | 437 +
.../1.10.6/_api/airflow/models/variable/index.html | 488 +
.../1.10.6/_api/airflow/models/xcom/index.html | 507 +
.../airflow/operators/bash_operator/index.html | 453 +
.../airflow/operators/branch_operator/index.html | 433 +
.../airflow/operators/check_operator/index.html | 599 +
.../airflow/operators/dagrun_operator/index.html | 444 +
.../airflow/operators/docker_operator/index.html | 514 +
.../operators/druid_check_operator/index.html | 458 +
.../airflow/operators/dummy_operator/index.html | 417 +
.../airflow/operators/email_operator/index.html | 442 +
.../airflow/operators/generic_transfer/index.html | 442 +
.../airflow/operators/hive_operator/index.html | 471 +
.../operators/hive_stats_operator/index.html | 453 +
.../airflow/operators/hive_to_druid/index.html | 467 +
.../airflow/operators/hive_to_mysql/index.html | 450 +
.../operators/hive_to_samba_operator/index.html | 431 +
.../airflow/operators/http_operator/index.html | 448 +
.../1.10.6/_api/airflow/operators/index.html | 1006 ++
.../airflow/operators/jdbc_operator/index.html | 440 +
.../operators/latest_only_operator/index.html | 421 +
.../airflow/operators/mssql_operator/index.html | 439 +
.../airflow/operators/mssql_to_hive/index.html | 460 +
.../airflow/operators/mysql_operator/index.html | 441 +
.../airflow/operators/mysql_to_hive/index.html | 459 +
.../airflow/operators/oracle_operator/index.html | 440 +
.../operators/papermill_operator/index.html | 436 +
.../_api/airflow/operators/pig_operator/index.html | 455 +
.../airflow/operators/postgres_operator/index.html | 440 +
.../operators/presto_check_operator/index.html | 485 +
.../airflow/operators/presto_to_mysql/index.html | 443 +
.../airflow/operators/python_operator/index.html | 605 +
.../operators/redshift_to_s3_operator/index.html | 462 +
.../s3_file_transform_operator/index.html | 469 +
.../operators/s3_to_hive_operator/index.html | 498 +
.../operators/s3_to_redshift_operator/index.html | 457 +
.../_api/airflow/operators/sensors/index.html | 471 +
.../airflow/operators/slack_operator/index.html | 472 +
.../airflow/operators/sqlite_operator/index.html | 436 +
.../airflow/operators/subdag_operator/index.html | 432 +
.../sensors/base_sensor_operator/index.html | 474 +
.../sensors/external_task_sensor/index.html | 445 +
.../_api/airflow/sensors/hdfs_sensor/index.html | 459 +
.../sensors/hive_partition_sensor/index.html | 438 +
.../_api/airflow/sensors/http_sensor/index.html | 435 +
.../1.10.6/_api/airflow/sensors/index.html | 434 +
.../sensors/metastore_partition_sensor/index.html | 438 +
.../sensors/named_hive_partition_sensor/index.html | 446 +
.../_api/airflow/sensors/s3_key_sensor/index.html | 448 +
.../airflow/sensors/s3_prefix_sensor/index.html | 450 +
.../_api/airflow/sensors/sql_sensor/index.html | 456 +
.../airflow/sensors/time_delta_sensor/index.html | 419 +
.../_api/airflow/sensors/time_sensor/index.html | 416 +
.../airflow/sensors/web_hdfs_sensor/index.html | 416 +
docs-archive/1.10.6/_api/index.html | 521 +
docs-archive/1.10.6/_images/adhoc.png | Bin 0 -> 182773 bytes
docs-archive/1.10.6/_images/airflow.gif | Bin 0 -> 622832 bytes
docs-archive/1.10.6/_images/apache.jpg | Bin 0 -> 43364 bytes
docs-archive/1.10.6/_images/branch_bad.png | Bin 0 -> 8825 bytes
docs-archive/1.10.6/_images/branch_good.png | Bin 0 -> 12035 bytes
.../1.10.6/_images/branch_with_trigger.png | Bin 0 -> 34081 bytes
.../1.10.6/_images/branch_without_trigger.png | Bin 0 -> 39815 bytes
docs-archive/1.10.6/_images/chart.png | Bin 0 -> 169382 bytes
docs-archive/1.10.6/_images/chart_form.png | Bin 0 -> 203224 bytes
docs-archive/1.10.6/_images/cli_completion.gif | Bin 0 -> 775263 bytes
docs-archive/1.10.6/_images/code.png | Bin 0 -> 285906 bytes
docs-archive/1.10.6/_images/connection_create.png | Bin 0 -> 41547 bytes
docs-archive/1.10.6/_images/connection_edit.png | Bin 0 -> 53636 bytes
docs-archive/1.10.6/_images/connections.png | Bin 0 -> 48442 bytes
docs-archive/1.10.6/_images/context.png | Bin 0 -> 149588 bytes
docs-archive/1.10.6/_images/dags.png | Bin 0 -> 217069 bytes
docs-archive/1.10.6/_images/duration.png | Bin 0 -> 250846 bytes
docs-archive/1.10.6/_images/gantt.png | Bin 0 -> 121795 bytes
docs-archive/1.10.6/_images/graph.png | Bin 0 -> 152205 bytes
...iz-a401e86cce11bfcda64a051edda547edccaaa423.png | Bin 0 -> 44547 bytes
...401e86cce11bfcda64a051edda547edccaaa423.png.map | 2 +
.../1.10.6/_images/latest_only_with_trigger.png | Bin 0 -> 49510 bytes
.../1.10.6/_images/operator_extra_link.png | Bin 0 -> 276679 bytes
docs-archive/1.10.6/_images/pin_large.png | Bin 0 -> 24922 bytes
docs-archive/1.10.6/_images/subdag_after.png | Bin 0 -> 30245 bytes
docs-archive/1.10.6/_images/subdag_before.png | Bin 0 -> 70382 bytes
docs-archive/1.10.6/_images/subdag_zoom.png | Bin 0 -> 150185 bytes
docs-archive/1.10.6/_images/task_lifecycle.png | Bin 0 -> 12919 bytes
.../1.10.6/_images/task_manual_vs_scheduled.png | Bin 0 -> 5806 bytes
docs-archive/1.10.6/_images/tree.png | Bin 0 -> 128024 bytes
docs-archive/1.10.6/_images/variable_hidden.png | Bin 0 -> 154299 bytes
.../1.10.6/_modules/airflow/configuration.html | 1005 ++
.../example_dags/example_dingding_operator.html | 563 +
.../example_gcp_bigtable_operators.html | 546 +
.../example_dags/example_gcp_cloud_build.html | 447 +
.../contrib/example_dags/example_gcp_compute.html | 455 +
.../example_dags/example_gcp_compute_igm.html | 485 +
.../contrib/example_dags/example_gcp_function.html | 474 +
.../example_dags/example_gcp_natural_language.html | 455 +
.../contrib/example_dags/example_gcp_spanner.html | 539 +
.../contrib/example_dags/example_gcp_speech.html | 443 +
.../contrib/example_dags/example_gcp_sql.html | 764 +
.../example_dags/example_gcp_sql_query.html | 635 +
.../contrib/example_dags/example_gcp_transfer.html | 594 +
.../example_dags/example_gcp_translate.html | 393 +
.../example_gcp_video_intelligence.html | 463 +
.../contrib/example_dags/example_gcp_vision.html | 825 +
.../contrib/example_dags/example_gcs_acl.html | 417 +
.../example_dags/example_gcs_to_bq_operator.html | 408 +
.../example_dags/example_papermill_operator.html | 392 +
.../contrib/executors/kubernetes_executor.html | 1246 ++
.../airflow/contrib/executors/mesos_executor.html | 667 +
.../1.10.6/_modules/airflow/contrib/hooks.html | 411 +
.../airflow/contrib/hooks/aws_athena_hook.html | 516 +
.../airflow/contrib/hooks/aws_dynamodb_hook.html | 417 +
.../airflow/contrib/hooks/aws_firehose_hook.html | 403 +
.../contrib/hooks/aws_glue_catalog_hook.html | 495 +
.../_modules/airflow/contrib/hooks/aws_hook.html | 558 +
.../airflow/contrib/hooks/aws_lambda_hook.html | 415 +
.../airflow/contrib/hooks/aws_logs_hook.html | 446 +
.../airflow/contrib/hooks/aws_sns_hook.html | 407 +
.../airflow/contrib/hooks/aws_sqs_hook.html | 417 +
.../hooks/azure_container_instance_hook.html | 524 +
.../hooks/azure_container_registry_hook.html | 382 +
.../contrib/hooks/azure_container_volume_hook.html | 397 +
.../airflow/contrib/hooks/azure_cosmos_hook.html | 630 +
.../contrib/hooks/azure_data_lake_hook.html | 484 +
.../contrib/hooks/azure_fileshare_hook.html | 555 +
.../airflow/contrib/hooks/bigquery_hook.html | 2615 ++++
.../airflow/contrib/hooks/cassandra_hook.html | 543 +
.../airflow/contrib/hooks/cloudant_hook.html | 426 +
.../airflow/contrib/hooks/databricks_hook.html | 621 +
.../airflow/contrib/hooks/datadog_hook.html | 501 +
.../airflow/contrib/hooks/datastore_hook.html | 682 +
.../airflow/contrib/hooks/dingding_hook.html | 477 +
.../contrib/hooks/discord_webhook_hook.html | 483 +
.../_modules/airflow/contrib/hooks/emr_hook.html | 400 +
.../_modules/airflow/contrib/hooks/fs_hook.html | 389 +
.../_modules/airflow/contrib/hooks/ftp_hook.html | 663 +
.../airflow/contrib/hooks/gcp_api_base_hook.html | 689 +
.../airflow/contrib/hooks/gcp_bigtable_hook.html | 605 +
.../contrib/hooks/gcp_cloud_build_hook.html | 474 +
.../airflow/contrib/hooks/gcp_compute_hook.html | 682 +
.../airflow/contrib/hooks/gcp_container_hook.html | 590 +
.../airflow/contrib/hooks/gcp_dataflow_hook.html | 639 +
.../airflow/contrib/hooks/gcp_dataproc_hook.html | 692 +
.../airflow/contrib/hooks/gcp_dlp_hook.html | 2122 +++
.../airflow/contrib/hooks/gcp_function_hook.html | 540 +
.../airflow/contrib/hooks/gcp_kms_hook.html | 451 +
.../airflow/contrib/hooks/gcp_mlengine_hook.html | 618 +
.../contrib/hooks/gcp_natural_language_hook.html | 566 +
.../airflow/contrib/hooks/gcp_pubsub_hook.html | 627 +
.../airflow/contrib/hooks/gcp_spanner_hook.html | 692 +
.../contrib/hooks/gcp_speech_to_text_hook.html | 417 +
.../airflow/contrib/hooks/gcp_sql_hook.html | 1346 ++
.../contrib/hooks/gcp_text_to_speech_hook.html | 424 +
.../airflow/contrib/hooks/gcp_transfer_hook.html | 739 +
.../airflow/contrib/hooks/gcp_translate_hook.html | 441 +
.../contrib/hooks/gcp_video_intelligence_hook.html | 449 +
.../airflow/contrib/hooks/gcp_vision_hook.html | 923 ++
.../_modules/airflow/contrib/hooks/gcs_hook.html | 938 ++
.../_modules/airflow/contrib/hooks/grpc_hook.html | 478 +
.../_modules/airflow/contrib/hooks/imap_hook.html | 659 +
.../airflow/contrib/hooks/jenkins_hook.html | 391 +
.../_modules/airflow/contrib/hooks/jira_hook.html | 429 +
.../_modules/airflow/contrib/hooks/mongo_hook.html | 640 +
.../airflow/contrib/hooks/openfaas_hook.html | 442 +
.../airflow/contrib/hooks/opsgenie_alert_hook.html | 431 +
.../_modules/airflow/contrib/hooks/pinot_hook.html | 448 +
.../airflow/contrib/hooks/qubole_check_hook.html | 460 +
.../airflow/contrib/hooks/qubole_hook.html | 627 +
.../_modules/airflow/contrib/hooks/redis_hook.html | 409 +
.../airflow/contrib/hooks/redshift_hook.html | 456 +
.../airflow/contrib/hooks/sagemaker_hook.html | 1083 ++
.../airflow/contrib/hooks/salesforce_hook.html | 668 +
.../airflow/contrib/hooks/segment_hook.html | 433 +
.../_modules/airflow/contrib/hooks/sftp_hook.html | 557 +
.../airflow/contrib/hooks/slack_webhook_hook.html | 483 +
.../airflow/contrib/hooks/snowflake_hook.html | 477 +
.../airflow/contrib/hooks/spark_jdbc_hook.html | 589 +
.../airflow/contrib/hooks/spark_jdbc_script.html | 489 +
.../airflow/contrib/hooks/spark_sql_hook.html | 507 +
.../airflow/contrib/hooks/spark_submit_hook.html | 936 ++
.../_modules/airflow/contrib/hooks/sqoop_hook.html | 698 +
.../_modules/airflow/contrib/hooks/ssh_hook.html | 606 +
.../airflow/contrib/hooks/vertica_hook.html | 396 +
.../_modules/airflow/contrib/hooks/wasb_hook.html | 534 +
.../_modules/airflow/contrib/hooks/winrm_hook.html | 577 +
.../1.10.6/_modules/airflow/contrib/operators.html | 394 +
.../contrib/operators/adls_list_operator.html | 415 +
.../airflow/contrib/operators/adls_to_gcs.html | 501 +
.../contrib/operators/aws_athena_operator.html | 463 +
.../operators/aws_sqs_publish_operator.html | 424 +
.../contrib/operators/awsbatch_operator.html | 538 +
.../azure_container_instances_operator.html | 688 +
.../contrib/operators/azure_cosmos_operator.html | 412 +
.../contrib/operators/bigquery_check_operator.html | 496 +
.../contrib/operators/bigquery_get_data.html | 459 +
.../contrib/operators/bigquery_operator.html | 1231 ++
.../operators/bigquery_table_delete_operator.html | 411 +
.../contrib/operators/bigquery_to_bigquery.html | 448 +
.../airflow/contrib/operators/bigquery_to_gcs.html | 448 +
.../contrib/operators/cassandra_to_gcs.html | 706 +
.../contrib/operators/databricks_operator.html | 829 +
.../contrib/operators/dataflow_operator.html | 771 +
.../contrib/operators/dataproc_operator.html | 1575 ++
.../operators/datastore_export_operator.html | 453 +
.../operators/datastore_import_operator.html | 441 +
.../contrib/operators/dingding_operator.html | 417 +
.../operators/discord_webhook_operator.html | 441 +
.../airflow/contrib/operators/druid_operator.html | 407 +
.../airflow/contrib/operators/ecs_operator.html | 564 +
.../contrib/operators/emr_add_steps_operator.html | 406 +
.../operators/emr_create_job_flow_operator.html | 417 +
.../operators/emr_terminate_job_flow_operator.html | 400 +
.../airflow/contrib/operators/file_to_gcs.html | 425 +
.../airflow/contrib/operators/file_to_wasb.html | 407 +
.../contrib/operators/gcp_bigtable_operator.html | 834 +
.../operators/gcp_cloud_build_operator.html | 539 +
.../contrib/operators/gcp_compute_operator.html | 827 +
.../contrib/operators/gcp_container_operator.html | 667 +
.../contrib/operators/gcp_dlp_operator.html | 2464 +++
.../contrib/operators/gcp_function_operator.html | 671 +
.../operators/gcp_natural_language_operator.html | 605 +
.../contrib/operators/gcp_spanner_operator.html | 775 +
.../operators/gcp_speech_to_text_operator.html | 433 +
.../contrib/operators/gcp_sql_operator.html | 1149 ++
.../operators/gcp_text_to_speech_operator.html | 472 +
.../contrib/operators/gcp_transfer_operator.html | 1148 ++
.../contrib/operators/gcp_translate_operator.html | 456 +
.../operators/gcp_translate_speech_operator.html | 502 +
.../operators/gcp_video_intelligence_operator.html | 607 +
.../contrib/operators/gcp_vision_operator.html | 1598 ++
.../contrib/operators/gcs_acl_operator.html | 477 +
.../contrib/operators/gcs_delete_operator.html | 426 +
.../contrib/operators/gcs_download_operator.html | 439 +
.../contrib/operators/gcs_list_operator.html | 437 +
.../airflow/contrib/operators/gcs_operator.html | 474 +
.../airflow/contrib/operators/gcs_to_bq.html | 635 +
.../airflow/contrib/operators/gcs_to_gcs.html | 542 +
.../airflow/contrib/operators/gcs_to_s3.html | 483 +
.../contrib/operators/hipchat_operator.html | 478 +
.../contrib/operators/hive_to_dynamodb.html | 452 +
.../operators/imap_attachment_to_s3_operator.html | 433 +
.../operators/jenkins_job_trigger_operator.html | 587 +
.../airflow/contrib/operators/jira_operator.html | 437 +
.../contrib/operators/kubernetes_pod_operator.html | 582 +
.../contrib/operators/mlengine_operator.html | 977 ++
.../airflow/contrib/operators/mongo_to_s3.html | 470 +
.../airflow/contrib/operators/mssql_to_gcs.html | 439 +
.../airflow/contrib/operators/mysql_to_gcs.html | 475 +
.../contrib/operators/opsgenie_alert_operator.html | 474 +
.../oracle_to_azure_data_lake_transfer.html | 458 +
.../operators/oracle_to_oracle_transfer.html | 434 +
.../operators/postgres_to_gcs_operator.html | 447 +
.../airflow/contrib/operators/pubsub_operator.html | 776 +
.../contrib/operators/qubole_check_operator.html | 571 +
.../airflow/contrib/operators/qubole_operator.html | 566 +
.../contrib/operators/redis_publish_operator.html | 409 +
.../contrib/operators/s3_copy_object_operator.html | 439 +
.../operators/s3_delete_objects_operator.html | 430 +
.../contrib/operators/s3_list_operator.html | 442 +
.../contrib/operators/s3_to_gcs_operator.html | 555 +
.../contrib/operators/s3_to_sftp_operator.html | 428 +
.../contrib/operators/sagemaker_base_operator.html | 445 +
.../sagemaker_endpoint_config_operator.html | 409 +
.../operators/sagemaker_endpoint_operator.html | 493 +
.../operators/sagemaker_model_operator.html | 410 +
.../operators/sagemaker_training_operator.html | 441 +
.../operators/sagemaker_transform_operator.html | 467 +
.../operators/sagemaker_tuning_operator.html | 442 +
.../operators/segment_track_event_operator.html | 415 +
.../airflow/contrib/operators/sftp_operator.html | 523 +
.../contrib/operators/sftp_to_s3_operator.html | 434 +
.../contrib/operators/slack_webhook_operator.html | 450 +
.../contrib/operators/snowflake_operator.html | 420 +
.../contrib/operators/sns_publish_operator.html | 408 +
.../contrib/operators/spark_jdbc_operator.html | 557 +
.../contrib/operators/spark_sql_operator.html | 454 +
.../contrib/operators/spark_submit_operator.html | 527 +
.../airflow/contrib/operators/sql_to_gcs.html | 620 +
.../airflow/contrib/operators/sqoop_operator.html | 581 +
.../airflow/contrib/operators/ssh_operator.html | 522 +
.../contrib/operators/vertica_operator.html | 392 +
.../airflow/contrib/operators/vertica_to_hive.html | 482 +
.../contrib/operators/vertica_to_mysql.html | 498 +
.../operators/wasb_delete_blob_operator.html | 413 +
.../airflow/contrib/operators/winrm_operator.html | 492 +
.../airflow/contrib/sensors/aws_athena_sensor.html | 420 +
.../sensors/aws_glue_catalog_partition_sensor.html | 434 +
.../sensors/aws_redshift_cluster_sensor.html | 393 +
.../airflow/contrib/sensors/aws_sqs_sensor.html | 434 +
.../contrib/sensors/azure_cosmos_sensor.html | 408 +
.../airflow/contrib/sensors/bash_sensor.html | 431 +
.../airflow/contrib/sensors/bigquery_sensor.html | 411 +
.../contrib/sensors/cassandra_record_sensor.html | 402 +
.../contrib/sensors/cassandra_table_sensor.html | 397 +
.../airflow/contrib/sensors/datadog_sensor.html | 424 +
.../airflow/contrib/sensors/emr_base_sensor.html | 401 +
.../contrib/sensors/emr_job_flow_sensor.html | 404 +
.../airflow/contrib/sensors/emr_step_sensor.html | 408 +
.../airflow/contrib/sensors/file_sensor.html | 412 +
.../airflow/contrib/sensors/ftp_sensor.html | 441 +
.../contrib/sensors/gcp_transfer_sensor.html | 421 +
.../airflow/contrib/sensors/gcs_sensor.html | 655 +
.../airflow/contrib/sensors/hdfs_sensor.html | 415 +
.../contrib/sensors/imap_attachment_sensor.html | 417 +
.../airflow/contrib/sensors/jira_sensor.html | 492 +
.../airflow/contrib/sensors/mongo_sensor.html | 399 +
.../airflow/contrib/sensors/pubsub_sensor.html | 446 +
.../airflow/contrib/sensors/python_sensor.html | 421 +
.../airflow/contrib/sensors/qubole_sensor.html | 453 +
.../airflow/contrib/sensors/redis_key_sensor.html | 380 +
.../contrib/sensors/redis_pub_sub_sensor.html | 414 +
.../contrib/sensors/sagemaker_base_sensor.html | 415 +
.../contrib/sensors/sagemaker_endpoint_sensor.html | 402 +
.../contrib/sensors/sagemaker_training_sensor.html | 443 +
.../sensors/sagemaker_transform_sensor.html | 403 +
.../contrib/sensors/sagemaker_tuning_sensor.html | 403 +
.../airflow/contrib/sensors/sftp_sensor.html | 393 +
.../airflow/contrib/sensors/wasb_sensor.html | 436 +
.../airflow/contrib/sensors/weekday_sensor.html | 446 +
.../example_dags/example_bash_operator.html | 414 +
.../example_dags/example_python_operator.html | 415 +
.../1.10.6/_modules/airflow/exceptions.html | 456 +
.../1.10.6/_modules/airflow/executors.html | 440 +
.../_modules/airflow/executors/base_executor.html | 555 +
.../airflow/executors/celery_executor.html | 637 +
.../_modules/airflow/executors/dask_executor.html | 440 +
.../_modules/airflow/executors/local_executor.html | 577 +
.../airflow/executors/sequential_executor.html | 400 +
docs-archive/1.10.6/_modules/airflow/hooks.html | 437 +
.../1.10.6/_modules/airflow/hooks/S3_hook.html | 886 ++
.../1.10.6/_modules/airflow/hooks/base_hook.html | 445 +
.../1.10.6/_modules/airflow/hooks/dbapi_hook.html | 648 +
.../1.10.6/_modules/airflow/hooks/docker_hook.html | 431 +
.../1.10.6/_modules/airflow/hooks/druid_hook.html | 508 +
.../1.10.6/_modules/airflow/hooks/hdfs_hook.html | 441 +
.../1.10.6/_modules/airflow/hooks/hive_hooks.html | 1347 ++
.../1.10.6/_modules/airflow/hooks/http_hook.html | 556 +
.../1.10.6/_modules/airflow/hooks/jdbc_hook.html | 404 +
.../1.10.6/_modules/airflow/hooks/mssql_hook.html | 398 +
.../1.10.6/_modules/airflow/hooks/mysql_hook.html | 517 +
.../1.10.6/_modules/airflow/hooks/oracle_hook.html | 574 +
.../1.10.6/_modules/airflow/hooks/pig_hook.html | 443 +
.../_modules/airflow/hooks/postgres_hook.html | 505 +
.../1.10.6/_modules/airflow/hooks/presto_hook.html | 483 +
.../1.10.6/_modules/airflow/hooks/samba_hook.html | 395 +
.../1.10.6/_modules/airflow/hooks/slack_hook.html | 405 +
.../1.10.6/_modules/airflow/hooks/sqlite_hook.html | 384 +
.../_modules/airflow/hooks/webhdfs_hook.html | 475 +
.../_modules/airflow/hooks/zendesk_hook.html | 455 +
docs-archive/1.10.6/_modules/airflow/macros.html | 451 +
.../1.10.6/_modules/airflow/macros/hive.html | 465 +
docs-archive/1.10.6/_modules/airflow/models.html | 383 +
.../1.10.6/_modules/airflow/models/base.html | 378 +
.../_modules/airflow/models/baseoperator.html | 1458 ++
.../1.10.6/_modules/airflow/models/chart.html | 393 +
.../1.10.6/_modules/airflow/models/connection.html | 642 +
.../1.10.6/_modules/airflow/models/crypto.html | 440 +
.../1.10.6/_modules/airflow/models/dag.html | 1980 +++
.../1.10.6/_modules/airflow/models/dagbag.html | 766 +
.../1.10.6/_modules/airflow/models/dagpickle.html | 395 +
.../1.10.6/_modules/airflow/models/dagrun.html | 790 +
.../1.10.6/_modules/airflow/models/errors.html | 374 +
.../1.10.6/_modules/airflow/models/knownevent.html | 397 +
.../1.10.6/_modules/airflow/models/kubernetes.html | 422 +
.../1.10.6/_modules/airflow/models/log.html | 411 +
.../1.10.6/_modules/airflow/models/pool.html | 452 +
.../1.10.6/_modules/airflow/models/skipmixin.html | 445 +
.../1.10.6/_modules/airflow/models/slamiss.html | 391 +
.../1.10.6/_modules/airflow/models/taskfail.html | 398 +
.../_modules/airflow/models/taskinstance.html | 1753 +++
.../_modules/airflow/models/taskreschedule.html | 428 +
.../1.10.6/_modules/airflow/models/user.html | 383 +
.../1.10.6/_modules/airflow/models/variable.html | 495 +
.../1.10.6/_modules/airflow/models/xcom.html | 577 +
.../1.10.6/_modules/airflow/operators.html | 464 +
.../_modules/airflow/operators/bash_operator.html | 486 +
.../airflow/operators/branch_operator.html | 395 +
.../_modules/airflow/operators/check_operator.html | 677 +
.../airflow/operators/dagrun_operator.html | 440 +
.../airflow/operators/docker_operator.html | 637 +
.../airflow/operators/druid_check_operator.html | 434 +
.../_modules/airflow/operators/dummy_operator.html | 380 +
.../_modules/airflow/operators/email_operator.html | 421 +
.../airflow/operators/generic_transfer.html | 424 +
.../_modules/airflow/operators/hive_operator.html | 485 +
.../airflow/operators/hive_stats_operator.html | 527 +
.../_modules/airflow/operators/hive_to_druid.html | 589 +
.../_modules/airflow/operators/hive_to_mysql.html | 457 +
.../airflow/operators/hive_to_samba_operator.html | 410 +
.../_modules/airflow/operators/http_operator.html | 442 +
.../_modules/airflow/operators/jdbc_operator.html | 406 +
.../airflow/operators/latest_only_operator.html | 411 +
.../_modules/airflow/operators/mssql_operator.html | 406 +
.../_modules/airflow/operators/mssql_to_hive.html | 482 +
.../_modules/airflow/operators/mysql_operator.html | 410 +
.../_modules/airflow/operators/mysql_to_hive.html | 487 +
.../airflow/operators/oracle_operator.html | 406 +
.../airflow/operators/papermill_operator.html | 401 +
.../_modules/airflow/operators/pig_operator.html | 420 +
.../airflow/operators/postgres_operator.html | 410 +
.../airflow/operators/presto_check_operator.html | 470 +
.../airflow/operators/presto_to_mysql.html | 423 +
.../airflow/operators/python_operator.html | 759 +
.../airflow/operators/redshift_to_s3_operator.html | 464 +
.../operators/s3_file_transform_operator.html | 511 +
.../airflow/operators/s3_to_hive_operator.html | 640 +
.../airflow/operators/s3_to_redshift_operator.html | 452 +
.../1.10.6/_modules/airflow/operators/sensors.html | 437 +
.../_modules/airflow/operators/slack_operator.html | 481 +
.../airflow/operators/sqlite_operator.html | 397 +
.../airflow/operators/subdag_operator.html | 445 +
docs-archive/1.10.6/_modules/airflow/sensors.html | 406 +
.../airflow/sensors/base_sensor_operator.html | 484 +
.../airflow/sensors/external_task_sensor.html | 497 +
.../_modules/airflow/sensors/hdfs_sensor.html | 466 +
.../airflow/sensors/hive_partition_sensor.html | 418 +
.../_modules/airflow/sensors/http_sensor.html | 435 +
.../sensors/metastore_partition_sensor.html | 426 +
.../sensors/named_hive_partition_sensor.html | 445 +
.../_modules/airflow/sensors/s3_key_sensor.html | 436 +
.../_modules/airflow/sensors/s3_prefix_sensor.html | 425 +
.../_modules/airflow/sensors/sql_sensor.html | 445 +
.../airflow/sensors/time_delta_sensor.html | 389 +
.../_modules/airflow/sensors/time_sensor.html | 383 +
.../_modules/airflow/sensors/web_hdfs_sensor.html | 387 +
.../_modules/airflow/utils/log/logging_mixin.html | 547 +
docs-archive/1.10.6/_modules/index.html | 677 +
.../_api/airflow/contrib/executors/index.rst.txt | 16 +
.../executors/kubernetes_executor/index.rst.txt | 313 +
.../contrib/executors/mesos_executor/index.rst.txt | 116 +
.../contrib/hooks/aws_athena_hook/index.rst.txt | 125 +
.../contrib/hooks/aws_dynamodb_hook/index.rst.txt | 40 +
.../contrib/hooks/aws_firehose_hook/index.rst.txt | 39 +
.../hooks/aws_glue_catalog_hook/index.rst.txt | 108 +
.../airflow/contrib/hooks/aws_hook/index.rst.txt | 81 +
.../contrib/hooks/aws_lambda_hook/index.rst.txt | 44 +
.../contrib/hooks/aws_logs_hook/index.rst.txt | 60 +
.../contrib/hooks/aws_sns_hook/index.rst.txt | 40 +
.../contrib/hooks/aws_sqs_hook/index.rst.txt | 67 +
.../azure_container_instance_hook/index.rst.txt | 128 +
.../azure_container_registry_hook/index.rst.txt | 25 +
.../azure_container_volume_hook/index.rst.txt | 30 +
.../contrib/hooks/azure_cosmos_hook/index.rst.txt | 124 +
.../hooks/azure_data_lake_hook/index.rst.txt | 103 +
.../hooks/azure_fileshare_hook/index.rst.txt | 196 +
.../contrib/hooks/bigquery_hook/index.rst.txt | 1015 ++
.../contrib/hooks/cassandra_hook/index.rst.txt | 107 +
.../contrib/hooks/cloudant_hook/index.rst.txt | 34 +
.../contrib/hooks/databricks_hook/index.rst.txt | 195 +
.../contrib/hooks/datadog_hook/index.rst.txt | 94 +
.../contrib/hooks/datastore_hook/index.rst.txt | 217 +
.../contrib/hooks/dingding_hook/index.rst.txt | 67 +
.../hooks/discord_webhook_hook/index.rst.txt | 70 +
.../airflow/contrib/hooks/emr_hook/index.rst.txt | 32 +
.../airflow/contrib/hooks/fs_hook/index.rst.txt | 34 +
.../airflow/contrib/hooks/ftp_hook/index.rst.txt | 218 +
.../contrib/hooks/gcp_api_base_hook/index.rst.txt | 186 +
.../contrib/hooks/gcp_bigtable_hook/index.rst.txt | 178 +
.../hooks/gcp_cloud_build_hook/index.rst.txt | 81 +
.../contrib/hooks/gcp_compute_hook/index.rst.txt | 237 +
.../contrib/hooks/gcp_container_hook/index.rst.txt | 157 +
.../contrib/hooks/gcp_dataflow_hook/index.rst.txt | 111 +
.../contrib/hooks/gcp_dataproc_hook/index.rst.txt | 179 +
.../contrib/hooks/gcp_dlp_hook/index.rst.txt | 919 ++
.../contrib/hooks/gcp_function_hook/index.rst.txt | 137 +
.../contrib/hooks/gcp_kms_hook/index.rst.txt | 71 +
.../contrib/hooks/gcp_mlengine_hook/index.rst.txt | 132 +
.../hooks/gcp_natural_language_hook/index.rst.txt | 175 +
.../contrib/hooks/gcp_pubsub_hook/index.rst.txt | 174 +
.../contrib/hooks/gcp_spanner_hook/index.rst.txt | 235 +
.../hooks/gcp_speech_to_text_hook/index.rst.txt | 58 +
.../contrib/hooks/gcp_sql_hook/index.rst.txt | 535 +
.../hooks/gcp_text_to_speech_hook/index.rst.txt | 64 +
.../contrib/hooks/gcp_transfer_hook/index.rst.txt | 468 +
.../contrib/hooks/gcp_translate_hook/index.rst.txt | 77 +
.../gcp_video_intelligence_hook/index.rst.txt | 72 +
.../contrib/hooks/gcp_vision_hook/index.rst.txt | 232 +
.../airflow/contrib/hooks/gcs_hook/index.rst.txt | 318 +
.../airflow/contrib/hooks/grpc_hook/index.rst.txt | 41 +
.../airflow/contrib/hooks/imap_hook/index.rst.txt | 235 +
.../_api/airflow/contrib/hooks/index.rst.txt | 102 +
.../contrib/hooks/jenkins_hook/index.rst.txt | 21 +
.../airflow/contrib/hooks/jira_hook/index.rst.txt | 24 +
.../airflow/contrib/hooks/mongo_hook/index.rst.txt | 218 +
.../contrib/hooks/openfaas_hook/index.rst.txt | 72 +
.../hooks/opsgenie_alert_hook/index.rst.txt | 54 +
.../airflow/contrib/hooks/pinot_hook/index.rst.txt | 84 +
.../contrib/hooks/qubole_check_hook/index.rst.txt | 48 +
.../contrib/hooks/qubole_hook/index.rst.txt | 124 +
.../airflow/contrib/hooks/redis_hook/index.rst.txt | 28 +
.../contrib/hooks/redshift_hook/index.rst.txt | 79 +
.../contrib/hooks/sagemaker_hook/index.rst.txt | 438 +
.../contrib/hooks/salesforce_hook/index.rst.txt | 138 +
.../contrib/hooks/segment_hook/index.rst.txt | 36 +
.../airflow/contrib/hooks/sftp_hook/index.rst.txt | 124 +
.../contrib/hooks/slack_webhook_hook/index.rst.txt | 73 +
.../contrib/hooks/snowflake_hook/index.rst.txt | 70 +
.../contrib/hooks/spark_jdbc_hook/index.rst.txt | 119 +
.../contrib/hooks/spark_jdbc_script/index.rst.txt | 20 +
.../contrib/hooks/spark_sql_hook/index.rst.txt | 76 +
.../contrib/hooks/spark_submit_hook/index.rst.txt | 199 +
.../airflow/contrib/hooks/sqoop_hook/index.rst.txt | 154 +
.../airflow/contrib/hooks/ssh_hook/index.rst.txt | 78 +
.../contrib/hooks/vertica_hook/index.rst.txt | 38 +
.../airflow/contrib/hooks/wasb_hook/index.rst.txt | 150 +
.../airflow/contrib/hooks/winrm_hook/index.rst.txt | 77 +
.../operators/adls_list_operator/index.rst.txt | 51 +
.../contrib/operators/adls_to_gcs/index.rst.txt | 89 +
.../operators/aws_athena_operator/index.rst.txt | 66 +
.../aws_sqs_publish_operator/index.rst.txt | 56 +
.../operators/awsbatch_operator/index.rst.txt | 97 +
.../index.rst.txt | 140 +
.../operators/azure_cosmos_operator/index.rst.txt | 41 +
.../bigquery_check_operator/index.rst.txt | 127 +
.../operators/bigquery_get_data/index.rst.txt | 72 +
.../operators/bigquery_operator/index.rst.txt | 564 +
.../bigquery_table_delete_operator/index.rst.txt | 45 +
.../operators/bigquery_to_bigquery/index.rst.txt | 70 +
.../operators/bigquery_to_gcs/index.rst.txt | 68 +
.../operators/cassandra_to_gcs/index.rst.txt | 191 +
.../operators/databricks_operator/index.rst.txt | 356 +
.../operators/dataflow_operator/index.rst.txt | 306 +
.../operators/dataproc_operator/index.rst.txt | 741 +
.../datastore_export_operator/index.rst.txt | 50 +
.../datastore_import_operator/index.rst.txt | 47 +
.../operators/dingding_operator/index.rst.txt | 48 +
.../discord_webhook_operator/index.rst.txt | 53 +
.../contrib/operators/druid_operator/index.rst.txt | 37 +
.../contrib/operators/ecs_operator/index.rst.txt | 107 +
.../operators/emr_add_steps_operator/index.rst.txt | 43 +
.../emr_create_job_flow_operator/index.rst.txt | 46 +
.../emr_terminate_job_flow_operator/index.rst.txt | 41 +
.../contrib/operators/file_to_gcs/index.rst.txt | 44 +
.../contrib/operators/file_to_wasb/index.rst.txt | 40 +
.../operators/gcp_bigtable_operator/index.rst.txt | 288 +
.../gcp_cloud_build_operator/index.rst.txt | 123 +
.../operators/gcp_compute_operator/index.rst.txt | 275 +
.../operators/gcp_container_operator/index.rst.txt | 201 +
.../operators/gcp_dlp_operator/index.rst.txt | 1241 ++
.../operators/gcp_function_operator/index.rst.txt | 218 +
.../gcp_natural_language_operator/index.rst.txt | 155 +
.../operators/gcp_spanner_operator/index.rst.txt | 261 +
.../gcp_speech_to_text_operator/index.rst.txt | 55 +
.../operators/gcp_sql_operator/index.rst.txt | 504 +
.../gcp_text_to_speech_operator/index.rst.txt | 62 +
.../operators/gcp_transfer_operator/index.rst.txt | 555 +
.../operators/gcp_translate_operator/index.rst.txt | 68 +
.../gcp_translate_speech_operator/index.rst.txt | 88 +
.../gcp_video_intelligence_operator/index.rst.txt | 158 +
.../operators/gcp_vision_operator/index.rst.txt | 753 +
.../operators/gcs_acl_operator/index.rst.txt | 90 +
.../operators/gcs_delete_operator/index.rst.txt | 43 +
.../operators/gcs_download_operator/index.rst.txt | 58 +
.../operators/gcs_list_operator/index.rst.txt | 63 +
.../contrib/operators/gcs_operator/index.rst.txt | 87 +
.../contrib/operators/gcs_to_bq/index.rst.txt | 146 +
.../contrib/operators/gcs_to_gcs/index.rst.txt | 124 +
.../contrib/operators/gcs_to_s3/index.rst.txt | 71 +
.../operators/hipchat_operator/index.rst.txt | 80 +
.../operators/hive_to_dynamodb/index.rst.txt | 59 +
.../imap_attachment_to_s3_operator/index.rst.txt | 46 +
.../_api/airflow/contrib/operators/index.rst.txt | 126 +
.../jenkins_job_trigger_operator/index.rst.txt | 101 +
.../contrib/operators/jira_operator/index.rst.txt | 39 +
.../kubernetes_pod_operator/index.rst.txt | 111 +
.../operators/mlengine_operator/index.rst.txt | 316 +
.../contrib/operators/mongo_to_s3/index.rst.txt | 57 +
.../contrib/operators/mssql_to_gcs/index.rst.txt | 73 +
.../contrib/operators/mysql_to_gcs/index.rst.txt | 71 +
.../opsgenie_alert_operator/index.rst.txt | 77 +
.../index.rst.txt | 59 +
.../oracle_to_oracle_transfer/index.rst.txt | 51 +
.../postgres_to_gcs_operator/index.rst.txt | 60 +
.../operators/pubsub_operator/index.rst.txt | 259 +
.../operators/qubole_check_operator/index.rst.txt | 183 +
.../operators/qubole_operator/index.rst.txt | 229 +
.../operators/redis_publish_operator/index.rst.txt | 38 +
.../s3_copy_object_operator/index.rst.txt | 64 +
.../s3_delete_objects_operator/index.rst.txt | 56 +
.../operators/s3_list_operator/index.rst.txt | 69 +
.../operators/s3_to_gcs_operator/index.rst.txt | 91 +
.../operators/s3_to_sftp_operator/index.rst.txt | 50 +
.../sagemaker_base_operator/index.rst.txt | 66 +
.../index.rst.txt | 35 +
.../sagemaker_endpoint_operator/index.rst.txt | 72 +
.../sagemaker_model_operator/index.rst.txt | 35 +
.../sagemaker_training_operator/index.rst.txt | 52 +
.../sagemaker_transform_operator/index.rst.txt | 65 +
.../sagemaker_tuning_operator/index.rst.txt | 50 +
.../segment_track_event_operator/index.rst.txt | 43 +
.../contrib/operators/sftp_operator/index.rst.txt | 89 +
.../operators/sftp_to_s3_operator/index.rst.txt | 51 +
.../operators/slack_webhook_operator/index.rst.txt | 57 +
.../operators/snowflake_operator/index.rst.txt | 59 +
.../operators/sns_publish_operator/index.rst.txt | 38 +
.../operators/spark_jdbc_operator/index.rst.txt | 113 +
.../operators/spark_sql_operator/index.rst.txt | 65 +
.../operators/spark_submit_operator/index.rst.txt | 97 +
.../contrib/operators/sql_to_gcs/index.rst.txt | 157 +
.../contrib/operators/sqoop_operator/index.rst.txt | 45 +
.../contrib/operators/ssh_operator/index.rst.txt | 56 +
.../operators/vertica_operator/index.rst.txt | 43 +
.../operators/vertica_to_hive/index.rst.txt | 71 +
.../operators/vertica_to_mysql/index.rst.txt | 60 +
.../wasb_delete_blob_operator/index.rst.txt | 40 +
.../contrib/operators/winrm_operator/index.rst.txt | 39 +
.../sensors/aws_athena_sensor/index.rst.txt | 68 +
.../index.rst.txt | 62 +
.../aws_redshift_cluster_sensor/index.rst.txt | 31 +
.../contrib/sensors/aws_sqs_sensor/index.rst.txt | 43 +
.../sensors/azure_cosmos_sensor/index.rst.txt | 33 +
.../contrib/sensors/bash_sensor/index.rst.txt | 42 +
.../contrib/sensors/bigquery_sensor/index.rst.txt | 48 +
.../sensors/cassandra_record_sensor/index.rst.txt | 35 +
.../sensors/cassandra_table_sensor/index.rst.txt | 33 +
.../contrib/sensors/datadog_sensor/index.rst.txt | 33 +
.../contrib/sensors/emr_base_sensor/index.rst.txt | 28 +
.../sensors/emr_job_flow_sensor/index.rst.txt | 55 +
.../contrib/sensors/emr_step_sensor/index.rst.txt | 57 +
.../contrib/sensors/file_sensor/index.rst.txt | 41 +
.../contrib/sensors/ftp_sensor/index.rst.txt | 65 +
.../sensors/gcp_transfer_sensor/index.rst.txt | 41 +
.../contrib/sensors/gcs_sensor/index.rst.txt | 194 +
.../contrib/sensors/hdfs_sensor/index.rst.txt | 37 +
.../sensors/imap_attachment_sensor/index.rst.txt | 47 +
.../_api/airflow/contrib/sensors/index.rst.txt | 48 +
.../contrib/sensors/jira_sensor/index.rst.txt | 63 +
.../contrib/sensors/mongo_sensor/index.rst.txt | 32 +
.../contrib/sensors/pubsub_sensor/index.rst.txt | 50 +
.../contrib/sensors/python_sensor/index.rst.txt | 51 +
.../contrib/sensors/qubole_sensor/index.rst.txt | 67 +
.../contrib/sensors/redis_key_sensor/index.rst.txt | 31 +
.../sensors/redis_pub_sub_sensor/index.rst.txt | 39 +
.../sensors/sagemaker_base_sensor/index.rst.txt | 54 +
.../sagemaker_endpoint_sensor/index.rst.txt | 55 +
.../sagemaker_training_sensor/index.rst.txt | 62 +
.../sagemaker_transform_sensor/index.rst.txt | 56 +
.../sensors/sagemaker_tuning_sensor/index.rst.txt | 56 +
.../contrib/sensors/sftp_sensor/index.rst.txt | 31 +
.../contrib/sensors/wasb_sensor/index.rst.txt | 63 +
.../contrib/sensors/weekday_sensor/index.rst.txt | 66 +
.../airflow/executors/base_executor/index.rst.txt | 120 +
.../executors/celery_executor/index.rst.txt | 115 +
.../airflow/executors/dask_executor/index.rst.txt | 46 +
.../_sources/_api/airflow/executors/index.rst.txt | 342 +
.../airflow/executors/local_executor/index.rst.txt | 171 +
.../executors/sequential_executor/index.rst.txt | 36 +
.../_api/airflow/hooks/S3_hook/index.rst.txt | 333 +
.../_api/airflow/hooks/base_hook/index.rst.txt | 70 +
.../_api/airflow/hooks/dbapi_hook/index.rst.txt | 198 +
.../_api/airflow/hooks/docker_hook/index.rst.txt | 30 +
.../_api/airflow/hooks/druid_hook/index.rst.txt | 92 +
.../_api/airflow/hooks/hdfs_hook/index.rst.txt | 40 +
.../_api/airflow/hooks/hive_hooks/index.rst.txt | 474 +
.../_api/airflow/hooks/http_hook/index.rst.txt | 106 +
.../_sources/_api/airflow/hooks/index.rst.txt | 51 +
.../_api/airflow/hooks/jdbc_hook/index.rst.txt | 50 +
.../_api/airflow/hooks/mssql_hook/index.rst.txt | 48 +
.../_api/airflow/hooks/mysql_hook/index.rst.txt | 104 +
.../_api/airflow/hooks/oracle_hook/index.rst.txt | 99 +
.../_api/airflow/hooks/pig_hook/index.rst.txt | 37 +
.../_api/airflow/hooks/postgres_hook/index.rst.txt | 106 +
.../_api/airflow/hooks/presto_hook/index.rst.txt | 98 +
.../_api/airflow/hooks/samba_hook/index.rst.txt | 26 +
.../_api/airflow/hooks/slack_hook/index.rst.txt | 26 +
.../_api/airflow/hooks/sqlite_hook/index.rst.txt | 38 +
.../_api/airflow/hooks/webhdfs_hook/index.rst.txt | 85 +
.../_api/airflow/hooks/zendesk_hook/index.rst.txt | 47 +
.../_api/airflow/models/base/index.rst.txt | 29 +
.../_api/airflow/models/baseoperator/index.rst.txt | 650 +
.../_api/airflow/models/chart/index.rst.txt | 104 +
.../_api/airflow/models/connection/index.rst.txt | 147 +
.../_api/airflow/models/crypto/index.rst.txt | 56 +
.../_sources/_api/airflow/models/dag/index.rst.txt | 830 +
.../_api/airflow/models/dagbag/index.rst.txt | 135 +
.../_api/airflow/models/dagpickle/index.rst.txt | 48 +
.../_api/airflow/models/dagrun/index.rst.txt | 230 +
.../_api/airflow/models/errors/index.rst.txt | 39 +
.../_sources/_api/airflow/models/index.rst.txt | 3399 +++++
.../_api/airflow/models/knownevent/index.rst.txt | 94 +
.../_api/airflow/models/kubernetes/index.rst.txt | 74 +
.../_sources/_api/airflow/models/log/index.rst.txt | 66 +
.../_api/airflow/models/pool/index.rst.txt | 92 +
.../_api/airflow/models/skipmixin/index.rst.txt | 35 +
.../_api/airflow/models/slamiss/index.rst.txt | 68 +
.../_api/airflow/models/taskfail/index.rst.txt | 66 +
.../_api/airflow/models/taskinstance/index.rst.txt | 554 +
.../airflow/models/taskreschedule/index.rst.txt | 87 +
.../_api/airflow/models/user/index.rst.txt | 54 +
.../_api/airflow/models/variable/index.rst.txt | 101 +
.../_api/airflow/models/xcom/index.rst.txt | 122 +
.../airflow/operators/bash_operator/index.rst.txt | 62 +
.../operators/branch_operator/index.rst.txt | 47 +
.../airflow/operators/check_operator/index.rst.txt | 205 +
.../operators/dagrun_operator/index.rst.txt | 51 +
.../operators/docker_operator/index.rst.txt | 147 +
.../operators/druid_check_operator/index.rst.txt | 66 +
.../airflow/operators/dummy_operator/index.rst.txt | 27 +
.../airflow/operators/email_operator/index.rst.txt | 55 +
.../operators/generic_transfer/index.rst.txt | 53 +
.../airflow/operators/hive_operator/index.rst.txt | 84 +
.../operators/hive_stats_operator/index.rst.txt | 62 +
.../airflow/operators/hive_to_druid/index.rst.txt | 81 +
.../airflow/operators/hive_to_mysql/index.rst.txt | 62 +
.../operators/hive_to_samba_operator/index.rst.txt | 39 +
.../airflow/operators/http_operator/index.rst.txt | 62 +
.../_sources/_api/airflow/operators/index.rst.txt | 665 +
.../airflow/operators/jdbc_operator/index.rst.txt | 50 +
.../operators/latest_only_operator/index.rst.txt | 33 +
.../airflow/operators/mssql_operator/index.rst.txt | 49 +
.../airflow/operators/mssql_to_hive/index.rst.txt | 74 +
.../airflow/operators/mysql_operator/index.rst.txt | 51 +
.../airflow/operators/mysql_to_hive/index.rst.txt | 73 +
.../operators/oracle_operator/index.rst.txt | 49 +
.../operators/papermill_operator/index.rst.txt | 43 +
.../airflow/operators/pig_operator/index.rst.txt | 64 +
.../operators/postgres_operator/index.rst.txt | 50 +
.../operators/presto_check_operator/index.rst.txt | 90 +
.../operators/presto_to_mysql/index.rst.txt | 53 +
.../operators/python_operator/index.rst.txt | 226 +
.../redshift_to_s3_operator/index.rst.txt | 72 +
.../s3_file_transform_operator/index.rst.txt | 77 +
.../operators/s3_to_hive_operator/index.rst.txt | 112 +
.../s3_to_redshift_operator/index.rst.txt | 62 +
.../_api/airflow/operators/sensors/index.rst.txt | 69 +
.../airflow/operators/slack_operator/index.rst.txt | 84 +
.../operators/sqlite_operator/index.rst.txt | 44 +
.../operators/subdag_operator/index.rst.txt | 40 +
.../sensors/base_sensor_operator/index.rst.txt | 85 +
.../sensors/external_task_sensor/index.rst.txt | 56 +
.../_api/airflow/sensors/hdfs_sensor/index.rst.txt | 58 +
.../sensors/hive_partition_sensor/index.rst.txt | 47 +
.../_api/airflow/sensors/http_sensor/index.rst.txt | 45 +
.../_sources/_api/airflow/sensors/index.rst.txt | 44 +
.../metastore_partition_sensor/index.rst.txt | 47 +
.../named_hive_partition_sensor/index.rst.txt | 53 +
.../airflow/sensors/s3_key_sensor/index.rst.txt | 50 +
.../airflow/sensors/s3_prefix_sensor/index.rst.txt | 52 +
.../_api/airflow/sensors/sql_sensor/index.rst.txt | 58 +
.../sensors/time_delta_sensor/index.rst.txt | 27 +
.../_api/airflow/sensors/time_sensor/index.rst.txt | 24 +
.../airflow/sensors/web_hdfs_sensor/index.rst.txt | 26 +
docs-archive/1.10.6/_sources/_api/index.rst.txt | 129 +
docs-archive/1.10.6/_sources/api.rst.txt | 148 +
docs-archive/1.10.6/_sources/changelog.rst.txt | 23 +
docs-archive/1.10.6/_sources/cli.rst.txt | 33 +
docs-archive/1.10.6/_sources/concepts.rst.txt | 1245 ++
docs-archive/1.10.6/_sources/errors.rst.txt | 67 +
docs-archive/1.10.6/_sources/faq.rst.txt | 214 +
.../1.10.6/_sources/howto/check-health.rst.txt | 50 +
.../1.10.6/_sources/howto/cli-completion.rst.txt | 50 +
.../1.10.6/_sources/howto/connection/aws.rst.txt | 69 +
.../1.10.6/_sources/howto/connection/gcp.rst.txt | 122 +
.../_sources/howto/connection/gcp_sql.rst.txt | 78 +
.../1.10.6/_sources/howto/connection/grpc.rst.txt | 75 +
.../1.10.6/_sources/howto/connection/index.rst.txt | 94 +
.../1.10.6/_sources/howto/connection/mysql.rst.txt | 96 +
.../_sources/howto/connection/oracle.rst.txt | 87 +
.../_sources/howto/connection/postgres.rst.txt | 81 +
.../1.10.6/_sources/howto/connection/ssh.rst.txt | 76 +
.../_sources/howto/define_extra_link.rst.txt | 132 +
.../_sources/howto/executor/use-celery.rst.txt | 143 +
.../_sources/howto/executor/use-dask.rst.txt | 50 +
.../_sources/howto/executor/use-mesos.rst.txt | 82 +
docs-archive/1.10.6/_sources/howto/index.rst.txt | 48 +
.../_sources/howto/initialize-database.rst.txt | 48 +
.../1.10.6/_sources/howto/operator/bash.rst.txt | 64 +
.../_sources/howto/operator/dingding.rst.txt | 96 +
.../_sources/howto/operator/gcp/bigtable.rst.txt | 172 +
.../howto/operator/gcp/cloud_build.rst.txt | 117 +
.../_sources/howto/operator/gcp/compute.rst.txt | 327 +
.../_sources/howto/operator/gcp/function.rst.txt | 204 +
.../1.10.6/_sources/howto/operator/gcp/gcs.rst.txt | 129 +
.../_sources/howto/operator/gcp/index.rst.txt | 28 +
.../howto/operator/gcp/natural_language.rst.txt | 182 +
.../_sources/howto/operator/gcp/spanner.rst.txt | 278 +
.../_sources/howto/operator/gcp/speech.rst.txt | 127 +
.../1.10.6/_sources/howto/operator/gcp/sql.rst.txt | 646 +
.../_sources/howto/operator/gcp/transfer.rst.txt | 422 +
.../howto/operator/gcp/translate-speech.rst.txt | 89 +
.../_sources/howto/operator/gcp/translate.rst.txt | 70 +
.../_sources/howto/operator/gcp/video.rst.txt | 216 +
.../_sources/howto/operator/gcp/vision.rst.txt | 1184 ++
.../1.10.6/_sources/howto/operator/index.rst.txt | 37 +
.../_sources/howto/operator/papermill.rst.txt | 60 +
.../1.10.6/_sources/howto/operator/python.rst.txt | 52 +
.../1.10.6/_sources/howto/run-behind-proxy.rst.txt | 84 +
.../1.10.6/_sources/howto/run-with-systemd.rst.txt | 40 +
.../1.10.6/_sources/howto/run-with-upstart.rst.txt | 44 +
.../_sources/howto/secure-connections.rst.txt | 63 +
.../1.10.6/_sources/howto/set-config.rst.txt | 68 +
.../_sources/howto/tracking-user-activity.rst.txt | 36 +
.../1.10.6/_sources/howto/use-test-config.rst.txt | 34 +
.../1.10.6/_sources/howto/write-logs.rst.txt | 207 +
docs-archive/1.10.6/_sources/index.rst.txt | 107 +
docs-archive/1.10.6/_sources/installation.rst.txt | 138 +
docs-archive/1.10.6/_sources/integration.rst.txt | 967 ++
docs-archive/1.10.6/_sources/kubernetes.rst.txt | 168 +
docs-archive/1.10.6/_sources/license.rst.txt | 201 +
docs-archive/1.10.6/_sources/lineage.rst.txt | 113 +
docs-archive/1.10.6/_sources/macros.rst.txt | 123 +
docs-archive/1.10.6/_sources/metrics.rst.txt | 102 +
docs-archive/1.10.6/_sources/plugins.rst.txt | 321 +
.../1.10.6/_sources/privacy_notice.rst.txt | 68 +
docs-archive/1.10.6/_sources/profiling.rst.txt | 58 +
docs-archive/1.10.6/_sources/project.rst.txt | 91 +
docs-archive/1.10.6/_sources/scheduler.rst.txt | 187 +
docs-archive/1.10.6/_sources/security.rst.txt | 593 +
docs-archive/1.10.6/_sources/start.rst.txt | 73 +
docs-archive/1.10.6/_sources/timezone.rst.txt | 164 +
docs-archive/1.10.6/_sources/tutorial.rst.txt | 474 +
docs-archive/1.10.6/_sources/ui.rst.txt | 121 +
docs-archive/1.10.6/_static/basic.css | 764 +
docs-archive/1.10.6/_static/css/badge_only.css | 1 +
docs-archive/1.10.6/_static/css/theme.css | 6 +
docs-archive/1.10.6/_static/doctools.js | 314 +
.../1.10.6/_static/documentation_options.js | 10 +
docs-archive/1.10.6/_static/file.png | Bin 0 -> 286 bytes
.../1.10.6/_static/fonts/Inconsolata-Bold.ttf | Bin 0 -> 109948 bytes
.../1.10.6/_static/fonts/Inconsolata-Regular.ttf | Bin 0 -> 96964 bytes
docs-archive/1.10.6/_static/fonts/Inconsolata.ttf | Bin 0 -> 63184 bytes
docs-archive/1.10.6/_static/fonts/Lato-Bold.ttf | Bin 0 -> 656544 bytes
docs-archive/1.10.6/_static/fonts/Lato-Regular.ttf | Bin 0 -> 656568 bytes
.../1.10.6/_static/fonts/Lato/lato-bold.eot | Bin 0 -> 256056 bytes
.../1.10.6/_static/fonts/Lato/lato-bold.ttf | Bin 0 -> 600856 bytes
.../1.10.6/_static/fonts/Lato/lato-bold.woff | Bin 0 -> 309728 bytes
.../1.10.6/_static/fonts/Lato/lato-bold.woff2 | Bin 0 -> 184912 bytes
.../1.10.6/_static/fonts/Lato/lato-bolditalic.eot | Bin 0 -> 266158 bytes
.../1.10.6/_static/fonts/Lato/lato-bolditalic.ttf | Bin 0 -> 622572 bytes
.../1.10.6/_static/fonts/Lato/lato-bolditalic.woff | Bin 0 -> 323344 bytes
.../_static/fonts/Lato/lato-bolditalic.woff2 | Bin 0 -> 193308 bytes
.../1.10.6/_static/fonts/Lato/lato-italic.eot | Bin 0 -> 268604 bytes
.../1.10.6/_static/fonts/Lato/lato-italic.ttf | Bin 0 -> 639388 bytes
.../1.10.6/_static/fonts/Lato/lato-italic.woff | Bin 0 -> 328412 bytes
.../1.10.6/_static/fonts/Lato/lato-italic.woff2 | Bin 0 -> 195704 bytes
.../1.10.6/_static/fonts/Lato/lato-regular.eot | Bin 0 -> 253461 bytes
.../1.10.6/_static/fonts/Lato/lato-regular.ttf | Bin 0 -> 607720 bytes
.../1.10.6/_static/fonts/Lato/lato-regular.woff | Bin 0 -> 309192 bytes
.../1.10.6/_static/fonts/Lato/lato-regular.woff2 | Bin 0 -> 182708 bytes
.../1.10.6/_static/fonts/RobotoSlab-Bold.ttf | Bin 0 -> 170616 bytes
.../1.10.6/_static/fonts/RobotoSlab-Regular.ttf | Bin 0 -> 169064 bytes
.../fonts/RobotoSlab/roboto-slab-v7-bold.eot | Bin 0 -> 79520 bytes
.../fonts/RobotoSlab/roboto-slab-v7-bold.ttf | Bin 0 -> 170616 bytes
.../fonts/RobotoSlab/roboto-slab-v7-bold.woff | Bin 0 -> 87624 bytes
.../fonts/RobotoSlab/roboto-slab-v7-bold.woff2 | Bin 0 -> 67312 bytes
.../fonts/RobotoSlab/roboto-slab-v7-regular.eot | Bin 0 -> 78331 bytes
.../fonts/RobotoSlab/roboto-slab-v7-regular.ttf | Bin 0 -> 169064 bytes
.../fonts/RobotoSlab/roboto-slab-v7-regular.woff | Bin 0 -> 86288 bytes
.../fonts/RobotoSlab/roboto-slab-v7-regular.woff2 | Bin 0 -> 66444 bytes
.../1.10.6/_static/fonts/fontawesome-webfont.eot | Bin 0 -> 165742 bytes
.../1.10.6/_static/fonts/fontawesome-webfont.svg | 2671 ++++
.../1.10.6/_static/fonts/fontawesome-webfont.ttf | Bin 0 -> 165548 bytes
.../1.10.6/_static/fonts/fontawesome-webfont.woff | Bin 0 -> 98024 bytes
.../1.10.6/_static/fonts/fontawesome-webfont.woff2 | Bin 0 -> 77160 bytes
docs-archive/1.10.6/_static/graphviz.css | 19 +
docs-archive/1.10.6/_static/jquery-3.4.1.js | 10598 +++++++++++++
docs-archive/1.10.6/_static/jquery.js | 2 +
docs-archive/1.10.6/_static/js/modernizr.min.js | 4 +
docs-archive/1.10.6/_static/js/theme.js | 3 +
docs-archive/1.10.6/_static/language_data.js | 297 +
docs-archive/1.10.6/_static/minus.png | Bin 0 -> 90 bytes
docs-archive/1.10.6/_static/pin_32.png | Bin 0 -> 1201 bytes
docs-archive/1.10.6/_static/plus.png | Bin 0 -> 90 bytes
docs-archive/1.10.6/_static/pygments.css | 69 +
docs-archive/1.10.6/_static/searchtools.js | 506 +
docs-archive/1.10.6/_static/underscore-1.3.1.js | 999 ++
docs-archive/1.10.6/_static/underscore.js | 31 +
docs-archive/1.10.6/api.html | 525 +
docs-archive/1.10.6/changelog.html | 3653 +++++
docs-archive/1.10.6/cli.html | 1689 +++
docs-archive/1.10.6/concepts.html | 1450 ++
docs-archive/1.10.6/errors.html | 437 +
docs-archive/1.10.6/faq.html | 538 +
docs-archive/1.10.6/genindex.html | 9776 ++++++++++++
docs-archive/1.10.6/howto/check-health.html | 410 +
docs-archive/1.10.6/howto/cli-completion.html | 401 +
docs-archive/1.10.6/howto/connection/aws.html | 440 +
docs-archive/1.10.6/howto/connection/gcp.html | 484 +
docs-archive/1.10.6/howto/connection/gcp_sql.html | 445 +
docs-archive/1.10.6/howto/connection/grpc.html | 447 +
docs-archive/1.10.6/howto/connection/index.html | 461 +
docs-archive/1.10.6/howto/connection/mysql.html | 466 +
docs-archive/1.10.6/howto/connection/oracle.html | 455 +
docs-archive/1.10.6/howto/connection/postgres.html | 451 +
docs-archive/1.10.6/howto/connection/ssh.html | 445 +
docs-archive/1.10.6/howto/define_extra_link.html | 478 +
docs-archive/1.10.6/howto/executor/use-celery.html | 494 +
docs-archive/1.10.6/howto/executor/use-dask.html | 404 +
docs-archive/1.10.6/howto/executor/use-mesos.html | 446 +
docs-archive/1.10.6/howto/index.html | 435 +
docs-archive/1.10.6/howto/initialize-database.html | 409 +
docs-archive/1.10.6/howto/operator/bash.html | 440 +
docs-archive/1.10.6/howto/operator/dingding.html | 516 +
.../1.10.6/howto/operator/gcp/bigtable.html | 624 +
.../1.10.6/howto/operator/gcp/cloud_build.html | 516 +
.../1.10.6/howto/operator/gcp/compute.html | 762 +
.../1.10.6/howto/operator/gcp/function.html | 616 +
docs-archive/1.10.6/howto/operator/gcp/gcs.html | 527 +
docs-archive/1.10.6/howto/operator/gcp/index.html | 425 +
.../howto/operator/gcp/natural_language.html | 594 +
.../1.10.6/howto/operator/gcp/spanner.html | 738 +
docs-archive/1.10.6/howto/operator/gcp/speech.html | 522 +
docs-archive/1.10.6/howto/operator/gcp/sql.html | 1386 ++
.../1.10.6/howto/operator/gcp/transfer.html | 917 ++
.../howto/operator/gcp/translate-speech.html | 466 +
.../1.10.6/howto/operator/gcp/translate.html | 458 +
docs-archive/1.10.6/howto/operator/gcp/video.html | 600 +
docs-archive/1.10.6/howto/operator/gcp/vision.html | 1570 ++
docs-archive/1.10.6/howto/operator/index.html | 438 +
docs-archive/1.10.6/howto/operator/papermill.html | 428 +
docs-archive/1.10.6/howto/operator/python.html | 445 +
docs-archive/1.10.6/howto/run-behind-proxy.html | 444 +
docs-archive/1.10.6/howto/run-with-systemd.html | 394 +
docs-archive/1.10.6/howto/run-with-upstart.html | 404 +
docs-archive/1.10.6/howto/secure-connections.html | 422 +
docs-archive/1.10.6/howto/set-config.html | 419 +
.../1.10.6/howto/tracking-user-activity.html | 396 +
docs-archive/1.10.6/howto/use-test-config.html | 389 +
docs-archive/1.10.6/howto/write-logs.html | 548 +
docs-archive/1.10.6/http-routingtable.html | 417 +
docs-archive/1.10.6/index.html | 1084 ++
docs-archive/1.10.6/installation.html | 543 +
docs-archive/1.10.6/integration.html | 1158 ++
docs-archive/1.10.6/kubernetes.html | 501 +
docs-archive/1.10.6/license.html | 535 +
docs-archive/1.10.6/lineage.html | 444 +
docs-archive/1.10.6/macros.html | 683 +
docs-archive/1.10.6/metrics.html | 516 +
docs-archive/1.10.6/objects.inv | Bin 0 -> 40555 bytes
docs-archive/1.10.6/plugins.html | 642 +
docs-archive/1.10.6/privacy_notice.html | 395 +
docs-archive/1.10.6/profiling.html | 396 +
docs-archive/1.10.6/project.html | 426 +
docs-archive/1.10.6/py-modindex.html | 1939 +++
docs-archive/1.10.6/scheduler.html | 537 +
docs-archive/1.10.6/search.html | 360 +
docs-archive/1.10.6/searchindex.js | 1 +
docs-archive/1.10.6/security.html | 908 ++
docs-archive/1.10.6/start.html | 407 +
docs-archive/1.10.6/timezone.html | 489 +
docs-archive/1.10.6/tutorial.html | 790 +
docs-archive/1.10.6/ui.html | 442 +
5386 files changed, 2062111 insertions(+)
diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml
index 1fedc24..2cb002c 100644
--- a/.pre-commit-config.yaml
+++ b/.pre-commit-config.yaml
@@ -19,6 +19,7 @@ default_stages: [commit, push]
default_language_version:
# force all unspecified python hooks to run python3
python: python3
+exclude: ^docs-archive
repos:
- repo: meta
diff --git a/docs-archive/1.10.1/_images/adhoc.png b/docs-archive/1.10.1/_images/adhoc.png
new file mode 100644
index 0000000..77ea780
Binary files /dev/null and b/docs-archive/1.10.1/_images/adhoc.png differ
diff --git a/docs-archive/1.10.1/_images/airflow.gif b/docs-archive/1.10.1/_images/airflow.gif
new file mode 100644
index 0000000..7646e37
Binary files /dev/null and b/docs-archive/1.10.1/_images/airflow.gif differ
diff --git a/docs-archive/1.10.1/_images/apache.jpg b/docs-archive/1.10.1/_images/apache.jpg
new file mode 100644
index 0000000..312251f
Binary files /dev/null and b/docs-archive/1.10.1/_images/apache.jpg differ
diff --git a/docs-archive/1.10.1/_images/branch_bad.png b/docs-archive/1.10.1/_images/branch_bad.png
new file mode 100644
index 0000000..586844f
Binary files /dev/null and b/docs-archive/1.10.1/_images/branch_bad.png differ
diff --git a/docs-archive/1.10.1/_images/branch_good.png b/docs-archive/1.10.1/_images/branch_good.png
new file mode 100644
index 0000000..fbd4650
Binary files /dev/null and b/docs-archive/1.10.1/_images/branch_good.png differ
diff --git a/docs-archive/1.10.1/_images/chart.png b/docs-archive/1.10.1/_images/chart.png
new file mode 100644
index 0000000..bfca26b
Binary files /dev/null and b/docs-archive/1.10.1/_images/chart.png differ
diff --git a/docs-archive/1.10.1/_images/chart_form.png b/docs-archive/1.10.1/_images/chart_form.png
new file mode 100644
index 0000000..f73daf5
Binary files /dev/null and b/docs-archive/1.10.1/_images/chart_form.png differ
diff --git a/docs-archive/1.10.1/_images/code.png b/docs-archive/1.10.1/_images/code.png
new file mode 100644
index 0000000..ac49291
Binary files /dev/null and b/docs-archive/1.10.1/_images/code.png differ
diff --git a/docs-archive/1.10.1/_images/connection_create.png b/docs-archive/1.10.1/_images/connection_create.png
new file mode 100644
index 0000000..8a574d4
Binary files /dev/null and b/docs-archive/1.10.1/_images/connection_create.png differ
diff --git a/docs-archive/1.10.1/_images/connection_edit.png b/docs-archive/1.10.1/_images/connection_edit.png
new file mode 100644
index 0000000..c6d14da
Binary files /dev/null and b/docs-archive/1.10.1/_images/connection_edit.png differ
diff --git a/docs-archive/1.10.1/_images/connections.png b/docs-archive/1.10.1/_images/connections.png
new file mode 100644
index 0000000..3a28473
Binary files /dev/null and b/docs-archive/1.10.1/_images/connections.png differ
diff --git a/docs-archive/1.10.1/_images/context.png b/docs-archive/1.10.1/_images/context.png
new file mode 100644
index 0000000..de75e48
Binary files /dev/null and b/docs-archive/1.10.1/_images/context.png differ
diff --git a/docs-archive/1.10.1/_images/dags.png b/docs-archive/1.10.1/_images/dags.png
new file mode 100644
index 0000000..a551f02
Binary files /dev/null and b/docs-archive/1.10.1/_images/dags.png differ
diff --git a/docs-archive/1.10.1/_images/duration.png b/docs-archive/1.10.1/_images/duration.png
new file mode 100644
index 0000000..18d723c
Binary files /dev/null and b/docs-archive/1.10.1/_images/duration.png differ
diff --git a/docs-archive/1.10.1/_images/gantt.png b/docs-archive/1.10.1/_images/gantt.png
new file mode 100644
index 0000000..c462adb
Binary files /dev/null and b/docs-archive/1.10.1/_images/gantt.png differ
diff --git a/docs-archive/1.10.1/_images/graph.png b/docs-archive/1.10.1/_images/graph.png
new file mode 100644
index 0000000..cbc58e6
Binary files /dev/null and b/docs-archive/1.10.1/_images/graph.png differ
diff --git a/docs-archive/1.10.1/_images/incubator.jpg b/docs-archive/1.10.1/_images/incubator.jpg
new file mode 100644
index 0000000..6f34a85
Binary files /dev/null and b/docs-archive/1.10.1/_images/incubator.jpg differ
diff --git a/docs-archive/1.10.1/_images/latest_only_with_trigger.png b/docs-archive/1.10.1/_images/latest_only_with_trigger.png
new file mode 100644
index 0000000..629adfa
Binary files /dev/null and b/docs-archive/1.10.1/_images/latest_only_with_trigger.png differ
diff --git a/docs-archive/1.10.1/_images/pin_large.png b/docs-archive/1.10.1/_images/pin_large.png
new file mode 100644
index 0000000..986c88b
Binary files /dev/null and b/docs-archive/1.10.1/_images/pin_large.png differ
diff --git a/docs-archive/1.10.1/_images/subdag_after.png b/docs-archive/1.10.1/_images/subdag_after.png
new file mode 100644
index 0000000..166a6de
Binary files /dev/null and b/docs-archive/1.10.1/_images/subdag_after.png differ
diff --git a/docs-archive/1.10.1/_images/subdag_before.png b/docs-archive/1.10.1/_images/subdag_before.png
new file mode 100644
index 0000000..ebc3e58
Binary files /dev/null and b/docs-archive/1.10.1/_images/subdag_before.png differ
diff --git a/docs-archive/1.10.1/_images/subdag_zoom.png b/docs-archive/1.10.1/_images/subdag_zoom.png
new file mode 100644
index 0000000..08fcf5c
Binary files /dev/null and b/docs-archive/1.10.1/_images/subdag_zoom.png differ
diff --git a/docs-archive/1.10.1/_images/tree.png b/docs-archive/1.10.1/_images/tree.png
new file mode 100644
index 0000000..f3796b0
Binary files /dev/null and b/docs-archive/1.10.1/_images/tree.png differ
diff --git a/docs-archive/1.10.1/_images/variable_hidden.png b/docs-archive/1.10.1/_images/variable_hidden.png
new file mode 100644
index 0000000..e081ca3
Binary files /dev/null and b/docs-archive/1.10.1/_images/variable_hidden.png differ
diff --git a/docs-archive/1.10.1/_modules/airflow/contrib/hooks/aws_dynamodb_hook.html b/docs-archive/1.10.1/_modules/airflow/contrib/hooks/aws_dynamodb_hook.html
new file mode 100644
index 0000000..4feb169
--- /dev/null
+++ b/docs-archive/1.10.1/_modules/airflow/contrib/hooks/aws_dynamodb_hook.html
@@ -0,0 +1,280 @@
+
+
+<!DOCTYPE html>
+<!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
+<!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
+<head>
+ <meta charset="utf-8">
+
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
+
+ <title>airflow.contrib.hooks.aws_dynamodb_hook — Airflow Documentation</title>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <link rel="stylesheet" href="../../../../_static/css/theme.css" type="text/css" />
+ <link rel="stylesheet" href="../../../../_static/pygments.css" type="text/css" />
+ <link rel="index" title="Index" href="../../../../genindex.html" />
+ <link rel="search" title="Search" href="../../../../search.html" />
+
+
+ <script src="../../../../_static/js/modernizr.min.js"></script>
+
+</head>
+
+<body class="wy-body-for-nav">
+
+
+ <div class="wy-grid-for-nav">
+
+
+ <nav data-toggle="wy-nav-shift" class="wy-nav-side">
+ <div class="wy-side-scroll">
+ <div class="wy-side-nav-search">
+
+
+
+ <a href="../../../../index.html" class="icon icon-home"> Airflow
+
+
+
+ </a>
+
+
+
+
+
+
+
+<div role="search">
+ <form id="rtd-search-form" class="wy-form" action="../../../../search.html" method="get">
+ <input type="text" name="q" placeholder="Search docs" />
+ <input type="hidden" name="check_keywords" value="yes" />
+ <input type="hidden" name="area" value="default" />
+ </form>
+</div>
+
+
+ </div>
+
+ <div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
+
+
+
+
+
+
+ <ul>
+<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.html">Installation</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../tutorial.html">Tutorial</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.html">Concepts</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../profiling.html">Data Profiling</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../cli.html">Command Line Interface</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../scheduler.html">Scheduling & Triggers</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.html">Security</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="../../../../api.html">Experimental Rest API</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="../../../../lineage.html">Lineage</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="../../../../code.html">API Reference</a></li>
+</ul>
+
+
+
+ </div>
+ </div>
+ </nav>
+
+ <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
+
+
+ <nav class="wy-nav-top" aria-label="top navigation">
+
+ <i data-toggle="wy-nav-top" class="fa fa-bars"></i>
+ <a href="../../../../index.html">Airflow</a>
+
+ </nav>
+
+
+ <div class="wy-nav-content">
+
+ <div class="rst-content">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+<div role="navigation" aria-label="breadcrumbs navigation">
+
+ <ul class="wy-breadcrumbs">
+
+ <li><a href="../../../../index.html">Docs</a> »</li>
+
+ <li><a href="../../../index.html">Module code</a> »</li>
+
+ <li>airflow.contrib.hooks.aws_dynamodb_hook</li>
+
+
+ <li class="wy-breadcrumbs-aside">
+
+ </li>
+
+ </ul>
+
+
+ <hr/>
+</div>
+ <div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
+ <div itemprop="articleBody">
+
+ <h1>Source code for airflow.contrib.hooks.aws_dynamodb_hook</h1><div class="highlight"><pre>
+<span></span><span class="c1"># -*- coding: utf-8 -*-</span>
+<span class="c1">#</span>
+<span class="c1"># Licensed to the Apache Software Foundation (ASF) under one</span>
+<span class="c1"># or more contributor license agreements. See the NOTICE file</span>
+<span class="c1"># distributed with this work for additional information</span>
+<span class="c1"># regarding copyright ownership. The ASF licenses this file</span>
+<span class="c1"># to you under the Apache License, Version 2.0 (the</span>
+<span class="c1"># "License"); you may not use this file except in compliance</span>
+<span class="c1"># with the License. You may obtain a copy of the License at</span>
+<span class="c1">#</span>
+<span class="c1"># http://www.apache.org/licenses/LICENSE-2.0</span>
+<span class="c1">#</span>
+<span class="c1"># Unless required by applicable law or agreed to in writing,</span>
+<span class="c1"># software distributed under the License is distributed on an</span>
+<span class="c1"># "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY</span>
+<span class="c1"># KIND, either express or implied. See the License for the</span>
+<span class="c1"># specific language governing permissions and limitations</span>
+<span class="c1"># under the License.</span>
+
+<span class="kn">from</span> <span class="nn">airflow.exceptions</span> <span class="k">import</span> <span class="n">AirflowException</span>
+<span class="kn">from</span> <span class="nn">airflow.contrib.hooks.aws_hook</span> <span class="k">import</span> <span class="n">AwsHook</span>
+
+
+<div class="viewcode-block" id="AwsDynamoDBHook"><a class="viewcode-back" href="../../../../code.html#airflow.contrib.hooks.aws_dynamodb_hook.AwsDynamoDBHook">[docs]</a><span class="k">class</span> <span class="nc">AwsDynamoDBHook</span><span class="p">(</span><span class="n">AwsHook</span><span class="p">):</span>
+ <span class="sd">"""</span>
+<span class="sd"> Interact with AWS DynamoDB.</span>
+
+<span class="sd"> :param table_keys: partition key and sort key</span>
+<span class="sd"> :type table_keys: list</span>
+<span class="sd"> :param table_name: target DynamoDB table</span>
+<span class="sd"> :type table_name: str</span>
+<span class="sd"> :param region_name: aws region name (example: us-east-1)</span>
+<span class="sd"> :type region_name: str</span>
+<span class="sd"> """</span>
+
+ <span class="k">def</span> <span class="nf">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span>
+ <span class="n">table_keys</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span>
+ <span class="n">table_name</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span>
+ <span class="n">region_name</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span>
+ <span class="o">*</span><span class="n">args</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">table_keys</span> <span class="o">=</span> <span class="n">table_keys</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">table_name</span> <span class="o">=</span> <span class="n">table_name</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">region_name</span> <span class="o">=</span> <span class="n">region_name</span>
+ <span class="nb">super</span><span class="p">(</span><span class="n">AwsDynamoDBHook</span><span class="p">,</span> <span class="bp">self</span><span class="p">)</span><span class="o">.</span><span class="fm">__init__</span><span class="p">(</span><span class="o">*</span><span class="n">args</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">)</span>
+
+ <span class="k">def</span> <span class="nf">get_conn</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">conn</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">get_resource_type</span><span class="p">(</span><span class="s1">'dynamodb'</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">region_name</span><span class="p">)</span>
+ <span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">conn</span>
+
+<div class="viewcode-block" id="AwsDynamoDBHook.write_batch_data"><a class="viewcode-back" href="../../../../code.html#airflow.contrib.hooks.aws_dynamodb_hook.AwsDynamoDBHook.write_batch_data">[docs]</a> <span class="k">def</span> <span class="nf">write_batch_data</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">items</span><span class="p">):</span>
+ <span class="sd">"""</span>
+<span class="sd"> Write batch items to dynamodb table with provisioned throughout capacity.</span>
+<span class="sd"> """</span>
+
+ <span class="n">dynamodb_conn</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">get_conn</span><span class="p">()</span>
+
+ <span class="k">try</span><span class="p">:</span>
+ <span class="n">table</span> <span class="o">=</span> <span class="n">dynamodb_conn</span><span class="o">.</span><span class="n">Table</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">table_name</span><span class="p">)</span>
+
+ <span class="k">with</span> <span class="n">table</span><span class="o">.</span><span class="n">batch_writer</span><span class="p">(</span><span class="n">overwrite_by_pkeys</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">table_keys</span><span class="p">)</span> <span class="k">as</span> <span class="n">batch</span><span class="p">:</span>
+ <span class="k">for</span> <span class="n">item</span> <span class="ow">in</span> <span class="n">items</span><span class="p">:</span>
+ <span class="n">batch</span><span class="o">.</span><span class="n">put_item</span><span class="p">(</span><span class="n">Item</span><span class="o">=</span><span class="n">item</span><span class="p">)</span>
+ <span class="k">return</span> <span class="kc">True</span>
+ <span class="k">except</span> <span class="ne">Exception</span> <span class="k">as</span> <span class="n">general_error</span><span class="p">:</span>
+ <span class="k">raise</span> <span class="n">AirflowException</span><span class="p">(</span>
+ <span class="s1">'Failed to insert items in dynamodb, error: </span><span class="si">{error}</span><span class="s1">'</span><span class="o">.</span><span class="n">format</span><span class="p">(</span>
+ <span class="n">error</span><span class="o">=</span><span class="nb">str</span><span class="p">(</span><span class="n">general_error</span><span class="p">)</span>
+ <span class="p">)</span>
+ <span class="p">)</span></div></div>
+</pre></div>
+
+ </div>
+
+ </div>
+ <footer>
+
+
+ <hr/>
+
+ <div role="contentinfo">
+ <p>
+
+ </p>
+ </div>
+ Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/rtfd/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
+
+</footer>
+
+ </div>
+ </div>
+
+ </section>
+
+ </div>
+
+
+
+
+
+
+
+ <script type="text/javascript" id="documentation_options" data-url_root="../../../../" src="../../../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../../../_static/doctools.js"></script>
+
+
+
+
+ <script type="text/javascript" src="../../../../_static/js/theme.js"></script>
+
+ <script type="text/javascript">
+ jQuery(function () {
+ SphinxRtdTheme.Navigation.enable(true);
+ });
+ </script>
+
+</body>
+</html>
\ No newline at end of file
diff --git a/docs-archive/1.10.1/_modules/airflow/contrib/hooks/aws_firehose_hook.html b/docs-archive/1.10.1/_modules/airflow/contrib/hooks/aws_firehose_hook.html
new file mode 100644
index 0000000..c78e6db
--- /dev/null
+++ b/docs-archive/1.10.1/_modules/airflow/contrib/hooks/aws_firehose_hook.html
@@ -0,0 +1,267 @@
+
+
+<!DOCTYPE html>
+<!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
+<!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
+<head>
+ <meta charset="utf-8">
+
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
+
+ <title>airflow.contrib.hooks.aws_firehose_hook — Airflow Documentation</title>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <link rel="stylesheet" href="../../../../_static/css/theme.css" type="text/css" />
+ <link rel="stylesheet" href="../../../../_static/pygments.css" type="text/css" />
+ <link rel="index" title="Index" href="../../../../genindex.html" />
+ <link rel="search" title="Search" href="../../../../search.html" />
+
+
+ <script src="../../../../_static/js/modernizr.min.js"></script>
+
+</head>
+
+<body class="wy-body-for-nav">
+
+
+ <div class="wy-grid-for-nav">
+
+
+ <nav data-toggle="wy-nav-shift" class="wy-nav-side">
+ <div class="wy-side-scroll">
+ <div class="wy-side-nav-search">
+
+
+
+ <a href="../../../../index.html" class="icon icon-home"> Airflow
+
+
+
+ </a>
+
+
+
+
+
+
+
+<div role="search">
+ <form id="rtd-search-form" class="wy-form" action="../../../../search.html" method="get">
+ <input type="text" name="q" placeholder="Search docs" />
+ <input type="hidden" name="check_keywords" value="yes" />
+ <input type="hidden" name="area" value="default" />
+ </form>
+</div>
+
+
+ </div>
+
+ <div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
+
+
+
+
+
+
+ <ul>
+<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.html">Installation</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../tutorial.html">Tutorial</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.html">Concepts</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../profiling.html">Data Profiling</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../cli.html">Command Line Interface</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../scheduler.html">Scheduling & Triggers</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.html">Security</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="../../../../api.html">Experimental Rest API</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="../../../../lineage.html">Lineage</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="../../../../code.html">API Reference</a></li>
+</ul>
+
+
+
+ </div>
+ </div>
+ </nav>
+
+ <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
+
+
+ <nav class="wy-nav-top" aria-label="top navigation">
+
+ <i data-toggle="wy-nav-top" class="fa fa-bars"></i>
+ <a href="../../../../index.html">Airflow</a>
+
+ </nav>
+
+
+ <div class="wy-nav-content">
+
+ <div class="rst-content">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+<div role="navigation" aria-label="breadcrumbs navigation">
+
+ <ul class="wy-breadcrumbs">
+
+ <li><a href="../../../../index.html">Docs</a> »</li>
+
+ <li><a href="../../../index.html">Module code</a> »</li>
+
+ <li>airflow.contrib.hooks.aws_firehose_hook</li>
+
+
+ <li class="wy-breadcrumbs-aside">
+
+ </li>
+
+ </ul>
+
+
+ <hr/>
+</div>
+ <div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
+ <div itemprop="articleBody">
+
+ <h1>Source code for airflow.contrib.hooks.aws_firehose_hook</h1><div class="highlight"><pre>
+<span></span><span class="c1">#</span>
+<span class="c1"># Licensed to the Apache Software Foundation (ASF) under one</span>
+<span class="c1"># or more contributor license agreements. See the NOTICE file</span>
+<span class="c1"># distributed with this work for additional information</span>
+<span class="c1"># regarding copyright ownership. The ASF licenses this file</span>
+<span class="c1"># to you under the Apache License, Version 2.0 (the</span>
+<span class="c1"># "License"); you may not use this file except in compliance</span>
+<span class="c1"># with the License. You may obtain a copy of the License at</span>
+<span class="c1">#</span>
+<span class="c1"># http://www.apache.org/licenses/LICENSE-2.0</span>
+<span class="c1">#</span>
+<span class="c1"># Unless required by applicable law or agreed to in writing,</span>
+<span class="c1"># software distributed under the License is distributed on an</span>
+<span class="c1"># "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY</span>
+<span class="c1"># KIND, either express or implied. See the License for the</span>
+<span class="c1"># specific language governing permissions and limitations</span>
+<span class="c1"># under the License.</span>
+
+<span class="kn">from</span> <span class="nn">airflow.contrib.hooks.aws_hook</span> <span class="k">import</span> <span class="n">AwsHook</span>
+
+
+<div class="viewcode-block" id="AwsFirehoseHook"><a class="viewcode-back" href="../../../../code.html#airflow.contrib.hooks.aws_firehose_hook.AwsFirehoseHook">[docs]</a><span class="k">class</span> <span class="nc">AwsFirehoseHook</span><span class="p">(</span><span class="n">AwsHook</span><span class="p">):</span>
+ <span class="sd">"""</span>
+<span class="sd"> Interact with AWS Kinesis Firehose.</span>
+<span class="sd"> :param delivery_stream: Name of the delivery stream</span>
+<span class="sd"> :type delivery_stream: str</span>
+<span class="sd"> :param region_name: AWS region name (example: us-east-1)</span>
+<span class="sd"> :type region_name: str</span>
+<span class="sd"> """</span>
+
+ <span class="k">def</span> <span class="nf">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">delivery_stream</span><span class="p">,</span> <span class="n">region_name</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span> <span class="o">*</span><span class="n">args</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">delivery_stream</span> <span class="o">=</span> <span class="n">delivery_stream</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">region_name</span> <span class="o">=</span> <span class="n">region_name</span>
+ <span class="nb">super</span><span class="p">(</span><span class="n">AwsFirehoseHook</span><span class="p">,</span> <span class="bp">self</span><span class="p">)</span><span class="o">.</span><span class="fm">__init__</span><span class="p">(</span><span class="o">*</span><span class="n">args</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">)</span>
+
+<div class="viewcode-block" id="AwsFirehoseHook.get_conn"><a class="viewcode-back" href="../../../../code.html#airflow.contrib.hooks.aws_firehose_hook.AwsFirehoseHook.get_conn">[docs]</a> <span class="k">def</span> <span class="nf">get_conn</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
+ <span class="sd">"""</span>
+<span class="sd"> Returns AwsHook connection object.</span>
+<span class="sd"> """</span>
+
+ <span class="bp">self</span><span class="o">.</span><span class="n">conn</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">get_client_type</span><span class="p">(</span><span class="s1">'firehose'</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">region_name</span><span class="p">)</span>
+ <span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">conn</span></div>
+
+<div class="viewcode-block" id="AwsFirehoseHook.put_records"><a class="viewcode-back" href="../../../../code.html#airflow.contrib.hooks.aws_firehose_hook.AwsFirehoseHook.put_records">[docs]</a> <span class="k">def</span> <span class="nf">put_records</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">records</span><span class="p">):</span>
+ <span class="sd">"""</span>
+<span class="sd"> Write batch records to Kinesis Firehose</span>
+<span class="sd"> """</span>
+
+ <span class="n">firehose_conn</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">get_conn</span><span class="p">()</span>
+
+ <span class="n">response</span> <span class="o">=</span> <span class="n">firehose_conn</span><span class="o">.</span><span class="n">put_record_batch</span><span class="p">(</span>
+ <span class="n">DeliveryStreamName</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">delivery_stream</span><span class="p">,</span>
+ <span class="n">Records</span><span class="o">=</span><span class="n">records</span>
+ <span class="p">)</span>
+
+ <span class="k">return</span> <span class="n">response</span></div></div>
+</pre></div>
+
+ </div>
+
+ </div>
+ <footer>
+
+
+ <hr/>
+
+ <div role="contentinfo">
+ <p>
+
+ </p>
+ </div>
+ Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/rtfd/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
+
+</footer>
+
+ </div>
+ </div>
+
+ </section>
+
+ </div>
+
+
+
+
+
+
+
+ <script type="text/javascript" id="documentation_options" data-url_root="../../../../" src="../../../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../../../_static/doctools.js"></script>
+
+
+
+
+ <script type="text/javascript" src="../../../../_static/js/theme.js"></script>
+
+ <script type="text/javascript">
+ jQuery(function () {
+ SphinxRtdTheme.Navigation.enable(true);
+ });
+ </script>
+
+</body>
+</html>
\ No newline at end of file
diff --git a/docs-archive/1.10.1/_modules/airflow/contrib/hooks/aws_hook.html b/docs-archive/1.10.1/_modules/airflow/contrib/hooks/aws_hook.html
new file mode 100644
index 0000000..fb81ebf
--- /dev/null
+++ b/docs-archive/1.10.1/_modules/airflow/contrib/hooks/aws_hook.html
@@ -0,0 +1,415 @@
+
+
+<!DOCTYPE html>
+<!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
+<!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
+<head>
+ <meta charset="utf-8">
+
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
+
+ <title>airflow.contrib.hooks.aws_hook — Airflow Documentation</title>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <link rel="stylesheet" href="../../../../_static/css/theme.css" type="text/css" />
+ <link rel="stylesheet" href="../../../../_static/pygments.css" type="text/css" />
+ <link rel="index" title="Index" href="../../../../genindex.html" />
+ <link rel="search" title="Search" href="../../../../search.html" />
+
+
+ <script src="../../../../_static/js/modernizr.min.js"></script>
+
+</head>
+
+<body class="wy-body-for-nav">
+
+
+ <div class="wy-grid-for-nav">
+
+
+ <nav data-toggle="wy-nav-shift" class="wy-nav-side">
+ <div class="wy-side-scroll">
+ <div class="wy-side-nav-search">
+
+
+
+ <a href="../../../../index.html" class="icon icon-home"> Airflow
+
+
+
+ </a>
+
+
+
+
+
+
+
+<div role="search">
+ <form id="rtd-search-form" class="wy-form" action="../../../../search.html" method="get">
+ <input type="text" name="q" placeholder="Search docs" />
+ <input type="hidden" name="check_keywords" value="yes" />
+ <input type="hidden" name="area" value="default" />
+ </form>
+</div>
+
+
+ </div>
+
+ <div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
+
+
+
+
+
+
+ <ul>
+<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.html">Installation</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../tutorial.html">Tutorial</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.html">Concepts</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../profiling.html">Data Profiling</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../cli.html">Command Line Interface</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../scheduler.html">Scheduling & Triggers</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.html">Security</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="../../../../api.html">Experimental Rest API</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="../../../../lineage.html">Lineage</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="../../../../code.html">API Reference</a></li>
+</ul>
+
+
+
+ </div>
+ </div>
+ </nav>
+
+ <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
+
+
+ <nav class="wy-nav-top" aria-label="top navigation">
+
+ <i data-toggle="wy-nav-top" class="fa fa-bars"></i>
+ <a href="../../../../index.html">Airflow</a>
+
+ </nav>
+
+
+ <div class="wy-nav-content">
+
+ <div class="rst-content">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+<div role="navigation" aria-label="breadcrumbs navigation">
+
+ <ul class="wy-breadcrumbs">
+
+ <li><a href="../../../../index.html">Docs</a> »</li>
+
+ <li><a href="../../../index.html">Module code</a> »</li>
+
+ <li>airflow.contrib.hooks.aws_hook</li>
+
+
+ <li class="wy-breadcrumbs-aside">
+
+ </li>
+
+ </ul>
+
+
+ <hr/>
+</div>
+ <div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
+ <div itemprop="articleBody">
+
+ <h1>Source code for airflow.contrib.hooks.aws_hook</h1><div class="highlight"><pre>
+<span></span><span class="c1"># -*- coding: utf-8 -*-</span>
+<span class="c1">#</span>
+<span class="c1"># Licensed to the Apache Software Foundation (ASF) under one</span>
+<span class="c1"># or more contributor license agreements. See the NOTICE file</span>
+<span class="c1"># distributed with this work for additional information</span>
+<span class="c1"># regarding copyright ownership. The ASF licenses this file</span>
+<span class="c1"># to you under the Apache License, Version 2.0 (the</span>
+<span class="c1"># "License"); you may not use this file except in compliance</span>
+<span class="c1"># with the License. You may obtain a copy of the License at</span>
+<span class="c1">#</span>
+<span class="c1"># http://www.apache.org/licenses/LICENSE-2.0</span>
+<span class="c1">#</span>
+<span class="c1"># Unless required by applicable law or agreed to in writing,</span>
+<span class="c1"># software distributed under the License is distributed on an</span>
+<span class="c1"># "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY</span>
+<span class="c1"># KIND, either express or implied. See the License for the</span>
+<span class="c1"># specific language governing permissions and limitations</span>
+<span class="c1"># under the License.</span>
+
+<span class="kn">import</span> <span class="nn">boto3</span>
+<span class="kn">import</span> <span class="nn">configparser</span>
+<span class="kn">import</span> <span class="nn">logging</span>
+
+<span class="kn">from</span> <span class="nn">airflow.exceptions</span> <span class="k">import</span> <span class="n">AirflowException</span>
+<span class="kn">from</span> <span class="nn">airflow.hooks.base_hook</span> <span class="k">import</span> <span class="n">BaseHook</span>
+
+
+<span class="k">def</span> <span class="nf">_parse_s3_config</span><span class="p">(</span><span class="n">config_file_name</span><span class="p">,</span> <span class="n">config_format</span><span class="o">=</span><span class="s1">'boto'</span><span class="p">,</span> <span class="n">profile</span><span class="o">=</span><span class="kc">None</span><span class="p">):</span>
+ <span class="sd">"""</span>
+<span class="sd"> Parses a config file for s3 credentials. Can currently</span>
+<span class="sd"> parse boto, s3cmd.conf and AWS SDK config formats</span>
+
+<span class="sd"> :param config_file_name: path to the config file</span>
+<span class="sd"> :type config_file_name: str</span>
+<span class="sd"> :param config_format: config type. One of "boto", "s3cmd" or "aws".</span>
+<span class="sd"> Defaults to "boto"</span>
+<span class="sd"> :type config_format: str</span>
+<span class="sd"> :param profile: profile name in AWS type config file</span>
+<span class="sd"> :type profile: str</span>
+<span class="sd"> """</span>
+ <span class="n">config</span> <span class="o">=</span> <span class="n">configparser</span><span class="o">.</span><span class="n">ConfigParser</span><span class="p">()</span>
+ <span class="k">if</span> <span class="n">config</span><span class="o">.</span><span class="n">read</span><span class="p">(</span><span class="n">config_file_name</span><span class="p">):</span> <span class="c1"># pragma: no cover</span>
+ <span class="n">sections</span> <span class="o">=</span> <span class="n">config</span><span class="o">.</span><span class="n">sections</span><span class="p">()</span>
+ <span class="k">else</span><span class="p">:</span>
+ <span class="k">raise</span> <span class="n">AirflowException</span><span class="p">(</span><span class="s2">"Couldn't read </span><span class="si">{0}</span><span class="s2">"</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">config_file_name</span><span class="p">))</span>
+ <span class="c1"># Setting option names depending on file format</span>
+ <span class="k">if</span> <span class="n">config_format</span> <span class="ow">is</span> <span class="kc">None</span><span class="p">:</span>
+ <span class="n">config_format</span> <span class="o">=</span> <span class="s1">'boto'</span>
+ <span class="n">conf_format</span> <span class="o">=</span> <span class="n">config_format</span><span class="o">.</span><span class="n">lower</span><span class="p">()</span>
+ <span class="k">if</span> <span class="n">conf_format</span> <span class="o">==</span> <span class="s1">'boto'</span><span class="p">:</span> <span class="c1"># pragma: no cover</span>
+ <span class="k">if</span> <span class="n">profile</span> <span class="ow">is</span> <span class="ow">not</span> <span class="kc">None</span> <span class="ow">and</span> <span class="s1">'profile '</span> <span class="o">+</span> <span class="n">profile</span> <span class="ow">in</span> <span class="n">sections</span><span class="p">:</span>
+ <span class="n">cred_section</span> <span class="o">=</span> <span class="s1">'profile '</span> <span class="o">+</span> <span class="n">profile</span>
+ <span class="k">else</span><span class="p">:</span>
+ <span class="n">cred_section</span> <span class="o">=</span> <span class="s1">'Credentials'</span>
+ <span class="k">elif</span> <span class="n">conf_format</span> <span class="o">==</span> <span class="s1">'aws'</span> <span class="ow">and</span> <span class="n">profile</span> <span class="ow">is</span> <span class="ow">not</span> <span class="kc">None</span><span class="p">:</span>
+ <span class="n">cred_section</span> <span class="o">=</span> <span class="n">profile</span>
+ <span class="k">else</span><span class="p">:</span>
+ <span class="n">cred_section</span> <span class="o">=</span> <span class="s1">'default'</span>
+ <span class="c1"># Option names</span>
+ <span class="k">if</span> <span class="n">conf_format</span> <span class="ow">in</span> <span class="p">(</span><span class="s1">'boto'</span><span class="p">,</span> <span class="s1">'aws'</span><span class="p">):</span> <span class="c1"># pragma: no cover</span>
+ <span class="n">key_id_option</span> <span class="o">=</span> <span class="s1">'aws_access_key_id'</span>
+ <span class="n">secret_key_option</span> <span class="o">=</span> <span class="s1">'aws_secret_access_key'</span>
+ <span class="c1"># security_token_option = 'aws_security_token'</span>
+ <span class="k">else</span><span class="p">:</span>
+ <span class="n">key_id_option</span> <span class="o">=</span> <span class="s1">'access_key'</span>
+ <span class="n">secret_key_option</span> <span class="o">=</span> <span class="s1">'secret_key'</span>
+ <span class="c1"># Actual Parsing</span>
+ <span class="k">if</span> <span class="n">cred_section</span> <span class="ow">not</span> <span class="ow">in</span> <span class="n">sections</span><span class="p">:</span>
+ <span class="k">raise</span> <span class="n">AirflowException</span><span class="p">(</span><span class="s2">"This config file format is not recognized"</span><span class="p">)</span>
+ <span class="k">else</span><span class="p">:</span>
+ <span class="k">try</span><span class="p">:</span>
+ <span class="n">access_key</span> <span class="o">=</span> <span class="n">config</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="n">cred_section</span><span class="p">,</span> <span class="n">key_id_option</span><span class="p">)</span>
+ <span class="n">secret_key</span> <span class="o">=</span> <span class="n">config</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="n">cred_section</span><span class="p">,</span> <span class="n">secret_key_option</span><span class="p">)</span>
+ <span class="k">except</span> <span class="ne">Exception</span><span class="p">:</span>
+ <span class="n">logging</span><span class="o">.</span><span class="n">warning</span><span class="p">(</span><span class="s2">"Option Error in parsing s3 config file"</span><span class="p">)</span>
+ <span class="k">raise</span>
+ <span class="k">return</span> <span class="n">access_key</span><span class="p">,</span> <span class="n">secret_key</span>
+
+
+<div class="viewcode-block" id="AwsHook"><a class="viewcode-back" href="../../../../code.html#airflow.contrib.hooks.aws_hook.AwsHook">[docs]</a><span class="k">class</span> <span class="nc">AwsHook</span><span class="p">(</span><span class="n">BaseHook</span><span class="p">):</span>
+ <span class="sd">"""</span>
+<span class="sd"> Interact with AWS.</span>
+<span class="sd"> This class is a thin wrapper around the boto3 python library.</span>
+<span class="sd"> """</span>
+
+ <span class="k">def</span> <span class="nf">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">aws_conn_id</span><span class="o">=</span><span class="s1">'aws_default'</span><span class="p">):</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">aws_conn_id</span> <span class="o">=</span> <span class="n">aws_conn_id</span>
+
+ <span class="k">def</span> <span class="nf">_get_credentials</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">region_name</span><span class="p">):</span>
+ <span class="n">aws_access_key_id</span> <span class="o">=</span> <span class="kc">None</span>
+ <span class="n">aws_secret_access_key</span> <span class="o">=</span> <span class="kc">None</span>
+ <span class="n">aws_session_token</span> <span class="o">=</span> <span class="kc">None</span>
+ <span class="n">endpoint_url</span> <span class="o">=</span> <span class="kc">None</span>
+
+ <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">aws_conn_id</span><span class="p">:</span>
+ <span class="k">try</span><span class="p">:</span>
+ <span class="n">connection_object</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">get_connection</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">aws_conn_id</span><span class="p">)</span>
+ <span class="n">extra_config</span> <span class="o">=</span> <span class="n">connection_object</span><span class="o">.</span><span class="n">extra_dejson</span>
+ <span class="k">if</span> <span class="n">connection_object</span><span class="o">.</span><span class="n">login</span><span class="p">:</span>
+ <span class="n">aws_access_key_id</span> <span class="o">=</span> <span class="n">connection_object</span><span class="o">.</span><span class="n">login</span>
+ <span class="n">aws_secret_access_key</span> <span class="o">=</span> <span class="n">connection_object</span><span class="o">.</span><span class="n">password</span>
+
+ <span class="k">elif</span> <span class="s1">'aws_secret_access_key'</span> <span class="ow">in</span> <span class="n">extra_config</span><span class="p">:</span>
+ <span class="n">aws_access_key_id</span> <span class="o">=</span> <span class="n">extra_config</span><span class="p">[</span>
+ <span class="s1">'aws_access_key_id'</span><span class="p">]</span>
+ <span class="n">aws_secret_access_key</span> <span class="o">=</span> <span class="n">extra_config</span><span class="p">[</span>
+ <span class="s1">'aws_secret_access_key'</span><span class="p">]</span>
+
+ <span class="k">elif</span> <span class="s1">'s3_config_file'</span> <span class="ow">in</span> <span class="n">extra_config</span><span class="p">:</span>
+ <span class="n">aws_access_key_id</span><span class="p">,</span> <span class="n">aws_secret_access_key</span> <span class="o">=</span> \
+ <span class="n">_parse_s3_config</span><span class="p">(</span>
+ <span class="n">extra_config</span><span class="p">[</span><span class="s1">'s3_config_file'</span><span class="p">],</span>
+ <span class="n">extra_config</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s1">'s3_config_format'</span><span class="p">),</span>
+ <span class="n">extra_config</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s1">'profile'</span><span class="p">))</span>
+
+ <span class="k">if</span> <span class="n">region_name</span> <span class="ow">is</span> <span class="kc">None</span><span class="p">:</span>
+ <span class="n">region_name</span> <span class="o">=</span> <span class="n">extra_config</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s1">'region_name'</span><span class="p">)</span>
+
+ <span class="n">role_arn</span> <span class="o">=</span> <span class="n">extra_config</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s1">'role_arn'</span><span class="p">)</span>
+ <span class="n">external_id</span> <span class="o">=</span> <span class="n">extra_config</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s1">'external_id'</span><span class="p">)</span>
+ <span class="n">aws_account_id</span> <span class="o">=</span> <span class="n">extra_config</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s1">'aws_account_id'</span><span class="p">)</span>
+ <span class="n">aws_iam_role</span> <span class="o">=</span> <span class="n">extra_config</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s1">'aws_iam_role'</span><span class="p">)</span>
+
+ <span class="k">if</span> <span class="n">role_arn</span> <span class="ow">is</span> <span class="kc">None</span> <span class="ow">and</span> <span class="n">aws_account_id</span> <span class="ow">is</span> <span class="ow">not</span> <span class="kc">None</span> <span class="ow">and</span> \
+ <span class="n">aws_iam_role</span> <span class="ow">is</span> <span class="ow">not</span> <span class="kc">None</span><span class="p">:</span>
+ <span class="n">role_arn</span> <span class="o">=</span> <span class="s2">"arn:aws:iam::</span><span class="si">{}</span><span class="s2">:role/</span><span class="si">{}</span><span class="s2">"</span> \
+ <span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">aws_account_id</span><span class="p">,</span> <span class="n">aws_iam_role</span><span class="p">)</span>
+
+ <span class="k">if</span> <span class="n">role_arn</span> <span class="ow">is</span> <span class="ow">not</span> <span class="kc">None</span><span class="p">:</span>
+ <span class="n">sts_session</span> <span class="o">=</span> <span class="n">boto3</span><span class="o">.</span><span class="n">session</span><span class="o">.</span><span class="n">Session</span><span class="p">(</span>
+ <span class="n">aws_access_key_id</span><span class="o">=</span><span class="n">aws_access_key_id</span><span class="p">,</span>
+ <span class="n">aws_secret_access_key</span><span class="o">=</span><span class="n">aws_secret_access_key</span><span class="p">,</span>
+ <span class="n">region_name</span><span class="o">=</span><span class="n">region_name</span><span class="p">)</span>
+
+ <span class="n">sts_client</span> <span class="o">=</span> <span class="n">sts_session</span><span class="o">.</span><span class="n">client</span><span class="p">(</span><span class="s1">'sts'</span><span class="p">)</span>
+
+ <span class="k">if</span> <span class="n">external_id</span> <span class="ow">is</span> <span class="kc">None</span><span class="p">:</span>
+ <span class="n">sts_response</span> <span class="o">=</span> <span class="n">sts_client</span><span class="o">.</span><span class="n">assume_role</span><span class="p">(</span>
+ <span class="n">RoleArn</span><span class="o">=</span><span class="n">role_arn</span><span class="p">,</span>
+ <span class="n">RoleSessionName</span><span class="o">=</span><span class="s1">'Airflow_'</span> <span class="o">+</span> <span class="bp">self</span><span class="o">.</span><span class="n">aws_conn_id</span><span class="p">)</span>
+ <span class="k">else</span><span class="p">:</span>
+ <span class="n">sts_response</span> <span class="o">=</span> <span class="n">sts_client</span><span class="o">.</span><span class="n">assume_role</span><span class="p">(</span>
+ <span class="n">RoleArn</span><span class="o">=</span><span class="n">role_arn</span><span class="p">,</span>
+ <span class="n">RoleSessionName</span><span class="o">=</span><span class="s1">'Airflow_'</span> <span class="o">+</span> <span class="bp">self</span><span class="o">.</span><span class="n">aws_conn_id</span><span class="p">,</span>
+ <span class="n">ExternalId</span><span class="o">=</span><span class="n">external_id</span><span class="p">)</span>
+
+ <span class="n">credentials</span> <span class="o">=</span> <span class="n">sts_response</span><span class="p">[</span><span class="s1">'Credentials'</span><span class="p">]</span>
+ <span class="n">aws_access_key_id</span> <span class="o">=</span> <span class="n">credentials</span><span class="p">[</span><span class="s1">'AccessKeyId'</span><span class="p">]</span>
+ <span class="n">aws_secret_access_key</span> <span class="o">=</span> <span class="n">credentials</span><span class="p">[</span><span class="s1">'SecretAccessKey'</span><span class="p">]</span>
+ <span class="n">aws_session_token</span> <span class="o">=</span> <span class="n">credentials</span><span class="p">[</span><span class="s1">'SessionToken'</span><span class="p">]</span>
+
+ <span class="n">endpoint_url</span> <span class="o">=</span> <span class="n">extra_config</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s1">'host'</span><span class="p">)</span>
+
+ <span class="k">except</span> <span class="n">AirflowException</span><span class="p">:</span>
+ <span class="c1"># No connection found: fallback on boto3 credential strategy</span>
+ <span class="c1"># http://boto3.readthedocs.io/en/latest/guide/configuration.html</span>
+ <span class="k">pass</span>
+
+ <span class="k">return</span> <span class="n">boto3</span><span class="o">.</span><span class="n">session</span><span class="o">.</span><span class="n">Session</span><span class="p">(</span>
+ <span class="n">aws_access_key_id</span><span class="o">=</span><span class="n">aws_access_key_id</span><span class="p">,</span>
+ <span class="n">aws_secret_access_key</span><span class="o">=</span><span class="n">aws_secret_access_key</span><span class="p">,</span>
+ <span class="n">aws_session_token</span><span class="o">=</span><span class="n">aws_session_token</span><span class="p">,</span>
+ <span class="n">region_name</span><span class="o">=</span><span class="n">region_name</span><span class="p">),</span> <span class="n">endpoint_url</span>
+
+ <span class="k">def</span> <span class="nf">get_client_type</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">client_type</span><span class="p">,</span> <span class="n">region_name</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span> <span class="n">config</span><span class="o">=</span><span class="kc">None</span><span class="p">):</span>
+ <span class="n">session</span><span class="p">,</span> <span class="n">endpoint_url</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">_get_credentials</span><span class="p">(</span><span class="n">region_name</span><span class="p">)</span>
+
+ <span class="k">return</span> <span class="n">session</span><span class="o">.</span><span class="n">client</span><span class="p">(</span><span class="n">client_type</span><span class="p">,</span> <span class="n">endpoint_url</span><span class="o">=</span><span class="n">endpoint_url</span><span class="p">,</span>
+ <span class="n">config</span><span class="o">=</span><span class="n">config</span><span class="p">)</span>
+
+ <span class="k">def</span> <span class="nf">get_resource_type</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">resource_type</span><span class="p">,</span> <span class="n">region_name</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span> <span class="n">config</span><span class="o">=</span><span class="kc">None</span><span class="p">):</span>
+ <span class="n">session</span><span class="p">,</span> <span class="n">endpoint_url</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">_get_credentials</span><span class="p">(</span><span class="n">region_name</span><span class="p">)</span>
+
+ <span class="k">return</span> <span class="n">session</span><span class="o">.</span><span class="n">resource</span><span class="p">(</span><span class="n">resource_type</span><span class="p">,</span> <span class="n">endpoint_url</span><span class="o">=</span><span class="n">endpoint_url</span><span class="p">,</span>
+ <span class="n">config</span><span class="o">=</span><span class="n">config</span><span class="p">)</span>
+
+<div class="viewcode-block" id="AwsHook.get_session"><a class="viewcode-back" href="../../../../code.html#airflow.contrib.hooks.aws_hook.AwsHook.get_session">[docs]</a> <span class="k">def</span> <span class="nf">get_session</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">region_name</span><span class="o">=</span><span class="kc">None</span><span class="p">):</span>
+ <span class="sd">"""Get the underlying boto3.session."""</span>
+ <span class="n">session</span><span class="p">,</span> <span class="n">_</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">_get_credentials</span><span class="p">(</span><span class="n">region_name</span><span class="p">)</span>
+ <span class="k">return</span> <span class="n">session</span></div>
+
+<div class="viewcode-block" id="AwsHook.get_credentials"><a class="viewcode-back" href="../../../../code.html#airflow.contrib.hooks.aws_hook.AwsHook.get_credentials">[docs]</a> <span class="k">def</span> <span class="nf">get_credentials</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">region_name</span><span class="o">=</span><span class="kc">None</span><span class="p">):</span>
+ <span class="sd">"""Get the underlying `botocore.Credentials` object.</span>
+
+<span class="sd"> This contains the following authentication attributes: access_key, secret_key and token.</span>
+<span class="sd"> """</span>
+ <span class="n">session</span><span class="p">,</span> <span class="n">_</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">_get_credentials</span><span class="p">(</span><span class="n">region_name</span><span class="p">)</span>
+ <span class="c1"># Credentials are refreshable, so accessing your access key and</span>
+ <span class="c1"># secret key separately can lead to a race condition.</span>
+ <span class="c1"># See https://stackoverflow.com/a/36291428/8283373</span>
+ <span class="k">return</span> <span class="n">session</span><span class="o">.</span><span class="n">get_credentials</span><span class="p">()</span><span class="o">.</span><span class="n">get_frozen_credentials</span><span class="p">()</span></div>
+
+<div class="viewcode-block" id="AwsHook.expand_role"><a class="viewcode-back" href="../../../../code.html#airflow.contrib.hooks.aws_hook.AwsHook.expand_role">[docs]</a> <span class="k">def</span> <span class="nf">expand_role</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">role</span><span class="p">):</span>
+ <span class="sd">"""</span>
+<span class="sd"> If the IAM role is a role name, get the Amazon Resource Name (ARN) for the role.</span>
+<span class="sd"> If IAM role is already an IAM role ARN, no change is made.</span>
+
+<span class="sd"> :param role: IAM role name or ARN</span>
+<span class="sd"> :return: IAM role ARN</span>
+<span class="sd"> """</span>
+ <span class="k">if</span> <span class="s1">'/'</span> <span class="ow">in</span> <span class="n">role</span><span class="p">:</span>
+ <span class="k">return</span> <span class="n">role</span>
+ <span class="k">else</span><span class="p">:</span>
+ <span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">get_client_type</span><span class="p">(</span><span class="s1">'iam'</span><span class="p">)</span><span class="o">.</span><span class="n">get_role</span><span class="p">(</span><span class="n">RoleName</span><span class="o">=</span><span class="n">role</span><span class="p">)[</span><span class="s1">'Role'</span><span class="p">][</span><span class="s1">'Arn& [...]
+</pre></div>
+
+ </div>
+
+ </div>
+ <footer>
+
+
+ <hr/>
+
+ <div role="contentinfo">
+ <p>
+
+ </p>
+ </div>
+ Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/rtfd/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
+
+</footer>
+
+ </div>
+ </div>
+
+ </section>
+
+ </div>
+
+
+
+
+
+
+
+ <script type="text/javascript" id="documentation_options" data-url_root="../../../../" src="../../../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../../../_static/doctools.js"></script>
+
+
+
+
+ <script type="text/javascript" src="../../../../_static/js/theme.js"></script>
+
+ <script type="text/javascript">
+ jQuery(function () {
+ SphinxRtdTheme.Navigation.enable(true);
+ });
+ </script>
+
+</body>
+</html>
\ No newline at end of file
diff --git a/docs-archive/1.10.1/_modules/airflow/contrib/hooks/aws_lambda_hook.html b/docs-archive/1.10.1/_modules/airflow/contrib/hooks/aws_lambda_hook.html
new file mode 100644
index 0000000..9737155
--- /dev/null
+++ b/docs-archive/1.10.1/_modules/airflow/contrib/hooks/aws_lambda_hook.html
@@ -0,0 +1,279 @@
+
+
+<!DOCTYPE html>
+<!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
+<!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
+<head>
+ <meta charset="utf-8">
+
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
+
+ <title>airflow.contrib.hooks.aws_lambda_hook — Airflow Documentation</title>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <link rel="stylesheet" href="../../../../_static/css/theme.css" type="text/css" />
+ <link rel="stylesheet" href="../../../../_static/pygments.css" type="text/css" />
+ <link rel="index" title="Index" href="../../../../genindex.html" />
+ <link rel="search" title="Search" href="../../../../search.html" />
+
+
+ <script src="../../../../_static/js/modernizr.min.js"></script>
+
+</head>
+
+<body class="wy-body-for-nav">
+
+
+ <div class="wy-grid-for-nav">
+
+
+ <nav data-toggle="wy-nav-shift" class="wy-nav-side">
+ <div class="wy-side-scroll">
+ <div class="wy-side-nav-search">
+
+
+
+ <a href="../../../../index.html" class="icon icon-home"> Airflow
+
+
+
+ </a>
+
+
+
+
+
+
+
+<div role="search">
+ <form id="rtd-search-form" class="wy-form" action="../../../../search.html" method="get">
+ <input type="text" name="q" placeholder="Search docs" />
+ <input type="hidden" name="check_keywords" value="yes" />
+ <input type="hidden" name="area" value="default" />
+ </form>
+</div>
+
+
+ </div>
+
+ <div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
+
+
+
+
+
+
+ <ul>
+<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.html">Installation</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../tutorial.html">Tutorial</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.html">Concepts</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../profiling.html">Data Profiling</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../cli.html">Command Line Interface</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../scheduler.html">Scheduling & Triggers</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.html">Security</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="../../../../api.html">Experimental Rest API</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="../../../../lineage.html">Lineage</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="../../../../code.html">API Reference</a></li>
+</ul>
+
+
+
+ </div>
+ </div>
+ </nav>
+
+ <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
+
+
+ <nav class="wy-nav-top" aria-label="top navigation">
+
+ <i data-toggle="wy-nav-top" class="fa fa-bars"></i>
+ <a href="../../../../index.html">Airflow</a>
+
+ </nav>
+
+
+ <div class="wy-nav-content">
+
+ <div class="rst-content">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+<div role="navigation" aria-label="breadcrumbs navigation">
+
+ <ul class="wy-breadcrumbs">
+
+ <li><a href="../../../../index.html">Docs</a> »</li>
+
+ <li><a href="../../../index.html">Module code</a> »</li>
+
+ <li>airflow.contrib.hooks.aws_lambda_hook</li>
+
+
+ <li class="wy-breadcrumbs-aside">
+
+ </li>
+
+ </ul>
+
+
+ <hr/>
+</div>
+ <div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
+ <div itemprop="articleBody">
+
+ <h1>Source code for airflow.contrib.hooks.aws_lambda_hook</h1><div class="highlight"><pre>
+<span></span><span class="c1"># -*- coding: utf-8 -*-</span>
+<span class="c1">#</span>
+<span class="c1"># Licensed to the Apache Software Foundation (ASF) under one</span>
+<span class="c1"># or more contributor license agreements. See the NOTICE file</span>
+<span class="c1"># distributed with this work for additional information</span>
+<span class="c1"># regarding copyright ownership. The ASF licenses this file</span>
+<span class="c1"># to you under the Apache License, Version 2.0 (the</span>
+<span class="c1"># "License"); you may not use this file except in compliance</span>
+<span class="c1"># with the License. You may obtain a copy of the License at</span>
+<span class="c1">#</span>
+<span class="c1"># http://www.apache.org/licenses/LICENSE-2.0</span>
+<span class="c1">#</span>
+<span class="c1"># Unless required by applicable law or agreed to in writing,</span>
+<span class="c1"># software distributed under the License is distributed on an</span>
+<span class="c1"># "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY</span>
+<span class="c1"># KIND, either express or implied. See the License for the</span>
+<span class="c1"># specific language governing permissions and limitations</span>
+<span class="c1"># under the License.</span>
+
+<span class="kn">from</span> <span class="nn">airflow.contrib.hooks.aws_hook</span> <span class="k">import</span> <span class="n">AwsHook</span>
+
+
+<div class="viewcode-block" id="AwsLambdaHook"><a class="viewcode-back" href="../../../../code.html#airflow.contrib.hooks.aws_lambda_hook.AwsLambdaHook">[docs]</a><span class="k">class</span> <span class="nc">AwsLambdaHook</span><span class="p">(</span><span class="n">AwsHook</span><span class="p">):</span>
+ <span class="sd">"""</span>
+<span class="sd"> Interact with AWS Lambda</span>
+
+<span class="sd"> :param function_name: AWS Lambda Function Name</span>
+<span class="sd"> :type function_name: str</span>
+<span class="sd"> :param region_name: AWS Region Name (example: us-west-2)</span>
+<span class="sd"> :type region_name: str</span>
+<span class="sd"> :param log_type: Tail Invocation Request</span>
+<span class="sd"> :type log_type: str</span>
+<span class="sd"> :param qualifier: AWS Lambda Function Version or Alias Name</span>
+<span class="sd"> :type qualifier: str</span>
+<span class="sd"> :param invocation_type: AWS Lambda Invocation Type (RequestResponse, Event etc)</span>
+<span class="sd"> :type invocation_type: str</span>
+<span class="sd"> """</span>
+
+ <span class="k">def</span> <span class="nf">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">function_name</span><span class="p">,</span> <span class="n">region_name</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span>
+ <span class="n">log_type</span><span class="o">=</span><span class="s1">'None'</span><span class="p">,</span> <span class="n">qualifier</span><span class="o">=</span><span class="s1">'$LATEST'</span><span class="p">,</span>
+ <span class="n">invocation_type</span><span class="o">=</span><span class="s1">'RequestResponse'</span><span class="p">,</span> <span class="o">*</span><span class="n">args</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">function_name</span> <span class="o">=</span> <span class="n">function_name</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">region_name</span> <span class="o">=</span> <span class="n">region_name</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">log_type</span> <span class="o">=</span> <span class="n">log_type</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">invocation_type</span> <span class="o">=</span> <span class="n">invocation_type</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">qualifier</span> <span class="o">=</span> <span class="n">qualifier</span>
+ <span class="nb">super</span><span class="p">(</span><span class="n">AwsLambdaHook</span><span class="p">,</span> <span class="bp">self</span><span class="p">)</span><span class="o">.</span><span class="fm">__init__</span><span class="p">(</span><span class="o">*</span><span class="n">args</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">)</span>
+
+ <span class="k">def</span> <span class="nf">get_conn</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">conn</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">get_client_type</span><span class="p">(</span><span class="s1">'lambda'</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">region_name</span><span class="p">)</span>
+ <span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">conn</span>
+
+<div class="viewcode-block" id="AwsLambdaHook.invoke_lambda"><a class="viewcode-back" href="../../../../code.html#airflow.contrib.hooks.aws_lambda_hook.AwsLambdaHook.invoke_lambda">[docs]</a> <span class="k">def</span> <span class="nf">invoke_lambda</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">payload</span><span class="p">):</span>
+ <span class="sd">"""</span>
+<span class="sd"> Invoke Lambda Function</span>
+<span class="sd"> """</span>
+
+ <span class="n">awslambda_conn</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">get_conn</span><span class="p">()</span>
+
+ <span class="n">response</span> <span class="o">=</span> <span class="n">awslambda_conn</span><span class="o">.</span><span class="n">invoke</span><span class="p">(</span>
+ <span class="n">FunctionName</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">function_name</span><span class="p">,</span>
+ <span class="n">InvocationType</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">invocation_type</span><span class="p">,</span>
+ <span class="n">LogType</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">log_type</span><span class="p">,</span>
+ <span class="n">Payload</span><span class="o">=</span><span class="n">payload</span><span class="p">,</span>
+ <span class="n">Qualifier</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">qualifier</span>
+ <span class="p">)</span>
+
+ <span class="k">return</span> <span class="n">response</span></div></div>
+</pre></div>
+
+ </div>
+
+ </div>
+ <footer>
+
+
+ <hr/>
+
+ <div role="contentinfo">
+ <p>
+
+ </p>
+ </div>
+ Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/rtfd/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
+
+</footer>
+
+ </div>
+ </div>
+
+ </section>
+
+ </div>
+
+
+
+
+
+
+
+ <script type="text/javascript" id="documentation_options" data-url_root="../../../../" src="../../../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../../../_static/doctools.js"></script>
+
+
+
+
+ <script type="text/javascript" src="../../../../_static/js/theme.js"></script>
+
+ <script type="text/javascript">
+ jQuery(function () {
+ SphinxRtdTheme.Navigation.enable(true);
+ });
+ </script>
+
+</body>
+</html>
\ No newline at end of file
diff --git a/docs-archive/1.10.1/_modules/airflow/contrib/hooks/azure_data_lake_hook.html b/docs-archive/1.10.1/_modules/airflow/contrib/hooks/azure_data_lake_hook.html
new file mode 100644
index 0000000..5708fd2
--- /dev/null
+++ b/docs-archive/1.10.1/_modules/airflow/contrib/hooks/azure_data_lake_hook.html
@@ -0,0 +1,352 @@
+
+
+<!DOCTYPE html>
+<!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
+<!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
+<head>
+ <meta charset="utf-8">
+
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
+
+ <title>airflow.contrib.hooks.azure_data_lake_hook — Airflow Documentation</title>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <link rel="stylesheet" href="../../../../_static/css/theme.css" type="text/css" />
+ <link rel="stylesheet" href="../../../../_static/pygments.css" type="text/css" />
+ <link rel="index" title="Index" href="../../../../genindex.html" />
+ <link rel="search" title="Search" href="../../../../search.html" />
+
+
+ <script src="../../../../_static/js/modernizr.min.js"></script>
+
+</head>
+
+<body class="wy-body-for-nav">
+
+
+ <div class="wy-grid-for-nav">
+
+
+ <nav data-toggle="wy-nav-shift" class="wy-nav-side">
+ <div class="wy-side-scroll">
+ <div class="wy-side-nav-search">
+
+
+
+ <a href="../../../../index.html" class="icon icon-home"> Airflow
+
+
+
+ </a>
+
+
+
+
+
+
+
+<div role="search">
+ <form id="rtd-search-form" class="wy-form" action="../../../../search.html" method="get">
+ <input type="text" name="q" placeholder="Search docs" />
+ <input type="hidden" name="check_keywords" value="yes" />
+ <input type="hidden" name="area" value="default" />
+ </form>
+</div>
+
+
+ </div>
+
+ <div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
+
+
+
+
+
+
+ <ul>
+<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.html">Installation</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../tutorial.html">Tutorial</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.html">Concepts</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../profiling.html">Data Profiling</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../cli.html">Command Line Interface</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../scheduler.html">Scheduling & Triggers</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.html">Security</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="../../../../api.html">Experimental Rest API</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="../../../../lineage.html">Lineage</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="../../../../code.html">API Reference</a></li>
+</ul>
+
+
+
+ </div>
+ </div>
+ </nav>
+
+ <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
+
+
+ <nav class="wy-nav-top" aria-label="top navigation">
+
+ <i data-toggle="wy-nav-top" class="fa fa-bars"></i>
+ <a href="../../../../index.html">Airflow</a>
+
+ </nav>
+
+
+ <div class="wy-nav-content">
+
+ <div class="rst-content">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+<div role="navigation" aria-label="breadcrumbs navigation">
+
+ <ul class="wy-breadcrumbs">
+
+ <li><a href="../../../../index.html">Docs</a> »</li>
+
+ <li><a href="../../../index.html">Module code</a> »</li>
+
+ <li>airflow.contrib.hooks.azure_data_lake_hook</li>
+
+
+ <li class="wy-breadcrumbs-aside">
+
+ </li>
+
+ </ul>
+
+
+ <hr/>
+</div>
+ <div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
+ <div itemprop="articleBody">
+
+ <h1>Source code for airflow.contrib.hooks.azure_data_lake_hook</h1><div class="highlight"><pre>
+<span></span><span class="c1"># -*- coding: utf-8 -*-</span>
+<span class="c1">#</span>
+<span class="c1"># Licensed to the Apache Software Foundation (ASF) under one</span>
+<span class="c1"># or more contributor license agreements. See the NOTICE file</span>
+<span class="c1"># distributed with this work for additional information</span>
+<span class="c1"># regarding copyright ownership. The ASF licenses this file</span>
+<span class="c1"># to you under the Apache License, Version 2.0 (the</span>
+<span class="c1"># "License"); you may not use this file except in compliance</span>
+<span class="c1"># with the License. You may obtain a copy of the License at</span>
+<span class="c1">#</span>
+<span class="c1"># http://www.apache.org/licenses/LICENSE-2.0</span>
+<span class="c1">#</span>
+<span class="c1"># Unless required by applicable law or agreed to in writing,</span>
+<span class="c1"># software distributed under the License is distributed on an</span>
+<span class="c1"># "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY</span>
+<span class="c1"># KIND, either express or implied. See the License for the</span>
+<span class="c1"># specific language governing permissions and limitations</span>
+<span class="c1"># under the License.</span>
+<span class="c1">#</span>
+
+<span class="kn">from</span> <span class="nn">airflow.hooks.base_hook</span> <span class="k">import</span> <span class="n">BaseHook</span>
+<span class="kn">from</span> <span class="nn">azure.datalake.store</span> <span class="k">import</span> <span class="n">core</span><span class="p">,</span> <span class="n">lib</span><span class="p">,</span> <span class="n">multithread</span>
+
+
+<div class="viewcode-block" id="AzureDataLakeHook"><a class="viewcode-back" href="../../../../integration.html#airflow.contrib.hooks.azure_data_lake_hook.AzureDataLakeHook">[docs]</a><span class="k">class</span> <span class="nc">AzureDataLakeHook</span><span class="p">(</span><span class="n">BaseHook</span><span class="p">):</span>
+ <span class="sd">"""</span>
+<span class="sd"> Interacts with Azure Data Lake.</span>
+
+<span class="sd"> Client ID and client secret should be in user and password parameters.</span>
+<span class="sd"> Tenant and account name should be extra field as</span>
+<span class="sd"> {"tenant": "<TENANT>", "account_name": "ACCOUNT_NAME"}.</span>
+
+<span class="sd"> :param azure_data_lake_conn_id: Reference to the Azure Data Lake connection.</span>
+<span class="sd"> :type azure_data_lake_conn_id: str</span>
+<span class="sd"> """</span>
+
+ <span class="k">def</span> <span class="nf">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">azure_data_lake_conn_id</span><span class="o">=</span><span class="s1">'azure_data_lake_default'</span><span class="p">):</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">conn_id</span> <span class="o">=</span> <span class="n">azure_data_lake_conn_id</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">connection</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">get_conn</span><span class="p">()</span>
+
+<div class="viewcode-block" id="AzureDataLakeHook.get_conn"><a class="viewcode-back" href="../../../../integration.html#airflow.contrib.hooks.azure_data_lake_hook.AzureDataLakeHook.get_conn">[docs]</a> <span class="k">def</span> <span class="nf">get_conn</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
+ <span class="sd">"""Return a AzureDLFileSystem object."""</span>
+ <span class="n">conn</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">get_connection</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">conn_id</span><span class="p">)</span>
+ <span class="n">service_options</span> <span class="o">=</span> <span class="n">conn</span><span class="o">.</span><span class="n">extra_dejson</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">account_name</span> <span class="o">=</span> <span class="n">service_options</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s1">'account_name'</span><span class="p">)</span>
+
+ <span class="n">adlCreds</span> <span class="o">=</span> <span class="n">lib</span><span class="o">.</span><span class="n">auth</span><span class="p">(</span><span class="n">tenant_id</span><span class="o">=</span><span class="n">service_options</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s1">'tenant'</span><span class="p">),</span>
+ <span class="n">client_secret</span><span class="o">=</span><span class="n">conn</span><span class="o">.</span><span class="n">password</span><span class="p">,</span>
+ <span class="n">client_id</span><span class="o">=</span><span class="n">conn</span><span class="o">.</span><span class="n">login</span><span class="p">)</span>
+ <span class="n">adlsFileSystemClient</span> <span class="o">=</span> <span class="n">core</span><span class="o">.</span><span class="n">AzureDLFileSystem</span><span class="p">(</span><span class="n">adlCreds</span><span class="p">,</span>
+ <span class="n">store_name</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">account_name</span><span class="p">)</span>
+ <span class="n">adlsFileSystemClient</span><span class="o">.</span><span class="n">connect</span><span class="p">()</span>
+ <span class="k">return</span> <span class="n">adlsFileSystemClient</span></div>
+
+<div class="viewcode-block" id="AzureDataLakeHook.check_for_file"><a class="viewcode-back" href="../../../../integration.html#airflow.contrib.hooks.azure_data_lake_hook.AzureDataLakeHook.check_for_file">[docs]</a> <span class="k">def</span> <span class="nf">check_for_file</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">file_path</span><span class="p">):</span>
+ <span class="sd">"""</span>
+<span class="sd"> Check if a file exists on Azure Data Lake.</span>
+
+<span class="sd"> :param file_path: Path and name of the file.</span>
+<span class="sd"> :type file_path: str</span>
+<span class="sd"> :return: True if the file exists, False otherwise.</span>
+<span class="sd"> :rtype bool</span>
+<span class="sd"> """</span>
+ <span class="k">try</span><span class="p">:</span>
+ <span class="n">files</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">connection</span><span class="o">.</span><span class="n">glob</span><span class="p">(</span><span class="n">file_path</span><span class="p">,</span> <span class="n">details</span><span class="o">=</span><span class="kc">False</span><span class="p">,</span> <span class="n">invalidate_cache</span><span class="o">=</span><span class="kc">True</span><span clas [...]
+ <span class="k">return</span> <span class="nb">len</span><span class="p">(</span><span class="n">files</span><span class="p">)</span> <span class="o">==</span> <span class="mi">1</span>
+ <span class="k">except</span> <span class="ne">FileNotFoundError</span><span class="p">:</span>
+ <span class="k">return</span> <span class="kc">False</span></div>
+
+<div class="viewcode-block" id="AzureDataLakeHook.upload_file"><a class="viewcode-back" href="../../../../integration.html#airflow.contrib.hooks.azure_data_lake_hook.AzureDataLakeHook.upload_file">[docs]</a> <span class="k">def</span> <span class="nf">upload_file</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">local_path</span><span class="p">,</span> <span class="n">remote_path</span><span class="p">,</span> <span class="n">nthreads< [...]
+ <span class="n">buffersize</span><span class="o">=</span><span class="mi">4194304</span><span class="p">,</span> <span class="n">blocksize</span><span class="o">=</span><span class="mi">4194304</span><span class="p">):</span>
+ <span class="sd">"""</span>
+<span class="sd"> Upload a file to Azure Data Lake.</span>
+
+<span class="sd"> :param local_path: local path. Can be single file, directory (in which case,</span>
+<span class="sd"> upload recursively) or glob pattern. Recursive glob patterns using `**`</span>
+<span class="sd"> are not supported.</span>
+<span class="sd"> :type local_path: str</span>
+<span class="sd"> :param remote_path: Remote path to upload to; if multiple files, this is the</span>
+<span class="sd"> dircetory root to write within.</span>
+<span class="sd"> :type remote_path: str</span>
+<span class="sd"> :param nthreads: Number of threads to use. If None, uses the number of cores.</span>
+<span class="sd"> :type nthreads: int</span>
+<span class="sd"> :param overwrite: Whether to forcibly overwrite existing files/directories.</span>
+<span class="sd"> If False and remote path is a directory, will quit regardless if any files</span>
+<span class="sd"> would be overwritten or not. If True, only matching filenames are actually</span>
+<span class="sd"> overwritten.</span>
+<span class="sd"> :type overwrite: bool</span>
+<span class="sd"> :param buffersize: int [2**22]</span>
+<span class="sd"> Number of bytes for internal buffer. This block cannot be bigger than</span>
+<span class="sd"> a chunk and cannot be smaller than a block.</span>
+<span class="sd"> :type buffersize: int</span>
+<span class="sd"> :param blocksize: int [2**22]</span>
+<span class="sd"> Number of bytes for a block. Within each chunk, we write a smaller</span>
+<span class="sd"> block for each API call. This block cannot be bigger than a chunk.</span>
+<span class="sd"> :type blocksize: int</span>
+<span class="sd"> """</span>
+ <span class="n">multithread</span><span class="o">.</span><span class="n">ADLUploader</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">connection</span><span class="p">,</span>
+ <span class="n">lpath</span><span class="o">=</span><span class="n">local_path</span><span class="p">,</span>
+ <span class="n">rpath</span><span class="o">=</span><span class="n">remote_path</span><span class="p">,</span>
+ <span class="n">nthreads</span><span class="o">=</span><span class="n">nthreads</span><span class="p">,</span>
+ <span class="n">overwrite</span><span class="o">=</span><span class="n">overwrite</span><span class="p">,</span>
+ <span class="n">buffersize</span><span class="o">=</span><span class="n">buffersize</span><span class="p">,</span>
+ <span class="n">blocksize</span><span class="o">=</span><span class="n">blocksize</span><span class="p">)</span></div>
+
+<div class="viewcode-block" id="AzureDataLakeHook.download_file"><a class="viewcode-back" href="../../../../integration.html#airflow.contrib.hooks.azure_data_lake_hook.AzureDataLakeHook.download_file">[docs]</a> <span class="k">def</span> <span class="nf">download_file</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">local_path</span><span class="p">,</span> <span class="n">remote_path</span><span class="p">,</span> <span class="n">nth [...]
+ <span class="n">buffersize</span><span class="o">=</span><span class="mi">4194304</span><span class="p">,</span> <span class="n">blocksize</span><span class="o">=</span><span class="mi">4194304</span><span class="p">):</span>
+ <span class="sd">"""</span>
+<span class="sd"> Download a file from Azure Blob Storage.</span>
+
+<span class="sd"> :param local_path: local path. If downloading a single file, will write to this</span>
+<span class="sd"> specific file, unless it is an existing directory, in which case a file is</span>
+<span class="sd"> created within it. If downloading multiple files, this is the root</span>
+<span class="sd"> directory to write within. Will create directories as required.</span>
+<span class="sd"> :type local_path: str</span>
+<span class="sd"> :param remote_path: remote path/globstring to use to find remote files.</span>
+<span class="sd"> Recursive glob patterns using `**` are not supported.</span>
+<span class="sd"> :type remote_path: str</span>
+<span class="sd"> :param nthreads: Number of threads to use. If None, uses the number of cores.</span>
+<span class="sd"> :type nthreads: int</span>
+<span class="sd"> :param overwrite: Whether to forcibly overwrite existing files/directories.</span>
+<span class="sd"> If False and remote path is a directory, will quit regardless if any files</span>
+<span class="sd"> would be overwritten or not. If True, only matching filenames are actually</span>
+<span class="sd"> overwritten.</span>
+<span class="sd"> :type overwrite: bool</span>
+<span class="sd"> :param buffersize: int [2**22]</span>
+<span class="sd"> Number of bytes for internal buffer. This block cannot be bigger than</span>
+<span class="sd"> a chunk and cannot be smaller than a block.</span>
+<span class="sd"> :type buffersize: int</span>
+<span class="sd"> :param blocksize: int [2**22]</span>
+<span class="sd"> Number of bytes for a block. Within each chunk, we write a smaller</span>
+<span class="sd"> block for each API call. This block cannot be bigger than a chunk.</span>
+<span class="sd"> :type blocksize: int</span>
+<span class="sd"> """</span>
+ <span class="n">multithread</span><span class="o">.</span><span class="n">ADLDownloader</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">connection</span><span class="p">,</span>
+ <span class="n">lpath</span><span class="o">=</span><span class="n">local_path</span><span class="p">,</span>
+ <span class="n">rpath</span><span class="o">=</span><span class="n">remote_path</span><span class="p">,</span>
+ <span class="n">nthreads</span><span class="o">=</span><span class="n">nthreads</span><span class="p">,</span>
+ <span class="n">overwrite</span><span class="o">=</span><span class="n">overwrite</span><span class="p">,</span>
+ <span class="n">buffersize</span><span class="o">=</span><span class="n">buffersize</span><span class="p">,</span>
+ <span class="n">blocksize</span><span class="o">=</span><span class="n">blocksize</span><span class="p">)</span></div></div>
+</pre></div>
+
+ </div>
+
+ </div>
+ <footer>
+
+
+ <hr/>
+
+ <div role="contentinfo">
+ <p>
+
+ </p>
+ </div>
+ Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/rtfd/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
+
+</footer>
+
+ </div>
+ </div>
+
+ </section>
+
+ </div>
+
+
+
+
+
+
+
+ <script type="text/javascript" id="documentation_options" data-url_root="../../../../" src="../../../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../../../_static/doctools.js"></script>
+
+
+
+
+ <script type="text/javascript" src="../../../../_static/js/theme.js"></script>
+
+ <script type="text/javascript">
+ jQuery(function () {
+ SphinxRtdTheme.Navigation.enable(true);
+ });
+ </script>
+
+</body>
+</html>
\ No newline at end of file
diff --git a/docs-archive/1.10.1/_modules/airflow/contrib/hooks/azure_fileshare_hook.html b/docs-archive/1.10.1/_modules/airflow/contrib/hooks/azure_fileshare_hook.html
new file mode 100644
index 0000000..e2b536a
--- /dev/null
+++ b/docs-archive/1.10.1/_modules/airflow/contrib/hooks/azure_fileshare_hook.html
@@ -0,0 +1,423 @@
+
+
+<!DOCTYPE html>
+<!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
+<!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
+<head>
+ <meta charset="utf-8">
+
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
+
+ <title>airflow.contrib.hooks.azure_fileshare_hook — Airflow Documentation</title>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <link rel="stylesheet" href="../../../../_static/css/theme.css" type="text/css" />
+ <link rel="stylesheet" href="../../../../_static/pygments.css" type="text/css" />
+ <link rel="index" title="Index" href="../../../../genindex.html" />
+ <link rel="search" title="Search" href="../../../../search.html" />
+
+
+ <script src="../../../../_static/js/modernizr.min.js"></script>
+
+</head>
+
+<body class="wy-body-for-nav">
+
+
+ <div class="wy-grid-for-nav">
+
+
+ <nav data-toggle="wy-nav-shift" class="wy-nav-side">
+ <div class="wy-side-scroll">
+ <div class="wy-side-nav-search">
+
+
+
+ <a href="../../../../index.html" class="icon icon-home"> Airflow
+
+
+
+ </a>
+
+
+
+
+
+
+
+<div role="search">
+ <form id="rtd-search-form" class="wy-form" action="../../../../search.html" method="get">
+ <input type="text" name="q" placeholder="Search docs" />
+ <input type="hidden" name="check_keywords" value="yes" />
+ <input type="hidden" name="area" value="default" />
+ </form>
+</div>
+
+
+ </div>
+
+ <div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
+
+
+
+
+
+
+ <ul>
+<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.html">Installation</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../tutorial.html">Tutorial</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.html">Concepts</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../profiling.html">Data Profiling</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../cli.html">Command Line Interface</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../scheduler.html">Scheduling & Triggers</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.html">Security</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="../../../../api.html">Experimental Rest API</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="../../../../lineage.html">Lineage</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="../../../../code.html">API Reference</a></li>
+</ul>
+
+
+
+ </div>
+ </div>
+ </nav>
+
+ <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
+
+
+ <nav class="wy-nav-top" aria-label="top navigation">
+
+ <i data-toggle="wy-nav-top" class="fa fa-bars"></i>
+ <a href="../../../../index.html">Airflow</a>
+
+ </nav>
+
+
+ <div class="wy-nav-content">
+
+ <div class="rst-content">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+<div role="navigation" aria-label="breadcrumbs navigation">
+
+ <ul class="wy-breadcrumbs">
+
+ <li><a href="../../../../index.html">Docs</a> »</li>
+
+ <li><a href="../../../index.html">Module code</a> »</li>
+
+ <li>airflow.contrib.hooks.azure_fileshare_hook</li>
+
+
+ <li class="wy-breadcrumbs-aside">
+
+ </li>
+
+ </ul>
+
+
+ <hr/>
+</div>
+ <div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
+ <div itemprop="articleBody">
+
+ <h1>Source code for airflow.contrib.hooks.azure_fileshare_hook</h1><div class="highlight"><pre>
+<span></span><span class="c1"># -*- coding: utf-8 -*-</span>
+<span class="c1">#</span>
+<span class="c1"># Licensed to the Apache Software Foundation (ASF) under one</span>
+<span class="c1"># or more contributor license agreements. See the NOTICE file</span>
+<span class="c1"># distributed with this work for additional information</span>
+<span class="c1"># regarding copyright ownership. The ASF licenses this file</span>
+<span class="c1"># to you under the Apache License, Version 2.0 (the</span>
+<span class="c1"># "License"); you may not use this file except in compliance</span>
+<span class="c1"># with the License. You may obtain a copy of the License at</span>
+<span class="c1">#</span>
+<span class="c1"># http://www.apache.org/licenses/LICENSE-2.0</span>
+<span class="c1">#</span>
+<span class="c1"># Unless required by applicable law or agreed to in writing,</span>
+<span class="c1"># software distributed under the License is distributed on an</span>
+<span class="c1"># "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY</span>
+<span class="c1"># KIND, either express or implied. See the License for the</span>
+<span class="c1"># specific language governing permissions and limitations</span>
+<span class="c1"># under the License.</span>
+<span class="c1">#</span>
+
+<span class="kn">from</span> <span class="nn">airflow.hooks.base_hook</span> <span class="k">import</span> <span class="n">BaseHook</span>
+<span class="kn">from</span> <span class="nn">azure.storage.file</span> <span class="k">import</span> <span class="n">FileService</span>
+
+
+<div class="viewcode-block" id="AzureFileShareHook"><a class="viewcode-back" href="../../../../integration.html#airflow.contrib.hooks.azure_fileshare_hook.AzureFileShareHook">[docs]</a><span class="k">class</span> <span class="nc">AzureFileShareHook</span><span class="p">(</span><span class="n">BaseHook</span><span class="p">):</span>
+ <span class="sd">"""</span>
+<span class="sd"> Interacts with Azure FileShare Storage.</span>
+
+<span class="sd"> Additional options passed in the 'extra' field of the connection will be</span>
+<span class="sd"> passed to the `FileService()` constructor.</span>
+
+<span class="sd"> :param wasb_conn_id: Reference to the wasb connection.</span>
+<span class="sd"> :type wasb_conn_id: str</span>
+<span class="sd"> """</span>
+
+ <span class="k">def</span> <span class="nf">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">wasb_conn_id</span><span class="o">=</span><span class="s1">'wasb_default'</span><span class="p">):</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">conn_id</span> <span class="o">=</span> <span class="n">wasb_conn_id</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">connection</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">get_conn</span><span class="p">()</span>
+
+<div class="viewcode-block" id="AzureFileShareHook.get_conn"><a class="viewcode-back" href="../../../../integration.html#airflow.contrib.hooks.azure_fileshare_hook.AzureFileShareHook.get_conn">[docs]</a> <span class="k">def</span> <span class="nf">get_conn</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
+ <span class="sd">"""Return the FileService object."""</span>
+ <span class="n">conn</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">get_connection</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">conn_id</span><span class="p">)</span>
+ <span class="n">service_options</span> <span class="o">=</span> <span class="n">conn</span><span class="o">.</span><span class="n">extra_dejson</span>
+ <span class="k">return</span> <span class="n">FileService</span><span class="p">(</span><span class="n">account_name</span><span class="o">=</span><span class="n">conn</span><span class="o">.</span><span class="n">login</span><span class="p">,</span>
+ <span class="n">account_key</span><span class="o">=</span><span class="n">conn</span><span class="o">.</span><span class="n">password</span><span class="p">,</span> <span class="o">**</span><span class="n">service_options</span><span class="p">)</span></div>
+
+<div class="viewcode-block" id="AzureFileShareHook.check_for_directory"><a class="viewcode-back" href="../../../../integration.html#airflow.contrib.hooks.azure_fileshare_hook.AzureFileShareHook.check_for_directory">[docs]</a> <span class="k">def</span> <span class="nf">check_for_directory</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">share_name</span><span class="p">,</span> <span class="n">directory_name</span><span class="p">,</sp [...]
+ <span class="sd">"""</span>
+<span class="sd"> Check if a directory exists on Azure File Share.</span>
+
+<span class="sd"> :param share_name: Name of the share.</span>
+<span class="sd"> :type share_name: str</span>
+<span class="sd"> :param directory_name: Name of the directory.</span>
+<span class="sd"> :type directory_name: str</span>
+<span class="sd"> :param kwargs: Optional keyword arguments that</span>
+<span class="sd"> `FileService.exists()` takes.</span>
+<span class="sd"> :type kwargs: object</span>
+<span class="sd"> :return: True if the file exists, False otherwise.</span>
+<span class="sd"> :rtype bool</span>
+<span class="sd"> """</span>
+ <span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">connection</span><span class="o">.</span><span class="n">exists</span><span class="p">(</span><span class="n">share_name</span><span class="p">,</span> <span class="n">directory_name</span><span class="p">,</span>
+ <span class="o">**</span><span class="n">kwargs</span><span class="p">)</span></div>
+
+<div class="viewcode-block" id="AzureFileShareHook.check_for_file"><a class="viewcode-back" href="../../../../integration.html#airflow.contrib.hooks.azure_fileshare_hook.AzureFileShareHook.check_for_file">[docs]</a> <span class="k">def</span> <span class="nf">check_for_file</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">share_name</span><span class="p">,</span> <span class="n">directory_name</span><span class="p">,</span> <span class [...]
+ <span class="sd">"""</span>
+<span class="sd"> Check if a file exists on Azure File Share.</span>
+
+<span class="sd"> :param share_name: Name of the share.</span>
+<span class="sd"> :type share_name: str</span>
+<span class="sd"> :param directory_name: Name of the directory.</span>
+<span class="sd"> :type directory_name: str</span>
+<span class="sd"> :param file_name: Name of the file.</span>
+<span class="sd"> :type file_name: str</span>
+<span class="sd"> :param kwargs: Optional keyword arguments that</span>
+<span class="sd"> `FileService.exists()` takes.</span>
+<span class="sd"> :type kwargs: object</span>
+<span class="sd"> :return: True if the file exists, False otherwise.</span>
+<span class="sd"> :rtype bool</span>
+<span class="sd"> """</span>
+ <span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">connection</span><span class="o">.</span><span class="n">exists</span><span class="p">(</span><span class="n">share_name</span><span class="p">,</span> <span class="n">directory_name</span><span class="p">,</span>
+ <span class="n">file_name</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">)</span></div>
+
+<div class="viewcode-block" id="AzureFileShareHook.list_directories_and_files"><a class="viewcode-back" href="../../../../integration.html#airflow.contrib.hooks.azure_fileshare_hook.AzureFileShareHook.list_directories_and_files">[docs]</a> <span class="k">def</span> <span class="nf">list_directories_and_files</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">share_name</span><span class="p">,</span> <span class="n">directory_name</span> [...]
+ <span class="sd">"""</span>
+<span class="sd"> Return the list of directories and files stored on a Azure File Share.</span>
+
+<span class="sd"> :param share_name: Name of the share.</span>
+<span class="sd"> :type share_name: str</span>
+<span class="sd"> :param directory_name: Name of the directory.</span>
+<span class="sd"> :type directory_name: str</span>
+<span class="sd"> :param kwargs: Optional keyword arguments that</span>
+<span class="sd"> `FileService.list_directories_and_files()` takes.</span>
+<span class="sd"> :type kwargs: object</span>
+<span class="sd"> :return: A list of files and directories</span>
+<span class="sd"> :rtype list</span>
+<span class="sd"> """</span>
+ <span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">connection</span><span class="o">.</span><span class="n">list_directories_and_files</span><span class="p">(</span><span class="n">share_name</span><span class="p">,</span>
+ <span class="n">directory_name</span><span class="p">,</span>
+ <span class="o">**</span><span class="n">kwargs</span><span class="p">)</span></div>
+
+<div class="viewcode-block" id="AzureFileShareHook.create_directory"><a class="viewcode-back" href="../../../../integration.html#airflow.contrib.hooks.azure_fileshare_hook.AzureFileShareHook.create_directory">[docs]</a> <span class="k">def</span> <span class="nf">create_directory</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">share_name</span><span class="p">,</span> <span class="n">directory_name</span><span class="p">,</span> <span [...]
+ <span class="sd">"""</span>
+<span class="sd"> Create a new direcotry on a Azure File Share.</span>
+
+<span class="sd"> :param share_name: Name of the share.</span>
+<span class="sd"> :type share_name: str</span>
+<span class="sd"> :param directory_name: Name of the directory.</span>
+<span class="sd"> :type directory_name: str</span>
+<span class="sd"> :param kwargs: Optional keyword arguments that</span>
+<span class="sd"> `FileService.create_directory()` takes.</span>
+<span class="sd"> :type kwargs: object</span>
+<span class="sd"> :return: A list of files and directories</span>
+<span class="sd"> :rtype list</span>
+<span class="sd"> """</span>
+ <span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">connection</span><span class="o">.</span><span class="n">create_directory</span><span class="p">(</span><span class="n">share_name</span><span class="p">,</span> <span class="n">directory_name</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">)</span></div>
+
+<div class="viewcode-block" id="AzureFileShareHook.get_file"><a class="viewcode-back" href="../../../../integration.html#airflow.contrib.hooks.azure_fileshare_hook.AzureFileShareHook.get_file">[docs]</a> <span class="k">def</span> <span class="nf">get_file</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">file_path</span><span class="p">,</span> <span class="n">share_name</span><span class="p">,</span> <span class="n">directory_name</sp [...]
+ <span class="sd">"""</span>
+<span class="sd"> Download a file from Azure File Share.</span>
+
+<span class="sd"> :param file_path: Where to store the file.</span>
+<span class="sd"> :type file_path: str</span>
+<span class="sd"> :param share_name: Name of the share.</span>
+<span class="sd"> :type share_name: str</span>
+<span class="sd"> :param directory_name: Name of the directory.</span>
+<span class="sd"> :type directory_name: str</span>
+<span class="sd"> :param file_name: Name of the file.</span>
+<span class="sd"> :type file_name: str</span>
+<span class="sd"> :param kwargs: Optional keyword arguments that</span>
+<span class="sd"> `FileService.get_file_to_path()` takes.</span>
+<span class="sd"> :type kwargs: object</span>
+<span class="sd"> """</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">connection</span><span class="o">.</span><span class="n">get_file_to_path</span><span class="p">(</span><span class="n">share_name</span><span class="p">,</span> <span class="n">directory_name</span><span class="p">,</span>
+ <span class="n">file_name</span><span class="p">,</span> <span class="n">file_path</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">)</span></div>
+
+<div class="viewcode-block" id="AzureFileShareHook.get_file_to_stream"><a class="viewcode-back" href="../../../../integration.html#airflow.contrib.hooks.azure_fileshare_hook.AzureFileShareHook.get_file_to_stream">[docs]</a> <span class="k">def</span> <span class="nf">get_file_to_stream</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">stream</span><span class="p">,</span> <span class="n">share_name</span><span class="p">,</span> <span c [...]
+ <span class="sd">"""</span>
+<span class="sd"> Download a file from Azure File Share.</span>
+
+<span class="sd"> :param stream: A filehandle to store the file to.</span>
+<span class="sd"> :type stream: file-like object</span>
+<span class="sd"> :param share_name: Name of the share.</span>
+<span class="sd"> :type share_name: str</span>
+<span class="sd"> :param directory_name: Name of the directory.</span>
+<span class="sd"> :type directory_name: str</span>
+<span class="sd"> :param file_name: Name of the file.</span>
+<span class="sd"> :type file_name: str</span>
+<span class="sd"> :param kwargs: Optional keyword arguments that</span>
+<span class="sd"> `FileService.get_file_to_stream()` takes.</span>
+<span class="sd"> :type kwargs: object</span>
+<span class="sd"> """</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">connection</span><span class="o">.</span><span class="n">get_file_to_stream</span><span class="p">(</span><span class="n">share_name</span><span class="p">,</span> <span class="n">directory_name</span><span class="p">,</span>
+ <span class="n">file_name</span><span class="p">,</span> <span class="n">stream</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">)</span></div>
+
+<div class="viewcode-block" id="AzureFileShareHook.load_file"><a class="viewcode-back" href="../../../../integration.html#airflow.contrib.hooks.azure_fileshare_hook.AzureFileShareHook.load_file">[docs]</a> <span class="k">def</span> <span class="nf">load_file</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">file_path</span><span class="p">,</span> <span class="n">share_name</span><span class="p">,</span> <span class="n">directory_name< [...]
+ <span class="sd">"""</span>
+<span class="sd"> Upload a file to Azure File Share.</span>
+
+<span class="sd"> :param file_path: Path to the file to load.</span>
+<span class="sd"> :type file_path: str</span>
+<span class="sd"> :param share_name: Name of the share.</span>
+<span class="sd"> :type share_name: str</span>
+<span class="sd"> :param directory_name: Name of the directory.</span>
+<span class="sd"> :type directory_name: str</span>
+<span class="sd"> :param file_name: Name of the file.</span>
+<span class="sd"> :type file_name: str</span>
+<span class="sd"> :param kwargs: Optional keyword arguments that</span>
+<span class="sd"> `FileService.create_file_from_path()` takes.</span>
+<span class="sd"> :type kwargs: object</span>
+<span class="sd"> """</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">connection</span><span class="o">.</span><span class="n">create_file_from_path</span><span class="p">(</span><span class="n">share_name</span><span class="p">,</span> <span class="n">directory_name</span><span class="p">,</span>
+ <span class="n">file_name</span><span class="p">,</span> <span class="n">file_path</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">)</span></div>
+
+<div class="viewcode-block" id="AzureFileShareHook.load_string"><a class="viewcode-back" href="../../../../integration.html#airflow.contrib.hooks.azure_fileshare_hook.AzureFileShareHook.load_string">[docs]</a> <span class="k">def</span> <span class="nf">load_string</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">string_data</span><span class="p">,</span> <span class="n">share_name</span><span class="p">,</span> <span class="n">directo [...]
+ <span class="sd">"""</span>
+<span class="sd"> Upload a string to Azure File Share.</span>
+
+<span class="sd"> :param string_data: String to load.</span>
+<span class="sd"> :type string_data: str</span>
+<span class="sd"> :param share_name: Name of the share.</span>
+<span class="sd"> :type share_name: str</span>
+<span class="sd"> :param directory_name: Name of the directory.</span>
+<span class="sd"> :type directory_name: str</span>
+<span class="sd"> :param file_name: Name of the file.</span>
+<span class="sd"> :type file_name: str</span>
+<span class="sd"> :param kwargs: Optional keyword arguments that</span>
+<span class="sd"> `FileService.create_file_from_text()` takes.</span>
+<span class="sd"> :type kwargs: object</span>
+<span class="sd"> """</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">connection</span><span class="o">.</span><span class="n">create_file_from_text</span><span class="p">(</span><span class="n">share_name</span><span class="p">,</span> <span class="n">directory_name</span><span class="p">,</span>
+ <span class="n">file_name</span><span class="p">,</span> <span class="n">string_data</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">)</span></div>
+
+<div class="viewcode-block" id="AzureFileShareHook.load_stream"><a class="viewcode-back" href="../../../../integration.html#airflow.contrib.hooks.azure_fileshare_hook.AzureFileShareHook.load_stream">[docs]</a> <span class="k">def</span> <span class="nf">load_stream</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">stream</span><span class="p">,</span> <span class="n">share_name</span><span class="p">,</span> <span class="n">directory_na [...]
+ <span class="sd">"""</span>
+<span class="sd"> Upload a stream to Azure File Share.</span>
+
+<span class="sd"> :param stream: Opened file/stream to upload as the file content.</span>
+<span class="sd"> :type stream: file-like</span>
+<span class="sd"> :param share_name: Name of the share.</span>
+<span class="sd"> :type share_name: str</span>
+<span class="sd"> :param directory_name: Name of the directory.</span>
+<span class="sd"> :type directory_name: str</span>
+<span class="sd"> :param file_name: Name of the file.</span>
+<span class="sd"> :type file_name: str</span>
+<span class="sd"> :param count: Size of the stream in bytes</span>
+<span class="sd"> :type count: int</span>
+<span class="sd"> :param kwargs: Optional keyword arguments that</span>
+<span class="sd"> `FileService.create_file_from_stream()` takes.</span>
+<span class="sd"> :type kwargs: object</span>
+<span class="sd"> """</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">connection</span><span class="o">.</span><span class="n">create_file_from_stream</span><span class="p">(</span><span class="n">share_name</span><span class="p">,</span> <span class="n">directory_name</span><span class="p">,</span>
+ <span class="n">file_name</span><span class="p">,</span> <span class="n">stream</span><span class="p">,</span> <span class="n">count</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">)</span></div></div>
+</pre></div>
+
+ </div>
+
+ </div>
+ <footer>
+
+
+ <hr/>
+
+ <div role="contentinfo">
+ <p>
+
+ </p>
+ </div>
+ Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/rtfd/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
+
+</footer>
+
+ </div>
+ </div>
+
+ </section>
+
+ </div>
+
+
+
+
+
+
+
+ <script type="text/javascript" id="documentation_options" data-url_root="../../../../" src="../../../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../../../_static/doctools.js"></script>
+
+
+
+
+ <script type="text/javascript" src="../../../../_static/js/theme.js"></script>
+
+ <script type="text/javascript">
+ jQuery(function () {
+ SphinxRtdTheme.Navigation.enable(true);
+ });
+ </script>
+
+</body>
+</html>
\ No newline at end of file
diff --git a/docs-archive/1.10.1/_modules/airflow/contrib/hooks/bigquery_hook.html b/docs-archive/1.10.1/_modules/airflow/contrib/hooks/bigquery_hook.html
new file mode 100644
index 0000000..4416c41
--- /dev/null
+++ b/docs-archive/1.10.1/_modules/airflow/contrib/hooks/bigquery_hook.html
@@ -0,0 +1,1801 @@
+
+
+<!DOCTYPE html>
+<!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
+<!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
+<head>
+ <meta charset="utf-8">
+
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
+
+ <title>airflow.contrib.hooks.bigquery_hook — Airflow Documentation</title>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <link rel="stylesheet" href="../../../../_static/css/theme.css" type="text/css" />
+ <link rel="stylesheet" href="../../../../_static/pygments.css" type="text/css" />
+ <link rel="index" title="Index" href="../../../../genindex.html" />
+ <link rel="search" title="Search" href="../../../../search.html" />
+
+
+ <script src="../../../../_static/js/modernizr.min.js"></script>
+
+</head>
+
+<body class="wy-body-for-nav">
+
+
+ <div class="wy-grid-for-nav">
+
+
+ <nav data-toggle="wy-nav-shift" class="wy-nav-side">
+ <div class="wy-side-scroll">
+ <div class="wy-side-nav-search">
+
+
+
+ <a href="../../../../index.html" class="icon icon-home"> Airflow
+
+
+
+ </a>
+
+
+
+
+
+
+
+<div role="search">
+ <form id="rtd-search-form" class="wy-form" action="../../../../search.html" method="get">
+ <input type="text" name="q" placeholder="Search docs" />
+ <input type="hidden" name="check_keywords" value="yes" />
+ <input type="hidden" name="area" value="default" />
+ </form>
+</div>
+
+
+ </div>
+
+ <div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
+
+
+
+
+
+
+ <ul>
+<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.html">Installation</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../tutorial.html">Tutorial</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.html">Concepts</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../profiling.html">Data Profiling</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../cli.html">Command Line Interface</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../scheduler.html">Scheduling & Triggers</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.html">Security</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="../../../../api.html">Experimental Rest API</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="../../../../lineage.html">Lineage</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="../../../../code.html">API Reference</a></li>
+</ul>
+
+
+
+ </div>
+ </div>
+ </nav>
+
+ <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
+
+
+ <nav class="wy-nav-top" aria-label="top navigation">
+
+ <i data-toggle="wy-nav-top" class="fa fa-bars"></i>
+ <a href="../../../../index.html">Airflow</a>
+
+ </nav>
+
+
+ <div class="wy-nav-content">
+
+ <div class="rst-content">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+<div role="navigation" aria-label="breadcrumbs navigation">
+
+ <ul class="wy-breadcrumbs">
+
+ <li><a href="../../../../index.html">Docs</a> »</li>
+
+ <li><a href="../../../index.html">Module code</a> »</li>
+
+ <li>airflow.contrib.hooks.bigquery_hook</li>
+
+
+ <li class="wy-breadcrumbs-aside">
+
+ </li>
+
+ </ul>
+
+
+ <hr/>
+</div>
+ <div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
+ <div itemprop="articleBody">
+
+ <h1>Source code for airflow.contrib.hooks.bigquery_hook</h1><div class="highlight"><pre>
+<span></span><span class="c1"># -*- coding: utf-8 -*-</span>
+<span class="c1">#</span>
+<span class="c1"># Licensed to the Apache Software Foundation (ASF) under one</span>
+<span class="c1"># or more contributor license agreements. See the NOTICE file</span>
+<span class="c1"># distributed with this work for additional information</span>
+<span class="c1"># regarding copyright ownership. The ASF licenses this file</span>
+<span class="c1"># to you under the Apache License, Version 2.0 (the</span>
+<span class="c1"># "License"); you may not use this file except in compliance</span>
+<span class="c1"># with the License. You may obtain a copy of the License at</span>
+<span class="c1">#</span>
+<span class="c1"># http://www.apache.org/licenses/LICENSE-2.0</span>
+<span class="c1">#</span>
+<span class="c1"># Unless required by applicable law or agreed to in writing,</span>
+<span class="c1"># software distributed under the License is distributed on an</span>
+<span class="c1"># "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY</span>
+<span class="c1"># KIND, either express or implied. See the License for the</span>
+<span class="c1"># specific language governing permissions and limitations</span>
+<span class="c1"># under the License.</span>
+<span class="c1">#</span>
+<span class="sd">"""</span>
+<span class="sd">This module contains a BigQuery Hook, as well as a very basic PEP 249</span>
+<span class="sd">implementation for BigQuery.</span>
+<span class="sd">"""</span>
+
+<span class="kn">import</span> <span class="nn">time</span>
+<span class="kn">from</span> <span class="nn">builtins</span> <span class="k">import</span> <span class="nb">range</span>
+
+<span class="kn">from</span> <span class="nn">past.builtins</span> <span class="k">import</span> <span class="n">basestring</span>
+
+<span class="kn">from</span> <span class="nn">airflow</span> <span class="k">import</span> <span class="n">AirflowException</span>
+<span class="kn">from</span> <span class="nn">airflow.contrib.hooks.gcp_api_base_hook</span> <span class="k">import</span> <span class="n">GoogleCloudBaseHook</span>
+<span class="kn">from</span> <span class="nn">airflow.hooks.dbapi_hook</span> <span class="k">import</span> <span class="n">DbApiHook</span>
+<span class="kn">from</span> <span class="nn">airflow.utils.log.logging_mixin</span> <span class="k">import</span> <span class="n">LoggingMixin</span>
+<span class="kn">from</span> <span class="nn">apiclient.discovery</span> <span class="k">import</span> <span class="n">HttpError</span><span class="p">,</span> <span class="n">build</span>
+<span class="kn">from</span> <span class="nn">googleapiclient</span> <span class="k">import</span> <span class="n">errors</span>
+<span class="kn">from</span> <span class="nn">pandas_gbq.gbq</span> <span class="k">import</span> \
+ <span class="n">_check_google_client_version</span> <span class="k">as</span> <span class="n">gbq_check_google_client_version</span>
+<span class="kn">from</span> <span class="nn">pandas_gbq</span> <span class="k">import</span> <span class="n">read_gbq</span>
+<span class="kn">from</span> <span class="nn">pandas_gbq.gbq</span> <span class="k">import</span> \
+ <span class="n">_test_google_api_imports</span> <span class="k">as</span> <span class="n">gbq_test_google_api_imports</span>
+<span class="kn">from</span> <span class="nn">pandas_gbq.gbq</span> <span class="k">import</span> <span class="n">GbqConnector</span>
+
+
+<div class="viewcode-block" id="BigQueryHook"><a class="viewcode-back" href="../../../../integration.html#airflow.contrib.hooks.bigquery_hook.BigQueryHook">[docs]</a><span class="k">class</span> <span class="nc">BigQueryHook</span><span class="p">(</span><span class="n">GoogleCloudBaseHook</span><span class="p">,</span> <span class="n">DbApiHook</span><span class="p">,</span> <span class="n">LoggingMixin</span><span class="p">):</span>
+ <span class="sd">"""</span>
+<span class="sd"> Interact with BigQuery. This hook uses the Google Cloud Platform</span>
+<span class="sd"> connection.</span>
+<span class="sd"> """</span>
+ <span class="n">conn_name_attr</span> <span class="o">=</span> <span class="s1">'bigquery_conn_id'</span>
+
+ <span class="k">def</span> <span class="nf">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span>
+ <span class="n">bigquery_conn_id</span><span class="o">=</span><span class="s1">'bigquery_default'</span><span class="p">,</span>
+ <span class="n">delegate_to</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span>
+ <span class="n">use_legacy_sql</span><span class="o">=</span><span class="kc">True</span><span class="p">):</span>
+ <span class="nb">super</span><span class="p">(</span><span class="n">BigQueryHook</span><span class="p">,</span> <span class="bp">self</span><span class="p">)</span><span class="o">.</span><span class="fm">__init__</span><span class="p">(</span>
+ <span class="n">gcp_conn_id</span><span class="o">=</span><span class="n">bigquery_conn_id</span><span class="p">,</span> <span class="n">delegate_to</span><span class="o">=</span><span class="n">delegate_to</span><span class="p">)</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">use_legacy_sql</span> <span class="o">=</span> <span class="n">use_legacy_sql</span>
+
+<div class="viewcode-block" id="BigQueryHook.get_conn"><a class="viewcode-back" href="../../../../integration.html#airflow.contrib.hooks.bigquery_hook.BigQueryHook.get_conn">[docs]</a> <span class="k">def</span> <span class="nf">get_conn</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
+ <span class="sd">"""</span>
+<span class="sd"> Returns a BigQuery PEP 249 connection object.</span>
+<span class="sd"> """</span>
+ <span class="n">service</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">get_service</span><span class="p">()</span>
+ <span class="n">project</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">_get_field</span><span class="p">(</span><span class="s1">'project'</span><span class="p">)</span>
+ <span class="k">return</span> <span class="n">BigQueryConnection</span><span class="p">(</span>
+ <span class="n">service</span><span class="o">=</span><span class="n">service</span><span class="p">,</span>
+ <span class="n">project_id</span><span class="o">=</span><span class="n">project</span><span class="p">,</span>
+ <span class="n">use_legacy_sql</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">use_legacy_sql</span><span class="p">)</span></div>
+
+<div class="viewcode-block" id="BigQueryHook.get_service"><a class="viewcode-back" href="../../../../integration.html#airflow.contrib.hooks.bigquery_hook.BigQueryHook.get_service">[docs]</a> <span class="k">def</span> <span class="nf">get_service</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
+ <span class="sd">"""</span>
+<span class="sd"> Returns a BigQuery service object.</span>
+<span class="sd"> """</span>
+ <span class="n">http_authorized</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">_authorize</span><span class="p">()</span>
+ <span class="k">return</span> <span class="n">build</span><span class="p">(</span>
+ <span class="s1">'bigquery'</span><span class="p">,</span> <span class="s1">'v2'</span><span class="p">,</span> <span class="n">http</span><span class="o">=</span><span class="n">http_authorized</span><span class="p">,</span> <span class="n">cache_discovery</span><span class="o">=</span><span class="kc">False</span><span class="p">)</span></div>
+
+<div class="viewcode-block" id="BigQueryHook.insert_rows"><a class="viewcode-back" href="../../../../integration.html#airflow.contrib.hooks.bigquery_hook.BigQueryHook.insert_rows">[docs]</a> <span class="k">def</span> <span class="nf">insert_rows</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">table</span><span class="p">,</span> <span class="n">rows</span><span class="p">,</span> <span class="n">target_fields</span><span class="o">=< [...]
+ <span class="sd">"""</span>
+<span class="sd"> Insertion is currently unsupported. Theoretically, you could use</span>
+<span class="sd"> BigQuery's streaming API to insert rows into a table, but this hasn't</span>
+<span class="sd"> been implemented.</span>
+<span class="sd"> """</span>
+ <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span></div>
+
+<div class="viewcode-block" id="BigQueryHook.get_pandas_df"><a class="viewcode-back" href="../../../../integration.html#airflow.contrib.hooks.bigquery_hook.BigQueryHook.get_pandas_df">[docs]</a> <span class="k">def</span> <span class="nf">get_pandas_df</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">sql</span><span class="p">,</span> <span class="n">parameters</span><span class="o">=</span><span class="kc">None</span><span class="p">, [...]
+ <span class="sd">"""</span>
+<span class="sd"> Returns a Pandas DataFrame for the results produced by a BigQuery</span>
+<span class="sd"> query. The DbApiHook method must be overridden because Pandas</span>
+<span class="sd"> doesn't support PEP 249 connections, except for SQLite. See:</span>
+
+<span class="sd"> https://github.com/pydata/pandas/blob/master/pandas/io/sql.py#L447</span>
+<span class="sd"> https://github.com/pydata/pandas/issues/6900</span>
+
+<span class="sd"> :param sql: The BigQuery SQL to execute.</span>
+<span class="sd"> :type sql: string</span>
+<span class="sd"> :param parameters: The parameters to render the SQL query with (not</span>
+<span class="sd"> used, leave to override superclass method)</span>
+<span class="sd"> :type parameters: mapping or iterable</span>
+<span class="sd"> :param dialect: Dialect of BigQuery SQL â legacy SQL or standard SQL</span>
+<span class="sd"> defaults to use `self.use_legacy_sql` if not specified</span>
+<span class="sd"> :type dialect: string in {'legacy', 'standard'}</span>
+<span class="sd"> """</span>
+ <span class="k">if</span> <span class="n">dialect</span> <span class="ow">is</span> <span class="kc">None</span><span class="p">:</span>
+ <span class="n">dialect</span> <span class="o">=</span> <span class="s1">'legacy'</span> <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">use_legacy_sql</span> <span class="k">else</span> <span class="s1">'standard'</span>
+
+ <span class="k">return</span> <span class="n">read_gbq</span><span class="p">(</span><span class="n">sql</span><span class="p">,</span>
+ <span class="n">project_id</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">_get_field</span><span class="p">(</span><span class="s1">'project'</span><span class="p">),</span>
+ <span class="n">dialect</span><span class="o">=</span><span class="n">dialect</span><span class="p">,</span>
+ <span class="n">verbose</span><span class="o">=</span><span class="kc">False</span><span class="p">)</span></div>
+
+<div class="viewcode-block" id="BigQueryHook.table_exists"><a class="viewcode-back" href="../../../../integration.html#airflow.contrib.hooks.bigquery_hook.BigQueryHook.table_exists">[docs]</a> <span class="k">def</span> <span class="nf">table_exists</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">project_id</span><span class="p">,</span> <span class="n">dataset_id</span><span class="p">,</span> <span class="n">table_id</span><span cla [...]
+ <span class="sd">"""</span>
+<span class="sd"> Checks for the existence of a table in Google BigQuery.</span>
+
+<span class="sd"> :param project_id: The Google cloud project in which to look for the</span>
+<span class="sd"> table. The connection supplied to the hook must provide access to</span>
+<span class="sd"> the specified project.</span>
+<span class="sd"> :type project_id: string</span>
+<span class="sd"> :param dataset_id: The name of the dataset in which to look for the</span>
+<span class="sd"> table.</span>
+<span class="sd"> :type dataset_id: string</span>
+<span class="sd"> :param table_id: The name of the table to check the existence of.</span>
+<span class="sd"> :type table_id: string</span>
+<span class="sd"> """</span>
+ <span class="n">service</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">get_service</span><span class="p">()</span>
+ <span class="k">try</span><span class="p">:</span>
+ <span class="n">service</span><span class="o">.</span><span class="n">tables</span><span class="p">()</span><span class="o">.</span><span class="n">get</span><span class="p">(</span>
+ <span class="n">projectId</span><span class="o">=</span><span class="n">project_id</span><span class="p">,</span> <span class="n">datasetId</span><span class="o">=</span><span class="n">dataset_id</span><span class="p">,</span>
+ <span class="n">tableId</span><span class="o">=</span><span class="n">table_id</span><span class="p">)</span><span class="o">.</span><span class="n">execute</span><span class="p">()</span>
+ <span class="k">return</span> <span class="kc">True</span>
+ <span class="k">except</span> <span class="n">errors</span><span class="o">.</span><span class="n">HttpError</span> <span class="k">as</span> <span class="n">e</span><span class="p">:</span>
+ <span class="k">if</span> <span class="n">e</span><span class="o">.</span><span class="n">resp</span><span class="p">[</span><span class="s1">'status'</span><span class="p">]</span> <span class="o">==</span> <span class="s1">'404'</span><span class="p">:</span>
+ <span class="k">return</span> <span class="kc">False</span>
+ <span class="k">raise</span></div></div>
+
+
+<span class="k">class</span> <span class="nc">BigQueryPandasConnector</span><span class="p">(</span><span class="n">GbqConnector</span><span class="p">):</span>
+ <span class="sd">"""</span>
+<span class="sd"> This connector behaves identically to GbqConnector (from Pandas), except</span>
+<span class="sd"> that it allows the service to be injected, and disables a call to</span>
+<span class="sd"> self.get_credentials(). This allows Airflow to use BigQuery with Pandas</span>
+<span class="sd"> without forcing a three legged OAuth connection. Instead, we can inject</span>
+<span class="sd"> service account credentials into the binding.</span>
+<span class="sd"> """</span>
+
+ <span class="k">def</span> <span class="nf">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span>
+ <span class="n">project_id</span><span class="p">,</span>
+ <span class="n">service</span><span class="p">,</span>
+ <span class="n">reauth</span><span class="o">=</span><span class="kc">False</span><span class="p">,</span>
+ <span class="n">verbose</span><span class="o">=</span><span class="kc">False</span><span class="p">,</span>
+ <span class="n">dialect</span><span class="o">=</span><span class="s1">'legacy'</span><span class="p">):</span>
+ <span class="nb">super</span><span class="p">(</span><span class="n">BigQueryPandasConnector</span><span class="p">,</span> <span class="bp">self</span><span class="p">)</span><span class="o">.</span><span class="fm">__init__</span><span class="p">(</span><span class="n">project_id</span><span class="p">)</span>
+ <span class="n">gbq_check_google_client_version</span><span class="p">()</span>
+ <span class="n">gbq_test_google_api_imports</span><span class="p">()</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">project_id</span> <span class="o">=</span> <span class="n">project_id</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">reauth</span> <span class="o">=</span> <span class="n">reauth</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">service</span> <span class="o">=</span> <span class="n">service</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">verbose</span> <span class="o">=</span> <span class="n">verbose</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">dialect</span> <span class="o">=</span> <span class="n">dialect</span>
+
+
+<span class="k">class</span> <span class="nc">BigQueryConnection</span><span class="p">(</span><span class="nb">object</span><span class="p">):</span>
+ <span class="sd">"""</span>
+<span class="sd"> BigQuery does not have a notion of a persistent connection. Thus, these</span>
+<span class="sd"> objects are small stateless factories for cursors, which do all the real</span>
+<span class="sd"> work.</span>
+<span class="sd"> """</span>
+
+ <span class="k">def</span> <span class="nf">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="o">*</span><span class="n">args</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">_args</span> <span class="o">=</span> <span class="n">args</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">_kwargs</span> <span class="o">=</span> <span class="n">kwargs</span>
+
+ <span class="k">def</span> <span class="nf">close</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
+ <span class="sd">""" BigQueryConnection does not have anything to close. """</span>
+ <span class="k">pass</span>
+
+ <span class="k">def</span> <span class="nf">commit</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
+ <span class="sd">""" BigQueryConnection does not support transactions. """</span>
+ <span class="k">pass</span>
+
+ <span class="k">def</span> <span class="nf">cursor</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
+ <span class="sd">""" Return a new :py:class:`Cursor` object using the connection. """</span>
+ <span class="k">return</span> <span class="n">BigQueryCursor</span><span class="p">(</span><span class="o">*</span><span class="bp">self</span><span class="o">.</span><span class="n">_args</span><span class="p">,</span> <span class="o">**</span><span class="bp">self</span><span class="o">.</span><span class="n">_kwargs</span><span class="p">)</span>
+
+ <span class="k">def</span> <span class="nf">rollback</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
+ <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">(</span>
+ <span class="s2">"BigQueryConnection does not have transactions"</span><span class="p">)</span>
+
+
+<span class="k">class</span> <span class="nc">BigQueryBaseCursor</span><span class="p">(</span><span class="n">LoggingMixin</span><span class="p">):</span>
+ <span class="sd">"""</span>
+<span class="sd"> The BigQuery base cursor contains helper methods to execute queries against</span>
+<span class="sd"> BigQuery. The methods can be used directly by operators, in cases where a</span>
+<span class="sd"> PEP 249 cursor isn't needed.</span>
+<span class="sd"> """</span>
+
+ <span class="k">def</span> <span class="nf">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">service</span><span class="p">,</span> <span class="n">project_id</span><span class="p">,</span> <span class="n">use_legacy_sql</span><span class="o">=</span><span class="kc">True</span><span class="p">):</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">service</span> <span class="o">=</span> <span class="n">service</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">project_id</span> <span class="o">=</span> <span class="n">project_id</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">use_legacy_sql</span> <span class="o">=</span> <span class="n">use_legacy_sql</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">running_job_id</span> <span class="o">=</span> <span class="kc">None</span>
+
+ <span class="k">def</span> <span class="nf">create_empty_table</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span>
+ <span class="n">project_id</span><span class="p">,</span>
+ <span class="n">dataset_id</span><span class="p">,</span>
+ <span class="n">table_id</span><span class="p">,</span>
+ <span class="n">schema_fields</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span>
+ <span class="n">time_partitioning</span><span class="o">=</span><span class="p">{},</span>
+ <span class="n">labels</span><span class="o">=</span><span class="kc">None</span>
+ <span class="p">):</span>
+ <span class="sd">"""</span>
+<span class="sd"> Creates a new, empty table in the dataset.</span>
+
+<span class="sd"> :param project_id: The project to create the table into.</span>
+<span class="sd"> :type project_id: str</span>
+<span class="sd"> :param dataset_id: The dataset to create the table into.</span>
+<span class="sd"> :type dataset_id: str</span>
+<span class="sd"> :param table_id: The Name of the table to be created.</span>
+<span class="sd"> :type table_id: str</span>
+<span class="sd"> :param schema_fields: If set, the schema field list as defined here:</span>
+<span class="sd"> https://cloud.google.com/bigquery/docs/reference/rest/v2/jobs#configuration.load.schema</span>
+<span class="sd"> :param labels: a dictionary containing labels for the table, passed to BigQuery</span>
+<span class="sd"> :type labels: dict</span>
+
+<span class="sd"> **Example**: ::</span>
+
+<span class="sd"> schema_fields=[{"name": "emp_name", "type": "STRING", "mode": "REQUIRED"},</span>
+<span class="sd"> {"name": "salary", "type": "INTEGER", "mode": "NULLABLE"}]</span>
+
+<span class="sd"> :type schema_fields: list</span>
+<span class="sd"> :param time_partitioning: configure optional time partitioning fields i.e.</span>
+<span class="sd"> partition by field, type and expiration as per API specifications.</span>
+
+<span class="sd"> .. seealso::</span>
+<span class="sd"> https://cloud.google.com/bigquery/docs/reference/rest/v2/tables#timePartitioning</span>
+<span class="sd"> :type time_partitioning: dict</span>
+
+<span class="sd"> :return:</span>
+<span class="sd"> """</span>
+ <span class="n">project_id</span> <span class="o">=</span> <span class="n">project_id</span> <span class="k">if</span> <span class="n">project_id</span> <span class="ow">is</span> <span class="ow">not</span> <span class="kc">None</span> <span class="k">else</span> <span class="bp">self</span><span class="o">.</span><span class="n">project_id</span>
+
+ <span class="n">table_resource</span> <span class="o">=</span> <span class="p">{</span>
+ <span class="s1">'tableReference'</span><span class="p">:</span> <span class="p">{</span>
+ <span class="s1">'tableId'</span><span class="p">:</span> <span class="n">table_id</span>
+ <span class="p">}</span>
+ <span class="p">}</span>
+
+ <span class="k">if</span> <span class="n">schema_fields</span><span class="p">:</span>
+ <span class="n">table_resource</span><span class="p">[</span><span class="s1">'schema'</span><span class="p">]</span> <span class="o">=</span> <span class="p">{</span><span class="s1">'fields'</span><span class="p">:</span> <span class="n">schema_fields</span><span class="p">}</span>
+
+ <span class="k">if</span> <span class="n">time_partitioning</span><span class="p">:</span>
+ <span class="n">table_resource</span><span class="p">[</span><span class="s1">'timePartitioning'</span><span class="p">]</span> <span class="o">=</span> <span class="n">time_partitioning</span>
+
+ <span class="k">if</span> <span class="n">labels</span><span class="p">:</span>
+ <span class="n">table_resource</span><span class="p">[</span><span class="s1">'labels'</span><span class="p">]</span> <span class="o">=</span> <span class="n">labels</span>
+
+ <span class="bp">self</span><span class="o">.</span><span class="n">log</span><span class="o">.</span><span class="n">info</span><span class="p">(</span><span class="s1">'Creating Table </span><span class="si">%s</span><span class="s1">:</span><span class="si">%s</span><span class="s1">.</span><span class="si">%s</span><span class="s1">'</span><span class="p">,</span>
+ <span class="n">project_id</span><span class="p">,</span> <span class="n">dataset_id</span><span class="p">,</span> <span class="n">table_id</span><span class="p">)</span>
+
+ <span class="k">try</span><span class="p">:</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">service</span><span class="o">.</span><span class="n">tables</span><span class="p">()</span><span class="o">.</span><span class="n">insert</span><span class="p">(</span>
+ <span class="n">projectId</span><span class="o">=</span><span class="n">project_id</span><span class="p">,</span>
+ <span class="n">datasetId</span><span class="o">=</span><span class="n">dataset_id</span><span class="p">,</span>
+ <span class="n">body</span><span class="o">=</span><span class="n">table_resource</span><span class="p">)</span><span class="o">.</span><span class="n">execute</span><span class="p">()</span>
+
+ <span class="bp">self</span><span class="o">.</span><span class="n">log</span><span class="o">.</span><span class="n">info</span><span class="p">(</span><span class="s1">'Table created successfully: </span><span class="si">%s</span><span class="s1">:</span><span class="si">%s</span><span class="s1">.</span><span class="si">%s</span><span class="s1">'</span><span class="p">,</span>
+ <span class="n">project_id</span><span class="p">,</span> <span class="n">dataset_id</span><span class="p">,</span> <span class="n">table_id</span><span class="p">)</span>
+
+ <span class="k">except</span> <span class="n">HttpError</span> <span class="k">as</span> <span class="n">err</span><span class="p">:</span>
+ <span class="k">raise</span> <span class="n">AirflowException</span><span class="p">(</span>
+ <span class="s1">'BigQuery job failed. Error was: </span><span class="si">{}</span><span class="s1">'</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">err</span><span class="o">.</span><span class="n">content</span><span class="p">)</span>
+ <span class="p">)</span>
+
+ <span class="k">def</span> <span class="nf">create_external_table</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span>
+ <span class="n">external_project_dataset_table</span><span class="p">,</span>
+ <span class="n">schema_fields</span><span class="p">,</span>
+ <span class="n">source_uris</span><span class="p">,</span>
+ <span class="n">source_format</span><span class="o">=</span><span class="s1">'CSV'</span><span class="p">,</span>
+ <span class="n">autodetect</span><span class="o">=</span><span class="kc">False</span><span class="p">,</span>
+ <span class="n">compression</span><span class="o">=</span><span class="s1">'NONE'</span><span class="p">,</span>
+ <span class="n">ignore_unknown_values</span><span class="o">=</span><span class="kc">False</span><span class="p">,</span>
+ <span class="n">max_bad_records</span><span class="o">=</span><span class="mi">0</span><span class="p">,</span>
+ <span class="n">skip_leading_rows</span><span class="o">=</span><span class="mi">0</span><span class="p">,</span>
+ <span class="n">field_delimiter</span><span class="o">=</span><span class="s1">','</span><span class="p">,</span>
+ <span class="n">quote_character</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span>
+ <span class="n">allow_quoted_newlines</span><span class="o">=</span><span class="kc">False</span><span class="p">,</span>
+ <span class="n">allow_jagged_rows</span><span class="o">=</span><span class="kc">False</span><span class="p">,</span>
+ <span class="n">src_fmt_configs</span><span class="o">=</span><span class="p">{},</span>
+ <span class="n">labels</span><span class="o">=</span><span class="kc">None</span>
+ <span class="p">):</span>
+ <span class="sd">"""</span>
+<span class="sd"> Creates a new external table in the dataset with the data in Google</span>
+<span class="sd"> Cloud Storage. See here:</span>
+
+<span class="sd"> https://cloud.google.com/bigquery/docs/reference/rest/v2/tables#resource</span>
+
+<span class="sd"> for more details about these parameters.</span>
+
+<span class="sd"> :param external_project_dataset_table:</span>
+<span class="sd"> The dotted (<project>.|<project>:)<dataset>.<table>($<partition>) BigQuery</span>
+<span class="sd"> table name to create external table.</span>
+<span class="sd"> If <project> is not included, project will be the</span>
+<span class="sd"> project defined in the connection json.</span>
+<span class="sd"> :type external_project_dataset_table: string</span>
+<span class="sd"> :param schema_fields: The schema field list as defined here:</span>
+<span class="sd"> https://cloud.google.com/bigquery/docs/reference/rest/v2/tables#resource</span>
+<span class="sd"> :type schema_fields: list</span>
+<span class="sd"> :param source_uris: The source Google Cloud</span>
+<span class="sd"> Storage URI (e.g. gs://some-bucket/some-file.txt). A single wild</span>
+<span class="sd"> per-object name can be used.</span>
+<span class="sd"> :type source_uris: list</span>
+<span class="sd"> :param source_format: File format to export.</span>
+<span class="sd"> :type source_format: string</span>
+<span class="sd"> :param autodetect: Try to detect schema and format options automatically.</span>
+<span class="sd"> Any option specified explicitly will be honored.</span>
+<span class="sd"> :type autodetect: bool</span>
+<span class="sd"> :param compression: [Optional] The compression type of the data source.</span>
+<span class="sd"> Possible values include GZIP and NONE.</span>
+<span class="sd"> The default value is NONE.</span>
+<span class="sd"> This setting is ignored for Google Cloud Bigtable,</span>
+<span class="sd"> Google Cloud Datastore backups and Avro formats.</span>
+<span class="sd"> :type compression: string</span>
+<span class="sd"> :param ignore_unknown_values: [Optional] Indicates if BigQuery should allow</span>
+<span class="sd"> extra values that are not represented in the table schema.</span>
+<span class="sd"> If true, the extra values are ignored. If false, records with extra columns</span>
+<span class="sd"> are treated as bad records, and if there are too many bad records, an</span>
+<span class="sd"> invalid error is returned in the job result.</span>
+<span class="sd"> :type ignore_unknown_values: bool</span>
+<span class="sd"> :param max_bad_records: The maximum number of bad records that BigQuery can</span>
+<span class="sd"> ignore when running the job.</span>
+<span class="sd"> :type max_bad_records: int</span>
+<span class="sd"> :param skip_leading_rows: Number of rows to skip when loading from a CSV.</span>
+<span class="sd"> :type skip_leading_rows: int</span>
+<span class="sd"> :param field_delimiter: The delimiter to use when loading from a CSV.</span>
+<span class="sd"> :type field_delimiter: string</span>
+<span class="sd"> :param quote_character: The value that is used to quote data sections in a CSV</span>
+<span class="sd"> file.</span>
+<span class="sd"> :type quote_character: string</span>
+<span class="sd"> :param allow_quoted_newlines: Whether to allow quoted newlines (true) or not</span>
+<span class="sd"> (false).</span>
+<span class="sd"> :type allow_quoted_newlines: boolean</span>
+<span class="sd"> :param allow_jagged_rows: Accept rows that are missing trailing optional columns.</span>
+<span class="sd"> The missing values are treated as nulls. If false, records with missing</span>
+<span class="sd"> trailing columns are treated as bad records, and if there are too many bad</span>
+<span class="sd"> records, an invalid error is returned in the job result. Only applicable when</span>
+<span class="sd"> soure_format is CSV.</span>
+<span class="sd"> :type allow_jagged_rows: bool</span>
+<span class="sd"> :param src_fmt_configs: configure optional fields specific to the source format</span>
+<span class="sd"> :type src_fmt_configs: dict</span>
+<span class="sd"> :param labels: a dictionary containing labels for the table, passed to BigQuery</span>
+<span class="sd"> :type labels: dict</span>
+<span class="sd"> """</span>
+
+ <span class="n">project_id</span><span class="p">,</span> <span class="n">dataset_id</span><span class="p">,</span> <span class="n">external_table_id</span> <span class="o">=</span> \
+ <span class="n">_split_tablename</span><span class="p">(</span><span class="n">table_input</span><span class="o">=</span><span class="n">external_project_dataset_table</span><span class="p">,</span>
+ <span class="n">default_project_id</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">project_id</span><span class="p">,</span>
+ <span class="n">var_name</span><span class="o">=</span><span class="s1">'external_project_dataset_table'</span><span class="p">)</span>
+
+ <span class="c1"># bigquery only allows certain source formats</span>
+ <span class="c1"># we check to make sure the passed source format is valid</span>
+ <span class="c1"># if it's not, we raise a ValueError</span>
+ <span class="c1"># Refer to this link for more details:</span>
+ <span class="c1"># https://cloud.google.com/bigquery/docs/reference/rest/v2/tables#externalDataConfiguration.sourceFormat</span>
+
+ <span class="n">source_format</span> <span class="o">=</span> <span class="n">source_format</span><span class="o">.</span><span class="n">upper</span><span class="p">()</span>
+ <span class="n">allowed_formats</span> <span class="o">=</span> <span class="p">[</span>
+ <span class="s2">"CSV"</span><span class="p">,</span> <span class="s2">"NEWLINE_DELIMITED_JSON"</span><span class="p">,</span> <span class="s2">"AVRO"</span><span class="p">,</span> <span class="s2">"GOOGLE_SHEETS"</span><span class="p">,</span>
+ <span class="s2">"DATASTORE_BACKUP"</span><span class="p">,</span> <span class="s2">"PARQUET"</span>
+ <span class="p">]</span>
+ <span class="k">if</span> <span class="n">source_format</span> <span class="ow">not</span> <span class="ow">in</span> <span class="n">allowed_formats</span><span class="p">:</span>
+ <span class="k">raise</span> <span class="ne">ValueError</span><span class="p">(</span><span class="s2">"</span><span class="si">{0}</span><span class="s2"> is not a valid source format. "</span>
+ <span class="s2">"Please use one of the following types: </span><span class="si">{1}</span><span class="s2">"</span>
+ <span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">source_format</span><span class="p">,</span> <span class="n">allowed_formats</span><span class="p">))</span>
+
+ <span class="n">compression</span> <span class="o">=</span> <span class="n">compression</span><span class="o">.</span><span class="n">upper</span><span class="p">()</span>
+ <span class="n">allowed_compressions</span> <span class="o">=</span> <span class="p">[</span><span class="s1">'NONE'</span><span class="p">,</span> <span class="s1">'GZIP'</span><span class="p">]</span>
+ <span class="k">if</span> <span class="n">compression</span> <span class="ow">not</span> <span class="ow">in</span> <span class="n">allowed_compressions</span><span class="p">:</span>
+ <span class="k">raise</span> <span class="ne">ValueError</span><span class="p">(</span><span class="s2">"</span><span class="si">{0}</span><span class="s2"> is not a valid compression format. "</span>
+ <span class="s2">"Please use one of the following types: </span><span class="si">{1}</span><span class="s2">"</span>
+ <span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">compression</span><span class="p">,</span> <span class="n">allowed_compressions</span><span class="p">))</span>
+
+ <span class="n">table_resource</span> <span class="o">=</span> <span class="p">{</span>
+ <span class="s1">'externalDataConfiguration'</span><span class="p">:</span> <span class="p">{</span>
+ <span class="s1">'autodetect'</span><span class="p">:</span> <span class="n">autodetect</span><span class="p">,</span>
+ <span class="s1">'sourceFormat'</span><span class="p">:</span> <span class="n">source_format</span><span class="p">,</span>
+ <span class="s1">'sourceUris'</span><span class="p">:</span> <span class="n">source_uris</span><span class="p">,</span>
+ <span class="s1">'compression'</span><span class="p">:</span> <span class="n">compression</span><span class="p">,</span>
+ <span class="s1">'ignoreUnknownValues'</span><span class="p">:</span> <span class="n">ignore_unknown_values</span>
+ <span class="p">},</span>
+ <span class="s1">'tableReference'</span><span class="p">:</span> <span class="p">{</span>
+ <span class="s1">'projectId'</span><span class="p">:</span> <span class="n">project_id</span><span class="p">,</span>
+ <span class="s1">'datasetId'</span><span class="p">:</span> <span class="n">dataset_id</span><span class="p">,</span>
+ <span class="s1">'tableId'</span><span class="p">:</span> <span class="n">external_table_id</span><span class="p">,</span>
+ <span class="p">}</span>
+ <span class="p">}</span>
+
+ <span class="k">if</span> <span class="n">schema_fields</span><span class="p">:</span>
+ <span class="n">table_resource</span><span class="p">[</span><span class="s1">'externalDataConfiguration'</span><span class="p">]</span><span class="o">.</span><span class="n">update</span><span class="p">({</span>
+ <span class="s1">'schema'</span><span class="p">:</span> <span class="p">{</span>
+ <span class="s1">'fields'</span><span class="p">:</span> <span class="n">schema_fields</span>
+ <span class="p">}</span>
+ <span class="p">})</span>
+
+ <span class="bp">self</span><span class="o">.</span><span class="n">log</span><span class="o">.</span><span class="n">info</span><span class="p">(</span><span class="s1">'Creating external table: </span><span class="si">%s</span><span class="s1">'</span><span class="p">,</span> <span class="n">external_project_dataset_table</span><span class="p">)</span>
+
+ <span class="k">if</span> <span class="n">max_bad_records</span><span class="p">:</span>
+ <span class="n">table_resource</span><span class="p">[</span><span class="s1">'externalDataConfiguration'</span><span class="p">][</span><span class="s1">'maxBadRecords'</span><span class="p">]</span> <span class="o">=</span> <span class="n">max_bad_records</span>
+
+ <span class="c1"># if following fields are not specified in src_fmt_configs,</span>
+ <span class="c1"># honor the top-level params for backward-compatibility</span>
+ <span class="k">if</span> <span class="s1">'skipLeadingRows'</span> <span class="ow">not</span> <span class="ow">in</span> <span class="n">src_fmt_configs</span><span class="p">:</span>
+ <span class="n">src_fmt_configs</span><span class="p">[</span><span class="s1">'skipLeadingRows'</span><span class="p">]</span> <span class="o">=</span> <span class="n">skip_leading_rows</span>
+ <span class="k">if</span> <span class="s1">'fieldDelimiter'</span> <span class="ow">not</span> <span class="ow">in</span> <span class="n">src_fmt_configs</span><span class="p">:</span>
+ <span class="n">src_fmt_configs</span><span class="p">[</span><span class="s1">'fieldDelimiter'</span><span class="p">]</span> <span class="o">=</span> <span class="n">field_delimiter</span>
+ <span class="k">if</span> <span class="s1">'quote_character'</span> <span class="ow">not</span> <span class="ow">in</span> <span class="n">src_fmt_configs</span><span class="p">:</span>
+ <span class="n">src_fmt_configs</span><span class="p">[</span><span class="s1">'quote'</span><span class="p">]</span> <span class="o">=</span> <span class="n">quote_character</span>
+ <span class="k">if</span> <span class="s1">'allowQuotedNewlines'</span> <span class="ow">not</span> <span class="ow">in</span> <span class="n">src_fmt_configs</span><span class="p">:</span>
+ <span class="n">src_fmt_configs</span><span class="p">[</span><span class="s1">'allowQuotedNewlines'</span><span class="p">]</span> <span class="o">=</span> <span class="n">allow_quoted_newlines</span>
+ <span class="k">if</span> <span class="s1">'allowJaggedRows'</span> <span class="ow">not</span> <span class="ow">in</span> <span class="n">src_fmt_configs</span><span class="p">:</span>
+ <span class="n">src_fmt_configs</span><span class="p">[</span><span class="s1">'allowJaggedRows'</span><span class="p">]</span> <span class="o">=</span> <span class="n">allow_jagged_rows</span>
+
+ <span class="n">src_fmt_to_param_mapping</span> <span class="o">=</span> <span class="p">{</span>
+ <span class="s1">'CSV'</span><span class="p">:</span> <span class="s1">'csvOptions'</span><span class="p">,</span>
+ <span class="s1">'GOOGLE_SHEETS'</span><span class="p">:</span> <span class="s1">'googleSheetsOptions'</span>
+ <span class="p">}</span>
+
+ <span class="n">src_fmt_to_configs_mapping</span> <span class="o">=</span> <span class="p">{</span>
+ <span class="s1">'csvOptions'</span><span class="p">:</span> <span class="p">[</span>
+ <span class="s1">'allowJaggedRows'</span><span class="p">,</span> <span class="s1">'allowQuotedNewlines'</span><span class="p">,</span>
+ <span class="s1">'fieldDelimiter'</span><span class="p">,</span> <span class="s1">'skipLeadingRows'</span><span class="p">,</span>
+ <span class="s1">'quote'</span>
+ <span class="p">],</span>
+ <span class="s1">'googleSheetsOptions'</span><span class="p">:</span> <span class="p">[</span><span class="s1">'skipLeadingRows'</span><span class="p">]</span>
+ <span class="p">}</span>
+
+ <span class="k">if</span> <span class="n">source_format</span> <span class="ow">in</span> <span class="n">src_fmt_to_param_mapping</span><span class="o">.</span><span class="n">keys</span><span class="p">():</span>
+
+ <span class="n">valid_configs</span> <span class="o">=</span> <span class="n">src_fmt_to_configs_mapping</span><span class="p">[</span>
+ <span class="n">src_fmt_to_param_mapping</span><span class="p">[</span><span class="n">source_format</span><span class="p">]</span>
+ <span class="p">]</span>
+
+ <span class="n">src_fmt_configs</span> <span class="o">=</span> <span class="p">{</span>
+ <span class="n">k</span><span class="p">:</span> <span class="n">v</span>
+ <span class="k">for</span> <span class="n">k</span><span class="p">,</span> <span class="n">v</span> <span class="ow">in</span> <span class="n">src_fmt_configs</span><span class="o">.</span><span class="n">items</span><span class="p">()</span> <span class="k">if</span> <span class="n">k</span> <span class="ow">in</span> <span class="n">valid_configs</span>
+ <span class="p">}</span>
+
+ <span class="n">table_resource</span><span class="p">[</span><span class="s1">'externalDataConfiguration'</span><span class="p">][</span><span class="n">src_fmt_to_param_mapping</span><span class="p">[</span>
+ <span class="n">source_format</span><span class="p">]]</span> <span class="o">=</span> <span class="n">src_fmt_configs</span>
+
+ <span class="k">if</span> <span class="n">labels</span><span class="p">:</span>
+ <span class="n">table_resource</span><span class="p">[</span><span class="s1">'labels'</span><span class="p">]</span> <span class="o">=</span> <span class="n">labels</span>
+
+ <span class="k">try</span><span class="p">:</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">service</span><span class="o">.</span><span class="n">tables</span><span class="p">()</span><span class="o">.</span><span class="n">insert</span><span class="p">(</span>
+ <span class="n">projectId</span><span class="o">=</span><span class="n">project_id</span><span class="p">,</span>
+ <span class="n">datasetId</span><span class="o">=</span><span class="n">dataset_id</span><span class="p">,</span>
+ <span class="n">body</span><span class="o">=</span><span class="n">table_resource</span>
+ <span class="p">)</span><span class="o">.</span><span class="n">execute</span><span class="p">()</span>
+
+ <span class="bp">self</span><span class="o">.</span><span class="n">log</span><span class="o">.</span><span class="n">info</span><span class="p">(</span><span class="s1">'External table created successfully: </span><span class="si">%s</span><span class="s1">'</span><span class="p">,</span>
+ <span class="n">external_project_dataset_table</span><span class="p">)</span>
+
+ <span class="k">except</span> <span class="n">HttpError</span> <span class="k">as</span> <span class="n">err</span><span class="p">:</span>
+ <span class="k">raise</span> <span class="ne">Exception</span><span class="p">(</span>
+ <span class="s1">'BigQuery job failed. Error was: </span><span class="si">{}</span><span class="s1">'</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">err</span><span class="o">.</span><span class="n">content</span><span class="p">)</span>
+ <span class="p">)</span>
+
+ <span class="k">def</span> <span class="nf">run_query</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span>
+ <span class="n">bql</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span>
+ <span class="n">sql</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span>
+ <span class="n">destination_dataset_table</span><span class="o">=</span><span class="kc">False</span><span class="p">,</span>
+ <span class="n">write_disposition</span><span class="o">=</span><span class="s1">'WRITE_EMPTY'</span><span class="p">,</span>
+ <span class="n">allow_large_results</span><span class="o">=</span><span class="kc">False</span><span class="p">,</span>
+ <span class="n">flatten_results</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span>
+ <span class="n">udf_config</span><span class="o">=</span><span class="kc">False</span><span class="p">,</span>
+ <span class="n">use_legacy_sql</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span>
+ <span class="n">maximum_billing_tier</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span>
+ <span class="n">maximum_bytes_billed</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span>
+ <span class="n">create_disposition</span><span class="o">=</span><span class="s1">'CREATE_IF_NEEDED'</span><span class="p">,</span>
+ <span class="n">query_params</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span>
+ <span class="n">labels</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span>
+ <span class="n">schema_update_options</span><span class="o">=</span><span class="p">(),</span>
+ <span class="n">priority</span><span class="o">=</span><span class="s1">'INTERACTIVE'</span><span class="p">,</span>
+ <span class="n">time_partitioning</span><span class="o">=</span><span class="p">{}):</span>
+ <span class="sd">"""</span>
+<span class="sd"> Executes a BigQuery SQL query. Optionally persists results in a BigQuery</span>
+<span class="sd"> table. See here:</span>
+
+<span class="sd"> https://cloud.google.com/bigquery/docs/reference/v2/jobs</span>
+
+<span class="sd"> For more details about these parameters.</span>
+
+<span class="sd"> :param bql: (Deprecated. Use `sql` parameter instead) The BigQuery SQL</span>
+<span class="sd"> to execute.</span>
+<span class="sd"> :type bql: string</span>
+<span class="sd"> :param sql: The BigQuery SQL to execute.</span>
+<span class="sd"> :type sql: string</span>
+<span class="sd"> :param destination_dataset_table: The dotted <dataset>.<table></span>
+<span class="sd"> BigQuery table to save the query results.</span>
+<span class="sd"> :type destination_dataset_table: string</span>
+<span class="sd"> :param write_disposition: What to do if the table already exists in</span>
+<span class="sd"> BigQuery.</span>
+<span class="sd"> :type write_disposition: string</span>
+<span class="sd"> :param allow_large_results: Whether to allow large results.</span>
+<span class="sd"> :type allow_large_results: boolean</span>
+<span class="sd"> :param flatten_results: If true and query uses legacy SQL dialect, flattens</span>
+<span class="sd"> all nested and repeated fields in the query results. ``allowLargeResults``</span>
+<span class="sd"> must be true if this is set to false. For standard SQL queries, this</span>
+<span class="sd"> flag is ignored and results are never flattened.</span>
+<span class="sd"> :type flatten_results: boolean</span>
+<span class="sd"> :param udf_config: The User Defined Function configuration for the query.</span>
+<span class="sd"> See https://cloud.google.com/bigquery/user-defined-functions for details.</span>
+<span class="sd"> :param use_legacy_sql: Whether to use legacy SQL (true) or standard SQL (false).</span>
+<span class="sd"> If `None`, defaults to `self.use_legacy_sql`.</span>
+<span class="sd"> :type use_legacy_sql: boolean</span>
+<span class="sd"> :type udf_config: list</span>
+<span class="sd"> :param maximum_billing_tier: Positive integer that serves as a</span>
+<span class="sd"> multiplier of the basic price.</span>
+<span class="sd"> :type maximum_billing_tier: integer</span>
+<span class="sd"> :param maximum_bytes_billed: Limits the bytes billed for this job.</span>
+<span class="sd"> Queries that will have bytes billed beyond this limit will fail</span>
+<span class="sd"> (without incurring a charge). If unspecified, this will be</span>
+<span class="sd"> set to your project default.</span>
+<span class="sd"> :type maximum_bytes_billed: float</span>
+<span class="sd"> :param create_disposition: Specifies whether the job is allowed to</span>
+<span class="sd"> create new tables.</span>
+<span class="sd"> :type create_disposition: string</span>
+<span class="sd"> :param query_params a dictionary containing query parameter types and</span>
+<span class="sd"> values, passed to BigQuery</span>
+<span class="sd"> :type query_params: dict</span>
+<span class="sd"> :param labels a dictionary containing labels for the job/query,</span>
+<span class="sd"> passed to BigQuery</span>
+<span class="sd"> :type labels: dict</span>
+<span class="sd"> :param schema_update_options: Allows the schema of the desitination</span>
+<span class="sd"> table to be updated as a side effect of the query job.</span>
+<span class="sd"> :type schema_update_options: tuple</span>
+<span class="sd"> :param priority: Specifies a priority for the query.</span>
+<span class="sd"> Possible values include INTERACTIVE and BATCH.</span>
+<span class="sd"> The default value is INTERACTIVE.</span>
+<span class="sd"> :type priority: string</span>
+<span class="sd"> :param time_partitioning: configure optional time partitioning fields i.e.</span>
+<span class="sd"> partition by field, type and expiration as per API specifications.</span>
+<span class="sd"> :type time_partitioning: dict</span>
+
+<span class="sd"> """</span>
+
+ <span class="c1"># TODO remove `bql` in Airflow 2.0 - Jira: [AIRFLOW-2513]</span>
+ <span class="n">sql</span> <span class="o">=</span> <span class="n">bql</span> <span class="k">if</span> <span class="n">sql</span> <span class="ow">is</span> <span class="kc">None</span> <span class="k">else</span> <span class="n">sql</span>
+
+ <span class="k">if</span> <span class="n">bql</span><span class="p">:</span>
+ <span class="kn">import</span> <span class="nn">warnings</span>
+ <span class="n">warnings</span><span class="o">.</span><span class="n">warn</span><span class="p">(</span><span class="s1">'Deprecated parameter `bql` used in '</span>
+ <span class="s1">'`BigQueryBaseCursor.run_query` '</span>
+ <span class="s1">'Use `sql` parameter instead to pass the sql to be '</span>
+ <span class="s1">'executed. `bql` parameter is deprecated and '</span>
+ <span class="s1">'will be removed in a future version of '</span>
+ <span class="s1">'Airflow.'</span><span class="p">,</span>
+ <span class="n">category</span><span class="o">=</span><span class="ne">DeprecationWarning</span><span class="p">)</span>
+
+ <span class="k">if</span> <span class="n">sql</span> <span class="ow">is</span> <span class="kc">None</span><span class="p">:</span>
+ <span class="k">raise</span> <span class="ne">TypeError</span><span class="p">(</span><span class="s1">'`BigQueryBaseCursor.run_query` missing 1 required '</span>
+ <span class="s1">'positional argument: `sql`'</span><span class="p">)</span>
+
+ <span class="c1"># BigQuery also allows you to define how you want a table's schema to change</span>
+ <span class="c1"># as a side effect of a query job</span>
+ <span class="c1"># for more details:</span>
+ <span class="c1"># https://cloud.google.com/bigquery/docs/reference/rest/v2/jobs#configuration.query.schemaUpdateOptions</span>
+ <span class="n">allowed_schema_update_options</span> <span class="o">=</span> <span class="p">[</span>
+ <span class="s1">'ALLOW_FIELD_ADDITION'</span><span class="p">,</span> <span class="s2">"ALLOW_FIELD_RELAXATION"</span>
+ <span class="p">]</span>
+ <span class="k">if</span> <span class="ow">not</span> <span class="nb">set</span><span class="p">(</span><span class="n">allowed_schema_update_options</span><span class="p">)</span><span class="o">.</span><span class="n">issuperset</span><span class="p">(</span>
+ <span class="nb">set</span><span class="p">(</span><span class="n">schema_update_options</span><span class="p">)):</span>
+ <span class="k">raise</span> <span class="ne">ValueError</span><span class="p">(</span>
+ <span class="s2">"</span><span class="si">{0}</span><span class="s2"> contains invalid schema update options. "</span>
+ <span class="s2">"Please only use one or more of the following options: </span><span class="si">{1}</span><span class="s2">"</span>
+ <span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">schema_update_options</span><span class="p">,</span> <span class="n">allowed_schema_update_options</span><span class="p">))</span>
+
+ <span class="k">if</span> <span class="n">use_legacy_sql</span> <span class="ow">is</span> <span class="kc">None</span><span class="p">:</span>
+ <span class="n">use_legacy_sql</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">use_legacy_sql</span>
+
+ <span class="n">configuration</span> <span class="o">=</span> <span class="p">{</span>
+ <span class="s1">'query'</span><span class="p">:</span> <span class="p">{</span>
+ <span class="s1">'query'</span><span class="p">:</span> <span class="n">sql</span><span class="p">,</span>
+ <span class="s1">'useLegacySql'</span><span class="p">:</span> <span class="n">use_legacy_sql</span><span class="p">,</span>
+ <span class="s1">'maximumBillingTier'</span><span class="p">:</span> <span class="n">maximum_billing_tier</span><span class="p">,</span>
+ <span class="s1">'maximumBytesBilled'</span><span class="p">:</span> <span class="n">maximum_bytes_billed</span><span class="p">,</span>
+ <span class="s1">'priority'</span><span class="p">:</span> <span class="n">priority</span>
+ <span class="p">}</span>
+ <span class="p">}</span>
+
+ <span class="k">if</span> <span class="n">destination_dataset_table</span><span class="p">:</span>
+ <span class="k">if</span> <span class="s1">'.'</span> <span class="ow">not</span> <span class="ow">in</span> <span class="n">destination_dataset_table</span><span class="p">:</span>
+ <span class="k">raise</span> <span class="ne">ValueError</span><span class="p">(</span>
+ <span class="s1">'Expected destination_dataset_table name in the format of '</span>
+ <span class="s1">'<dataset>.<table>. Got: </span><span class="si">{}</span><span class="s1">'</span><span class="o">.</span><span class="n">format</span><span class="p">(</span>
+ <span class="n">destination_dataset_table</span><span class="p">))</span>
+ <span class="n">destination_project</span><span class="p">,</span> <span class="n">destination_dataset</span><span class="p">,</span> <span class="n">destination_table</span> <span class="o">=</span> \
+ <span class="n">_split_tablename</span><span class="p">(</span><span class="n">table_input</span><span class="o">=</span><span class="n">destination_dataset_table</span><span class="p">,</span>
+ <span class="n">default_project_id</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">project_id</span><span class="p">)</span>
+ <span class="n">configuration</span><span class="p">[</span><span class="s1">'query'</span><span class="p">]</span><span class="o">.</span><span class="n">update</span><span class="p">({</span>
+ <span class="s1">'allowLargeResults'</span><span class="p">:</span> <span class="n">allow_large_results</span><span class="p">,</span>
+ <span class="s1">'flattenResults'</span><span class="p">:</span> <span class="n">flatten_results</span><span class="p">,</span>
+ <span class="s1">'writeDisposition'</span><span class="p">:</span> <span class="n">write_disposition</span><span class="p">,</span>
+ <span class="s1">'createDisposition'</span><span class="p">:</span> <span class="n">create_disposition</span><span class="p">,</span>
+ <span class="s1">'destinationTable'</span><span class="p">:</span> <span class="p">{</span>
+ <span class="s1">'projectId'</span><span class="p">:</span> <span class="n">destination_project</span><span class="p">,</span>
+ <span class="s1">'datasetId'</span><span class="p">:</span> <span class="n">destination_dataset</span><span class="p">,</span>
+ <span class="s1">'tableId'</span><span class="p">:</span> <span class="n">destination_table</span><span class="p">,</span>
+ <span class="p">}</span>
+ <span class="p">})</span>
+ <span class="k">if</span> <span class="n">udf_config</span><span class="p">:</span>
+ <span class="k">if</span> <span class="ow">not</span> <span class="nb">isinstance</span><span class="p">(</span><span class="n">udf_config</span><span class="p">,</span> <span class="nb">list</span><span class="p">):</span>
+ <span class="k">raise</span> <span class="ne">TypeError</span><span class="p">(</span><span class="s2">"udf_config argument must have a type 'list'"</span>
+ <span class="s2">" not </span><span class="si">{}</span><span class="s2">"</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="nb">type</span><span class="p">(</span><span class="n">udf_config</span><span class="p">)))</span>
+ <span class="n">configuration</span><span class="p">[</span><span class="s1">'query'</span><span class="p">]</span><span class="o">.</span><span class="n">update</span><span class="p">({</span>
+ <span class="s1">'userDefinedFunctionResources'</span><span class="p">:</span> <span class="n">udf_config</span>
+ <span class="p">})</span>
+
+ <span class="k">if</span> <span class="n">query_params</span><span class="p">:</span>
+ <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">use_legacy_sql</span><span class="p">:</span>
+ <span class="k">raise</span> <span class="ne">ValueError</span><span class="p">(</span><span class="s2">"Query paramaters are not allowed when using "</span>
+ <span class="s2">"legacy SQL"</span><span class="p">)</span>
+ <span class="k">else</span><span class="p">:</span>
+ <span class="n">configuration</span><span class="p">[</span><span class="s1">'query'</span><span class="p">][</span><span class="s1">'queryParameters'</span><span class="p">]</span> <span class="o">=</span> <span class="n">query_params</span>
+
+ <span class="k">if</span> <span class="n">labels</span><span class="p">:</span>
+ <span class="n">configuration</span><span class="p">[</span><span class="s1">'labels'</span><span class="p">]</span> <span class="o">=</span> <span class="n">labels</span>
+
+ <span class="n">time_partitioning</span> <span class="o">=</span> <span class="n">_cleanse_time_partitioning</span><span class="p">(</span>
+ <span class="n">destination_dataset_table</span><span class="p">,</span>
+ <span class="n">time_partitioning</span>
+ <span class="p">)</span>
+ <span class="k">if</span> <span class="n">time_partitioning</span><span class="p">:</span>
+ <span class="n">configuration</span><span class="p">[</span><span class="s1">'query'</span><span class="p">]</span><span class="o">.</span><span class="n">update</span><span class="p">({</span>
+ <span class="s1">'timePartitioning'</span><span class="p">:</span> <span class="n">time_partitioning</span>
+ <span class="p">})</span>
+
+ <span class="k">if</span> <span class="n">schema_update_options</span><span class="p">:</span>
+ <span class="k">if</span> <span class="n">write_disposition</span> <span class="ow">not</span> <span class="ow">in</span> <span class="p">[</span><span class="s2">"WRITE_APPEND"</span><span class="p">,</span> <span class="s2">"WRITE_TRUNCATE"</span><span class="p">]:</span>
+ <span class="k">raise</span> <span class="ne">ValueError</span><span class="p">(</span><span class="s2">"schema_update_options is only "</span>
+ <span class="s2">"allowed if write_disposition is "</span>
+ <span class="s2">"'WRITE_APPEND' or 'WRITE_TRUNCATE'."</span><span class="p">)</span>
+ <span class="k">else</span><span class="p">:</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">log</span><span class="o">.</span><span class="n">info</span><span class="p">(</span>
+ <span class="s2">"Adding experimental "</span>
+ <span class="s2">"'schemaUpdateOptions': </span><span class="si">{0}</span><span class="s2">"</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">schema_update_options</span><span class="p">))</span>
+ <span class="n">configuration</span><span class="p">[</span><span class="s1">'query'</span><span class="p">][</span>
+ <span class="s1">'schemaUpdateOptions'</span><span class="p">]</span> <span class="o">=</span> <span class="n">schema_update_options</span>
+
+ <span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">run_with_configuration</span><span class="p">(</span><span class="n">configuration</span><span class="p">)</span>
+
+ <span class="k">def</span> <span class="nf">run_extract</span><span class="p">(</span> <span class="c1"># noqa</span>
+ <span class="bp">self</span><span class="p">,</span>
+ <span class="n">source_project_dataset_table</span><span class="p">,</span>
+ <span class="n">destination_cloud_storage_uris</span><span class="p">,</span>
+ <span class="n">compression</span><span class="o">=</span><span class="s1">'NONE'</span><span class="p">,</span>
+ <span class="n">export_format</span><span class="o">=</span><span class="s1">'CSV'</span><span class="p">,</span>
+ <span class="n">field_delimiter</span><span class="o">=</span><span class="s1">','</span><span class="p">,</span>
+ <span class="n">print_header</span><span class="o">=</span><span class="kc">True</span><span class="p">,</span>
+ <span class="n">labels</span><span class="o">=</span><span class="kc">None</span><span class="p">):</span>
+ <span class="sd">"""</span>
+<span class="sd"> Executes a BigQuery extract command to copy data from BigQuery to</span>
+<span class="sd"> Google Cloud Storage. See here:</span>
+
+<span class="sd"> https://cloud.google.com/bigquery/docs/reference/v2/jobs</span>
+
+<span class="sd"> For more details about these parameters.</span>
+
+<span class="sd"> :param source_project_dataset_table: The dotted <dataset>.<table></span>
+<span class="sd"> BigQuery table to use as the source data.</span>
+<span class="sd"> :type source_project_dataset_table: string</span>
+<span class="sd"> :param destination_cloud_storage_uris: The destination Google Cloud</span>
+<span class="sd"> Storage URI (e.g. gs://some-bucket/some-file.txt). Follows</span>
+<span class="sd"> convention defined here:</span>
+<span class="sd"> https://cloud.google.com/bigquery/exporting-data-from-bigquery#exportingmultiple</span>
+<span class="sd"> :type destination_cloud_storage_uris: list</span>
+<span class="sd"> :param compression: Type of compression to use.</span>
+<span class="sd"> :type compression: string</span>
+<span class="sd"> :param export_format: File format to export.</span>
+<span class="sd"> :type export_format: string</span>
+<span class="sd"> :param field_delimiter: The delimiter to use when extracting to a CSV.</span>
+<span class="sd"> :type field_delimiter: string</span>
+<span class="sd"> :param print_header: Whether to print a header for a CSV file extract.</span>
+<span class="sd"> :type print_header: boolean</span>
+<span class="sd"> :param labels: a dictionary containing labels for the job/query,</span>
+<span class="sd"> passed to BigQuery</span>
+<span class="sd"> :type labels: dict</span>
+<span class="sd"> """</span>
+
+ <span class="n">source_project</span><span class="p">,</span> <span class="n">source_dataset</span><span class="p">,</span> <span class="n">source_table</span> <span class="o">=</span> \
+ <span class="n">_split_tablename</span><span class="p">(</span><span class="n">table_input</span><span class="o">=</span><span class="n">source_project_dataset_table</span><span class="p">,</span>
+ <span class="n">default_project_id</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">project_id</span><span class="p">,</span>
+ <span class="n">var_name</span><span class="o">=</span><span class="s1">'source_project_dataset_table'</span><span class="p">)</span>
+
+ <span class="n">configuration</span> <span class="o">=</span> <span class="p">{</span>
+ <span class="s1">'extract'</span><span class="p">:</span> <span class="p">{</span>
+ <span class="s1">'sourceTable'</span><span class="p">:</span> <span class="p">{</span>
+ <span class="s1">'projectId'</span><span class="p">:</span> <span class="n">source_project</span><span class="p">,</span>
+ <span class="s1">'datasetId'</span><span class="p">:</span> <span class="n">source_dataset</span><span class="p">,</span>
+ <span class="s1">'tableId'</span><span class="p">:</span> <span class="n">source_table</span><span class="p">,</span>
+ <span class="p">},</span>
+ <span class="s1">'compression'</span><span class="p">:</span> <span class="n">compression</span><span class="p">,</span>
+ <span class="s1">'destinationUris'</span><span class="p">:</span> <span class="n">destination_cloud_storage_uris</span><span class="p">,</span>
+ <span class="s1">'destinationFormat'</span><span class="p">:</span> <span class="n">export_format</span><span class="p">,</span>
+ <span class="p">}</span>
+ <span class="p">}</span>
+
+ <span class="k">if</span> <span class="n">labels</span><span class="p">:</span>
+ <span class="n">configuration</span><span class="p">[</span><span class="s1">'labels'</span><span class="p">]</span> <span class="o">=</span> <span class="n">labels</span>
+
+ <span class="k">if</span> <span class="n">export_format</span> <span class="o">==</span> <span class="s1">'CSV'</span><span class="p">:</span>
+ <span class="c1"># Only set fieldDelimiter and printHeader fields if using CSV.</span>
+ <span class="c1"># Google does not like it if you set these fields for other export</span>
+ <span class="c1"># formats.</span>
+ <span class="n">configuration</span><span class="p">[</span><span class="s1">'extract'</span><span class="p">][</span><span class="s1">'fieldDelimiter'</span><span class="p">]</span> <span class="o">=</span> <span class="n">field_delimiter</span>
+ <span class="n">configuration</span><span class="p">[</span><span class="s1">'extract'</span><span class="p">][</span><span class="s1">'printHeader'</span><span class="p">]</span> <span class="o">=</span> <span class="n">print_header</span>
+
+ <span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">run_with_configuration</span><span class="p">(</span><span class="n">configuration</span><span class="p">)</span>
+
+ <span class="k">def</span> <span class="nf">run_copy</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span>
+ <span class="n">source_project_dataset_tables</span><span class="p">,</span>
+ <span class="n">destination_project_dataset_table</span><span class="p">,</span>
+ <span class="n">write_disposition</span><span class="o">=</span><span class="s1">'WRITE_EMPTY'</span><span class="p">,</span>
+ <span class="n">create_disposition</span><span class="o">=</span><span class="s1">'CREATE_IF_NEEDED'</span><span class="p">,</span>
+ <span class="n">labels</span><span class="o">=</span><span class="kc">None</span><span class="p">):</span>
+ <span class="sd">"""</span>
+<span class="sd"> Executes a BigQuery copy command to copy data from one BigQuery table</span>
+<span class="sd"> to another. See here:</span>
+
+<span class="sd"> https://cloud.google.com/bigquery/docs/reference/v2/jobs#configuration.copy</span>
+
+<span class="sd"> For more details about these parameters.</span>
+
+<span class="sd"> :param source_project_dataset_tables: One or more dotted</span>
+<span class="sd"> (project:|project.)<dataset>.<table></span>
+<span class="sd"> BigQuery tables to use as the source data. Use a list if there are</span>
+<span class="sd"> multiple source tables.</span>
+<span class="sd"> If <project> is not included, project will be the project defined</span>
+<span class="sd"> in the connection json.</span>
+<span class="sd"> :type source_project_dataset_tables: list|string</span>
+<span class="sd"> :param destination_project_dataset_table: The destination BigQuery</span>
+<span class="sd"> table. Format is: (project:|project.)<dataset>.<table></span>
+<span class="sd"> :type destination_project_dataset_table: string</span>
+<span class="sd"> :param write_disposition: The write disposition if the table already exists.</span>
+<span class="sd"> :type write_disposition: string</span>
+<span class="sd"> :param create_disposition: The create disposition if the table doesn't exist.</span>
+<span class="sd"> :type create_disposition: string</span>
+<span class="sd"> :param labels a dictionary containing labels for the job/query,</span>
+<span class="sd"> passed to BigQuery</span>
+<span class="sd"> :type labels: dict</span>
+<span class="sd"> """</span>
+ <span class="n">source_project_dataset_tables</span> <span class="o">=</span> <span class="p">([</span>
+ <span class="n">source_project_dataset_tables</span>
+ <span class="p">]</span> <span class="k">if</span> <span class="ow">not</span> <span class="nb">isinstance</span><span class="p">(</span><span class="n">source_project_dataset_tables</span><span class="p">,</span> <span class="nb">list</span><span class="p">)</span> <span class="k">else</span>
+ <span class="n">source_project_dataset_tables</span><span class="p">)</span>
+
+ <span class="n">source_project_dataset_tables_fixup</span> <span class="o">=</span> <span class="p">[]</span>
+ <span class="k">for</span> <span class="n">source_project_dataset_table</span> <span class="ow">in</span> <span class="n">source_project_dataset_tables</span><span class="p">:</span>
+ <span class="n">source_project</span><span class="p">,</span> <span class="n">source_dataset</span><span class="p">,</span> <span class="n">source_table</span> <span class="o">=</span> \
+ <span class="n">_split_tablename</span><span class="p">(</span><span class="n">table_input</span><span class="o">=</span><span class="n">source_project_dataset_table</span><span class="p">,</span>
+ <span class="n">default_project_id</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">project_id</span><span class="p">,</span>
+ <span class="n">var_name</span><span class="o">=</span><span class="s1">'source_project_dataset_table'</span><span class="p">)</span>
+ <span class="n">source_project_dataset_tables_fixup</span><span class="o">.</span><span class="n">append</span><span class="p">({</span>
+ <span class="s1">'projectId'</span><span class="p">:</span>
+ <span class="n">source_project</span><span class="p">,</span>
+ <span class="s1">'datasetId'</span><span class="p">:</span>
+ <span class="n">source_dataset</span><span class="p">,</span>
+ <span class="s1">'tableId'</span><span class="p">:</span>
+ <span class="n">source_table</span>
+ <span class="p">})</span>
+
+ <span class="n">destination_project</span><span class="p">,</span> <span class="n">destination_dataset</span><span class="p">,</span> <span class="n">destination_table</span> <span class="o">=</span> \
+ <span class="n">_split_tablename</span><span class="p">(</span><span class="n">table_input</span><span class="o">=</span><span class="n">destination_project_dataset_table</span><span class="p">,</span>
+ <span class="n">default_project_id</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">project_id</span><span class="p">)</span>
+ <span class="n">configuration</span> <span class="o">=</span> <span class="p">{</span>
+ <span class="s1">'copy'</span><span class="p">:</span> <span class="p">{</span>
+ <span class="s1">'createDisposition'</span><span class="p">:</span> <span class="n">create_disposition</span><span class="p">,</span>
+ <span class="s1">'writeDisposition'</span><span class="p">:</span> <span class="n">write_disposition</span><span class="p">,</span>
+ <span class="s1">'sourceTables'</span><span class="p">:</span> <span class="n">source_project_dataset_tables_fixup</span><span class="p">,</span>
+ <span class="s1">'destinationTable'</span><span class="p">:</span> <span class="p">{</span>
+ <span class="s1">'projectId'</span><span class="p">:</span> <span class="n">destination_project</span><span class="p">,</span>
+ <span class="s1">'datasetId'</span><span class="p">:</span> <span class="n">destination_dataset</span><span class="p">,</span>
+ <span class="s1">'tableId'</span><span class="p">:</span> <span class="n">destination_table</span>
+ <span class="p">}</span>
+ <span class="p">}</span>
+ <span class="p">}</span>
+
+ <span class="k">if</span> <span class="n">labels</span><span class="p">:</span>
+ <span class="n">configuration</span><span class="p">[</span><span class="s1">'labels'</span><span class="p">]</span> <span class="o">=</span> <span class="n">labels</span>
+
+ <span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">run_with_configuration</span><span class="p">(</span><span class="n">configuration</span><span class="p">)</span>
+
+ <span class="k">def</span> <span class="nf">run_load</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span>
+ <span class="n">destination_project_dataset_table</span><span class="p">,</span>
+ <span class="n">schema_fields</span><span class="p">,</span>
+ <span class="n">source_uris</span><span class="p">,</span>
+ <span class="n">source_format</span><span class="o">=</span><span class="s1">'CSV'</span><span class="p">,</span>
+ <span class="n">create_disposition</span><span class="o">=</span><span class="s1">'CREATE_IF_NEEDED'</span><span class="p">,</span>
+ <span class="n">skip_leading_rows</span><span class="o">=</span><span class="mi">0</span><span class="p">,</span>
+ <span class="n">write_disposition</span><span class="o">=</span><span class="s1">'WRITE_EMPTY'</span><span class="p">,</span>
+ <span class="n">field_delimiter</span><span class="o">=</span><span class="s1">','</span><span class="p">,</span>
+ <span class="n">max_bad_records</span><span class="o">=</span><span class="mi">0</span><span class="p">,</span>
+ <span class="n">quote_character</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span>
+ <span class="n">ignore_unknown_values</span><span class="o">=</span><span class="kc">False</span><span class="p">,</span>
+ <span class="n">allow_quoted_newlines</span><span class="o">=</span><span class="kc">False</span><span class="p">,</span>
+ <span class="n">allow_jagged_rows</span><span class="o">=</span><span class="kc">False</span><span class="p">,</span>
+ <span class="n">schema_update_options</span><span class="o">=</span><span class="p">(),</span>
+ <span class="n">src_fmt_configs</span><span class="o">=</span><span class="p">{},</span>
+ <span class="n">time_partitioning</span><span class="o">=</span><span class="p">{}):</span>
+ <span class="sd">"""</span>
+<span class="sd"> Executes a BigQuery load command to load data from Google Cloud Storage</span>
+<span class="sd"> to BigQuery. See here:</span>
+
+<span class="sd"> https://cloud.google.com/bigquery/docs/reference/v2/jobs</span>
+
+<span class="sd"> For more details about these parameters.</span>
+
+<span class="sd"> :param destination_project_dataset_table:</span>
+<span class="sd"> The dotted (<project>.|<project>:)<dataset>.<table>($<partition>) BigQuery</span>
+<span class="sd"> table to load data into. If <project> is not included, project will be the</span>
+<span class="sd"> project defined in the connection json. If a partition is specified the</span>
+<span class="sd"> operator will automatically append the data, create a new partition or create</span>
+<span class="sd"> a new DAY partitioned table.</span>
+<span class="sd"> :type destination_project_dataset_table: string</span>
+<span class="sd"> :param schema_fields: The schema field list as defined here:</span>
+<span class="sd"> https://cloud.google.com/bigquery/docs/reference/v2/jobs#configuration.load</span>
+<span class="sd"> :type schema_fields: list</span>
+<span class="sd"> :param source_uris: The source Google Cloud</span>
+<span class="sd"> Storage URI (e.g. gs://some-bucket/some-file.txt). A single wild</span>
+<span class="sd"> per-object name can be used.</span>
+<span class="sd"> :type source_uris: list</span>
+<span class="sd"> :param source_format: File format to export.</span>
+<span class="sd"> :type source_format: string</span>
+<span class="sd"> :param create_disposition: The create disposition if the table doesn't exist.</span>
+<span class="sd"> :type create_disposition: string</span>
+<span class="sd"> :param skip_leading_rows: Number of rows to skip when loading from a CSV.</span>
+<span class="sd"> :type skip_leading_rows: int</span>
+<span class="sd"> :param write_disposition: The write disposition if the table already exists.</span>
+<span class="sd"> :type write_disposition: string</span>
+<span class="sd"> :param field_delimiter: The delimiter to use when loading from a CSV.</span>
+<span class="sd"> :type field_delimiter: string</span>
+<span class="sd"> :param max_bad_records: The maximum number of bad records that BigQuery can</span>
+<span class="sd"> ignore when running the job.</span>
+<span class="sd"> :type max_bad_records: int</span>
+<span class="sd"> :param quote_character: The value that is used to quote data sections in a CSV</span>
+<span class="sd"> file.</span>
+<span class="sd"> :type quote_character: string</span>
+<span class="sd"> :param ignore_unknown_values: [Optional] Indicates if BigQuery should allow</span>
+<span class="sd"> extra values that are not represented in the table schema.</span>
+<span class="sd"> If true, the extra values are ignored. If false, records with extra columns</span>
+<span class="sd"> are treated as bad records, and if there are too many bad records, an</span>
+<span class="sd"> invalid error is returned in the job result.</span>
+<span class="sd"> :type ignore_unknown_values: bool</span>
+<span class="sd"> :param allow_quoted_newlines: Whether to allow quoted newlines (true) or not</span>
+<span class="sd"> (false).</span>
+<span class="sd"> :type allow_quoted_newlines: boolean</span>
+<span class="sd"> :param allow_jagged_rows: Accept rows that are missing trailing optional columns.</span>
+<span class="sd"> The missing values are treated as nulls. If false, records with missing</span>
+<span class="sd"> trailing columns are treated as bad records, and if there are too many bad</span>
+<span class="sd"> records, an invalid error is returned in the job result. Only applicable when</span>
+<span class="sd"> soure_format is CSV.</span>
+<span class="sd"> :type allow_jagged_rows: bool</span>
+<span class="sd"> :param schema_update_options: Allows the schema of the desitination</span>
+<span class="sd"> table to be updated as a side effect of the load job.</span>
+<span class="sd"> :type schema_update_options: tuple</span>
+<span class="sd"> :param src_fmt_configs: configure optional fields specific to the source format</span>
+<span class="sd"> :type src_fmt_configs: dict</span>
+<span class="sd"> :param time_partitioning: configure optional time partitioning fields i.e.</span>
+<span class="sd"> partition by field, type and expiration as per API specifications.</span>
+<span class="sd"> :type time_partitioning: dict</span>
+<span class="sd"> """</span>
+
+ <span class="c1"># bigquery only allows certain source formats</span>
+ <span class="c1"># we check to make sure the passed source format is valid</span>
+ <span class="c1"># if it's not, we raise a ValueError</span>
+ <span class="c1"># Refer to this link for more details:</span>
+ <span class="c1"># https://cloud.google.com/bigquery/docs/reference/rest/v2/jobs#configuration.query.tableDefinitions.(key).sourceFormat</span>
+ <span class="n">source_format</span> <span class="o">=</span> <span class="n">source_format</span><span class="o">.</span><span class="n">upper</span><span class="p">()</span>
+ <span class="n">allowed_formats</span> <span class="o">=</span> <span class="p">[</span>
+ <span class="s2">"CSV"</span><span class="p">,</span> <span class="s2">"NEWLINE_DELIMITED_JSON"</span><span class="p">,</span> <span class="s2">"AVRO"</span><span class="p">,</span> <span class="s2">"GOOGLE_SHEETS"</span><span class="p">,</span>
+ <span class="s2">"DATASTORE_BACKUP"</span><span class="p">,</span> <span class="s2">"PARQUET"</span>
+ <span class="p">]</span>
+ <span class="k">if</span> <span class="n">source_format</span> <span class="ow">not</span> <span class="ow">in</span> <span class="n">allowed_formats</span><span class="p">:</span>
+ <span class="k">raise</span> <span class="ne">ValueError</span><span class="p">(</span><span class="s2">"</span><span class="si">{0}</span><span class="s2"> is not a valid source format. "</span>
+ <span class="s2">"Please use one of the following types: </span><span class="si">{1}</span><span class="s2">"</span>
+ <span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">source_format</span><span class="p">,</span> <span class="n">allowed_formats</span><span class="p">))</span>
+
+ <span class="c1"># bigquery also allows you to define how you want a table's schema to change</span>
+ <span class="c1"># as a side effect of a load</span>
+ <span class="c1"># for more details:</span>
+ <span class="c1"># https://cloud.google.com/bigquery/docs/reference/rest/v2/jobs#configuration.load.schemaUpdateOptions</span>
+ <span class="n">allowed_schema_update_options</span> <span class="o">=</span> <span class="p">[</span>
+ <span class="s1">'ALLOW_FIELD_ADDITION'</span><span class="p">,</span> <span class="s2">"ALLOW_FIELD_RELAXATION"</span>
+ <span class="p">]</span>
+ <span class="k">if</span> <span class="ow">not</span> <span class="nb">set</span><span class="p">(</span><span class="n">allowed_schema_update_options</span><span class="p">)</span><span class="o">.</span><span class="n">issuperset</span><span class="p">(</span>
+ <span class="nb">set</span><span class="p">(</span><span class="n">schema_update_options</span><span class="p">)):</span>
+ <span class="k">raise</span> <span class="ne">ValueError</span><span class="p">(</span>
+ <span class="s2">"</span><span class="si">{0}</span><span class="s2"> contains invalid schema update options. "</span>
+ <span class="s2">"Please only use one or more of the following options: </span><span class="si">{1}</span><span class="s2">"</span>
+ <span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">schema_update_options</span><span class="p">,</span> <span class="n">allowed_schema_update_options</span><span class="p">))</span>
+
+ <span class="n">destination_project</span><span class="p">,</span> <span class="n">destination_dataset</span><span class="p">,</span> <span class="n">destination_table</span> <span class="o">=</span> \
+ <span class="n">_split_tablename</span><span class="p">(</span><span class="n">table_input</span><span class="o">=</span><span class="n">destination_project_dataset_table</span><span class="p">,</span>
+ <span class="n">default_project_id</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">project_id</span><span class="p">,</span>
+ <span class="n">var_name</span><span class="o">=</span><span class="s1">'destination_project_dataset_table'</span><span class="p">)</span>
+
+ <span class="n">configuration</span> <span class="o">=</span> <span class="p">{</span>
+ <span class="s1">'load'</span><span class="p">:</span> <span class="p">{</span>
+ <span class="s1">'createDisposition'</span><span class="p">:</span> <span class="n">create_disposition</span><span class="p">,</span>
+ <span class="s1">'destinationTable'</span><span class="p">:</span> <span class="p">{</span>
+ <span class="s1">'projectId'</span><span class="p">:</span> <span class="n">destination_project</span><span class="p">,</span>
+ <span class="s1">'datasetId'</span><span class="p">:</span> <span class="n">destination_dataset</span><span class="p">,</span>
+ <span class="s1">'tableId'</span><span class="p">:</span> <span class="n">destination_table</span><span class="p">,</span>
+ <span class="p">},</span>
+ <span class="s1">'sourceFormat'</span><span class="p">:</span> <span class="n">source_format</span><span class="p">,</span>
+ <span class="s1">'sourceUris'</span><span class="p">:</span> <span class="n">source_uris</span><span class="p">,</span>
+ <span class="s1">'writeDisposition'</span><span class="p">:</span> <span class="n">write_disposition</span><span class="p">,</span>
+ <span class="s1">'ignoreUnknownValues'</span><span class="p">:</span> <span class="n">ignore_unknown_values</span>
+ <span class="p">}</span>
+ <span class="p">}</span>
+
+ <span class="n">time_partitioning</span> <span class="o">=</span> <span class="n">_cleanse_time_partitioning</span><span class="p">(</span>
+ <span class="n">destination_project_dataset_table</span><span class="p">,</span>
+ <span class="n">time_partitioning</span>
+ <span class="p">)</span>
+ <span class="k">if</span> <span class="n">time_partitioning</span><span class="p">:</span>
+ <span class="n">configuration</span><span class="p">[</span><span class="s1">'load'</span><span class="p">]</span><span class="o">.</span><span class="n">update</span><span class="p">({</span>
+ <span class="s1">'timePartitioning'</span><span class="p">:</span> <span class="n">time_partitioning</span>
+ <span class="p">})</span>
+
+ <span class="k">if</span> <span class="n">schema_fields</span><span class="p">:</span>
+ <span class="n">configuration</span><span class="p">[</span><span class="s1">'load'</span><span class="p">][</span><span class="s1">'schema'</span><span class="p">]</span> <span class="o">=</span> <span class="p">{</span><span class="s1">'fields'</span><span class="p">:</span> <span class="n">schema_fields</span><span class="p">}</span>
+
+ <span class="k">if</span> <span class="n">schema_update_options</span><span class="p">:</span>
+ <span class="k">if</span> <span class="n">write_disposition</span> <span class="ow">not</span> <span class="ow">in</span> <span class="p">[</span><span class="s2">"WRITE_APPEND"</span><span class="p">,</span> <span class="s2">"WRITE_TRUNCATE"</span><span class="p">]:</span>
+ <span class="k">raise</span> <span class="ne">ValueError</span><span class="p">(</span><span class="s2">"schema_update_options is only "</span>
+ <span class="s2">"allowed if write_disposition is "</span>
+ <span class="s2">"'WRITE_APPEND' or 'WRITE_TRUNCATE'."</span><span class="p">)</span>
+ <span class="k">else</span><span class="p">:</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">log</span><span class="o">.</span><span class="n">info</span><span class="p">(</span>
+ <span class="s2">"Adding experimental "</span>
+ <span class="s2">"'schemaUpdateOptions': </span><span class="si">{0}</span><span class="s2">"</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">schema_update_options</span><span class="p">))</span>
+ <span class="n">configuration</span><span class="p">[</span><span class="s1">'load'</span><span class="p">][</span>
+ <span class="s1">'schemaUpdateOptions'</span><span class="p">]</span> <span class="o">=</span> <span class="n">schema_update_options</span>
+
+ <span class="k">if</span> <span class="n">max_bad_records</span><span class="p">:</span>
+ <span class="n">configuration</span><span class="p">[</span><span class="s1">'load'</span><span class="p">][</span><span class="s1">'maxBadRecords'</span><span class="p">]</span> <span class="o">=</span> <span class="n">max_bad_records</span>
+
+ <span class="c1"># if following fields are not specified in src_fmt_configs,</span>
+ <span class="c1"># honor the top-level params for backward-compatibility</span>
+ <span class="k">if</span> <span class="s1">'skipLeadingRows'</span> <span class="ow">not</span> <span class="ow">in</span> <span class="n">src_fmt_configs</span><span class="p">:</span>
+ <span class="n">src_fmt_configs</span><span class="p">[</span><span class="s1">'skipLeadingRows'</span><span class="p">]</span> <span class="o">=</span> <span class="n">skip_leading_rows</span>
+ <span class="k">if</span> <span class="s1">'fieldDelimiter'</span> <span class="ow">not</span> <span class="ow">in</span> <span class="n">src_fmt_configs</span><span class="p">:</span>
+ <span class="n">src_fmt_configs</span><span class="p">[</span><span class="s1">'fieldDelimiter'</span><span class="p">]</span> <span class="o">=</span> <span class="n">field_delimiter</span>
+ <span class="k">if</span> <span class="s1">'ignoreUnknownValues'</span> <span class="ow">not</span> <span class="ow">in</span> <span class="n">src_fmt_configs</span><span class="p">:</span>
+ <span class="n">src_fmt_configs</span><span class="p">[</span><span class="s1">'ignoreUnknownValues'</span><span class="p">]</span> <span class="o">=</span> <span class="n">ignore_unknown_values</span>
+ <span class="k">if</span> <span class="n">quote_character</span> <span class="ow">is</span> <span class="ow">not</span> <span class="kc">None</span><span class="p">:</span>
+ <span class="n">src_fmt_configs</span><span class="p">[</span><span class="s1">'quote'</span><span class="p">]</span> <span class="o">=</span> <span class="n">quote_character</span>
+ <span class="k">if</span> <span class="n">allow_quoted_newlines</span><span class="p">:</span>
+ <span class="n">src_fmt_configs</span><span class="p">[</span><span class="s1">'allowQuotedNewlines'</span><span class="p">]</span> <span class="o">=</span> <span class="n">allow_quoted_newlines</span>
+
+ <span class="n">src_fmt_to_configs_mapping</span> <span class="o">=</span> <span class="p">{</span>
+ <span class="s1">'CSV'</span><span class="p">:</span> <span class="p">[</span>
+ <span class="s1">'allowJaggedRows'</span><span class="p">,</span> <span class="s1">'allowQuotedNewlines'</span><span class="p">,</span> <span class="s1">'autodetect'</span><span class="p">,</span>
+ <span class="s1">'fieldDelimiter'</span><span class="p">,</span> <span class="s1">'skipLeadingRows'</span><span class="p">,</span> <span class="s1">'ignoreUnknownValues'</span><span class="p">,</span>
+ <span class="s1">'nullMarker'</span><span class="p">,</span> <span class="s1">'quote'</span>
+ <span class="p">],</span>
+ <span class="s1">'DATASTORE_BACKUP'</span><span class="p">:</span> <span class="p">[</span><span class="s1">'projectionFields'</span><span class="p">],</span>
+ <span class="s1">'NEWLINE_DELIMITED_JSON'</span><span class="p">:</span> <span class="p">[</span><span class="s1">'autodetect'</span><span class="p">,</span> <span class="s1">'ignoreUnknownValues'</span><span class="p">],</span>
+ <span class="s1">'PARQUET'</span><span class="p">:</span> <span class="p">[</span><span class="s1">'autodetect'</span><span class="p">,</span> <span class="s1">'ignoreUnknownValues'</span><span class="p">],</span>
+ <span class="s1">'AVRO'</span><span class="p">:</span> <span class="p">[],</span>
+ <span class="p">}</span>
+ <span class="n">valid_configs</span> <span class="o">=</span> <span class="n">src_fmt_to_configs_mapping</span><span class="p">[</span><span class="n">source_format</span><span class="p">]</span>
+ <span class="n">src_fmt_configs</span> <span class="o">=</span> <span class="p">{</span>
+ <span class="n">k</span><span class="p">:</span> <span class="n">v</span>
+ <span class="k">for</span> <span class="n">k</span><span class="p">,</span> <span class="n">v</span> <span class="ow">in</span> <span class="n">src_fmt_configs</span><span class="o">.</span><span class="n">items</span><span class="p">()</span> <span class="k">if</span> <span class="n">k</span> <span class="ow">in</span> <span class="n">valid_configs</span>
+ <span class="p">}</span>
+ <span class="n">configuration</span><span class="p">[</span><span class="s1">'load'</span><span class="p">]</span><span class="o">.</span><span class="n">update</span><span class="p">(</span><span class="n">src_fmt_configs</span><span class="p">)</span>
+
+ <span class="k">if</span> <span class="n">allow_jagged_rows</span><span class="p">:</span>
+ <span class="n">configuration</span><span class="p">[</span><span class="s1">'load'</span><span class="p">][</span><span class="s1">'allowJaggedRows'</span><span class="p">]</span> <span class="o">=</span> <span class="n">allow_jagged_rows</span>
+
+ <span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">run_with_configuration</span><span class="p">(</span><span class="n">configuration</span><span class="p">)</span>
+
+ <span class="k">def</span> <span class="nf">run_with_configuration</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">configuration</span><span class="p">):</span>
+ <span class="sd">"""</span>
+<span class="sd"> Executes a BigQuery SQL query. See here:</span>
+
+<span class="sd"> https://cloud.google.com/bigquery/docs/reference/v2/jobs</span>
+
+<span class="sd"> For more details about the configuration parameter.</span>
+
+<span class="sd"> :param configuration: The configuration parameter maps directly to</span>
+<span class="sd"> BigQuery's configuration field in the job object. See</span>
+<span class="sd"> https://cloud.google.com/bigquery/docs/reference/v2/jobs for</span>
+<span class="sd"> details.</span>
+<span class="sd"> """</span>
+ <span class="n">jobs</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">service</span><span class="o">.</span><span class="n">jobs</span><span class="p">()</span>
+ <span class="n">job_data</span> <span class="o">=</span> <span class="p">{</span><span class="s1">'configuration'</span><span class="p">:</span> <span class="n">configuration</span><span class="p">}</span>
+
+ <span class="c1"># Send query and wait for reply.</span>
+ <span class="n">query_reply</span> <span class="o">=</span> <span class="n">jobs</span> \
+ <span class="o">.</span><span class="n">insert</span><span class="p">(</span><span class="n">projectId</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">project_id</span><span class="p">,</span> <span class="n">body</span><span class="o">=</span><span class="n">job_data</span><span class="p">)</span> \
+ <span class="o">.</span><span class="n">execute</span><span class="p">()</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">running_job_id</span> <span class="o">=</span> <span class="n">query_reply</span><span class="p">[</span><span class="s1">'jobReference'</span><span class="p">][</span><span class="s1">'jobId'</span><span class="p">]</span>
+
+ <span class="c1"># Wait for query to finish.</span>
+ <span class="n">keep_polling_job</span> <span class="o">=</span> <span class="kc">True</span>
+ <span class="k">while</span> <span class="p">(</span><span class="n">keep_polling_job</span><span class="p">):</span>
+ <span class="k">try</span><span class="p">:</span>
+ <span class="n">job</span> <span class="o">=</span> <span class="n">jobs</span><span class="o">.</span><span class="n">get</span><span class="p">(</span>
+ <span class="n">projectId</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">project_id</span><span class="p">,</span>
+ <span class="n">jobId</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">running_job_id</span><span class="p">)</span><span class="o">.</span><span class="n">execute</span><span class="p">()</span>
+ <span class="k">if</span> <span class="p">(</span><span class="n">job</span><span class="p">[</span><span class="s1">'status'</span><span class="p">][</span><span class="s1">'state'</span><span class="p">]</span> <span class="o">==</span> <span class="s1">'DONE'</span><span class="p">):</span>
+ <span class="n">keep_polling_job</span> <span class="o">=</span> <span class="kc">False</span>
+ <span class="c1"># Check if job had errors.</span>
+ <span class="k">if</span> <span class="s1">'errorResult'</span> <span class="ow">in</span> <span class="n">job</span><span class="p">[</span><span class="s1">'status'</span><span class="p">]:</span>
+ <span class="k">raise</span> <span class="ne">Exception</span><span class="p">(</span>
+ <span class="s1">'BigQuery job failed. Final error was: </span><span class="si">{}</span><span class="s1">. The job was: </span><span class="si">{}</span><span class="s1">'</span><span class="o">.</span>
+ <span class="nb">format</span><span class="p">(</span><span class="n">job</span><span class="p">[</span><span class="s1">'status'</span><span class="p">][</span><span class="s1">'errorResult'</span><span class="p">],</span> <span class="n">job</span><span class="p">))</span>
+ <span class="k">else</span><span class="p">:</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">log</span><span class="o">.</span><span class="n">info</span><span class="p">(</span><span class="s1">'Waiting for job to complete : </span><span class="si">%s</span><span class="s1">, </span><span class="si">%s</span><span class="s1">'</span><span class="p">,</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">project_id</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">running_job_id</span><span class="p">)</span>
+ <span class="n">time</span><span class="o">.</span><span class="n">sleep</span><span class="p">(</span><span class="mi">5</span><span class="p">)</span>
+
+ <span class="k">except</span> <span class="n">HttpError</span> <span class="k">as</span> <span class="n">err</span><span class="p">:</span>
+ <span class="k">if</span> <span class="n">err</span><span class="o">.</span><span class="n">resp</span><span class="o">.</span><span class="n">status</span> <span class="ow">in</span> <span class="p">[</span><span class="mi">500</span><span class="p">,</span> <span class="mi">503</span><span class="p">]:</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">log</span><span class="o">.</span><span class="n">info</span><span class="p">(</span>
+ <span class="s1">'</span><span class="si">%s</span><span class="s1">: Retryable error, waiting for job to complete: </span><span class="si">%s</span><span class="s1">'</span><span class="p">,</span>
+ <span class="n">err</span><span class="o">.</span><span class="n">resp</span><span class="o">.</span><span class="n">status</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">running_job_id</span><span class="p">)</span>
+ <span class="n">time</span><span class="o">.</span><span class="n">sleep</span><span class="p">(</span><span class="mi">5</span><span class="p">)</span>
+ <span class="k">else</span><span class="p">:</span>
+ <span class="k">raise</span> <span class="ne">Exception</span><span class="p">(</span>
+ <span class="s1">'BigQuery job status check failed. Final error was: </span><span class="si">%s</span><span class="s1">'</span><span class="p">,</span>
+ <span class="n">err</span><span class="o">.</span><span class="n">resp</span><span class="o">.</span><span class="n">status</span><span class="p">)</span>
+
+ <span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">running_job_id</span>
+
+ <span class="k">def</span> <span class="nf">poll_job_complete</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">job_id</span><span class="p">):</span>
+ <span class="n">jobs</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">service</span><span class="o">.</span><span class="n">jobs</span><span class="p">()</span>
+ <span class="k">try</span><span class="p">:</span>
+ <span class="n">job</span> <span class="o">=</span> <span class="n">jobs</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="n">projectId</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">project_id</span><span class="p">,</span> <span class="n">jobId</span><span class="o">=</span><span class="n">job_id</span><span class="p">)</span><span class="o">.</span><span class="n">execute</span><s [...]
+ <span class="k">if</span> <span class="p">(</span><span class="n">job</span><span class="p">[</span><span class="s1">'status'</span><span class="p">][</span><span class="s1">'state'</span><span class="p">]</span> <span class="o">==</span> <span class="s1">'DONE'</span><span class="p">):</span>
+ <span class="k">return</span> <span class="kc">True</span>
+ <span class="k">except</span> <span class="n">HttpError</span> <span class="k">as</span> <span class="n">err</span><span class="p">:</span>
+ <span class="k">if</span> <span class="n">err</span><span class="o">.</span><span class="n">resp</span><span class="o">.</span><span class="n">status</span> <span class="ow">in</span> <span class="p">[</span><span class="mi">500</span><span class="p">,</span> <span class="mi">503</span><span class="p">]:</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">log</span><span class="o">.</span><span class="n">info</span><span class="p">(</span>
+ <span class="s1">'</span><span class="si">%s</span><span class="s1">: Retryable error while polling job with id </span><span class="si">%s</span><span class="s1">'</span><span class="p">,</span>
+ <span class="n">err</span><span class="o">.</span><span class="n">resp</span><span class="o">.</span><span class="n">status</span><span class="p">,</span> <span class="n">job_id</span><span class="p">)</span>
+ <span class="k">else</span><span class="p">:</span>
+ <span class="k">raise</span> <span class="ne">Exception</span><span class="p">(</span>
+ <span class="s1">'BigQuery job status check failed. Final error was: </span><span class="si">%s</span><span class="s1">'</span><span class="p">,</span>
+ <span class="n">err</span><span class="o">.</span><span class="n">resp</span><span class="o">.</span><span class="n">status</span><span class="p">)</span>
+ <span class="k">return</span> <span class="kc">False</span>
+
+ <span class="k">def</span> <span class="nf">cancel_query</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
+ <span class="sd">"""</span>
+<span class="sd"> Cancel all started queries that have not yet completed</span>
+<span class="sd"> """</span>
+ <span class="n">jobs</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">service</span><span class="o">.</span><span class="n">jobs</span><span class="p">()</span>
+ <span class="k">if</span> <span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">running_job_id</span> <span class="ow">and</span>
+ <span class="ow">not</span> <span class="bp">self</span><span class="o">.</span><span class="n">poll_job_complete</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">running_job_id</span><span class="p">)):</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">log</span><span class="o">.</span><span class="n">info</span><span class="p">(</span><span class="s1">'Attempting to cancel job : </span><span class="si">%s</span><span class="s1">, </span><span class="si">%s</span><span class="s1">'</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">project_id</span><span class="p">,</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">running_job_id</span><span class="p">)</span>
+ <span class="n">jobs</span><span class="o">.</span><span class="n">cancel</span><span class="p">(</span>
+ <span class="n">projectId</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">project_id</span><span class="p">,</span>
+ <span class="n">jobId</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">running_job_id</span><span class="p">)</span><span class="o">.</span><span class="n">execute</span><span class="p">()</span>
+ <span class="k">else</span><span class="p">:</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">log</span><span class="o">.</span><span class="n">info</span><span class="p">(</span><span class="s1">'No running BigQuery jobs to cancel.'</span><span class="p">)</span>
+ <span class="k">return</span>
+
+ <span class="c1"># Wait for all the calls to cancel to finish</span>
+ <span class="n">max_polling_attempts</span> <span class="o">=</span> <span class="mi">12</span>
+ <span class="n">polling_attempts</span> <span class="o">=</span> <span class="mi">0</span>
+
+ <span class="n">job_complete</span> <span class="o">=</span> <span class="kc">False</span>
+ <span class="k">while</span> <span class="p">(</span><span class="n">polling_attempts</span> <span class="o"><</span> <span class="n">max_polling_attempts</span> <span class="ow">and</span> <span class="ow">not</span> <span class="n">job_complete</span><span class="p">):</span>
+ <span class="n">polling_attempts</span> <span class="o">=</span> <span class="n">polling_attempts</span> <span class="o">+</span> <span class="mi">1</span>
+ <span class="n">job_complete</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">poll_job_complete</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">running_job_id</span><span class="p">)</span>
+ <span class="k">if</span> <span class="p">(</span><span class="n">job_complete</span><span class="p">):</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">log</span><span class="o">.</span><span class="n">info</span><span class="p">(</span><span class="s1">'Job successfully canceled: </span><span class="si">%s</span><span class="s1">, </span><span class="si">%s</span><span class="s1">'</span><span class="p">,</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">project_id</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">running_job_id</span><span class="p">)</span>
+ <span class="k">elif</span> <span class="p">(</span><span class="n">polling_attempts</span> <span class="o">==</span> <span class="n">max_polling_attempts</span><span class="p">):</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">log</span><span class="o">.</span><span class="n">info</span><span class="p">(</span>
+ <span class="s2">"Stopping polling due to timeout. Job with id </span><span class="si">%s</span><span class="s2"> "</span>
+ <span class="s2">"has not completed cancel and may or may not finish."</span><span class="p">,</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">running_job_id</span><span class="p">)</span>
+ <span class="k">else</span><span class="p">:</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">log</span><span class="o">.</span><span class="n">info</span><span class="p">(</span><span class="s1">'Waiting for canceled job with id </span><span class="si">%s</span><span class="s1"> to finish.'</span><span class="p">,</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">running_job_id</span><span class="p">)</span>
+ <span class="n">time</span><span class="o">.</span><span class="n">sleep</span><span class="p">(</span><span class="mi">5</span><span class="p">)</span>
+
+ <span class="k">def</span> <span class="nf">get_schema</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">dataset_id</span><span class="p">,</span> <span class="n">table_id</span><span class="p">):</span>
+ <span class="sd">"""</span>
+<span class="sd"> Get the schema for a given datset.table.</span>
+<span class="sd"> see https://cloud.google.com/bigquery/docs/reference/v2/tables#resource</span>
+
+<span class="sd"> :param dataset_id: the dataset ID of the requested table</span>
+<span class="sd"> :param table_id: the table ID of the requested table</span>
+<span class="sd"> :return: a table schema</span>
+<span class="sd"> """</span>
+ <span class="n">tables_resource</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">service</span><span class="o">.</span><span class="n">tables</span><span class="p">()</span> \
+ <span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="n">projectId</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">project_id</span><span class="p">,</span> <span class="n">datasetId</span><span class="o">=</span><span class="n">dataset_id</span><span class="p">,</span> <span class="n">tableId</span><span class="o">=</span><span class="n">table_id</span><span class="p">)</span> \
+ <span class="o">.</span><span class="n">execute</span><span class="p">()</span>
+ <span class="k">return</span> <span class="n">tables_resource</span><span class="p">[</span><span class="s1">'schema'</span><span class="p">]</span>
+
+ <span class="k">def</span> <span class="nf">get_tabledata</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">dataset_id</span><span class="p">,</span> <span class="n">table_id</span><span class="p">,</span>
+ <span class="n">max_results</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span> <span class="n">selected_fields</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span> <span class="n">page_token</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span>
+ <span class="n">start_index</span><span class="o">=</span><span class="kc">None</span><span class="p">):</span>
+ <span class="sd">"""</span>
+<span class="sd"> Get the data of a given dataset.table and optionally with selected columns.</span>
+<span class="sd"> see https://cloud.google.com/bigquery/docs/reference/v2/tabledata/list</span>
+
+<span class="sd"> :param dataset_id: the dataset ID of the requested table.</span>
+<span class="sd"> :param table_id: the table ID of the requested table.</span>
+<span class="sd"> :param max_results: the maximum results to return.</span>
+<span class="sd"> :param selected_fields: List of fields to return (comma-separated). If</span>
+<span class="sd"> unspecified, all fields are returned.</span>
+<span class="sd"> :param page_token: page token, returned from a previous call,</span>
+<span class="sd"> identifying the result set.</span>
+<span class="sd"> :param start_index: zero based index of the starting row to read.</span>
+<span class="sd"> :return: map containing the requested rows.</span>
+<span class="sd"> """</span>
+ <span class="n">optional_params</span> <span class="o">=</span> <span class="p">{}</span>
+ <span class="k">if</span> <span class="n">max_results</span><span class="p">:</span>
+ <span class="n">optional_params</span><span class="p">[</span><span class="s1">'maxResults'</span><span class="p">]</span> <span class="o">=</span> <span class="n">max_results</span>
+ <span class="k">if</span> <span class="n">selected_fields</span><span class="p">:</span>
+ <span class="n">optional_params</span><span class="p">[</span><span class="s1">'selectedFields'</span><span class="p">]</span> <span class="o">=</span> <span class="n">selected_fields</span>
+ <span class="k">if</span> <span class="n">page_token</span><span class="p">:</span>
+ <span class="n">optional_params</span><span class="p">[</span><span class="s1">'pageToken'</span><span class="p">]</span> <span class="o">=</span> <span class="n">page_token</span>
+ <span class="k">if</span> <span class="n">start_index</span><span class="p">:</span>
+ <span class="n">optional_params</span><span class="p">[</span><span class="s1">'startIndex'</span><span class="p">]</span> <span class="o">=</span> <span class="n">start_index</span>
+ <span class="k">return</span> <span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">service</span><span class="o">.</span><span class="n">tabledata</span><span class="p">()</span><span class="o">.</span><span class="n">list</span><span class="p">(</span>
+ <span class="n">projectId</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">project_id</span><span class="p">,</span>
+ <span class="n">datasetId</span><span class="o">=</span><span class="n">dataset_id</span><span class="p">,</span>
+ <span class="n">tableId</span><span class="o">=</span><span class="n">table_id</span><span class="p">,</span>
+ <span class="o">**</span><span class="n">optional_params</span><span class="p">)</span><span class="o">.</span><span class="n">execute</span><span class="p">())</span>
+
+ <span class="k">def</span> <span class="nf">run_table_delete</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">deletion_dataset_table</span><span class="p">,</span>
+ <span class="n">ignore_if_missing</span><span class="o">=</span><span class="kc">False</span><span class="p">):</span>
+ <span class="sd">"""</span>
+<span class="sd"> Delete an existing table from the dataset;</span>
+<span class="sd"> If the table does not exist, return an error unless ignore_if_missing</span>
+<span class="sd"> is set to True.</span>
+
+<span class="sd"> :param deletion_dataset_table: A dotted</span>
+<span class="sd"> (<project>.|<project>:)<dataset>.<table> that indicates which table</span>
+<span class="sd"> will be deleted.</span>
+<span class="sd"> :type deletion_dataset_table: str</span>
+<span class="sd"> :param ignore_if_missing: if True, then return success even if the</span>
+<span class="sd"> requested table does not exist.</span>
+<span class="sd"> :type ignore_if_missing: boolean</span>
+<span class="sd"> :return:</span>
+<span class="sd"> """</span>
+ <span class="k">if</span> <span class="s1">'.'</span> <span class="ow">not</span> <span class="ow">in</span> <span class="n">deletion_dataset_table</span><span class="p">:</span>
+ <span class="k">raise</span> <span class="ne">ValueError</span><span class="p">(</span>
+ <span class="s1">'Expected deletion_dataset_table name in the format of '</span>
+ <span class="s1">'<dataset>.<table>. Got: </span><span class="si">{}</span><span class="s1">'</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">deletion_dataset_table</span><span class="p">))</span>
+ <span class="n">deletion_project</span><span class="p">,</span> <span class="n">deletion_dataset</span><span class="p">,</span> <span class="n">deletion_table</span> <span class="o">=</span> \
+ <span class="n">_split_tablename</span><span class="p">(</span><span class="n">table_input</span><span class="o">=</span><span class="n">deletion_dataset_table</span><span class="p">,</span>
+ <span class="n">default_project_id</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">project_id</span><span class="p">)</span>
+
+ <span class="k">try</span><span class="p">:</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">service</span><span class="o">.</span><span class="n">tables</span><span class="p">()</span> \
+ <span class="o">.</span><span class="n">delete</span><span class="p">(</span><span class="n">projectId</span><span class="o">=</span><span class="n">deletion_project</span><span class="p">,</span>
+ <span class="n">datasetId</span><span class="o">=</span><span class="n">deletion_dataset</span><span class="p">,</span>
+ <span class="n">tableId</span><span class="o">=</span><span class="n">deletion_table</span><span class="p">)</span> \
+ <span class="o">.</span><span class="n">execute</span><span class="p">()</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">log</span><span class="o">.</span><span class="n">info</span><span class="p">(</span><span class="s1">'Deleted table </span><span class="si">%s</span><span class="s1">:</span><span class="si">%s</span><span class="s1">.</span><span class="si">%s</span><span class="s1">.'</span><span class="p">,</span> <span class="n">deletion_project</span><span class="p">,</span>
+ <span class="n">deletion_dataset</span><span class="p">,</span> <span class="n">deletion_table</span><span class="p">)</span>
+ <span class="k">except</span> <span class="n">HttpError</span><span class="p">:</span>
+ <span class="k">if</span> <span class="ow">not</span> <span class="n">ignore_if_missing</span><span class="p">:</span>
+ <span class="k">raise</span> <span class="ne">Exception</span><span class="p">(</span><span class="s1">'Table deletion failed. Table does not exist.'</span><span class="p">)</span>
+ <span class="k">else</span><span class="p">:</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">log</span><span class="o">.</span><span class="n">info</span><span class="p">(</span><span class="s1">'Table does not exist. Skipping.'</span><span class="p">)</span>
+
+ <span class="k">def</span> <span class="nf">run_table_upsert</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">dataset_id</span><span class="p">,</span> <span class="n">table_resource</span><span class="p">,</span> <span class="n">project_id</span><span class="o">=</span><span class="kc">None</span><span class="p">):</span>
+ <span class="sd">"""</span>
+<span class="sd"> creates a new, empty table in the dataset;</span>
+<span class="sd"> If the table already exists, update the existing table.</span>
+<span class="sd"> Since BigQuery does not natively allow table upserts, this is not an</span>
+<span class="sd"> atomic operation.</span>
+
+<span class="sd"> :param dataset_id: the dataset to upsert the table into.</span>
+<span class="sd"> :type dataset_id: str</span>
+<span class="sd"> :param table_resource: a table resource. see</span>
+<span class="sd"> https://cloud.google.com/bigquery/docs/reference/v2/tables#resource</span>
+<span class="sd"> :type table_resource: dict</span>
+<span class="sd"> :param project_id: the project to upsert the table into. If None,</span>
+<span class="sd"> project will be self.project_id.</span>
+<span class="sd"> :return:</span>
+<span class="sd"> """</span>
+ <span class="c1"># check to see if the table exists</span>
+ <span class="n">table_id</span> <span class="o">=</span> <span class="n">table_resource</span><span class="p">[</span><span class="s1">'tableReference'</span><span class="p">][</span><span class="s1">'tableId'</span><span class="p">]</span>
+ <span class="n">project_id</span> <span class="o">=</span> <span class="n">project_id</span> <span class="k">if</span> <span class="n">project_id</span> <span class="ow">is</span> <span class="ow">not</span> <span class="kc">None</span> <span class="k">else</span> <span class="bp">self</span><span class="o">.</span><span class="n">project_id</span>
+ <span class="n">tables_list_resp</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">service</span><span class="o">.</span><span class="n">tables</span><span class="p">()</span><span class="o">.</span><span class="n">list</span><span class="p">(</span>
+ <span class="n">projectId</span><span class="o">=</span><span class="n">project_id</span><span class="p">,</span> <span class="n">datasetId</span><span class="o">=</span><span class="n">dataset_id</span><span class="p">)</span><span class="o">.</span><span class="n">execute</span><span class="p">()</span>
+ <span class="k">while</span> <span class="kc">True</span><span class="p">:</span>
+ <span class="k">for</span> <span class="n">table</span> <span class="ow">in</span> <span class="n">tables_list_resp</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s1">'tables'</span><span class="p">,</span> <span class="p">[]):</span>
+ <span class="k">if</span> <span class="n">table</span><span class="p">[</span><span class="s1">'tableReference'</span><span class="p">][</span><span class="s1">'tableId'</span><span class="p">]</span> <span class="o">==</span> <span class="n">table_id</span><span class="p">:</span>
+ <span class="c1"># found the table, do update</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">log</span><span class="o">.</span><span class="n">info</span><span class="p">(</span><span class="s1">'Table </span><span class="si">%s</span><span class="s1">:</span><span class="si">%s</span><span class="s1">.</span><span class="si">%s</span><span class="s1"> exists, updating.'</span><span class="p">,</span>
+ <span class="n">project_id</span><span class="p">,</span> <span class="n">dataset_id</span><span class="p">,</span> <span class="n">table_id</span><span class="p">)</span>
+ <span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">service</span><span class="o">.</span><span class="n">tables</span><span class="p">()</span><span class="o">.</span><span class="n">update</span><span class="p">(</span>
+ <span class="n">projectId</span><span class="o">=</span><span class="n">project_id</span><span class="p">,</span>
+ <span class="n">datasetId</span><span class="o">=</span><span class="n">dataset_id</span><span class="p">,</span>
+ <span class="n">tableId</span><span class="o">=</span><span class="n">table_id</span><span class="p">,</span>
+ <span class="n">body</span><span class="o">=</span><span class="n">table_resource</span><span class="p">)</span><span class="o">.</span><span class="n">execute</span><span class="p">()</span>
+ <span class="c1"># If there is a next page, we need to check the next page.</span>
+ <span class="k">if</span> <span class="s1">'nextPageToken'</span> <span class="ow">in</span> <span class="n">tables_list_resp</span><span class="p">:</span>
+ <span class="n">tables_list_resp</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">service</span><span class="o">.</span><span class="n">tables</span><span class="p">()</span>\
+ <span class="o">.</span><span class="n">list</span><span class="p">(</span><span class="n">projectId</span><span class="o">=</span><span class="n">project_id</span><span class="p">,</span>
+ <span class="n">datasetId</span><span class="o">=</span><span class="n">dataset_id</span><span class="p">,</span>
+ <span class="n">pageToken</span><span class="o">=</span><span class="n">tables_list_resp</span><span class="p">[</span><span class="s1">'nextPageToken'</span><span class="p">])</span>\
+ <span class="o">.</span><span class="n">execute</span><span class="p">()</span>
+ <span class="c1"># If there is no next page, then the table doesn't exist.</span>
+ <span class="k">else</span><span class="p">:</span>
+ <span class="c1"># do insert</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">log</span><span class="o">.</span><span class="n">info</span><span class="p">(</span><span class="s1">'Table </span><span class="si">%s</span><span class="s1">:</span><span class="si">%s</span><span class="s1">.</span><span class="si">%s</span><span class="s1"> does not exist. creating.'</span><span class="p">,</span>
+ <span class="n">project_id</span><span class="p">,</span> <span class="n">dataset_id</span><span class="p">,</span> <span class="n">table_id</span><span class="p">)</span>
+ <span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">service</span><span class="o">.</span><span class="n">tables</span><span class="p">()</span><span class="o">.</span><span class="n">insert</span><span class="p">(</span>
+ <span class="n">projectId</span><span class="o">=</span><span class="n">project_id</span><span class="p">,</span>
+ <span class="n">datasetId</span><span class="o">=</span><span class="n">dataset_id</span><span class="p">,</span>
+ <span class="n">body</span><span class="o">=</span><span class="n">table_resource</span><span class="p">)</span><span class="o">.</span><span class="n">execute</span><span class="p">()</span>
+
+ <span class="k">def</span> <span class="nf">run_grant_dataset_view_access</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span>
+ <span class="n">source_dataset</span><span class="p">,</span>
+ <span class="n">view_dataset</span><span class="p">,</span>
+ <span class="n">view_table</span><span class="p">,</span>
+ <span class="n">source_project</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span>
+ <span class="n">view_project</span><span class="o">=</span><span class="kc">None</span><span class="p">):</span>
+ <span class="sd">"""</span>
+<span class="sd"> Grant authorized view access of a dataset to a view table.</span>
+<span class="sd"> If this view has already been granted access to the dataset, do nothing.</span>
+<span class="sd"> This method is not atomic. Running it may clobber a simultaneous update.</span>
+
+<span class="sd"> :param source_dataset: the source dataset</span>
+<span class="sd"> :type source_dataset: str</span>
+<span class="sd"> :param view_dataset: the dataset that the view is in</span>
+<span class="sd"> :type view_dataset: str</span>
+<span class="sd"> :param view_table: the table of the view</span>
+<span class="sd"> :type view_table: str</span>
+<span class="sd"> :param source_project: the project of the source dataset. If None,</span>
+<span class="sd"> self.project_id will be used.</span>
+<span class="sd"> :type source_project: str</span>
+<span class="sd"> :param view_project: the project that the view is in. If None,</span>
+<span class="sd"> self.project_id will be used.</span>
+<span class="sd"> :type view_project: str</span>
+<span class="sd"> :return: the datasets resource of the source dataset.</span>
+<span class="sd"> """</span>
+
+ <span class="c1"># Apply default values to projects</span>
+ <span class="n">source_project</span> <span class="o">=</span> <span class="n">source_project</span> <span class="k">if</span> <span class="n">source_project</span> <span class="k">else</span> <span class="bp">self</span><span class="o">.</span><span class="n">project_id</span>
+ <span class="n">view_project</span> <span class="o">=</span> <span class="n">view_project</span> <span class="k">if</span> <span class="n">view_project</span> <span class="k">else</span> <span class="bp">self</span><span class="o">.</span><span class="n">project_id</span>
+
+ <span class="c1"># we don't want to clobber any existing accesses, so we have to get</span>
+ <span class="c1"># info on the dataset before we can add view access</span>
+ <span class="n">source_dataset_resource</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">service</span><span class="o">.</span><span class="n">datasets</span><span class="p">()</span><span class="o">.</span><span class="n">get</span><span class="p">(</span>
+ <span class="n">projectId</span><span class="o">=</span><span class="n">source_project</span><span class="p">,</span> <span class="n">datasetId</span><span class="o">=</span><span class="n">source_dataset</span><span class="p">)</span><span class="o">.</span><span class="n">execute</span><span class="p">()</span>
+ <span class="n">access</span> <span class="o">=</span> <span class="n">source_dataset_resource</span><span class="p">[</span>
+ <span class="s1">'access'</span><span class="p">]</span> <span class="k">if</span> <span class="s1">'access'</span> <span class="ow">in</span> <span class="n">source_dataset_resource</span> <span class="k">else</span> <span class="p">[]</span>
+ <span class="n">view_access</span> <span class="o">=</span> <span class="p">{</span>
+ <span class="s1">'view'</span><span class="p">:</span> <span class="p">{</span>
+ <span class="s1">'projectId'</span><span class="p">:</span> <span class="n">view_project</span><span class="p">,</span>
+ <span class="s1">'datasetId'</span><span class="p">:</span> <span class="n">view_dataset</span><span class="p">,</span>
+ <span class="s1">'tableId'</span><span class="p">:</span> <span class="n">view_table</span>
+ <span class="p">}</span>
+ <span class="p">}</span>
+ <span class="c1"># check to see if the view we want to add already exists.</span>
+ <span class="k">if</span> <span class="n">view_access</span> <span class="ow">not</span> <span class="ow">in</span> <span class="n">access</span><span class="p">:</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">log</span><span class="o">.</span><span class="n">info</span><span class="p">(</span>
+ <span class="s1">'Granting table </span><span class="si">%s</span><span class="s1">:</span><span class="si">%s</span><span class="s1">.</span><span class="si">%s</span><span class="s1"> authorized view access to </span><span class="si">%s</span><span class="s1">:</span><span class="si">%s</span><span class="s1"> dataset.'</span><span class="p">,</span>
+ <span class="n">view_project</span><span class="p">,</span> <span class="n">view_dataset</span><span class="p">,</span> <span class="n">view_table</span><span class="p">,</span> <span class="n">source_project</span><span class="p">,</span>
+ <span class="n">source_dataset</span><span class="p">)</span>
+ <span class="n">access</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">view_access</span><span class="p">)</span>
+ <span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">service</span><span class="o">.</span><span class="n">datasets</span><span class="p">()</span><span class="o">.</span><span class="n">patch</span><span class="p">(</span>
+ <span class="n">projectId</span><span class="o">=</span><span class="n">source_project</span><span class="p">,</span>
+ <span class="n">datasetId</span><span class="o">=</span><span class="n">source_dataset</span><span class="p">,</span>
+ <span class="n">body</span><span class="o">=</span><span class="p">{</span>
+ <span class="s1">'access'</span><span class="p">:</span> <span class="n">access</span>
+ <span class="p">})</span><span class="o">.</span><span class="n">execute</span><span class="p">()</span>
+ <span class="k">else</span><span class="p">:</span>
+ <span class="c1"># if view is already in access, do nothing.</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">log</span><span class="o">.</span><span class="n">info</span><span class="p">(</span>
+ <span class="s1">'Table </span><span class="si">%s</span><span class="s1">:</span><span class="si">%s</span><span class="s1">.</span><span class="si">%s</span><span class="s1"> already has authorized view access to </span><span class="si">%s</span><span class="s1">:</span><span class="si">%s</span><span class="s1"> dataset.'</span><span class="p">,</span>
+ <span class="n">view_project</span><span class="p">,</span> <span class="n">view_dataset</span><span class="p">,</span> <span class="n">view_table</span><span class="p">,</span> <span class="n">source_project</span><span class="p">,</span> <span class="n">source_dataset</span><span class="p">)</span>
+ <span class="k">return</span> <span class="n">source_dataset_resource</span>
+
+ <span class="k">def</span> <span class="nf">delete_dataset</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">project_id</span><span class="p">,</span> <span class="n">dataset_id</span><span class="p">):</span>
+ <span class="sd">"""</span>
+<span class="sd"> Delete a dataset of Big query in your project.</span>
+<span class="sd"> :param project_id: The name of the project where we have the dataset .</span>
+<span class="sd"> :type project_id: str</span>
+<span class="sd"> :param dataset_id: The dataset to be delete.</span>
+<span class="sd"> :type dataset_id: str</span>
+<span class="sd"> :return:</span>
+<span class="sd"> """</span>
+ <span class="n">project_id</span> <span class="o">=</span> <span class="n">project_id</span> <span class="k">if</span> <span class="n">project_id</span> <span class="ow">is</span> <span class="ow">not</span> <span class="kc">None</span> <span class="k">else</span> <span class="bp">self</span><span class="o">.</span><span class="n">project_id</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">log</span><span class="o">.</span><span class="n">info</span><span class="p">(</span><span class="s1">'Deleting from project: </span><span class="si">%s</span><span class="s1"> Dataset:</span><span class="si">%s</span><span class="s1">'</span><span class="p">,</span>
+ <span class="n">project_id</span><span class="p">,</span> <span class="n">dataset_id</span><span class="p">)</span>
+
+ <span class="k">try</span><span class="p">:</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">service</span><span class="o">.</span><span class="n">datasets</span><span class="p">()</span><span class="o">.</span><span class="n">delete</span><span class="p">(</span>
+ <span class="n">projectId</span><span class="o">=</span><span class="n">project_id</span><span class="p">,</span>
+ <span class="n">datasetId</span><span class="o">=</span><span class="n">dataset_id</span><span class="p">)</span><span class="o">.</span><span class="n">execute</span><span class="p">()</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">log</span><span class="o">.</span><span class="n">info</span><span class="p">(</span><span class="s1">'Dataset deleted successfully: In project </span><span class="si">%s</span><span class="s1"> '</span>
+ <span class="s1">'Dataset </span><span class="si">%s</span><span class="s1">'</span><span class="p">,</span> <span class="n">project_id</span><span class="p">,</span> <span class="n">dataset_id</span><span class="p">)</span>
+
+ <span class="k">except</span> <span class="n">HttpError</span> <span class="k">as</span> <span class="n">err</span><span class="p">:</span>
+ <span class="k">raise</span> <span class="n">AirflowException</span><span class="p">(</span>
+ <span class="s1">'BigQuery job failed. Error was: </span><span class="si">{}</span><span class="s1">'</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">err</span><span class="o">.</span><span class="n">content</span><span class="p">)</span>
+ <span class="p">)</span>
+
+
+<span class="k">class</span> <span class="nc">BigQueryCursor</span><span class="p">(</span><span class="n">BigQueryBaseCursor</span><span class="p">):</span>
+ <span class="sd">"""</span>
+<span class="sd"> A very basic BigQuery PEP 249 cursor implementation. The PyHive PEP 249</span>
+<span class="sd"> implementation was used as a reference:</span>
+
+<span class="sd"> https://github.com/dropbox/PyHive/blob/master/pyhive/presto.py</span>
+<span class="sd"> https://github.com/dropbox/PyHive/blob/master/pyhive/common.py</span>
+<span class="sd"> """</span>
+
+ <span class="k">def</span> <span class="nf">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">service</span><span class="p">,</span> <span class="n">project_id</span><span class="p">,</span> <span class="n">use_legacy_sql</span><span class="o">=</span><span class="kc">True</span><span class="p">):</span>
+ <span class="nb">super</span><span class="p">(</span><span class="n">BigQueryCursor</span><span class="p">,</span> <span class="bp">self</span><span class="p">)</span><span class="o">.</span><span class="fm">__init__</span><span class="p">(</span>
+ <span class="n">service</span><span class="o">=</span><span class="n">service</span><span class="p">,</span>
+ <span class="n">project_id</span><span class="o">=</span><span class="n">project_id</span><span class="p">,</span>
+ <span class="n">use_legacy_sql</span><span class="o">=</span><span class="n">use_legacy_sql</span><span class="p">)</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">buffersize</span> <span class="o">=</span> <span class="kc">None</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">page_token</span> <span class="o">=</span> <span class="kc">None</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">job_id</span> <span class="o">=</span> <span class="kc">None</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">buffer</span> <span class="o">=</span> <span class="p">[]</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">all_pages_loaded</span> <span class="o">=</span> <span class="kc">False</span>
+
+ <span class="nd">@property</span>
+ <span class="k">def</span> <span class="nf">description</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
+ <span class="sd">""" The schema description method is not currently implemented. """</span>
+ <span class="k">raise</span> <span class="ne">NotImplementedError</span>
+
+ <span class="k">def</span> <span class="nf">close</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
+ <span class="sd">""" By default, do nothing """</span>
+ <span class="k">pass</span>
+
+ <span class="nd">@property</span>
+ <span class="k">def</span> <span class="nf">rowcount</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
+ <span class="sd">""" By default, return -1 to indicate that this is not supported. """</span>
+ <span class="k">return</span> <span class="o">-</span><span class="mi">1</span>
+
+ <span class="k">def</span> <span class="nf">execute</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">operation</span><span class="p">,</span> <span class="n">parameters</span><span class="o">=</span><span class="kc">None</span><span class="p">):</span>
+ <span class="sd">"""</span>
+<span class="sd"> Executes a BigQuery query, and returns the job ID.</span>
+
+<span class="sd"> :param operation: The query to execute.</span>
+<span class="sd"> :type operation: string</span>
+<span class="sd"> :param parameters: Parameters to substitute into the query.</span>
+<span class="sd"> :type parameters: dict</span>
+<span class="sd"> """</span>
+ <span class="n">sql</span> <span class="o">=</span> <span class="n">_bind_parameters</span><span class="p">(</span><span class="n">operation</span><span class="p">,</span>
+ <span class="n">parameters</span><span class="p">)</span> <span class="k">if</span> <span class="n">parameters</span> <span class="k">else</span> <span class="n">operation</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">job_id</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">run_query</span><span class="p">(</span><span class="n">sql</span><span class="p">)</span>
+
+ <span class="k">def</span> <span class="nf">executemany</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">operation</span><span class="p">,</span> <span class="n">seq_of_parameters</span><span class="p">):</span>
+ <span class="sd">"""</span>
+<span class="sd"> Execute a BigQuery query multiple times with different parameters.</span>
+
+<span class="sd"> :param operation: The query to execute.</span>
+<span class="sd"> :type operation: string</span>
+<span class="sd"> :param seq_of_parameters: List of dictionary parameters to substitute into the</span>
+<span class="sd"> query.</span>
+<span class="sd"> :type seq_of_parameters: list</span>
+<span class="sd"> """</span>
+ <span class="k">for</span> <span class="n">parameters</span> <span class="ow">in</span> <span class="n">seq_of_parameters</span><span class="p">:</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">execute</span><span class="p">(</span><span class="n">operation</span><span class="p">,</span> <span class="n">parameters</span><span class="p">)</span>
+
+ <span class="k">def</span> <span class="nf">fetchone</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
+ <span class="sd">""" Fetch the next row of a query result set. """</span>
+ <span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">next</span><span class="p">()</span>
+
+ <span class="k">def</span> <span class="nf">next</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
+ <span class="sd">"""</span>
+<span class="sd"> Helper method for fetchone, which returns the next row from a buffer.</span>
+<span class="sd"> If the buffer is empty, attempts to paginate through the result set for</span>
+<span class="sd"> the next page, and load it into the buffer.</span>
+<span class="sd"> """</span>
+ <span class="k">if</span> <span class="ow">not</span> <span class="bp">self</span><span class="o">.</span><span class="n">job_id</span><span class="p">:</span>
+ <span class="k">return</span> <span class="kc">None</span>
+
+ <span class="k">if</span> <span class="nb">len</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">buffer</span><span class="p">)</span> <span class="o">==</span> <span class="mi">0</span><span class="p">:</span>
+ <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">all_pages_loaded</span><span class="p">:</span>
+ <span class="k">return</span> <span class="kc">None</span>
+
+ <span class="n">query_results</span> <span class="o">=</span> <span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">service</span><span class="o">.</span><span class="n">jobs</span><span class="p">()</span><span class="o">.</span><span class="n">getQueryResults</span><span class="p">(</span>
+ <span class="n">projectId</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">project_id</span><span class="p">,</span>
+ <span class="n">jobId</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">job_id</span><span class="p">,</span>
+ <span class="n">pageToken</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">page_token</span><span class="p">)</span><span class="o">.</span><span class="n">execute</span><span class="p">())</span>
+
+ <span class="k">if</span> <span class="s1">'rows'</span> <span class="ow">in</span> <span class="n">query_results</span> <span class="ow">and</span> <span class="n">query_results</span><span class="p">[</span><span class="s1">'rows'</span><span class="p">]:</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">page_token</span> <span class="o">=</span> <span class="n">query_results</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s1">'pageToken'</span><span class="p">)</span>
+ <span class="n">fields</span> <span class="o">=</span> <span class="n">query_results</span><span class="p">[</span><span class="s1">'schema'</span><span class="p">][</span><span class="s1">'fields'</span><span class="p">]</span>
+ <span class="n">col_types</span> <span class="o">=</span> <span class="p">[</span><span class="n">field</span><span class="p">[</span><span class="s1">'type'</span><span class="p">]</span> <span class="k">for</span> <span class="n">field</span> <span class="ow">in</span> <span class="n">fields</span><span class="p">]</span>
+ <span class="n">rows</span> <span class="o">=</span> <span class="n">query_results</span><span class="p">[</span><span class="s1">'rows'</span><span class="p">]</span>
+
+ <span class="k">for</span> <span class="n">dict_row</span> <span class="ow">in</span> <span class="n">rows</span><span class="p">:</span>
+ <span class="n">typed_row</span> <span class="o">=</span> <span class="p">([</span>
+ <span class="n">_bq_cast</span><span class="p">(</span><span class="n">vs</span><span class="p">[</span><span class="s1">'v'</span><span class="p">],</span> <span class="n">col_types</span><span class="p">[</span><span class="n">idx</span><span class="p">])</span>
+ <span class="k">for</span> <span class="n">idx</span><span class="p">,</span> <span class="n">vs</span> <span class="ow">in</span> <span class="nb">enumerate</span><span class="p">(</span><span class="n">dict_row</span><span class="p">[</span><span class="s1">'f'</span><span class="p">])</span>
+ <span class="p">])</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">buffer</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">typed_row</span><span class="p">)</span>
+
+ <span class="k">if</span> <span class="ow">not</span> <span class="bp">self</span><span class="o">.</span><span class="n">page_token</span><span class="p">:</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">all_pages_loaded</span> <span class="o">=</span> <span class="kc">True</span>
+
+ <span class="k">else</span><span class="p">:</span>
+ <span class="c1"># Reset all state since we've exhausted the results.</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">page_token</span> <span class="o">=</span> <span class="kc">None</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">job_id</span> <span class="o">=</span> <span class="kc">None</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">page_token</span> <span class="o">=</span> <span class="kc">None</span>
+ <span class="k">return</span> <span class="kc">None</span>
+
+ <span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">buffer</span><span class="o">.</span><span class="n">pop</span><span class="p">(</span><span class="mi">0</span><span class="p">)</span>
+
+ <span class="k">def</span> <span class="nf">fetchmany</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">size</span><span class="o">=</span><span class="kc">None</span><span class="p">):</span>
+ <span class="sd">"""</span>
+<span class="sd"> Fetch the next set of rows of a query result, returning a sequence of sequences</span>
+<span class="sd"> (e.g. a list of tuples). An empty sequence is returned when no more rows are</span>
+<span class="sd"> available. The number of rows to fetch per call is specified by the parameter.</span>
+<span class="sd"> If it is not given, the cursor's arraysize determines the number of rows to be</span>
+<span class="sd"> fetched. The method should try to fetch as many rows as indicated by the size</span>
+<span class="sd"> parameter. If this is not possible due to the specified number of rows not being</span>
+<span class="sd"> available, fewer rows may be returned. An :py:class:`~pyhive.exc.Error`</span>
+<span class="sd"> (or subclass) exception is raised if the previous call to</span>
+<span class="sd"> :py:meth:`execute` did not produce any result set or no call was issued yet.</span>
+<span class="sd"> """</span>
+ <span class="k">if</span> <span class="n">size</span> <span class="ow">is</span> <span class="kc">None</span><span class="p">:</span>
+ <span class="n">size</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">arraysize</span>
+ <span class="n">result</span> <span class="o">=</span> <span class="p">[]</span>
+ <span class="k">for</span> <span class="n">_</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="n">size</span><span class="p">):</span>
+ <span class="n">one</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">fetchone</span><span class="p">()</span>
+ <span class="k">if</span> <span class="n">one</span> <span class="ow">is</span> <span class="kc">None</span><span class="p">:</span>
+ <span class="k">break</span>
+ <span class="k">else</span><span class="p">:</span>
+ <span class="n">result</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">one</span><span class="p">)</span>
+ <span class="k">return</span> <span class="n">result</span>
+
+ <span class="k">def</span> <span class="nf">fetchall</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
+ <span class="sd">"""</span>
+<span class="sd"> Fetch all (remaining) rows of a query result, returning them as a sequence of</span>
+<span class="sd"> sequences (e.g. a list of tuples).</span>
+<span class="sd"> """</span>
+ <span class="n">result</span> <span class="o">=</span> <span class="p">[]</span>
+ <span class="k">while</span> <span class="kc">True</span><span class="p">:</span>
+ <span class="n">one</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">fetchone</span><span class="p">()</span>
+ <span class="k">if</span> <span class="n">one</span> <span class="ow">is</span> <span class="kc">None</span><span class="p">:</span>
+ <span class="k">break</span>
+ <span class="k">else</span><span class="p">:</span>
+ <span class="n">result</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">one</span><span class="p">)</span>
+ <span class="k">return</span> <span class="n">result</span>
+
+ <span class="k">def</span> <span class="nf">get_arraysize</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
+ <span class="sd">""" Specifies the number of rows to fetch at a time with .fetchmany() """</span>
+ <span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">_buffersize</span> <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">buffersize</span> <span class="k">else</span> <span class="mi">1</span>
+
+ <span class="k">def</span> <span class="nf">set_arraysize</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">arraysize</span><span class="p">):</span>
+ <span class="sd">""" Specifies the number of rows to fetch at a time with .fetchmany() """</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">buffersize</span> <span class="o">=</span> <span class="n">arraysize</span>
+
+ <span class="n">arraysize</span> <span class="o">=</span> <span class="nb">property</span><span class="p">(</span><span class="n">get_arraysize</span><span class="p">,</span> <span class="n">set_arraysize</span><span class="p">)</span>
+
+ <span class="k">def</span> <span class="nf">setinputsizes</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">sizes</span><span class="p">):</span>
+ <span class="sd">""" Does nothing by default """</span>
+ <span class="k">pass</span>
+
+ <span class="k">def</span> <span class="nf">setoutputsize</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">size</span><span class="p">,</span> <span class="n">column</span><span class="o">=</span><span class="kc">None</span><span class="p">):</span>
+ <span class="sd">""" Does nothing by default """</span>
+ <span class="k">pass</span>
+
+
+<span class="k">def</span> <span class="nf">_bind_parameters</span><span class="p">(</span><span class="n">operation</span><span class="p">,</span> <span class="n">parameters</span><span class="p">):</span>
+ <span class="sd">""" Helper method that binds parameters to a SQL query. """</span>
+ <span class="c1"># inspired by MySQL Python Connector (conversion.py)</span>
+ <span class="n">string_parameters</span> <span class="o">=</span> <span class="p">{}</span>
+ <span class="k">for</span> <span class="p">(</span><span class="n">name</span><span class="p">,</span> <span class="n">value</span><span class="p">)</span> <span class="ow">in</span> <span class="n">parameters</span><span class="o">.</span><span class="n">iteritems</span><span class="p">():</span>
+ <span class="k">if</span> <span class="n">value</span> <span class="ow">is</span> <span class="kc">None</span><span class="p">:</span>
+ <span class="n">string_parameters</span><span class="p">[</span><span class="n">name</span><span class="p">]</span> <span class="o">=</span> <span class="s1">'NULL'</span>
+ <span class="k">elif</span> <span class="nb">isinstance</span><span class="p">(</span><span class="n">value</span><span class="p">,</span> <span class="n">basestring</span><span class="p">):</span>
+ <span class="n">string_parameters</span><span class="p">[</span><span class="n">name</span><span class="p">]</span> <span class="o">=</span> <span class="s2">"'"</span> <span class="o">+</span> <span class="n">_escape</span><span class="p">(</span><span class="n">value</span><span class="p">)</span> <span class="o">+</span> <span class="s2">"'"</span>
+ <span class="k">else</span><span class="p">:</span>
+ <span class="n">string_parameters</span><span class="p">[</span><span class="n">name</span><span class="p">]</span> <span class="o">=</span> <span class="nb">str</span><span class="p">(</span><span class="n">value</span><span class="p">)</span>
+ <span class="k">return</span> <span class="n">operation</span> <span class="o">%</span> <span class="n">string_parameters</span>
+
+
+<span class="k">def</span> <span class="nf">_escape</span><span class="p">(</span><span class="n">s</span><span class="p">):</span>
+ <span class="sd">""" Helper method that escapes parameters to a SQL query. """</span>
+ <span class="n">e</span> <span class="o">=</span> <span class="n">s</span>
+ <span class="n">e</span> <span class="o">=</span> <span class="n">e</span><span class="o">.</span><span class="n">replace</span><span class="p">(</span><span class="s1">'</span><span class="se">\\</span><span class="s1">'</span><span class="p">,</span> <span class="s1">'</span><span class="se">\\\\</span><span class="s1">'</span><span class="p">)</span>
+ <span class="n">e</span> <span class="o">=</span> <span class="n">e</span><span class="o">.</span><span class="n">replace</span><span class="p">(</span><span class="s1">'</span><span class="se">\n</span><span class="s1">'</span><span class="p">,</span> <span class="s1">'</span><span class="se">\\</span><span class="s1">n'</span><span class="p">)</span>
+ <span class="n">e</span> <span class="o">=</span> <span class="n">e</span><span class="o">.</span><span class="n">replace</span><span class="p">(</span><span class="s1">'</span><span class="se">\r</span><span class="s1">'</span><span class="p">,</span> <span class="s1">'</span><span class="se">\\</span><span class="s1">r'</span><span class="p">)</span>
+ <span class="n">e</span> <span class="o">=</span> <span class="n">e</span><span class="o">.</span><span class="n">replace</span><span class="p">(</span><span class="s2">"'"</span><span class="p">,</span> <span class="s2">"</span><span class="se">\\</span><span class="s2">'"</span><span class="p">)</span>
+ <span class="n">e</span> <span class="o">=</span> <span class="n">e</span><span class="o">.</span><span class="n">replace</span><span class="p">(</span><span class="s1">'"'</span><span class="p">,</span> <span class="s1">'</span><span class="se">\\</span><span class="s1">"'</span><span class="p">)</span>
+ <span class="k">return</span> <span class="n">e</span>
+
+
+<span class="k">def</span> <span class="nf">_bq_cast</span><span class="p">(</span><span class="n">string_field</span><span class="p">,</span> <span class="n">bq_type</span><span class="p">):</span>
+ <span class="sd">"""</span>
+<span class="sd"> Helper method that casts a BigQuery row to the appropriate data types.</span>
+<span class="sd"> This is useful because BigQuery returns all fields as strings.</span>
+<span class="sd"> """</span>
+ <span class="k">if</span> <span class="n">string_field</span> <span class="ow">is</span> <span class="kc">None</span><span class="p">:</span>
+ <span class="k">return</span> <span class="kc">None</span>
+ <span class="k">elif</span> <span class="n">bq_type</span> <span class="o">==</span> <span class="s1">'INTEGER'</span><span class="p">:</span>
+ <span class="k">return</span> <span class="nb">int</span><span class="p">(</span><span class="n">string_field</span><span class="p">)</span>
+ <span class="k">elif</span> <span class="n">bq_type</span> <span class="o">==</span> <span class="s1">'FLOAT'</span> <span class="ow">or</span> <span class="n">bq_type</span> <span class="o">==</span> <span class="s1">'TIMESTAMP'</span><span class="p">:</span>
+ <span class="k">return</span> <span class="nb">float</span><span class="p">(</span><span class="n">string_field</span><span class="p">)</span>
+ <span class="k">elif</span> <span class="n">bq_type</span> <span class="o">==</span> <span class="s1">'BOOLEAN'</span><span class="p">:</span>
+ <span class="k">if</span> <span class="n">string_field</span> <span class="ow">not</span> <span class="ow">in</span> <span class="p">[</span><span class="s1">'true'</span><span class="p">,</span> <span class="s1">'false'</span><span class="p">]:</span>
+ <span class="k">raise</span> <span class="ne">ValueError</span><span class="p">(</span><span class="s2">"</span><span class="si">{}</span><span class="s2"> must have value 'true' or 'false'"</span><span class="o">.</span><span class="n">format</span><span class="p">(</span>
+ <span class="n">string_field</span><span class="p">))</span>
+ <span class="k">return</span> <span class="n">string_field</span> <span class="o">==</span> <span class="s1">'true'</span>
+ <span class="k">else</span><span class="p">:</span>
+ <span class="k">return</span> <span class="n">string_field</span>
+
+
+<span class="k">def</span> <span class="nf">_split_tablename</span><span class="p">(</span><span class="n">table_input</span><span class="p">,</span> <span class="n">default_project_id</span><span class="p">,</span> <span class="n">var_name</span><span class="o">=</span><span class="kc">None</span><span class="p">):</span>
+ <span class="k">if</span> <span class="ow">not</span> <span class="n">default_project_id</span><span class="p">:</span>
+ <span class="k">raise</span> <span class="ne">ValueError</span><span class="p">(</span><span class="s2">"INTERNAL: No default project is specified"</span><span class="p">)</span>
+
+ <span class="k">def</span> <span class="nf">var_print</span><span class="p">(</span><span class="n">var_name</span><span class="p">):</span>
+ <span class="k">if</span> <span class="n">var_name</span> <span class="ow">is</span> <span class="kc">None</span><span class="p">:</span>
+ <span class="k">return</span> <span class="s2">""</span>
+ <span class="k">else</span><span class="p">:</span>
+ <span class="k">return</span> <span class="s2">"Format exception for </span><span class="si">{var}</span><span class="s2">: "</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">var</span><span class="o">=</span><span class="n">var_name</span><span class="p">)</span>
+
+ <span class="k">if</span> <span class="n">table_input</span><span class="o">.</span><span class="n">count</span><span class="p">(</span><span class="s1">'.'</span><span class="p">)</span> <span class="o">+</span> <span class="n">table_input</span><span class="o">.</span><span class="n">count</span><span class="p">(</span><span class="s1">':'</span><span class="p">)</span> <span class="o">></span> <span class="mi">3</span><span class="p">:</span>
+ <span class="k">raise</span> <span class="ne">Exception</span><span class="p">((</span><span class="s1">'</span><span class="si">{var}</span><span class="s1">Use either : or . to specify project '</span>
+ <span class="s1">'got </span><span class="si">{input}</span><span class="s1">'</span><span class="p">)</span><span class="o">.</span><span class="n">format</span><span class="p">(</span>
+ <span class="n">var</span><span class="o">=</span><span class="n">var_print</span><span class="p">(</span><span class="n">var_name</span><span class="p">),</span> <span class="nb">input</span><span class="o">=</span><span class="n">table_input</span><span class="p">))</span>
+ <span class="n">cmpt</span> <span class="o">=</span> <span class="n">table_input</span><span class="o">.</span><span class="n">rsplit</span><span class="p">(</span><span class="s1">':'</span><span class="p">,</span> <span class="mi">1</span><span class="p">)</span>
+ <span class="n">project_id</span> <span class="o">=</span> <span class="kc">None</span>
+ <span class="n">rest</span> <span class="o">=</span> <span class="n">table_input</span>
+ <span class="k">if</span> <span class="nb">len</span><span class="p">(</span><span class="n">cmpt</span><span class="p">)</span> <span class="o">==</span> <span class="mi">1</span><span class="p">:</span>
+ <span class="n">project_id</span> <span class="o">=</span> <span class="kc">None</span>
+ <span class="n">rest</span> <span class="o">=</span> <span class="n">cmpt</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span>
+ <span class="k">elif</span> <span class="nb">len</span><span class="p">(</span><span class="n">cmpt</span><span class="p">)</span> <span class="o">==</span> <span class="mi">2</span> <span class="ow">and</span> <span class="n">cmpt</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">.</span><span class="n">count</span><span class="p">(</span><span class="s1">':'</span><span class="p">)</span> <span class="o"><=</span> <span class= [...]
+ <span class="k">if</span> <span class="n">cmpt</span><span class="p">[</span><span class="o">-</span><span class="mi">1</span><span class="p">]</span><span class="o">.</span><span class="n">count</span><span class="p">(</span><span class="s1">'.'</span><span class="p">)</span> <span class="o">!=</span> <span class="mi">2</span><span class="p">:</span>
+ <span class="n">project_id</span> <span class="o">=</span> <span class="n">cmpt</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span>
+ <span class="n">rest</span> <span class="o">=</span> <span class="n">cmpt</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span>
+ <span class="k">else</span><span class="p">:</span>
+ <span class="k">raise</span> <span class="ne">Exception</span><span class="p">((</span><span class="s1">'</span><span class="si">{var}</span><span class="s1">Expect format of (<project:)<dataset>.<table>, '</span>
+ <span class="s1">'got </span><span class="si">{input}</span><span class="s1">'</span><span class="p">)</span><span class="o">.</span><span class="n">format</span><span class="p">(</span>
+ <span class="n">var</span><span class="o">=</span><span class="n">var_print</span><span class="p">(</span><span class="n">var_name</span><span class="p">),</span> <span class="nb">input</span><span class="o">=</span><span class="n">table_input</span><span class="p">))</span>
+
+ <span class="n">cmpt</span> <span class="o">=</span> <span class="n">rest</span><span class="o">.</span><span class="n">split</span><span class="p">(</span><span class="s1">'.'</span><span class="p">)</span>
+ <span class="k">if</span> <span class="nb">len</span><span class="p">(</span><span class="n">cmpt</span><span class="p">)</span> <span class="o">==</span> <span class="mi">3</span><span class="p">:</span>
+ <span class="k">if</span> <span class="n">project_id</span><span class="p">:</span>
+ <span class="k">raise</span> <span class="ne">ValueError</span><span class="p">(</span>
+ <span class="s2">"</span><span class="si">{var}</span><span class="s2">Use either : or . to specify project"</span><span class="o">.</span><span class="n">format</span><span class="p">(</span>
+ <span class="n">var</span><span class="o">=</span><span class="n">var_print</span><span class="p">(</span><span class="n">var_name</span><span class="p">)))</span>
+ <span class="n">project_id</span> <span class="o">=</span> <span class="n">cmpt</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span>
+ <span class="n">dataset_id</span> <span class="o">=</span> <span class="n">cmpt</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span>
+ <span class="n">table_id</span> <span class="o">=</span> <span class="n">cmpt</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span>
+
+ <span class="k">elif</span> <span class="nb">len</span><span class="p">(</span><span class="n">cmpt</span><span class="p">)</span> <span class="o">==</span> <span class="mi">2</span><span class="p">:</span>
+ <span class="n">dataset_id</span> <span class="o">=</span> <span class="n">cmpt</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span>
+ <span class="n">table_id</span> <span class="o">=</span> <span class="n">cmpt</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span>
+ <span class="k">else</span><span class="p">:</span>
+ <span class="k">raise</span> <span class="ne">Exception</span><span class="p">(</span>
+ <span class="p">(</span><span class="s1">'</span><span class="si">{var}</span><span class="s1">Expect format of (<project.|<project:)<dataset>.<table>, '</span>
+ <span class="s1">'got </span><span class="si">{input}</span><span class="s1">'</span><span class="p">)</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">var</span><span class="o">=</span><span class="n">var_print</span><span class="p">(</span><span class="n">var_name</span><span class="p">),</span> <span class="nb">input</span><span class="o">=</span><span class="n">table_input</span><span class="p">))</span>
+
+ <span class="k">if</span> <span class="n">project_id</span> <span class="ow">is</span> <span class="kc">None</span><span class="p">:</span>
+ <span class="k">if</span> <span class="n">var_name</span> <span class="ow">is</span> <span class="ow">not</span> <span class="kc">None</span><span class="p">:</span>
+ <span class="n">log</span> <span class="o">=</span> <span class="n">LoggingMixin</span><span class="p">()</span><span class="o">.</span><span class="n">log</span>
+ <span class="n">log</span><span class="o">.</span><span class="n">info</span><span class="p">(</span><span class="s1">'Project not included in </span><span class="si">{var}</span><span class="s1">: </span><span class="si">{input}</span><span class="s1">; '</span>
+ <span class="s1">'using project "</span><span class="si">{project}</span><span class="s1">"'</span><span class="o">.</span><span class="n">format</span><span class="p">(</span>
+ <span class="n">var</span><span class="o">=</span><span class="n">var_name</span><span class="p">,</span>
+ <span class="nb">input</span><span class="o">=</span><span class="n">table_input</span><span class="p">,</span>
+ <span class="n">project</span><span class="o">=</span><span class="n">default_project_id</span><span class="p">))</span>
+ <span class="n">project_id</span> <span class="o">=</span> <span class="n">default_project_id</span>
+
+ <span class="k">return</span> <span class="n">project_id</span><span class="p">,</span> <span class="n">dataset_id</span><span class="p">,</span> <span class="n">table_id</span>
+
+
+<span class="k">def</span> <span class="nf">_cleanse_time_partitioning</span><span class="p">(</span><span class="n">destination_dataset_table</span><span class="p">,</span> <span class="n">time_partitioning_in</span><span class="p">):</span>
+ <span class="c1"># if it is a partitioned table ($ is in the table name) add partition load option</span>
+ <span class="n">time_partitioning_out</span> <span class="o">=</span> <span class="p">{}</span>
+ <span class="k">if</span> <span class="n">destination_dataset_table</span> <span class="ow">and</span> <span class="s1">'$'</span> <span class="ow">in</span> <span class="n">destination_dataset_table</span><span class="p">:</span>
+ <span class="n">time_partitioning_out</span><span class="p">[</span><span class="s1">'type'</span><span class="p">]</span> <span class="o">=</span> <span class="s1">'DAY'</span>
+ <span class="n">time_partitioning_out</span><span class="o">.</span><span class="n">update</span><span class="p">(</span><span class="n">time_partitioning_in</span><span class="p">)</span>
+ <span class="k">return</span> <span class="n">time_partitioning_out</span>
+</pre></div>
+
+ </div>
+
+ </div>
+ <footer>
+
+
+ <hr/>
+
+ <div role="contentinfo">
+ <p>
+
+ </p>
+ </div>
+ Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/rtfd/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
+
+</footer>
+
+ </div>
+ </div>
+
+ </section>
+
+ </div>
+
+
+
+
+
+
+
+ <script type="text/javascript" id="documentation_options" data-url_root="../../../../" src="../../../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../../../_static/doctools.js"></script>
+
+
+
+
+ <script type="text/javascript" src="../../../../_static/js/theme.js"></script>
+
+ <script type="text/javascript">
+ jQuery(function () {
+ SphinxRtdTheme.Navigation.enable(true);
+ });
+ </script>
+
+</body>
+</html>
\ No newline at end of file
diff --git a/docs-archive/1.10.1/_modules/airflow/contrib/hooks/cassandra_hook.html b/docs-archive/1.10.1/_modules/airflow/contrib/hooks/cassandra_hook.html
new file mode 100644
index 0000000..46f8c38
--- /dev/null
+++ b/docs-archive/1.10.1/_modules/airflow/contrib/hooks/cassandra_hook.html
@@ -0,0 +1,393 @@
+
+
+<!DOCTYPE html>
+<!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
+<!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
+<head>
+ <meta charset="utf-8">
+
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
+
+ <title>airflow.contrib.hooks.cassandra_hook — Airflow Documentation</title>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <link rel="stylesheet" href="../../../../_static/css/theme.css" type="text/css" />
+ <link rel="stylesheet" href="../../../../_static/pygments.css" type="text/css" />
+ <link rel="index" title="Index" href="../../../../genindex.html" />
+ <link rel="search" title="Search" href="../../../../search.html" />
+
+
+ <script src="../../../../_static/js/modernizr.min.js"></script>
+
+</head>
+
+<body class="wy-body-for-nav">
+
+
+ <div class="wy-grid-for-nav">
+
+
+ <nav data-toggle="wy-nav-shift" class="wy-nav-side">
+ <div class="wy-side-scroll">
+ <div class="wy-side-nav-search">
+
+
+
+ <a href="../../../../index.html" class="icon icon-home"> Airflow
+
+
+
+ </a>
+
+
+
+
+
+
+
+<div role="search">
+ <form id="rtd-search-form" class="wy-form" action="../../../../search.html" method="get">
+ <input type="text" name="q" placeholder="Search docs" />
+ <input type="hidden" name="check_keywords" value="yes" />
+ <input type="hidden" name="area" value="default" />
+ </form>
+</div>
+
+
+ </div>
+
+ <div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
+
+
+
+
+
+
+ <ul>
+<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.html">Installation</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../tutorial.html">Tutorial</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.html">Concepts</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../profiling.html">Data Profiling</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../cli.html">Command Line Interface</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../scheduler.html">Scheduling & Triggers</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.html">Security</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="../../../../api.html">Experimental Rest API</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="../../../../lineage.html">Lineage</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="../../../../code.html">API Reference</a></li>
+</ul>
+
+
+
+ </div>
+ </div>
+ </nav>
+
+ <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
+
+
+ <nav class="wy-nav-top" aria-label="top navigation">
+
+ <i data-toggle="wy-nav-top" class="fa fa-bars"></i>
+ <a href="../../../../index.html">Airflow</a>
+
+ </nav>
+
+
+ <div class="wy-nav-content">
+
+ <div class="rst-content">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+<div role="navigation" aria-label="breadcrumbs navigation">
+
+ <ul class="wy-breadcrumbs">
+
+ <li><a href="../../../../index.html">Docs</a> »</li>
+
+ <li><a href="../../../index.html">Module code</a> »</li>
+
+ <li>airflow.contrib.hooks.cassandra_hook</li>
+
+
+ <li class="wy-breadcrumbs-aside">
+
+ </li>
+
+ </ul>
+
+
+ <hr/>
+</div>
+ <div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
+ <div itemprop="articleBody">
+
+ <h1>Source code for airflow.contrib.hooks.cassandra_hook</h1><div class="highlight"><pre>
+<span></span><span class="c1"># -*- coding: utf-8 -*-</span>
+<span class="c1">#</span>
+<span class="c1"># Licensed to the Apache Software Foundation (ASF) under one</span>
+<span class="c1"># or more contributor license agreements. See the NOTICE file</span>
+<span class="c1"># distributed with this work for additional information</span>
+<span class="c1"># regarding copyright ownership. The ASF licenses this file</span>
+<span class="c1"># to you under the Apache License, Version 2.0 (the</span>
+<span class="c1"># "License"); you may not use this file except in compliance</span>
+<span class="c1"># with the License. You may obtain a copy of the License at</span>
+<span class="c1">#</span>
+<span class="c1"># http://www.apache.org/licenses/LICENSE-2.0</span>
+<span class="c1">#</span>
+<span class="c1"># Unless required by applicable law or agreed to in writing,</span>
+<span class="c1"># software distributed under the License is distributed on an</span>
+<span class="c1"># "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY</span>
+<span class="c1"># KIND, either express or implied. See the License for the</span>
+<span class="c1"># specific language governing permissions and limitations</span>
+<span class="c1"># under the License.</span>
+
+<span class="kn">from</span> <span class="nn">cassandra.cluster</span> <span class="k">import</span> <span class="n">Cluster</span>
+<span class="kn">from</span> <span class="nn">cassandra.policies</span> <span class="k">import</span> <span class="p">(</span><span class="n">RoundRobinPolicy</span><span class="p">,</span> <span class="n">DCAwareRoundRobinPolicy</span><span class="p">,</span>
+ <span class="n">TokenAwarePolicy</span><span class="p">,</span> <span class="n">WhiteListRoundRobinPolicy</span><span class="p">)</span>
+<span class="kn">from</span> <span class="nn">cassandra.auth</span> <span class="k">import</span> <span class="n">PlainTextAuthProvider</span>
+
+<span class="kn">from</span> <span class="nn">airflow.hooks.base_hook</span> <span class="k">import</span> <span class="n">BaseHook</span>
+<span class="kn">from</span> <span class="nn">airflow.utils.log.logging_mixin</span> <span class="k">import</span> <span class="n">LoggingMixin</span>
+
+
+<div class="viewcode-block" id="CassandraHook"><a class="viewcode-back" href="../../../../code.html#airflow.contrib.hooks.cassandra_hook.CassandraHook">[docs]</a><span class="k">class</span> <span class="nc">CassandraHook</span><span class="p">(</span><span class="n">BaseHook</span><span class="p">,</span> <span class="n">LoggingMixin</span><span class="p">):</span>
+ <span class="sd">"""</span>
+<span class="sd"> Hook used to interact with Cassandra</span>
+
+<span class="sd"> Contact points can be specified as a comma-separated string in the 'hosts'</span>
+<span class="sd"> field of the connection.</span>
+
+<span class="sd"> Port can be specified in the port field of the connection.</span>
+
+<span class="sd"> If SSL is enabled in Cassandra, pass in a dict in the extra field as kwargs for</span>
+<span class="sd"> ``ssl.wrap_socket()``. For example:</span>
+<span class="sd"> {</span>
+<span class="sd"> 'ssl_options' : {</span>
+<span class="sd"> 'ca_certs' : PATH_TO_CA_CERTS</span>
+<span class="sd"> }</span>
+<span class="sd"> }</span>
+
+<span class="sd"> Default load balancing policy is RoundRobinPolicy. To specify a different LB policy:</span>
+<span class="sd"> - DCAwareRoundRobinPolicy</span>
+<span class="sd"> {</span>
+<span class="sd"> 'load_balancing_policy': 'DCAwareRoundRobinPolicy',</span>
+<span class="sd"> 'load_balancing_policy_args': {</span>
+<span class="sd"> 'local_dc': LOCAL_DC_NAME, // optional</span>
+<span class="sd"> 'used_hosts_per_remote_dc': SOME_INT_VALUE, // optional</span>
+<span class="sd"> }</span>
+<span class="sd"> }</span>
+<span class="sd"> - WhiteListRoundRobinPolicy</span>
+<span class="sd"> {</span>
+<span class="sd"> 'load_balancing_policy': 'WhiteListRoundRobinPolicy',</span>
+<span class="sd"> 'load_balancing_policy_args': {</span>
+<span class="sd"> 'hosts': ['HOST1', 'HOST2', 'HOST3']</span>
+<span class="sd"> }</span>
+<span class="sd"> }</span>
+<span class="sd"> - TokenAwarePolicy</span>
+<span class="sd"> {</span>
+<span class="sd"> 'load_balancing_policy': 'TokenAwarePolicy',</span>
+<span class="sd"> 'load_balancing_policy_args': {</span>
+<span class="sd"> 'child_load_balancing_policy': CHILD_POLICY_NAME, // optional</span>
+<span class="sd"> 'child_load_balancing_policy_args': { ... } // optional</span>
+<span class="sd"> }</span>
+<span class="sd"> }</span>
+
+<span class="sd"> For details of the Cluster config, see cassandra.cluster.</span>
+<span class="sd"> """</span>
+ <span class="k">def</span> <span class="nf">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">cassandra_conn_id</span><span class="o">=</span><span class="s1">'cassandra_default'</span><span class="p">):</span>
+ <span class="n">conn</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">get_connection</span><span class="p">(</span><span class="n">cassandra_conn_id</span><span class="p">)</span>
+
+ <span class="n">conn_config</span> <span class="o">=</span> <span class="p">{}</span>
+ <span class="k">if</span> <span class="n">conn</span><span class="o">.</span><span class="n">host</span><span class="p">:</span>
+ <span class="n">conn_config</span><span class="p">[</span><span class="s1">'contact_points'</span><span class="p">]</span> <span class="o">=</span> <span class="n">conn</span><span class="o">.</span><span class="n">host</span><span class="o">.</span><span class="n">split</span><span class="p">(</span><span class="s1">','</span><span class="p">)</span>
+
+ <span class="k">if</span> <span class="n">conn</span><span class="o">.</span><span class="n">port</span><span class="p">:</span>
+ <span class="n">conn_config</span><span class="p">[</span><span class="s1">'port'</span><span class="p">]</span> <span class="o">=</span> <span class="nb">int</span><span class="p">(</span><span class="n">conn</span><span class="o">.</span><span class="n">port</span><span class="p">)</span>
+
+ <span class="k">if</span> <span class="n">conn</span><span class="o">.</span><span class="n">login</span><span class="p">:</span>
+ <span class="n">conn_config</span><span class="p">[</span><span class="s1">'auth_provider'</span><span class="p">]</span> <span class="o">=</span> <span class="n">PlainTextAuthProvider</span><span class="p">(</span>
+ <span class="n">username</span><span class="o">=</span><span class="n">conn</span><span class="o">.</span><span class="n">login</span><span class="p">,</span> <span class="n">password</span><span class="o">=</span><span class="n">conn</span><span class="o">.</span><span class="n">password</span><span class="p">)</span>
+
+ <span class="n">policy_name</span> <span class="o">=</span> <span class="n">conn</span><span class="o">.</span><span class="n">extra_dejson</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s1">'load_balancing_policy'</span><span class="p">,</span> <span class="kc">None</span><span class="p">)</span>
+ <span class="n">policy_args</span> <span class="o">=</span> <span class="n">conn</span><span class="o">.</span><span class="n">extra_dejson</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s1">'load_balancing_policy_args'</span><span class="p">,</span> <span class="p">{})</span>
+ <span class="n">lb_policy</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">get_lb_policy</span><span class="p">(</span><span class="n">policy_name</span><span class="p">,</span> <span class="n">policy_args</span><span class="p">)</span>
+ <span class="k">if</span> <span class="n">lb_policy</span><span class="p">:</span>
+ <span class="n">conn_config</span><span class="p">[</span><span class="s1">'load_balancing_policy'</span><span class="p">]</span> <span class="o">=</span> <span class="n">lb_policy</span>
+
+ <span class="n">cql_version</span> <span class="o">=</span> <span class="n">conn</span><span class="o">.</span><span class="n">extra_dejson</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s1">'cql_version'</span><span class="p">,</span> <span class="kc">None</span><span class="p">)</span>
+ <span class="k">if</span> <span class="n">cql_version</span><span class="p">:</span>
+ <span class="n">conn_config</span><span class="p">[</span><span class="s1">'cql_version'</span><span class="p">]</span> <span class="o">=</span> <span class="n">cql_version</span>
+
+ <span class="n">ssl_options</span> <span class="o">=</span> <span class="n">conn</span><span class="o">.</span><span class="n">extra_dejson</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s1">'ssl_options'</span><span class="p">,</span> <span class="kc">None</span><span class="p">)</span>
+ <span class="k">if</span> <span class="n">ssl_options</span><span class="p">:</span>
+ <span class="n">conn_config</span><span class="p">[</span><span class="s1">'ssl_options'</span><span class="p">]</span> <span class="o">=</span> <span class="n">ssl_options</span>
+
+ <span class="bp">self</span><span class="o">.</span><span class="n">cluster</span> <span class="o">=</span> <span class="n">Cluster</span><span class="p">(</span><span class="o">**</span><span class="n">conn_config</span><span class="p">)</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">keyspace</span> <span class="o">=</span> <span class="n">conn</span><span class="o">.</span><span class="n">schema</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">session</span> <span class="o">=</span> <span class="kc">None</span>
+
+<div class="viewcode-block" id="CassandraHook.get_conn"><a class="viewcode-back" href="../../../../code.html#airflow.contrib.hooks.cassandra_hook.CassandraHook.get_conn">[docs]</a> <span class="k">def</span> <span class="nf">get_conn</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
+ <span class="sd">"""</span>
+<span class="sd"> Returns a cassandra Session object</span>
+<span class="sd"> """</span>
+ <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">session</span> <span class="ow">and</span> <span class="ow">not</span> <span class="bp">self</span><span class="o">.</span><span class="n">session</span><span class="o">.</span><span class="n">is_shutdown</span><span class="p">:</span>
+ <span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">session</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">session</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">cluster</span><span class="o">.</span><span class="n">connect</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">keyspace</span><span class="p">)</span>
+ <span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">session</span></div>
+
+ <span class="k">def</span> <span class="nf">get_cluster</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
+ <span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">cluster</span>
+
+<div class="viewcode-block" id="CassandraHook.shutdown_cluster"><a class="viewcode-back" href="../../../../code.html#airflow.contrib.hooks.cassandra_hook.CassandraHook.shutdown_cluster">[docs]</a> <span class="k">def</span> <span class="nf">shutdown_cluster</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
+ <span class="sd">"""</span>
+<span class="sd"> Closes all sessions and connections associated with this Cluster.</span>
+<span class="sd"> """</span>
+ <span class="k">if</span> <span class="ow">not</span> <span class="bp">self</span><span class="o">.</span><span class="n">cluster</span><span class="o">.</span><span class="n">is_shutdown</span><span class="p">:</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">cluster</span><span class="o">.</span><span class="n">shutdown</span><span class="p">()</span></div>
+
+ <span class="nd">@staticmethod</span>
+ <span class="k">def</span> <span class="nf">get_lb_policy</span><span class="p">(</span><span class="n">policy_name</span><span class="p">,</span> <span class="n">policy_args</span><span class="p">):</span>
+ <span class="n">policies</span> <span class="o">=</span> <span class="p">{</span>
+ <span class="s1">'RoundRobinPolicy'</span><span class="p">:</span> <span class="n">RoundRobinPolicy</span><span class="p">,</span>
+ <span class="s1">'DCAwareRoundRobinPolicy'</span><span class="p">:</span> <span class="n">DCAwareRoundRobinPolicy</span><span class="p">,</span>
+ <span class="s1">'WhiteListRoundRobinPolicy'</span><span class="p">:</span> <span class="n">WhiteListRoundRobinPolicy</span><span class="p">,</span>
+ <span class="s1">'TokenAwarePolicy'</span><span class="p">:</span> <span class="n">TokenAwarePolicy</span><span class="p">,</span>
+ <span class="p">}</span>
+
+ <span class="k">if</span> <span class="ow">not</span> <span class="n">policies</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="n">policy_name</span><span class="p">)</span> <span class="ow">or</span> <span class="n">policy_name</span> <span class="o">==</span> <span class="s1">'RoundRobinPolicy'</span><span class="p">:</span>
+ <span class="k">return</span> <span class="n">RoundRobinPolicy</span><span class="p">()</span>
+
+ <span class="k">if</span> <span class="n">policy_name</span> <span class="o">==</span> <span class="s1">'DCAwareRoundRobinPolicy'</span><span class="p">:</span>
+ <span class="n">local_dc</span> <span class="o">=</span> <span class="n">policy_args</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s1">'local_dc'</span><span class="p">,</span> <span class="s1">''</span><span class="p">)</span>
+ <span class="n">used_hosts_per_remote_dc</span> <span class="o">=</span> <span class="nb">int</span><span class="p">(</span><span class="n">policy_args</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s1">'used_hosts_per_remote_dc'</span><span class="p">,</span> <span class="mi">0</span><span class="p">))</span>
+ <span class="k">return</span> <span class="n">DCAwareRoundRobinPolicy</span><span class="p">(</span><span class="n">local_dc</span><span class="p">,</span> <span class="n">used_hosts_per_remote_dc</span><span class="p">)</span>
+
+ <span class="k">if</span> <span class="n">policy_name</span> <span class="o">==</span> <span class="s1">'WhiteListRoundRobinPolicy'</span><span class="p">:</span>
+ <span class="n">hosts</span> <span class="o">=</span> <span class="n">policy_args</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s1">'hosts'</span><span class="p">)</span>
+ <span class="k">if</span> <span class="ow">not</span> <span class="n">hosts</span><span class="p">:</span>
+ <span class="k">raise</span> <span class="ne">Exception</span><span class="p">(</span><span class="s1">'Hosts must be specified for WhiteListRoundRobinPolicy'</span><span class="p">)</span>
+ <span class="k">return</span> <span class="n">WhiteListRoundRobinPolicy</span><span class="p">(</span><span class="n">hosts</span><span class="p">)</span>
+
+ <span class="k">if</span> <span class="n">policy_name</span> <span class="o">==</span> <span class="s1">'TokenAwarePolicy'</span><span class="p">:</span>
+ <span class="n">allowed_child_policies</span> <span class="o">=</span> <span class="p">(</span><span class="s1">'RoundRobinPolicy'</span><span class="p">,</span>
+ <span class="s1">'DCAwareRoundRobinPolicy'</span><span class="p">,</span>
+ <span class="s1">'WhiteListRoundRobinPolicy'</span><span class="p">,)</span>
+ <span class="n">child_policy_name</span> <span class="o">=</span> <span class="n">policy_args</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s1">'child_load_balancing_policy'</span><span class="p">,</span>
+ <span class="s1">'RoundRobinPolicy'</span><span class="p">)</span>
+ <span class="n">child_policy_args</span> <span class="o">=</span> <span class="n">policy_args</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s1">'child_load_balancing_policy_args'</span><span class="p">,</span> <span class="p">{})</span>
+ <span class="k">if</span> <span class="n">child_policy_name</span> <span class="ow">not</span> <span class="ow">in</span> <span class="n">allowed_child_policies</span><span class="p">:</span>
+ <span class="k">return</span> <span class="n">TokenAwarePolicy</span><span class="p">(</span><span class="n">RoundRobinPolicy</span><span class="p">())</span>
+ <span class="k">else</span><span class="p">:</span>
+ <span class="n">child_policy</span> <span class="o">=</span> <span class="n">CassandraHook</span><span class="o">.</span><span class="n">get_lb_policy</span><span class="p">(</span><span class="n">child_policy_name</span><span class="p">,</span>
+ <span class="n">child_policy_args</span><span class="p">)</span>
+ <span class="k">return</span> <span class="n">TokenAwarePolicy</span><span class="p">(</span><span class="n">child_policy</span><span class="p">)</span>
+
+<div class="viewcode-block" id="CassandraHook.record_exists"><a class="viewcode-back" href="../../../../code.html#airflow.contrib.hooks.cassandra_hook.CassandraHook.record_exists">[docs]</a> <span class="k">def</span> <span class="nf">record_exists</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">table</span><span class="p">,</span> <span class="n">keys</span><span class="p">):</span>
+ <span class="sd">"""</span>
+<span class="sd"> Checks if a record exists in Cassandra</span>
+
+<span class="sd"> :param table: Target Cassandra table.</span>
+<span class="sd"> Use dot notation to target a specific keyspace.</span>
+<span class="sd"> :type table: string</span>
+<span class="sd"> :param keys: The keys and their values to check the existence.</span>
+<span class="sd"> :type keys: dict</span>
+<span class="sd"> """</span>
+ <span class="n">keyspace</span> <span class="o">=</span> <span class="kc">None</span>
+ <span class="k">if</span> <span class="s1">'.'</span> <span class="ow">in</span> <span class="n">table</span><span class="p">:</span>
+ <span class="n">keyspace</span><span class="p">,</span> <span class="n">table</span> <span class="o">=</span> <span class="n">table</span><span class="o">.</span><span class="n">split</span><span class="p">(</span><span class="s1">'.'</span><span class="p">,</span> <span class="mi">1</span><span class="p">)</span>
+ <span class="n">ks</span> <span class="o">=</span> <span class="s2">" AND "</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="s2">"</span><span class="si">{}</span><span class="s2">=%(</span><span class="si">{}</span><span class="s2">)s"</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">key</span><span class="p">,</span> <span class="n">key</span><span class="p">)</spa [...]
+ <span class="n">cql</span> <span class="o">=</span> <span class="s2">"SELECT * FROM </span><span class="si">{keyspace}</span><span class="s2">.</span><span class="si">{table}</span><span class="s2"> WHERE </span><span class="si">{keys}</span><span class="s2">"</span><span class="o">.</span><span class="n">format</span><span class="p">(</span>
+ <span class="n">keyspace</span><span class="o">=</span><span class="p">(</span><span class="n">keyspace</span> <span class="ow">or</span> <span class="bp">self</span><span class="o">.</span><span class="n">keyspace</span><span class="p">),</span> <span class="n">table</span><span class="o">=</span><span class="n">table</span><span class="p">,</span> <span class="n">keys</span><span class="o">=</span><span class="n">ks</span><span class="p">)</span>
+
+ <span class="k">try</span><span class="p">:</span>
+ <span class="n">rs</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">get_conn</span><span class="p">()</span><span class="o">.</span><span class="n">execute</span><span class="p">(</span><span class="n">cql</span><span class="p">,</span> <span class="n">keys</span><span class="p">)</span>
+ <span class="k">return</span> <span class="n">rs</span><span class="o">.</span><span class="n">one</span><span class="p">()</span> <span class="ow">is</span> <span class="ow">not</span> <span class="kc">None</span>
+ <span class="k">except</span> <span class="ne">Exception</span><span class="p">:</span>
+ <span class="k">return</span> <span class="kc">False</span></div></div>
+</pre></div>
+
+ </div>
+
+ </div>
+ <footer>
+
+
+ <hr/>
+
+ <div role="contentinfo">
+ <p>
+
+ </p>
+ </div>
+ Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/rtfd/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
+
+</footer>
+
+ </div>
+ </div>
+
+ </section>
+
+ </div>
+
+
+
+
+
+
+
+ <script type="text/javascript" id="documentation_options" data-url_root="../../../../" src="../../../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../../../_static/doctools.js"></script>
+
+
+
+
+ <script type="text/javascript" src="../../../../_static/js/theme.js"></script>
+
+ <script type="text/javascript">
+ jQuery(function () {
+ SphinxRtdTheme.Navigation.enable(true);
+ });
+ </script>
+
+</body>
+</html>
\ No newline at end of file
diff --git a/docs-archive/1.10.1/_modules/airflow/contrib/hooks/cloudant_hook.html b/docs-archive/1.10.1/_modules/airflow/contrib/hooks/cloudant_hook.html
new file mode 100644
index 0000000..42cf9e5
--- /dev/null
+++ b/docs-archive/1.10.1/_modules/airflow/contrib/hooks/cloudant_hook.html
@@ -0,0 +1,294 @@
+
+
+<!DOCTYPE html>
+<!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
+<!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
+<head>
+ <meta charset="utf-8">
+
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
+
+ <title>airflow.contrib.hooks.cloudant_hook — Airflow Documentation</title>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <link rel="stylesheet" href="../../../../_static/css/theme.css" type="text/css" />
+ <link rel="stylesheet" href="../../../../_static/pygments.css" type="text/css" />
+ <link rel="index" title="Index" href="../../../../genindex.html" />
+ <link rel="search" title="Search" href="../../../../search.html" />
+
+
+ <script src="../../../../_static/js/modernizr.min.js"></script>
+
+</head>
+
+<body class="wy-body-for-nav">
+
+
+ <div class="wy-grid-for-nav">
+
+
+ <nav data-toggle="wy-nav-shift" class="wy-nav-side">
+ <div class="wy-side-scroll">
+ <div class="wy-side-nav-search">
+
+
+
+ <a href="../../../../index.html" class="icon icon-home"> Airflow
+
+
+
+ </a>
+
+
+
+
+
+
+
+<div role="search">
+ <form id="rtd-search-form" class="wy-form" action="../../../../search.html" method="get">
+ <input type="text" name="q" placeholder="Search docs" />
+ <input type="hidden" name="check_keywords" value="yes" />
+ <input type="hidden" name="area" value="default" />
+ </form>
+</div>
+
+
+ </div>
+
+ <div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
+
+
+
+
+
+
+ <ul>
+<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.html">Installation</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../tutorial.html">Tutorial</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.html">Concepts</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../profiling.html">Data Profiling</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../cli.html">Command Line Interface</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../scheduler.html">Scheduling & Triggers</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.html">Security</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="../../../../api.html">Experimental Rest API</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="../../../../lineage.html">Lineage</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="../../../../code.html">API Reference</a></li>
+</ul>
+
+
+
+ </div>
+ </div>
+ </nav>
+
+ <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
+
+
+ <nav class="wy-nav-top" aria-label="top navigation">
+
+ <i data-toggle="wy-nav-top" class="fa fa-bars"></i>
+ <a href="../../../../index.html">Airflow</a>
+
+ </nav>
+
+
+ <div class="wy-nav-content">
+
+ <div class="rst-content">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+<div role="navigation" aria-label="breadcrumbs navigation">
+
+ <ul class="wy-breadcrumbs">
+
+ <li><a href="../../../../index.html">Docs</a> »</li>
+
+ <li><a href="../../../index.html">Module code</a> »</li>
+
+ <li>airflow.contrib.hooks.cloudant_hook</li>
+
+
+ <li class="wy-breadcrumbs-aside">
+
+ </li>
+
+ </ul>
+
+
+ <hr/>
+</div>
+ <div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
+ <div itemprop="articleBody">
+
+ <h1>Source code for airflow.contrib.hooks.cloudant_hook</h1><div class="highlight"><pre>
+<span></span><span class="c1"># -*- coding: utf-8 -*-</span>
+<span class="c1">#</span>
+<span class="c1"># Licensed to the Apache Software Foundation (ASF) under one</span>
+<span class="c1"># or more contributor license agreements. See the NOTICE file</span>
+<span class="c1"># distributed with this work for additional information</span>
+<span class="c1"># regarding copyright ownership. The ASF licenses this file</span>
+<span class="c1"># to you under the Apache License, Version 2.0 (the</span>
+<span class="c1"># "License"); you may not use this file except in compliance</span>
+<span class="c1"># with the License. You may obtain a copy of the License at</span>
+<span class="c1">#</span>
+<span class="c1"># http://www.apache.org/licenses/LICENSE-2.0</span>
+<span class="c1">#</span>
+<span class="c1"># Unless required by applicable law or agreed to in writing,</span>
+<span class="c1"># software distributed under the License is distributed on an</span>
+<span class="c1"># "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY</span>
+<span class="c1"># KIND, either express or implied. See the License for the</span>
+<span class="c1"># specific language governing permissions and limitations</span>
+<span class="c1"># under the License.</span>
+
+<span class="kn">from</span> <span class="nn">past.builtins</span> <span class="k">import</span> <span class="n">unicode</span>
+
+<span class="kn">import</span> <span class="nn">cloudant</span>
+
+<span class="kn">from</span> <span class="nn">airflow.exceptions</span> <span class="k">import</span> <span class="n">AirflowException</span>
+<span class="kn">from</span> <span class="nn">airflow.hooks.base_hook</span> <span class="k">import</span> <span class="n">BaseHook</span>
+<span class="kn">from</span> <span class="nn">airflow.utils.log.logging_mixin</span> <span class="k">import</span> <span class="n">LoggingMixin</span>
+
+
+<div class="viewcode-block" id="CloudantHook"><a class="viewcode-back" href="../../../../code.html#airflow.contrib.hooks.cloudant_hook.CloudantHook">[docs]</a><span class="k">class</span> <span class="nc">CloudantHook</span><span class="p">(</span><span class="n">BaseHook</span><span class="p">):</span>
+ <span class="sd">"""Interact with Cloudant.</span>
+
+<span class="sd"> This class is a thin wrapper around the cloudant python library. See the</span>
+<span class="sd"> documentation `here <https://github.com/cloudant-labs/cloudant-python>`_.</span>
+<span class="sd"> """</span>
+ <span class="k">def</span> <span class="nf">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">cloudant_conn_id</span><span class="o">=</span><span class="s1">'cloudant_default'</span><span class="p">):</span>
+ <span class="nb">super</span><span class="p">(</span><span class="n">CloudantHook</span><span class="p">,</span> <span class="bp">self</span><span class="p">)</span><span class="o">.</span><span class="fm">__init__</span><span class="p">(</span><span class="s1">'cloudant'</span><span class="p">)</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">cloudant_conn_id</span> <span class="o">=</span> <span class="n">cloudant_conn_id</span>
+
+ <span class="k">def</span> <span class="nf">get_conn</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
+ <span class="k">def</span> <span class="nf">_str</span><span class="p">(</span><span class="n">s</span><span class="p">):</span>
+ <span class="c1"># cloudant-python doesn't support unicode.</span>
+ <span class="k">if</span> <span class="nb">isinstance</span><span class="p">(</span><span class="n">s</span><span class="p">,</span> <span class="n">unicode</span><span class="p">):</span>
+ <span class="n">log</span> <span class="o">=</span> <span class="n">LoggingMixin</span><span class="p">()</span><span class="o">.</span><span class="n">log</span>
+ <span class="n">log</span><span class="o">.</span><span class="n">debug</span><span class="p">(</span>
+ <span class="s1">'cloudant-python does not support unicode. Encoding </span><span class="si">%s</span><span class="s1"> as '</span>
+ <span class="s1">'ascii using "ignore".'</span><span class="p">,</span> <span class="n">s</span>
+ <span class="p">)</span>
+ <span class="k">return</span> <span class="n">s</span><span class="o">.</span><span class="n">encode</span><span class="p">(</span><span class="s1">'ascii'</span><span class="p">,</span> <span class="s1">'ignore'</span><span class="p">)</span>
+
+ <span class="k">return</span> <span class="n">s</span>
+
+ <span class="n">conn</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">get_connection</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">cloudant_conn_id</span><span class="p">)</span>
+
+ <span class="k">for</span> <span class="n">conn_param</span> <span class="ow">in</span> <span class="p">[</span><span class="s1">'host'</span><span class="p">,</span> <span class="s1">'password'</span><span class="p">,</span> <span class="s1">'schema'</span><span class="p">]:</span>
+ <span class="k">if</span> <span class="ow">not</span> <span class="nb">hasattr</span><span class="p">(</span><span class="n">conn</span><span class="p">,</span> <span class="n">conn_param</span><span class="p">)</span> <span class="ow">or</span> <span class="ow">not</span> <span class="nb">getattr</span><span class="p">(</span><span class="n">conn</span><span class="p">,</span> <span class="n">conn_param</span><span class="p">):</span>
+ <span class="k">raise</span> <span class="n">AirflowException</span><span class="p">(</span>
+ <span class="s1">'missing connection parameter </span><span class="si">{0}</span><span class="s1">'</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">conn_param</span><span class="p">)</span>
+ <span class="p">)</span>
+
+ <span class="c1"># In the connection form:</span>
+ <span class="c1"># - 'host' is renamed to 'Account'</span>
... 2090279 lines suppressed ...