pulumi-gcp 7.22.0a1715345822__py3-none-any.whl → 7.23.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 (65) hide show
  1. pulumi_gcp/__init__.py +35 -0
  2. pulumi_gcp/alloydb/_inputs.py +139 -0
  3. pulumi_gcp/alloydb/cluster.py +54 -0
  4. pulumi_gcp/alloydb/outputs.py +145 -0
  5. pulumi_gcp/applicationintegration/auth_config.py +2 -6
  6. pulumi_gcp/applicationintegration/client.py +133 -18
  7. pulumi_gcp/bigquery/dataset.py +2 -2
  8. pulumi_gcp/bigquery/job.py +16 -20
  9. pulumi_gcp/bigquery/table.py +47 -0
  10. pulumi_gcp/bigtable/__init__.py +1 -0
  11. pulumi_gcp/bigtable/_inputs.py +101 -0
  12. pulumi_gcp/bigtable/authorized_view.py +440 -0
  13. pulumi_gcp/bigtable/outputs.py +119 -0
  14. pulumi_gcp/certificateauthority/certificate_template.py +70 -0
  15. pulumi_gcp/cloudbuildv2/repository.py +2 -2
  16. pulumi_gcp/clouddeploy/_inputs.py +96 -0
  17. pulumi_gcp/clouddeploy/custom_target_type.py +46 -0
  18. pulumi_gcp/clouddeploy/delivery_pipeline.py +7 -7
  19. pulumi_gcp/clouddeploy/outputs.py +96 -1
  20. pulumi_gcp/clouddeploy/target.py +54 -7
  21. pulumi_gcp/cloudrunv2/job.py +2 -4
  22. pulumi_gcp/cloudrunv2/service.py +2 -4
  23. pulumi_gcp/compute/_inputs.py +693 -0
  24. pulumi_gcp/compute/firewall_policy_rule.py +125 -10
  25. pulumi_gcp/compute/network_firewall_policy_rule.py +125 -10
  26. pulumi_gcp/compute/outputs.py +688 -0
  27. pulumi_gcp/compute/region_network_firewall_policy_rule.py +125 -10
  28. pulumi_gcp/compute/region_security_policy_rule.py +230 -1
  29. pulumi_gcp/compute/router_peer.py +54 -14
  30. pulumi_gcp/config/__init__.pyi +2 -0
  31. pulumi_gcp/config/vars.py +4 -0
  32. pulumi_gcp/container/_inputs.py +236 -3
  33. pulumi_gcp/container/outputs.py +365 -4
  34. pulumi_gcp/dataflow/flex_template_job.py +28 -28
  35. pulumi_gcp/dataflow/job.py +28 -14
  36. pulumi_gcp/essentialcontacts/document_ai_warehouse_document_schema.py +0 -528
  37. pulumi_gcp/firebaserules/release.py +2 -2
  38. pulumi_gcp/iam/_inputs.py +191 -2
  39. pulumi_gcp/iam/outputs.py +197 -2
  40. pulumi_gcp/iam/workforce_pool_provider.py +245 -0
  41. pulumi_gcp/integrationconnectors/__init__.py +1 -0
  42. pulumi_gcp/integrationconnectors/managed_zone.py +753 -0
  43. pulumi_gcp/networkconnectivity/__init__.py +1 -0
  44. pulumi_gcp/networkconnectivity/regional_endpoint.py +946 -0
  45. pulumi_gcp/networksecurity/firewall_endpoint.py +34 -0
  46. pulumi_gcp/networksecurity/firewall_endpoint_association.py +24 -0
  47. pulumi_gcp/networksecurity/security_profile.py +16 -0
  48. pulumi_gcp/networksecurity/security_profile_group.py +18 -0
  49. pulumi_gcp/networksecurity/tls_inspection_policy.py +16 -0
  50. pulumi_gcp/orgpolicy/policy.py +2 -2
  51. pulumi_gcp/privilegedaccessmanager/__init__.py +10 -0
  52. pulumi_gcp/privilegedaccessmanager/_inputs.py +420 -0
  53. pulumi_gcp/privilegedaccessmanager/entitlement.py +852 -0
  54. pulumi_gcp/privilegedaccessmanager/outputs.py +491 -0
  55. pulumi_gcp/provider.py +20 -0
  56. pulumi_gcp/pubsub/subscription.py +4 -4
  57. pulumi_gcp/pulumi-plugin.json +2 -1
  58. pulumi_gcp/redis/cluster.py +69 -2
  59. pulumi_gcp/storage/__init__.py +1 -0
  60. pulumi_gcp/storage/get_buckets.py +138 -0
  61. pulumi_gcp/storage/outputs.py +63 -0
  62. {pulumi_gcp-7.22.0a1715345822.dist-info → pulumi_gcp-7.23.0.dist-info}/METADATA +1 -1
  63. {pulumi_gcp-7.22.0a1715345822.dist-info → pulumi_gcp-7.23.0.dist-info}/RECORD +65 -57
  64. {pulumi_gcp-7.22.0a1715345822.dist-info → pulumi_gcp-7.23.0.dist-info}/WHEEL +0 -0
  65. {pulumi_gcp-7.22.0a1715345822.dist-info → pulumi_gcp-7.23.0.dist-info}/top_level.txt +0 -0
pulumi_gcp/__init__.py CHANGED
@@ -194,6 +194,8 @@ if typing.TYPE_CHECKING:
194
194
  oslogin = __oslogin
195
195
  import pulumi_gcp.parallelstore as __parallelstore
196
196
  parallelstore = __parallelstore
197
+ import pulumi_gcp.privilegedaccessmanager as __privilegedaccessmanager
198
+ privilegedaccessmanager = __privilegedaccessmanager
197
199
  import pulumi_gcp.projects as __projects
198
200
  projects = __projects
199
201
  import pulumi_gcp.pubsub as __pubsub
@@ -339,6 +341,7 @@ else:
339
341
  osconfig = _utilities.lazy_import('pulumi_gcp.osconfig')
340
342
  oslogin = _utilities.lazy_import('pulumi_gcp.oslogin')
341
343
  parallelstore = _utilities.lazy_import('pulumi_gcp.parallelstore')
344
+ privilegedaccessmanager = _utilities.lazy_import('pulumi_gcp.privilegedaccessmanager')
342
345
  projects = _utilities.lazy_import('pulumi_gcp.projects')
343
346
  pubsub = _utilities.lazy_import('pulumi_gcp.pubsub')
344
347
  recaptcha = _utilities.lazy_import('pulumi_gcp.recaptcha')
@@ -1313,6 +1316,14 @@ _utilities.register(
1313
1316
  "gcp:bigquerydatapolicy/dataPolicyIamPolicy:DataPolicyIamPolicy": "DataPolicyIamPolicy"
1314
1317
  }
1315
1318
  },
1319
+ {
1320
+ "pkg": "gcp",
1321
+ "mod": "bigtable/authorizedView",
1322
+ "fqn": "pulumi_gcp.bigtable",
1323
+ "classes": {
1324
+ "gcp:bigtable/authorizedView:AuthorizedView": "AuthorizedView"
1325
+ }
1326
+ },
1316
1327
  {
1317
1328
  "pkg": "gcp",
1318
1329
  "mod": "bigtable/gCPolicy",
@@ -5401,6 +5412,14 @@ _utilities.register(
5401
5412
  "gcp:integrationconnectors/endpointAttachment:EndpointAttachment": "EndpointAttachment"
5402
5413
  }
5403
5414
  },
5415
+ {
5416
+ "pkg": "gcp",
5417
+ "mod": "integrationconnectors/managedZone",
5418
+ "fqn": "pulumi_gcp.integrationconnectors",
5419
+ "classes": {
5420
+ "gcp:integrationconnectors/managedZone:ManagedZone": "ManagedZone"
5421
+ }
5422
+ },
5404
5423
  {
5405
5424
  "pkg": "gcp",
5406
5425
  "mod": "kms/cryptoKey",
@@ -5841,6 +5860,14 @@ _utilities.register(
5841
5860
  "gcp:networkconnectivity/policyBasedRoute:PolicyBasedRoute": "PolicyBasedRoute"
5842
5861
  }
5843
5862
  },
5863
+ {
5864
+ "pkg": "gcp",
5865
+ "mod": "networkconnectivity/regionalEndpoint",
5866
+ "fqn": "pulumi_gcp.networkconnectivity",
5867
+ "classes": {
5868
+ "gcp:networkconnectivity/regionalEndpoint:RegionalEndpoint": "RegionalEndpoint"
5869
+ }
5870
+ },
5844
5871
  {
5845
5872
  "pkg": "gcp",
5846
5873
  "mod": "networkconnectivity/serviceConnectionPolicy",
@@ -6281,6 +6308,14 @@ _utilities.register(
6281
6308
  "gcp:parallelstore/instance:Instance": "Instance"
6282
6309
  }
6283
6310
  },
6311
+ {
6312
+ "pkg": "gcp",
6313
+ "mod": "privilegedaccessmanager/entitlement",
6314
+ "fqn": "pulumi_gcp.privilegedaccessmanager",
6315
+ "classes": {
6316
+ "gcp:privilegedaccessmanager/entitlement:entitlement": "Entitlement"
6317
+ }
6318
+ },
6284
6319
  {
6285
6320
  "pkg": "gcp",
6286
6321
  "mod": "projects/accessApprovalSettings",
@@ -27,6 +27,9 @@ __all__ = [
27
27
  'ClusterEncryptionConfigArgs',
28
28
  'ClusterEncryptionInfoArgs',
29
29
  'ClusterInitialUserArgs',
30
+ 'ClusterMaintenanceUpdatePolicyArgs',
31
+ 'ClusterMaintenanceUpdatePolicyMaintenanceWindowArgs',
32
+ 'ClusterMaintenanceUpdatePolicyMaintenanceWindowStartTimeArgs',
30
33
  'ClusterMigrationSourceArgs',
31
34
  'ClusterNetworkConfigArgs',
32
35
  'ClusterRestoreBackupSourceArgs',
@@ -816,6 +819,142 @@ class ClusterInitialUserArgs:
816
819
  pulumi.set(self, "user", value)
817
820
 
818
821
 
822
+ @pulumi.input_type
823
+ class ClusterMaintenanceUpdatePolicyArgs:
824
+ def __init__(__self__, *,
825
+ maintenance_windows: Optional[pulumi.Input[Sequence[pulumi.Input['ClusterMaintenanceUpdatePolicyMaintenanceWindowArgs']]]] = None):
826
+ """
827
+ :param pulumi.Input[Sequence[pulumi.Input['ClusterMaintenanceUpdatePolicyMaintenanceWindowArgs']]] maintenance_windows: Preferred windows to perform maintenance. Currently limited to 1.
828
+ Structure is documented below.
829
+ """
830
+ if maintenance_windows is not None:
831
+ pulumi.set(__self__, "maintenance_windows", maintenance_windows)
832
+
833
+ @property
834
+ @pulumi.getter(name="maintenanceWindows")
835
+ def maintenance_windows(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ClusterMaintenanceUpdatePolicyMaintenanceWindowArgs']]]]:
836
+ """
837
+ Preferred windows to perform maintenance. Currently limited to 1.
838
+ Structure is documented below.
839
+ """
840
+ return pulumi.get(self, "maintenance_windows")
841
+
842
+ @maintenance_windows.setter
843
+ def maintenance_windows(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ClusterMaintenanceUpdatePolicyMaintenanceWindowArgs']]]]):
844
+ pulumi.set(self, "maintenance_windows", value)
845
+
846
+
847
+ @pulumi.input_type
848
+ class ClusterMaintenanceUpdatePolicyMaintenanceWindowArgs:
849
+ def __init__(__self__, *,
850
+ day: pulumi.Input[str],
851
+ start_time: pulumi.Input['ClusterMaintenanceUpdatePolicyMaintenanceWindowStartTimeArgs']):
852
+ """
853
+ :param pulumi.Input[str] day: Preferred day of the week for maintenance, e.g. MONDAY, TUESDAY, etc.
854
+ Possible values are: `MONDAY`, `TUESDAY`, `WEDNESDAY`, `THURSDAY`, `FRIDAY`, `SATURDAY`, `SUNDAY`.
855
+ :param pulumi.Input['ClusterMaintenanceUpdatePolicyMaintenanceWindowStartTimeArgs'] start_time: Preferred time to start the maintenance operation on the specified day. Maintenance will start within 1 hour of this time.
856
+ Structure is documented below.
857
+ """
858
+ pulumi.set(__self__, "day", day)
859
+ pulumi.set(__self__, "start_time", start_time)
860
+
861
+ @property
862
+ @pulumi.getter
863
+ def day(self) -> pulumi.Input[str]:
864
+ """
865
+ Preferred day of the week for maintenance, e.g. MONDAY, TUESDAY, etc.
866
+ Possible values are: `MONDAY`, `TUESDAY`, `WEDNESDAY`, `THURSDAY`, `FRIDAY`, `SATURDAY`, `SUNDAY`.
867
+ """
868
+ return pulumi.get(self, "day")
869
+
870
+ @day.setter
871
+ def day(self, value: pulumi.Input[str]):
872
+ pulumi.set(self, "day", value)
873
+
874
+ @property
875
+ @pulumi.getter(name="startTime")
876
+ def start_time(self) -> pulumi.Input['ClusterMaintenanceUpdatePolicyMaintenanceWindowStartTimeArgs']:
877
+ """
878
+ Preferred time to start the maintenance operation on the specified day. Maintenance will start within 1 hour of this time.
879
+ Structure is documented below.
880
+ """
881
+ return pulumi.get(self, "start_time")
882
+
883
+ @start_time.setter
884
+ def start_time(self, value: pulumi.Input['ClusterMaintenanceUpdatePolicyMaintenanceWindowStartTimeArgs']):
885
+ pulumi.set(self, "start_time", value)
886
+
887
+
888
+ @pulumi.input_type
889
+ class ClusterMaintenanceUpdatePolicyMaintenanceWindowStartTimeArgs:
890
+ def __init__(__self__, *,
891
+ hours: pulumi.Input[int],
892
+ minutes: Optional[pulumi.Input[int]] = None,
893
+ nanos: Optional[pulumi.Input[int]] = None,
894
+ seconds: Optional[pulumi.Input[int]] = None):
895
+ """
896
+ :param pulumi.Input[int] hours: Hours of day in 24 hour format. Should be from 0 to 23.
897
+ :param pulumi.Input[int] minutes: Minutes of hour of day. Currently, only the value 0 is supported.
898
+ :param pulumi.Input[int] nanos: Fractions of seconds in nanoseconds. Currently, only the value 0 is supported.
899
+ :param pulumi.Input[int] seconds: Seconds of minutes of the time. Currently, only the value 0 is supported.
900
+ """
901
+ pulumi.set(__self__, "hours", hours)
902
+ if minutes is not None:
903
+ pulumi.set(__self__, "minutes", minutes)
904
+ if nanos is not None:
905
+ pulumi.set(__self__, "nanos", nanos)
906
+ if seconds is not None:
907
+ pulumi.set(__self__, "seconds", seconds)
908
+
909
+ @property
910
+ @pulumi.getter
911
+ def hours(self) -> pulumi.Input[int]:
912
+ """
913
+ Hours of day in 24 hour format. Should be from 0 to 23.
914
+ """
915
+ return pulumi.get(self, "hours")
916
+
917
+ @hours.setter
918
+ def hours(self, value: pulumi.Input[int]):
919
+ pulumi.set(self, "hours", value)
920
+
921
+ @property
922
+ @pulumi.getter
923
+ def minutes(self) -> Optional[pulumi.Input[int]]:
924
+ """
925
+ Minutes of hour of day. Currently, only the value 0 is supported.
926
+ """
927
+ return pulumi.get(self, "minutes")
928
+
929
+ @minutes.setter
930
+ def minutes(self, value: Optional[pulumi.Input[int]]):
931
+ pulumi.set(self, "minutes", value)
932
+
933
+ @property
934
+ @pulumi.getter
935
+ def nanos(self) -> Optional[pulumi.Input[int]]:
936
+ """
937
+ Fractions of seconds in nanoseconds. Currently, only the value 0 is supported.
938
+ """
939
+ return pulumi.get(self, "nanos")
940
+
941
+ @nanos.setter
942
+ def nanos(self, value: Optional[pulumi.Input[int]]):
943
+ pulumi.set(self, "nanos", value)
944
+
945
+ @property
946
+ @pulumi.getter
947
+ def seconds(self) -> Optional[pulumi.Input[int]]:
948
+ """
949
+ Seconds of minutes of the time. Currently, only the value 0 is supported.
950
+ """
951
+ return pulumi.get(self, "seconds")
952
+
953
+ @seconds.setter
954
+ def seconds(self, value: Optional[pulumi.Input[int]]):
955
+ pulumi.set(self, "seconds", value)
956
+
957
+
819
958
  @pulumi.input_type
820
959
  class ClusterMigrationSourceArgs:
821
960
  def __init__(__self__, *,
@@ -29,6 +29,7 @@ class ClusterArgs:
29
29
  etag: Optional[pulumi.Input[str]] = None,
30
30
  initial_user: Optional[pulumi.Input['ClusterInitialUserArgs']] = None,
31
31
  labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
32
+ maintenance_update_policy: Optional[pulumi.Input['ClusterMaintenanceUpdatePolicyArgs']] = None,
32
33
  network: Optional[pulumi.Input[str]] = None,
33
34
  network_config: Optional[pulumi.Input['ClusterNetworkConfigArgs']] = None,
34
35
  project: Optional[pulumi.Input[str]] = None,
@@ -68,6 +69,8 @@ class ClusterArgs:
68
69
  :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: User-defined labels for the alloydb cluster.
69
70
  **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
70
71
  Please refer to the field `effective_labels` for all of the labels present on the resource.
72
+ :param pulumi.Input['ClusterMaintenanceUpdatePolicyArgs'] maintenance_update_policy: MaintenanceUpdatePolicy defines the policy for system updates.
73
+ Structure is documented below.
71
74
  :param pulumi.Input[str] network: (Optional, Deprecated)
72
75
  The relative resource name of the VPC network on which the instance can be accessed. It is specified in the following form:
73
76
  "projects/{projectNumber}/global/networks/{network_id}".
@@ -108,6 +111,8 @@ class ClusterArgs:
108
111
  pulumi.set(__self__, "initial_user", initial_user)
109
112
  if labels is not None:
110
113
  pulumi.set(__self__, "labels", labels)
114
+ if maintenance_update_policy is not None:
115
+ pulumi.set(__self__, "maintenance_update_policy", maintenance_update_policy)
111
116
  if network is not None:
112
117
  warnings.warn("""`network` is deprecated and will be removed in a future major release. Instead, use `network_config` to define the network configuration.""", DeprecationWarning)
113
118
  pulumi.log.warn("""network is deprecated: `network` is deprecated and will be removed in a future major release. Instead, use `network_config` to define the network configuration.""")
@@ -298,6 +303,19 @@ class ClusterArgs:
298
303
  def labels(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
299
304
  pulumi.set(self, "labels", value)
300
305
 
306
+ @property
307
+ @pulumi.getter(name="maintenanceUpdatePolicy")
308
+ def maintenance_update_policy(self) -> Optional[pulumi.Input['ClusterMaintenanceUpdatePolicyArgs']]:
309
+ """
310
+ MaintenanceUpdatePolicy defines the policy for system updates.
311
+ Structure is documented below.
312
+ """
313
+ return pulumi.get(self, "maintenance_update_policy")
314
+
315
+ @maintenance_update_policy.setter
316
+ def maintenance_update_policy(self, value: Optional[pulumi.Input['ClusterMaintenanceUpdatePolicyArgs']]):
317
+ pulumi.set(self, "maintenance_update_policy", value)
318
+
301
319
  @property
302
320
  @pulumi.getter
303
321
  def network(self) -> Optional[pulumi.Input[str]]:
@@ -404,6 +422,7 @@ class _ClusterState:
404
422
  initial_user: Optional[pulumi.Input['ClusterInitialUserArgs']] = None,
405
423
  labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
406
424
  location: Optional[pulumi.Input[str]] = None,
425
+ maintenance_update_policy: Optional[pulumi.Input['ClusterMaintenanceUpdatePolicyArgs']] = None,
407
426
  migration_sources: Optional[pulumi.Input[Sequence[pulumi.Input['ClusterMigrationSourceArgs']]]] = None,
408
427
  name: Optional[pulumi.Input[str]] = None,
409
428
  network: Optional[pulumi.Input[str]] = None,
@@ -457,6 +476,8 @@ class _ClusterState:
457
476
 
458
477
 
459
478
  - - -
479
+ :param pulumi.Input['ClusterMaintenanceUpdatePolicyArgs'] maintenance_update_policy: MaintenanceUpdatePolicy defines the policy for system updates.
480
+ Structure is documented below.
460
481
  :param pulumi.Input[Sequence[pulumi.Input['ClusterMigrationSourceArgs']]] migration_sources: Cluster created via DMS migration.
461
482
  Structure is documented below.
462
483
  :param pulumi.Input[str] name: The name of the cluster resource.
@@ -519,6 +540,8 @@ class _ClusterState:
519
540
  pulumi.set(__self__, "labels", labels)
520
541
  if location is not None:
521
542
  pulumi.set(__self__, "location", location)
543
+ if maintenance_update_policy is not None:
544
+ pulumi.set(__self__, "maintenance_update_policy", maintenance_update_policy)
522
545
  if migration_sources is not None:
523
546
  pulumi.set(__self__, "migration_sources", migration_sources)
524
547
  if name is not None:
@@ -782,6 +805,19 @@ class _ClusterState:
782
805
  def location(self, value: Optional[pulumi.Input[str]]):
783
806
  pulumi.set(self, "location", value)
784
807
 
808
+ @property
809
+ @pulumi.getter(name="maintenanceUpdatePolicy")
810
+ def maintenance_update_policy(self) -> Optional[pulumi.Input['ClusterMaintenanceUpdatePolicyArgs']]:
811
+ """
812
+ MaintenanceUpdatePolicy defines the policy for system updates.
813
+ Structure is documented below.
814
+ """
815
+ return pulumi.get(self, "maintenance_update_policy")
816
+
817
+ @maintenance_update_policy.setter
818
+ def maintenance_update_policy(self, value: Optional[pulumi.Input['ClusterMaintenanceUpdatePolicyArgs']]):
819
+ pulumi.set(self, "maintenance_update_policy", value)
820
+
785
821
  @property
786
822
  @pulumi.getter(name="migrationSources")
787
823
  def migration_sources(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ClusterMigrationSourceArgs']]]]:
@@ -961,6 +997,7 @@ class Cluster(pulumi.CustomResource):
961
997
  initial_user: Optional[pulumi.Input[pulumi.InputType['ClusterInitialUserArgs']]] = None,
962
998
  labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
963
999
  location: Optional[pulumi.Input[str]] = None,
1000
+ maintenance_update_policy: Optional[pulumi.Input[pulumi.InputType['ClusterMaintenanceUpdatePolicyArgs']]] = None,
964
1001
  network: Optional[pulumi.Input[str]] = None,
965
1002
  network_config: Optional[pulumi.Input[pulumi.InputType['ClusterNetworkConfigArgs']]] = None,
966
1003
  project: Optional[pulumi.Input[str]] = None,
@@ -1198,6 +1235,8 @@ class Cluster(pulumi.CustomResource):
1198
1235
 
1199
1236
 
1200
1237
  - - -
1238
+ :param pulumi.Input[pulumi.InputType['ClusterMaintenanceUpdatePolicyArgs']] maintenance_update_policy: MaintenanceUpdatePolicy defines the policy for system updates.
1239
+ Structure is documented below.
1201
1240
  :param pulumi.Input[str] network: (Optional, Deprecated)
1202
1241
  The relative resource name of the VPC network on which the instance can be accessed. It is specified in the following form:
1203
1242
  "projects/{projectNumber}/global/networks/{network_id}".
@@ -1445,6 +1484,7 @@ class Cluster(pulumi.CustomResource):
1445
1484
  initial_user: Optional[pulumi.Input[pulumi.InputType['ClusterInitialUserArgs']]] = None,
1446
1485
  labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
1447
1486
  location: Optional[pulumi.Input[str]] = None,
1487
+ maintenance_update_policy: Optional[pulumi.Input[pulumi.InputType['ClusterMaintenanceUpdatePolicyArgs']]] = None,
1448
1488
  network: Optional[pulumi.Input[str]] = None,
1449
1489
  network_config: Optional[pulumi.Input[pulumi.InputType['ClusterNetworkConfigArgs']]] = None,
1450
1490
  project: Optional[pulumi.Input[str]] = None,
@@ -1477,6 +1517,7 @@ class Cluster(pulumi.CustomResource):
1477
1517
  if location is None and not opts.urn:
1478
1518
  raise TypeError("Missing required property 'location'")
1479
1519
  __props__.__dict__["location"] = location
1520
+ __props__.__dict__["maintenance_update_policy"] = maintenance_update_policy
1480
1521
  __props__.__dict__["network"] = network
1481
1522
  __props__.__dict__["network_config"] = network_config
1482
1523
  __props__.__dict__["project"] = project
@@ -1524,6 +1565,7 @@ class Cluster(pulumi.CustomResource):
1524
1565
  initial_user: Optional[pulumi.Input[pulumi.InputType['ClusterInitialUserArgs']]] = None,
1525
1566
  labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
1526
1567
  location: Optional[pulumi.Input[str]] = None,
1568
+ maintenance_update_policy: Optional[pulumi.Input[pulumi.InputType['ClusterMaintenanceUpdatePolicyArgs']]] = None,
1527
1569
  migration_sources: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ClusterMigrationSourceArgs']]]]] = None,
1528
1570
  name: Optional[pulumi.Input[str]] = None,
1529
1571
  network: Optional[pulumi.Input[str]] = None,
@@ -1582,6 +1624,8 @@ class Cluster(pulumi.CustomResource):
1582
1624
 
1583
1625
 
1584
1626
  - - -
1627
+ :param pulumi.Input[pulumi.InputType['ClusterMaintenanceUpdatePolicyArgs']] maintenance_update_policy: MaintenanceUpdatePolicy defines the policy for system updates.
1628
+ Structure is documented below.
1585
1629
  :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ClusterMigrationSourceArgs']]]] migration_sources: Cluster created via DMS migration.
1586
1630
  Structure is documented below.
1587
1631
  :param pulumi.Input[str] name: The name of the cluster resource.
@@ -1630,6 +1674,7 @@ class Cluster(pulumi.CustomResource):
1630
1674
  __props__.__dict__["initial_user"] = initial_user
1631
1675
  __props__.__dict__["labels"] = labels
1632
1676
  __props__.__dict__["location"] = location
1677
+ __props__.__dict__["maintenance_update_policy"] = maintenance_update_policy
1633
1678
  __props__.__dict__["migration_sources"] = migration_sources
1634
1679
  __props__.__dict__["name"] = name
1635
1680
  __props__.__dict__["network"] = network
@@ -1807,6 +1852,15 @@ class Cluster(pulumi.CustomResource):
1807
1852
  """
1808
1853
  return pulumi.get(self, "location")
1809
1854
 
1855
+ @property
1856
+ @pulumi.getter(name="maintenanceUpdatePolicy")
1857
+ def maintenance_update_policy(self) -> pulumi.Output[Optional['outputs.ClusterMaintenanceUpdatePolicy']]:
1858
+ """
1859
+ MaintenanceUpdatePolicy defines the policy for system updates.
1860
+ Structure is documented below.
1861
+ """
1862
+ return pulumi.get(self, "maintenance_update_policy")
1863
+
1810
1864
  @property
1811
1865
  @pulumi.getter(name="migrationSources")
1812
1866
  def migration_sources(self) -> pulumi.Output[Sequence['outputs.ClusterMigrationSource']]:
@@ -28,6 +28,9 @@ __all__ = [
28
28
  'ClusterEncryptionConfig',
29
29
  'ClusterEncryptionInfo',
30
30
  'ClusterInitialUser',
31
+ 'ClusterMaintenanceUpdatePolicy',
32
+ 'ClusterMaintenanceUpdatePolicyMaintenanceWindow',
33
+ 'ClusterMaintenanceUpdatePolicyMaintenanceWindowStartTime',
31
34
  'ClusterMigrationSource',
32
35
  'ClusterNetworkConfig',
33
36
  'ClusterRestoreBackupSource',
@@ -931,6 +934,148 @@ class ClusterInitialUser(dict):
931
934
  return pulumi.get(self, "user")
932
935
 
933
936
 
937
+ @pulumi.output_type
938
+ class ClusterMaintenanceUpdatePolicy(dict):
939
+ @staticmethod
940
+ def __key_warning(key: str):
941
+ suggest = None
942
+ if key == "maintenanceWindows":
943
+ suggest = "maintenance_windows"
944
+
945
+ if suggest:
946
+ pulumi.log.warn(f"Key '{key}' not found in ClusterMaintenanceUpdatePolicy. Access the value via the '{suggest}' property getter instead.")
947
+
948
+ def __getitem__(self, key: str) -> Any:
949
+ ClusterMaintenanceUpdatePolicy.__key_warning(key)
950
+ return super().__getitem__(key)
951
+
952
+ def get(self, key: str, default = None) -> Any:
953
+ ClusterMaintenanceUpdatePolicy.__key_warning(key)
954
+ return super().get(key, default)
955
+
956
+ def __init__(__self__, *,
957
+ maintenance_windows: Optional[Sequence['outputs.ClusterMaintenanceUpdatePolicyMaintenanceWindow']] = None):
958
+ """
959
+ :param Sequence['ClusterMaintenanceUpdatePolicyMaintenanceWindowArgs'] maintenance_windows: Preferred windows to perform maintenance. Currently limited to 1.
960
+ Structure is documented below.
961
+ """
962
+ if maintenance_windows is not None:
963
+ pulumi.set(__self__, "maintenance_windows", maintenance_windows)
964
+
965
+ @property
966
+ @pulumi.getter(name="maintenanceWindows")
967
+ def maintenance_windows(self) -> Optional[Sequence['outputs.ClusterMaintenanceUpdatePolicyMaintenanceWindow']]:
968
+ """
969
+ Preferred windows to perform maintenance. Currently limited to 1.
970
+ Structure is documented below.
971
+ """
972
+ return pulumi.get(self, "maintenance_windows")
973
+
974
+
975
+ @pulumi.output_type
976
+ class ClusterMaintenanceUpdatePolicyMaintenanceWindow(dict):
977
+ @staticmethod
978
+ def __key_warning(key: str):
979
+ suggest = None
980
+ if key == "startTime":
981
+ suggest = "start_time"
982
+
983
+ if suggest:
984
+ pulumi.log.warn(f"Key '{key}' not found in ClusterMaintenanceUpdatePolicyMaintenanceWindow. Access the value via the '{suggest}' property getter instead.")
985
+
986
+ def __getitem__(self, key: str) -> Any:
987
+ ClusterMaintenanceUpdatePolicyMaintenanceWindow.__key_warning(key)
988
+ return super().__getitem__(key)
989
+
990
+ def get(self, key: str, default = None) -> Any:
991
+ ClusterMaintenanceUpdatePolicyMaintenanceWindow.__key_warning(key)
992
+ return super().get(key, default)
993
+
994
+ def __init__(__self__, *,
995
+ day: str,
996
+ start_time: 'outputs.ClusterMaintenanceUpdatePolicyMaintenanceWindowStartTime'):
997
+ """
998
+ :param str day: Preferred day of the week for maintenance, e.g. MONDAY, TUESDAY, etc.
999
+ Possible values are: `MONDAY`, `TUESDAY`, `WEDNESDAY`, `THURSDAY`, `FRIDAY`, `SATURDAY`, `SUNDAY`.
1000
+ :param 'ClusterMaintenanceUpdatePolicyMaintenanceWindowStartTimeArgs' start_time: Preferred time to start the maintenance operation on the specified day. Maintenance will start within 1 hour of this time.
1001
+ Structure is documented below.
1002
+ """
1003
+ pulumi.set(__self__, "day", day)
1004
+ pulumi.set(__self__, "start_time", start_time)
1005
+
1006
+ @property
1007
+ @pulumi.getter
1008
+ def day(self) -> str:
1009
+ """
1010
+ Preferred day of the week for maintenance, e.g. MONDAY, TUESDAY, etc.
1011
+ Possible values are: `MONDAY`, `TUESDAY`, `WEDNESDAY`, `THURSDAY`, `FRIDAY`, `SATURDAY`, `SUNDAY`.
1012
+ """
1013
+ return pulumi.get(self, "day")
1014
+
1015
+ @property
1016
+ @pulumi.getter(name="startTime")
1017
+ def start_time(self) -> 'outputs.ClusterMaintenanceUpdatePolicyMaintenanceWindowStartTime':
1018
+ """
1019
+ Preferred time to start the maintenance operation on the specified day. Maintenance will start within 1 hour of this time.
1020
+ Structure is documented below.
1021
+ """
1022
+ return pulumi.get(self, "start_time")
1023
+
1024
+
1025
+ @pulumi.output_type
1026
+ class ClusterMaintenanceUpdatePolicyMaintenanceWindowStartTime(dict):
1027
+ def __init__(__self__, *,
1028
+ hours: int,
1029
+ minutes: Optional[int] = None,
1030
+ nanos: Optional[int] = None,
1031
+ seconds: Optional[int] = None):
1032
+ """
1033
+ :param int hours: Hours of day in 24 hour format. Should be from 0 to 23.
1034
+ :param int minutes: Minutes of hour of day. Currently, only the value 0 is supported.
1035
+ :param int nanos: Fractions of seconds in nanoseconds. Currently, only the value 0 is supported.
1036
+ :param int seconds: Seconds of minutes of the time. Currently, only the value 0 is supported.
1037
+ """
1038
+ pulumi.set(__self__, "hours", hours)
1039
+ if minutes is not None:
1040
+ pulumi.set(__self__, "minutes", minutes)
1041
+ if nanos is not None:
1042
+ pulumi.set(__self__, "nanos", nanos)
1043
+ if seconds is not None:
1044
+ pulumi.set(__self__, "seconds", seconds)
1045
+
1046
+ @property
1047
+ @pulumi.getter
1048
+ def hours(self) -> int:
1049
+ """
1050
+ Hours of day in 24 hour format. Should be from 0 to 23.
1051
+ """
1052
+ return pulumi.get(self, "hours")
1053
+
1054
+ @property
1055
+ @pulumi.getter
1056
+ def minutes(self) -> Optional[int]:
1057
+ """
1058
+ Minutes of hour of day. Currently, only the value 0 is supported.
1059
+ """
1060
+ return pulumi.get(self, "minutes")
1061
+
1062
+ @property
1063
+ @pulumi.getter
1064
+ def nanos(self) -> Optional[int]:
1065
+ """
1066
+ Fractions of seconds in nanoseconds. Currently, only the value 0 is supported.
1067
+ """
1068
+ return pulumi.get(self, "nanos")
1069
+
1070
+ @property
1071
+ @pulumi.getter
1072
+ def seconds(self) -> Optional[int]:
1073
+ """
1074
+ Seconds of minutes of the time. Currently, only the value 0 is supported.
1075
+ """
1076
+ return pulumi.get(self, "seconds")
1077
+
1078
+
934
1079
  @pulumi.output_type
935
1080
  class ClusterMigrationSource(dict):
936
1081
  @staticmethod
@@ -568,9 +568,7 @@ class AuthConfig(pulumi.CustomResource):
568
568
  import pulumi
569
569
  import pulumi_gcp as gcp
570
570
 
571
- client = gcp.applicationintegration.Client("client",
572
- location="us-west1",
573
- provision_gmek=True)
571
+ client = gcp.applicationintegration.Client("client", location="us-west1")
574
572
  basic_example = gcp.applicationintegration.AuthConfig("basic_example",
575
573
  location="us-west1",
576
574
  display_name="test-authconfig",
@@ -641,9 +639,7 @@ class AuthConfig(pulumi.CustomResource):
641
639
  import pulumi
642
640
  import pulumi_gcp as gcp
643
641
 
644
- client = gcp.applicationintegration.Client("client",
645
- location="us-west1",
646
- provision_gmek=True)
642
+ client = gcp.applicationintegration.Client("client", location="us-west1")
647
643
  basic_example = gcp.applicationintegration.AuthConfig("basic_example",
648
644
  location="us-west1",
649
645
  display_name="test-authconfig",