apache-airflow-providers-google 16.0.0rc1__py3-none-any.whl → 16.1.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.
- airflow/providers/google/__init__.py +1 -1
- airflow/providers/google/ads/hooks/ads.py +9 -5
- airflow/providers/google/ads/operators/ads.py +1 -1
- airflow/providers/google/ads/transfers/ads_to_gcs.py +1 -1
- airflow/providers/google/cloud/hooks/bigquery.py +2 -3
- airflow/providers/google/cloud/hooks/cloud_sql.py +8 -4
- airflow/providers/google/cloud/hooks/datacatalog.py +9 -1
- airflow/providers/google/cloud/hooks/dataflow.py +2 -2
- airflow/providers/google/cloud/hooks/dataplex.py +1 -1
- airflow/providers/google/cloud/hooks/dataprep.py +4 -1
- airflow/providers/google/cloud/hooks/gcs.py +2 -2
- airflow/providers/google/cloud/hooks/looker.py +5 -1
- airflow/providers/google/cloud/hooks/mlengine.py +2 -1
- airflow/providers/google/cloud/hooks/secret_manager.py +102 -10
- airflow/providers/google/cloud/hooks/spanner.py +2 -2
- airflow/providers/google/cloud/hooks/translate.py +1 -1
- airflow/providers/google/cloud/hooks/vertex_ai/feature_store.py +307 -7
- airflow/providers/google/cloud/hooks/vertex_ai/generative_model.py +43 -14
- airflow/providers/google/cloud/hooks/vertex_ai/ray.py +11 -2
- airflow/providers/google/cloud/hooks/vision.py +2 -2
- airflow/providers/google/cloud/links/alloy_db.py +0 -46
- airflow/providers/google/cloud/links/base.py +75 -11
- airflow/providers/google/cloud/links/bigquery.py +0 -47
- airflow/providers/google/cloud/links/bigquery_dts.py +0 -20
- airflow/providers/google/cloud/links/bigtable.py +0 -48
- airflow/providers/google/cloud/links/cloud_build.py +0 -73
- airflow/providers/google/cloud/links/cloud_functions.py +0 -33
- airflow/providers/google/cloud/links/cloud_memorystore.py +0 -58
- airflow/providers/google/cloud/links/cloud_run.py +1 -33
- airflow/providers/google/cloud/links/cloud_sql.py +0 -33
- airflow/providers/google/cloud/links/cloud_storage_transfer.py +16 -43
- airflow/providers/google/cloud/links/cloud_tasks.py +6 -25
- airflow/providers/google/cloud/links/compute.py +0 -58
- airflow/providers/google/cloud/links/data_loss_prevention.py +0 -169
- airflow/providers/google/cloud/links/datacatalog.py +23 -54
- airflow/providers/google/cloud/links/dataflow.py +0 -34
- airflow/providers/google/cloud/links/dataform.py +0 -64
- airflow/providers/google/cloud/links/datafusion.py +1 -96
- airflow/providers/google/cloud/links/dataplex.py +0 -154
- airflow/providers/google/cloud/links/dataprep.py +0 -24
- airflow/providers/google/cloud/links/dataproc.py +14 -90
- airflow/providers/google/cloud/links/datastore.py +0 -31
- airflow/providers/google/cloud/links/kubernetes_engine.py +5 -59
- airflow/providers/google/cloud/links/life_sciences.py +0 -19
- airflow/providers/google/cloud/links/managed_kafka.py +0 -70
- airflow/providers/google/cloud/links/mlengine.py +0 -70
- airflow/providers/google/cloud/links/pubsub.py +0 -32
- airflow/providers/google/cloud/links/spanner.py +0 -33
- airflow/providers/google/cloud/links/stackdriver.py +0 -30
- airflow/providers/google/cloud/links/translate.py +16 -186
- airflow/providers/google/cloud/links/vertex_ai.py +8 -224
- airflow/providers/google/cloud/links/workflows.py +0 -52
- airflow/providers/google/cloud/operators/alloy_db.py +69 -54
- airflow/providers/google/cloud/operators/automl.py +16 -14
- airflow/providers/google/cloud/operators/bigquery.py +0 -15
- airflow/providers/google/cloud/operators/bigquery_dts.py +2 -4
- airflow/providers/google/cloud/operators/bigtable.py +35 -6
- airflow/providers/google/cloud/operators/cloud_base.py +21 -1
- airflow/providers/google/cloud/operators/cloud_build.py +74 -31
- airflow/providers/google/cloud/operators/cloud_composer.py +34 -35
- airflow/providers/google/cloud/operators/cloud_memorystore.py +68 -42
- airflow/providers/google/cloud/operators/cloud_run.py +0 -1
- airflow/providers/google/cloud/operators/cloud_sql.py +11 -15
- airflow/providers/google/cloud/operators/cloud_storage_transfer_service.py +0 -2
- airflow/providers/google/cloud/operators/compute.py +7 -39
- airflow/providers/google/cloud/operators/datacatalog.py +156 -20
- airflow/providers/google/cloud/operators/dataflow.py +37 -14
- airflow/providers/google/cloud/operators/dataform.py +14 -4
- airflow/providers/google/cloud/operators/datafusion.py +4 -12
- airflow/providers/google/cloud/operators/dataplex.py +180 -96
- airflow/providers/google/cloud/operators/dataprep.py +0 -4
- airflow/providers/google/cloud/operators/dataproc.py +10 -16
- airflow/providers/google/cloud/operators/dataproc_metastore.py +95 -87
- airflow/providers/google/cloud/operators/datastore.py +21 -5
- airflow/providers/google/cloud/operators/dlp.py +3 -26
- airflow/providers/google/cloud/operators/functions.py +15 -6
- airflow/providers/google/cloud/operators/gcs.py +0 -7
- airflow/providers/google/cloud/operators/kubernetes_engine.py +50 -7
- airflow/providers/google/cloud/operators/life_sciences.py +0 -1
- airflow/providers/google/cloud/operators/managed_kafka.py +106 -51
- airflow/providers/google/cloud/operators/mlengine.py +0 -1
- airflow/providers/google/cloud/operators/pubsub.py +2 -4
- airflow/providers/google/cloud/operators/spanner.py +0 -4
- airflow/providers/google/cloud/operators/speech_to_text.py +0 -1
- airflow/providers/google/cloud/operators/stackdriver.py +0 -8
- airflow/providers/google/cloud/operators/tasks.py +0 -11
- airflow/providers/google/cloud/operators/text_to_speech.py +0 -1
- airflow/providers/google/cloud/operators/translate.py +37 -13
- airflow/providers/google/cloud/operators/translate_speech.py +0 -1
- airflow/providers/google/cloud/operators/vertex_ai/auto_ml.py +31 -18
- airflow/providers/google/cloud/operators/vertex_ai/batch_prediction_job.py +28 -8
- airflow/providers/google/cloud/operators/vertex_ai/custom_job.py +38 -25
- airflow/providers/google/cloud/operators/vertex_ai/dataset.py +69 -7
- airflow/providers/google/cloud/operators/vertex_ai/endpoint_service.py +42 -8
- airflow/providers/google/cloud/operators/vertex_ai/feature_store.py +531 -0
- airflow/providers/google/cloud/operators/vertex_ai/generative_model.py +93 -25
- airflow/providers/google/cloud/operators/vertex_ai/hyperparameter_tuning_job.py +10 -8
- airflow/providers/google/cloud/operators/vertex_ai/model_service.py +56 -10
- airflow/providers/google/cloud/operators/vertex_ai/pipeline_job.py +25 -6
- airflow/providers/google/cloud/operators/vertex_ai/ray.py +9 -6
- airflow/providers/google/cloud/operators/workflows.py +1 -9
- airflow/providers/google/cloud/sensors/bigquery.py +1 -1
- airflow/providers/google/cloud/sensors/bigquery_dts.py +6 -1
- airflow/providers/google/cloud/sensors/bigtable.py +15 -3
- airflow/providers/google/cloud/sensors/cloud_composer.py +6 -1
- airflow/providers/google/cloud/sensors/cloud_storage_transfer_service.py +6 -1
- airflow/providers/google/cloud/sensors/dataflow.py +3 -3
- airflow/providers/google/cloud/sensors/dataform.py +6 -1
- airflow/providers/google/cloud/sensors/datafusion.py +6 -1
- airflow/providers/google/cloud/sensors/dataplex.py +6 -1
- airflow/providers/google/cloud/sensors/dataprep.py +6 -1
- airflow/providers/google/cloud/sensors/dataproc.py +6 -1
- airflow/providers/google/cloud/sensors/dataproc_metastore.py +6 -1
- airflow/providers/google/cloud/sensors/gcs.py +9 -3
- airflow/providers/google/cloud/sensors/looker.py +6 -1
- airflow/providers/google/cloud/sensors/pubsub.py +8 -3
- airflow/providers/google/cloud/sensors/tasks.py +6 -1
- airflow/providers/google/cloud/sensors/vertex_ai/feature_store.py +6 -1
- airflow/providers/google/cloud/sensors/workflows.py +6 -1
- airflow/providers/google/cloud/transfers/azure_blob_to_gcs.py +1 -1
- airflow/providers/google/cloud/transfers/azure_fileshare_to_gcs.py +1 -1
- airflow/providers/google/cloud/transfers/bigquery_to_bigquery.py +1 -2
- airflow/providers/google/cloud/transfers/bigquery_to_gcs.py +1 -2
- airflow/providers/google/cloud/transfers/bigquery_to_mssql.py +0 -1
- airflow/providers/google/cloud/transfers/bigquery_to_sql.py +1 -1
- airflow/providers/google/cloud/transfers/calendar_to_gcs.py +1 -1
- airflow/providers/google/cloud/transfers/cassandra_to_gcs.py +1 -1
- airflow/providers/google/cloud/transfers/facebook_ads_to_gcs.py +1 -1
- airflow/providers/google/cloud/transfers/gcs_to_bigquery.py +1 -2
- airflow/providers/google/cloud/transfers/gcs_to_gcs.py +1 -1
- airflow/providers/google/cloud/transfers/gcs_to_local.py +1 -1
- airflow/providers/google/cloud/transfers/gcs_to_sftp.py +1 -1
- airflow/providers/google/cloud/transfers/gdrive_to_gcs.py +5 -1
- airflow/providers/google/cloud/transfers/gdrive_to_local.py +1 -1
- airflow/providers/google/cloud/transfers/http_to_gcs.py +1 -1
- airflow/providers/google/cloud/transfers/local_to_gcs.py +1 -1
- airflow/providers/google/cloud/transfers/salesforce_to_gcs.py +1 -1
- airflow/providers/google/cloud/transfers/sftp_to_gcs.py +1 -1
- airflow/providers/google/cloud/transfers/sheets_to_gcs.py +2 -2
- airflow/providers/google/cloud/transfers/sql_to_gcs.py +1 -1
- airflow/providers/google/cloud/utils/field_validator.py +1 -2
- airflow/providers/google/common/auth_backend/google_openid.py +2 -1
- airflow/providers/google/common/deprecated.py +2 -1
- airflow/providers/google/common/hooks/base_google.py +7 -3
- airflow/providers/google/common/links/storage.py +0 -22
- airflow/providers/google/firebase/operators/firestore.py +1 -1
- airflow/providers/google/get_provider_info.py +0 -11
- airflow/providers/google/leveldb/hooks/leveldb.py +5 -1
- airflow/providers/google/leveldb/operators/leveldb.py +1 -1
- airflow/providers/google/marketing_platform/links/analytics_admin.py +3 -6
- airflow/providers/google/marketing_platform/operators/analytics_admin.py +0 -1
- airflow/providers/google/marketing_platform/operators/campaign_manager.py +4 -4
- airflow/providers/google/marketing_platform/operators/display_video.py +6 -6
- airflow/providers/google/marketing_platform/operators/search_ads.py +1 -1
- airflow/providers/google/marketing_platform/sensors/campaign_manager.py +6 -1
- airflow/providers/google/marketing_platform/sensors/display_video.py +6 -1
- airflow/providers/google/suite/operators/sheets.py +3 -3
- airflow/providers/google/suite/sensors/drive.py +6 -1
- airflow/providers/google/suite/transfers/gcs_to_gdrive.py +1 -1
- airflow/providers/google/suite/transfers/gcs_to_sheets.py +1 -1
- airflow/providers/google/suite/transfers/local_to_drive.py +1 -1
- airflow/providers/google/version_compat.py +28 -0
- {apache_airflow_providers_google-16.0.0rc1.dist-info → apache_airflow_providers_google-16.1.0rc1.dist-info}/METADATA +19 -20
- {apache_airflow_providers_google-16.0.0rc1.dist-info → apache_airflow_providers_google-16.1.0rc1.dist-info}/RECORD +166 -166
- {apache_airflow_providers_google-16.0.0rc1.dist-info → apache_airflow_providers_google-16.1.0rc1.dist-info}/WHEEL +0 -0
- {apache_airflow_providers_google-16.0.0rc1.dist-info → apache_airflow_providers_google-16.1.0rc1.dist-info}/entry_points.txt +0 -0
@@ -144,7 +144,6 @@ class CloudDLPCancelDLPJobOperator(GoogleCloudBaseOperator):
|
|
144
144
|
if project_id:
|
145
145
|
CloudDLPJobDetailsLink.persist(
|
146
146
|
context=context,
|
147
|
-
task_instance=self,
|
148
147
|
project_id=project_id,
|
149
148
|
job_name=self.dlp_job_id,
|
150
149
|
)
|
@@ -251,7 +250,6 @@ class CloudDLPCreateDeidentifyTemplateOperator(GoogleCloudBaseOperator):
|
|
251
250
|
if project_id and template_id:
|
252
251
|
CloudDLPDeidentifyTemplateDetailsLink.persist(
|
253
252
|
context=context,
|
254
|
-
task_instance=self,
|
255
253
|
project_id=project_id,
|
256
254
|
template_name=template_id,
|
257
255
|
)
|
@@ -363,7 +361,6 @@ class CloudDLPCreateDLPJobOperator(GoogleCloudBaseOperator):
|
|
363
361
|
if project_id:
|
364
362
|
CloudDLPJobDetailsLink.persist(
|
365
363
|
context=context,
|
366
|
-
task_instance=self,
|
367
364
|
project_id=project_id,
|
368
365
|
job_name=result["name"].split("/")[-1] if result["name"] else None,
|
369
366
|
)
|
@@ -473,7 +470,6 @@ class CloudDLPCreateInspectTemplateOperator(GoogleCloudBaseOperator):
|
|
473
470
|
if project_id and template_id:
|
474
471
|
CloudDLPInspectTemplateDetailsLink.persist(
|
475
472
|
context=context,
|
476
|
-
task_instance=self,
|
477
473
|
project_id=project_id,
|
478
474
|
template_name=template_id,
|
479
475
|
)
|
@@ -578,7 +574,6 @@ class CloudDLPCreateJobTriggerOperator(GoogleCloudBaseOperator):
|
|
578
574
|
if project_id:
|
579
575
|
CloudDLPJobTriggerDetailsLink.persist(
|
580
576
|
context=context,
|
581
|
-
task_instance=self,
|
582
577
|
project_id=project_id,
|
583
578
|
trigger_name=trigger_name,
|
584
579
|
)
|
@@ -692,7 +687,6 @@ class CloudDLPCreateStoredInfoTypeOperator(GoogleCloudBaseOperator):
|
|
692
687
|
if project_id and stored_info_type_id:
|
693
688
|
CloudDLPInfoTypeDetailsLink.persist(
|
694
689
|
context=context,
|
695
|
-
task_instance=self,
|
696
690
|
project_id=project_id,
|
697
691
|
info_type_name=stored_info_type_id,
|
698
692
|
)
|
@@ -880,7 +874,6 @@ class CloudDLPDeleteDeidentifyTemplateOperator(GoogleCloudBaseOperator):
|
|
880
874
|
if project_id:
|
881
875
|
CloudDLPDeidentifyTemplatesListLink.persist(
|
882
876
|
context=context,
|
883
|
-
task_instance=self,
|
884
877
|
project_id=project_id,
|
885
878
|
)
|
886
879
|
except NotFound:
|
@@ -966,7 +959,6 @@ class CloudDLPDeleteDLPJobOperator(GoogleCloudBaseOperator):
|
|
966
959
|
if project_id:
|
967
960
|
CloudDLPJobsListLink.persist(
|
968
961
|
context=context,
|
969
|
-
task_instance=self,
|
970
962
|
project_id=project_id,
|
971
963
|
)
|
972
964
|
|
@@ -1056,7 +1048,6 @@ class CloudDLPDeleteInspectTemplateOperator(GoogleCloudBaseOperator):
|
|
1056
1048
|
if project_id:
|
1057
1049
|
CloudDLPInspectTemplatesListLink.persist(
|
1058
1050
|
context=context,
|
1059
|
-
task_instance=self,
|
1060
1051
|
project_id=project_id,
|
1061
1052
|
)
|
1062
1053
|
|
@@ -1140,7 +1131,6 @@ class CloudDLPDeleteJobTriggerOperator(GoogleCloudBaseOperator):
|
|
1140
1131
|
if project_id:
|
1141
1132
|
CloudDLPJobTriggersListLink.persist(
|
1142
1133
|
context=context,
|
1143
|
-
task_instance=self,
|
1144
1134
|
project_id=project_id,
|
1145
1135
|
)
|
1146
1136
|
|
@@ -1232,7 +1222,6 @@ class CloudDLPDeleteStoredInfoTypeOperator(GoogleCloudBaseOperator):
|
|
1232
1222
|
if project_id:
|
1233
1223
|
CloudDLPInfoTypesListLink.persist(
|
1234
1224
|
context=context,
|
1235
|
-
task_instance=self,
|
1236
1225
|
project_id=project_id,
|
1237
1226
|
)
|
1238
1227
|
|
@@ -1318,7 +1307,9 @@ class CloudDLPGetDeidentifyTemplateOperator(GoogleCloudBaseOperator):
|
|
1318
1307
|
project_id = self.project_id or hook.project_id
|
1319
1308
|
if project_id:
|
1320
1309
|
CloudDLPDeidentifyTemplateDetailsLink.persist(
|
1321
|
-
context=context,
|
1310
|
+
context=context,
|
1311
|
+
project_id=project_id,
|
1312
|
+
template_name=self.template_id,
|
1322
1313
|
)
|
1323
1314
|
|
1324
1315
|
return DeidentifyTemplate.to_dict(template)
|
@@ -1400,7 +1391,6 @@ class CloudDLPGetDLPJobOperator(GoogleCloudBaseOperator):
|
|
1400
1391
|
if project_id:
|
1401
1392
|
CloudDLPJobDetailsLink.persist(
|
1402
1393
|
context=context,
|
1403
|
-
task_instance=self,
|
1404
1394
|
project_id=project_id,
|
1405
1395
|
job_name=self.dlp_job_id,
|
1406
1396
|
)
|
@@ -1490,7 +1480,6 @@ class CloudDLPGetInspectTemplateOperator(GoogleCloudBaseOperator):
|
|
1490
1480
|
if project_id:
|
1491
1481
|
CloudDLPInspectTemplateDetailsLink.persist(
|
1492
1482
|
context=context,
|
1493
|
-
task_instance=self,
|
1494
1483
|
project_id=project_id,
|
1495
1484
|
template_name=self.template_id,
|
1496
1485
|
)
|
@@ -1574,7 +1563,6 @@ class CloudDLPGetDLPJobTriggerOperator(GoogleCloudBaseOperator):
|
|
1574
1563
|
if project_id:
|
1575
1564
|
CloudDLPJobTriggerDetailsLink.persist(
|
1576
1565
|
context=context,
|
1577
|
-
task_instance=self,
|
1578
1566
|
project_id=project_id,
|
1579
1567
|
trigger_name=self.job_trigger_id,
|
1580
1568
|
)
|
@@ -1664,7 +1652,6 @@ class CloudDLPGetStoredInfoTypeOperator(GoogleCloudBaseOperator):
|
|
1664
1652
|
if project_id:
|
1665
1653
|
CloudDLPInfoTypeDetailsLink.persist(
|
1666
1654
|
context=context,
|
1667
|
-
task_instance=self,
|
1668
1655
|
project_id=project_id,
|
1669
1656
|
info_type_name=self.stored_info_type_id,
|
1670
1657
|
)
|
@@ -1844,7 +1831,6 @@ class CloudDLPListDeidentifyTemplatesOperator(GoogleCloudBaseOperator):
|
|
1844
1831
|
if project_id:
|
1845
1832
|
CloudDLPDeidentifyTemplatesListLink.persist(
|
1846
1833
|
context=context,
|
1847
|
-
task_instance=self,
|
1848
1834
|
project_id=project_id,
|
1849
1835
|
)
|
1850
1836
|
|
@@ -1940,7 +1926,6 @@ class CloudDLPListDLPJobsOperator(GoogleCloudBaseOperator):
|
|
1940
1926
|
if project_id:
|
1941
1927
|
CloudDLPJobsListLink.persist(
|
1942
1928
|
context=context,
|
1943
|
-
task_instance=self,
|
1944
1929
|
project_id=project_id,
|
1945
1930
|
)
|
1946
1931
|
|
@@ -2025,7 +2010,6 @@ class CloudDLPListInfoTypesOperator(GoogleCloudBaseOperator):
|
|
2025
2010
|
if project_id:
|
2026
2011
|
CloudDLPPossibleInfoTypesListLink.persist(
|
2027
2012
|
context=context,
|
2028
|
-
task_instance=self,
|
2029
2013
|
project_id=project_id,
|
2030
2014
|
)
|
2031
2015
|
|
@@ -2119,7 +2103,6 @@ class CloudDLPListInspectTemplatesOperator(GoogleCloudBaseOperator):
|
|
2119
2103
|
if project_id:
|
2120
2104
|
CloudDLPInspectTemplatesListLink.persist(
|
2121
2105
|
context=context,
|
2122
|
-
task_instance=self,
|
2123
2106
|
project_id=project_id,
|
2124
2107
|
)
|
2125
2108
|
|
@@ -2211,7 +2194,6 @@ class CloudDLPListJobTriggersOperator(GoogleCloudBaseOperator):
|
|
2211
2194
|
if project_id:
|
2212
2195
|
CloudDLPJobTriggersListLink.persist(
|
2213
2196
|
context=context,
|
2214
|
-
task_instance=self,
|
2215
2197
|
project_id=project_id,
|
2216
2198
|
)
|
2217
2199
|
|
@@ -2305,7 +2287,6 @@ class CloudDLPListStoredInfoTypesOperator(GoogleCloudBaseOperator):
|
|
2305
2287
|
if project_id:
|
2306
2288
|
CloudDLPInfoTypesListLink.persist(
|
2307
2289
|
context=context,
|
2308
|
-
task_instance=self,
|
2309
2290
|
project_id=project_id,
|
2310
2291
|
)
|
2311
2292
|
|
@@ -2592,7 +2573,6 @@ class CloudDLPUpdateDeidentifyTemplateOperator(GoogleCloudBaseOperator):
|
|
2592
2573
|
if project_id:
|
2593
2574
|
CloudDLPDeidentifyTemplateDetailsLink.persist(
|
2594
2575
|
context=context,
|
2595
|
-
task_instance=self,
|
2596
2576
|
project_id=project_id,
|
2597
2577
|
template_name=self.template_id,
|
2598
2578
|
)
|
@@ -2692,7 +2672,6 @@ class CloudDLPUpdateInspectTemplateOperator(GoogleCloudBaseOperator):
|
|
2692
2672
|
if project_id:
|
2693
2673
|
CloudDLPInspectTemplateDetailsLink.persist(
|
2694
2674
|
context=context,
|
2695
|
-
task_instance=self,
|
2696
2675
|
project_id=project_id,
|
2697
2676
|
template_name=self.template_id,
|
2698
2677
|
)
|
@@ -2786,7 +2765,6 @@ class CloudDLPUpdateJobTriggerOperator(GoogleCloudBaseOperator):
|
|
2786
2765
|
if project_id:
|
2787
2766
|
CloudDLPJobTriggerDetailsLink.persist(
|
2788
2767
|
context=context,
|
2789
|
-
task_instance=self,
|
2790
2768
|
project_id=project_id,
|
2791
2769
|
trigger_name=self.job_trigger_id,
|
2792
2770
|
)
|
@@ -2887,7 +2865,6 @@ class CloudDLPUpdateStoredInfoTypeOperator(GoogleCloudBaseOperator):
|
|
2887
2865
|
if project_id:
|
2888
2866
|
CloudDLPInfoTypeDetailsLink.persist(
|
2889
2867
|
context=context,
|
2890
|
-
task_instance=self,
|
2891
2868
|
project_id=project_id,
|
2892
2869
|
info_type_name=self.stored_info_type_id,
|
2893
2870
|
)
|
@@ -219,6 +219,13 @@ class CloudFunctionDeployFunctionOperator(GoogleCloudBaseOperator):
|
|
219
219
|
self.body["labels"] = {}
|
220
220
|
self.body["labels"].update({"airflow-version": "v" + version.replace(".", "-").replace("+", "-")})
|
221
221
|
|
222
|
+
@property
|
223
|
+
def extra_links_params(self) -> dict[str, Any]:
|
224
|
+
return {
|
225
|
+
"location": self.location,
|
226
|
+
"function_name": self.body["name"].split("/")[-1],
|
227
|
+
}
|
228
|
+
|
222
229
|
def execute(self, context: Context):
|
223
230
|
hook = CloudFunctionsHook(
|
224
231
|
gcp_conn_id=self.gcp_conn_id,
|
@@ -237,7 +244,6 @@ class CloudFunctionDeployFunctionOperator(GoogleCloudBaseOperator):
|
|
237
244
|
if project_id:
|
238
245
|
CloudFunctionsDetailsLink.persist(
|
239
246
|
context=context,
|
240
|
-
task_instance=self,
|
241
247
|
location=self.location,
|
242
248
|
project_id=project_id,
|
243
249
|
function_name=self.body["name"].split("/")[-1],
|
@@ -394,7 +400,6 @@ class CloudFunctionDeleteFunctionOperator(GoogleCloudBaseOperator):
|
|
394
400
|
if project_id:
|
395
401
|
CloudFunctionsListLink.persist(
|
396
402
|
context=context,
|
397
|
-
task_instance=self,
|
398
403
|
project_id=project_id,
|
399
404
|
)
|
400
405
|
return hook.delete_function(self.name)
|
@@ -462,6 +467,13 @@ class CloudFunctionInvokeFunctionOperator(GoogleCloudBaseOperator):
|
|
462
467
|
self.api_version = api_version
|
463
468
|
self.impersonation_chain = impersonation_chain
|
464
469
|
|
470
|
+
@property
|
471
|
+
def extra_links_params(self) -> dict[str, Any]:
|
472
|
+
return {
|
473
|
+
"location": self.location,
|
474
|
+
"function_name": self.function_id,
|
475
|
+
}
|
476
|
+
|
465
477
|
def execute(self, context: Context):
|
466
478
|
hook = CloudFunctionsHook(
|
467
479
|
api_version=self.api_version,
|
@@ -476,16 +488,13 @@ class CloudFunctionInvokeFunctionOperator(GoogleCloudBaseOperator):
|
|
476
488
|
project_id=self.project_id,
|
477
489
|
)
|
478
490
|
self.log.info("Function called successfully. Execution id %s", result.get("executionId"))
|
479
|
-
|
491
|
+
context["ti"].xcom_push(key="execution_id", value=result.get("executionId"))
|
480
492
|
|
481
493
|
project_id = self.project_id or hook.project_id
|
482
494
|
if project_id:
|
483
495
|
CloudFunctionsDetailsLink.persist(
|
484
496
|
context=context,
|
485
|
-
task_instance=self,
|
486
|
-
location=self.location,
|
487
497
|
project_id=project_id,
|
488
|
-
function_name=self.function_id,
|
489
498
|
)
|
490
499
|
|
491
500
|
return result
|
@@ -145,7 +145,6 @@ class GCSCreateBucketOperator(GoogleCloudBaseOperator):
|
|
145
145
|
)
|
146
146
|
StorageLink.persist(
|
147
147
|
context=context,
|
148
|
-
task_instance=self,
|
149
148
|
uri=self.bucket_name,
|
150
149
|
project_id=self.project_id or hook.project_id,
|
151
150
|
)
|
@@ -260,7 +259,6 @@ class GCSListObjectsOperator(GoogleCloudBaseOperator):
|
|
260
259
|
|
261
260
|
StorageLink.persist(
|
262
261
|
context=context,
|
263
|
-
task_instance=self,
|
264
262
|
uri=self.bucket,
|
265
263
|
project_id=hook.project_id,
|
266
264
|
)
|
@@ -439,7 +437,6 @@ class GCSBucketCreateAclEntryOperator(GoogleCloudBaseOperator):
|
|
439
437
|
)
|
440
438
|
StorageLink.persist(
|
441
439
|
context=context,
|
442
|
-
task_instance=self,
|
443
440
|
uri=self.bucket,
|
444
441
|
project_id=hook.project_id,
|
445
442
|
)
|
@@ -522,7 +519,6 @@ class GCSObjectCreateAclEntryOperator(GoogleCloudBaseOperator):
|
|
522
519
|
)
|
523
520
|
FileDetailsLink.persist(
|
524
521
|
context=context,
|
525
|
-
task_instance=self,
|
526
522
|
uri=f"{self.bucket}/{self.object_name}",
|
527
523
|
project_id=hook.project_id,
|
528
524
|
)
|
@@ -631,7 +627,6 @@ class GCSFileTransformOperator(GoogleCloudBaseOperator):
|
|
631
627
|
self.log.info("Uploading file to %s as %s", self.destination_bucket, self.destination_object)
|
632
628
|
FileDetailsLink.persist(
|
633
629
|
context=context,
|
634
|
-
task_instance=self,
|
635
630
|
uri=f"{self.destination_bucket}/{self.destination_object}",
|
636
631
|
project_id=hook.project_id,
|
637
632
|
)
|
@@ -829,7 +824,6 @@ class GCSTimeSpanFileTransformOperator(GoogleCloudBaseOperator):
|
|
829
824
|
)
|
830
825
|
StorageLink.persist(
|
831
826
|
context=context,
|
832
|
-
task_instance=self,
|
833
827
|
uri=self.destination_bucket,
|
834
828
|
project_id=destination_hook.project_id,
|
835
829
|
)
|
@@ -1080,7 +1074,6 @@ class GCSSynchronizeBucketsOperator(GoogleCloudBaseOperator):
|
|
1080
1074
|
)
|
1081
1075
|
StorageLink.persist(
|
1082
1076
|
context=context,
|
1083
|
-
task_instance=self,
|
1084
1077
|
uri=self._get_uri(self.destination_bucket, self.destination_object),
|
1085
1078
|
project_id=hook.project_id,
|
1086
1079
|
)
|
@@ -453,8 +453,15 @@ class GKECreateClusterOperator(GKEOperatorMixin, GoogleCloudBaseOperator):
|
|
453
453
|
stacklevel=2,
|
454
454
|
)
|
455
455
|
|
456
|
+
@property
|
457
|
+
def extra_links_params(self) -> dict[str, Any]:
|
458
|
+
return {
|
459
|
+
"project_id": self.project_id,
|
460
|
+
"location": self.location,
|
461
|
+
}
|
462
|
+
|
456
463
|
def execute(self, context: Context) -> str:
|
457
|
-
KubernetesEngineClusterLink.persist(context=context,
|
464
|
+
KubernetesEngineClusterLink.persist(context=context, cluster=self.body)
|
458
465
|
|
459
466
|
try:
|
460
467
|
operation = self.cluster_hook.create_cluster(
|
@@ -553,9 +560,16 @@ class GKEStartKueueInsideClusterOperator(GKEOperatorMixin, KubernetesInstallKueu
|
|
553
560
|
self.use_dns_endpoint = use_dns_endpoint
|
554
561
|
self.impersonation_chain = impersonation_chain
|
555
562
|
|
563
|
+
@property
|
564
|
+
def extra_links_params(self) -> dict[str, Any]:
|
565
|
+
return {
|
566
|
+
"project_id": self.project_id,
|
567
|
+
"location": self.location,
|
568
|
+
}
|
569
|
+
|
556
570
|
def execute(self, context: Context):
|
557
571
|
cluster = self.cluster_hook.get_cluster(name=self.cluster_name, project_id=self.project_id)
|
558
|
-
KubernetesEngineClusterLink.persist(context=context,
|
572
|
+
KubernetesEngineClusterLink.persist(context=context, cluster=cluster)
|
559
573
|
|
560
574
|
if self.cluster_hook.check_cluster_autoscaling_ability(cluster=cluster):
|
561
575
|
super().execute(context)
|
@@ -854,7 +868,14 @@ class GKEDescribeJobOperator(GKEOperatorMixin, GoogleCloudBaseOperator):
|
|
854
868
|
self.cluster_name,
|
855
869
|
self.job,
|
856
870
|
)
|
857
|
-
KubernetesEngineJobLink.persist(
|
871
|
+
KubernetesEngineJobLink.persist(
|
872
|
+
context=context,
|
873
|
+
location=self.location,
|
874
|
+
cluster_name=self.cluster_name,
|
875
|
+
namespace=self.job.metadata.namespace,
|
876
|
+
job_name=self.job.metadata.name,
|
877
|
+
project_id=self.project_id,
|
878
|
+
)
|
858
879
|
return None
|
859
880
|
|
860
881
|
|
@@ -918,6 +939,15 @@ class GKEListJobsOperator(GKEOperatorMixin, GoogleCloudBaseOperator):
|
|
918
939
|
self.namespace = namespace
|
919
940
|
self.do_xcom_push = do_xcom_push
|
920
941
|
|
942
|
+
@property
|
943
|
+
def extra_links_params(self) -> dict[str, Any]:
|
944
|
+
return {
|
945
|
+
"location": self.location,
|
946
|
+
"cluster_name": self.cluster_name,
|
947
|
+
"namespace": self.namespace,
|
948
|
+
"project_id": self.project_id,
|
949
|
+
}
|
950
|
+
|
921
951
|
def execute(self, context: Context) -> dict:
|
922
952
|
if self.namespace:
|
923
953
|
jobs = self.hook.list_jobs_from_namespace(namespace=self.namespace)
|
@@ -928,7 +958,7 @@ class GKEListJobsOperator(GKEOperatorMixin, GoogleCloudBaseOperator):
|
|
928
958
|
if self.do_xcom_push:
|
929
959
|
ti = context["ti"]
|
930
960
|
ti.xcom_push(key="jobs_list", value=V1JobList.to_dict(jobs))
|
931
|
-
KubernetesEngineWorkloadsLink.persist(context=context
|
961
|
+
KubernetesEngineWorkloadsLink.persist(context=context)
|
932
962
|
return V1JobList.to_dict(jobs)
|
933
963
|
|
934
964
|
|
@@ -1270,8 +1300,14 @@ class GKESuspendJobOperator(GKEOperatorMixin, GoogleCloudBaseOperator):
|
|
1270
1300
|
self.name,
|
1271
1301
|
self.cluster_name,
|
1272
1302
|
)
|
1273
|
-
KubernetesEngineJobLink.persist(
|
1274
|
-
|
1303
|
+
KubernetesEngineJobLink.persist(
|
1304
|
+
context=context,
|
1305
|
+
location=self.location,
|
1306
|
+
cluster_name=self.cluster_name,
|
1307
|
+
namespace=self.job.metadata.namespace,
|
1308
|
+
job_name=self.job.metadata.name,
|
1309
|
+
project_id=self.project_id,
|
1310
|
+
)
|
1275
1311
|
return k8s.V1Job.to_dict(self.job)
|
1276
1312
|
|
1277
1313
|
|
@@ -1344,6 +1380,13 @@ class GKEResumeJobOperator(GKEOperatorMixin, GoogleCloudBaseOperator):
|
|
1344
1380
|
self.name,
|
1345
1381
|
self.cluster_name,
|
1346
1382
|
)
|
1347
|
-
KubernetesEngineJobLink.persist(
|
1383
|
+
KubernetesEngineJobLink.persist(
|
1384
|
+
context=context,
|
1385
|
+
location=self.location,
|
1386
|
+
cluster_name=self.cluster_name,
|
1387
|
+
namespace=self.job.metadata.namespace,
|
1388
|
+
job_name=self.job.metadata.name,
|
1389
|
+
project_id=self.project_id,
|
1390
|
+
)
|
1348
1391
|
|
1349
1392
|
return k8s.V1Job.to_dict(self.job)
|
@@ -113,7 +113,6 @@ class LifeSciencesRunPipelineOperator(GoogleCloudBaseOperator):
|
|
113
113
|
if project_id:
|
114
114
|
LifeSciencesLink.persist(
|
115
115
|
context=context,
|
116
|
-
task_instance=self,
|
117
116
|
project_id=project_id,
|
118
117
|
)
|
119
118
|
return hook.run_pipeline(body=self.body, location=self.location, project_id=self.project_id)
|