pulumi-gcp 7.7.0a1705990280__py3-none-any.whl → 7.8.0a1706310284__py3-none-any.whl

Sign up to get free protection for your applications and to get access to all the features.
Files changed (49) hide show
  1. pulumi_gcp/__init__.py +56 -0
  2. pulumi_gcp/alloydb/cluster.py +26 -21
  3. pulumi_gcp/bigquery/_inputs.py +231 -0
  4. pulumi_gcp/bigquery/outputs.py +229 -0
  5. pulumi_gcp/bigquery/routine.py +256 -10
  6. pulumi_gcp/bigquery/table.py +47 -0
  7. pulumi_gcp/cloudbuildv2/repository.py +60 -53
  8. pulumi_gcp/cloudrunv2/_inputs.py +176 -4
  9. pulumi_gcp/cloudrunv2/outputs.py +256 -3
  10. pulumi_gcp/cloudrunv2/service.py +148 -0
  11. pulumi_gcp/composer/_inputs.py +24 -0
  12. pulumi_gcp/composer/outputs.py +34 -0
  13. pulumi_gcp/compute/_inputs.py +4 -2
  14. pulumi_gcp/compute/disk.py +14 -14
  15. pulumi_gcp/compute/outputs.py +4 -2
  16. pulumi_gcp/healthcare/fhir_store.py +56 -0
  17. pulumi_gcp/kms/crypto_key.py +2 -2
  18. pulumi_gcp/kms/crypto_key_iam_binding.py +2 -2
  19. pulumi_gcp/kms/crypto_key_iam_member.py +2 -2
  20. pulumi_gcp/kms/crypto_key_iam_policy.py +2 -2
  21. pulumi_gcp/kms/crypto_key_version.py +2 -2
  22. pulumi_gcp/kms/secret_ciphertext.py +2 -2
  23. pulumi_gcp/netapp/__init__.py +4 -0
  24. pulumi_gcp/netapp/_inputs.py +643 -0
  25. pulumi_gcp/netapp/backup_policy.py +829 -0
  26. pulumi_gcp/netapp/kmsconfig.py +2 -2
  27. pulumi_gcp/netapp/outputs.py +651 -0
  28. pulumi_gcp/netapp/volume.py +1467 -0
  29. pulumi_gcp/networksecurity/__init__.py +5 -0
  30. pulumi_gcp/networksecurity/_inputs.py +228 -0
  31. pulumi_gcp/networksecurity/address_group_iam_binding.py +324 -0
  32. pulumi_gcp/networksecurity/address_group_iam_member.py +324 -0
  33. pulumi_gcp/networksecurity/address_group_iam_policy.py +492 -0
  34. pulumi_gcp/networksecurity/get_address_group_iam_policy.py +144 -0
  35. pulumi_gcp/networksecurity/outputs.py +212 -0
  36. pulumi_gcp/networksecurity/security_profile.py +800 -0
  37. pulumi_gcp/networkservices/gateway.py +1 -1
  38. pulumi_gcp/organizations/get_folders.py +1 -1
  39. pulumi_gcp/orgpolicy/_inputs.py +12 -12
  40. pulumi_gcp/orgpolicy/outputs.py +12 -12
  41. pulumi_gcp/securesourcemanager/instance.py +4 -2
  42. pulumi_gcp/storage/insights_report_config.py +12 -10
  43. pulumi_gcp/vertex/__init__.py +1 -0
  44. pulumi_gcp/vertex/ai_feature_group_feature.py +767 -0
  45. pulumi_gcp/workstations/workstation_config.py +47 -0
  46. {pulumi_gcp-7.7.0a1705990280.dist-info → pulumi_gcp-7.8.0a1706310284.dist-info}/METADATA +1 -1
  47. {pulumi_gcp-7.7.0a1705990280.dist-info → pulumi_gcp-7.8.0a1706310284.dist-info}/RECORD +49 -39
  48. {pulumi_gcp-7.7.0a1705990280.dist-info → pulumi_gcp-7.8.0a1706310284.dist-info}/WHEEL +0 -0
  49. {pulumi_gcp-7.7.0a1705990280.dist-info → pulumi_gcp-7.8.0a1706310284.dist-info}/top_level.txt +0 -0
pulumi_gcp/__init__.py CHANGED
@@ -5420,6 +5420,14 @@ _utilities.register(
5420
5420
  "gcp:netapp/activeDirectory:ActiveDirectory": "ActiveDirectory"
5421
5421
  }
5422
5422
  },
5423
+ {
5424
+ "pkg": "gcp",
5425
+ "mod": "netapp/backupPolicy",
5426
+ "fqn": "pulumi_gcp.netapp",
5427
+ "classes": {
5428
+ "gcp:netapp/backupPolicy:BackupPolicy": "BackupPolicy"
5429
+ }
5430
+ },
5423
5431
  {
5424
5432
  "pkg": "gcp",
5425
5433
  "mod": "netapp/backupVault",
@@ -5444,6 +5452,14 @@ _utilities.register(
5444
5452
  "gcp:netapp/storagePool:StoragePool": "StoragePool"
5445
5453
  }
5446
5454
  },
5455
+ {
5456
+ "pkg": "gcp",
5457
+ "mod": "netapp/volume",
5458
+ "fqn": "pulumi_gcp.netapp",
5459
+ "classes": {
5460
+ "gcp:netapp/volume:Volume": "Volume"
5461
+ }
5462
+ },
5447
5463
  {
5448
5464
  "pkg": "gcp",
5449
5465
  "mod": "networkconnectivity/hub",
@@ -5492,6 +5508,30 @@ _utilities.register(
5492
5508
  "gcp:networksecurity/addressGroup:AddressGroup": "AddressGroup"
5493
5509
  }
5494
5510
  },
5511
+ {
5512
+ "pkg": "gcp",
5513
+ "mod": "networksecurity/addressGroupIamBinding",
5514
+ "fqn": "pulumi_gcp.networksecurity",
5515
+ "classes": {
5516
+ "gcp:networksecurity/addressGroupIamBinding:AddressGroupIamBinding": "AddressGroupIamBinding"
5517
+ }
5518
+ },
5519
+ {
5520
+ "pkg": "gcp",
5521
+ "mod": "networksecurity/addressGroupIamMember",
5522
+ "fqn": "pulumi_gcp.networksecurity",
5523
+ "classes": {
5524
+ "gcp:networksecurity/addressGroupIamMember:AddressGroupIamMember": "AddressGroupIamMember"
5525
+ }
5526
+ },
5527
+ {
5528
+ "pkg": "gcp",
5529
+ "mod": "networksecurity/addressGroupIamPolicy",
5530
+ "fqn": "pulumi_gcp.networksecurity",
5531
+ "classes": {
5532
+ "gcp:networksecurity/addressGroupIamPolicy:AddressGroupIamPolicy": "AddressGroupIamPolicy"
5533
+ }
5534
+ },
5495
5535
  {
5496
5536
  "pkg": "gcp",
5497
5537
  "mod": "networksecurity/authorizationPolicy",
@@ -5524,6 +5564,14 @@ _utilities.register(
5524
5564
  "gcp:networksecurity/gatewaySecurityPolicyRule:GatewaySecurityPolicyRule": "GatewaySecurityPolicyRule"
5525
5565
  }
5526
5566
  },
5567
+ {
5568
+ "pkg": "gcp",
5569
+ "mod": "networksecurity/securityProfile",
5570
+ "fqn": "pulumi_gcp.networksecurity",
5571
+ "classes": {
5572
+ "gcp:networksecurity/securityProfile:SecurityProfile": "SecurityProfile"
5573
+ }
5574
+ },
5527
5575
  {
5528
5576
  "pkg": "gcp",
5529
5577
  "mod": "networksecurity/serverTlsPolicy",
@@ -6844,6 +6892,14 @@ _utilities.register(
6844
6892
  "gcp:vertex/aiFeatureGroup:AiFeatureGroup": "AiFeatureGroup"
6845
6893
  }
6846
6894
  },
6895
+ {
6896
+ "pkg": "gcp",
6897
+ "mod": "vertex/aiFeatureGroupFeature",
6898
+ "fqn": "pulumi_gcp.vertex",
6899
+ "classes": {
6900
+ "gcp:vertex/aiFeatureGroupFeature:AiFeatureGroupFeature": "AiFeatureGroupFeature"
6901
+ }
6902
+ },
6847
6903
  {
6848
6904
  "pkg": "gcp",
6849
6905
  "mod": "vertex/aiFeatureOnlineStore",
@@ -22,6 +22,7 @@ class ClusterArgs:
22
22
  automated_backup_policy: Optional[pulumi.Input['ClusterAutomatedBackupPolicyArgs']] = None,
23
23
  cluster_type: Optional[pulumi.Input[str]] = None,
24
24
  continuous_backup_config: Optional[pulumi.Input['ClusterContinuousBackupConfigArgs']] = None,
25
+ database_version: Optional[pulumi.Input[str]] = None,
25
26
  deletion_policy: Optional[pulumi.Input[str]] = None,
26
27
  display_name: Optional[pulumi.Input[str]] = None,
27
28
  encryption_config: Optional[pulumi.Input['ClusterEncryptionConfigArgs']] = None,
@@ -54,6 +55,7 @@ class ClusterArgs:
54
55
  :param pulumi.Input['ClusterContinuousBackupConfigArgs'] continuous_backup_config: The continuous backup config for this cluster.
55
56
  If no policy is provided then the default policy will be used. The default policy takes one backup a day and retains backups for 14 days.
56
57
  Structure is documented below.
58
+ :param pulumi.Input[str] database_version: The database engine major version. This is an optional field and it's populated at the Cluster creation time. This field cannot be changed after cluster creation.
57
59
  :param pulumi.Input[str] deletion_policy: Policy to determine if the cluster should be deleted forcefully.
58
60
  Deleting a cluster forcefully, deletes the cluster and all its associated instances within the cluster.
59
61
  Deleting a Secondary cluster with a secondary instance REQUIRES setting deletion_policy = "FORCE" otherwise an error is returned. This is needed as there is no support to delete just the secondary instance, and the only way to delete secondary instance is to delete the associated secondary cluster forcefully which also deletes the secondary instance.
@@ -92,6 +94,8 @@ class ClusterArgs:
92
94
  pulumi.set(__self__, "cluster_type", cluster_type)
93
95
  if continuous_backup_config is not None:
94
96
  pulumi.set(__self__, "continuous_backup_config", continuous_backup_config)
97
+ if database_version is not None:
98
+ pulumi.set(__self__, "database_version", database_version)
95
99
  if deletion_policy is not None:
96
100
  pulumi.set(__self__, "deletion_policy", deletion_policy)
97
101
  if display_name is not None:
@@ -204,6 +208,18 @@ class ClusterArgs:
204
208
  def continuous_backup_config(self, value: Optional[pulumi.Input['ClusterContinuousBackupConfigArgs']]):
205
209
  pulumi.set(self, "continuous_backup_config", value)
206
210
 
211
+ @property
212
+ @pulumi.getter(name="databaseVersion")
213
+ def database_version(self) -> Optional[pulumi.Input[str]]:
214
+ """
215
+ The database engine major version. This is an optional field and it's populated at the Cluster creation time. This field cannot be changed after cluster creation.
216
+ """
217
+ return pulumi.get(self, "database_version")
218
+
219
+ @database_version.setter
220
+ def database_version(self, value: Optional[pulumi.Input[str]]):
221
+ pulumi.set(self, "database_version", value)
222
+
207
223
  @property
208
224
  @pulumi.getter(name="deletionPolicy")
209
225
  def deletion_policy(self) -> Optional[pulumi.Input[str]]:
@@ -420,7 +436,7 @@ class _ClusterState:
420
436
  Structure is documented below.
421
437
  :param pulumi.Input[Sequence[pulumi.Input['ClusterContinuousBackupInfoArgs']]] continuous_backup_infos: ContinuousBackupInfo describes the continuous backup properties of a cluster.
422
438
  Structure is documented below.
423
- :param pulumi.Input[str] database_version: The database engine major version. This is an output-only field and it's populated at the Cluster creation time. This field cannot be changed after cluster creation.
439
+ :param pulumi.Input[str] database_version: The database engine major version. This is an optional field and it's populated at the Cluster creation time. This field cannot be changed after cluster creation.
424
440
  :param pulumi.Input[str] deletion_policy: Policy to determine if the cluster should be deleted forcefully.
425
441
  Deleting a cluster forcefully, deletes the cluster and all its associated instances within the cluster.
426
442
  Deleting a Secondary cluster with a secondary instance REQUIRES setting deletion_policy = "FORCE" otherwise an error is returned. This is needed as there is no support to delete just the secondary instance, and the only way to delete secondary instance is to delete the associated secondary cluster forcefully which also deletes the secondary instance.
@@ -632,7 +648,7 @@ class _ClusterState:
632
648
  @pulumi.getter(name="databaseVersion")
633
649
  def database_version(self) -> Optional[pulumi.Input[str]]:
634
650
  """
635
- The database engine major version. This is an output-only field and it's populated at the Cluster creation time. This field cannot be changed after cluster creation.
651
+ The database engine major version. This is an optional field and it's populated at the Cluster creation time. This field cannot be changed after cluster creation.
636
652
  """
637
653
  return pulumi.get(self, "database_version")
638
654
 
@@ -943,6 +959,7 @@ class Cluster(pulumi.CustomResource):
943
959
  cluster_id: Optional[pulumi.Input[str]] = None,
944
960
  cluster_type: Optional[pulumi.Input[str]] = None,
945
961
  continuous_backup_config: Optional[pulumi.Input[pulumi.InputType['ClusterContinuousBackupConfigArgs']]] = None,
962
+ database_version: Optional[pulumi.Input[str]] = None,
946
963
  deletion_policy: Optional[pulumi.Input[str]] = None,
947
964
  display_name: Optional[pulumi.Input[str]] = None,
948
965
  encryption_config: Optional[pulumi.Input[pulumi.InputType['ClusterEncryptionConfigArgs']]] = None,
@@ -958,14 +975,6 @@ class Cluster(pulumi.CustomResource):
958
975
  secondary_config: Optional[pulumi.Input[pulumi.InputType['ClusterSecondaryConfigArgs']]] = None,
959
976
  __props__=None):
960
977
  """
961
- A managed alloydb cluster.
962
-
963
- To get more information about Cluster, see:
964
-
965
- * [API documentation](https://cloud.google.com/alloydb/docs/reference/rest/v1/projects.locations.clusters/create)
966
- * How-to Guides
967
- * [AlloyDB](https://cloud.google.com/alloydb/docs/)
968
-
969
978
  ## Example Usage
970
979
  ### Alloydb Cluster Basic
971
980
 
@@ -991,6 +1000,7 @@ class Cluster(pulumi.CustomResource):
991
1000
  cluster_id="alloydb-cluster-full",
992
1001
  location="us-central1",
993
1002
  network=default.id,
1003
+ database_version="POSTGRES_15",
994
1004
  initial_user=gcp.alloydb.ClusterInitialUserArgs(
995
1005
  user="alloydb-cluster-full",
996
1006
  password="alloydb-cluster-full",
@@ -1164,6 +1174,7 @@ class Cluster(pulumi.CustomResource):
1164
1174
  :param pulumi.Input[pulumi.InputType['ClusterContinuousBackupConfigArgs']] continuous_backup_config: The continuous backup config for this cluster.
1165
1175
  If no policy is provided then the default policy will be used. The default policy takes one backup a day and retains backups for 14 days.
1166
1176
  Structure is documented below.
1177
+ :param pulumi.Input[str] database_version: The database engine major version. This is an optional field and it's populated at the Cluster creation time. This field cannot be changed after cluster creation.
1167
1178
  :param pulumi.Input[str] deletion_policy: Policy to determine if the cluster should be deleted forcefully.
1168
1179
  Deleting a cluster forcefully, deletes the cluster and all its associated instances within the cluster.
1169
1180
  Deleting a Secondary cluster with a secondary instance REQUIRES setting deletion_policy = "FORCE" otherwise an error is returned. This is needed as there is no support to delete just the secondary instance, and the only way to delete secondary instance is to delete the associated secondary cluster forcefully which also deletes the secondary instance.
@@ -1203,14 +1214,6 @@ class Cluster(pulumi.CustomResource):
1203
1214
  args: ClusterArgs,
1204
1215
  opts: Optional[pulumi.ResourceOptions] = None):
1205
1216
  """
1206
- A managed alloydb cluster.
1207
-
1208
- To get more information about Cluster, see:
1209
-
1210
- * [API documentation](https://cloud.google.com/alloydb/docs/reference/rest/v1/projects.locations.clusters/create)
1211
- * How-to Guides
1212
- * [AlloyDB](https://cloud.google.com/alloydb/docs/)
1213
-
1214
1217
  ## Example Usage
1215
1218
  ### Alloydb Cluster Basic
1216
1219
 
@@ -1236,6 +1239,7 @@ class Cluster(pulumi.CustomResource):
1236
1239
  cluster_id="alloydb-cluster-full",
1237
1240
  location="us-central1",
1238
1241
  network=default.id,
1242
+ database_version="POSTGRES_15",
1239
1243
  initial_user=gcp.alloydb.ClusterInitialUserArgs(
1240
1244
  user="alloydb-cluster-full",
1241
1245
  password="alloydb-cluster-full",
@@ -1413,6 +1417,7 @@ class Cluster(pulumi.CustomResource):
1413
1417
  cluster_id: Optional[pulumi.Input[str]] = None,
1414
1418
  cluster_type: Optional[pulumi.Input[str]] = None,
1415
1419
  continuous_backup_config: Optional[pulumi.Input[pulumi.InputType['ClusterContinuousBackupConfigArgs']]] = None,
1420
+ database_version: Optional[pulumi.Input[str]] = None,
1416
1421
  deletion_policy: Optional[pulumi.Input[str]] = None,
1417
1422
  display_name: Optional[pulumi.Input[str]] = None,
1418
1423
  encryption_config: Optional[pulumi.Input[pulumi.InputType['ClusterEncryptionConfigArgs']]] = None,
@@ -1442,6 +1447,7 @@ class Cluster(pulumi.CustomResource):
1442
1447
  __props__.__dict__["cluster_id"] = cluster_id
1443
1448
  __props__.__dict__["cluster_type"] = cluster_type
1444
1449
  __props__.__dict__["continuous_backup_config"] = continuous_backup_config
1450
+ __props__.__dict__["database_version"] = database_version
1445
1451
  __props__.__dict__["deletion_policy"] = deletion_policy
1446
1452
  __props__.__dict__["display_name"] = display_name
1447
1453
  __props__.__dict__["encryption_config"] = encryption_config
@@ -1459,7 +1465,6 @@ class Cluster(pulumi.CustomResource):
1459
1465
  __props__.__dict__["secondary_config"] = secondary_config
1460
1466
  __props__.__dict__["backup_sources"] = None
1461
1467
  __props__.__dict__["continuous_backup_infos"] = None
1462
- __props__.__dict__["database_version"] = None
1463
1468
  __props__.__dict__["effective_annotations"] = None
1464
1469
  __props__.__dict__["effective_labels"] = None
1465
1470
  __props__.__dict__["encryption_infos"] = None
@@ -1536,7 +1541,7 @@ class Cluster(pulumi.CustomResource):
1536
1541
  Structure is documented below.
1537
1542
  :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ClusterContinuousBackupInfoArgs']]]] continuous_backup_infos: ContinuousBackupInfo describes the continuous backup properties of a cluster.
1538
1543
  Structure is documented below.
1539
- :param pulumi.Input[str] database_version: The database engine major version. This is an output-only field and it's populated at the Cluster creation time. This field cannot be changed after cluster creation.
1544
+ :param pulumi.Input[str] database_version: The database engine major version. This is an optional field and it's populated at the Cluster creation time. This field cannot be changed after cluster creation.
1540
1545
  :param pulumi.Input[str] deletion_policy: Policy to determine if the cluster should be deleted forcefully.
1541
1546
  Deleting a cluster forcefully, deletes the cluster and all its associated instances within the cluster.
1542
1547
  Deleting a Secondary cluster with a secondary instance REQUIRES setting deletion_policy = "FORCE" otherwise an error is returned. This is needed as there is no support to delete just the secondary instance, and the only way to delete secondary instance is to delete the associated secondary cluster forcefully which also deletes the secondary instance.
@@ -1692,7 +1697,7 @@ class Cluster(pulumi.CustomResource):
1692
1697
  @pulumi.getter(name="databaseVersion")
1693
1698
  def database_version(self) -> pulumi.Output[str]:
1694
1699
  """
1695
- The database engine major version. This is an output-only field and it's populated at the Cluster creation time. This field cannot be changed after cluster creation.
1700
+ The database engine major version. This is an optional field and it's populated at the Cluster creation time. This field cannot be changed after cluster creation.
1696
1701
  """
1697
1702
  return pulumi.get(self, "database_version")
1698
1703
 
@@ -64,6 +64,7 @@ __all__ = [
64
64
  'JobStatusErrorResultArgs',
65
65
  'ReservationAutoscaleArgs',
66
66
  'RoutineArgumentArgs',
67
+ 'RoutineSparkOptionsArgs',
67
68
  'TableEncryptionConfigurationArgs',
68
69
  'TableExternalDataConfigurationArgs',
69
70
  'TableExternalDataConfigurationAvroOptionsArgs',
@@ -80,6 +81,7 @@ __all__ = [
80
81
  'TableTableConstraintsForeignKeyColumnReferencesArgs',
81
82
  'TableTableConstraintsForeignKeyReferencedTableArgs',
82
83
  'TableTableConstraintsPrimaryKeyArgs',
84
+ 'TableTableReplicationInfoArgs',
83
85
  'TableTimePartitioningArgs',
84
86
  'TableViewArgs',
85
87
  ]
@@ -3777,6 +3779,185 @@ class RoutineArgumentArgs:
3777
3779
  pulumi.set(self, "name", value)
3778
3780
 
3779
3781
 
3782
+ @pulumi.input_type
3783
+ class RoutineSparkOptionsArgs:
3784
+ def __init__(__self__, *,
3785
+ archive_uris: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
3786
+ connection: Optional[pulumi.Input[str]] = None,
3787
+ container_image: Optional[pulumi.Input[str]] = None,
3788
+ file_uris: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
3789
+ jar_uris: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
3790
+ main_class: Optional[pulumi.Input[str]] = None,
3791
+ main_file_uri: Optional[pulumi.Input[str]] = None,
3792
+ properties: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
3793
+ py_file_uris: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
3794
+ runtime_version: Optional[pulumi.Input[str]] = None):
3795
+ """
3796
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] archive_uris: Archive files to be extracted into the working directory of each executor. For more information about Apache Spark, see Apache Spark.
3797
+ :param pulumi.Input[str] connection: Fully qualified name of the user-provided Spark connection object.
3798
+ Format: "projects/{projectId}/locations/{locationId}/connections/{connectionId}"
3799
+ :param pulumi.Input[str] container_image: Custom container image for the runtime environment.
3800
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] file_uris: Files to be placed in the working directory of each executor. For more information about Apache Spark, see Apache Spark.
3801
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] jar_uris: JARs to include on the driver and executor CLASSPATH. For more information about Apache Spark, see Apache Spark.
3802
+ :param pulumi.Input[str] main_class: The fully qualified name of a class in jarUris, for example, com.example.wordcount.
3803
+ Exactly one of mainClass and main_jar_uri field should be set for Java/Scala language type.
3804
+ :param pulumi.Input[str] main_file_uri: The main file/jar URI of the Spark application.
3805
+ Exactly one of the definitionBody field and the mainFileUri field must be set for Python.
3806
+ Exactly one of mainClass and mainFileUri field should be set for Java/Scala language type.
3807
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] properties: Configuration properties as a set of key/value pairs, which will be passed on to the Spark application.
3808
+ For more information, see Apache Spark and the procedure option list.
3809
+ An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.
3810
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] py_file_uris: Python files to be placed on the PYTHONPATH for PySpark application. Supported file types: .py, .egg, and .zip. For more information about Apache Spark, see Apache Spark.
3811
+ :param pulumi.Input[str] runtime_version: Runtime version. If not specified, the default runtime version is used.
3812
+ """
3813
+ if archive_uris is not None:
3814
+ pulumi.set(__self__, "archive_uris", archive_uris)
3815
+ if connection is not None:
3816
+ pulumi.set(__self__, "connection", connection)
3817
+ if container_image is not None:
3818
+ pulumi.set(__self__, "container_image", container_image)
3819
+ if file_uris is not None:
3820
+ pulumi.set(__self__, "file_uris", file_uris)
3821
+ if jar_uris is not None:
3822
+ pulumi.set(__self__, "jar_uris", jar_uris)
3823
+ if main_class is not None:
3824
+ pulumi.set(__self__, "main_class", main_class)
3825
+ if main_file_uri is not None:
3826
+ pulumi.set(__self__, "main_file_uri", main_file_uri)
3827
+ if properties is not None:
3828
+ pulumi.set(__self__, "properties", properties)
3829
+ if py_file_uris is not None:
3830
+ pulumi.set(__self__, "py_file_uris", py_file_uris)
3831
+ if runtime_version is not None:
3832
+ pulumi.set(__self__, "runtime_version", runtime_version)
3833
+
3834
+ @property
3835
+ @pulumi.getter(name="archiveUris")
3836
+ def archive_uris(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
3837
+ """
3838
+ Archive files to be extracted into the working directory of each executor. For more information about Apache Spark, see Apache Spark.
3839
+ """
3840
+ return pulumi.get(self, "archive_uris")
3841
+
3842
+ @archive_uris.setter
3843
+ def archive_uris(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
3844
+ pulumi.set(self, "archive_uris", value)
3845
+
3846
+ @property
3847
+ @pulumi.getter
3848
+ def connection(self) -> Optional[pulumi.Input[str]]:
3849
+ """
3850
+ Fully qualified name of the user-provided Spark connection object.
3851
+ Format: "projects/{projectId}/locations/{locationId}/connections/{connectionId}"
3852
+ """
3853
+ return pulumi.get(self, "connection")
3854
+
3855
+ @connection.setter
3856
+ def connection(self, value: Optional[pulumi.Input[str]]):
3857
+ pulumi.set(self, "connection", value)
3858
+
3859
+ @property
3860
+ @pulumi.getter(name="containerImage")
3861
+ def container_image(self) -> Optional[pulumi.Input[str]]:
3862
+ """
3863
+ Custom container image for the runtime environment.
3864
+ """
3865
+ return pulumi.get(self, "container_image")
3866
+
3867
+ @container_image.setter
3868
+ def container_image(self, value: Optional[pulumi.Input[str]]):
3869
+ pulumi.set(self, "container_image", value)
3870
+
3871
+ @property
3872
+ @pulumi.getter(name="fileUris")
3873
+ def file_uris(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
3874
+ """
3875
+ Files to be placed in the working directory of each executor. For more information about Apache Spark, see Apache Spark.
3876
+ """
3877
+ return pulumi.get(self, "file_uris")
3878
+
3879
+ @file_uris.setter
3880
+ def file_uris(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
3881
+ pulumi.set(self, "file_uris", value)
3882
+
3883
+ @property
3884
+ @pulumi.getter(name="jarUris")
3885
+ def jar_uris(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
3886
+ """
3887
+ JARs to include on the driver and executor CLASSPATH. For more information about Apache Spark, see Apache Spark.
3888
+ """
3889
+ return pulumi.get(self, "jar_uris")
3890
+
3891
+ @jar_uris.setter
3892
+ def jar_uris(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
3893
+ pulumi.set(self, "jar_uris", value)
3894
+
3895
+ @property
3896
+ @pulumi.getter(name="mainClass")
3897
+ def main_class(self) -> Optional[pulumi.Input[str]]:
3898
+ """
3899
+ The fully qualified name of a class in jarUris, for example, com.example.wordcount.
3900
+ Exactly one of mainClass and main_jar_uri field should be set for Java/Scala language type.
3901
+ """
3902
+ return pulumi.get(self, "main_class")
3903
+
3904
+ @main_class.setter
3905
+ def main_class(self, value: Optional[pulumi.Input[str]]):
3906
+ pulumi.set(self, "main_class", value)
3907
+
3908
+ @property
3909
+ @pulumi.getter(name="mainFileUri")
3910
+ def main_file_uri(self) -> Optional[pulumi.Input[str]]:
3911
+ """
3912
+ The main file/jar URI of the Spark application.
3913
+ Exactly one of the definitionBody field and the mainFileUri field must be set for Python.
3914
+ Exactly one of mainClass and mainFileUri field should be set for Java/Scala language type.
3915
+ """
3916
+ return pulumi.get(self, "main_file_uri")
3917
+
3918
+ @main_file_uri.setter
3919
+ def main_file_uri(self, value: Optional[pulumi.Input[str]]):
3920
+ pulumi.set(self, "main_file_uri", value)
3921
+
3922
+ @property
3923
+ @pulumi.getter
3924
+ def properties(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
3925
+ """
3926
+ Configuration properties as a set of key/value pairs, which will be passed on to the Spark application.
3927
+ For more information, see Apache Spark and the procedure option list.
3928
+ An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.
3929
+ """
3930
+ return pulumi.get(self, "properties")
3931
+
3932
+ @properties.setter
3933
+ def properties(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
3934
+ pulumi.set(self, "properties", value)
3935
+
3936
+ @property
3937
+ @pulumi.getter(name="pyFileUris")
3938
+ def py_file_uris(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
3939
+ """
3940
+ Python files to be placed on the PYTHONPATH for PySpark application. Supported file types: .py, .egg, and .zip. For more information about Apache Spark, see Apache Spark.
3941
+ """
3942
+ return pulumi.get(self, "py_file_uris")
3943
+
3944
+ @py_file_uris.setter
3945
+ def py_file_uris(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
3946
+ pulumi.set(self, "py_file_uris", value)
3947
+
3948
+ @property
3949
+ @pulumi.getter(name="runtimeVersion")
3950
+ def runtime_version(self) -> Optional[pulumi.Input[str]]:
3951
+ """
3952
+ Runtime version. If not specified, the default runtime version is used.
3953
+ """
3954
+ return pulumi.get(self, "runtime_version")
3955
+
3956
+ @runtime_version.setter
3957
+ def runtime_version(self, value: Optional[pulumi.Input[str]]):
3958
+ pulumi.set(self, "runtime_version", value)
3959
+
3960
+
3780
3961
  @pulumi.input_type
3781
3962
  class TableEncryptionConfigurationArgs:
3782
3963
  def __init__(__self__, *,
@@ -4950,6 +5131,56 @@ class TableTableConstraintsPrimaryKeyArgs:
4950
5131
  pulumi.set(self, "columns", value)
4951
5132
 
4952
5133
 
5134
+ @pulumi.input_type
5135
+ class TableTableReplicationInfoArgs:
5136
+ def __init__(__self__, *,
5137
+ source_dataset_id: pulumi.Input[str],
5138
+ source_project_id: pulumi.Input[str],
5139
+ source_table_id: pulumi.Input[str],
5140
+ replication_interval_ms: Optional[pulumi.Input[int]] = None):
5141
+ pulumi.set(__self__, "source_dataset_id", source_dataset_id)
5142
+ pulumi.set(__self__, "source_project_id", source_project_id)
5143
+ pulumi.set(__self__, "source_table_id", source_table_id)
5144
+ if replication_interval_ms is not None:
5145
+ pulumi.set(__self__, "replication_interval_ms", replication_interval_ms)
5146
+
5147
+ @property
5148
+ @pulumi.getter(name="sourceDatasetId")
5149
+ def source_dataset_id(self) -> pulumi.Input[str]:
5150
+ return pulumi.get(self, "source_dataset_id")
5151
+
5152
+ @source_dataset_id.setter
5153
+ def source_dataset_id(self, value: pulumi.Input[str]):
5154
+ pulumi.set(self, "source_dataset_id", value)
5155
+
5156
+ @property
5157
+ @pulumi.getter(name="sourceProjectId")
5158
+ def source_project_id(self) -> pulumi.Input[str]:
5159
+ return pulumi.get(self, "source_project_id")
5160
+
5161
+ @source_project_id.setter
5162
+ def source_project_id(self, value: pulumi.Input[str]):
5163
+ pulumi.set(self, "source_project_id", value)
5164
+
5165
+ @property
5166
+ @pulumi.getter(name="sourceTableId")
5167
+ def source_table_id(self) -> pulumi.Input[str]:
5168
+ return pulumi.get(self, "source_table_id")
5169
+
5170
+ @source_table_id.setter
5171
+ def source_table_id(self, value: pulumi.Input[str]):
5172
+ pulumi.set(self, "source_table_id", value)
5173
+
5174
+ @property
5175
+ @pulumi.getter(name="replicationIntervalMs")
5176
+ def replication_interval_ms(self) -> Optional[pulumi.Input[int]]:
5177
+ return pulumi.get(self, "replication_interval_ms")
5178
+
5179
+ @replication_interval_ms.setter
5180
+ def replication_interval_ms(self, value: Optional[pulumi.Input[int]]):
5181
+ pulumi.set(self, "replication_interval_ms", value)
5182
+
5183
+
4953
5184
  @pulumi.input_type
4954
5185
  class TableTimePartitioningArgs:
4955
5186
  def __init__(__self__, *,