pulumi-gcp 8.0.0a1726253601__py3-none-any.whl → 8.1.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 (101) hide show
  1. pulumi_gcp/__init__.py +24 -0
  2. pulumi_gcp/alloydb/_inputs.py +94 -0
  3. pulumi_gcp/alloydb/cluster.py +94 -1
  4. pulumi_gcp/alloydb/outputs.py +79 -0
  5. pulumi_gcp/assuredworkloads/workload.py +135 -16
  6. pulumi_gcp/backupdisasterrecovery/__init__.py +1 -0
  7. pulumi_gcp/backupdisasterrecovery/backup_vault.py +1203 -0
  8. pulumi_gcp/bigquery/_inputs.py +33 -0
  9. pulumi_gcp/bigquery/data_transfer_config.py +134 -6
  10. pulumi_gcp/bigquery/outputs.py +36 -0
  11. pulumi_gcp/bigqueryanalyticshub/_inputs.py +169 -7
  12. pulumi_gcp/bigqueryanalyticshub/data_exchange.py +96 -3
  13. pulumi_gcp/bigqueryanalyticshub/listing.py +114 -0
  14. pulumi_gcp/bigqueryanalyticshub/outputs.py +138 -5
  15. pulumi_gcp/bigtable/_inputs.py +21 -1
  16. pulumi_gcp/bigtable/outputs.py +13 -1
  17. pulumi_gcp/bigtable/table.py +34 -0
  18. pulumi_gcp/certificateauthority/authority.py +14 -7
  19. pulumi_gcp/certificatemanager/__init__.py +1 -0
  20. pulumi_gcp/certificatemanager/certificate.py +28 -0
  21. pulumi_gcp/certificatemanager/get_certificates.py +150 -0
  22. pulumi_gcp/certificatemanager/outputs.py +322 -0
  23. pulumi_gcp/cloudbuild/_inputs.py +6 -6
  24. pulumi_gcp/cloudbuild/outputs.py +4 -4
  25. pulumi_gcp/cloudrun/_inputs.py +6 -12
  26. pulumi_gcp/cloudrun/outputs.py +8 -16
  27. pulumi_gcp/cloudrunv2/_inputs.py +72 -15
  28. pulumi_gcp/cloudrunv2/outputs.py +82 -16
  29. pulumi_gcp/cloudrunv2/service.py +50 -4
  30. pulumi_gcp/cloudtasks/_inputs.py +630 -0
  31. pulumi_gcp/cloudtasks/outputs.py +479 -0
  32. pulumi_gcp/cloudtasks/queue.py +238 -0
  33. pulumi_gcp/compute/_inputs.py +129 -9
  34. pulumi_gcp/compute/get_instance.py +1 -1
  35. pulumi_gcp/compute/health_check.py +114 -0
  36. pulumi_gcp/compute/instance.py +86 -4
  37. pulumi_gcp/compute/instance_template.py +66 -0
  38. pulumi_gcp/compute/interconnect.py +28 -21
  39. pulumi_gcp/compute/node_template.py +93 -0
  40. pulumi_gcp/compute/outputs.py +108 -6
  41. pulumi_gcp/compute/target_https_proxy.py +28 -0
  42. pulumi_gcp/container/_inputs.py +140 -3
  43. pulumi_gcp/container/attached_cluster.py +7 -7
  44. pulumi_gcp/container/outputs.py +174 -2
  45. pulumi_gcp/databasemigrationservice/_inputs.py +176 -148
  46. pulumi_gcp/databasemigrationservice/connection_profile.py +206 -0
  47. pulumi_gcp/databasemigrationservice/outputs.py +109 -87
  48. pulumi_gcp/dataloss/_inputs.py +353 -1
  49. pulumi_gcp/dataloss/outputs.py +274 -3
  50. pulumi_gcp/dataproc/_inputs.py +27 -27
  51. pulumi_gcp/dataproc/outputs.py +18 -18
  52. pulumi_gcp/datastream/_inputs.py +69 -1
  53. pulumi_gcp/datastream/outputs.py +44 -2
  54. pulumi_gcp/datastream/stream.py +194 -7
  55. pulumi_gcp/discoveryengine/_inputs.py +188 -0
  56. pulumi_gcp/discoveryengine/data_store.py +14 -14
  57. pulumi_gcp/discoveryengine/outputs.py +153 -1
  58. pulumi_gcp/firebase/database_instance.py +7 -7
  59. pulumi_gcp/gkehub/_inputs.py +25 -1
  60. pulumi_gcp/gkehub/feature_membership.py +12 -6
  61. pulumi_gcp/gkehub/outputs.py +17 -1
  62. pulumi_gcp/iam/_inputs.py +196 -0
  63. pulumi_gcp/iam/get_workload_identity_pool_provider.py +13 -3
  64. pulumi_gcp/iam/outputs.py +295 -0
  65. pulumi_gcp/iam/workload_identity_pool_provider.py +164 -3
  66. pulumi_gcp/kms/__init__.py +2 -0
  67. pulumi_gcp/kms/autokey_config.py +10 -2
  68. pulumi_gcp/kms/get_crypto_key_latest_version.py +222 -0
  69. pulumi_gcp/kms/get_crypto_key_versions.py +175 -0
  70. pulumi_gcp/kms/outputs.py +164 -0
  71. pulumi_gcp/netapp/active_directory.py +6 -6
  72. pulumi_gcp/netapp/backup.py +6 -6
  73. pulumi_gcp/netapp/backup_policy.py +6 -6
  74. pulumi_gcp/netapp/backup_vault.py +6 -6
  75. pulumi_gcp/netapp/storage_pool.py +4 -4
  76. pulumi_gcp/netapp/volume.py +7 -0
  77. pulumi_gcp/networkconnectivity/_inputs.py +21 -1
  78. pulumi_gcp/networkconnectivity/outputs.py +15 -1
  79. pulumi_gcp/networkconnectivity/spoke.py +8 -0
  80. pulumi_gcp/networksecurity/client_tls_policy.py +24 -22
  81. pulumi_gcp/networksecurity/server_tls_policy.py +20 -32
  82. pulumi_gcp/organizations/get_project.py +13 -3
  83. pulumi_gcp/organizations/project.py +88 -3
  84. pulumi_gcp/parallelstore/instance.py +121 -121
  85. pulumi_gcp/projects/iam_member_remove.py +26 -0
  86. pulumi_gcp/projects/usage_export_bucket.py +38 -0
  87. pulumi_gcp/pubsub/_inputs.py +40 -0
  88. pulumi_gcp/pubsub/outputs.py +51 -1
  89. pulumi_gcp/pubsub/subscription.py +6 -0
  90. pulumi_gcp/pulumi-plugin.json +1 -1
  91. pulumi_gcp/redis/_inputs.py +419 -0
  92. pulumi_gcp/redis/cluster.py +123 -0
  93. pulumi_gcp/redis/outputs.py +315 -0
  94. pulumi_gcp/securitycenter/__init__.py +2 -0
  95. pulumi_gcp/securitycenter/v2_folder_scc_big_query_export.py +857 -0
  96. pulumi_gcp/securitycenter/v2_organization_scc_big_query_exports.py +4 -4
  97. pulumi_gcp/securitycenter/v2_project_scc_big_query_export.py +796 -0
  98. {pulumi_gcp-8.0.0a1726253601.dist-info → pulumi_gcp-8.1.0.dist-info}/METADATA +1 -1
  99. {pulumi_gcp-8.0.0a1726253601.dist-info → pulumi_gcp-8.1.0.dist-info}/RECORD +101 -95
  100. {pulumi_gcp-8.0.0a1726253601.dist-info → pulumi_gcp-8.1.0.dist-info}/WHEEL +1 -1
  101. {pulumi_gcp-8.0.0a1726253601.dist-info → pulumi_gcp-8.1.0.dist-info}/top_level.txt +0 -0
@@ -25,6 +25,7 @@ class ClusterArgs:
25
25
  shard_count: pulumi.Input[int],
26
26
  authorization_mode: Optional[pulumi.Input[str]] = None,
27
27
  deletion_protection_enabled: Optional[pulumi.Input[bool]] = None,
28
+ maintenance_policy: Optional[pulumi.Input['ClusterMaintenancePolicyArgs']] = None,
28
29
  name: Optional[pulumi.Input[str]] = None,
29
30
  node_type: Optional[pulumi.Input[str]] = None,
30
31
  project: Optional[pulumi.Input[str]] = None,
@@ -45,6 +46,7 @@ class ClusterArgs:
45
46
  "AUTH_MODE_DISABLED"]
46
47
  :param pulumi.Input[bool] deletion_protection_enabled: Optional. Indicates if the cluster is deletion protected or not. If the value if set to true, any delete cluster
47
48
  operation will fail. Default value is true.
49
+ :param pulumi.Input['ClusterMaintenancePolicyArgs'] maintenance_policy: Maintenance policy for a cluster
48
50
  :param pulumi.Input[str] name: Unique name of the resource in this scope including project and location using the form:
49
51
  projects/{projectId}/locations/{locationId}/clusters/{clusterId}
50
52
  :param pulumi.Input[str] node_type: The nodeType for the Redis cluster. If not provided, REDIS_HIGHMEM_MEDIUM will be used as default Possible values:
@@ -65,6 +67,8 @@ class ClusterArgs:
65
67
  pulumi.set(__self__, "authorization_mode", authorization_mode)
66
68
  if deletion_protection_enabled is not None:
67
69
  pulumi.set(__self__, "deletion_protection_enabled", deletion_protection_enabled)
70
+ if maintenance_policy is not None:
71
+ pulumi.set(__self__, "maintenance_policy", maintenance_policy)
68
72
  if name is not None:
69
73
  pulumi.set(__self__, "name", name)
70
74
  if node_type is not None:
@@ -136,6 +140,18 @@ class ClusterArgs:
136
140
  def deletion_protection_enabled(self, value: Optional[pulumi.Input[bool]]):
137
141
  pulumi.set(self, "deletion_protection_enabled", value)
138
142
 
143
+ @property
144
+ @pulumi.getter(name="maintenancePolicy")
145
+ def maintenance_policy(self) -> Optional[pulumi.Input['ClusterMaintenancePolicyArgs']]:
146
+ """
147
+ Maintenance policy for a cluster
148
+ """
149
+ return pulumi.get(self, "maintenance_policy")
150
+
151
+ @maintenance_policy.setter
152
+ def maintenance_policy(self, value: Optional[pulumi.Input['ClusterMaintenancePolicyArgs']]):
153
+ pulumi.set(self, "maintenance_policy", value)
154
+
139
155
  @property
140
156
  @pulumi.getter
141
157
  def name(self) -> Optional[pulumi.Input[str]]:
@@ -243,6 +259,8 @@ class _ClusterState:
243
259
  create_time: Optional[pulumi.Input[str]] = None,
244
260
  deletion_protection_enabled: Optional[pulumi.Input[bool]] = None,
245
261
  discovery_endpoints: Optional[pulumi.Input[Sequence[pulumi.Input['ClusterDiscoveryEndpointArgs']]]] = None,
262
+ maintenance_policy: Optional[pulumi.Input['ClusterMaintenancePolicyArgs']] = None,
263
+ maintenance_schedules: Optional[pulumi.Input[Sequence[pulumi.Input['ClusterMaintenanceScheduleArgs']]]] = None,
246
264
  name: Optional[pulumi.Input[str]] = None,
247
265
  node_type: Optional[pulumi.Input[str]] = None,
248
266
  precise_size_gb: Optional[pulumi.Input[float]] = None,
@@ -273,6 +291,9 @@ class _ClusterState:
273
291
  for Redis clients to connect to the cluster.
274
292
  Currently only one endpoint is supported.
275
293
  Structure is documented below.
294
+ :param pulumi.Input['ClusterMaintenancePolicyArgs'] maintenance_policy: Maintenance policy for a cluster
295
+ :param pulumi.Input[Sequence[pulumi.Input['ClusterMaintenanceScheduleArgs']]] maintenance_schedules: Upcoming maintenance schedule.
296
+ Structure is documented below.
276
297
  :param pulumi.Input[str] name: Unique name of the resource in this scope including project and location using the form:
277
298
  projects/{projectId}/locations/{locationId}/clusters/{clusterId}
278
299
  :param pulumi.Input[str] node_type: The nodeType for the Redis cluster. If not provided, REDIS_HIGHMEM_MEDIUM will be used as default Possible values:
@@ -308,6 +329,10 @@ class _ClusterState:
308
329
  pulumi.set(__self__, "deletion_protection_enabled", deletion_protection_enabled)
309
330
  if discovery_endpoints is not None:
310
331
  pulumi.set(__self__, "discovery_endpoints", discovery_endpoints)
332
+ if maintenance_policy is not None:
333
+ pulumi.set(__self__, "maintenance_policy", maintenance_policy)
334
+ if maintenance_schedules is not None:
335
+ pulumi.set(__self__, "maintenance_schedules", maintenance_schedules)
311
336
  if name is not None:
312
337
  pulumi.set(__self__, "name", name)
313
338
  if node_type is not None:
@@ -397,6 +422,31 @@ class _ClusterState:
397
422
  def discovery_endpoints(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ClusterDiscoveryEndpointArgs']]]]):
398
423
  pulumi.set(self, "discovery_endpoints", value)
399
424
 
425
+ @property
426
+ @pulumi.getter(name="maintenancePolicy")
427
+ def maintenance_policy(self) -> Optional[pulumi.Input['ClusterMaintenancePolicyArgs']]:
428
+ """
429
+ Maintenance policy for a cluster
430
+ """
431
+ return pulumi.get(self, "maintenance_policy")
432
+
433
+ @maintenance_policy.setter
434
+ def maintenance_policy(self, value: Optional[pulumi.Input['ClusterMaintenancePolicyArgs']]):
435
+ pulumi.set(self, "maintenance_policy", value)
436
+
437
+ @property
438
+ @pulumi.getter(name="maintenanceSchedules")
439
+ def maintenance_schedules(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ClusterMaintenanceScheduleArgs']]]]:
440
+ """
441
+ Upcoming maintenance schedule.
442
+ Structure is documented below.
443
+ """
444
+ return pulumi.get(self, "maintenance_schedules")
445
+
446
+ @maintenance_schedules.setter
447
+ def maintenance_schedules(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ClusterMaintenanceScheduleArgs']]]]):
448
+ pulumi.set(self, "maintenance_schedules", value)
449
+
400
450
  @property
401
451
  @pulumi.getter
402
452
  def name(self) -> Optional[pulumi.Input[str]]:
@@ -605,6 +655,7 @@ class Cluster(pulumi.CustomResource):
605
655
  opts: Optional[pulumi.ResourceOptions] = None,
606
656
  authorization_mode: Optional[pulumi.Input[str]] = None,
607
657
  deletion_protection_enabled: Optional[pulumi.Input[bool]] = None,
658
+ maintenance_policy: Optional[pulumi.Input[Union['ClusterMaintenancePolicyArgs', 'ClusterMaintenancePolicyArgsDict']]] = None,
608
659
  name: Optional[pulumi.Input[str]] = None,
609
660
  node_type: Optional[pulumi.Input[str]] = None,
610
661
  project: Optional[pulumi.Input[str]] = None,
@@ -668,6 +719,17 @@ class Cluster(pulumi.CustomResource):
668
719
  zone_distribution_config={
669
720
  "mode": "MULTI_ZONE",
670
721
  },
722
+ maintenance_policy={
723
+ "weekly_maintenance_windows": [{
724
+ "day": "MONDAY",
725
+ "start_time": {
726
+ "hours": 1,
727
+ "minutes": 0,
728
+ "seconds": 0,
729
+ "nanos": 0,
730
+ },
731
+ }],
732
+ },
671
733
  opts = pulumi.ResourceOptions(depends_on=[default]))
672
734
  ```
673
735
  ### Redis Cluster Ha Single Zone
@@ -704,6 +766,17 @@ class Cluster(pulumi.CustomResource):
704
766
  "mode": "SINGLE_ZONE",
705
767
  "zone": "us-central1-f",
706
768
  },
769
+ maintenance_policy={
770
+ "weekly_maintenance_windows": [{
771
+ "day": "MONDAY",
772
+ "start_time": {
773
+ "hours": 1,
774
+ "minutes": 0,
775
+ "seconds": 0,
776
+ "nanos": 0,
777
+ },
778
+ }],
779
+ },
707
780
  deletion_protection_enabled=True,
708
781
  opts = pulumi.ResourceOptions(depends_on=[default]))
709
782
  ```
@@ -745,6 +818,7 @@ class Cluster(pulumi.CustomResource):
745
818
  "AUTH_MODE_DISABLED"]
746
819
  :param pulumi.Input[bool] deletion_protection_enabled: Optional. Indicates if the cluster is deletion protected or not. If the value if set to true, any delete cluster
747
820
  operation will fail. Default value is true.
821
+ :param pulumi.Input[Union['ClusterMaintenancePolicyArgs', 'ClusterMaintenancePolicyArgsDict']] maintenance_policy: Maintenance policy for a cluster
748
822
  :param pulumi.Input[str] name: Unique name of the resource in this scope including project and location using the form:
749
823
  projects/{projectId}/locations/{locationId}/clusters/{clusterId}
750
824
  :param pulumi.Input[str] node_type: The nodeType for the Redis cluster. If not provided, REDIS_HIGHMEM_MEDIUM will be used as default Possible values:
@@ -822,6 +896,17 @@ class Cluster(pulumi.CustomResource):
822
896
  zone_distribution_config={
823
897
  "mode": "MULTI_ZONE",
824
898
  },
899
+ maintenance_policy={
900
+ "weekly_maintenance_windows": [{
901
+ "day": "MONDAY",
902
+ "start_time": {
903
+ "hours": 1,
904
+ "minutes": 0,
905
+ "seconds": 0,
906
+ "nanos": 0,
907
+ },
908
+ }],
909
+ },
825
910
  opts = pulumi.ResourceOptions(depends_on=[default]))
826
911
  ```
827
912
  ### Redis Cluster Ha Single Zone
@@ -858,6 +943,17 @@ class Cluster(pulumi.CustomResource):
858
943
  "mode": "SINGLE_ZONE",
859
944
  "zone": "us-central1-f",
860
945
  },
946
+ maintenance_policy={
947
+ "weekly_maintenance_windows": [{
948
+ "day": "MONDAY",
949
+ "start_time": {
950
+ "hours": 1,
951
+ "minutes": 0,
952
+ "seconds": 0,
953
+ "nanos": 0,
954
+ },
955
+ }],
956
+ },
861
957
  deletion_protection_enabled=True,
862
958
  opts = pulumi.ResourceOptions(depends_on=[default]))
863
959
  ```
@@ -909,6 +1005,7 @@ class Cluster(pulumi.CustomResource):
909
1005
  opts: Optional[pulumi.ResourceOptions] = None,
910
1006
  authorization_mode: Optional[pulumi.Input[str]] = None,
911
1007
  deletion_protection_enabled: Optional[pulumi.Input[bool]] = None,
1008
+ maintenance_policy: Optional[pulumi.Input[Union['ClusterMaintenancePolicyArgs', 'ClusterMaintenancePolicyArgsDict']]] = None,
912
1009
  name: Optional[pulumi.Input[str]] = None,
913
1010
  node_type: Optional[pulumi.Input[str]] = None,
914
1011
  project: Optional[pulumi.Input[str]] = None,
@@ -930,6 +1027,7 @@ class Cluster(pulumi.CustomResource):
930
1027
 
931
1028
  __props__.__dict__["authorization_mode"] = authorization_mode
932
1029
  __props__.__dict__["deletion_protection_enabled"] = deletion_protection_enabled
1030
+ __props__.__dict__["maintenance_policy"] = maintenance_policy
933
1031
  __props__.__dict__["name"] = name
934
1032
  __props__.__dict__["node_type"] = node_type
935
1033
  __props__.__dict__["project"] = project
@@ -946,6 +1044,7 @@ class Cluster(pulumi.CustomResource):
946
1044
  __props__.__dict__["zone_distribution_config"] = zone_distribution_config
947
1045
  __props__.__dict__["create_time"] = None
948
1046
  __props__.__dict__["discovery_endpoints"] = None
1047
+ __props__.__dict__["maintenance_schedules"] = None
949
1048
  __props__.__dict__["precise_size_gb"] = None
950
1049
  __props__.__dict__["psc_connections"] = None
951
1050
  __props__.__dict__["size_gb"] = None
@@ -966,6 +1065,8 @@ class Cluster(pulumi.CustomResource):
966
1065
  create_time: Optional[pulumi.Input[str]] = None,
967
1066
  deletion_protection_enabled: Optional[pulumi.Input[bool]] = None,
968
1067
  discovery_endpoints: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ClusterDiscoveryEndpointArgs', 'ClusterDiscoveryEndpointArgsDict']]]]] = None,
1068
+ maintenance_policy: Optional[pulumi.Input[Union['ClusterMaintenancePolicyArgs', 'ClusterMaintenancePolicyArgsDict']]] = None,
1069
+ maintenance_schedules: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ClusterMaintenanceScheduleArgs', 'ClusterMaintenanceScheduleArgsDict']]]]] = None,
969
1070
  name: Optional[pulumi.Input[str]] = None,
970
1071
  node_type: Optional[pulumi.Input[str]] = None,
971
1072
  precise_size_gb: Optional[pulumi.Input[float]] = None,
@@ -1001,6 +1102,9 @@ class Cluster(pulumi.CustomResource):
1001
1102
  for Redis clients to connect to the cluster.
1002
1103
  Currently only one endpoint is supported.
1003
1104
  Structure is documented below.
1105
+ :param pulumi.Input[Union['ClusterMaintenancePolicyArgs', 'ClusterMaintenancePolicyArgsDict']] maintenance_policy: Maintenance policy for a cluster
1106
+ :param pulumi.Input[Sequence[pulumi.Input[Union['ClusterMaintenanceScheduleArgs', 'ClusterMaintenanceScheduleArgsDict']]]] maintenance_schedules: Upcoming maintenance schedule.
1107
+ Structure is documented below.
1004
1108
  :param pulumi.Input[str] name: Unique name of the resource in this scope including project and location using the form:
1005
1109
  projects/{projectId}/locations/{locationId}/clusters/{clusterId}
1006
1110
  :param pulumi.Input[str] node_type: The nodeType for the Redis cluster. If not provided, REDIS_HIGHMEM_MEDIUM will be used as default Possible values:
@@ -1036,6 +1140,8 @@ class Cluster(pulumi.CustomResource):
1036
1140
  __props__.__dict__["create_time"] = create_time
1037
1141
  __props__.__dict__["deletion_protection_enabled"] = deletion_protection_enabled
1038
1142
  __props__.__dict__["discovery_endpoints"] = discovery_endpoints
1143
+ __props__.__dict__["maintenance_policy"] = maintenance_policy
1144
+ __props__.__dict__["maintenance_schedules"] = maintenance_schedules
1039
1145
  __props__.__dict__["name"] = name
1040
1146
  __props__.__dict__["node_type"] = node_type
1041
1147
  __props__.__dict__["precise_size_gb"] = precise_size_gb
@@ -1094,6 +1200,23 @@ class Cluster(pulumi.CustomResource):
1094
1200
  """
1095
1201
  return pulumi.get(self, "discovery_endpoints")
1096
1202
 
1203
+ @property
1204
+ @pulumi.getter(name="maintenancePolicy")
1205
+ def maintenance_policy(self) -> pulumi.Output[Optional['outputs.ClusterMaintenancePolicy']]:
1206
+ """
1207
+ Maintenance policy for a cluster
1208
+ """
1209
+ return pulumi.get(self, "maintenance_policy")
1210
+
1211
+ @property
1212
+ @pulumi.getter(name="maintenanceSchedules")
1213
+ def maintenance_schedules(self) -> pulumi.Output[Sequence['outputs.ClusterMaintenanceSchedule']]:
1214
+ """
1215
+ Upcoming maintenance schedule.
1216
+ Structure is documented below.
1217
+ """
1218
+ return pulumi.get(self, "maintenance_schedules")
1219
+
1097
1220
  @property
1098
1221
  @pulumi.getter
1099
1222
  def name(self) -> pulumi.Output[str]:
@@ -18,6 +18,10 @@ from . import outputs
18
18
  __all__ = [
19
19
  'ClusterDiscoveryEndpoint',
20
20
  'ClusterDiscoveryEndpointPscConfig',
21
+ 'ClusterMaintenancePolicy',
22
+ 'ClusterMaintenancePolicyWeeklyMaintenanceWindow',
23
+ 'ClusterMaintenancePolicyWeeklyMaintenanceWindowStartTime',
24
+ 'ClusterMaintenanceSchedule',
21
25
  'ClusterPscConfig',
22
26
  'ClusterPscConnection',
23
27
  'ClusterStateInfo',
@@ -122,6 +126,317 @@ class ClusterDiscoveryEndpointPscConfig(dict):
122
126
  return pulumi.get(self, "network")
123
127
 
124
128
 
129
+ @pulumi.output_type
130
+ class ClusterMaintenancePolicy(dict):
131
+ @staticmethod
132
+ def __key_warning(key: str):
133
+ suggest = None
134
+ if key == "createTime":
135
+ suggest = "create_time"
136
+ elif key == "updateTime":
137
+ suggest = "update_time"
138
+ elif key == "weeklyMaintenanceWindows":
139
+ suggest = "weekly_maintenance_windows"
140
+
141
+ if suggest:
142
+ pulumi.log.warn(f"Key '{key}' not found in ClusterMaintenancePolicy. Access the value via the '{suggest}' property getter instead.")
143
+
144
+ def __getitem__(self, key: str) -> Any:
145
+ ClusterMaintenancePolicy.__key_warning(key)
146
+ return super().__getitem__(key)
147
+
148
+ def get(self, key: str, default = None) -> Any:
149
+ ClusterMaintenancePolicy.__key_warning(key)
150
+ return super().get(key, default)
151
+
152
+ def __init__(__self__, *,
153
+ create_time: Optional[str] = None,
154
+ update_time: Optional[str] = None,
155
+ weekly_maintenance_windows: Optional[Sequence['outputs.ClusterMaintenancePolicyWeeklyMaintenanceWindow']] = None):
156
+ """
157
+ :param str create_time: (Output)
158
+ Output only. The time when the policy was created.
159
+ A timestamp in RFC3339 UTC "Zulu" format, with nanosecond
160
+ resolution and up to nine fractional digits.
161
+ :param str update_time: (Output)
162
+ Output only. The time when the policy was last updated.
163
+ A timestamp in RFC3339 UTC "Zulu" format, with nanosecond
164
+ resolution and up to nine fractional digits.
165
+ :param Sequence['ClusterMaintenancePolicyWeeklyMaintenanceWindowArgs'] weekly_maintenance_windows: Optional. Maintenance window that is applied to resources covered by this policy.
166
+ Minimum 1. For the current version, the maximum number
167
+ of weekly_window is expected to be one.
168
+ Structure is documented below.
169
+ """
170
+ if create_time is not None:
171
+ pulumi.set(__self__, "create_time", create_time)
172
+ if update_time is not None:
173
+ pulumi.set(__self__, "update_time", update_time)
174
+ if weekly_maintenance_windows is not None:
175
+ pulumi.set(__self__, "weekly_maintenance_windows", weekly_maintenance_windows)
176
+
177
+ @property
178
+ @pulumi.getter(name="createTime")
179
+ def create_time(self) -> Optional[str]:
180
+ """
181
+ (Output)
182
+ Output only. The time when the policy was created.
183
+ A timestamp in RFC3339 UTC "Zulu" format, with nanosecond
184
+ resolution and up to nine fractional digits.
185
+ """
186
+ return pulumi.get(self, "create_time")
187
+
188
+ @property
189
+ @pulumi.getter(name="updateTime")
190
+ def update_time(self) -> Optional[str]:
191
+ """
192
+ (Output)
193
+ Output only. The time when the policy was last updated.
194
+ A timestamp in RFC3339 UTC "Zulu" format, with nanosecond
195
+ resolution and up to nine fractional digits.
196
+ """
197
+ return pulumi.get(self, "update_time")
198
+
199
+ @property
200
+ @pulumi.getter(name="weeklyMaintenanceWindows")
201
+ def weekly_maintenance_windows(self) -> Optional[Sequence['outputs.ClusterMaintenancePolicyWeeklyMaintenanceWindow']]:
202
+ """
203
+ Optional. Maintenance window that is applied to resources covered by this policy.
204
+ Minimum 1. For the current version, the maximum number
205
+ of weekly_window is expected to be one.
206
+ Structure is documented below.
207
+ """
208
+ return pulumi.get(self, "weekly_maintenance_windows")
209
+
210
+
211
+ @pulumi.output_type
212
+ class ClusterMaintenancePolicyWeeklyMaintenanceWindow(dict):
213
+ @staticmethod
214
+ def __key_warning(key: str):
215
+ suggest = None
216
+ if key == "startTime":
217
+ suggest = "start_time"
218
+
219
+ if suggest:
220
+ pulumi.log.warn(f"Key '{key}' not found in ClusterMaintenancePolicyWeeklyMaintenanceWindow. Access the value via the '{suggest}' property getter instead.")
221
+
222
+ def __getitem__(self, key: str) -> Any:
223
+ ClusterMaintenancePolicyWeeklyMaintenanceWindow.__key_warning(key)
224
+ return super().__getitem__(key)
225
+
226
+ def get(self, key: str, default = None) -> Any:
227
+ ClusterMaintenancePolicyWeeklyMaintenanceWindow.__key_warning(key)
228
+ return super().get(key, default)
229
+
230
+ def __init__(__self__, *,
231
+ day: str,
232
+ start_time: 'outputs.ClusterMaintenancePolicyWeeklyMaintenanceWindowStartTime',
233
+ duration: Optional[str] = None):
234
+ """
235
+ :param str day: Required. The day of week that maintenance updates occur.
236
+ - DAY_OF_WEEK_UNSPECIFIED: The day of the week is unspecified.
237
+ - MONDAY: Monday
238
+ - TUESDAY: Tuesday
239
+ - WEDNESDAY: Wednesday
240
+ - THURSDAY: Thursday
241
+ - FRIDAY: Friday
242
+ - SATURDAY: Saturday
243
+ - SUNDAY: Sunday
244
+ Possible values are: `DAY_OF_WEEK_UNSPECIFIED`, `MONDAY`, `TUESDAY`, `WEDNESDAY`, `THURSDAY`, `FRIDAY`, `SATURDAY`, `SUNDAY`.
245
+ :param 'ClusterMaintenancePolicyWeeklyMaintenanceWindowStartTimeArgs' start_time: Required. Start time of the window in UTC time.
246
+ Structure is documented below.
247
+ :param str duration: (Output)
248
+ Output only. Duration of the maintenance window.
249
+ The current window is fixed at 1 hour.
250
+ A duration in seconds with up to nine fractional digits,
251
+ terminated by 's'. Example: "3.5s".
252
+ """
253
+ pulumi.set(__self__, "day", day)
254
+ pulumi.set(__self__, "start_time", start_time)
255
+ if duration is not None:
256
+ pulumi.set(__self__, "duration", duration)
257
+
258
+ @property
259
+ @pulumi.getter
260
+ def day(self) -> str:
261
+ """
262
+ Required. The day of week that maintenance updates occur.
263
+ - DAY_OF_WEEK_UNSPECIFIED: The day of the week is unspecified.
264
+ - MONDAY: Monday
265
+ - TUESDAY: Tuesday
266
+ - WEDNESDAY: Wednesday
267
+ - THURSDAY: Thursday
268
+ - FRIDAY: Friday
269
+ - SATURDAY: Saturday
270
+ - SUNDAY: Sunday
271
+ Possible values are: `DAY_OF_WEEK_UNSPECIFIED`, `MONDAY`, `TUESDAY`, `WEDNESDAY`, `THURSDAY`, `FRIDAY`, `SATURDAY`, `SUNDAY`.
272
+ """
273
+ return pulumi.get(self, "day")
274
+
275
+ @property
276
+ @pulumi.getter(name="startTime")
277
+ def start_time(self) -> 'outputs.ClusterMaintenancePolicyWeeklyMaintenanceWindowStartTime':
278
+ """
279
+ Required. Start time of the window in UTC time.
280
+ Structure is documented below.
281
+ """
282
+ return pulumi.get(self, "start_time")
283
+
284
+ @property
285
+ @pulumi.getter
286
+ def duration(self) -> Optional[str]:
287
+ """
288
+ (Output)
289
+ Output only. Duration of the maintenance window.
290
+ The current window is fixed at 1 hour.
291
+ A duration in seconds with up to nine fractional digits,
292
+ terminated by 's'. Example: "3.5s".
293
+ """
294
+ return pulumi.get(self, "duration")
295
+
296
+
297
+ @pulumi.output_type
298
+ class ClusterMaintenancePolicyWeeklyMaintenanceWindowStartTime(dict):
299
+ def __init__(__self__, *,
300
+ hours: Optional[int] = None,
301
+ minutes: Optional[int] = None,
302
+ nanos: Optional[int] = None,
303
+ seconds: Optional[int] = None):
304
+ """
305
+ :param int hours: Hours of day in 24 hour format. Should be from 0 to 23.
306
+ An API may choose to allow the value "24:00:00" for scenarios like business closing time.
307
+ :param int minutes: Minutes of hour of day. Must be from 0 to 59.
308
+ :param int nanos: Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
309
+ :param int seconds: Seconds of minutes of the time. Must normally be from 0 to 59.
310
+ An API may allow the value 60 if it allows leap-seconds.
311
+ """
312
+ if hours is not None:
313
+ pulumi.set(__self__, "hours", hours)
314
+ if minutes is not None:
315
+ pulumi.set(__self__, "minutes", minutes)
316
+ if nanos is not None:
317
+ pulumi.set(__self__, "nanos", nanos)
318
+ if seconds is not None:
319
+ pulumi.set(__self__, "seconds", seconds)
320
+
321
+ @property
322
+ @pulumi.getter
323
+ def hours(self) -> Optional[int]:
324
+ """
325
+ Hours of day in 24 hour format. Should be from 0 to 23.
326
+ An API may choose to allow the value "24:00:00" for scenarios like business closing time.
327
+ """
328
+ return pulumi.get(self, "hours")
329
+
330
+ @property
331
+ @pulumi.getter
332
+ def minutes(self) -> Optional[int]:
333
+ """
334
+ Minutes of hour of day. Must be from 0 to 59.
335
+ """
336
+ return pulumi.get(self, "minutes")
337
+
338
+ @property
339
+ @pulumi.getter
340
+ def nanos(self) -> Optional[int]:
341
+ """
342
+ Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
343
+ """
344
+ return pulumi.get(self, "nanos")
345
+
346
+ @property
347
+ @pulumi.getter
348
+ def seconds(self) -> Optional[int]:
349
+ """
350
+ Seconds of minutes of the time. Must normally be from 0 to 59.
351
+ An API may allow the value 60 if it allows leap-seconds.
352
+ """
353
+ return pulumi.get(self, "seconds")
354
+
355
+
356
+ @pulumi.output_type
357
+ class ClusterMaintenanceSchedule(dict):
358
+ @staticmethod
359
+ def __key_warning(key: str):
360
+ suggest = None
361
+ if key == "endTime":
362
+ suggest = "end_time"
363
+ elif key == "scheduleDeadlineTime":
364
+ suggest = "schedule_deadline_time"
365
+ elif key == "startTime":
366
+ suggest = "start_time"
367
+
368
+ if suggest:
369
+ pulumi.log.warn(f"Key '{key}' not found in ClusterMaintenanceSchedule. Access the value via the '{suggest}' property getter instead.")
370
+
371
+ def __getitem__(self, key: str) -> Any:
372
+ ClusterMaintenanceSchedule.__key_warning(key)
373
+ return super().__getitem__(key)
374
+
375
+ def get(self, key: str, default = None) -> Any:
376
+ ClusterMaintenanceSchedule.__key_warning(key)
377
+ return super().get(key, default)
378
+
379
+ def __init__(__self__, *,
380
+ end_time: Optional[str] = None,
381
+ schedule_deadline_time: Optional[str] = None,
382
+ start_time: Optional[str] = None):
383
+ """
384
+ :param str end_time: (Output)
385
+ Output only. The end time of any upcoming scheduled maintenance for this cluster.
386
+ A timestamp in RFC3339 UTC "Zulu" format, with nanosecond
387
+ resolution and up to nine fractional digits.
388
+ :param str schedule_deadline_time: (Output)
389
+ Output only. The deadline that the maintenance schedule start time
390
+ can not go beyond, including reschedule.
391
+ A timestamp in RFC3339 UTC "Zulu" format, with nanosecond
392
+ resolution and up to nine fractional digits.
393
+ :param str start_time: (Output)
394
+ Output only. The start time of any upcoming scheduled maintenance for this cluster.
395
+ A timestamp in RFC3339 UTC "Zulu" format, with nanosecond
396
+ resolution and up to nine fractional digits.
397
+ """
398
+ if end_time is not None:
399
+ pulumi.set(__self__, "end_time", end_time)
400
+ if schedule_deadline_time is not None:
401
+ pulumi.set(__self__, "schedule_deadline_time", schedule_deadline_time)
402
+ if start_time is not None:
403
+ pulumi.set(__self__, "start_time", start_time)
404
+
405
+ @property
406
+ @pulumi.getter(name="endTime")
407
+ def end_time(self) -> Optional[str]:
408
+ """
409
+ (Output)
410
+ Output only. The end time of any upcoming scheduled maintenance for this cluster.
411
+ A timestamp in RFC3339 UTC "Zulu" format, with nanosecond
412
+ resolution and up to nine fractional digits.
413
+ """
414
+ return pulumi.get(self, "end_time")
415
+
416
+ @property
417
+ @pulumi.getter(name="scheduleDeadlineTime")
418
+ def schedule_deadline_time(self) -> Optional[str]:
419
+ """
420
+ (Output)
421
+ Output only. The deadline that the maintenance schedule start time
422
+ can not go beyond, including reschedule.
423
+ A timestamp in RFC3339 UTC "Zulu" format, with nanosecond
424
+ resolution and up to nine fractional digits.
425
+ """
426
+ return pulumi.get(self, "schedule_deadline_time")
427
+
428
+ @property
429
+ @pulumi.getter(name="startTime")
430
+ def start_time(self) -> Optional[str]:
431
+ """
432
+ (Output)
433
+ Output only. The start time of any upcoming scheduled maintenance for this cluster.
434
+ A timestamp in RFC3339 UTC "Zulu" format, with nanosecond
435
+ resolution and up to nine fractional digits.
436
+ """
437
+ return pulumi.get(self, "start_time")
438
+
439
+
125
440
  @pulumi.output_type
126
441
  class ClusterPscConfig(dict):
127
442
  def __init__(__self__, *,
@@ -28,6 +28,7 @@ from .source_iam_member import *
28
28
  from .source_iam_policy import *
29
29
  from .v2_folder_mute_config import *
30
30
  from .v2_folder_notification_config import *
31
+ from .v2_folder_scc_big_query_export import *
31
32
  from .v2_organization_mute_config import *
32
33
  from .v2_organization_notification_config import *
33
34
  from .v2_organization_scc_big_query_exports import *
@@ -37,5 +38,6 @@ from .v2_organization_source_iam_member import *
37
38
  from .v2_organization_source_iam_policy import *
38
39
  from .v2_project_mute_config import *
39
40
  from .v2_project_notification_config import *
41
+ from .v2_project_scc_big_query_export import *
40
42
  from ._inputs import *
41
43
  from . import outputs