This is an automated email from the ASF dual-hosted git repository.
potiuk pushed a change to branch v2-3-test
in repository https://gitbox.apache.org/repos/asf/airflow.git
from 641ce14261 fix 2.3.2 release date. (#24370)
new 2a7c1f8424 Update flask-appbuilder authlib/oauth dependency (#24516)
new 50657119da Get rid of TimedJSONWebSignatureSerializer (#24519)
new df49aa06a6 Update 'rich' to latest version across the board. (#24186)
new 1641b49614 Refresh list of committers (#24398)
new 0c8cda1dd4 Switch Markdown engine to markdown-it-py (#19702)
new 86c4540ded Remove warnings when starting breeze (#24183)
new d7989b60f6 Fix choosing backend versions in breeze's command line
(#24228)
new 797fce76e3 Add command to regenerate breeze command output images
(#24216)
new b5cbad4d3c Better diagnostics for ARM for MySQL and MSSQL (#24185)
new 0d0f57f3bd Fix links to sources for examples (#24386)
new a66af3b17d Add CI-friendly progress output for tests (#24236)
new 6a05f04300 First attempt to have CI-controlled process of releasing
PROD image (#24433)
new 0c106a47d0 Improve production image release workflow (#24481)
new 799074d7f9 Restore capability of reproducing CI failures using new
Breeze (#24402)
new e4c41ade22 Move LOAD_DEFAULT_CONNECTIONS env var to database config
section in CI (#24536)
new c7fafc6516 Add verification steps when releasing the images. (#24520)
new 01eae0e0f0 Added instructions on what to do if your command images are
regenerated (#24581)
new 9c57cf3baf Switch to building images in parallell (#24580)
new 7e08c3a3df Upgrade FAB to 4.1.1 (#24399)
new 839d67da27 Fix recording console for new rich-click 1.5 (#24611)
new 5c7b7993b8 Fix errors revealed on autoupgrade of breeze (#24612)
new 4e43f976a3 Fix usage of `click.get_terminal_size()` (#24616)
new d72b745712 Upgrade FAB to 4.1.2 (#24619)
new 4e29345bf2 We now need at least Flask-WTF 0.15 (#24621)
new 761b2d0f7f Limit azure-servicebus to not be used on ARM (#24635)
new de17f27d30 Allows to specify different Python base image when building
images (#24634)
new d52eeaf022 Convert selective checks to Breeze Python (#24610)
new 4fbea89f0d Switch to new selective-checks in label-when-reviewed
workflow (#24651)
new 44e181796c Cleanup references to selective checks (#24649)
new fbca47eba4 Remove misleading message from CI (#24650)
new 1bea5b0d14 Remove selective checks from the "release workflow" (#24655)
new 0c55c721f2 Use target commit SHA for build image workflow (#24659)
new 4baf1d569a Handle "workflow_run" event properly in selective-check
(#24656)
new 174ee470d5 Fix behaviour of build/pull after recent Breeze changes
(#24657)
new 0d659c96a9 Remove "Label when approved" workflow (#24704)
new 8913c99fce Add ARM image building for regular PRs (#24664)
new 44994a79b7 Fix unnecessary check for ARM images (#24718)
new 2905ede084 Script to filter candidates for PR of the month based on
heuristics (#24654)
new 8e4bb85098 Merge-friendly output of command hashes for breeze (#24711)
The 39 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails. The revisions
listed as "add" were already present in the repository and have only
been added to this reference.
Summary of changes:
.gitattributes | 2 -
.github/actions/checks-action | 1 -
.github/actions/label-when-approved-action | 1 -
.github/workflows/build-images.yml | 147 +++-
.github/workflows/ci.yml | 148 +++-
.github/workflows/codeql-analysis.yml | 20 +-
.github/workflows/label_when_reviewed.yml | 28 -
.../workflows/label_when_reviewed_workflow_run.yml | 177 -----
.github/workflows/release_dockerhub_image.yml | 153 ++++
.gitignore | 4 +
.gitmodules | 6 -
.pre-commit-config.yaml | 57 +-
BREEZE.rst | 47 +-
CI.rst | 15 +-
CONTRIBUTING.rst | 27 -
Dockerfile.ci | 38 +-
IMAGES.rst | 5 +-
PULL_REQUEST_WORKFLOW.rst | 158 -----
RELEASE_NOTES.rst | 1 +
SELECTIVE_CHECKS.md | 144 ----
STATIC_CODE_CHECKS.rst | 2 +-
TESTING.rst | 17 +-
airflow/api/auth/backend/basic_auth.py | 5 +-
airflow/api_connexion/endpoints/dag_endpoint.py | 9 +-
.../api_connexion/endpoints/dag_run_endpoint.py | 20 +-
.../api_connexion/endpoints/extra_link_endpoint.py | 4 +-
airflow/api_connexion/endpoints/log_endpoint.py | 11 +-
airflow/api_connexion/endpoints/pool_endpoint.py | 14 +-
.../api_connexion/endpoints/request_dict.py | 9 +-
.../endpoints/role_and_permission_endpoint.py | 15 +-
airflow/api_connexion/endpoints/task_endpoint.py | 7 +-
.../endpoints/task_instance_endpoint.py | 17 +-
airflow/api_connexion/endpoints/user_endpoint.py | 13 +-
.../api_connexion/endpoints/variable_endpoint.py | 7 +-
airflow/api_connexion/endpoints/xcom_endpoint.py | 5 +-
airflow/api_connexion/schemas/dag_schema.py | 2 +-
.../api_connexion/schemas/task_instance_schema.py | 2 +-
airflow/api_connexion/security.py | 7 +-
.../example_branch_datetime_operator.py | 20 +-
.../example_external_task_marker_dag.py | 26 +-
airflow/models/abstractoperator.py | 1 -
airflow/operators/trigger_dagrun.py | 5 +-
.../example_google_api_youtube_to_s3.py | 3 +-
.../amazon/aws/example_dags/example_s3.py | 5 +-
.../arangodb/example_dags/example_arangodb.py | 4 +-
.../cloud/example_dags/example_automl_tables.py | 4 +-
.../example_cloud_storage_transfer_service_aws.py | 10 +-
.../google/cloud/example_dags/example_pubsub.py | 8 +-
.../google/cloud/example_dags/example_vertex_ai.py | 5 +-
.../google/common/auth_backend/google_openid.py | 2 +-
airflow/providers/mongo/hooks/mongo.py | 2 +-
airflow/sensors/external_task.py | 6 +-
.../utils/airflow_flask_app.py | 41 +-
airflow/utils/jwt_signer.py | 80 +++
airflow/utils/log/file_task_handler.py | 18 +-
airflow/utils/serve_logs.py | 84 ++-
airflow/www/api/experimental/endpoints.py | 3 +-
airflow/www/auth.py | 5 +-
airflow/www/extensions/init_wsgi_middlewares.py | 2 +-
airflow/www/fab_security/manager.py | 37 +-
airflow/www/static/css/main.css | 4 +
airflow/www/utils.py | 5 +-
airflow/www/views.py | 118 ++--
breeze-complete | 3 -
breeze-legacy | 24 -
dev/MANUALLY_BUILDING_IMAGES.md | 96 +++
dev/README_RELEASE_AIRFLOW.md | 113 +--
dev/REFRESHING_CI_CACHE.md | 2 +-
dev/airflow-github | 2 -
dev/breeze/README.md | 2 +-
dev/breeze/SELECTIVE_CHECKS.md | 98 +++
dev/breeze/setup.cfg | 5 +-
dev/breeze/src/airflow_breeze/breeze.py | 6 +-
.../src/airflow_breeze/commands/ci_commands.py | 237 +++++++
.../airflow_breeze/commands/ci_image_commands.py | 169 +++--
.../configuration_and_maintenance_commands.py | 110 ++-
.../airflow_breeze/commands/developer_commands.py | 35 +-
.../src/airflow_breeze/commands/main_command.py | 2 -
.../commands/production_image_commands.py | 134 +++-
.../commands/release_management_commands.py | 71 +-
.../airflow_breeze/commands/testing_commands.py | 191 ++++-
.../src/airflow_breeze/configure_rich_click.py | 5 +-
dev/breeze/src/airflow_breeze/global_constants.py | 111 +--
.../src/airflow_breeze/params/build_ci_params.py | 1 +
.../src/airflow_breeze/params/build_prod_params.py | 3 +-
.../airflow_breeze/params/common_build_params.py | 8 +-
.../src/airflow_breeze/params/shell_params.py | 39 +-
dev/breeze/src/airflow_breeze/pre_commit_ids.py | 8 +-
dev/breeze/src/airflow_breeze/utils/ci_group.py | 8 +-
.../src/airflow_breeze/utils/common_options.py | 64 +-
dev/breeze/src/airflow_breeze/utils/console.py | 14 +
.../airflow_breeze/utils/docker_command_utils.py | 36 +-
dev/breeze/src/airflow_breeze/utils/image.py | 5 +-
.../src/airflow_breeze/utils/md5_build_check.py | 2 +-
dev/breeze/src/airflow_breeze/utils/path_utils.py | 33 +
dev/breeze/src/airflow_breeze/utils/recording.py | 8 +-
dev/breeze/src/airflow_breeze/utils/run_tests.py | 4 +-
dev/breeze/src/airflow_breeze/utils/run_utils.py | 1 +
.../src/airflow_breeze/utils/selective_checks.py | 480 +++++++++++++
dev/breeze/tests/test_commands.py | 12 +-
dev/breeze/tests/test_selective_checks.py | 546 +++++++++++++++
dev/images/release_prod_image.png | Bin 0 -> 76309 bytes
dev/images/release_prod_image_rc.png | Bin 0 -> 65816 bytes
dev/refresh_images.sh | 4 +-
dev/requirements.txt | 2 +
dev/send_email.py | 4 +-
dev/stats/get_important_pr_candidates.py | 180 +++++
docker_tests/test_prod_image.py | 10 +-
{airflow/api_connexion => docs}/__init__.py | 0
docs/apache-airflow-providers-alibaba/index.rst | 6 +
docs/apache-airflow-providers-amazon/index.rst | 6 +
.../apache-airflow-providers-apache-beam/index.rst | 11 +
.../index.rst | 6 +
.../index.rst | 6 +
.../index.rst | 12 +
.../apache-airflow-providers-apache-hive/index.rst | 6 +
.../index.rst | 6 +
.../apache-airflow-providers-apache-livy/index.rst | 6 +
docs/apache-airflow-providers-apache-pig/index.rst | 6 +
.../index.rst | 6 +
.../index.rst | 6 +
docs/apache-airflow-providers-databricks/index.rst | 6 +
docs/apache-airflow-providers-dbt-cloud/index.rst | 6 +
docs/apache-airflow-providers-dingding/index.rst | 6 +
docs/apache-airflow-providers-docker/index.rst | 6 +
docs/apache-airflow-providers-google/index.rst | 6 +
.../operators/cloud/bigquery.rst | 50 +-
.../operators/cloud/datastore.rst | 26 +-
.../operators/cloud/kubernetes_engine.rst | 10 +-
docs/apache-airflow-providers-http/index.rst | 6 +
docs/apache-airflow-providers-jdbc/index.rst | 6 +
docs/apache-airflow-providers-jenkins/index.rst | 6 +
.../index.rst | 6 +
.../index.rst | 6 +
.../index.rst | 6 +
docs/apache-airflow-providers-mysql/index.rst | 6 +
docs/apache-airflow-providers-opsgenie/index.rst | 6 +
docs/apache-airflow-providers-papermill/index.rst | 6 +
docs/apache-airflow-providers-presto/index.rst | 6 +
docs/apache-airflow-providers-qubole/index.rst | 6 +
docs/apache-airflow-providers-salesforce/index.rst | 6 +
.../apache-airflow-providers-singularity/index.rst | 6 +
docs/apache-airflow-providers-snowflake/index.rst | 6 +
docs/apache-airflow-providers-tableau/index.rst | 6 +
docs/apache-airflow-providers-telegram/index.rst | 6 +
docs/apache-airflow-providers-trino/index.rst | 6 +
docs/apache-airflow-providers-yandex/index.rst | 6 +
docs/apache-airflow/python-api-ref.rst | 9 +
docs/build_docs.py | 14 +-
docs/conf.py | 37 +-
docs/exts/docs_build/docs_builder.py | 8 +-
docs/exts/provider_yaml_utils.py | 32 +-
docs/publish_docs.py | 2 +
docs/spelling_wordlist.txt | 9 +
images/breeze/output-build-docs.svg | 318 +++++++--
images/breeze/output-build-image.svg | 357 ++++++++--
images/breeze/output-build-prod-image.svg | 442 +++++++++---
images/breeze/output-cleanup.svg | 118 +++-
images/breeze/output-command-hash-export.svg | 86 ++-
images/breeze/output-commands-hash.txt | 37 +
images/breeze/output-commands.svg | 478 ++++++++++---
images/breeze/output-config.svg | 148 ++--
images/breeze/output-docker-compose-tests.svg | 128 +++-
images/breeze/output-exec.svg | 91 ++-
images/breeze/output-find-newer-dependencies.svg | 133 +++-
images/breeze/output-fix-ownership.svg | 98 ++-
images/breeze/output-free-space.svg | 98 ++-
images/breeze/output-generate-constraints.svg | 192 ++++--
images/breeze/output-prepare-airflow-package.svg | 123 +++-
.../output-prepare-provider-documentation.svg | 173 +++--
images/breeze/output-prepare-provider-packages.svg | 183 +++--
images/breeze/output-pull-image.svg | 185 +++--
images/breeze/output-pull-prod-image.svg | 185 +++--
images/breeze/output-regenerate-command-images.svg | 99 +++
images/breeze/output-release-prod-images.svg | 168 +++--
images/breeze/output-resource-check.svg | 91 ++-
images/breeze/output-selective-check.svg | 136 ++++
images/breeze/output-self-upgrade.svg | 101 ++-
images/breeze/output-setup-autocomplete.svg | 113 ++-
images/breeze/output-shell.svg | 280 ++++++--
images/breeze/output-start-airflow.svg | 290 ++++++--
images/breeze/output-static-checks.svg | 293 ++++++--
images/breeze/output-stop.svg | 106 ++-
images/breeze/output-tests.svg | 189 ++++-
images/breeze/output-verify-image.svg | 132 +++-
images/breeze/output-verify-prod-image.svg | 136 +++-
images/breeze/output-verify-provider-packages.svg | 182 +++--
images/breeze/output-version.svg | 86 ++-
images/pr/pr-full-tests-needed.png | Bin 88512 -> 0 bytes
images/pr/pr-likely-ok-to-merge.png | Bin 98362 -> 0 bytes
images/pr/pr-no-tests-needed-comment.png | Bin 80852 -> 0 bytes
newsfragments/24399.significant.rst | 31 +
newsfragments/24519.misc.rst | 1 +
scripts/ci/docker-compose/_docker.env | 1 +
scripts/ci/docker-compose/base.yml | 1 +
scripts/ci/docker-compose/devcontainer.env | 1 +
scripts/ci/docker-compose/local.yml | 7 +-
scripts/ci/docker-compose/{files.yml => mypy.yml} | 8 +-
.../ci/pre_commit/pre_commit_breeze_cmd_line.py | 29 +-
.../pre_commit_check_2_1_compatibility.py | 44 +-
...m_type.py => pre_commit_check_init_in_tests.py} | 44 +-
.../pre_commit_check_setup_extra_packages_ref.py | 4 +-
...re_commit_check_system_tests_hidden_in_index.py | 72 ++
scripts/ci/pre_commit/pre_commit_flake8.py | 3 +-
.../pre_commit/pre_commit_migration_reference.py | 3 +-
scripts/ci/pre_commit/pre_commit_mypy.py | 3 +-
scripts/ci/pre_commit/pre_commit_ui_lint.py | 3 +-
scripts/ci/pre_commit/pre_commit_www_lint.py | 3 +-
scripts/ci/selective_ci_checks.sh | 766 ---------------------
.../ci_run_single_airflow_test_in_docker.sh | 12 +-
scripts/docker/entrypoint_ci.sh | 38 +-
scripts/in_container/_in_container_utils.sh | 29 +-
scripts/in_container/airflow_ci.cfg | 4 +-
scripts/in_container/check_environment.sh | 2 +-
scripts/in_container/run_docs_build.sh | 3 +-
setup.cfg | 54 +-
setup.py | 32 +-
tests/api_connexion/endpoints/test_dag_endpoint.py | 97 +--
.../endpoints/test_dag_source_endpoint.py | 27 +-
.../api_connexion/endpoints/test_xcom_endpoint.py | 6 +-
tests/api_connexion/schemas/test_dag_schema.py | 321 +++++----
.../config_templates}/__init__.py | 0
tests/conftest.py | 24 +
{airflow/api_connexion => tests/core}/__init__.py | 0
{airflow/api_connexion => tests/dags}/__init__.py | 0
.../dags/subdir1}/__init__.py | 0
.../dags/subdir2}/__init__.py | 0
.../dags/subdir2/subdir3}/__init__.py | 0
.../dags_corrupted}/__init__.py | 0
.../dags_with_system_exit}/__init__.py | 0
.../__init__.py | 0
tests/jobs/test_scheduler_job.py | 1 +
.../api_connexion => tests/secrets}/__init__.py | 0
tests/system/README.md | 2 +-
.../system/providers/amazon}/__init__.py | 0
.../system/providers/amazon/aws}/__init__.py | 0
.../system/providers/apache/kylin}/__init__.py | 0
.../system/providers/cncf}/__init__.py | 0
.../system/providers/elasticsearch}/__init__.py | 0
.../system/providers/github}/__init__.py | 0
tests/system/providers/google/README.md | 2 +-
.../system/providers/google/cloud}/__init__.py | 0
.../providers/google/cloud/azure}/__init__.py | 0
.../providers/google/cloud/bigquery}/__init__.py | 0
.../bigquery/example_bigquery_dataset.py | 0
.../bigquery/example_bigquery_operations.py | 0
.../example_bigquery_operations_location.py | 0
.../bigquery/example_bigquery_queries.py | 0
.../bigquery/example_bigquery_sensors.py | 0
.../bigquery/example_bigquery_tables.py | 0
.../bigquery/example_bigquery_to_bigquery.py | 0
.../bigquery/example_bigquery_to_gcs.py | 0
.../google/cloud/bigquery/resources}/__init__.py | 0
.../bigquery/resources/example_bigquery_query.sql | 0
.../bigquery/resources/update_table_schema.json | 0
.../{ => cloud}/bigquery/resources/us-states.csv | 0
.../providers/google/cloud/cloud_sql}/__init__.py | 0
.../providers/google/cloud/dataproc}/__init__.py | 0
.../{ => cloud}/dataproc/example_dataproc_gke.py | 0
.../google/cloud/dataproc/resources}/__init__.py | 0
.../providers/google/cloud/datastore}/__init__.py | 0
.../datastore/example_datastore_commit.py | 0
.../datastore/example_datastore_export_import.py | 0
.../datastore/example_datastore_query.py | 0
.../datastore/example_datastore_rollback.py | 0
.../system/providers/google/cloud/gcs}/__init__.py | 0
.../{ => cloud}/gcs/example_gcs_to_bigquery.py | 0
.../google/cloud/gcs/resources}/__init__.py | 0
.../google/cloud/kubernetes_engine}/__init__.py | 0
.../kubernetes_engine/example_kubernetes_engine.py | 0
.../providers/google/cloud/spanner}/__init__.py | 0
.../google/cloud/speech_to_text}/__init__.py | 0
.../google/cloud/stackdriver}/__init__.py | 0
.../providers/google/cloud/tasks}/__init__.py | 0
.../google/cloud/text_to_speech}/__init__.py | 0
.../providers/google/cloud/workflows}/__init__.py | 0
.../system/providers/google/workplace}/__init__.py | 0
.../system/providers/presto}/__init__.py | 0
.../test_utils/operators}/__init__.py | 0
.../test_utils/perf}/__init__.py | 0
.../test_utils/perf/dags}/__init__.py | 0
tests/test_utils/remote_user_api_auth_backend.py | 6 +-
.../api_connexion => tests/testconfig}/__init__.py | 0
.../testconfig/conf}/__init__.py | 0
.../api_connexion => tests/triggers}/__init__.py | 0
tests/utils/test_serve_logs.py | 152 +++-
.../www/test_logs}/__init__.py | 0
tests/www/test_utils.py | 112 ++-
.../api_connexion => tests/www/views}/__init__.py | 0
tests/www/views/test_views.py | 25 +-
tests/www/views/test_views_decorators.py | 6 +-
tests/www/views/test_views_log.py | 2 +-
tests/www/views/test_views_mount.py | 4 +-
293 files changed, 9038 insertions(+), 4071 deletions(-)
delete mode 160000 .github/actions/checks-action
delete mode 160000 .github/actions/label-when-approved-action
delete mode 100644 .github/workflows/label_when_reviewed.yml
delete mode 100644 .github/workflows/label_when_reviewed_workflow_run.yml
create mode 100644 .github/workflows/release_dockerhub_image.yml
delete mode 100644 PULL_REQUEST_WORKFLOW.rst
delete mode 100644 SELECTIVE_CHECKS.md
copy tests/system/providers/google/conftest.py =>
airflow/api_connexion/endpoints/request_dict.py (82%)
copy .editorconfig => airflow/utils/airflow_flask_app.py (65%)
create mode 100644 airflow/utils/jwt_signer.py
create mode 100644 dev/MANUALLY_BUILDING_IMAGES.md
create mode 100644 dev/breeze/SELECTIVE_CHECKS.md
create mode 100644 dev/breeze/src/airflow_breeze/commands/ci_commands.py
create mode 100644 dev/breeze/src/airflow_breeze/utils/selective_checks.py
create mode 100644 dev/breeze/tests/test_selective_checks.py
create mode 100644 dev/images/release_prod_image.png
create mode 100644 dev/images/release_prod_image_rc.png
create mode 100755 dev/stats/get_important_pr_candidates.py
copy {airflow/api_connexion => docs}/__init__.py (100%)
create mode 100644 images/breeze/output-commands-hash.txt
create mode 100644 images/breeze/output-regenerate-command-images.svg
create mode 100644 images/breeze/output-selective-check.svg
delete mode 100644 images/pr/pr-full-tests-needed.png
delete mode 100644 images/pr/pr-likely-ok-to-merge.png
delete mode 100644 images/pr/pr-no-tests-needed-comment.png
create mode 100644 newsfragments/24399.significant.rst
create mode 100644 newsfragments/24519.misc.rst
copy scripts/ci/docker-compose/{files.yml => mypy.yml} (85%)
copy scripts/ci/pre_commit/{pre_commit_docstring_param_type.py =>
pre_commit_check_init_in_tests.py} (58%)
create mode 100755
scripts/ci/pre_commit/pre_commit_check_system_tests_hidden_in_index.py
delete mode 100755 scripts/ci/selective_ci_checks.sh
copy {airflow/api_connexion => tests/config_templates}/__init__.py (100%)
copy {airflow/api_connexion => tests/core}/__init__.py (100%)
copy {airflow/api_connexion => tests/dags}/__init__.py (100%)
copy {airflow/api_connexion => tests/dags/subdir1}/__init__.py (100%)
copy {airflow/api_connexion => tests/dags/subdir2}/__init__.py (100%)
copy {airflow/api_connexion => tests/dags/subdir2/subdir3}/__init__.py (100%)
copy {airflow/api_connexion => tests/dags_corrupted}/__init__.py (100%)
copy {airflow/api_connexion => tests/dags_with_system_exit}/__init__.py (100%)
copy {airflow/api_connexion =>
tests/executors/kubernetes_executor_template_files}/__init__.py (100%)
copy {airflow/api_connexion => tests/secrets}/__init__.py (100%)
copy {airflow/api_connexion => tests/system/providers/amazon}/__init__.py
(100%)
copy {airflow/api_connexion => tests/system/providers/amazon/aws}/__init__.py
(100%)
copy {airflow/api_connexion =>
tests/system/providers/apache/kylin}/__init__.py (100%)
copy {airflow/api_connexion => tests/system/providers/cncf}/__init__.py (100%)
copy {airflow/api_connexion =>
tests/system/providers/elasticsearch}/__init__.py (100%)
copy {airflow/api_connexion => tests/system/providers/github}/__init__.py
(100%)
copy {airflow/api_connexion =>
tests/system/providers/google/cloud}/__init__.py (100%)
copy {airflow/api_connexion =>
tests/system/providers/google/cloud/azure}/__init__.py (100%)
copy {airflow/api_connexion =>
tests/system/providers/google/cloud/bigquery}/__init__.py (100%)
rename tests/system/providers/google/{ =>
cloud}/bigquery/example_bigquery_dataset.py (100%)
rename tests/system/providers/google/{ =>
cloud}/bigquery/example_bigquery_operations.py (100%)
rename tests/system/providers/google/{ =>
cloud}/bigquery/example_bigquery_operations_location.py (100%)
rename tests/system/providers/google/{ =>
cloud}/bigquery/example_bigquery_queries.py (100%)
rename tests/system/providers/google/{ =>
cloud}/bigquery/example_bigquery_sensors.py (100%)
rename tests/system/providers/google/{ =>
cloud}/bigquery/example_bigquery_tables.py (100%)
rename tests/system/providers/google/{ =>
cloud}/bigquery/example_bigquery_to_bigquery.py (100%)
rename tests/system/providers/google/{ =>
cloud}/bigquery/example_bigquery_to_gcs.py (100%)
copy {airflow/api_connexion =>
tests/system/providers/google/cloud/bigquery/resources}/__init__.py (100%)
rename tests/system/providers/google/{ =>
cloud}/bigquery/resources/example_bigquery_query.sql (100%)
rename tests/system/providers/google/{ =>
cloud}/bigquery/resources/update_table_schema.json (100%)
rename tests/system/providers/google/{ =>
cloud}/bigquery/resources/us-states.csv (100%)
copy {airflow/api_connexion =>
tests/system/providers/google/cloud/cloud_sql}/__init__.py (100%)
copy {airflow/api_connexion =>
tests/system/providers/google/cloud/dataproc}/__init__.py (100%)
rename tests/system/providers/google/{ =>
cloud}/dataproc/example_dataproc_gke.py (100%)
copy {airflow/api_connexion =>
tests/system/providers/google/cloud/dataproc/resources}/__init__.py (100%)
copy {airflow/api_connexion =>
tests/system/providers/google/cloud/datastore}/__init__.py (100%)
rename tests/system/providers/google/{ =>
cloud}/datastore/example_datastore_commit.py (100%)
rename tests/system/providers/google/{ =>
cloud}/datastore/example_datastore_export_import.py (100%)
rename tests/system/providers/google/{ =>
cloud}/datastore/example_datastore_query.py (100%)
rename tests/system/providers/google/{ =>
cloud}/datastore/example_datastore_rollback.py (100%)
copy {airflow/api_connexion =>
tests/system/providers/google/cloud/gcs}/__init__.py (100%)
rename tests/system/providers/google/{ =>
cloud}/gcs/example_gcs_to_bigquery.py (100%)
copy {airflow/api_connexion =>
tests/system/providers/google/cloud/gcs/resources}/__init__.py (100%)
copy {airflow/api_connexion =>
tests/system/providers/google/cloud/kubernetes_engine}/__init__.py (100%)
rename tests/system/providers/google/{ =>
cloud}/kubernetes_engine/example_kubernetes_engine.py (100%)
copy {airflow/api_connexion =>
tests/system/providers/google/cloud/spanner}/__init__.py (100%)
copy {airflow/api_connexion =>
tests/system/providers/google/cloud/speech_to_text}/__init__.py (100%)
copy {airflow/api_connexion =>
tests/system/providers/google/cloud/stackdriver}/__init__.py (100%)
copy {airflow/api_connexion =>
tests/system/providers/google/cloud/tasks}/__init__.py (100%)
copy {airflow/api_connexion =>
tests/system/providers/google/cloud/text_to_speech}/__init__.py (100%)
copy {airflow/api_connexion =>
tests/system/providers/google/cloud/workflows}/__init__.py (100%)
copy {airflow/api_connexion =>
tests/system/providers/google/workplace}/__init__.py (100%)
copy {airflow/api_connexion => tests/system/providers/presto}/__init__.py
(100%)
copy {airflow/api_connexion => tests/test_utils/operators}/__init__.py (100%)
copy {airflow/api_connexion => tests/test_utils/perf}/__init__.py (100%)
copy {airflow/api_connexion => tests/test_utils/perf/dags}/__init__.py (100%)
copy {airflow/api_connexion => tests/testconfig}/__init__.py (100%)
copy {airflow/api_connexion => tests/testconfig/conf}/__init__.py (100%)
copy {airflow/api_connexion => tests/triggers}/__init__.py (100%)
copy {airflow/api_connexion => tests/www/test_logs}/__init__.py (100%)
copy {airflow/api_connexion => tests/www/views}/__init__.py (100%)