pulumi-gcp 8.21.0a1741156431__py3-none-any.whl → 8.22.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 (110) hide show
  1. pulumi_gcp/__init__.py +96 -0
  2. pulumi_gcp/alloydb/_inputs.py +66 -0
  3. pulumi_gcp/alloydb/cluster.py +148 -0
  4. pulumi_gcp/alloydb/instance.py +28 -28
  5. pulumi_gcp/alloydb/outputs.py +95 -0
  6. pulumi_gcp/apihub/__init__.py +1 -0
  7. pulumi_gcp/apihub/host_project_registration.py +535 -0
  8. pulumi_gcp/backupdisasterrecovery/_inputs.py +3 -3
  9. pulumi_gcp/backupdisasterrecovery/outputs.py +4 -4
  10. pulumi_gcp/bigquery/table.py +1 -1
  11. pulumi_gcp/certificatemanager/certificate.py +53 -7
  12. pulumi_gcp/certificatemanager/outputs.py +8 -2
  13. pulumi_gcp/compute/__init__.py +6 -0
  14. pulumi_gcp/compute/_inputs.py +1370 -17
  15. pulumi_gcp/compute/backend_service.py +209 -14
  16. pulumi_gcp/compute/ca_external_account_key.py +48 -3
  17. pulumi_gcp/compute/disk.py +403 -0
  18. pulumi_gcp/compute/firewall_policy_association.py +28 -2
  19. pulumi_gcp/compute/get_backend_service.py +12 -1
  20. pulumi_gcp/compute/get_disk.py +78 -1
  21. pulumi_gcp/compute/get_instant_snapshot_iam_policy.py +182 -0
  22. pulumi_gcp/compute/get_region_disk.py +23 -1
  23. pulumi_gcp/compute/get_region_ssl_policy.py +203 -0
  24. pulumi_gcp/compute/instant_snapshot.py +796 -0
  25. pulumi_gcp/compute/instant_snapshot_iam_binding.py +1087 -0
  26. pulumi_gcp/compute/instant_snapshot_iam_member.py +1087 -0
  27. pulumi_gcp/compute/instant_snapshot_iam_policy.py +906 -0
  28. pulumi_gcp/compute/outputs.py +1952 -29
  29. pulumi_gcp/compute/region_backend_service.py +207 -14
  30. pulumi_gcp/compute/region_disk.py +114 -0
  31. pulumi_gcp/compute/route.py +228 -2
  32. pulumi_gcp/compute/shared_vpc_service_project.py +0 -4
  33. pulumi_gcp/compute/subnetwork.py +147 -0
  34. pulumi_gcp/compute/url_map.py +8 -0
  35. pulumi_gcp/container/_inputs.py +6 -6
  36. pulumi_gcp/container/outputs.py +8 -8
  37. pulumi_gcp/datacatalog/entry.py +4 -0
  38. pulumi_gcp/datacatalog/tag.py +4 -0
  39. pulumi_gcp/dataproc/_inputs.py +12 -15
  40. pulumi_gcp/dataproc/outputs.py +8 -10
  41. pulumi_gcp/datastream/_inputs.py +273 -0
  42. pulumi_gcp/datastream/connection_profile.py +54 -2
  43. pulumi_gcp/datastream/outputs.py +224 -0
  44. pulumi_gcp/discoveryengine/target_site.py +4 -4
  45. pulumi_gcp/eventarc/__init__.py +2 -0
  46. pulumi_gcp/eventarc/_inputs.py +80 -0
  47. pulumi_gcp/eventarc/channel.py +85 -93
  48. pulumi_gcp/eventarc/google_api_source.py +997 -0
  49. pulumi_gcp/eventarc/message_bus.py +927 -0
  50. pulumi_gcp/eventarc/outputs.py +82 -0
  51. pulumi_gcp/firebase/data_connect_service.py +40 -2
  52. pulumi_gcp/gemini/__init__.py +1 -0
  53. pulumi_gcp/gemini/data_sharing_with_google_setting_binding.py +20 -8
  54. pulumi_gcp/gemini/gemini_gcp_enablement_setting.py +6 -0
  55. pulumi_gcp/gemini/gemini_gcp_enablement_setting_binding.py +734 -0
  56. pulumi_gcp/gemini/logging_setting_binding.py +7 -7
  57. pulumi_gcp/iam/__init__.py +2 -0
  58. pulumi_gcp/iam/_inputs.py +84 -27
  59. pulumi_gcp/iam/folders_policy_binding.py +10 -26
  60. pulumi_gcp/iam/oauth_client.py +979 -0
  61. pulumi_gcp/iam/oauth_client_credential.py +641 -0
  62. pulumi_gcp/iam/organizations_policy_binding.py +8 -24
  63. pulumi_gcp/iam/outputs.py +56 -18
  64. pulumi_gcp/iam/principal_access_boundary_policy.py +58 -22
  65. pulumi_gcp/iam/projects_policy_binding.py +8 -24
  66. pulumi_gcp/iam/workforce_pool_provider.py +2 -2
  67. pulumi_gcp/kms/crypto_key_version.py +14 -7
  68. pulumi_gcp/memorystore/__init__.py +1 -0
  69. pulumi_gcp/memorystore/get_instance.py +425 -0
  70. pulumi_gcp/memorystore/outputs.py +582 -0
  71. pulumi_gcp/monitoring/_inputs.py +15 -18
  72. pulumi_gcp/monitoring/alert_policy.py +46 -0
  73. pulumi_gcp/monitoring/outputs.py +10 -12
  74. pulumi_gcp/networkconnectivity/hub.py +84 -0
  75. pulumi_gcp/networksecurity/__init__.py +1 -0
  76. pulumi_gcp/networksecurity/_inputs.py +30 -18
  77. pulumi_gcp/networksecurity/backend_authentication_config.py +847 -0
  78. pulumi_gcp/networksecurity/intercept_deployment.py +178 -94
  79. pulumi_gcp/networksecurity/intercept_deployment_group.py +161 -77
  80. pulumi_gcp/networksecurity/intercept_endpoint_group.py +161 -66
  81. pulumi_gcp/networksecurity/intercept_endpoint_group_association.py +137 -80
  82. pulumi_gcp/networksecurity/mirroring_deployment.py +178 -94
  83. pulumi_gcp/networksecurity/mirroring_deployment_group.py +161 -77
  84. pulumi_gcp/networksecurity/mirroring_endpoint_group.py +161 -80
  85. pulumi_gcp/networksecurity/mirroring_endpoint_group_association.py +137 -105
  86. pulumi_gcp/networksecurity/outputs.py +20 -12
  87. pulumi_gcp/networkservices/endpoint_policy.py +12 -0
  88. pulumi_gcp/networkservices/grpc_route.py +128 -12
  89. pulumi_gcp/networkservices/http_route.py +16 -0
  90. pulumi_gcp/networkservices/mesh.py +16 -0
  91. pulumi_gcp/networkservices/service_binding.py +14 -0
  92. pulumi_gcp/networkservices/tcp_route.py +16 -0
  93. pulumi_gcp/networkservices/tls_route.py +12 -0
  94. pulumi_gcp/notebooks/location.py +4 -0
  95. pulumi_gcp/pulumi-plugin.json +1 -1
  96. pulumi_gcp/storage/__init__.py +1 -0
  97. pulumi_gcp/storage/_inputs.py +74 -0
  98. pulumi_gcp/storage/anywhere_cache.py +552 -0
  99. pulumi_gcp/storage/outputs.py +65 -0
  100. pulumi_gcp/storage/transfer_job.py +67 -0
  101. pulumi_gcp/tpu/_inputs.py +21 -1
  102. pulumi_gcp/tpu/outputs.py +13 -1
  103. pulumi_gcp/tpu/v2_vm.py +2 -0
  104. pulumi_gcp/vmwareengine/_inputs.py +6 -0
  105. pulumi_gcp/vmwareengine/outputs.py +8 -0
  106. pulumi_gcp/workstations/workstation_cluster.py +137 -1
  107. {pulumi_gcp-8.21.0a1741156431.dist-info → pulumi_gcp-8.22.0.dist-info}/METADATA +1 -1
  108. {pulumi_gcp-8.21.0a1741156431.dist-info → pulumi_gcp-8.22.0.dist-info}/RECORD +110 -95
  109. {pulumi_gcp-8.21.0a1741156431.dist-info → pulumi_gcp-8.22.0.dist-info}/WHEEL +1 -1
  110. {pulumi_gcp-8.21.0a1741156431.dist-info → pulumi_gcp-8.22.0.dist-info}/top_level.txt +0 -0
pulumi_gcp/__init__.py CHANGED
@@ -938,6 +938,14 @@ _utilities.register(
938
938
  "gcp:apihub/apiHubInstance:ApiHubInstance": "ApiHubInstance"
939
939
  }
940
940
  },
941
+ {
942
+ "pkg": "gcp",
943
+ "mod": "apihub/hostProjectRegistration",
944
+ "fqn": "pulumi_gcp.apihub",
945
+ "classes": {
946
+ "gcp:apihub/hostProjectRegistration:HostProjectRegistration": "HostProjectRegistration"
947
+ }
948
+ },
941
949
  {
942
950
  "pkg": "gcp",
943
951
  "mod": "appengine/application",
@@ -2834,6 +2842,38 @@ _utilities.register(
2834
2842
  "gcp:compute/instanceTemplateIamPolicy:InstanceTemplateIamPolicy": "InstanceTemplateIamPolicy"
2835
2843
  }
2836
2844
  },
2845
+ {
2846
+ "pkg": "gcp",
2847
+ "mod": "compute/instantSnapshot",
2848
+ "fqn": "pulumi_gcp.compute",
2849
+ "classes": {
2850
+ "gcp:compute/instantSnapshot:InstantSnapshot": "InstantSnapshot"
2851
+ }
2852
+ },
2853
+ {
2854
+ "pkg": "gcp",
2855
+ "mod": "compute/instantSnapshotIamBinding",
2856
+ "fqn": "pulumi_gcp.compute",
2857
+ "classes": {
2858
+ "gcp:compute/instantSnapshotIamBinding:InstantSnapshotIamBinding": "InstantSnapshotIamBinding"
2859
+ }
2860
+ },
2861
+ {
2862
+ "pkg": "gcp",
2863
+ "mod": "compute/instantSnapshotIamMember",
2864
+ "fqn": "pulumi_gcp.compute",
2865
+ "classes": {
2866
+ "gcp:compute/instantSnapshotIamMember:InstantSnapshotIamMember": "InstantSnapshotIamMember"
2867
+ }
2868
+ },
2869
+ {
2870
+ "pkg": "gcp",
2871
+ "mod": "compute/instantSnapshotIamPolicy",
2872
+ "fqn": "pulumi_gcp.compute",
2873
+ "classes": {
2874
+ "gcp:compute/instantSnapshotIamPolicy:InstantSnapshotIamPolicy": "InstantSnapshotIamPolicy"
2875
+ }
2876
+ },
2837
2877
  {
2838
2878
  "pkg": "gcp",
2839
2879
  "mod": "compute/interconnect",
@@ -4906,6 +4946,14 @@ _utilities.register(
4906
4946
  "gcp:eventarc/channel:Channel": "Channel"
4907
4947
  }
4908
4948
  },
4949
+ {
4950
+ "pkg": "gcp",
4951
+ "mod": "eventarc/googleApiSource",
4952
+ "fqn": "pulumi_gcp.eventarc",
4953
+ "classes": {
4954
+ "gcp:eventarc/googleApiSource:GoogleApiSource": "GoogleApiSource"
4955
+ }
4956
+ },
4909
4957
  {
4910
4958
  "pkg": "gcp",
4911
4959
  "mod": "eventarc/googleChannelConfig",
@@ -4914,6 +4962,14 @@ _utilities.register(
4914
4962
  "gcp:eventarc/googleChannelConfig:GoogleChannelConfig": "GoogleChannelConfig"
4915
4963
  }
4916
4964
  },
4965
+ {
4966
+ "pkg": "gcp",
4967
+ "mod": "eventarc/messageBus",
4968
+ "fqn": "pulumi_gcp.eventarc",
4969
+ "classes": {
4970
+ "gcp:eventarc/messageBus:MessageBus": "MessageBus"
4971
+ }
4972
+ },
4917
4973
  {
4918
4974
  "pkg": "gcp",
4919
4975
  "mod": "eventarc/trigger",
@@ -5242,6 +5298,14 @@ _utilities.register(
5242
5298
  "gcp:gemini/geminiGcpEnablementSetting:GeminiGcpEnablementSetting": "GeminiGcpEnablementSetting"
5243
5299
  }
5244
5300
  },
5301
+ {
5302
+ "pkg": "gcp",
5303
+ "mod": "gemini/geminiGcpEnablementSettingBinding",
5304
+ "fqn": "pulumi_gcp.gemini",
5305
+ "classes": {
5306
+ "gcp:gemini/geminiGcpEnablementSettingBinding:GeminiGcpEnablementSettingBinding": "GeminiGcpEnablementSettingBinding"
5307
+ }
5308
+ },
5245
5309
  {
5246
5310
  "pkg": "gcp",
5247
5311
  "mod": "gemini/loggingSetting",
@@ -5762,6 +5826,22 @@ _utilities.register(
5762
5826
  "gcp:iam/foldersPolicyBinding:FoldersPolicyBinding": "FoldersPolicyBinding"
5763
5827
  }
5764
5828
  },
5829
+ {
5830
+ "pkg": "gcp",
5831
+ "mod": "iam/oauthClient",
5832
+ "fqn": "pulumi_gcp.iam",
5833
+ "classes": {
5834
+ "gcp:iam/oauthClient:OauthClient": "OauthClient"
5835
+ }
5836
+ },
5837
+ {
5838
+ "pkg": "gcp",
5839
+ "mod": "iam/oauthClientCredential",
5840
+ "fqn": "pulumi_gcp.iam",
5841
+ "classes": {
5842
+ "gcp:iam/oauthClientCredential:OauthClientCredential": "OauthClientCredential"
5843
+ }
5844
+ },
5765
5845
  {
5766
5846
  "pkg": "gcp",
5767
5847
  "mod": "iam/organizationsPolicyBinding",
@@ -6826,6 +6906,14 @@ _utilities.register(
6826
6906
  "gcp:networksecurity/authzPolicy:AuthzPolicy": "AuthzPolicy"
6827
6907
  }
6828
6908
  },
6909
+ {
6910
+ "pkg": "gcp",
6911
+ "mod": "networksecurity/backendAuthenticationConfig",
6912
+ "fqn": "pulumi_gcp.networksecurity",
6913
+ "classes": {
6914
+ "gcp:networksecurity/backendAuthenticationConfig:BackendAuthenticationConfig": "BackendAuthenticationConfig"
6915
+ }
6916
+ },
6829
6917
  {
6830
6918
  "pkg": "gcp",
6831
6919
  "mod": "networksecurity/clientTlsPolicy",
@@ -8442,6 +8530,14 @@ _utilities.register(
8442
8530
  "gcp:sql/user:User": "User"
8443
8531
  }
8444
8532
  },
8533
+ {
8534
+ "pkg": "gcp",
8535
+ "mod": "storage/anywhereCache",
8536
+ "fqn": "pulumi_gcp.storage",
8537
+ "classes": {
8538
+ "gcp:storage/anywhereCache:AnywhereCache": "AnywhereCache"
8539
+ }
8540
+ },
8445
8541
  {
8446
8542
  "pkg": "gcp",
8447
8543
  "mod": "storage/bucket",
@@ -83,6 +83,8 @@ __all__ = [
83
83
  'InstanceObservabilityConfigArgsDict',
84
84
  'InstancePscInstanceConfigArgs',
85
85
  'InstancePscInstanceConfigArgsDict',
86
+ 'InstancePscInstanceConfigPscInterfaceConfigArgs',
87
+ 'InstancePscInstanceConfigPscInterfaceConfigArgsDict',
86
88
  'InstanceQueryInsightsConfigArgs',
87
89
  'InstanceQueryInsightsConfigArgsDict',
88
90
  'InstanceReadPoolConfigArgs',
@@ -2105,6 +2107,12 @@ if not MYPY:
2105
2107
  The DNS name of the instance for PSC connectivity.
2106
2108
  Name convention: <uid>.<uid>.<region>.alloydb-psc.goog
2107
2109
  """
2110
+ psc_interface_configs: NotRequired[pulumi.Input[Sequence[pulumi.Input['InstancePscInstanceConfigPscInterfaceConfigArgsDict']]]]
2111
+ """
2112
+ Configurations for setting up PSC interfaces attached to the instance
2113
+ which are used for outbound connectivity. Currently, AlloyDB supports only 0 or 1 PSC interface.
2114
+ Structure is documented below.
2115
+ """
2108
2116
  service_attachment_link: NotRequired[pulumi.Input[str]]
2109
2117
  """
2110
2118
  (Output)
@@ -2120,6 +2128,7 @@ class InstancePscInstanceConfigArgs:
2120
2128
  def __init__(__self__, *,
2121
2129
  allowed_consumer_projects: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
2122
2130
  psc_dns_name: Optional[pulumi.Input[str]] = None,
2131
+ psc_interface_configs: Optional[pulumi.Input[Sequence[pulumi.Input['InstancePscInstanceConfigPscInterfaceConfigArgs']]]] = None,
2123
2132
  service_attachment_link: Optional[pulumi.Input[str]] = None):
2124
2133
  """
2125
2134
  :param pulumi.Input[Sequence[pulumi.Input[str]]] allowed_consumer_projects: List of consumer projects that are allowed to create PSC endpoints to service-attachments to this instance.
@@ -2127,6 +2136,9 @@ class InstancePscInstanceConfigArgs:
2127
2136
  :param pulumi.Input[str] psc_dns_name: (Output)
2128
2137
  The DNS name of the instance for PSC connectivity.
2129
2138
  Name convention: <uid>.<uid>.<region>.alloydb-psc.goog
2139
+ :param pulumi.Input[Sequence[pulumi.Input['InstancePscInstanceConfigPscInterfaceConfigArgs']]] psc_interface_configs: Configurations for setting up PSC interfaces attached to the instance
2140
+ which are used for outbound connectivity. Currently, AlloyDB supports only 0 or 1 PSC interface.
2141
+ Structure is documented below.
2130
2142
  :param pulumi.Input[str] service_attachment_link: (Output)
2131
2143
  The service attachment created when Private Service Connect (PSC) is enabled for the instance.
2132
2144
  The name of the resource will be in the format of
@@ -2136,6 +2148,8 @@ class InstancePscInstanceConfigArgs:
2136
2148
  pulumi.set(__self__, "allowed_consumer_projects", allowed_consumer_projects)
2137
2149
  if psc_dns_name is not None:
2138
2150
  pulumi.set(__self__, "psc_dns_name", psc_dns_name)
2151
+ if psc_interface_configs is not None:
2152
+ pulumi.set(__self__, "psc_interface_configs", psc_interface_configs)
2139
2153
  if service_attachment_link is not None:
2140
2154
  pulumi.set(__self__, "service_attachment_link", service_attachment_link)
2141
2155
 
@@ -2166,6 +2180,20 @@ class InstancePscInstanceConfigArgs:
2166
2180
  def psc_dns_name(self, value: Optional[pulumi.Input[str]]):
2167
2181
  pulumi.set(self, "psc_dns_name", value)
2168
2182
 
2183
+ @property
2184
+ @pulumi.getter(name="pscInterfaceConfigs")
2185
+ def psc_interface_configs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['InstancePscInstanceConfigPscInterfaceConfigArgs']]]]:
2186
+ """
2187
+ Configurations for setting up PSC interfaces attached to the instance
2188
+ which are used for outbound connectivity. Currently, AlloyDB supports only 0 or 1 PSC interface.
2189
+ Structure is documented below.
2190
+ """
2191
+ return pulumi.get(self, "psc_interface_configs")
2192
+
2193
+ @psc_interface_configs.setter
2194
+ def psc_interface_configs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['InstancePscInstanceConfigPscInterfaceConfigArgs']]]]):
2195
+ pulumi.set(self, "psc_interface_configs", value)
2196
+
2169
2197
  @property
2170
2198
  @pulumi.getter(name="serviceAttachmentLink")
2171
2199
  def service_attachment_link(self) -> Optional[pulumi.Input[str]]:
@@ -2182,6 +2210,44 @@ class InstancePscInstanceConfigArgs:
2182
2210
  pulumi.set(self, "service_attachment_link", value)
2183
2211
 
2184
2212
 
2213
+ if not MYPY:
2214
+ class InstancePscInstanceConfigPscInterfaceConfigArgsDict(TypedDict):
2215
+ network_attachment_resource: NotRequired[pulumi.Input[str]]
2216
+ """
2217
+ The network attachment resource created in the consumer project to which the PSC interface will be linked.
2218
+ This is of the format: "projects/${CONSUMER_PROJECT}/regions/${REGION}/networkAttachments/${NETWORK_ATTACHMENT_NAME}".
2219
+ The network attachment must be in the same region as the instance.
2220
+ """
2221
+ elif False:
2222
+ InstancePscInstanceConfigPscInterfaceConfigArgsDict: TypeAlias = Mapping[str, Any]
2223
+
2224
+ @pulumi.input_type
2225
+ class InstancePscInstanceConfigPscInterfaceConfigArgs:
2226
+ def __init__(__self__, *,
2227
+ network_attachment_resource: Optional[pulumi.Input[str]] = None):
2228
+ """
2229
+ :param pulumi.Input[str] network_attachment_resource: The network attachment resource created in the consumer project to which the PSC interface will be linked.
2230
+ This is of the format: "projects/${CONSUMER_PROJECT}/regions/${REGION}/networkAttachments/${NETWORK_ATTACHMENT_NAME}".
2231
+ The network attachment must be in the same region as the instance.
2232
+ """
2233
+ if network_attachment_resource is not None:
2234
+ pulumi.set(__self__, "network_attachment_resource", network_attachment_resource)
2235
+
2236
+ @property
2237
+ @pulumi.getter(name="networkAttachmentResource")
2238
+ def network_attachment_resource(self) -> Optional[pulumi.Input[str]]:
2239
+ """
2240
+ The network attachment resource created in the consumer project to which the PSC interface will be linked.
2241
+ This is of the format: "projects/${CONSUMER_PROJECT}/regions/${REGION}/networkAttachments/${NETWORK_ATTACHMENT_NAME}".
2242
+ The network attachment must be in the same region as the instance.
2243
+ """
2244
+ return pulumi.get(self, "network_attachment_resource")
2245
+
2246
+ @network_attachment_resource.setter
2247
+ def network_attachment_resource(self, value: Optional[pulumi.Input[str]]):
2248
+ pulumi.set(self, "network_attachment_resource", value)
2249
+
2250
+
2185
2251
  if not MYPY:
2186
2252
  class InstanceQueryInsightsConfigArgsDict(TypedDict):
2187
2253
  query_plans_per_minute: NotRequired[pulumi.Input[int]]
@@ -1108,6 +1108,80 @@ class Cluster(pulumi.CustomResource):
1108
1108
  })
1109
1109
  project = gcp.organizations.get_project()
1110
1110
  ```
1111
+ ### Alloydb Cluster Before Upgrade
1112
+
1113
+ ```python
1114
+ import pulumi
1115
+ import pulumi_gcp as gcp
1116
+
1117
+ default_network = gcp.compute.Network("default", name="alloydb-network")
1118
+ default_cluster = gcp.alloydb.Cluster("default",
1119
+ cluster_id="alloydb-cluster",
1120
+ location="us-central1",
1121
+ network_config={
1122
+ "network": default_network.id,
1123
+ },
1124
+ database_version="POSTGRES_14",
1125
+ initial_user={
1126
+ "password": "alloydb-cluster",
1127
+ })
1128
+ private_ip_alloc = gcp.compute.GlobalAddress("private_ip_alloc",
1129
+ name="alloydb-cluster",
1130
+ address_type="INTERNAL",
1131
+ purpose="VPC_PEERING",
1132
+ prefix_length=16,
1133
+ network=default_network.id)
1134
+ vpc_connection = gcp.servicenetworking.Connection("vpc_connection",
1135
+ network=default_network.id,
1136
+ service="servicenetworking.googleapis.com",
1137
+ reserved_peering_ranges=[private_ip_alloc.name])
1138
+ default = gcp.alloydb.Instance("default",
1139
+ cluster=default_cluster.name,
1140
+ instance_id="alloydb-instance",
1141
+ instance_type="PRIMARY",
1142
+ machine_config={
1143
+ "cpu_count": 2,
1144
+ },
1145
+ opts = pulumi.ResourceOptions(depends_on=[vpc_connection]))
1146
+ project = gcp.organizations.get_project()
1147
+ ```
1148
+ ### Alloydb Cluster After Upgrade
1149
+
1150
+ ```python
1151
+ import pulumi
1152
+ import pulumi_gcp as gcp
1153
+
1154
+ default_network = gcp.compute.Network("default", name="alloydb-network")
1155
+ default_cluster = gcp.alloydb.Cluster("default",
1156
+ cluster_id="alloydb-cluster",
1157
+ location="us-central1",
1158
+ network_config={
1159
+ "network": default_network.id,
1160
+ },
1161
+ database_version="POSTGRES_15",
1162
+ initial_user={
1163
+ "password": "alloydb-cluster",
1164
+ })
1165
+ private_ip_alloc = gcp.compute.GlobalAddress("private_ip_alloc",
1166
+ name="alloydb-cluster",
1167
+ address_type="INTERNAL",
1168
+ purpose="VPC_PEERING",
1169
+ prefix_length=16,
1170
+ network=default_network.id)
1171
+ vpc_connection = gcp.servicenetworking.Connection("vpc_connection",
1172
+ network=default_network.id,
1173
+ service="servicenetworking.googleapis.com",
1174
+ reserved_peering_ranges=[private_ip_alloc.name])
1175
+ default = gcp.alloydb.Instance("default",
1176
+ cluster=default_cluster.name,
1177
+ instance_id="alloydb-instance",
1178
+ instance_type="PRIMARY",
1179
+ machine_config={
1180
+ "cpu_count": 2,
1181
+ },
1182
+ opts = pulumi.ResourceOptions(depends_on=[vpc_connection]))
1183
+ project = gcp.organizations.get_project()
1184
+ ```
1111
1185
  ### Alloydb Cluster Full
1112
1186
 
1113
1187
  ```python
@@ -1312,6 +1386,80 @@ class Cluster(pulumi.CustomResource):
1312
1386
  })
1313
1387
  project = gcp.organizations.get_project()
1314
1388
  ```
1389
+ ### Alloydb Cluster Before Upgrade
1390
+
1391
+ ```python
1392
+ import pulumi
1393
+ import pulumi_gcp as gcp
1394
+
1395
+ default_network = gcp.compute.Network("default", name="alloydb-network")
1396
+ default_cluster = gcp.alloydb.Cluster("default",
1397
+ cluster_id="alloydb-cluster",
1398
+ location="us-central1",
1399
+ network_config={
1400
+ "network": default_network.id,
1401
+ },
1402
+ database_version="POSTGRES_14",
1403
+ initial_user={
1404
+ "password": "alloydb-cluster",
1405
+ })
1406
+ private_ip_alloc = gcp.compute.GlobalAddress("private_ip_alloc",
1407
+ name="alloydb-cluster",
1408
+ address_type="INTERNAL",
1409
+ purpose="VPC_PEERING",
1410
+ prefix_length=16,
1411
+ network=default_network.id)
1412
+ vpc_connection = gcp.servicenetworking.Connection("vpc_connection",
1413
+ network=default_network.id,
1414
+ service="servicenetworking.googleapis.com",
1415
+ reserved_peering_ranges=[private_ip_alloc.name])
1416
+ default = gcp.alloydb.Instance("default",
1417
+ cluster=default_cluster.name,
1418
+ instance_id="alloydb-instance",
1419
+ instance_type="PRIMARY",
1420
+ machine_config={
1421
+ "cpu_count": 2,
1422
+ },
1423
+ opts = pulumi.ResourceOptions(depends_on=[vpc_connection]))
1424
+ project = gcp.organizations.get_project()
1425
+ ```
1426
+ ### Alloydb Cluster After Upgrade
1427
+
1428
+ ```python
1429
+ import pulumi
1430
+ import pulumi_gcp as gcp
1431
+
1432
+ default_network = gcp.compute.Network("default", name="alloydb-network")
1433
+ default_cluster = gcp.alloydb.Cluster("default",
1434
+ cluster_id="alloydb-cluster",
1435
+ location="us-central1",
1436
+ network_config={
1437
+ "network": default_network.id,
1438
+ },
1439
+ database_version="POSTGRES_15",
1440
+ initial_user={
1441
+ "password": "alloydb-cluster",
1442
+ })
1443
+ private_ip_alloc = gcp.compute.GlobalAddress("private_ip_alloc",
1444
+ name="alloydb-cluster",
1445
+ address_type="INTERNAL",
1446
+ purpose="VPC_PEERING",
1447
+ prefix_length=16,
1448
+ network=default_network.id)
1449
+ vpc_connection = gcp.servicenetworking.Connection("vpc_connection",
1450
+ network=default_network.id,
1451
+ service="servicenetworking.googleapis.com",
1452
+ reserved_peering_ranges=[private_ip_alloc.name])
1453
+ default = gcp.alloydb.Instance("default",
1454
+ cluster=default_cluster.name,
1455
+ instance_id="alloydb-instance",
1456
+ instance_type="PRIMARY",
1457
+ machine_config={
1458
+ "cpu_count": 2,
1459
+ },
1460
+ opts = pulumi.ResourceOptions(depends_on=[vpc_connection]))
1461
+ project = gcp.organizations.get_project()
1462
+ ```
1315
1463
  ### Alloydb Cluster Full
1316
1464
 
1317
1465
  ```python
@@ -50,10 +50,10 @@ class InstanceArgs:
50
50
  Please refer to the field `effective_annotations` for all of the annotations present on the resource.
51
51
  :param pulumi.Input[str] availability_type: 'Availability type of an Instance. Defaults to REGIONAL for both primary and read instances.
52
52
  Note that primary and read instances can have different availability types.
53
- Only READ_POOL instance supports ZONAL type. Users can't specify the zone for READ_POOL instance.
54
- Zone is automatically chosen from the list of zones in the region specified.
55
- Read pool of size 1 can only have zonal availability. Read pools with node count of 2 or more
56
- can have regional availability (nodes are present in 2 or more zones in a region).'
53
+ Primary instances can be either ZONAL or REGIONAL. Read Pool instances can also be either ZONAL or REGIONAL.
54
+ Read pools of size 1 can only have zonal availability. Read pools with a node count of 2 or more
55
+ can have regional availability (nodes are present in 2 or more zones in a region).
56
+ Possible values are: `AVAILABILITY_TYPE_UNSPECIFIED`, `ZONAL`, `REGIONAL`.'
57
57
  Possible values are: `AVAILABILITY_TYPE_UNSPECIFIED`, `ZONAL`, `REGIONAL`.
58
58
  :param pulumi.Input['InstanceClientConnectionConfigArgs'] client_connection_config: Client connection specific configurations.
59
59
  Structure is documented below.
@@ -163,10 +163,10 @@ class InstanceArgs:
163
163
  """
164
164
  'Availability type of an Instance. Defaults to REGIONAL for both primary and read instances.
165
165
  Note that primary and read instances can have different availability types.
166
- Only READ_POOL instance supports ZONAL type. Users can't specify the zone for READ_POOL instance.
167
- Zone is automatically chosen from the list of zones in the region specified.
168
- Read pool of size 1 can only have zonal availability. Read pools with node count of 2 or more
169
- can have regional availability (nodes are present in 2 or more zones in a region).'
166
+ Primary instances can be either ZONAL or REGIONAL. Read Pool instances can also be either ZONAL or REGIONAL.
167
+ Read pools of size 1 can only have zonal availability. Read pools with a node count of 2 or more
168
+ can have regional availability (nodes are present in 2 or more zones in a region).
169
+ Possible values are: `AVAILABILITY_TYPE_UNSPECIFIED`, `ZONAL`, `REGIONAL`.'
170
170
  Possible values are: `AVAILABILITY_TYPE_UNSPECIFIED`, `ZONAL`, `REGIONAL`.
171
171
  """
172
172
  return pulumi.get(self, "availability_type")
@@ -355,10 +355,10 @@ class _InstanceState:
355
355
  Please refer to the field `effective_annotations` for all of the annotations present on the resource.
356
356
  :param pulumi.Input[str] availability_type: 'Availability type of an Instance. Defaults to REGIONAL for both primary and read instances.
357
357
  Note that primary and read instances can have different availability types.
358
- Only READ_POOL instance supports ZONAL type. Users can't specify the zone for READ_POOL instance.
359
- Zone is automatically chosen from the list of zones in the region specified.
360
- Read pool of size 1 can only have zonal availability. Read pools with node count of 2 or more
361
- can have regional availability (nodes are present in 2 or more zones in a region).'
358
+ Primary instances can be either ZONAL or REGIONAL. Read Pool instances can also be either ZONAL or REGIONAL.
359
+ Read pools of size 1 can only have zonal availability. Read pools with a node count of 2 or more
360
+ can have regional availability (nodes are present in 2 or more zones in a region).
361
+ Possible values are: `AVAILABILITY_TYPE_UNSPECIFIED`, `ZONAL`, `REGIONAL`.'
362
362
  Possible values are: `AVAILABILITY_TYPE_UNSPECIFIED`, `ZONAL`, `REGIONAL`.
363
363
  :param pulumi.Input['InstanceClientConnectionConfigArgs'] client_connection_config: Client connection specific configurations.
364
364
  Structure is documented below.
@@ -480,10 +480,10 @@ class _InstanceState:
480
480
  """
481
481
  'Availability type of an Instance. Defaults to REGIONAL for both primary and read instances.
482
482
  Note that primary and read instances can have different availability types.
483
- Only READ_POOL instance supports ZONAL type. Users can't specify the zone for READ_POOL instance.
484
- Zone is automatically chosen from the list of zones in the region specified.
485
- Read pool of size 1 can only have zonal availability. Read pools with node count of 2 or more
486
- can have regional availability (nodes are present in 2 or more zones in a region).'
483
+ Primary instances can be either ZONAL or REGIONAL. Read Pool instances can also be either ZONAL or REGIONAL.
484
+ Read pools of size 1 can only have zonal availability. Read pools with a node count of 2 or more
485
+ can have regional availability (nodes are present in 2 or more zones in a region).
486
+ Possible values are: `AVAILABILITY_TYPE_UNSPECIFIED`, `ZONAL`, `REGIONAL`.'
487
487
  Possible values are: `AVAILABILITY_TYPE_UNSPECIFIED`, `ZONAL`, `REGIONAL`.
488
488
  """
489
489
  return pulumi.get(self, "availability_type")
@@ -966,10 +966,10 @@ class Instance(pulumi.CustomResource):
966
966
  Please refer to the field `effective_annotations` for all of the annotations present on the resource.
967
967
  :param pulumi.Input[str] availability_type: 'Availability type of an Instance. Defaults to REGIONAL for both primary and read instances.
968
968
  Note that primary and read instances can have different availability types.
969
- Only READ_POOL instance supports ZONAL type. Users can't specify the zone for READ_POOL instance.
970
- Zone is automatically chosen from the list of zones in the region specified.
971
- Read pool of size 1 can only have zonal availability. Read pools with node count of 2 or more
972
- can have regional availability (nodes are present in 2 or more zones in a region).'
969
+ Primary instances can be either ZONAL or REGIONAL. Read Pool instances can also be either ZONAL or REGIONAL.
970
+ Read pools of size 1 can only have zonal availability. Read pools with a node count of 2 or more
971
+ can have regional availability (nodes are present in 2 or more zones in a region).
972
+ Possible values are: `AVAILABILITY_TYPE_UNSPECIFIED`, `ZONAL`, `REGIONAL`.'
973
973
  Possible values are: `AVAILABILITY_TYPE_UNSPECIFIED`, `ZONAL`, `REGIONAL`.
974
974
  :param pulumi.Input[Union['InstanceClientConnectionConfigArgs', 'InstanceClientConnectionConfigArgsDict']] client_connection_config: Client connection specific configurations.
975
975
  Structure is documented below.
@@ -1250,10 +1250,10 @@ class Instance(pulumi.CustomResource):
1250
1250
  Please refer to the field `effective_annotations` for all of the annotations present on the resource.
1251
1251
  :param pulumi.Input[str] availability_type: 'Availability type of an Instance. Defaults to REGIONAL for both primary and read instances.
1252
1252
  Note that primary and read instances can have different availability types.
1253
- Only READ_POOL instance supports ZONAL type. Users can't specify the zone for READ_POOL instance.
1254
- Zone is automatically chosen from the list of zones in the region specified.
1255
- Read pool of size 1 can only have zonal availability. Read pools with node count of 2 or more
1256
- can have regional availability (nodes are present in 2 or more zones in a region).'
1253
+ Primary instances can be either ZONAL or REGIONAL. Read Pool instances can also be either ZONAL or REGIONAL.
1254
+ Read pools of size 1 can only have zonal availability. Read pools with a node count of 2 or more
1255
+ can have regional availability (nodes are present in 2 or more zones in a region).
1256
+ Possible values are: `AVAILABILITY_TYPE_UNSPECIFIED`, `ZONAL`, `REGIONAL`.'
1257
1257
  Possible values are: `AVAILABILITY_TYPE_UNSPECIFIED`, `ZONAL`, `REGIONAL`.
1258
1258
  :param pulumi.Input[Union['InstanceClientConnectionConfigArgs', 'InstanceClientConnectionConfigArgsDict']] client_connection_config: Client connection specific configurations.
1259
1259
  Structure is documented below.
@@ -1348,10 +1348,10 @@ class Instance(pulumi.CustomResource):
1348
1348
  """
1349
1349
  'Availability type of an Instance. Defaults to REGIONAL for both primary and read instances.
1350
1350
  Note that primary and read instances can have different availability types.
1351
- Only READ_POOL instance supports ZONAL type. Users can't specify the zone for READ_POOL instance.
1352
- Zone is automatically chosen from the list of zones in the region specified.
1353
- Read pool of size 1 can only have zonal availability. Read pools with node count of 2 or more
1354
- can have regional availability (nodes are present in 2 or more zones in a region).'
1351
+ Primary instances can be either ZONAL or REGIONAL. Read Pool instances can also be either ZONAL or REGIONAL.
1352
+ Read pools of size 1 can only have zonal availability. Read pools with a node count of 2 or more
1353
+ can have regional availability (nodes are present in 2 or more zones in a region).
1354
+ Possible values are: `AVAILABILITY_TYPE_UNSPECIFIED`, `ZONAL`, `REGIONAL`.'
1355
1355
  Possible values are: `AVAILABILITY_TYPE_UNSPECIFIED`, `ZONAL`, `REGIONAL`.
1356
1356
  """
1357
1357
  return pulumi.get(self, "availability_type")