apache-airflow-providers-google 17.1.0__py3-none-any.whl → 17.2.0__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 (35) hide show
  1. airflow/providers/google/__init__.py +1 -1
  2. airflow/providers/google/cloud/hooks/bigquery.py +0 -8
  3. airflow/providers/google/cloud/hooks/cloud_composer.py +6 -1
  4. airflow/providers/google/cloud/hooks/cloud_sql.py +3 -3
  5. airflow/providers/google/cloud/hooks/cloud_storage_transfer_service.py +10 -5
  6. airflow/providers/google/cloud/hooks/dataflow.py +1 -1
  7. airflow/providers/google/cloud/hooks/spanner.py +26 -6
  8. airflow/providers/google/cloud/hooks/vertex_ai/generative_model.py +3 -0
  9. airflow/providers/google/cloud/openlineage/utils.py +14 -0
  10. airflow/providers/google/cloud/operators/bigquery.py +9 -1
  11. airflow/providers/google/cloud/operators/cloud_composer.py +9 -3
  12. airflow/providers/google/cloud/operators/dataplex.py +12 -12
  13. airflow/providers/google/cloud/operators/dataproc.py +15 -8
  14. airflow/providers/google/cloud/operators/pubsub.py +55 -8
  15. airflow/providers/google/cloud/operators/spanner.py +3 -2
  16. airflow/providers/google/cloud/operators/vertex_ai/generative_model.py +9 -2
  17. airflow/providers/google/cloud/sensors/cloud_composer.py +30 -0
  18. airflow/providers/google/cloud/transfers/bigquery_to_mssql.py +72 -1
  19. airflow/providers/google/cloud/transfers/bigquery_to_sql.py +7 -3
  20. airflow/providers/google/cloud/transfers/gcs_to_bigquery.py +0 -6
  21. airflow/providers/google/cloud/transfers/gcs_to_sftp.py +8 -2
  22. airflow/providers/google/cloud/transfers/oracle_to_gcs.py +27 -2
  23. airflow/providers/google/cloud/transfers/postgres_to_gcs.py +42 -9
  24. airflow/providers/google/cloud/triggers/bigquery.py +23 -19
  25. airflow/providers/google/cloud/triggers/cloud_composer.py +48 -10
  26. airflow/providers/google/cloud/triggers/dataplex.py +14 -2
  27. airflow/providers/google/cloud/triggers/dataproc.py +63 -46
  28. airflow/providers/google/common/utils/get_secret.py +31 -0
  29. airflow/providers/google/suite/hooks/sheets.py +15 -1
  30. airflow/providers/google/suite/operators/sheets.py +5 -0
  31. airflow/providers/google/version_compat.py +6 -0
  32. {apache_airflow_providers_google-17.1.0.dist-info → apache_airflow_providers_google-17.2.0.dist-info}/METADATA +9 -10
  33. {apache_airflow_providers_google-17.1.0.dist-info → apache_airflow_providers_google-17.2.0.dist-info}/RECORD +35 -34
  34. {apache_airflow_providers_google-17.1.0.dist-info → apache_airflow_providers_google-17.2.0.dist-info}/WHEEL +0 -0
  35. {apache_airflow_providers_google-17.1.0.dist-info → apache_airflow_providers_google-17.2.0.dist-info}/entry_points.txt +0 -0
@@ -27,21 +27,23 @@ from typing import TYPE_CHECKING, Any
27
27
 
28
28
  from asgiref.sync import sync_to_async
29
29
  from google.api_core.exceptions import NotFound
30
- from google.cloud.dataproc_v1 import Batch, Cluster, ClusterStatus, JobStatus
30
+ from google.cloud.dataproc_v1 import Batch, Cluster, ClusterStatus, Job, JobStatus
31
31
 
32
32
  from airflow.exceptions import AirflowException
33
- from airflow.models.taskinstance import TaskInstance
34
33
  from airflow.providers.google.cloud.hooks.dataproc import DataprocAsyncHook, DataprocHook
35
34
  from airflow.providers.google.cloud.utils.dataproc import DataprocOperationType
36
35
  from airflow.providers.google.common.hooks.base_google import PROVIDE_PROJECT_ID
37
36
  from airflow.providers.google.version_compat import AIRFLOW_V_3_0_PLUS
38
37
  from airflow.triggers.base import BaseTrigger, TriggerEvent
39
- from airflow.utils.session import provide_session
40
38
  from airflow.utils.state import TaskInstanceState
41
39
 
42
40
  if TYPE_CHECKING:
43
41
  from sqlalchemy.orm.session import Session
44
42
 
43
+ if not AIRFLOW_V_3_0_PLUS:
44
+ from airflow.models.taskinstance import TaskInstance
45
+ from airflow.utils.session import provide_session
46
+
45
47
 
46
48
  class DataprocBaseTrigger(BaseTrigger):
47
49
  """Base class for Dataproc triggers."""
@@ -119,29 +121,31 @@ class DataprocSubmitTrigger(DataprocBaseTrigger):
119
121
  },
120
122
  )
121
123
 
122
- @provide_session
123
- def get_task_instance(self, session: Session) -> TaskInstance:
124
- """
125
- Get the task instance for the current task.
124
+ if not AIRFLOW_V_3_0_PLUS:
126
125
 
127
- :param session: Sqlalchemy session
128
- """
129
- query = session.query(TaskInstance).filter(
130
- TaskInstance.dag_id == self.task_instance.dag_id,
131
- TaskInstance.task_id == self.task_instance.task_id,
132
- TaskInstance.run_id == self.task_instance.run_id,
133
- TaskInstance.map_index == self.task_instance.map_index,
134
- )
135
- task_instance = query.one_or_none()
136
- if task_instance is None:
137
- raise AirflowException(
138
- "TaskInstance with dag_id: %s,task_id: %s, run_id: %s and map_index: %s is not found",
139
- self.task_instance.dag_id,
140
- self.task_instance.task_id,
141
- self.task_instance.run_id,
142
- self.task_instance.map_index,
126
+ @provide_session
127
+ def get_task_instance(self, session: Session) -> TaskInstance:
128
+ """
129
+ Get the task instance for the current task.
130
+
131
+ :param session: Sqlalchemy session
132
+ """
133
+ query = session.query(TaskInstance).filter(
134
+ TaskInstance.dag_id == self.task_instance.dag_id,
135
+ TaskInstance.task_id == self.task_instance.task_id,
136
+ TaskInstance.run_id == self.task_instance.run_id,
137
+ TaskInstance.map_index == self.task_instance.map_index,
143
138
  )
144
- return task_instance
139
+ task_instance = query.one_or_none()
140
+ if task_instance is None:
141
+ raise AirflowException(
142
+ "TaskInstance with dag_id: %s,task_id: %s, run_id: %s and map_index: %s is not found",
143
+ self.task_instance.dag_id,
144
+ self.task_instance.task_id,
145
+ self.task_instance.run_id,
146
+ self.task_instance.map_index,
147
+ )
148
+ return task_instance
145
149
 
146
150
  async def get_task_state(self):
147
151
  from airflow.sdk.execution_time.task_runner import RuntimeTaskInstance
@@ -190,7 +194,9 @@ class DataprocSubmitTrigger(DataprocBaseTrigger):
190
194
  if state in (JobStatus.State.DONE, JobStatus.State.CANCELLED, JobStatus.State.ERROR):
191
195
  break
192
196
  await asyncio.sleep(self.polling_interval_seconds)
193
- yield TriggerEvent({"job_id": self.job_id, "job_state": state, "job": job})
197
+ yield TriggerEvent(
198
+ {"job_id": self.job_id, "job_state": JobStatus.State(state).name, "job": Job.to_dict(job)}
199
+ )
194
200
  except asyncio.CancelledError:
195
201
  self.log.info("Task got cancelled.")
196
202
  try:
@@ -208,7 +214,12 @@ class DataprocSubmitTrigger(DataprocBaseTrigger):
208
214
  job_id=self.job_id, project_id=self.project_id, region=self.region
209
215
  )
210
216
  self.log.info("Job: %s is cancelled", self.job_id)
211
- yield TriggerEvent({"job_id": self.job_id, "job_state": ClusterStatus.State.DELETING})
217
+ yield TriggerEvent(
218
+ {
219
+ "job_id": self.job_id,
220
+ "job_state": ClusterStatus.State.DELETING.name,
221
+ }
222
+ )
212
223
  except Exception as e:
213
224
  self.log.error("Failed to cancel the job: %s with error : %s", self.job_id, str(e))
214
225
  raise e
@@ -251,24 +262,26 @@ class DataprocClusterTrigger(DataprocBaseTrigger):
251
262
  },
252
263
  )
253
264
 
254
- @provide_session
255
- def get_task_instance(self, session: Session) -> TaskInstance:
256
- query = session.query(TaskInstance).filter(
257
- TaskInstance.dag_id == self.task_instance.dag_id,
258
- TaskInstance.task_id == self.task_instance.task_id,
259
- TaskInstance.run_id == self.task_instance.run_id,
260
- TaskInstance.map_index == self.task_instance.map_index,
261
- )
262
- task_instance = query.one_or_none()
263
- if task_instance is None:
264
- raise AirflowException(
265
- "TaskInstance with dag_id: %s,task_id: %s, run_id: %s and map_index: %s is not found.",
266
- self.task_instance.dag_id,
267
- self.task_instance.task_id,
268
- self.task_instance.run_id,
269
- self.task_instance.map_index,
265
+ if not AIRFLOW_V_3_0_PLUS:
266
+
267
+ @provide_session
268
+ def get_task_instance(self, session: Session) -> TaskInstance:
269
+ query = session.query(TaskInstance).filter(
270
+ TaskInstance.dag_id == self.task_instance.dag_id,
271
+ TaskInstance.task_id == self.task_instance.task_id,
272
+ TaskInstance.run_id == self.task_instance.run_id,
273
+ TaskInstance.map_index == self.task_instance.map_index,
270
274
  )
271
- return task_instance
275
+ task_instance = query.one_or_none()
276
+ if task_instance is None:
277
+ raise AirflowException(
278
+ "TaskInstance with dag_id: %s,task_id: %s, run_id: %s and map_index: %s is not found.",
279
+ self.task_instance.dag_id,
280
+ self.task_instance.task_id,
281
+ self.task_instance.run_id,
282
+ self.task_instance.map_index,
283
+ )
284
+ return task_instance
272
285
 
273
286
  async def get_task_state(self):
274
287
  from airflow.sdk.execution_time.task_runner import RuntimeTaskInstance
@@ -316,7 +329,7 @@ class DataprocClusterTrigger(DataprocBaseTrigger):
316
329
  yield TriggerEvent(
317
330
  {
318
331
  "cluster_name": self.cluster_name,
319
- "cluster_state": ClusterStatus.State(ClusterStatus.State.DELETING).name,
332
+ "cluster_state": ClusterStatus.State.DELETING.name, # type: ignore
320
333
  "cluster": Cluster.to_dict(cluster),
321
334
  }
322
335
  )
@@ -422,12 +435,16 @@ class DataprocBatchTrigger(DataprocBaseTrigger):
422
435
 
423
436
  if state in (Batch.State.FAILED, Batch.State.SUCCEEDED, Batch.State.CANCELLED):
424
437
  break
425
- self.log.info("Current state is %s", state)
438
+ self.log.info("Current state is %s", Batch.State(state).name)
426
439
  self.log.info("Sleeping for %s seconds.", self.polling_interval_seconds)
427
440
  await asyncio.sleep(self.polling_interval_seconds)
428
441
 
429
442
  yield TriggerEvent(
430
- {"batch_id": self.batch_id, "batch_state": state, "batch_state_message": batch.state_message}
443
+ {
444
+ "batch_id": self.batch_id,
445
+ "batch_state": Batch.State(state).name,
446
+ "batch_state_message": batch.state_message,
447
+ }
431
448
  )
432
449
 
433
450
 
@@ -0,0 +1,31 @@
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
+
18
+ from __future__ import annotations
19
+
20
+ from google.cloud.exceptions import NotFound
21
+
22
+ from airflow.providers.google.cloud.hooks.secret_manager import (
23
+ GoogleCloudSecretManagerHook,
24
+ )
25
+
26
+
27
+ def get_secret(secret_id: str) -> str:
28
+ hook = GoogleCloudSecretManagerHook()
29
+ if hook.secret_exists(secret_id=secret_id):
30
+ return hook.access_secret(secret_id=secret_id).payload.data.decode()
31
+ raise NotFound("The secret '%s' not found", secret_id)
@@ -22,6 +22,7 @@ from __future__ import annotations
22
22
  from collections.abc import Sequence
23
23
  from typing import Any
24
24
 
25
+ from google.api_core.client_options import ClientOptions
25
26
  from googleapiclient.discovery import build
26
27
 
27
28
  from airflow.exceptions import AirflowException
@@ -44,6 +45,8 @@ class GSheetsHook(GoogleBaseHook):
44
45
  If set as a sequence, the identities from the list must grant
45
46
  Service Account Token Creator IAM role to the directly preceding identity, with first
46
47
  account from the list granting this role to the originating account.
48
+ :param api_endpoint: Optional. Custom API endpoint, i.e: regional or private endpoint.
49
+ This can be used to target private VPC or restricted access endpoints.
47
50
  """
48
51
 
49
52
  def __init__(
@@ -51,6 +54,7 @@ class GSheetsHook(GoogleBaseHook):
51
54
  gcp_conn_id: str = "google_cloud_default",
52
55
  api_version: str = "v4",
53
56
  impersonation_chain: str | Sequence[str] | None = None,
57
+ api_endpoint: str | None = None,
54
58
  ) -> None:
55
59
  super().__init__(
56
60
  gcp_conn_id=gcp_conn_id,
@@ -58,6 +62,7 @@ class GSheetsHook(GoogleBaseHook):
58
62
  )
59
63
  self.gcp_conn_id = gcp_conn_id
60
64
  self.api_version = api_version
65
+ self.api_endpoint = api_endpoint
61
66
  self._conn = None
62
67
 
63
68
  def get_conn(self) -> Any:
@@ -68,7 +73,16 @@ class GSheetsHook(GoogleBaseHook):
68
73
  """
69
74
  if not self._conn:
70
75
  http_authorized = self._authorize()
71
- self._conn = build("sheets", self.api_version, http=http_authorized, cache_discovery=False)
76
+ client_options = None
77
+ if self.api_endpoint:
78
+ client_options = ClientOptions(api_endpoint=self.api_endpoint)
79
+ self._conn = build(
80
+ "sheets",
81
+ self.api_version,
82
+ http=http_authorized,
83
+ cache_discovery=False,
84
+ client_options=client_options,
85
+ )
72
86
 
73
87
  return self._conn
74
88
 
@@ -42,6 +42,8 @@ class GoogleSheetsCreateSpreadsheetOperator(BaseOperator):
42
42
  If set as a sequence, the identities from the list must grant
43
43
  Service Account Token Creator IAM role to the directly preceding identity, with first
44
44
  account from the list granting this role to the originating account (templated).
45
+ :param api_endpoint: Optional. Custom API endpoint, e.g: private.googleapis.com.
46
+ This can be used to target private VPC or restricted access endpoints.
45
47
  """
46
48
 
47
49
  template_fields: Sequence[str] = (
@@ -55,17 +57,20 @@ class GoogleSheetsCreateSpreadsheetOperator(BaseOperator):
55
57
  spreadsheet: dict[str, Any],
56
58
  gcp_conn_id: str = "google_cloud_default",
57
59
  impersonation_chain: str | Sequence[str] | None = None,
60
+ api_endpoint: str | None = None,
58
61
  **kwargs,
59
62
  ) -> None:
60
63
  super().__init__(**kwargs)
61
64
  self.gcp_conn_id = gcp_conn_id
62
65
  self.spreadsheet = spreadsheet
63
66
  self.impersonation_chain = impersonation_chain
67
+ self.api_endpoint = api_endpoint
64
68
 
65
69
  def execute(self, context: Any) -> dict[str, Any]:
66
70
  hook = GSheetsHook(
67
71
  gcp_conn_id=self.gcp_conn_id,
68
72
  impersonation_chain=self.impersonation_chain,
73
+ api_endpoint=self.api_endpoint,
69
74
  )
70
75
  spreadsheet = hook.create_spreadsheet(spreadsheet=self.spreadsheet)
71
76
  context["task_instance"].xcom_push(key="spreadsheet_id", value=spreadsheet["spreadsheetId"])
@@ -58,6 +58,11 @@ else:
58
58
  from airflow.models import BaseOperatorLink
59
59
  from airflow.sensors.base import BaseSensorOperator, PokeReturnValue # type: ignore[no-redef]
60
60
 
61
+ try:
62
+ from airflow.sdk.execution_time.timeout import timeout
63
+ except ImportError:
64
+ from airflow.utils.timeout import timeout # type: ignore[assignment,attr-defined,no-redef]
65
+
61
66
  # Explicitly export these imports to protect them from being removed by linters
62
67
  __all__ = [
63
68
  "AIRFLOW_V_3_0_PLUS",
@@ -67,4 +72,5 @@ __all__ = [
67
72
  "BaseSensorOperator",
68
73
  "BaseOperatorLink",
69
74
  "PokeReturnValue",
75
+ "timeout",
70
76
  ]
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: apache-airflow-providers-google
3
- Version: 17.1.0
3
+ Version: 17.2.0
4
4
  Summary: Provider package apache-airflow-providers-google for Apache Airflow
5
5
  Keywords: airflow-provider,google,airflow,integration
6
6
  Author-email: Apache Software Foundation <dev@airflow.apache.org>
@@ -50,7 +50,7 @@ Requires-Dist: google-cloud-datacatalog>=3.23.0
50
50
  Requires-Dist: google-cloud-dataflow-client>=0.8.6
51
51
  Requires-Dist: google-cloud-dataform>=0.5.0
52
52
  Requires-Dist: google-cloud-dataplex>=2.6.0
53
- Requires-Dist: google-cloud-dataproc>=5.12.0
53
+ Requires-Dist: google-cloud-dataproc>=5.21.0
54
54
  Requires-Dist: google-cloud-dataproc-metastore>=1.12.0
55
55
  Requires-Dist: google-cloud-dlp>=3.12.0
56
56
  Requires-Dist: google-cloud-kms>=2.15.0
@@ -113,8 +113,8 @@ Requires-Dist: apache-airflow-providers-sftp ; extra == "sftp"
113
113
  Requires-Dist: apache-airflow-providers-ssh ; extra == "ssh"
114
114
  Requires-Dist: apache-airflow-providers-trino ; extra == "trino"
115
115
  Project-URL: Bug Tracker, https://github.com/apache/airflow/issues
116
- Project-URL: Changelog, https://airflow.apache.org/docs/apache-airflow-providers-google/17.1.0/changelog.html
117
- Project-URL: Documentation, https://airflow.apache.org/docs/apache-airflow-providers-google/17.1.0
116
+ Project-URL: Changelog, https://airflow.apache.org/docs/apache-airflow-providers-google/17.2.0/changelog.html
117
+ Project-URL: Documentation, https://airflow.apache.org/docs/apache-airflow-providers-google/17.2.0
118
118
  Project-URL: Mastodon, https://fosstodon.org/@airflow
119
119
  Project-URL: Slack Chat, https://s.apache.org/airflow-slack
120
120
  Project-URL: Source Code, https://github.com/apache/airflow
@@ -164,9 +164,8 @@ Provides-Extra: trino
164
164
 
165
165
  Package ``apache-airflow-providers-google``
166
166
 
167
- Release: ``17.1.0``
167
+ Release: ``17.2.0``
168
168
 
169
- Release Date: ``|PypiReleaseDate|``
170
169
 
171
170
  Google services including:
172
171
 
@@ -185,12 +184,12 @@ This is a provider package for ``google`` provider. All classes for this provide
185
184
  are in ``airflow.providers.google`` python package.
186
185
 
187
186
  You can find package information and changelog for the provider
188
- in the `documentation <https://airflow.apache.org/docs/apache-airflow-providers-google/17.1.0/>`_.
187
+ in the `documentation <https://airflow.apache.org/docs/apache-airflow-providers-google/17.2.0/>`_.
189
188
 
190
189
  Installation
191
190
  ------------
192
191
 
193
- You can install this package on top of an existing Airflow 2 installation (see ``Requirements`` below
192
+ You can install this package on top of an existing Airflow installation (see ``Requirements`` below
194
193
  for the minimum Airflow version supported) via
195
194
  ``pip install apache-airflow-providers-google``
196
195
 
@@ -232,7 +231,7 @@ PIP package Version required
232
231
  ``google-cloud-dataflow-client`` ``>=0.8.6``
233
232
  ``google-cloud-dataform`` ``>=0.5.0``
234
233
  ``google-cloud-dataplex`` ``>=2.6.0``
235
- ``google-cloud-dataproc`` ``>=5.12.0``
234
+ ``google-cloud-dataproc`` ``>=5.21.0``
236
235
  ``google-cloud-dataproc-metastore`` ``>=1.12.0``
237
236
  ``google-cloud-dlp`` ``>=3.12.0``
238
237
  ``google-cloud-kms`` ``>=2.15.0``
@@ -314,5 +313,5 @@ Dependent package
314
313
  ======================================================================================================================== ====================
315
314
 
316
315
  The changelog for the provider package can be found in the
317
- `changelog <https://airflow.apache.org/docs/apache-airflow-providers-google/17.1.0/changelog.html>`_.
316
+ `changelog <https://airflow.apache.org/docs/apache-airflow-providers-google/17.2.0/changelog.html>`_.
318
317
 
@@ -1,8 +1,8 @@
1
1
  airflow/providers/google/LICENSE,sha256=gXPVwptPlW1TJ4HSuG5OMPg-a3h43OGMkZRR1rpwfJA,10850
2
- airflow/providers/google/__init__.py,sha256=bku6vesjfs5dKk3IipXVR8ULWLcQshfovQdD8-unKjk,1496
2
+ airflow/providers/google/__init__.py,sha256=EA7doUYjEGpm-GQX5nJg4AvSQsY719MgipEbw0c5hHA,1496
3
3
  airflow/providers/google/get_provider_info.py,sha256=gwx-vFIrbTcnHl0DFKUe6c_m6FbjXN_X2SZNCIVIHiw,80760
4
4
  airflow/providers/google/go_module_utils.py,sha256=XVM-IGME6CPgJA8fgDgkusFc4fz3lEghZaZ4elBkv7s,1780
5
- airflow/providers/google/version_compat.py,sha256=bxao2eaOV79xdn4hiwpHxd_NcjOiPjz--l8LvkA-t_E,2594
5
+ airflow/providers/google/version_compat.py,sha256=Wiw5DV9gbkmsGIETFOjGb4aG06VckenJWUZm38_GscA,2790
6
6
  airflow/providers/google/3rd-party-licenses/LICENSES.txt,sha256=vplRFSgyGOzReZVwChEgsa9r2t6hLpZ1hjFR2iN3W-k,1535
7
7
  airflow/providers/google/3rd-party-licenses/NOTICE,sha256=o8xoWdzJhsgMifDs0gXHqORu9--NFeHrQM7v0ewk3BI,479
8
8
  airflow/providers/google/_vendor/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -26,21 +26,21 @@ 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=nIfY09S6KXPeMZnoK56zMP1TerIxLMUCyA1k5T_2B3Q,93692
29
+ airflow/providers/google/cloud/hooks/bigquery.py,sha256=R7pAaomEX_3671gHb2YVdGmHIMTVCZoO7kp1taWYj5E,93363
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
32
  airflow/providers/google/cloud/hooks/cloud_batch.py,sha256=rrIi_wkfO7_OyRZmFrF9sRA4zDrn5X8QWTArYHg4HSY,8287
33
33
  airflow/providers/google/cloud/hooks/cloud_build.py,sha256=4iaJUn7zakuENFQ8B7KCqtuDQWwHUBcDXCcZUl959NQ,25394
34
- airflow/providers/google/cloud/hooks/cloud_composer.py,sha256=RHfczxo7zfFOnkbVt4DgNoTgsI2iQ7bWtxXwDTqYFJ0,27794
34
+ airflow/providers/google/cloud/hooks/cloud_composer.py,sha256=N2LT_Gffyqs6yf-yTVaf7UP_ZZljGHnCQx2phDxDemw,27998
35
35
  airflow/providers/google/cloud/hooks/cloud_logging.py,sha256=0kcLZ91IZb1zNBGDgBKIU3FlWUx3abYqoW2T4Bg46bI,4360
36
36
  airflow/providers/google/cloud/hooks/cloud_memorystore.py,sha256=Wkt1hyftaZ1FTapK_HCjwIIhPyNyXB-OyTlngDPYrSU,40244
37
37
  airflow/providers/google/cloud/hooks/cloud_run.py,sha256=hmClFUj_Rf3QhGtwIIkYACDWGh_NinGODsl_p7OpLi8,12558
38
- airflow/providers/google/cloud/hooks/cloud_sql.py,sha256=O-QorgUZ4zM05xxdBLDovG8LeDdQRgXqu9YQ6gaemkQ,55192
39
- airflow/providers/google/cloud/hooks/cloud_storage_transfer_service.py,sha256=i5MsQ6PX4v1y_lCjvPGyhO9RwJqvA6OZjzWr8NUt-tQ,27220
38
+ airflow/providers/google/cloud/hooks/cloud_sql.py,sha256=LAMghOVxOkD2FnPxvRQ40pwv-vMsVSWlwDJVb3H83Ko,55214
39
+ airflow/providers/google/cloud/hooks/cloud_storage_transfer_service.py,sha256=1XYTDym6YTa8CY6gf1giiCcplxdkW98EurVs2rjsWx8,27365
40
40
  airflow/providers/google/cloud/hooks/compute.py,sha256=KkQS7EbepDwiAJsDCS0-oF_s7KSZe7NJCmjj5gfwrvs,40483
41
41
  airflow/providers/google/cloud/hooks/compute_ssh.py,sha256=0b-LfTeHg9qIU08dAC0BoJNtgMHWnOFh1d8xwVUT8bU,15380
42
42
  airflow/providers/google/cloud/hooks/datacatalog.py,sha256=In9zW9MmB0gV4EQXhwgYw1N8tlAEHE98_GABfwLFdGA,54460
43
- airflow/providers/google/cloud/hooks/dataflow.py,sha256=yHdpJMutl0SJRoJk6LVnkYBT9vsr7cSNLwfWMJf3cCg,64719
43
+ airflow/providers/google/cloud/hooks/dataflow.py,sha256=KkUn96_IB0o1X51znkOhMvMR1hwbkMpNvpH2ohiSR-U,64737
44
44
  airflow/providers/google/cloud/hooks/dataform.py,sha256=Hhtv23XqHanBGiJWGXqA1XdhhlzqEUsFodUFLkoC89I,27370
45
45
  airflow/providers/google/cloud/hooks/datafusion.py,sha256=cp13mWpDIXfPXZesKceuCtMJlOwZxDPeBnC4fepvxXA,25557
46
46
  airflow/providers/google/cloud/hooks/dataplex.py,sha256=RIM2MJZ2MDcqoiyVpH_xOkyR64Aaocll4IHwkNFE2Mk,88637
@@ -61,7 +61,7 @@ airflow/providers/google/cloud/hooks/natural_language.py,sha256=6Xy-MlHRx3SJxPu5
61
61
  airflow/providers/google/cloud/hooks/os_login.py,sha256=XvgEJkKWIEYfPQY-AOb-sfjKOkBw9PYDCKhBi5Zxkks,3848
62
62
  airflow/providers/google/cloud/hooks/pubsub.py,sha256=fD4CmOJ431weBCyCp_mtHu7yGoTyoJh8OhPrr2vZEcw,34461
63
63
  airflow/providers/google/cloud/hooks/secret_manager.py,sha256=vVq9LgTQ3sFesU3RKS7xjXol0gaKaL51SSoPgcl0ps4,17228
64
- airflow/providers/google/cloud/hooks/spanner.py,sha256=HDgVHtr5zAsHsqxtxFLmEC7In25tQ2NLh2K8HrXcNnE,17236
64
+ airflow/providers/google/cloud/hooks/spanner.py,sha256=xmqhPqgMnkjXfViMgAwu21PnVLihWbOBHp921GxJeFU,18000
65
65
  airflow/providers/google/cloud/hooks/speech_to_text.py,sha256=isBrH_bYeupZQcmSYdsDh0LY2pl4XYqbQ6orHj6mnng,4294
66
66
  airflow/providers/google/cloud/hooks/stackdriver.py,sha256=6Ys3f7dxKZRiNqOlz7U4Rngy9IjmRLu1104M8ecUCBA,25875
67
67
  airflow/providers/google/cloud/hooks/tasks.py,sha256=zNSnrTAnYEaKCL-A61h48eLVEMfCWZt6R41YjXBTSEs,26340
@@ -78,7 +78,7 @@ airflow/providers/google/cloud/hooks/vertex_ai/dataset.py,sha256=IJ7LkZ9sGBM0g_m
78
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/experiment_service.py,sha256=fOvcx_ivtLafa27a6NNhgd-ar5Sc9H3mQ9wnCt8SY04,9012
80
80
  airflow/providers/google/cloud/hooks/vertex_ai/feature_store.py,sha256=go8idiSTotsUij_oVdeV3EMQDtS2TP5GejVPZe7FPUI,20345
81
- airflow/providers/google/cloud/hooks/vertex_ai/generative_model.py,sha256=Q-O89mHBl90vlfCF_zZLrXT3axaZ2eQ7NJ5aOjJhds8,17721
81
+ airflow/providers/google/cloud/hooks/vertex_ai/generative_model.py,sha256=kerxmJT6ydu9yazYgomETq9k_YXtOl6PPcBalno9VO0,17981
82
82
  airflow/providers/google/cloud/hooks/vertex_ai/hyperparameter_tuning_job.py,sha256=BET_4-ku-zIwnVvEOk8VUIx6slphz8SQHocKu0rN7Sg,24574
83
83
  airflow/providers/google/cloud/hooks/vertex_ai/model_service.py,sha256=u8smUqa1rhTfKWyOt2Xq4X3W7T2uvnfbXc97mybKbRQ,17867
84
84
  airflow/providers/google/cloud/hooks/vertex_ai/pipeline_job.py,sha256=72uuTgF_k84ebYB5U73SKwYlX4jhlFaLss_V0oMHC8U,28837
@@ -123,17 +123,17 @@ airflow/providers/google/cloud/openlineage/BigQueryJobRunFacet.json,sha256=sWvE1
123
123
  airflow/providers/google/cloud/openlineage/__init__.py,sha256=9hdXHABrVpkbpjZgUft39kOFL2xSGeG4GEua0Hmelus,785
124
124
  airflow/providers/google/cloud/openlineage/facets.py,sha256=-PsDTHtswdWQnbbRzOLUKNdqcMserIqu6okCogXk5Mg,2510
125
125
  airflow/providers/google/cloud/openlineage/mixins.py,sha256=abM8j7mA20gozZXeOwDPf5epkOEs-HFQh6k3-vXPLo4,26635
126
- airflow/providers/google/cloud/openlineage/utils.py,sha256=HbB4uWga0TN7eW564UHFbvuSUTHBuV4SOAEv-bEK968,28608
126
+ airflow/providers/google/cloud/openlineage/utils.py,sha256=iTUQTiJvfsiSO6V5AhVhiZ6ZTzp0iHBeGNhHe0pfOPA,29126
127
127
  airflow/providers/google/cloud/operators/__init__.py,sha256=9hdXHABrVpkbpjZgUft39kOFL2xSGeG4GEua0Hmelus,785
128
128
  airflow/providers/google/cloud/operators/alloy_db.py,sha256=FgPYBGn37HdGDp0a4bKVLVPRk-cBtSPThVsJkQclDVs,66858
129
129
  airflow/providers/google/cloud/operators/automl.py,sha256=DJgnReNjv9MSNtdSO0PVJByEUmMt6ROrQGkru8SBB9o,57198
130
- airflow/providers/google/cloud/operators/bigquery.py,sha256=kfRjasMvw-I7pV8tcC74yng1lRQyNls7ADA-q3T7ygM,105773
130
+ airflow/providers/google/cloud/operators/bigquery.py,sha256=hQWuyzwZlXmLmTRluMZfckY7nuBVlZ8C6EHA68AzwWo,106163
131
131
  airflow/providers/google/cloud/operators/bigquery_dts.py,sha256=uDEi0AYqbrjEogQC2h-RA5y_GkhaiGA7SqFSlYHq6bE,23151
132
132
  airflow/providers/google/cloud/operators/bigtable.py,sha256=f6j4OfkfosjV7AXjYNKHlodCGQN2qnRIziSKkzWaJ-E,27624
133
133
  airflow/providers/google/cloud/operators/cloud_base.py,sha256=JR06tJ9I1xK0bbpwUvGsZuKimEkJNZO3cWN3LtMb7sM,2090
134
134
  airflow/providers/google/cloud/operators/cloud_batch.py,sha256=4cHtra1X9M9jKeIMk9ecWfb-ap7nbNk_tvuxDOtWg0U,12875
135
135
  airflow/providers/google/cloud/operators/cloud_build.py,sha256=N_wdi0jH3Ex-GdFQ-ES_0YoKVLC-SXxddA-VM5TzGJI,49068
136
- airflow/providers/google/cloud/operators/cloud_composer.py,sha256=CTbAoU0KigBFuY4HiRpJGooIOx6Y-99qMB5TmGPqSKw,32263
136
+ airflow/providers/google/cloud/operators/cloud_composer.py,sha256=93S6ID-lLeljZx65iFGgx-_Pk-wccrWwflUp8OiF4zg,32599
137
137
  airflow/providers/google/cloud/operators/cloud_logging_sink.py,sha256=SOOA6RZemBRkQiRlg6Q0fMDcm9dweVeeSBuN-wtQoKk,14797
138
138
  airflow/providers/google/cloud/operators/cloud_memorystore.py,sha256=qFgHnMrWmN19Ujsuu7R9kPiyrCzX2uYJr0YZE1xRHow,71401
139
139
  airflow/providers/google/cloud/operators/cloud_run.py,sha256=KT0NBkAASl6MC-u0Rrv4L67e5OM14ASr-lARbhaqdmI,22256
@@ -144,9 +144,9 @@ airflow/providers/google/cloud/operators/datacatalog.py,sha256=lOt56uC8xtbg1-SS8
144
144
  airflow/providers/google/cloud/operators/dataflow.py,sha256=-DZyV8SDEOC02P1eSsU7yQMoML6CnOilSYC7dPqsFeA,52928
145
145
  airflow/providers/google/cloud/operators/dataform.py,sha256=_e4KBpieBrbUltGQsUTuhJGFygCeCTkMpjaVTwgyvtI,49166
146
146
  airflow/providers/google/cloud/operators/datafusion.py,sha256=clYKHcMrMHQLiCr51rbWV3ziPsXTL6gZf-zpdi9fU-8,40612
147
- airflow/providers/google/cloud/operators/dataplex.py,sha256=lXHASev_YNCM_5SETiW0JY0Rh8WG1mLTPGNYL1MGkZg,187605
147
+ airflow/providers/google/cloud/operators/dataplex.py,sha256=JY_tBPF_6HD_8UrGW-0bQ_-LpdbG0Hf6bWQdMrD79tQ,187835
148
148
  airflow/providers/google/cloud/operators/dataprep.py,sha256=8LQomtFlgUyaSVnrwauGYhwl9yjVAKkJMRvVZoTrScs,10360
149
- airflow/providers/google/cloud/operators/dataproc.py,sha256=VQY1A2806xanha7f3pvaVFjzV99S6NCr-7t7AV43sTA,134773
149
+ airflow/providers/google/cloud/operators/dataproc.py,sha256=XJijihyAj8Trz5jWsRadQBvVYiIJZuA_Opm3dir8nGE,135171
150
150
  airflow/providers/google/cloud/operators/dataproc_metastore.py,sha256=wWjhx-mUX6nzvZzimHbzNaI4mkSfZS8-3j92czTkaX0,50514
151
151
  airflow/providers/google/cloud/operators/datastore.py,sha256=Uf2FiZdkSR-I-vK5WmQlIMygBf16Yc2g2lLbvGu766o,25272
152
152
  airflow/providers/google/cloud/operators/dlp.py,sha256=nNhNbxwx0l8mQLT5T5bwcQwXmuhpvoWLlxn_yJF4uYI,119814
@@ -157,8 +157,8 @@ airflow/providers/google/cloud/operators/looker.py,sha256=LCbN0vv8y0exwvfHbRXmUt
157
157
  airflow/providers/google/cloud/operators/managed_kafka.py,sha256=D1qtegpuEPbOFaVDBZpWp8OcnjxBE35dWF-2DvTYyc4,51513
158
158
  airflow/providers/google/cloud/operators/mlengine.py,sha256=Tim6_h3Jdj_1J56Bf9tSDggbAG0eYTZSjBu9Jvc2m7E,4409
159
159
  airflow/providers/google/cloud/operators/natural_language.py,sha256=lAStRPEFGaLPmx2z9lfEZKnZWkKI6lJSW-KVsP_ghPQ,13739
160
- airflow/providers/google/cloud/operators/pubsub.py,sha256=1VBuJPIY_xhsEAlzTU4pKeUYocoWoCjGkvJM29WMhqU,37316
161
- airflow/providers/google/cloud/operators/spanner.py,sha256=yYd5mGBvokbW8sc_Tge_7NOeef1eVYJfbaqykLwQ6vM,24646
160
+ airflow/providers/google/cloud/operators/pubsub.py,sha256=gcqAjHHrt_J5UcLx6nOsfsOzpkoHnGkJJZCThBzeoAQ,39372
161
+ airflow/providers/google/cloud/operators/spanner.py,sha256=HWIWHOvVyX9kPCuSTvAe0fYFTJW12QqbCB1lvwrH8rc,24744
162
162
  airflow/providers/google/cloud/operators/speech_to_text.py,sha256=qesWHb6DQWRzvEOeh_pDSb238ZXvMQ0NCgca4Tt5DfQ,5687
163
163
  airflow/providers/google/cloud/operators/stackdriver.py,sha256=Uw3Dv90WygElcDA5NrRfAEiETSs45cJ0cKZM6Z3rJHI,38944
164
164
  airflow/providers/google/cloud/operators/tasks.py,sha256=g8nzKJx0bR9qbatgweIHXow1qeKoraD8t5M04CXujIg,48051
@@ -176,7 +176,7 @@ airflow/providers/google/cloud/operators/vertex_ai/dataset.py,sha256=wpFkThoIKH8
176
176
  airflow/providers/google/cloud/operators/vertex_ai/endpoint_service.py,sha256=eXqMonQgATxw7feS3CFYWjILmHgP7L1niNL8HgHRgrU,27496
177
177
  airflow/providers/google/cloud/operators/vertex_ai/experiment_service.py,sha256=3Axeoc3UaxQacl6jBXspym79BI9frsBFuLchSCHGbXU,18297
178
178
  airflow/providers/google/cloud/operators/vertex_ai/feature_store.py,sha256=3mS__ygqgCBLSytHJmsiNkPqlWU5ALbiCaB85iiHX3E,31509
179
- airflow/providers/google/cloud/operators/vertex_ai/generative_model.py,sha256=ZQYtRDaIRMtJzZ2cHzz1gqif7ujE0usy1qjMrsiVx04,29116
179
+ airflow/providers/google/cloud/operators/vertex_ai/generative_model.py,sha256=b6aG91aPqbDBJqeX7vDk0HQSNEXw75vHPQoM6fSOUOw,29207
180
180
  airflow/providers/google/cloud/operators/vertex_ai/hyperparameter_tuning_job.py,sha256=oikwiN_X_7PfEzYpMXI4ZvL_oRxCMkk5BU6_QxGhH5Q,25089
181
181
  airflow/providers/google/cloud/operators/vertex_ai/model_service.py,sha256=zzhTD-diafDs7OVJxvftV-1c_vopSiCTtsXCeCLH-l0,36344
182
182
  airflow/providers/google/cloud/operators/vertex_ai/pipeline_job.py,sha256=idza_9gybMjyvH9xL7LT8qxavPqTxnbMk1P05UV7RQI,23526
@@ -187,7 +187,7 @@ airflow/providers/google/cloud/sensors/__init__.py,sha256=9hdXHABrVpkbpjZgUft39k
187
187
  airflow/providers/google/cloud/sensors/bigquery.py,sha256=EQqSSRK_NABPGYH6EUAT-o8pJLGcMwIue68ePokloY8,10767
188
188
  airflow/providers/google/cloud/sensors/bigquery_dts.py,sha256=46_s9hX7rUzceVeL7B5Vxv_lxrDL4zlSi-XyPW1bicw,6627
189
189
  airflow/providers/google/cloud/sensors/bigtable.py,sha256=ICCI_7d6AcmAvVvAGGFmxCfHV6DO2tNr1w4RvNckdUY,5520
190
- airflow/providers/google/cloud/sensors/cloud_composer.py,sha256=HvBEmSamzaFndZv3skOb5h1UHrX8PL9vs-5hl44tVh0,9732
190
+ airflow/providers/google/cloud/sensors/cloud_composer.py,sha256=GjHg7Xa2gSz_AafXFqZKWfPWqIUGldb_BpYxmGW9Lro,11189
191
191
  airflow/providers/google/cloud/sensors/cloud_storage_transfer_service.py,sha256=FPTo2CK1cyrOsHoYsmWDgUmTaWUnR6NEiKuNnJHoYO0,6772
192
192
  airflow/providers/google/cloud/sensors/dataflow.py,sha256=wyE-epNTr0nleWd3BpfpOyQCYtJSn1tPknEtOpdFNMU,24080
193
193
  airflow/providers/google/cloud/sensors/dataform.py,sha256=XwnshbagEwoXsTOHqHo9sdhUbxwp-zs4usFE-nQtMDk,8678
@@ -209,25 +209,25 @@ airflow/providers/google/cloud/transfers/azure_blob_to_gcs.py,sha256=hvN9ypbBk7d
209
209
  airflow/providers/google/cloud/transfers/azure_fileshare_to_gcs.py,sha256=sFF8iZCM_rTKth_seh1pBdGXGhqbhU5JxiIpbpgx3k4,8234
210
210
  airflow/providers/google/cloud/transfers/bigquery_to_bigquery.py,sha256=zXdiw8aVM1kmv2Ez-NkFxvCqTGEprZmKinbw5ZHRGCE,10813
211
211
  airflow/providers/google/cloud/transfers/bigquery_to_gcs.py,sha256=ngX8hNYCmlDtiY5UoyoGwH-iUJpDiY9O4ADKccVURb4,15183
212
- airflow/providers/google/cloud/transfers/bigquery_to_mssql.py,sha256=0_PpzLlXTw87Ab-0qr3fpiL4tkXhZShCBPQ0MuQ_G0I,4159
212
+ airflow/providers/google/cloud/transfers/bigquery_to_mssql.py,sha256=SHqbcAJqLBRQBqghDAUAEIR5wg4Vf9Ww2tcsaScMYcE,7101
213
213
  airflow/providers/google/cloud/transfers/bigquery_to_mysql.py,sha256=Ay-lo6CYXkSQ8Tk4M4BNjtJcbzMNUG5pJEe8AplyDx8,3209
214
214
  airflow/providers/google/cloud/transfers/bigquery_to_postgres.py,sha256=hUs2wTaV3GVbQat42A_Qwo81-9bmIsYXLAtgJtiFydk,4818
215
- airflow/providers/google/cloud/transfers/bigquery_to_sql.py,sha256=SXeHSxOBymEEaTCDmFjuNnxLX_8lD08zj5cFPFn2v_Q,5639
215
+ airflow/providers/google/cloud/transfers/bigquery_to_sql.py,sha256=45K_sB7EwUgE4W_U32Gsb4OBmN-zHqv4VzMbNrkGeMo,5738
216
216
  airflow/providers/google/cloud/transfers/calendar_to_gcs.py,sha256=FMtma56F1KRhZ80rYTKj3sBv29t629wrG0jNJcOKW1U,8451
217
217
  airflow/providers/google/cloud/transfers/cassandra_to_gcs.py,sha256=-sjlYt9cXelUJfMaYPIFo1C5lPj8ZBDWpir1rC29Jus,15766
218
218
  airflow/providers/google/cloud/transfers/facebook_ads_to_gcs.py,sha256=PzEB9NUA3GjfP0IkcqEkwU6aieUyOoaoUevdZMk4qTE,10348
219
- airflow/providers/google/cloud/transfers/gcs_to_bigquery.py,sha256=6YyY9YFSMUQa7d_JOFhCkwQT1juj805Bmou-GcuocQI,37486
219
+ airflow/providers/google/cloud/transfers/gcs_to_bigquery.py,sha256=-oepDmOXYrAb0Y0EJrGvdUnPdGRdPhV61se4vgabTuY,37187
220
220
  airflow/providers/google/cloud/transfers/gcs_to_gcs.py,sha256=aVZOLa7CqGOSsTfUNQd59EK1ij-J9d-vNLT78CfXIMg,26001
221
221
  airflow/providers/google/cloud/transfers/gcs_to_local.py,sha256=zBV6JELlpSgTHb2_smzP7Zw-IrKtm-lJXRGLILrK1Jk,5837
222
- airflow/providers/google/cloud/transfers/gcs_to_sftp.py,sha256=npPFjabjWWiS2Epk60BaNJgO5qxTllPiIxXjZ44F2CA,9745
222
+ airflow/providers/google/cloud/transfers/gcs_to_sftp.py,sha256=Q7Y865W-sPZzuFqsykRnBI34B0IUBe0z7oTjIDgX2sU,10049
223
223
  airflow/providers/google/cloud/transfers/gdrive_to_gcs.py,sha256=Og4n3Nsx-pyXc-_I-x_gmu4vbI1A2Aj5ldqZOo_69Bw,4294
224
224
  airflow/providers/google/cloud/transfers/gdrive_to_local.py,sha256=R5HI4v0n2qEG4pZ5py2ZFdiouX6OhwZovx-a-R0G1HU,3686
225
225
  airflow/providers/google/cloud/transfers/http_to_gcs.py,sha256=cbx9kh8OHo2LenxWVJNds-h2V7RIOiA0gc-w7yVi1sE,8538
226
226
  airflow/providers/google/cloud/transfers/local_to_gcs.py,sha256=jtpNI8ey1yifVrRVei-f2haqvV2FqlCmYlI0e0_A6AU,6686
227
227
  airflow/providers/google/cloud/transfers/mssql_to_gcs.py,sha256=MFKbDRSkyq83px1ecMSIYafxIpCwSKlYoybzm3fPdLI,4947
228
228
  airflow/providers/google/cloud/transfers/mysql_to_gcs.py,sha256=piftfvTe4mXCLpEWaX5f2SxWeSyJf7gs8i5dhou2_lk,6688
229
- airflow/providers/google/cloud/transfers/oracle_to_gcs.py,sha256=N5Pf3fwfUF7w87Zb4NQMKIow4yCe7InN97DyO1m6vvA,4762
230
- airflow/providers/google/cloud/transfers/postgres_to_gcs.py,sha256=9HwXoPSi5AbOK7lWKwmZSbdGaRr9qiODMkiYmzhTnXk,7567
229
+ airflow/providers/google/cloud/transfers/oracle_to_gcs.py,sha256=3PCafS56aUadRzaNFMhNX1hs9ponvjuy0sruknI-Abk,5869
230
+ airflow/providers/google/cloud/transfers/postgres_to_gcs.py,sha256=JsRUcM2ZAPe2HwFhVIGS43giJfgMrt577iFwfv6ivZs,8841
231
231
  airflow/providers/google/cloud/transfers/presto_to_gcs.py,sha256=m2vzL6EuRjtL8dCOnSdorsJWdP_6sEpIdnwQW0BDwMc,7193
232
232
  airflow/providers/google/cloud/transfers/s3_to_gcs.py,sha256=s7b2aioc5LI0Pp_6GVCiYnjhtVJNvTdoGdmd-X7HuiE,15808
233
233
  airflow/providers/google/cloud/transfers/salesforce_to_gcs.py,sha256=M9NY7GDSm1t9QhjportwE0rhnz4aeihZIPYwj_HYagE,4846
@@ -236,18 +236,18 @@ airflow/providers/google/cloud/transfers/sheets_to_gcs.py,sha256=DD4K0JykgpBg36B
236
236
  airflow/providers/google/cloud/transfers/sql_to_gcs.py,sha256=umoBGMAGq1LhbM4pFEB6pVaEpktZdZ5AY51D1A20Igk,22526
237
237
  airflow/providers/google/cloud/transfers/trino_to_gcs.py,sha256=xOlZ7JXnSNOGpSKEPXsknotLyx3RUReqn7gparFr-Q0,8163
238
238
  airflow/providers/google/cloud/triggers/__init__.py,sha256=9hdXHABrVpkbpjZgUft39kOFL2xSGeG4GEua0Hmelus,785
239
- airflow/providers/google/cloud/triggers/bigquery.py,sha256=cJxCJ_qg3mjP7ZbJfcpuLw3V34g5bXoCSDNDC9BGiKQ,35726
239
+ airflow/providers/google/cloud/triggers/bigquery.py,sha256=jkOnBeXdyfqLhOShbVagr1XNiKk3vBIxxckyrFYzC70,35866
240
240
  airflow/providers/google/cloud/triggers/bigquery_dts.py,sha256=kZ7CJDBwOnUdWTo6dASUasxoVa_EUnBDisHDblC_DD8,6246
241
241
  airflow/providers/google/cloud/triggers/cloud_batch.py,sha256=xD0zdik0z1Lur1Dfab6qniX0q1bDpGt3GI3y7Qpus18,6749
242
242
  airflow/providers/google/cloud/triggers/cloud_build.py,sha256=gclSrRRYUgBzlUXqYj701abZaXe2hTyewxajt3ablAM,5629
243
- airflow/providers/google/cloud/triggers/cloud_composer.py,sha256=kXBslOpA3Qu-uhyV-UdGvMGWzz0Y_pdHB4pZHhQQC7Q,9949
243
+ airflow/providers/google/cloud/triggers/cloud_composer.py,sha256=EKtrhXd8udLg-3N6xj-ibqJL6TSocUg-evSgAXJXlXA,11723
244
244
  airflow/providers/google/cloud/triggers/cloud_run.py,sha256=7hR1I0oByx_c3akHaiTo4UY8DQgLSEccx7cE26cDECg,6022
245
245
  airflow/providers/google/cloud/triggers/cloud_sql.py,sha256=M_k4bw2hdLdmD4dczbB6iB3QBdzPSXQ6Vwboj9I26Gs,4006
246
246
  airflow/providers/google/cloud/triggers/cloud_storage_transfer_service.py,sha256=yNFn8n2b1t0OeMB3U7NMrFMClFXtguEYOoG0b5gy4VI,10038
247
247
  airflow/providers/google/cloud/triggers/dataflow.py,sha256=X23Wi-eE4nTxFdx-ubbGPkmQ6ccbl37buPdhdw68viU,40426
248
248
  airflow/providers/google/cloud/triggers/datafusion.py,sha256=mHq4HgP_Fn9yG3dctheH8zzQUskvAUFVJcSMsj5ifBo,5986
249
- airflow/providers/google/cloud/triggers/dataplex.py,sha256=RgqGNOG85ihduI81ZQkADbxf8caSeHI4Gha-7ad-yCk,8343
250
- airflow/providers/google/cloud/triggers/dataproc.py,sha256=YL3G8042hEhvExu-viQRg1Q802q-OnaWEv-cG53QLtc,26704
249
+ airflow/providers/google/cloud/triggers/dataplex.py,sha256=6nuWlnsxGOUXR0NReGyjIu8H6LxiIXevUCUV9T6XVcc,8561
250
+ airflow/providers/google/cloud/triggers/dataproc.py,sha256=O5gWw74KCFTAp00DB-7zeZTDsi0vnvmMTpfL-WKXUaU,27262
251
251
  airflow/providers/google/cloud/triggers/gcs.py,sha256=NlS9YCLqL_fc9HkXmjlkVKWKamc0Jc8p9FatnSDiqr4,18984
252
252
  airflow/providers/google/cloud/triggers/kubernetes_engine.py,sha256=AfJKDnnwVOy37D5VmGiNvKCOupsAFDA3EExQNRjdPbQ,16251
253
253
  airflow/providers/google/cloud/triggers/mlengine.py,sha256=ZXj_TYWMUUXQxuXwaWKAxB4EtzzUZ5S13mvYP0Qip_s,5266
@@ -278,6 +278,7 @@ airflow/providers/google/common/hooks/operation_helpers.py,sha256=VvAQTP86AWM5tG
278
278
  airflow/providers/google/common/links/__init__.py,sha256=9hdXHABrVpkbpjZgUft39kOFL2xSGeG4GEua0Hmelus,785
279
279
  airflow/providers/google/common/links/storage.py,sha256=gqRVaba_50tTXkaL9QP1lP7ffkr0F3727n2VkVtwLP8,1572
280
280
  airflow/providers/google/common/utils/__init__.py,sha256=9hdXHABrVpkbpjZgUft39kOFL2xSGeG4GEua0Hmelus,785
281
+ airflow/providers/google/common/utils/get_secret.py,sha256=sca30gDyTLxn1bly-fg-g01lbhf52DAjclw6flYL3TA,1237
281
282
  airflow/providers/google/common/utils/id_token_credentials.py,sha256=6T8BfOpyY_9s4gGFn3WwqntTrCPMwDdVM3sJntQPopA,8930
282
283
  airflow/providers/google/firebase/__init__.py,sha256=9hdXHABrVpkbpjZgUft39kOFL2xSGeG4GEua0Hmelus,785
283
284
  airflow/providers/google/firebase/hooks/__init__.py,sha256=9hdXHABrVpkbpjZgUft39kOFL2xSGeG4GEua0Hmelus,785
@@ -309,9 +310,9 @@ airflow/providers/google/suite/__init__.py,sha256=mlJxuZLkd5x-iq2SBwD3mvRQpt3YR7
309
310
  airflow/providers/google/suite/hooks/__init__.py,sha256=mlJxuZLkd5x-iq2SBwD3mvRQpt3YR7wjz_nceyF1IaI,787
310
311
  airflow/providers/google/suite/hooks/calendar.py,sha256=j8y45TXxOdyxdqq6TnS6wfTsEqiBfevZwZQ32nOd5lQ,8999
311
312
  airflow/providers/google/suite/hooks/drive.py,sha256=SWFBymtmBAtd4BK0PnxYgPGFNgTa8vACDJsFt-hoxLU,12637
312
- airflow/providers/google/suite/hooks/sheets.py,sha256=70A8UahYGMo3xMMJXlg5erh-V7nCDm0IUXtRiFwfv9A,16444
313
+ airflow/providers/google/suite/hooks/sheets.py,sha256=J1iOeU-l3zfYZ21rdmnJBM0krv-0xrFMbUCJo9_gB0k,17026
313
314
  airflow/providers/google/suite/operators/__init__.py,sha256=mlJxuZLkd5x-iq2SBwD3mvRQpt3YR7wjz_nceyF1IaI,787
314
- airflow/providers/google/suite/operators/sheets.py,sha256=wyGqMSNCaiJLW9HiJcbvszPNjoHE7jtWiFN-d-XwjgQ,3150
315
+ airflow/providers/google/suite/operators/sheets.py,sha256=oyS6Wa4LS-XBX_n6JDy1sKWFNnP34Se4jOEHbWLp71k,3440
315
316
  airflow/providers/google/suite/sensors/__init__.py,sha256=9hdXHABrVpkbpjZgUft39kOFL2xSGeG4GEua0Hmelus,785
316
317
  airflow/providers/google/suite/sensors/drive.py,sha256=_RnQu_wvVmYNllJzqNvutROBDMN1lNQmn4Y4kkEY1gY,3483
317
318
  airflow/providers/google/suite/transfers/__init__.py,sha256=9hdXHABrVpkbpjZgUft39kOFL2xSGeG4GEua0Hmelus,785
@@ -319,7 +320,7 @@ airflow/providers/google/suite/transfers/gcs_to_gdrive.py,sha256=7DhFVabt4vzWcgZ
319
320
  airflow/providers/google/suite/transfers/gcs_to_sheets.py,sha256=6GUJY8Ul0kYVqzOQG5dsSPogU-ZKCvjr9I_7yrQBCi0,4028
320
321
  airflow/providers/google/suite/transfers/local_to_drive.py,sha256=eUkgH5-LRAtsAhymLxuRLd4lwpxJDFaPX1hLVg730Kk,5819
321
322
  airflow/providers/google/suite/transfers/sql_to_sheets.py,sha256=XFc95mXTGlAP9FbcYxOvjHWgiFN03skxXxAUGMqZXcE,4909
322
- apache_airflow_providers_google-17.1.0.dist-info/entry_points.txt,sha256=Ay1Uo7uHxdXCxWew3CyBHumZ44Ld-iR7AcSR2fY-PLw,102
323
- apache_airflow_providers_google-17.1.0.dist-info/WHEEL,sha256=G2gURzTEtmeR8nrdXUJfNiB3VYVxigPQ-bEQujpNiNs,82
324
- apache_airflow_providers_google-17.1.0.dist-info/METADATA,sha256=wrGV6QbX6AtRBWGrGufQesByTtCS72mBittUp4bdYQY,17393
325
- apache_airflow_providers_google-17.1.0.dist-info/RECORD,,
323
+ apache_airflow_providers_google-17.2.0.dist-info/entry_points.txt,sha256=Ay1Uo7uHxdXCxWew3CyBHumZ44Ld-iR7AcSR2fY-PLw,102
324
+ apache_airflow_providers_google-17.2.0.dist-info/WHEEL,sha256=G2gURzTEtmeR8nrdXUJfNiB3VYVxigPQ-bEQujpNiNs,82
325
+ apache_airflow_providers_google-17.2.0.dist-info/METADATA,sha256=ZPgt-yy2uQ4RSOfUNU5aoGIqRo2oSnE5vhjisIskPJA,17355
326
+ apache_airflow_providers_google-17.2.0.dist-info/RECORD,,