apache-airflow-providers-google 14.1.0__py3-none-any.whl → 15.0.0rc1__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (50) hide show
  1. airflow/providers/google/__init__.py +1 -1
  2. airflow/providers/google/ads/hooks/ads.py +7 -33
  3. airflow/providers/google/ads/transfers/ads_to_gcs.py +1 -17
  4. airflow/providers/google/cloud/hooks/bigquery.py +6 -11
  5. airflow/providers/google/cloud/hooks/cloud_batch.py +1 -2
  6. airflow/providers/google/cloud/hooks/cloud_build.py +1 -54
  7. airflow/providers/google/cloud/hooks/compute.py +4 -3
  8. airflow/providers/google/cloud/hooks/dataflow.py +2 -139
  9. airflow/providers/google/cloud/hooks/dataform.py +6 -12
  10. airflow/providers/google/cloud/hooks/datafusion.py +1 -2
  11. airflow/providers/google/cloud/hooks/dataplex.py +1 -1
  12. airflow/providers/google/cloud/hooks/gcs.py +13 -5
  13. airflow/providers/google/cloud/hooks/life_sciences.py +1 -1
  14. airflow/providers/google/cloud/hooks/translate.py +1 -1
  15. airflow/providers/google/cloud/hooks/vertex_ai/auto_ml.py +3 -2
  16. airflow/providers/google/cloud/hooks/vertex_ai/batch_prediction_job.py +1 -1
  17. airflow/providers/google/cloud/hooks/vertex_ai/custom_job.py +2 -272
  18. airflow/providers/google/cloud/hooks/vertex_ai/endpoint_service.py +2 -1
  19. airflow/providers/google/cloud/hooks/vertex_ai/hyperparameter_tuning_job.py +1 -1
  20. airflow/providers/google/cloud/hooks/vertex_ai/model_service.py +2 -1
  21. airflow/providers/google/cloud/links/cloud_storage_transfer.py +1 -3
  22. airflow/providers/google/cloud/links/dataproc.py +0 -1
  23. airflow/providers/google/cloud/log/gcs_task_handler.py +147 -115
  24. airflow/providers/google/cloud/openlineage/facets.py +32 -32
  25. airflow/providers/google/cloud/openlineage/mixins.py +2 -2
  26. airflow/providers/google/cloud/operators/automl.py +1 -1
  27. airflow/providers/google/cloud/operators/cloud_storage_transfer_service.py +0 -3
  28. airflow/providers/google/cloud/operators/datafusion.py +1 -22
  29. airflow/providers/google/cloud/operators/dataproc.py +1 -143
  30. airflow/providers/google/cloud/operators/dataproc_metastore.py +0 -1
  31. airflow/providers/google/cloud/operators/mlengine.py +3 -1406
  32. airflow/providers/google/cloud/operators/spanner.py +1 -2
  33. airflow/providers/google/cloud/operators/translate.py +2 -2
  34. airflow/providers/google/cloud/operators/vertex_ai/auto_ml.py +0 -12
  35. airflow/providers/google/cloud/operators/vertex_ai/custom_job.py +1 -22
  36. airflow/providers/google/cloud/sensors/cloud_storage_transfer_service.py +4 -3
  37. airflow/providers/google/cloud/sensors/dataproc_metastore.py +1 -1
  38. airflow/providers/google/cloud/transfers/gcs_to_bigquery.py +1 -2
  39. airflow/providers/google/cloud/transfers/sftp_to_gcs.py +23 -10
  40. airflow/providers/google/cloud/triggers/cloud_storage_transfer_service.py +2 -2
  41. airflow/providers/google/common/auth_backend/google_openid.py +1 -1
  42. airflow/providers/google/common/hooks/base_google.py +7 -28
  43. airflow/providers/google/get_provider_info.py +3 -1
  44. airflow/providers/google/marketing_platform/sensors/display_video.py +1 -1
  45. airflow/providers/google/suite/hooks/drive.py +2 -2
  46. {apache_airflow_providers_google-14.1.0.dist-info → apache_airflow_providers_google-15.0.0rc1.dist-info}/METADATA +11 -9
  47. {apache_airflow_providers_google-14.1.0.dist-info → apache_airflow_providers_google-15.0.0rc1.dist-info}/RECORD +49 -50
  48. airflow/providers/google/cloud/utils/mlengine_operator_utils.py +0 -273
  49. {apache_airflow_providers_google-14.1.0.dist-info → apache_airflow_providers_google-15.0.0rc1.dist-info}/WHEEL +0 -0
  50. {apache_airflow_providers_google-14.1.0.dist-info → apache_airflow_providers_google-15.0.0rc1.dist-info}/entry_points.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  airflow/providers/google/LICENSE,sha256=gXPVwptPlW1TJ4HSuG5OMPg-a3h43OGMkZRR1rpwfJA,10850
2
- airflow/providers/google/__init__.py,sha256=Z0dpOYaA5QMP7H_IDiHZm46nBtKifvhhPNAyPsIKY38,1494
3
- airflow/providers/google/get_provider_info.py,sha256=5K_9FY5Pn8CALjBvDpS8CfV-6inCiz6JOcG6c4leeEQ,86457
2
+ airflow/providers/google/__init__.py,sha256=lNhJDxFevcCKp8wCicVal6M_zIXKHxvnCi-Tx3DrDuM,1494
3
+ airflow/providers/google/get_provider_info.py,sha256=TjHgPknRlZVL2NuPf-PB_A5AZgmvETIaA2LPhw7xuX0,86526
4
4
  airflow/providers/google/go_module_utils.py,sha256=XVM-IGME6CPgJA8fgDgkusFc4fz3lEghZaZ4elBkv7s,1780
5
5
  airflow/providers/google/version_compat.py,sha256=aHg90_DtgoSnQvILFICexMyNlHlALBdaeWqkX3dFDug,1605
6
6
  airflow/providers/google/3rd-party-licenses/LICENSES.txt,sha256=vplRFSgyGOzReZVwChEgsa9r2t6hLpZ1hjFR2iN3W-k,1535
@@ -10,11 +10,11 @@ airflow/providers/google/_vendor/json_merge_patch.py,sha256=D_q_klPaf2ljS-vNU0em
10
10
  airflow/providers/google/ads/.gitignore,sha256=z_qaKzblF2LuVvP-06iDord9JBeyzIlNeJ4bx3LbtGc,167
11
11
  airflow/providers/google/ads/__init__.py,sha256=9hdXHABrVpkbpjZgUft39kOFL2xSGeG4GEua0Hmelus,785
12
12
  airflow/providers/google/ads/hooks/__init__.py,sha256=9hdXHABrVpkbpjZgUft39kOFL2xSGeG4GEua0Hmelus,785
13
- airflow/providers/google/ads/hooks/ads.py,sha256=qf2cN-Gh12bOf2-LE5L_brRHWmXmPLcTOjhtzR8J8es,14532
13
+ airflow/providers/google/ads/hooks/ads.py,sha256=YzegTpmRCcJSTv9HwA-QZQMHq4Tl3K0Yk6z054CqdhE,13148
14
14
  airflow/providers/google/ads/operators/__init__.py,sha256=9hdXHABrVpkbpjZgUft39kOFL2xSGeG4GEua0Hmelus,785
15
15
  airflow/providers/google/ads/operators/ads.py,sha256=y8CbnXXMJYMa6tCWY-AQHAbCrtbDrTU1ayHybhtwQqQ,4771
16
16
  airflow/providers/google/ads/transfers/__init__.py,sha256=9hdXHABrVpkbpjZgUft39kOFL2xSGeG4GEua0Hmelus,785
17
- airflow/providers/google/ads/transfers/ads_to_gcs.py,sha256=DdWWuxS83muOlgNBAsOwRgpr4ZF5HXHJr0Qo7WqDkqQ,5986
17
+ airflow/providers/google/ads/transfers/ads_to_gcs.py,sha256=4WufpncK1LLu33mGlGBtulzO7aiwGn2LAousMhAP-3s,5083
18
18
  airflow/providers/google/assets/__init__.py,sha256=9hdXHABrVpkbpjZgUft39kOFL2xSGeG4GEua0Hmelus,785
19
19
  airflow/providers/google/assets/bigquery.py,sha256=Neq_biKPiyTfZGMoFUGoHJqvqGJzqEAN6MVD0uJj8UI,2119
20
20
  airflow/providers/google/assets/gcs.py,sha256=da-u3_4o0p97BTmdqJKbkBU5Ji4vWUkxSO9yTT4RYxo,2250
@@ -26,34 +26,34 @@ airflow/providers/google/cloud/fs/gcs.py,sha256=fJBGhHEE46_U5Rmbs1W0uenvGhECv13C
26
26
  airflow/providers/google/cloud/hooks/__init__.py,sha256=9hdXHABrVpkbpjZgUft39kOFL2xSGeG4GEua0Hmelus,785
27
27
  airflow/providers/google/cloud/hooks/alloy_db.py,sha256=HYsTzxgzmvP_pKuXSRIbdBgg8gXAqzZfb6MkMBtav7g,52567
28
28
  airflow/providers/google/cloud/hooks/automl.py,sha256=kBmoN1eFnGTkt7Vs_FUkKgc_ecl1lOvEeEzFZuCpULU,28832
29
- airflow/providers/google/cloud/hooks/bigquery.py,sha256=JNvw3DaY-Hr49hM4F5UBjsjBADnULUEPXFsb2Rc9nUk,99595
29
+ airflow/providers/google/cloud/hooks/bigquery.py,sha256=pEXUeYvwi5tvTiQydhVzIfpC_UqBmVBIKWNLzB8DkzM,99500
30
30
  airflow/providers/google/cloud/hooks/bigquery_dts.py,sha256=9M5dSjxHZZG9zcLyxZqBu6Kj5jK2rWRDPIjn4s8o-A8,14725
31
31
  airflow/providers/google/cloud/hooks/bigtable.py,sha256=qisd7xBpx_rV0k_KuYN2nIUVDAbdnzCtYDdIFt5OAao,12342
32
- airflow/providers/google/cloud/hooks/cloud_batch.py,sha256=lB3VVRSxqTpRVleqnkeqmbDP17CgrGQSbZki7QGEsCA,8344
33
- airflow/providers/google/cloud/hooks/cloud_build.py,sha256=IfG0kqNmsPjfCcT_yydBo31vDUyBHs-bCBBM3mu2R4g,27552
32
+ airflow/providers/google/cloud/hooks/cloud_batch.py,sha256=zbRkCVYQtxVEugLV3BGeY_bRVlQDLbwnnCWoeAqsnHQ,8317
33
+ airflow/providers/google/cloud/hooks/cloud_build.py,sha256=4iaJUn7zakuENFQ8B7KCqtuDQWwHUBcDXCcZUl959NQ,25394
34
34
  airflow/providers/google/cloud/hooks/cloud_composer.py,sha256=RHfczxo7zfFOnkbVt4DgNoTgsI2iQ7bWtxXwDTqYFJ0,27794
35
35
  airflow/providers/google/cloud/hooks/cloud_memorystore.py,sha256=Wkt1hyftaZ1FTapK_HCjwIIhPyNyXB-OyTlngDPYrSU,40244
36
36
  airflow/providers/google/cloud/hooks/cloud_run.py,sha256=J5zplqjqT_haJSappkwWdYKXwt5Dn_ULaFOwGUEcymA,12588
37
37
  airflow/providers/google/cloud/hooks/cloud_sql.py,sha256=6FrmiooLW4-Gv6aeNUUbNxR1tHW-78IR-5mzTEz9jI0,55183
38
38
  airflow/providers/google/cloud/hooks/cloud_storage_transfer_service.py,sha256=ns0ur-e3BjEmgQH1-asEbw4DxWOFaKj_q9w7fKYfw0U,27252
39
- airflow/providers/google/cloud/hooks/compute.py,sha256=1VP-8PnaYsOcLNu9Tj0vhtjxFb4bfIMaLl74q22BlCo,40435
39
+ airflow/providers/google/cloud/hooks/compute.py,sha256=KkQS7EbepDwiAJsDCS0-oF_s7KSZe7NJCmjj5gfwrvs,40483
40
40
  airflow/providers/google/cloud/hooks/compute_ssh.py,sha256=utOL1-bRZAwuBkufHE5iNkHnsBIPFhY84WhxgDZRVAE,15400
41
41
  airflow/providers/google/cloud/hooks/datacatalog.py,sha256=R_Ut4Cav19dRKCr_HEoRHrNEjHcdefKU9mUuLVKb6QU,54054
42
- airflow/providers/google/cloud/hooks/dataflow.py,sha256=lcHYeuskmtOLUUmujJS169c0i4AWii4xhJWYBYAnLvA,71407
43
- airflow/providers/google/cloud/hooks/dataform.py,sha256=MlTtRbSkTJZKymTF1upQ7BHVMarlEwDw5wD8fnaC_yI,27466
44
- airflow/providers/google/cloud/hooks/datafusion.py,sha256=T4qSw0_r4Nd1Z5rK5V1tzTdUnvHBfXY0kST0QyLFFw0,25594
45
- airflow/providers/google/cloud/hooks/dataplex.py,sha256=7PdPdo0xNuJta0gpxAEtpzDlGrg99tzHKFvLV2eYwYk,88629
42
+ airflow/providers/google/cloud/hooks/dataflow.py,sha256=1FLbKF0e6v5P0I7sD__g-0RDAZtqF5wNXQKjzstOPDY,65165
43
+ airflow/providers/google/cloud/hooks/dataform.py,sha256=Hhtv23XqHanBGiJWGXqA1XdhhlzqEUsFodUFLkoC89I,27370
44
+ airflow/providers/google/cloud/hooks/datafusion.py,sha256=X7UdobDO2j5aEKE8u80AMMJmFUKiH78YRqGMxlUA7cY,25578
45
+ airflow/providers/google/cloud/hooks/dataplex.py,sha256=oQSXRdZy0gk-UtWaShekBIcfLEYVZACXavE-dBLmdMc,88636
46
46
  airflow/providers/google/cloud/hooks/dataprep.py,sha256=_ipvucm5m8ygbHm29a05TSoaXRg7UDqTl1jit5ectqg,12205
47
47
  airflow/providers/google/cloud/hooks/dataproc.py,sha256=TDY4IVoQtnbcoNXMYw1DXNT-5t8UPQ5uDLc-Hy-ygj0,87131
48
48
  airflow/providers/google/cloud/hooks/dataproc_metastore.py,sha256=BBpEiDCX1PZaSVo03v7uJKx2aHmFukn136oOlyU0Kp0,32658
49
49
  airflow/providers/google/cloud/hooks/datastore.py,sha256=C1pPcQJZDwbuMqmz2QPEXWuzHSHW2VxlDemvoPR9LcE,11920
50
50
  airflow/providers/google/cloud/hooks/dlp.py,sha256=-zFziEsrwcWfgse4PJX0Zjqgabc9S951kSs0aXY2l5Q,67348
51
51
  airflow/providers/google/cloud/hooks/functions.py,sha256=eT2KYhIBpmwBVqFzxG1zYEN65RifJSWOiDqFixDivs0,9034
52
- airflow/providers/google/cloud/hooks/gcs.py,sha256=3GwtWot7T6NVJCq4DOnu-8_uw8GhiUT0trHbjA2P6Es,62150
52
+ airflow/providers/google/cloud/hooks/gcs.py,sha256=cggZscTUsNrkk12H5oM7F9haATgjrLCzIugSs2roMlY,62407
53
53
  airflow/providers/google/cloud/hooks/gdm.py,sha256=OIQYBwtsKugZ9Jb_KXHmnz6bQR8_-ccOOIk8u97To2E,3519
54
54
  airflow/providers/google/cloud/hooks/kms.py,sha256=OdPxIzycIQVIw6qLIoVlArNC3QHyrOa878ZorqCG7HY,6336
55
55
  airflow/providers/google/cloud/hooks/kubernetes_engine.py,sha256=SoQcSkopalzfaZuFvhWdQ7BRC4ZosNBWLUt_0dKuCOs,20334
56
- airflow/providers/google/cloud/hooks/life_sciences.py,sha256=OYI8B4BX1DtXmKGvpFFybXp4ZT0_gSN7EMhrFUXkItA,6419
56
+ airflow/providers/google/cloud/hooks/life_sciences.py,sha256=-N6AQAruPDpFOiYMvJMRadPcS8uNP5j-ghJuWcTt8zs,6418
57
57
  airflow/providers/google/cloud/hooks/looker.py,sha256=17i91XPcXos6NixpdXRj3asP14QlFs_M7ZE5H84542E,8959
58
58
  airflow/providers/google/cloud/hooks/managed_kafka.py,sha256=gMmvnyZ_G1YA0Fg8bE1ZRJ8ELF745Bea1Ei2xkEaHeQ,30688
59
59
  airflow/providers/google/cloud/hooks/mlengine.py,sha256=83_-jh46ubSvgwWbQrAcLSxeKM9nZWSNgMSK-a3wSBI,24679
@@ -66,20 +66,20 @@ airflow/providers/google/cloud/hooks/speech_to_text.py,sha256=isBrH_bYeupZQcmSYd
66
66
  airflow/providers/google/cloud/hooks/stackdriver.py,sha256=D-0GuFpmKfmR24vEIprUK7z4HCBWeaK3GPS1T2J4Y_A,25645
67
67
  airflow/providers/google/cloud/hooks/tasks.py,sha256=zNSnrTAnYEaKCL-A61h48eLVEMfCWZt6R41YjXBTSEs,26340
68
68
  airflow/providers/google/cloud/hooks/text_to_speech.py,sha256=JHBPbAsi1duKidt68Ox4pcK5IfhpluFiLchsv5MxcIY,5239
69
- airflow/providers/google/cloud/hooks/translate.py,sha256=Ob-hOlG1Q2kAh5iFxyuRxfHDeXciqa5sNb8J4DG3mbU,51537
69
+ airflow/providers/google/cloud/hooks/translate.py,sha256=QNgPHiboDdSRPJPm1jFSJrVrVWBsmyli6OVls4GJdGU,51539
70
70
  airflow/providers/google/cloud/hooks/video_intelligence.py,sha256=8Z8NZK5PHgeDjTZc2rBFGyGkXR01If6jRQPMZVCGxR8,5571
71
71
  airflow/providers/google/cloud/hooks/vision.py,sha256=lhphhaJi5IfXdhKR58vhj-ZG4clhIqixRJgBNhvxnkA,25931
72
72
  airflow/providers/google/cloud/hooks/workflows.py,sha256=KT3TAJG7qkjUFh-SmNs35hc_Yy2jBV3c1co2rEf9MZI,16188
73
73
  airflow/providers/google/cloud/hooks/vertex_ai/__init__.py,sha256=9hdXHABrVpkbpjZgUft39kOFL2xSGeG4GEua0Hmelus,785
74
- airflow/providers/google/cloud/hooks/vertex_ai/auto_ml.py,sha256=AnJSuMuuas8MLydfHjADYiqBzcKIpjmznWgjq3VzEEY,88146
75
- airflow/providers/google/cloud/hooks/vertex_ai/batch_prediction_job.py,sha256=qHJ_JAfQakW83lYA5DwXg3mxo1pM4BCKR3dcxjZvyoI,34285
76
- airflow/providers/google/cloud/hooks/vertex_ai/custom_job.py,sha256=XYYetL7k3p7H6TnJ_8-dtDkvTy8_XXgOig6WcNNvbfE,196729
74
+ airflow/providers/google/cloud/hooks/vertex_ai/auto_ml.py,sha256=e5S2MhS37JW1ODumYtE3dlvSSAy8UFzYyuvFG3Pk_Ok,88199
75
+ airflow/providers/google/cloud/hooks/vertex_ai/batch_prediction_job.py,sha256=KIjdycRIx08qL-U7wqiETAzU0cPM-_wGpUQkZYhwTHA,34280
76
+ airflow/providers/google/cloud/hooks/vertex_ai/custom_job.py,sha256=SWpJRvCVObt7lP0trSqf-YXOzxAxYIM5ZgRkNGg025Q,184903
77
77
  airflow/providers/google/cloud/hooks/vertex_ai/dataset.py,sha256=IJ7LkZ9sGBM0g_mYns7hS5CTvqIJ2luxfYrmvInftvk,18079
78
- airflow/providers/google/cloud/hooks/vertex_ai/endpoint_service.py,sha256=pMWR8W8tYQeqGOkqW5zyVkEhCAV_DsYMELkhWdrFdUw,15495
78
+ airflow/providers/google/cloud/hooks/vertex_ai/endpoint_service.py,sha256=2RTXqIYooW_kmAjVLACyh0Qnyn4NstOuJouiB67s-TU,15553
79
79
  airflow/providers/google/cloud/hooks/vertex_ai/feature_store.py,sha256=7MoGJj7znSc2uixWN0cNd26VlG_nW7KOrnMW8ZRgosE,6601
80
80
  airflow/providers/google/cloud/hooks/vertex_ai/generative_model.py,sha256=u_Ncx7f0SUiri8DmdOJtCr24YZpjW1jSjrOJsPqfmFA,18843
81
- airflow/providers/google/cloud/hooks/vertex_ai/hyperparameter_tuning_job.py,sha256=QXvj84-Zqrbkcez7AsyE1PnMHrbOXpzzwZmNu862p3k,24579
82
- airflow/providers/google/cloud/hooks/vertex_ai/model_service.py,sha256=6g4MgWN8jRYR4k99EzCFxEs8iofEzwGAnwDFTcLM16g,17809
81
+ airflow/providers/google/cloud/hooks/vertex_ai/hyperparameter_tuning_job.py,sha256=BET_4-ku-zIwnVvEOk8VUIx6slphz8SQHocKu0rN7Sg,24574
82
+ airflow/providers/google/cloud/hooks/vertex_ai/model_service.py,sha256=u8smUqa1rhTfKWyOt2Xq4X3W7T2uvnfbXc97mybKbRQ,17867
83
83
  airflow/providers/google/cloud/hooks/vertex_ai/pipeline_job.py,sha256=72uuTgF_k84ebYB5U73SKwYlX4jhlFaLss_V0oMHC8U,28837
84
84
  airflow/providers/google/cloud/hooks/vertex_ai/prediction_service.py,sha256=U4hTr1dJZ7PB2aV-lq75jooy8wNO4LxjLdNNqU9qgSg,4290
85
85
  airflow/providers/google/cloud/links/__init__.py,sha256=9hdXHABrVpkbpjZgUft39kOFL2xSGeG4GEua0Hmelus,785
@@ -93,7 +93,7 @@ airflow/providers/google/cloud/links/cloud_build.py,sha256=zvjrcOrCmE5DovXGNybPd
93
93
  airflow/providers/google/cloud/links/cloud_functions.py,sha256=gWB4KcyeddlJDA7axWnzbD_hpEuztGIsd46ZMqH3ZCI,2532
94
94
  airflow/providers/google/cloud/links/cloud_memorystore.py,sha256=a9ND4k37srSeohYU5RqVsdUyrFGWb_WoKktNGxuTB4A,3871
95
95
  airflow/providers/google/cloud/links/cloud_sql.py,sha256=CqAOS0vGmfwVFnqsZkP2smt5Q7dMkJPDyx9mzXIbMtw,2534
96
- airflow/providers/google/cloud/links/cloud_storage_transfer.py,sha256=6v9Any7WLk7B4KydkKNd8yH5p2-el8quda2NUY8TPCs,3993
96
+ airflow/providers/google/cloud/links/cloud_storage_transfer.py,sha256=k4ebG86u7HkpExNtx76F48P4RyWUDIMyZ8n9Q7dwQTk,3949
97
97
  airflow/providers/google/cloud/links/cloud_tasks.py,sha256=67RZeqvptqunbL14WZQKx4KyKTlwZcD8sImZ3ZU6C5g,2775
98
98
  airflow/providers/google/cloud/links/compute.py,sha256=SbFObt7WXIeI_mHHcwYBkkeVzxWu2M5-lr9gXYlbsjk,3686
99
99
  airflow/providers/google/cloud/links/data_loss_prevention.py,sha256=ds4dNR4kEVI6heW2IFnxkHBH74FTntt5-tTkn4W4Q4M,9291
@@ -103,7 +103,7 @@ airflow/providers/google/cloud/links/dataform.py,sha256=ndIk7TL5BNx6bUnw0TuMhAWV
103
103
  airflow/providers/google/cloud/links/datafusion.py,sha256=Vq2quWvL47Gp-qz4QUGivrrpRYeNehYunDHUlVERQ_E,4382
104
104
  airflow/providers/google/cloud/links/dataplex.py,sha256=afh1ditWn565C7uCYh1sMBbdoSUTl-qs0MuuE55U2D0,8725
105
105
  airflow/providers/google/cloud/links/dataprep.py,sha256=Hgh9LC-Uzh3jFRVkzbp9tWn48wdIQAHNlIf4nFwtAaQ,2233
106
- airflow/providers/google/cloud/links/dataproc.py,sha256=ts7-AoiYto6s0z4HH-j0eIzrRYjeobvAmdy-AbsU8gE,9273
106
+ airflow/providers/google/cloud/links/dataproc.py,sha256=fLKWy2ngZt5gVYQ6R7l0614i5EEIWBPvInCmXasOOb8,9182
107
107
  airflow/providers/google/cloud/links/datastore.py,sha256=-JjfCKkD6crGb45DO47o6ZeYAslVUPjR-D8v1hZoiLI,2374
108
108
  airflow/providers/google/cloud/links/kubernetes_engine.py,sha256=Azk_A-vN48m9LfmDpkExRjg_NYJ4ZqIUIEDhgA4vdRE,4702
109
109
  airflow/providers/google/cloud/links/life_sciences.py,sha256=hoqmmxXAZS1V15oXKbgnAjgE0pqFejZe6O366UGIwR8,1629
@@ -116,16 +116,16 @@ airflow/providers/google/cloud/links/translate.py,sha256=soYQFLoeHW0XtUdGGO0Ay4D
116
116
  airflow/providers/google/cloud/links/vertex_ai.py,sha256=T5WGK77wKIPTiHtxKuQXvokArjVQYwZPjX5IgJX1dds,11138
117
117
  airflow/providers/google/cloud/links/workflows.py,sha256=Ux7bwq2fspvSoNT4X3xFXX2SSmp8EuwDyPQsTO-z7bI,3303
118
118
  airflow/providers/google/cloud/log/__init__.py,sha256=9hdXHABrVpkbpjZgUft39kOFL2xSGeG4GEua0Hmelus,785
119
- airflow/providers/google/cloud/log/gcs_task_handler.py,sha256=l3zdZuoHIW5etPVA2E2X_VS953KoWQ4uZq3hQRr89Zg,10368
119
+ airflow/providers/google/cloud/log/gcs_task_handler.py,sha256=84zexRsEprkcWiENNXKuYWygyo3nCxF_rGjRYs0xVoU,11059
120
120
  airflow/providers/google/cloud/log/stackdriver_task_handler.py,sha256=KGjso772Oi8U_tg6EA8MvyiNZg4Wggdd1qoEVICC0mE,15824
121
121
  airflow/providers/google/cloud/openlineage/BigQueryJobRunFacet.json,sha256=sWvE1o30bCqBBmB19n6wFZyL6BBcc22kCGWe0qcsYBc,850
122
122
  airflow/providers/google/cloud/openlineage/__init__.py,sha256=9hdXHABrVpkbpjZgUft39kOFL2xSGeG4GEua0Hmelus,785
123
- airflow/providers/google/cloud/openlineage/facets.py,sha256=dGZQlkEuE3ZogxRtU9OXeKfRUlTbsoppUI3VqZRbyZ8,2581
124
- airflow/providers/google/cloud/openlineage/mixins.py,sha256=_nx1_1cj9sSbRn4MXmgtFM8TqRa_KCt9hnPOfQMApIQ,26819
123
+ airflow/providers/google/cloud/openlineage/facets.py,sha256=-PsDTHtswdWQnbbRzOLUKNdqcMserIqu6okCogXk5Mg,2510
124
+ airflow/providers/google/cloud/openlineage/mixins.py,sha256=yZ4VMBj3vZG8nFvK8r0rSxDZ0UtxRRlxKvDYGmJq6tw,26823
125
125
  airflow/providers/google/cloud/openlineage/utils.py,sha256=HbB4uWga0TN7eW564UHFbvuSUTHBuV4SOAEv-bEK968,28608
126
126
  airflow/providers/google/cloud/operators/__init__.py,sha256=9hdXHABrVpkbpjZgUft39kOFL2xSGeG4GEua0Hmelus,785
127
127
  airflow/providers/google/cloud/operators/alloy_db.py,sha256=BcfbGqO0aF9RhTPDkGWNsfg5phtTBvF_w__0bgaXsoM,66500
128
- airflow/providers/google/cloud/operators/automl.py,sha256=XxhEAE6cxMQF6-uQlLMsvc5IrH3SxPbR5k7GpgXiJh4,57112
128
+ airflow/providers/google/cloud/operators/automl.py,sha256=Anpxcd1FQXCSFzGPIOfd3h6wK7B3_Or55uTPBaO8o6M,57114
129
129
  airflow/providers/google/cloud/operators/bigquery.py,sha256=VAJ3bK5IcmsUA_D6dBRk1vnYi7keDBsWTSx5dHj6Lm0,131682
130
130
  airflow/providers/google/cloud/operators/bigquery_dts.py,sha256=icG869NbF8rQp6oRI2qq0aLQCRjT0vwR_sFEHAdbGvc,23215
131
131
  airflow/providers/google/cloud/operators/bigtable.py,sha256=f6IMm7a0FvOjVEpBjQBj-UWFfOvSs5laUddCgkVseBM,26948
@@ -136,16 +136,16 @@ airflow/providers/google/cloud/operators/cloud_composer.py,sha256=XknOnQaiVKgDYV
136
136
  airflow/providers/google/cloud/operators/cloud_memorystore.py,sha256=PBo5e1OCGxKml7WUcdEEpOxZStqfT2seP_Sy59g8_GU,71016
137
137
  airflow/providers/google/cloud/operators/cloud_run.py,sha256=X0bu8L8z4t-jIyfMhyjIpj6Xc87cULblqotGgoHA5bA,21871
138
138
  airflow/providers/google/cloud/operators/cloud_sql.py,sha256=0D4Z2wgaNLl0m46oV-1rNbaEeb1rNQkHmQfPMGYwNT0,53920
139
- airflow/providers/google/cloud/operators/cloud_storage_transfer_service.py,sha256=RhcvSbmvI7h1nHAUT4Jko4KbZBYYTbsu14GcmgF3KsY,50563
139
+ airflow/providers/google/cloud/operators/cloud_storage_transfer_service.py,sha256=nNEdUYxKiExmYQdRo5W3081JefN4ZZD8Sap-3Y0qhEw,50455
140
140
  airflow/providers/google/cloud/operators/compute.py,sha256=H19huz_W4dyE_ScO8Pr3YZsLGmrcqA4f78B5Wh2mrQs,74667
141
141
  airflow/providers/google/cloud/operators/datacatalog.py,sha256=jXngiAo-Rb8hYCJ_txOqH7mTnZIh63ozJRPfxrWQUCM,92989
142
142
  airflow/providers/google/cloud/operators/dataflow.py,sha256=24jaEqWrVajyB15UKaxAQYZOz9bNT4vT-ttXIeMPAck,52309
143
143
  airflow/providers/google/cloud/operators/dataform.py,sha256=txtBvGcoH0dcTdEumN2-ZCA6HIOZTm2nvnG-8Qx_bQo,48772
144
- airflow/providers/google/cloud/operators/datafusion.py,sha256=qXoBHFQ3hVhBaSIWxYZ-Q5ww4RHGgczUcAkYn_AvOxg,41584
144
+ airflow/providers/google/cloud/operators/datafusion.py,sha256=WeTqQ3eLG3Dp1AxDKZoVCBxpewWa-zyhRy7kfROHWCM,40876
145
145
  airflow/providers/google/cloud/operators/dataplex.py,sha256=yU2QwPoHOpo6R40RF05hTxGzldM21gga-gpT14-nMeo,184741
146
146
  airflow/providers/google/cloud/operators/dataprep.py,sha256=MPt0xFDWp61q2FqFayB1IROplm-DhT1WOilHnL7X6xI,10504
147
- airflow/providers/google/cloud/operators/dataproc.py,sha256=OnmMkaCtSTq_afBeoCkFclj5-DG3ACP72myZI0gI0AA,140823
148
- airflow/providers/google/cloud/operators/dataproc_metastore.py,sha256=pfD8tODEVYBqvAfI3UnN1uNCzae83R8s5dxvECqF194,50789
147
+ airflow/providers/google/cloud/operators/dataproc.py,sha256=3wZssZs1GcwnhnOIw2OVS-JXDP2KVzgow3WqCpb4bqI,135150
148
+ airflow/providers/google/cloud/operators/dataproc_metastore.py,sha256=TtXmELUxr9_33eahqk9t7M3D3ze-LMz5oG6Q6jooFik,50731
149
149
  airflow/providers/google/cloud/operators/datastore.py,sha256=ni0o7Tuld6hdUDasMvL31v8Vah7cRL7ZhyF57RKKnFc,24954
150
150
  airflow/providers/google/cloud/operators/dlp.py,sha256=u2UIW2yvo2triOUNDJCxdJSciMC152Ks1W6HaM_g2ZM,120769
151
151
  airflow/providers/google/cloud/operators/functions.py,sha256=ZROP6PWCS_NTQ2tbXBGiQXTSEeSUkOaaMHWluyF8-vA,20182
@@ -154,23 +154,23 @@ airflow/providers/google/cloud/operators/kubernetes_engine.py,sha256=4W5nbFnFDND
154
154
  airflow/providers/google/cloud/operators/life_sciences.py,sha256=4xtpbaWq71GTQ7MeTL1N43AP6u5ecqXMbLeMeVJSDso,4881
155
155
  airflow/providers/google/cloud/operators/looker.py,sha256=LCbN0vv8y0exwvfHbRXmUtNUZIOlSfljInNZK1zcfrs,4063
156
156
  airflow/providers/google/cloud/operators/managed_kafka.py,sha256=5RXLiq1P-YF7xV6RYj_gTibcy4EVShDScbE_gCF0xh0,50067
157
- airflow/providers/google/cloud/operators/mlengine.py,sha256=L3EJBjLH6se7ZCSYVTZhH_1sjoZhGjb2Cnv7DIjnh9o,62692
157
+ airflow/providers/google/cloud/operators/mlengine.py,sha256=YOUv2lDqvmbp7tt0ETVkl90wVRsiu1c8UelgRLuF1xU,4445
158
158
  airflow/providers/google/cloud/operators/natural_language.py,sha256=lAStRPEFGaLPmx2z9lfEZKnZWkKI6lJSW-KVsP_ghPQ,13739
159
159
  airflow/providers/google/cloud/operators/pubsub.py,sha256=4EC0ZjcwxY2M8VLzGthAOHBW5axVNpWQQUED9YjlJrE,37280
160
- airflow/providers/google/cloud/operators/spanner.py,sha256=LCuCOcMqtYhaUghh7YjvaXNNKJzp9maQE_bzwl0RtWc,24965
160
+ airflow/providers/google/cloud/operators/spanner.py,sha256=oLN3PVj0pB6gdjbJdLjDTtkcEPqbZkurtgZS_aP1gGw,24946
161
161
  airflow/providers/google/cloud/operators/speech_to_text.py,sha256=ZojFFdUazlBi-h-ceeJghfMgczvXw2E5XanY5yDx64o,5723
162
162
  airflow/providers/google/cloud/operators/stackdriver.py,sha256=8jdm0HgHQklwbnUmgSfn3P_vODpNptkgEtgOFPZ0tYA,39232
163
163
  airflow/providers/google/cloud/operators/tasks.py,sha256=1Axl2oJl_wSvR8bL_duT-wcaAyVIEj_tr9T-tBxmDMo,48447
164
164
  airflow/providers/google/cloud/operators/text_to_speech.py,sha256=N7fuexVzPfGleEZPRBVinMJ6ALtsDHl0YazQHR0yxS0,6983
165
- airflow/providers/google/cloud/operators/translate.py,sha256=_T86Nq148hwx4dPbq5QbYEsxHPSP4GFH-T3F9wBUOhI,76941
165
+ airflow/providers/google/cloud/operators/translate.py,sha256=4ClgwRFTSn3QdHQKe1tfV9YJBEVYcdvIvEcGgV4LQt4,76945
166
166
  airflow/providers/google/cloud/operators/translate_speech.py,sha256=O7HLlbxXbzUt4Us6kzQBZewWz0VbVCS8C3BrTuBB6wk,7962
167
167
  airflow/providers/google/cloud/operators/video_intelligence.py,sha256=FIyKBPHhkYniJ7VXJhX-_T6YpwPsjWLkKm2-13E8fXg,14192
168
168
  airflow/providers/google/cloud/operators/vision.py,sha256=tg81pPfpiGudAqkGVfqHXt0aYa0EAeXAwQJRKgORyOA,67740
169
169
  airflow/providers/google/cloud/operators/workflows.py,sha256=DV1KQHC-ty1DPhYftxQvL5GTdWryomHUagvxdyYes4M,29002
170
170
  airflow/providers/google/cloud/operators/vertex_ai/__init__.py,sha256=9hdXHABrVpkbpjZgUft39kOFL2xSGeG4GEua0Hmelus,785
171
- airflow/providers/google/cloud/operators/vertex_ai/auto_ml.py,sha256=OiAObWkBxSwhS1emdOM5OsdC0pCp8QRsW422v7s4maE,28863
171
+ airflow/providers/google/cloud/operators/vertex_ai/auto_ml.py,sha256=GoDjVA16bo1es3EgfXgXa1OqpgRg4wPzQxCw8FVIPDQ,28390
172
172
  airflow/providers/google/cloud/operators/vertex_ai/batch_prediction_job.py,sha256=ueDxPg3BnurlTmRf3x6pcf3uieQUdyZAkUJGhpN8NfY,28329
173
- airflow/providers/google/cloud/operators/vertex_ai/custom_job.py,sha256=Xtcp5yT5qYTmABJ07xYT-Kw0Lj4-rqPwmczSRn5DCQA,99023
173
+ airflow/providers/google/cloud/operators/vertex_ai/custom_job.py,sha256=st91BxUAwGAdlsRTU7BkZAk9D7AzxxGz9liVphCjD2E,98266
174
174
  airflow/providers/google/cloud/operators/vertex_ai/dataset.py,sha256=JLVN4TGp1pAhSg_tS-bzAlZkGbUytn6DFcblk0MGpxk,23078
175
175
  airflow/providers/google/cloud/operators/vertex_ai/endpoint_service.py,sha256=3yWuoG05kvt-Qfamd0-ghoFQwz6vJJ3Hin_S-LnKfSA,26766
176
176
  airflow/providers/google/cloud/operators/vertex_ai/feature_store.py,sha256=Uc86lYYoXB4IZFrVzGFSKftttleviJMCXY8jhmJTaTY,7422
@@ -185,14 +185,14 @@ airflow/providers/google/cloud/sensors/bigquery.py,sha256=ljQJLOsorIvTEK4rBlybce
185
185
  airflow/providers/google/cloud/sensors/bigquery_dts.py,sha256=y8Cfs3fmdrjLk9DRnNKugxsIF9JZkqrQa3_WKvriM5M,6449
186
186
  airflow/providers/google/cloud/sensors/bigtable.py,sha256=DWVMXJ3CQUpIKQC-b3MQjvWH1IyrYPrpznIFR0_eYI4,5175
187
187
  airflow/providers/google/cloud/sensors/cloud_composer.py,sha256=FXmqpsEAkjhw6RKA6b8h5bC_xmrs6uqFebyctDNgzf0,9596
188
- airflow/providers/google/cloud/sensors/cloud_storage_transfer_service.py,sha256=VmIsd9HVk3ROMkYV4f2SWPM3UpprtezY5rNBJfGGQdg,6614
188
+ airflow/providers/google/cloud/sensors/cloud_storage_transfer_service.py,sha256=dnrmneTaKj5igKTAbe8Af3R5pc8ADN_SjvUA_TbXnCM,6594
189
189
  airflow/providers/google/cloud/sensors/dataflow.py,sha256=9iEs79IYaPsZh_rFCSAzk1z0VoegzUp__Yr5N4HQqUI,23535
190
190
  airflow/providers/google/cloud/sensors/dataform.py,sha256=Zuwoi7Y5TU3WU1bpL1s3kqKWLGu5wpygmipebjTr8Fc,8500
191
191
  airflow/providers/google/cloud/sensors/datafusion.py,sha256=oXOhb9G19DXvOECJV9pa4pBcUEG7R6X16fiLmSn8tCA,5559
192
192
  airflow/providers/google/cloud/sensors/dataplex.py,sha256=WstDmrmrisIt7bjB_JXIMtFCmFMtzaumM04e2khty1Y,14967
193
193
  airflow/providers/google/cloud/sensors/dataprep.py,sha256=dOQoBr68vg4uUF3e3643JyGXwkPoOERNaUhVrIFAHM4,1940
194
194
  airflow/providers/google/cloud/sensors/dataproc.py,sha256=_HQkO88Hh-ye3M_rNgTv4XLO12jZyrxjwSCWb2HXlGU,7471
195
- airflow/providers/google/cloud/sensors/dataproc_metastore.py,sha256=_ZAX2HkkyAtrygNZEokL0Or9WB8Zhx7gnu9fW7MpOlQ,5459
195
+ airflow/providers/google/cloud/sensors/dataproc_metastore.py,sha256=q6eAbG86X5HQoyxWn5ycpEY2bt8ET9lisCCoDgyBClM,5458
196
196
  airflow/providers/google/cloud/sensors/gcs.py,sha256=KrGjH-qYJ2reJQJjj_MUjhYc4neaF4A4juMrk-Ppx2A,22310
197
197
  airflow/providers/google/cloud/sensors/looker.py,sha256=zwtfCjxoowBoR3iuHlVpKzgwuN4ft6WGy2gzojlflvo,3609
198
198
  airflow/providers/google/cloud/sensors/pubsub.py,sha256=e4N-KvVO5nmG4AUPtQQa8WKMQvYxrNCMhVfKTGOJwKI,9769
@@ -213,7 +213,7 @@ airflow/providers/google/cloud/transfers/bigquery_to_sql.py,sha256=rUlu96RBM_-Pp
213
213
  airflow/providers/google/cloud/transfers/calendar_to_gcs.py,sha256=HlJ5ezgVtDlJcNIr-h6XuS6IUlIwnGEtVza-9yL0-t0,8426
214
214
  airflow/providers/google/cloud/transfers/cassandra_to_gcs.py,sha256=lmst2OQv_QRlvLTyPcJ4QpSpFJtVK5ejEKpVababKbw,15841
215
215
  airflow/providers/google/cloud/transfers/facebook_ads_to_gcs.py,sha256=w8f52kUKE29VBOmsqtacgHgHU4AHyzQu42lzPEhwrVY,10354
216
- airflow/providers/google/cloud/transfers/gcs_to_bigquery.py,sha256=1PS7N5mycFKuCidTQEgbSEevI3f8YAz5upGyV57AIxc,37576
216
+ airflow/providers/google/cloud/transfers/gcs_to_bigquery.py,sha256=Nj4MgnhWT_kXleEGaEoDCuhXQN0mC7kBpDYWpKCprds,37556
217
217
  airflow/providers/google/cloud/transfers/gcs_to_gcs.py,sha256=o9RXCTfH9ecCKfdgJdSFiNG0I3UCMaPE9wA_7b9ikWc,25976
218
218
  airflow/providers/google/cloud/transfers/gcs_to_local.py,sha256=TG_psc2-PMLy_fiK6uofvBPezyAWMcl0kYZpGUbViGU,5727
219
219
  airflow/providers/google/cloud/transfers/gcs_to_sftp.py,sha256=8n9ibEX1WYb6jzx02malQsYH-7la9qFH64vwHFZVSM8,9720
@@ -227,7 +227,7 @@ airflow/providers/google/cloud/transfers/postgres_to_gcs.py,sha256=3DrO_PUlDx_iR
227
227
  airflow/providers/google/cloud/transfers/presto_to_gcs.py,sha256=m2vzL6EuRjtL8dCOnSdorsJWdP_6sEpIdnwQW0BDwMc,7193
228
228
  airflow/providers/google/cloud/transfers/s3_to_gcs.py,sha256=7BwhUVH8pZHTUULH-NMVOT6CgFuTZsdMHaaVRzd-v9w,15647
229
229
  airflow/providers/google/cloud/transfers/salesforce_to_gcs.py,sha256=4rW-ywDmRCJugL2_eHlBJngyuZudTIGbNcTP2FBLLHM,4821
230
- airflow/providers/google/cloud/transfers/sftp_to_gcs.py,sha256=EQ0tkiS788uwl92OpVqz_clCH3w9tIKiSsTFOJvlP9U,9010
230
+ airflow/providers/google/cloud/transfers/sftp_to_gcs.py,sha256=TxAJIyoa-PV-Q1w21IfFZhq53lc-5U7vEMCWjwmus5M,9740
231
231
  airflow/providers/google/cloud/transfers/sheets_to_gcs.py,sha256=GPQLK38HiCcfzCmMVRoY8mXYnLH6qTc0HKKywzIyVS8,5344
232
232
  airflow/providers/google/cloud/transfers/sql_to_gcs.py,sha256=HoxufnI5owHByc_oWdPYpquklLerPSPQBjyXewi1EBg,22501
233
233
  airflow/providers/google/cloud/transfers/trino_to_gcs.py,sha256=xOlZ7JXnSNOGpSKEPXsknotLyx3RUReqn7gparFr-Q0,8163
@@ -239,7 +239,7 @@ airflow/providers/google/cloud/triggers/cloud_build.py,sha256=3YgYlZ1ztqAgLalTdW
239
239
  airflow/providers/google/cloud/triggers/cloud_composer.py,sha256=kXBslOpA3Qu-uhyV-UdGvMGWzz0Y_pdHB4pZHhQQC7Q,9949
240
240
  airflow/providers/google/cloud/triggers/cloud_run.py,sha256=yYv8OWiiJhqKtJcWdw7ASyG2Ikuq8aE2c3Ndgmtt7ec,6052
241
241
  airflow/providers/google/cloud/triggers/cloud_sql.py,sha256=M_k4bw2hdLdmD4dczbB6iB3QBdzPSXQ6Vwboj9I26Gs,4006
242
- airflow/providers/google/cloud/triggers/cloud_storage_transfer_service.py,sha256=WRcSHyEQa_M0qpfgojr_-KOstQ_wjlX1586ojIPSlYk,10066
242
+ airflow/providers/google/cloud/triggers/cloud_storage_transfer_service.py,sha256=BN0xgtlei6nmSkkqjzAj5iiDK3rTM_0R602pFl04dAY,10064
243
243
  airflow/providers/google/cloud/triggers/dataflow.py,sha256=xcOhCk3MzhjGLFhOYWWeiTGPYlrqewTnrQTE6CbOAEs,35159
244
244
  airflow/providers/google/cloud/triggers/datafusion.py,sha256=Qb7QLj02LKUJBT1woDCPbjRYapEGRItiVtQOtieFT0c,6012
245
245
  airflow/providers/google/cloud/triggers/dataplex.py,sha256=RgqGNOG85ihduI81ZQkADbxf8caSeHI4Gha-7ad-yCk,8343
@@ -260,16 +260,15 @@ airflow/providers/google/cloud/utils/external_token_supplier.py,sha256=X99NO5ZnO
260
260
  airflow/providers/google/cloud/utils/field_sanitizer.py,sha256=CJlHnWJUmfVDGJVAAg4RcRiW4dkvXAICA0VbIRVZKiY,6086
261
261
  airflow/providers/google/cloud/utils/field_validator.py,sha256=5ntPS8_LKbH7l70ORMfw8l5Ng9aMg8JkZ9_sp-ULvFU,22422
262
262
  airflow/providers/google/cloud/utils/helpers.py,sha256=g1nMThZRnEAbiPhqmz9ZDRVjXfBq8blgkjr0ebVPipA,1904
263
- airflow/providers/google/cloud/utils/mlengine_operator_utils.py,sha256=7gZ9brI78dArATIpViCFYhP_18InefC61pSn1TdwSBc,11741
264
263
  airflow/providers/google/cloud/utils/mlengine_prediction_summary.py,sha256=U3UKIraP01g14VByj1tVJRH0cqOR_S9RKmBifzYWOo0,7667
265
264
  airflow/providers/google/cloud/utils/validators.py,sha256=S9DSwZhorNXxSeTRRu6BofY_Gp0zAtWChgIeaLLcYpY,1459
266
265
  airflow/providers/google/common/__init__.py,sha256=9hdXHABrVpkbpjZgUft39kOFL2xSGeG4GEua0Hmelus,785
267
266
  airflow/providers/google/common/consts.py,sha256=KKjQX0FO6HP4MuzS8DDfWPoQNk0mhdOrYe5CzDUx2e4,1050
268
267
  airflow/providers/google/common/deprecated.py,sha256=9N4A6AQ3sisIe6P9dt9vXuiWHuGPqKUKk2l-3DEUDT0,7953
269
268
  airflow/providers/google/common/auth_backend/__init__.py,sha256=9hdXHABrVpkbpjZgUft39kOFL2xSGeG4GEua0Hmelus,785
270
- airflow/providers/google/common/auth_backend/google_openid.py,sha256=faoY9LNYfg9rqq95OjVKgjaUUNxmJohfY3Tp6xDFWUE,4958
269
+ airflow/providers/google/common/auth_backend/google_openid.py,sha256=a_uoFwkLqVtSyaot39QdbinvZm4sYRcnuNB3vWzlQVw,4960
271
270
  airflow/providers/google/common/hooks/__init__.py,sha256=9hdXHABrVpkbpjZgUft39kOFL2xSGeG4GEua0Hmelus,785
272
- airflow/providers/google/common/hooks/base_google.py,sha256=AZgZJ6er50bmm0xaY9xvK-U70KNR2rQDhheYB42b58k,33606
271
+ airflow/providers/google/common/hooks/base_google.py,sha256=2GvOKpmjLEqhk3MnZNqJKNo_OB9lZ7nFkG1Tm0FcN0s,32745
273
272
  airflow/providers/google/common/hooks/discovery_api.py,sha256=G_VJZbw4ye33I9JO-WLiyUoRz7WdZ6Yn5ZhcCFkf5ZQ,6482
274
273
  airflow/providers/google/common/hooks/operation_helpers.py,sha256=t_EGS14w7XSUbvhU06D774nh3ACFc68thWuM-y_zDw4,3053
275
274
  airflow/providers/google/common/links/__init__.py,sha256=9hdXHABrVpkbpjZgUft39kOFL2xSGeG4GEua0Hmelus,785
@@ -301,11 +300,11 @@ airflow/providers/google/marketing_platform/operators/display_video.py,sha256=AN
301
300
  airflow/providers/google/marketing_platform/operators/search_ads.py,sha256=riY9QCd3h3pWqz8ofP4gwY0AbsniWn0tSvDFVofESk0,10920
302
301
  airflow/providers/google/marketing_platform/sensors/__init__.py,sha256=9hdXHABrVpkbpjZgUft39kOFL2xSGeG4GEua0Hmelus,785
303
302
  airflow/providers/google/marketing_platform/sensors/campaign_manager.py,sha256=qskot8sthmIRvfQgciaAXtl2jI7hdeiJF0mOOBpR6Rs,3854
304
- airflow/providers/google/marketing_platform/sensors/display_video.py,sha256=gngCoq7g3s5lAnRtnxCvo-xMVNeGoAe9Ad4rXfoVjKg,6202
303
+ airflow/providers/google/marketing_platform/sensors/display_video.py,sha256=f5R9Lw2925APiH2myuzMAgT26-5p8d45mqbfKIG2m54,6202
305
304
  airflow/providers/google/suite/__init__.py,sha256=mlJxuZLkd5x-iq2SBwD3mvRQpt3YR7wjz_nceyF1IaI,787
306
305
  airflow/providers/google/suite/hooks/__init__.py,sha256=mlJxuZLkd5x-iq2SBwD3mvRQpt3YR7wjz_nceyF1IaI,787
307
306
  airflow/providers/google/suite/hooks/calendar.py,sha256=j8y45TXxOdyxdqq6TnS6wfTsEqiBfevZwZQ32nOd5lQ,8999
308
- airflow/providers/google/suite/hooks/drive.py,sha256=ELxFCbrgeasiobIWsi9t7W4fyoSnOJd7bChnT7C0TXg,12637
307
+ airflow/providers/google/suite/hooks/drive.py,sha256=SWFBymtmBAtd4BK0PnxYgPGFNgTa8vACDJsFt-hoxLU,12637
309
308
  airflow/providers/google/suite/hooks/sheets.py,sha256=70A8UahYGMo3xMMJXlg5erh-V7nCDm0IUXtRiFwfv9A,16444
310
309
  airflow/providers/google/suite/operators/__init__.py,sha256=mlJxuZLkd5x-iq2SBwD3mvRQpt3YR7wjz_nceyF1IaI,787
311
310
  airflow/providers/google/suite/operators/sheets.py,sha256=oaAV3AcP30Xn3NJ3xdM2BrVAPb8gWBJeE_KdFO4JHH4,3083
@@ -316,7 +315,7 @@ airflow/providers/google/suite/transfers/gcs_to_gdrive.py,sha256=p3yRcEDp_ffxlHj
316
315
  airflow/providers/google/suite/transfers/gcs_to_sheets.py,sha256=iOrVicksPRSqRTvV2DX5ZgOHHGZekpCr3DvBFBquo_M,4003
317
316
  airflow/providers/google/suite/transfers/local_to_drive.py,sha256=NXAX1r9WGvW0X8af6CKqfFeiHjczRJJzgSOqMRUtrYg,5794
318
317
  airflow/providers/google/suite/transfers/sql_to_sheets.py,sha256=XFc95mXTGlAP9FbcYxOvjHWgiFN03skxXxAUGMqZXcE,4909
319
- apache_airflow_providers_google-14.1.0.dist-info/entry_points.txt,sha256=Ay1Uo7uHxdXCxWew3CyBHumZ44Ld-iR7AcSR2fY-PLw,102
320
- apache_airflow_providers_google-14.1.0.dist-info/WHEEL,sha256=_2ozNFCLWc93bK4WKHCO-eDUENDlo-dgc9cU3qokYO4,82
321
- apache_airflow_providers_google-14.1.0.dist-info/METADATA,sha256=23Kbd8-J20CUvr-l37Nlou058C8ZfDbwoU237L9rlkY,16226
322
- apache_airflow_providers_google-14.1.0.dist-info/RECORD,,
318
+ apache_airflow_providers_google-15.0.0rc1.dist-info/entry_points.txt,sha256=Ay1Uo7uHxdXCxWew3CyBHumZ44Ld-iR7AcSR2fY-PLw,102
319
+ apache_airflow_providers_google-15.0.0rc1.dist-info/WHEEL,sha256=_2ozNFCLWc93bK4WKHCO-eDUENDlo-dgc9cU3qokYO4,82
320
+ apache_airflow_providers_google-15.0.0rc1.dist-info/METADATA,sha256=36H4Dvd4XQxjKOw3nLam659VV2m_4L46Y2FL5JNlpQM,16351
321
+ apache_airflow_providers_google-15.0.0rc1.dist-info/RECORD,,
@@ -1,273 +0,0 @@
1
- # Licensed to the Apache Software Foundation (ASF) under one
2
- # or more contributor license agreements. See the NOTICE file
3
- # distributed with this work for additional information
4
- # regarding copyright ownership. The ASF licenses this file
5
- # to you under the Apache License, Version 2.0 (the
6
- # "License"); you may not use this file except in compliance
7
- # with the License. You may obtain a copy of the License at
8
- #
9
- # http://www.apache.org/licenses/LICENSE-2.0
10
- #
11
- # Unless required by applicable law or agreed to in writing,
12
- # software distributed under the License is distributed on an
13
- # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14
- # KIND, either express or implied. See the License for the
15
- # specific language governing permissions and limitations
16
- # under the License.
17
- """This module contains helper functions for MLEngine operators."""
18
-
19
- from __future__ import annotations
20
-
21
- import base64
22
- import json
23
- import os
24
- import re
25
- from collections.abc import Iterable
26
- from typing import TYPE_CHECKING, Callable, TypeVar
27
- from urllib.parse import urlsplit
28
-
29
- import dill
30
-
31
- from airflow.exceptions import AirflowException
32
- from airflow.providers.apache.beam.hooks.beam import BeamRunnerType
33
- from airflow.providers.apache.beam.operators.beam import BeamRunPythonPipelineOperator
34
- from airflow.providers.common.compat.standard.operators import PythonOperator
35
- from airflow.providers.google.cloud.hooks.gcs import GCSHook
36
- from airflow.providers.google.cloud.operators.mlengine import MLEngineStartBatchPredictionJobOperator
37
-
38
- if TYPE_CHECKING:
39
- from airflow import DAG
40
-
41
- T = TypeVar("T", bound=Callable)
42
-
43
-
44
- def create_evaluate_ops(
45
- task_prefix: str,
46
- data_format: str,
47
- input_paths: list[str],
48
- prediction_path: str,
49
- metric_fn_and_keys: tuple[T, Iterable[str]],
50
- validate_fn: T,
51
- batch_prediction_job_id: str | None = None,
52
- region: str | None = None,
53
- project_id: str | None = None,
54
- dataflow_options: dict | None = None,
55
- model_uri: str | None = None,
56
- model_name: str | None = None,
57
- version_name: str | None = None,
58
- dag: DAG | None = None,
59
- py_interpreter="python3",
60
- ) -> tuple[MLEngineStartBatchPredictionJobOperator, BeamRunPythonPipelineOperator, PythonOperator]:
61
- r"""
62
- Create Operators needed for model evaluation and returns.
63
-
64
- This function is deprecated. All the functionality of legacy MLEngine and new features are available
65
- on the Vertex AI platform.
66
-
67
- To create and view Model Evaluation, please check the documentation:
68
- https://cloud.google.com/vertex-ai/docs/evaluation/using-model-evaluation#create_an_evaluation.
69
-
70
- It gets prediction over inputs via Cloud ML Engine BatchPrediction API by
71
- calling MLEngineBatchPredictionOperator, then summarize and validate
72
- the result via Cloud Dataflow using DataFlowPythonOperator.
73
-
74
- For details and pricing about Batch prediction, please refer to the website
75
- https://cloud.google.com/ml-engine/docs/how-tos/batch-predict
76
- and for Cloud Dataflow, https://cloud.google.com/dataflow/docs/
77
-
78
- It returns three chained operators for prediction, summary, and validation,
79
- named as ``<prefix>-prediction``, ``<prefix>-summary``, and ``<prefix>-validation``,
80
- respectively.
81
- (``<prefix>`` should contain only alphanumeric characters or hyphen.)
82
-
83
- The upstream and downstream can be set accordingly like:
84
-
85
- .. code-block:: python
86
-
87
- pred, _, val = create_evaluate_ops(...)
88
- pred.set_upstream(upstream_op)
89
- ...
90
- downstream_op.set_upstream(val)
91
-
92
- Callers will provide two python callables, metric_fn and validate_fn, in
93
- order to customize the evaluation behavior as they wish.
94
-
95
- - metric_fn receives a dictionary per instance derived from json in the
96
- batch prediction result. The keys might vary depending on the model.
97
- It should return a tuple of metrics.
98
- - validation_fn receives a dictionary of the averaged metrics that metric_fn
99
- generated over all instances.
100
- The key/value of the dictionary matches to what's given by
101
- metric_fn_and_keys arg.
102
- The dictionary contains an additional metric, 'count' to represent the
103
- total number of instances received for evaluation.
104
- The function would raise an exception to mark the task as failed, in a
105
- case the validation result is not okay to proceed (i.e. to set the trained
106
- version as default).
107
-
108
- Typical examples are like this:
109
-
110
- .. code-block:: python
111
-
112
- def get_metric_fn_and_keys():
113
- import math # imports should be outside of the metric_fn below.
114
-
115
- def error_and_squared_error(inst):
116
- label = float(inst["input_label"])
117
- classes = float(inst["classes"]) # 0 or 1
118
- err = abs(classes - label)
119
- squared_err = math.pow(classes - label, 2)
120
- return (err, squared_err) # returns a tuple.
121
-
122
- return error_and_squared_error, ["err", "mse"] # key order must match.
123
-
124
-
125
- def validate_err_and_count(summary):
126
- if summary["err"] > 0.2:
127
- raise ValueError("Too high err>0.2; summary=%s" % summary)
128
- if summary["mse"] > 0.05:
129
- raise ValueError("Too high mse>0.05; summary=%s" % summary)
130
- if summary["count"] < 1000:
131
- raise ValueError("Too few instances<1000; summary=%s" % summary)
132
- return summary
133
-
134
- For the details on the other BatchPrediction-related arguments (project_id,
135
- job_id, region, data_format, input_paths, prediction_path, model_uri),
136
- please refer to MLEngineBatchPredictionOperator too.
137
-
138
- :param task_prefix: a prefix for the tasks. Only alphanumeric characters and
139
- hyphen are allowed (no underscores), since this will be used as dataflow
140
- job name, which doesn't allow other characters.
141
-
142
- :param data_format: either of 'TEXT', 'TF_RECORD', 'TF_RECORD_GZIP'
143
-
144
- :param input_paths: a list of input paths to be sent to BatchPrediction.
145
-
146
- :param prediction_path: GCS path to put the prediction results in.
147
-
148
- :param metric_fn_and_keys: a tuple of metric_fn and metric_keys:
149
-
150
- - metric_fn is a function that accepts a dictionary (for an instance),
151
- and returns a tuple of metric(s) that it calculates.
152
-
153
- - metric_keys is a list of strings to denote the key of each metric.
154
-
155
- :param validate_fn: a function to validate whether the averaged metric(s) is
156
- good enough to push the model.
157
-
158
- :param batch_prediction_job_id: the id to use for the Cloud ML Batch
159
- prediction job. Passed directly to the MLEngineBatchPredictionOperator as
160
- the job_id argument.
161
-
162
- :param project_id: the Google Cloud project id in which to execute
163
- Cloud ML Batch Prediction and Dataflow jobs. If None, then the `dag`'s
164
- `default_args['project_id']` will be used.
165
-
166
- :param region: the Google Cloud region in which to execute Cloud ML
167
- Batch Prediction and Dataflow jobs. If None, then the `dag`'s
168
- `default_args['region']` will be used.
169
-
170
- :param dataflow_options: options to run Dataflow jobs. If None, then the
171
- `dag`'s `default_args['dataflow_default_options']` will be used.
172
-
173
- :param model_uri: GCS path of the model exported by Tensorflow using
174
- ``tensorflow.estimator.export_savedmodel()``. It cannot be used with
175
- model_name or version_name below. See MLEngineBatchPredictionOperator for
176
- more detail.
177
-
178
- :param model_name: Used to indicate a model to use for prediction. Can be
179
- used in combination with version_name, but cannot be used together with
180
- model_uri. See MLEngineBatchPredictionOperator for more detail. If None,
181
- then the `dag`'s `default_args['model_name']` will be used.
182
-
183
- :param version_name: Used to indicate a model version to use for prediction,
184
- in combination with model_name. Cannot be used together with model_uri.
185
- See MLEngineBatchPredictionOperator for more detail. If None, then the
186
- `dag`'s `default_args['version_name']` will be used.
187
-
188
- :param dag: The `DAG` to use for all Operators.
189
-
190
- :param py_interpreter: Python version of the beam pipeline.
191
- If None, this defaults to the python3.
192
- To track python versions supported by beam and related
193
- issues check: https://issues.apache.org/jira/browse/BEAM-1251
194
-
195
- :returns: a tuple of three operators, (prediction, summary, validation)
196
- PythonOperator)
197
- """
198
- batch_prediction_job_id = batch_prediction_job_id or ""
199
- dataflow_options = dataflow_options or {}
200
- region = region or ""
201
-
202
- # Verify that task_prefix doesn't have any special characters except hyphen
203
- # '-', which is the only allowed non-alphanumeric character by Dataflow.
204
- if not re.fullmatch(r"[a-zA-Z][-A-Za-z0-9]*", task_prefix):
205
- raise AirflowException(
206
- "Malformed task_id for DataFlowPythonOperator (only alphanumeric "
207
- "and hyphens are allowed but got: " + task_prefix
208
- )
209
-
210
- metric_fn, metric_keys = metric_fn_and_keys
211
- if not callable(metric_fn):
212
- raise AirflowException("`metric_fn` param must be callable.")
213
- if not callable(validate_fn):
214
- raise AirflowException("`validate_fn` param must be callable.")
215
-
216
- if dag is not None and dag.default_args is not None:
217
- default_args = dag.default_args
218
- project_id = project_id or default_args.get("project_id")
219
- region = region or default_args["region"]
220
- model_name = model_name or default_args.get("model_name")
221
- version_name = version_name or default_args.get("version_name")
222
- dataflow_options = dataflow_options or default_args.get("dataflow_default_options")
223
-
224
- evaluate_prediction = MLEngineStartBatchPredictionJobOperator(
225
- task_id=(task_prefix + "-prediction"),
226
- project_id=project_id,
227
- job_id=batch_prediction_job_id,
228
- region=region,
229
- data_format=data_format,
230
- input_paths=input_paths,
231
- output_path=prediction_path,
232
- uri=model_uri,
233
- model_name=model_name,
234
- version_name=version_name,
235
- dag=dag,
236
- )
237
-
238
- metric_fn_encoded = base64.b64encode(dill.dumps(metric_fn, recurse=True)).decode()
239
- evaluate_summary = BeamRunPythonPipelineOperator(
240
- task_id=(task_prefix + "-summary"),
241
- runner=BeamRunnerType.DataflowRunner,
242
- py_file=os.path.join(os.path.dirname(__file__), "mlengine_prediction_summary.py"),
243
- default_pipeline_options=dataflow_options,
244
- pipeline_options={
245
- "prediction_path": prediction_path,
246
- "metric_fn_encoded": metric_fn_encoded,
247
- "metric_keys": ",".join(metric_keys),
248
- },
249
- py_interpreter=py_interpreter,
250
- py_requirements=["apache-beam[gcp]>=2.46.0"],
251
- dag=dag,
252
- )
253
- evaluate_summary.set_upstream(evaluate_prediction)
254
-
255
- def apply_validate_fn(*args, templates_dict, **kwargs):
256
- prediction_path = templates_dict["prediction_path"]
257
- scheme, bucket, obj, _, _ = urlsplit(prediction_path)
258
- if scheme != "gs" or not bucket or not obj:
259
- raise ValueError(f"Wrong format prediction_path: {prediction_path}")
260
- summary = os.path.join(obj.strip("/"), "prediction.summary.json")
261
- gcs_hook = GCSHook()
262
- summary = json.loads(gcs_hook.download(bucket, summary).decode("utf-8"))
263
- return validate_fn(summary)
264
-
265
- evaluate_validation = PythonOperator(
266
- task_id=(task_prefix + "-validation"),
267
- python_callable=apply_validate_fn,
268
- templates_dict={"prediction_path": prediction_path},
269
- dag=dag,
270
- )
271
- evaluate_validation.set_upstream(evaluate_summary)
272
-
273
- return evaluate_prediction, evaluate_summary, evaluate_validation