pulumi-gcp 8.21.0a1741183435__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 (75) hide show
  1. pulumi_gcp/__init__.py +32 -0
  2. pulumi_gcp/alloydb/_inputs.py +66 -0
  3. pulumi_gcp/alloydb/outputs.py +95 -0
  4. pulumi_gcp/backupdisasterrecovery/_inputs.py +3 -3
  5. pulumi_gcp/backupdisasterrecovery/outputs.py +4 -4
  6. pulumi_gcp/certificatemanager/certificate.py +53 -7
  7. pulumi_gcp/certificatemanager/outputs.py +8 -2
  8. pulumi_gcp/compute/__init__.py +1 -0
  9. pulumi_gcp/compute/_inputs.py +600 -17
  10. pulumi_gcp/compute/backend_service.py +195 -7
  11. pulumi_gcp/compute/disk.py +108 -0
  12. pulumi_gcp/compute/firewall_policy_association.py +28 -2
  13. pulumi_gcp/compute/get_backend_service.py +12 -1
  14. pulumi_gcp/compute/get_disk.py +23 -1
  15. pulumi_gcp/compute/get_region_disk.py +23 -1
  16. pulumi_gcp/compute/get_region_ssl_policy.py +203 -0
  17. pulumi_gcp/compute/outputs.py +623 -23
  18. pulumi_gcp/compute/region_backend_service.py +193 -7
  19. pulumi_gcp/compute/region_disk.py +114 -0
  20. pulumi_gcp/compute/shared_vpc_service_project.py +0 -4
  21. pulumi_gcp/compute/subnetwork.py +147 -0
  22. pulumi_gcp/container/_inputs.py +3 -3
  23. pulumi_gcp/container/outputs.py +4 -4
  24. pulumi_gcp/datastream/_inputs.py +273 -0
  25. pulumi_gcp/datastream/connection_profile.py +54 -2
  26. pulumi_gcp/datastream/outputs.py +224 -0
  27. pulumi_gcp/eventarc/__init__.py +1 -0
  28. pulumi_gcp/eventarc/_inputs.py +40 -0
  29. pulumi_gcp/eventarc/channel.py +85 -93
  30. pulumi_gcp/eventarc/google_api_source.py +997 -0
  31. pulumi_gcp/eventarc/outputs.py +41 -0
  32. pulumi_gcp/firebase/data_connect_service.py +40 -2
  33. pulumi_gcp/iam/__init__.py +2 -0
  34. pulumi_gcp/iam/_inputs.py +51 -18
  35. pulumi_gcp/iam/folders_policy_binding.py +10 -26
  36. pulumi_gcp/iam/oauth_client.py +979 -0
  37. pulumi_gcp/iam/oauth_client_credential.py +641 -0
  38. pulumi_gcp/iam/organizations_policy_binding.py +8 -24
  39. pulumi_gcp/iam/outputs.py +34 -12
  40. pulumi_gcp/iam/principal_access_boundary_policy.py +58 -22
  41. pulumi_gcp/iam/projects_policy_binding.py +8 -24
  42. pulumi_gcp/kms/crypto_key_version.py +14 -7
  43. pulumi_gcp/monitoring/_inputs.py +15 -18
  44. pulumi_gcp/monitoring/alert_policy.py +46 -0
  45. pulumi_gcp/monitoring/outputs.py +10 -12
  46. pulumi_gcp/networksecurity/__init__.py +1 -0
  47. pulumi_gcp/networksecurity/_inputs.py +30 -18
  48. pulumi_gcp/networksecurity/backend_authentication_config.py +847 -0
  49. pulumi_gcp/networksecurity/intercept_deployment.py +178 -94
  50. pulumi_gcp/networksecurity/intercept_deployment_group.py +161 -77
  51. pulumi_gcp/networksecurity/intercept_endpoint_group.py +161 -66
  52. pulumi_gcp/networksecurity/intercept_endpoint_group_association.py +137 -80
  53. pulumi_gcp/networksecurity/mirroring_deployment.py +178 -94
  54. pulumi_gcp/networksecurity/mirroring_deployment_group.py +161 -77
  55. pulumi_gcp/networksecurity/mirroring_endpoint_group.py +161 -80
  56. pulumi_gcp/networksecurity/mirroring_endpoint_group_association.py +137 -105
  57. pulumi_gcp/networksecurity/outputs.py +20 -12
  58. pulumi_gcp/networkservices/endpoint_policy.py +12 -0
  59. pulumi_gcp/networkservices/grpc_route.py +12 -0
  60. pulumi_gcp/networkservices/http_route.py +16 -0
  61. pulumi_gcp/networkservices/mesh.py +16 -0
  62. pulumi_gcp/networkservices/service_binding.py +14 -0
  63. pulumi_gcp/networkservices/tcp_route.py +16 -0
  64. pulumi_gcp/networkservices/tls_route.py +12 -0
  65. pulumi_gcp/pulumi-plugin.json +1 -1
  66. pulumi_gcp/tpu/_inputs.py +21 -1
  67. pulumi_gcp/tpu/outputs.py +13 -1
  68. pulumi_gcp/tpu/v2_vm.py +2 -0
  69. pulumi_gcp/vmwareengine/_inputs.py +6 -0
  70. pulumi_gcp/vmwareengine/outputs.py +8 -0
  71. pulumi_gcp/workstations/workstation_cluster.py +137 -1
  72. {pulumi_gcp-8.21.0a1741183435.dist-info → pulumi_gcp-8.22.0.dist-info}/METADATA +1 -1
  73. {pulumi_gcp-8.21.0a1741183435.dist-info → pulumi_gcp-8.22.0.dist-info}/RECORD +75 -70
  74. {pulumi_gcp-8.21.0a1741183435.dist-info → pulumi_gcp-8.22.0.dist-info}/WHEEL +1 -1
  75. {pulumi_gcp-8.21.0a1741183435.dist-info → pulumi_gcp-8.22.0.dist-info}/top_level.txt +0 -0
pulumi_gcp/__init__.py CHANGED
@@ -4946,6 +4946,14 @@ _utilities.register(
4946
4946
  "gcp:eventarc/channel:Channel": "Channel"
4947
4947
  }
4948
4948
  },
4949
+ {
4950
+ "pkg": "gcp",
4951
+ "mod": "eventarc/googleApiSource",
4952
+ "fqn": "pulumi_gcp.eventarc",
4953
+ "classes": {
4954
+ "gcp:eventarc/googleApiSource:GoogleApiSource": "GoogleApiSource"
4955
+ }
4956
+ },
4949
4957
  {
4950
4958
  "pkg": "gcp",
4951
4959
  "mod": "eventarc/googleChannelConfig",
@@ -5818,6 +5826,22 @@ _utilities.register(
5818
5826
  "gcp:iam/foldersPolicyBinding:FoldersPolicyBinding": "FoldersPolicyBinding"
5819
5827
  }
5820
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
+ },
5821
5845
  {
5822
5846
  "pkg": "gcp",
5823
5847
  "mod": "iam/organizationsPolicyBinding",
@@ -6882,6 +6906,14 @@ _utilities.register(
6882
6906
  "gcp:networksecurity/authzPolicy:AuthzPolicy": "AuthzPolicy"
6883
6907
  }
6884
6908
  },
6909
+ {
6910
+ "pkg": "gcp",
6911
+ "mod": "networksecurity/backendAuthenticationConfig",
6912
+ "fqn": "pulumi_gcp.networksecurity",
6913
+ "classes": {
6914
+ "gcp:networksecurity/backendAuthenticationConfig:BackendAuthenticationConfig": "BackendAuthenticationConfig"
6915
+ }
6916
+ },
6885
6917
  {
6886
6918
  "pkg": "gcp",
6887
6919
  "mod": "networksecurity/clientTlsPolicy",
@@ -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]]
@@ -50,6 +50,7 @@ __all__ = [
50
50
  'InstanceNetworkConfigAuthorizedExternalNetwork',
51
51
  'InstanceObservabilityConfig',
52
52
  'InstancePscInstanceConfig',
53
+ 'InstancePscInstanceConfigPscInterfaceConfig',
53
54
  'InstanceQueryInsightsConfig',
54
55
  'InstanceReadPoolConfig',
55
56
  'GetClusterAutomatedBackupPolicyResult',
@@ -83,6 +84,7 @@ __all__ = [
83
84
  'GetInstanceNetworkConfigAuthorizedExternalNetworkResult',
84
85
  'GetInstanceObservabilityConfigResult',
85
86
  'GetInstancePscInstanceConfigResult',
87
+ 'GetInstancePscInstanceConfigPscInterfaceConfigResult',
86
88
  'GetInstanceQueryInsightsConfigResult',
87
89
  'GetInstanceReadPoolConfigResult',
88
90
  'GetLocationsLocationResult',
@@ -1843,6 +1845,8 @@ class InstancePscInstanceConfig(dict):
1843
1845
  suggest = "allowed_consumer_projects"
1844
1846
  elif key == "pscDnsName":
1845
1847
  suggest = "psc_dns_name"
1848
+ elif key == "pscInterfaceConfigs":
1849
+ suggest = "psc_interface_configs"
1846
1850
  elif key == "serviceAttachmentLink":
1847
1851
  suggest = "service_attachment_link"
1848
1852
 
@@ -1860,6 +1864,7 @@ class InstancePscInstanceConfig(dict):
1860
1864
  def __init__(__self__, *,
1861
1865
  allowed_consumer_projects: Optional[Sequence[str]] = None,
1862
1866
  psc_dns_name: Optional[str] = None,
1867
+ psc_interface_configs: Optional[Sequence['outputs.InstancePscInstanceConfigPscInterfaceConfig']] = None,
1863
1868
  service_attachment_link: Optional[str] = None):
1864
1869
  """
1865
1870
  :param Sequence[str] allowed_consumer_projects: List of consumer projects that are allowed to create PSC endpoints to service-attachments to this instance.
@@ -1867,6 +1872,9 @@ class InstancePscInstanceConfig(dict):
1867
1872
  :param str psc_dns_name: (Output)
1868
1873
  The DNS name of the instance for PSC connectivity.
1869
1874
  Name convention: <uid>.<uid>.<region>.alloydb-psc.goog
1875
+ :param Sequence['InstancePscInstanceConfigPscInterfaceConfigArgs'] psc_interface_configs: Configurations for setting up PSC interfaces attached to the instance
1876
+ which are used for outbound connectivity. Currently, AlloyDB supports only 0 or 1 PSC interface.
1877
+ Structure is documented below.
1870
1878
  :param str service_attachment_link: (Output)
1871
1879
  The service attachment created when Private Service Connect (PSC) is enabled for the instance.
1872
1880
  The name of the resource will be in the format of
@@ -1876,6 +1884,8 @@ class InstancePscInstanceConfig(dict):
1876
1884
  pulumi.set(__self__, "allowed_consumer_projects", allowed_consumer_projects)
1877
1885
  if psc_dns_name is not None:
1878
1886
  pulumi.set(__self__, "psc_dns_name", psc_dns_name)
1887
+ if psc_interface_configs is not None:
1888
+ pulumi.set(__self__, "psc_interface_configs", psc_interface_configs)
1879
1889
  if service_attachment_link is not None:
1880
1890
  pulumi.set(__self__, "service_attachment_link", service_attachment_link)
1881
1891
 
@@ -1898,6 +1908,16 @@ class InstancePscInstanceConfig(dict):
1898
1908
  """
1899
1909
  return pulumi.get(self, "psc_dns_name")
1900
1910
 
1911
+ @property
1912
+ @pulumi.getter(name="pscInterfaceConfigs")
1913
+ def psc_interface_configs(self) -> Optional[Sequence['outputs.InstancePscInstanceConfigPscInterfaceConfig']]:
1914
+ """
1915
+ Configurations for setting up PSC interfaces attached to the instance
1916
+ which are used for outbound connectivity. Currently, AlloyDB supports only 0 or 1 PSC interface.
1917
+ Structure is documented below.
1918
+ """
1919
+ return pulumi.get(self, "psc_interface_configs")
1920
+
1901
1921
  @property
1902
1922
  @pulumi.getter(name="serviceAttachmentLink")
1903
1923
  def service_attachment_link(self) -> Optional[str]:
@@ -1910,6 +1930,46 @@ class InstancePscInstanceConfig(dict):
1910
1930
  return pulumi.get(self, "service_attachment_link")
1911
1931
 
1912
1932
 
1933
+ @pulumi.output_type
1934
+ class InstancePscInstanceConfigPscInterfaceConfig(dict):
1935
+ @staticmethod
1936
+ def __key_warning(key: str):
1937
+ suggest = None
1938
+ if key == "networkAttachmentResource":
1939
+ suggest = "network_attachment_resource"
1940
+
1941
+ if suggest:
1942
+ pulumi.log.warn(f"Key '{key}' not found in InstancePscInstanceConfigPscInterfaceConfig. Access the value via the '{suggest}' property getter instead.")
1943
+
1944
+ def __getitem__(self, key: str) -> Any:
1945
+ InstancePscInstanceConfigPscInterfaceConfig.__key_warning(key)
1946
+ return super().__getitem__(key)
1947
+
1948
+ def get(self, key: str, default = None) -> Any:
1949
+ InstancePscInstanceConfigPscInterfaceConfig.__key_warning(key)
1950
+ return super().get(key, default)
1951
+
1952
+ def __init__(__self__, *,
1953
+ network_attachment_resource: Optional[str] = None):
1954
+ """
1955
+ :param str network_attachment_resource: The network attachment resource created in the consumer project to which the PSC interface will be linked.
1956
+ This is of the format: "projects/${CONSUMER_PROJECT}/regions/${REGION}/networkAttachments/${NETWORK_ATTACHMENT_NAME}".
1957
+ The network attachment must be in the same region as the instance.
1958
+ """
1959
+ if network_attachment_resource is not None:
1960
+ pulumi.set(__self__, "network_attachment_resource", network_attachment_resource)
1961
+
1962
+ @property
1963
+ @pulumi.getter(name="networkAttachmentResource")
1964
+ def network_attachment_resource(self) -> Optional[str]:
1965
+ """
1966
+ The network attachment resource created in the consumer project to which the PSC interface will be linked.
1967
+ This is of the format: "projects/${CONSUMER_PROJECT}/regions/${REGION}/networkAttachments/${NETWORK_ATTACHMENT_NAME}".
1968
+ The network attachment must be in the same region as the instance.
1969
+ """
1970
+ return pulumi.get(self, "network_attachment_resource")
1971
+
1972
+
1913
1973
  @pulumi.output_type
1914
1974
  class InstanceQueryInsightsConfig(dict):
1915
1975
  @staticmethod
@@ -3039,18 +3099,22 @@ class GetInstancePscInstanceConfigResult(dict):
3039
3099
  def __init__(__self__, *,
3040
3100
  allowed_consumer_projects: Sequence[str],
3041
3101
  psc_dns_name: str,
3102
+ psc_interface_configs: Sequence['outputs.GetInstancePscInstanceConfigPscInterfaceConfigResult'],
3042
3103
  service_attachment_link: str):
3043
3104
  """
3044
3105
  :param Sequence[str] allowed_consumer_projects: List of consumer projects that are allowed to create PSC endpoints to service-attachments to this instance.
3045
3106
  These should be specified as project numbers only.
3046
3107
  :param str psc_dns_name: The DNS name of the instance for PSC connectivity.
3047
3108
  Name convention: <uid>.<uid>.<region>.alloydb-psc.goog
3109
+ :param Sequence['GetInstancePscInstanceConfigPscInterfaceConfigArgs'] psc_interface_configs: Configurations for setting up PSC interfaces attached to the instance
3110
+ which are used for outbound connectivity. Currently, AlloyDB supports only 0 or 1 PSC interface.
3048
3111
  :param str service_attachment_link: The service attachment created when Private Service Connect (PSC) is enabled for the instance.
3049
3112
  The name of the resource will be in the format of
3050
3113
  'projects/<alloydb-tenant-project-number>/regions/<region-name>/serviceAttachments/<service-attachment-name>'
3051
3114
  """
3052
3115
  pulumi.set(__self__, "allowed_consumer_projects", allowed_consumer_projects)
3053
3116
  pulumi.set(__self__, "psc_dns_name", psc_dns_name)
3117
+ pulumi.set(__self__, "psc_interface_configs", psc_interface_configs)
3054
3118
  pulumi.set(__self__, "service_attachment_link", service_attachment_link)
3055
3119
 
3056
3120
  @property
@@ -3071,6 +3135,15 @@ class GetInstancePscInstanceConfigResult(dict):
3071
3135
  """
3072
3136
  return pulumi.get(self, "psc_dns_name")
3073
3137
 
3138
+ @property
3139
+ @pulumi.getter(name="pscInterfaceConfigs")
3140
+ def psc_interface_configs(self) -> Sequence['outputs.GetInstancePscInstanceConfigPscInterfaceConfigResult']:
3141
+ """
3142
+ Configurations for setting up PSC interfaces attached to the instance
3143
+ which are used for outbound connectivity. Currently, AlloyDB supports only 0 or 1 PSC interface.
3144
+ """
3145
+ return pulumi.get(self, "psc_interface_configs")
3146
+
3074
3147
  @property
3075
3148
  @pulumi.getter(name="serviceAttachmentLink")
3076
3149
  def service_attachment_link(self) -> str:
@@ -3082,6 +3155,28 @@ class GetInstancePscInstanceConfigResult(dict):
3082
3155
  return pulumi.get(self, "service_attachment_link")
3083
3156
 
3084
3157
 
3158
+ @pulumi.output_type
3159
+ class GetInstancePscInstanceConfigPscInterfaceConfigResult(dict):
3160
+ def __init__(__self__, *,
3161
+ network_attachment_resource: str):
3162
+ """
3163
+ :param str network_attachment_resource: The network attachment resource created in the consumer project to which the PSC interface will be linked.
3164
+ This is of the format: "projects/${CONSUMER_PROJECT}/regions/${REGION}/networkAttachments/${NETWORK_ATTACHMENT_NAME}".
3165
+ The network attachment must be in the same region as the instance.
3166
+ """
3167
+ pulumi.set(__self__, "network_attachment_resource", network_attachment_resource)
3168
+
3169
+ @property
3170
+ @pulumi.getter(name="networkAttachmentResource")
3171
+ def network_attachment_resource(self) -> str:
3172
+ """
3173
+ The network attachment resource created in the consumer project to which the PSC interface will be linked.
3174
+ This is of the format: "projects/${CONSUMER_PROJECT}/regions/${REGION}/networkAttachments/${NETWORK_ATTACHMENT_NAME}".
3175
+ The network attachment must be in the same region as the instance.
3176
+ """
3177
+ return pulumi.get(self, "network_attachment_resource")
3178
+
3179
+
3085
3180
  @pulumi.output_type
3086
3181
  class GetInstanceQueryInsightsConfigResult(dict):
3087
3182
  def __init__(__self__, *,
@@ -273,7 +273,7 @@ if not MYPY:
273
273
  days_of_weeks: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
274
274
  """
275
275
  Specifies days of week like MONDAY or TUESDAY, on which jobs will run. This is required for `recurrence_type`, `WEEKLY` and is not applicable otherwise.
276
- Each value may be one of: `DAY_OF_WEEK_UNSPECIFIED`, `MONDAY`, `TUESDAY`, `WEDNESDAY`, `THURSDAY`, `FRIDAY`, `SATURDAY`.
276
+ Each value may be one of: `DAY_OF_WEEK_UNSPECIFIED`, `MONDAY`, `TUESDAY`, `WEDNESDAY`, `THURSDAY`, `FRIDAY`, `SATURDAY`, `SUNDAY`.
277
277
  """
278
278
  hourly_frequency: NotRequired[pulumi.Input[int]]
279
279
  """
@@ -313,7 +313,7 @@ class BackupPlanBackupRuleStandardScheduleArgs:
313
313
  Structure is documented below.
314
314
  :param pulumi.Input[Sequence[pulumi.Input[int]]] days_of_months: Specifies days of months like 1, 5, or 14 on which jobs will run.
315
315
  :param pulumi.Input[Sequence[pulumi.Input[str]]] days_of_weeks: Specifies days of week like MONDAY or TUESDAY, on which jobs will run. This is required for `recurrence_type`, `WEEKLY` and is not applicable otherwise.
316
- Each value may be one of: `DAY_OF_WEEK_UNSPECIFIED`, `MONDAY`, `TUESDAY`, `WEDNESDAY`, `THURSDAY`, `FRIDAY`, `SATURDAY`.
316
+ Each value may be one of: `DAY_OF_WEEK_UNSPECIFIED`, `MONDAY`, `TUESDAY`, `WEDNESDAY`, `THURSDAY`, `FRIDAY`, `SATURDAY`, `SUNDAY`.
317
317
  :param pulumi.Input[int] hourly_frequency: Specifies frequency for hourly backups. An hourly frequency of 2 means jobs will run every 2 hours from start time till end time defined.
318
318
  This is required for `recurrence_type`, `HOURLY` and is not applicable otherwise.
319
319
  :param pulumi.Input[Sequence[pulumi.Input[str]]] months: Specifies values of months
@@ -392,7 +392,7 @@ class BackupPlanBackupRuleStandardScheduleArgs:
392
392
  def days_of_weeks(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
393
393
  """
394
394
  Specifies days of week like MONDAY or TUESDAY, on which jobs will run. This is required for `recurrence_type`, `WEEKLY` and is not applicable otherwise.
395
- Each value may be one of: `DAY_OF_WEEK_UNSPECIFIED`, `MONDAY`, `TUESDAY`, `WEDNESDAY`, `THURSDAY`, `FRIDAY`, `SATURDAY`.
395
+ Each value may be one of: `DAY_OF_WEEK_UNSPECIFIED`, `MONDAY`, `TUESDAY`, `WEDNESDAY`, `THURSDAY`, `FRIDAY`, `SATURDAY`, `SUNDAY`.
396
396
  """
397
397
  return pulumi.get(self, "days_of_weeks")
398
398
 
@@ -260,7 +260,7 @@ class BackupPlanBackupRuleStandardSchedule(dict):
260
260
  Structure is documented below.
261
261
  :param Sequence[int] days_of_months: Specifies days of months like 1, 5, or 14 on which jobs will run.
262
262
  :param Sequence[str] days_of_weeks: Specifies days of week like MONDAY or TUESDAY, on which jobs will run. This is required for `recurrence_type`, `WEEKLY` and is not applicable otherwise.
263
- Each value may be one of: `DAY_OF_WEEK_UNSPECIFIED`, `MONDAY`, `TUESDAY`, `WEDNESDAY`, `THURSDAY`, `FRIDAY`, `SATURDAY`.
263
+ Each value may be one of: `DAY_OF_WEEK_UNSPECIFIED`, `MONDAY`, `TUESDAY`, `WEDNESDAY`, `THURSDAY`, `FRIDAY`, `SATURDAY`, `SUNDAY`.
264
264
  :param int hourly_frequency: Specifies frequency for hourly backups. An hourly frequency of 2 means jobs will run every 2 hours from start time till end time defined.
265
265
  This is required for `recurrence_type`, `HOURLY` and is not applicable otherwise.
266
266
  :param Sequence[str] months: Specifies values of months
@@ -323,7 +323,7 @@ class BackupPlanBackupRuleStandardSchedule(dict):
323
323
  def days_of_weeks(self) -> Optional[Sequence[str]]:
324
324
  """
325
325
  Specifies days of week like MONDAY or TUESDAY, on which jobs will run. This is required for `recurrence_type`, `WEEKLY` and is not applicable otherwise.
326
- Each value may be one of: `DAY_OF_WEEK_UNSPECIFIED`, `MONDAY`, `TUESDAY`, `WEDNESDAY`, `THURSDAY`, `FRIDAY`, `SATURDAY`.
326
+ Each value may be one of: `DAY_OF_WEEK_UNSPECIFIED`, `MONDAY`, `TUESDAY`, `WEDNESDAY`, `THURSDAY`, `FRIDAY`, `SATURDAY`, `SUNDAY`.
327
327
  """
328
328
  return pulumi.get(self, "days_of_weeks")
329
329
 
@@ -751,7 +751,7 @@ class GetBackupPlanBackupRuleStandardScheduleResult(dict):
751
751
  :param Sequence['GetBackupPlanBackupRuleStandardScheduleBackupWindowArgs'] backup_windows: A BackupWindow defines the window of the day during which backup jobs will run. Jobs are queued at the beginning of the window and will be marked as
752
752
  'NOT_RUN' if they do not start by the end of the window.
753
753
  :param Sequence[int] days_of_months: Specifies days of months like 1, 5, or 14 on which jobs will run.
754
- :param Sequence[str] days_of_weeks: Specifies days of week like MONDAY or TUESDAY, on which jobs will run. This is required for 'recurrence_type', 'WEEKLY' and is not applicable otherwise. Possible values: ["DAY_OF_WEEK_UNSPECIFIED", "MONDAY", "TUESDAY", "WEDNESDAY", "THURSDAY", "FRIDAY", "SATURDAY"]
754
+ :param Sequence[str] days_of_weeks: Specifies days of week like MONDAY or TUESDAY, on which jobs will run. This is required for 'recurrence_type', 'WEEKLY' and is not applicable otherwise. Possible values: ["DAY_OF_WEEK_UNSPECIFIED", "MONDAY", "TUESDAY", "WEDNESDAY", "THURSDAY", "FRIDAY", "SATURDAY", "SUNDAY"]
755
755
  :param int hourly_frequency: Specifies frequency for hourly backups. An hourly frequency of 2 means jobs will run every 2 hours from start time till end time defined.
756
756
  This is required for 'recurrence_type', 'HOURLY' and is not applicable otherwise.
757
757
  :param Sequence[str] months: Specifies values of months Possible values: ["MONTH_UNSPECIFIED", "JANUARY", "FEBRUARY", "MARCH", "APRIL", "MAY", "JUNE", "JULY", "AUGUST", "SEPTEMBER", "OCTOBER", "NOVEMBER", "DECEMBER"]
@@ -789,7 +789,7 @@ class GetBackupPlanBackupRuleStandardScheduleResult(dict):
789
789
  @pulumi.getter(name="daysOfWeeks")
790
790
  def days_of_weeks(self) -> Sequence[str]:
791
791
  """
792
- Specifies days of week like MONDAY or TUESDAY, on which jobs will run. This is required for 'recurrence_type', 'WEEKLY' and is not applicable otherwise. Possible values: ["DAY_OF_WEEK_UNSPECIFIED", "MONDAY", "TUESDAY", "WEDNESDAY", "THURSDAY", "FRIDAY", "SATURDAY"]
792
+ Specifies days of week like MONDAY or TUESDAY, on which jobs will run. This is required for 'recurrence_type', 'WEEKLY' and is not applicable otherwise. Possible values: ["DAY_OF_WEEK_UNSPECIFIED", "MONDAY", "TUESDAY", "WEDNESDAY", "THURSDAY", "FRIDAY", "SATURDAY", "SUNDAY"]
793
793
  """
794
794
  return pulumi.get(self, "days_of_weeks")
795
795
 
@@ -54,7 +54,9 @@ class CertificateArgs:
54
54
  EDGE_CACHE: Certificates with scope EDGE_CACHE are special-purposed certificates, served from Edge Points of Presence.
55
55
  See https://cloud.google.com/vpc/docs/edge-locations.
56
56
  ALL_REGIONS: Certificates with ALL_REGIONS scope are served from all GCP regions (You can only use ALL_REGIONS with global certs).
57
- See https://cloud.google.com/compute/docs/regions-zones
57
+ See https://cloud.google.com/compute/docs/regions-zones.
58
+ CLIENT_AUTH: Certificates with CLIENT_AUTH scope are used by a load balancer (TLS client) to be presented to the backend (TLS server) when backend mTLS is configured.
59
+ See https://cloud.google.com/load-balancing/docs/backend-authenticated-tls-backend-mtls#client-certificate.
58
60
  :param pulumi.Input['CertificateSelfManagedArgs'] self_managed: Certificate data for a SelfManaged Certificate.
59
61
  SelfManaged Certificates are uploaded by the user. Updating such
60
62
  certificates before they expire remains the user's responsibility.
@@ -170,7 +172,9 @@ class CertificateArgs:
170
172
  EDGE_CACHE: Certificates with scope EDGE_CACHE are special-purposed certificates, served from Edge Points of Presence.
171
173
  See https://cloud.google.com/vpc/docs/edge-locations.
172
174
  ALL_REGIONS: Certificates with ALL_REGIONS scope are served from all GCP regions (You can only use ALL_REGIONS with global certs).
173
- See https://cloud.google.com/compute/docs/regions-zones
175
+ See https://cloud.google.com/compute/docs/regions-zones.
176
+ CLIENT_AUTH: Certificates with CLIENT_AUTH scope are used by a load balancer (TLS client) to be presented to the backend (TLS server) when backend mTLS is configured.
177
+ See https://cloud.google.com/load-balancing/docs/backend-authenticated-tls-backend-mtls#client-certificate.
174
178
  """
175
179
  return pulumi.get(self, "scope")
176
180
 
@@ -237,7 +241,9 @@ class _CertificateState:
237
241
  EDGE_CACHE: Certificates with scope EDGE_CACHE are special-purposed certificates, served from Edge Points of Presence.
238
242
  See https://cloud.google.com/vpc/docs/edge-locations.
239
243
  ALL_REGIONS: Certificates with ALL_REGIONS scope are served from all GCP regions (You can only use ALL_REGIONS with global certs).
240
- See https://cloud.google.com/compute/docs/regions-zones
244
+ See https://cloud.google.com/compute/docs/regions-zones.
245
+ CLIENT_AUTH: Certificates with CLIENT_AUTH scope are used by a load balancer (TLS client) to be presented to the backend (TLS server) when backend mTLS is configured.
246
+ See https://cloud.google.com/load-balancing/docs/backend-authenticated-tls-backend-mtls#client-certificate.
241
247
  :param pulumi.Input['CertificateSelfManagedArgs'] self_managed: Certificate data for a SelfManaged Certificate.
242
248
  SelfManaged Certificates are uploaded by the user. Updating such
243
249
  certificates before they expire remains the user's responsibility.
@@ -396,7 +402,9 @@ class _CertificateState:
396
402
  EDGE_CACHE: Certificates with scope EDGE_CACHE are special-purposed certificates, served from Edge Points of Presence.
397
403
  See https://cloud.google.com/vpc/docs/edge-locations.
398
404
  ALL_REGIONS: Certificates with ALL_REGIONS scope are served from all GCP regions (You can only use ALL_REGIONS with global certs).
399
- See https://cloud.google.com/compute/docs/regions-zones
405
+ See https://cloud.google.com/compute/docs/regions-zones.
406
+ CLIENT_AUTH: Certificates with CLIENT_AUTH scope are used by a load balancer (TLS client) to be presented to the backend (TLS server) when backend mTLS is configured.
407
+ See https://cloud.google.com/load-balancing/docs/backend-authenticated-tls-backend-mtls#client-certificate.
400
408
  """
401
409
  return pulumi.get(self, "scope")
402
410
 
@@ -699,6 +707,22 @@ class Certificate(pulumi.CustomResource):
699
707
  "dns_authorizations": [instance.id],
700
708
  })
701
709
  ```
710
+ ### Certificate Manager Client Auth Certificate
711
+
712
+ ```python
713
+ import pulumi
714
+ import pulumi_gcp as gcp
715
+ import pulumi_std as std
716
+
717
+ default = gcp.certificatemanager.Certificate("default",
718
+ name="client-auth-cert",
719
+ description="Global cert",
720
+ scope="CLIENT_AUTH",
721
+ self_managed={
722
+ "pem_certificate": std.file(input="test-fixtures/cert.pem").result,
723
+ "pem_private_key": std.file(input="test-fixtures/private-key.pem").result,
724
+ })
725
+ ```
702
726
 
703
727
  ## Import
704
728
 
@@ -749,7 +773,9 @@ class Certificate(pulumi.CustomResource):
749
773
  EDGE_CACHE: Certificates with scope EDGE_CACHE are special-purposed certificates, served from Edge Points of Presence.
750
774
  See https://cloud.google.com/vpc/docs/edge-locations.
751
775
  ALL_REGIONS: Certificates with ALL_REGIONS scope are served from all GCP regions (You can only use ALL_REGIONS with global certs).
752
- See https://cloud.google.com/compute/docs/regions-zones
776
+ See https://cloud.google.com/compute/docs/regions-zones.
777
+ CLIENT_AUTH: Certificates with CLIENT_AUTH scope are used by a load balancer (TLS client) to be presented to the backend (TLS server) when backend mTLS is configured.
778
+ See https://cloud.google.com/load-balancing/docs/backend-authenticated-tls-backend-mtls#client-certificate.
753
779
  :param pulumi.Input[Union['CertificateSelfManagedArgs', 'CertificateSelfManagedArgsDict']] self_managed: Certificate data for a SelfManaged Certificate.
754
780
  SelfManaged Certificates are uploaded by the user. Updating such
755
781
  certificates before they expire remains the user's responsibility.
@@ -1026,6 +1052,22 @@ class Certificate(pulumi.CustomResource):
1026
1052
  "dns_authorizations": [instance.id],
1027
1053
  })
1028
1054
  ```
1055
+ ### Certificate Manager Client Auth Certificate
1056
+
1057
+ ```python
1058
+ import pulumi
1059
+ import pulumi_gcp as gcp
1060
+ import pulumi_std as std
1061
+
1062
+ default = gcp.certificatemanager.Certificate("default",
1063
+ name="client-auth-cert",
1064
+ description="Global cert",
1065
+ scope="CLIENT_AUTH",
1066
+ self_managed={
1067
+ "pem_certificate": std.file(input="test-fixtures/cert.pem").result,
1068
+ "pem_private_key": std.file(input="test-fixtures/private-key.pem").result,
1069
+ })
1070
+ ```
1029
1071
 
1030
1072
  ## Import
1031
1073
 
@@ -1151,7 +1193,9 @@ class Certificate(pulumi.CustomResource):
1151
1193
  EDGE_CACHE: Certificates with scope EDGE_CACHE are special-purposed certificates, served from Edge Points of Presence.
1152
1194
  See https://cloud.google.com/vpc/docs/edge-locations.
1153
1195
  ALL_REGIONS: Certificates with ALL_REGIONS scope are served from all GCP regions (You can only use ALL_REGIONS with global certs).
1154
- See https://cloud.google.com/compute/docs/regions-zones
1196
+ See https://cloud.google.com/compute/docs/regions-zones.
1197
+ CLIENT_AUTH: Certificates with CLIENT_AUTH scope are used by a load balancer (TLS client) to be presented to the backend (TLS server) when backend mTLS is configured.
1198
+ See https://cloud.google.com/load-balancing/docs/backend-authenticated-tls-backend-mtls#client-certificate.
1155
1199
  :param pulumi.Input[Union['CertificateSelfManagedArgs', 'CertificateSelfManagedArgsDict']] self_managed: Certificate data for a SelfManaged Certificate.
1156
1200
  SelfManaged Certificates are uploaded by the user. Updating such
1157
1201
  certificates before they expire remains the user's responsibility.
@@ -1268,7 +1312,9 @@ class Certificate(pulumi.CustomResource):
1268
1312
  EDGE_CACHE: Certificates with scope EDGE_CACHE are special-purposed certificates, served from Edge Points of Presence.
1269
1313
  See https://cloud.google.com/vpc/docs/edge-locations.
1270
1314
  ALL_REGIONS: Certificates with ALL_REGIONS scope are served from all GCP regions (You can only use ALL_REGIONS with global certs).
1271
- See https://cloud.google.com/compute/docs/regions-zones
1315
+ See https://cloud.google.com/compute/docs/regions-zones.
1316
+ CLIENT_AUTH: Certificates with CLIENT_AUTH scope are used by a load balancer (TLS client) to be presented to the backend (TLS server) when backend mTLS is configured.
1317
+ See https://cloud.google.com/load-balancing/docs/backend-authenticated-tls-backend-mtls#client-certificate.
1272
1318
  """
1273
1319
  return pulumi.get(self, "scope")
1274
1320
 
@@ -936,7 +936,10 @@ class GetCertificatesCertificateResult(dict):
936
936
  See https://cloud.google.com/vpc/docs/edge-locations.
937
937
 
938
938
  ALL_REGIONS: Certificates with ALL_REGIONS scope are served from all GCP regions (You can only use ALL_REGIONS with global certs).
939
- See https://cloud.google.com/compute/docs/regions-zones
939
+ See https://cloud.google.com/compute/docs/regions-zones.
940
+
941
+ CLIENT_AUTH: Certificates with CLIENT_AUTH scope are used by a load balancer (TLS client) to be presented to the backend (TLS server) when backend mTLS is configured.
942
+ See https://cloud.google.com/load-balancing/docs/backend-authenticated-tls-backend-mtls#client-certificate.
940
943
  """
941
944
  pulumi.set(__self__, "description", description)
942
945
  pulumi.set(__self__, "effective_labels", effective_labels)
@@ -1040,7 +1043,10 @@ class GetCertificatesCertificateResult(dict):
1040
1043
  See https://cloud.google.com/vpc/docs/edge-locations.
1041
1044
 
1042
1045
  ALL_REGIONS: Certificates with ALL_REGIONS scope are served from all GCP regions (You can only use ALL_REGIONS with global certs).
1043
- See https://cloud.google.com/compute/docs/regions-zones
1046
+ See https://cloud.google.com/compute/docs/regions-zones.
1047
+
1048
+ CLIENT_AUTH: Certificates with CLIENT_AUTH scope are used by a load balancer (TLS client) to be presented to the backend (TLS server) when backend mTLS is configured.
1049
+ See https://cloud.google.com/load-balancing/docs/backend-authenticated-tls-backend-mtls#client-certificate.
1044
1050
  """
1045
1051
  return pulumi.get(self, "scope")
1046
1052
 
@@ -76,6 +76,7 @@ from .get_region_instance_group_manager import *
76
76
  from .get_region_instance_template import *
77
77
  from .get_region_network_endpoint_group import *
78
78
  from .get_region_ssl_certificate import *
79
+ from .get_region_ssl_policy import *
79
80
  from .get_regions import *
80
81
  from .get_reservation import *
81
82
  from .get_resource_policy import *