pulumi-gcp 8.2.0a1726671837__py3-none-any.whl → 8.3.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 (100) hide show
  1. pulumi_gcp/__init__.py +158 -0
  2. pulumi_gcp/alloydb/_inputs.py +20 -0
  3. pulumi_gcp/alloydb/instance.py +36 -0
  4. pulumi_gcp/alloydb/outputs.py +14 -0
  5. pulumi_gcp/bigquery/__init__.py +1 -0
  6. pulumi_gcp/bigquery/get_tables.py +143 -0
  7. pulumi_gcp/bigquery/outputs.py +30 -0
  8. pulumi_gcp/compute/__init__.py +2 -0
  9. pulumi_gcp/compute/_inputs.py +12481 -9158
  10. pulumi_gcp/compute/attached_disk.py +103 -0
  11. pulumi_gcp/compute/backend_service.py +29 -22
  12. pulumi_gcp/compute/firewall_policy_with_rules.py +769 -0
  13. pulumi_gcp/compute/get_instance.py +3 -0
  14. pulumi_gcp/compute/network_firewall_policy_with_rules.py +826 -0
  15. pulumi_gcp/compute/outputs.py +3695 -1293
  16. pulumi_gcp/compute/region_backend_service.py +29 -22
  17. pulumi_gcp/compute/region_target_http_proxy.py +159 -0
  18. pulumi_gcp/compute/region_target_https_proxy.py +175 -0
  19. pulumi_gcp/compute/router_nat.py +27 -66
  20. pulumi_gcp/compute/service_attachment.py +75 -0
  21. pulumi_gcp/compute/target_http_proxy.py +49 -28
  22. pulumi_gcp/compute/target_https_proxy.py +49 -28
  23. pulumi_gcp/config/__init__.pyi +6 -0
  24. pulumi_gcp/config/vars.py +12 -0
  25. pulumi_gcp/container/_inputs.py +168 -99
  26. pulumi_gcp/container/attached_cluster.py +54 -1
  27. pulumi_gcp/container/outputs.py +155 -70
  28. pulumi_gcp/databasemigrationservice/__init__.py +1 -0
  29. pulumi_gcp/databasemigrationservice/_inputs.py +362 -0
  30. pulumi_gcp/databasemigrationservice/migration_job.py +1739 -0
  31. pulumi_gcp/databasemigrationservice/outputs.py +268 -0
  32. pulumi_gcp/dataproc/get_metastore_service.py +11 -1
  33. pulumi_gcp/dataproc/metastore_federation.py +8 -8
  34. pulumi_gcp/dataproc/metastore_service.py +95 -0
  35. pulumi_gcp/datastream/stream.py +21 -14
  36. pulumi_gcp/developerconnect/__init__.py +11 -0
  37. pulumi_gcp/developerconnect/_inputs.py +304 -0
  38. pulumi_gcp/developerconnect/connection.py +1037 -0
  39. pulumi_gcp/developerconnect/git_repository_link.py +873 -0
  40. pulumi_gcp/developerconnect/outputs.py +249 -0
  41. pulumi_gcp/discoveryengine/__init__.py +1 -0
  42. pulumi_gcp/discoveryengine/_inputs.py +131 -0
  43. pulumi_gcp/discoveryengine/outputs.py +131 -0
  44. pulumi_gcp/discoveryengine/target_site.py +870 -0
  45. pulumi_gcp/dns/managed_zone.py +1 -1
  46. pulumi_gcp/filestore/get_instance.py +21 -1
  47. pulumi_gcp/filestore/instance.py +94 -0
  48. pulumi_gcp/gkehub/feature_membership.py +140 -62
  49. pulumi_gcp/gkeonprem/_inputs.py +3 -3
  50. pulumi_gcp/gkeonprem/outputs.py +2 -2
  51. pulumi_gcp/healthcare/__init__.py +1 -0
  52. pulumi_gcp/healthcare/_inputs.py +39 -0
  53. pulumi_gcp/healthcare/outputs.py +40 -0
  54. pulumi_gcp/healthcare/workspace.py +465 -0
  55. pulumi_gcp/looker/instance.py +81 -0
  56. pulumi_gcp/memorystore/__init__.py +10 -0
  57. pulumi_gcp/memorystore/_inputs.py +731 -0
  58. pulumi_gcp/memorystore/instance.py +1663 -0
  59. pulumi_gcp/memorystore/outputs.py +598 -0
  60. pulumi_gcp/netapp/_inputs.py +63 -0
  61. pulumi_gcp/netapp/outputs.py +57 -0
  62. pulumi_gcp/netapp/storage_pool.py +54 -0
  63. pulumi_gcp/netapp/volume.py +183 -0
  64. pulumi_gcp/organizations/folder.py +52 -33
  65. pulumi_gcp/provider.py +60 -0
  66. pulumi_gcp/pubsub/subscription.py +43 -7
  67. pulumi_gcp/pulumi-plugin.json +1 -1
  68. pulumi_gcp/secretmanager/__init__.py +8 -0
  69. pulumi_gcp/secretmanager/_inputs.py +308 -0
  70. pulumi_gcp/secretmanager/get_regional_secret.py +279 -0
  71. pulumi_gcp/secretmanager/get_regional_secret_iam_policy.py +173 -0
  72. pulumi_gcp/secretmanager/get_regional_secret_version.py +241 -0
  73. pulumi_gcp/secretmanager/outputs.py +336 -0
  74. pulumi_gcp/secretmanager/regional_secret.py +1433 -0
  75. pulumi_gcp/secretmanager/regional_secret_iam_binding.py +1082 -0
  76. pulumi_gcp/secretmanager/regional_secret_iam_member.py +1082 -0
  77. pulumi_gcp/secretmanager/regional_secret_iam_policy.py +901 -0
  78. pulumi_gcp/secretmanager/regional_secret_version.py +753 -0
  79. pulumi_gcp/securitycenter/__init__.py +4 -0
  80. pulumi_gcp/securitycenter/folder_scc_big_query_export.py +795 -0
  81. pulumi_gcp/securitycenter/organization_scc_big_query_export.py +738 -0
  82. pulumi_gcp/securitycenter/project_scc_big_query_export.py +749 -0
  83. pulumi_gcp/securitycenter/v2_organization_scc_big_query_export.py +862 -0
  84. pulumi_gcp/securitycenter/v2_organization_scc_big_query_exports.py +6 -2
  85. pulumi_gcp/securitycenter/v2_project_mute_config.py +2 -2
  86. pulumi_gcp/siteverification/__init__.py +3 -0
  87. pulumi_gcp/siteverification/_inputs.py +85 -0
  88. pulumi_gcp/siteverification/outputs.py +57 -0
  89. pulumi_gcp/siteverification/web_resource.py +398 -0
  90. pulumi_gcp/spanner/__init__.py +1 -0
  91. pulumi_gcp/spanner/_inputs.py +129 -0
  92. pulumi_gcp/spanner/backup_schedule.py +748 -0
  93. pulumi_gcp/spanner/get_instance.py +11 -1
  94. pulumi_gcp/spanner/instance.py +56 -0
  95. pulumi_gcp/spanner/outputs.py +93 -0
  96. pulumi_gcp/vpcaccess/connector.py +21 -28
  97. {pulumi_gcp-8.2.0a1726671837.dist-info → pulumi_gcp-8.3.0.dist-info}/METADATA +1 -1
  98. {pulumi_gcp-8.2.0a1726671837.dist-info → pulumi_gcp-8.3.0.dist-info}/RECORD +100 -69
  99. {pulumi_gcp-8.2.0a1726671837.dist-info → pulumi_gcp-8.3.0.dist-info}/WHEEL +0 -0
  100. {pulumi_gcp-8.2.0a1726671837.dist-info → pulumi_gcp-8.3.0.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,731 @@
1
+ # coding=utf-8
2
+ # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
3
+ # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+
5
+ import copy
6
+ import warnings
7
+ import sys
8
+ import pulumi
9
+ import pulumi.runtime
10
+ from typing import Any, Mapping, Optional, Sequence, Union, overload
11
+ if sys.version_info >= (3, 11):
12
+ from typing import NotRequired, TypedDict, TypeAlias
13
+ else:
14
+ from typing_extensions import NotRequired, TypedDict, TypeAlias
15
+ from .. import _utilities
16
+
17
+ __all__ = [
18
+ 'InstanceDesiredPscAutoConnectionArgs',
19
+ 'InstanceDesiredPscAutoConnectionArgsDict',
20
+ 'InstanceDiscoveryEndpointArgs',
21
+ 'InstanceDiscoveryEndpointArgsDict',
22
+ 'InstanceNodeConfigArgs',
23
+ 'InstanceNodeConfigArgsDict',
24
+ 'InstancePersistenceConfigArgs',
25
+ 'InstancePersistenceConfigArgsDict',
26
+ 'InstancePersistenceConfigAofConfigArgs',
27
+ 'InstancePersistenceConfigAofConfigArgsDict',
28
+ 'InstancePersistenceConfigRdbConfigArgs',
29
+ 'InstancePersistenceConfigRdbConfigArgsDict',
30
+ 'InstancePscAutoConnectionArgs',
31
+ 'InstancePscAutoConnectionArgsDict',
32
+ 'InstanceStateInfoArgs',
33
+ 'InstanceStateInfoArgsDict',
34
+ 'InstanceStateInfoUpdateInfoArgs',
35
+ 'InstanceStateInfoUpdateInfoArgsDict',
36
+ 'InstanceZoneDistributionConfigArgs',
37
+ 'InstanceZoneDistributionConfigArgsDict',
38
+ ]
39
+
40
+ MYPY = False
41
+
42
+ if not MYPY:
43
+ class InstanceDesiredPscAutoConnectionArgsDict(TypedDict):
44
+ network: pulumi.Input[str]
45
+ """
46
+ (Output)
47
+ Output only. The consumer network where the IP address resides, in the form of
48
+ projects/{project_id}/global/networks/{network_id}.
49
+ """
50
+ project_id: pulumi.Input[str]
51
+ """
52
+ (Output)
53
+ Output only. The consumer project_id where the forwarding rule is created from.
54
+ """
55
+ elif False:
56
+ InstanceDesiredPscAutoConnectionArgsDict: TypeAlias = Mapping[str, Any]
57
+
58
+ @pulumi.input_type
59
+ class InstanceDesiredPscAutoConnectionArgs:
60
+ def __init__(__self__, *,
61
+ network: pulumi.Input[str],
62
+ project_id: pulumi.Input[str]):
63
+ """
64
+ :param pulumi.Input[str] network: (Output)
65
+ Output only. The consumer network where the IP address resides, in the form of
66
+ projects/{project_id}/global/networks/{network_id}.
67
+ :param pulumi.Input[str] project_id: (Output)
68
+ Output only. The consumer project_id where the forwarding rule is created from.
69
+ """
70
+ pulumi.set(__self__, "network", network)
71
+ pulumi.set(__self__, "project_id", project_id)
72
+
73
+ @property
74
+ @pulumi.getter
75
+ def network(self) -> pulumi.Input[str]:
76
+ """
77
+ (Output)
78
+ Output only. The consumer network where the IP address resides, in the form of
79
+ projects/{project_id}/global/networks/{network_id}.
80
+ """
81
+ return pulumi.get(self, "network")
82
+
83
+ @network.setter
84
+ def network(self, value: pulumi.Input[str]):
85
+ pulumi.set(self, "network", value)
86
+
87
+ @property
88
+ @pulumi.getter(name="projectId")
89
+ def project_id(self) -> pulumi.Input[str]:
90
+ """
91
+ (Output)
92
+ Output only. The consumer project_id where the forwarding rule is created from.
93
+ """
94
+ return pulumi.get(self, "project_id")
95
+
96
+ @project_id.setter
97
+ def project_id(self, value: pulumi.Input[str]):
98
+ pulumi.set(self, "project_id", value)
99
+
100
+
101
+ if not MYPY:
102
+ class InstanceDiscoveryEndpointArgsDict(TypedDict):
103
+ address: NotRequired[pulumi.Input[str]]
104
+ """
105
+ (Output)
106
+ Output only. IP address of the exposed endpoint clients connect to.
107
+ """
108
+ network: NotRequired[pulumi.Input[str]]
109
+ """
110
+ (Output)
111
+ Output only. The consumer network where the IP address resides, in the form of
112
+ projects/{project_id}/global/networks/{network_id}.
113
+ """
114
+ port: NotRequired[pulumi.Input[int]]
115
+ """
116
+ (Output)
117
+ Output only. The port number of the exposed endpoint.
118
+ """
119
+ elif False:
120
+ InstanceDiscoveryEndpointArgsDict: TypeAlias = Mapping[str, Any]
121
+
122
+ @pulumi.input_type
123
+ class InstanceDiscoveryEndpointArgs:
124
+ def __init__(__self__, *,
125
+ address: Optional[pulumi.Input[str]] = None,
126
+ network: Optional[pulumi.Input[str]] = None,
127
+ port: Optional[pulumi.Input[int]] = None):
128
+ """
129
+ :param pulumi.Input[str] address: (Output)
130
+ Output only. IP address of the exposed endpoint clients connect to.
131
+ :param pulumi.Input[str] network: (Output)
132
+ Output only. The consumer network where the IP address resides, in the form of
133
+ projects/{project_id}/global/networks/{network_id}.
134
+ :param pulumi.Input[int] port: (Output)
135
+ Output only. The port number of the exposed endpoint.
136
+ """
137
+ if address is not None:
138
+ pulumi.set(__self__, "address", address)
139
+ if network is not None:
140
+ pulumi.set(__self__, "network", network)
141
+ if port is not None:
142
+ pulumi.set(__self__, "port", port)
143
+
144
+ @property
145
+ @pulumi.getter
146
+ def address(self) -> Optional[pulumi.Input[str]]:
147
+ """
148
+ (Output)
149
+ Output only. IP address of the exposed endpoint clients connect to.
150
+ """
151
+ return pulumi.get(self, "address")
152
+
153
+ @address.setter
154
+ def address(self, value: Optional[pulumi.Input[str]]):
155
+ pulumi.set(self, "address", value)
156
+
157
+ @property
158
+ @pulumi.getter
159
+ def network(self) -> Optional[pulumi.Input[str]]:
160
+ """
161
+ (Output)
162
+ Output only. The consumer network where the IP address resides, in the form of
163
+ projects/{project_id}/global/networks/{network_id}.
164
+ """
165
+ return pulumi.get(self, "network")
166
+
167
+ @network.setter
168
+ def network(self, value: Optional[pulumi.Input[str]]):
169
+ pulumi.set(self, "network", value)
170
+
171
+ @property
172
+ @pulumi.getter
173
+ def port(self) -> Optional[pulumi.Input[int]]:
174
+ """
175
+ (Output)
176
+ Output only. The port number of the exposed endpoint.
177
+ """
178
+ return pulumi.get(self, "port")
179
+
180
+ @port.setter
181
+ def port(self, value: Optional[pulumi.Input[int]]):
182
+ pulumi.set(self, "port", value)
183
+
184
+
185
+ if not MYPY:
186
+ class InstanceNodeConfigArgsDict(TypedDict):
187
+ size_gb: NotRequired[pulumi.Input[float]]
188
+ """
189
+ (Output)
190
+ Output only. Memory size in GB of the node.
191
+ """
192
+ elif False:
193
+ InstanceNodeConfigArgsDict: TypeAlias = Mapping[str, Any]
194
+
195
+ @pulumi.input_type
196
+ class InstanceNodeConfigArgs:
197
+ def __init__(__self__, *,
198
+ size_gb: Optional[pulumi.Input[float]] = None):
199
+ """
200
+ :param pulumi.Input[float] size_gb: (Output)
201
+ Output only. Memory size in GB of the node.
202
+ """
203
+ if size_gb is not None:
204
+ pulumi.set(__self__, "size_gb", size_gb)
205
+
206
+ @property
207
+ @pulumi.getter(name="sizeGb")
208
+ def size_gb(self) -> Optional[pulumi.Input[float]]:
209
+ """
210
+ (Output)
211
+ Output only. Memory size in GB of the node.
212
+ """
213
+ return pulumi.get(self, "size_gb")
214
+
215
+ @size_gb.setter
216
+ def size_gb(self, value: Optional[pulumi.Input[float]]):
217
+ pulumi.set(self, "size_gb", value)
218
+
219
+
220
+ if not MYPY:
221
+ class InstancePersistenceConfigArgsDict(TypedDict):
222
+ aof_config: NotRequired[pulumi.Input['InstancePersistenceConfigAofConfigArgsDict']]
223
+ """
224
+ Configuration for AOF based persistence.
225
+ Structure is documented below.
226
+ """
227
+ mode: NotRequired[pulumi.Input[str]]
228
+ """
229
+ Optional. Current persistence mode.
230
+ Possible values:
231
+ DISABLED
232
+ RDB
233
+ AOF
234
+ Possible values are: `DISABLED`, `RDB`, `AOF`.
235
+ """
236
+ rdb_config: NotRequired[pulumi.Input['InstancePersistenceConfigRdbConfigArgsDict']]
237
+ """
238
+ Configuration for RDB based persistence.
239
+ Structure is documented below.
240
+ """
241
+ elif False:
242
+ InstancePersistenceConfigArgsDict: TypeAlias = Mapping[str, Any]
243
+
244
+ @pulumi.input_type
245
+ class InstancePersistenceConfigArgs:
246
+ def __init__(__self__, *,
247
+ aof_config: Optional[pulumi.Input['InstancePersistenceConfigAofConfigArgs']] = None,
248
+ mode: Optional[pulumi.Input[str]] = None,
249
+ rdb_config: Optional[pulumi.Input['InstancePersistenceConfigRdbConfigArgs']] = None):
250
+ """
251
+ :param pulumi.Input['InstancePersistenceConfigAofConfigArgs'] aof_config: Configuration for AOF based persistence.
252
+ Structure is documented below.
253
+ :param pulumi.Input[str] mode: Optional. Current persistence mode.
254
+ Possible values:
255
+ DISABLED
256
+ RDB
257
+ AOF
258
+ Possible values are: `DISABLED`, `RDB`, `AOF`.
259
+ :param pulumi.Input['InstancePersistenceConfigRdbConfigArgs'] rdb_config: Configuration for RDB based persistence.
260
+ Structure is documented below.
261
+ """
262
+ if aof_config is not None:
263
+ pulumi.set(__self__, "aof_config", aof_config)
264
+ if mode is not None:
265
+ pulumi.set(__self__, "mode", mode)
266
+ if rdb_config is not None:
267
+ pulumi.set(__self__, "rdb_config", rdb_config)
268
+
269
+ @property
270
+ @pulumi.getter(name="aofConfig")
271
+ def aof_config(self) -> Optional[pulumi.Input['InstancePersistenceConfigAofConfigArgs']]:
272
+ """
273
+ Configuration for AOF based persistence.
274
+ Structure is documented below.
275
+ """
276
+ return pulumi.get(self, "aof_config")
277
+
278
+ @aof_config.setter
279
+ def aof_config(self, value: Optional[pulumi.Input['InstancePersistenceConfigAofConfigArgs']]):
280
+ pulumi.set(self, "aof_config", value)
281
+
282
+ @property
283
+ @pulumi.getter
284
+ def mode(self) -> Optional[pulumi.Input[str]]:
285
+ """
286
+ Optional. Current persistence mode.
287
+ Possible values:
288
+ DISABLED
289
+ RDB
290
+ AOF
291
+ Possible values are: `DISABLED`, `RDB`, `AOF`.
292
+ """
293
+ return pulumi.get(self, "mode")
294
+
295
+ @mode.setter
296
+ def mode(self, value: Optional[pulumi.Input[str]]):
297
+ pulumi.set(self, "mode", value)
298
+
299
+ @property
300
+ @pulumi.getter(name="rdbConfig")
301
+ def rdb_config(self) -> Optional[pulumi.Input['InstancePersistenceConfigRdbConfigArgs']]:
302
+ """
303
+ Configuration for RDB based persistence.
304
+ Structure is documented below.
305
+ """
306
+ return pulumi.get(self, "rdb_config")
307
+
308
+ @rdb_config.setter
309
+ def rdb_config(self, value: Optional[pulumi.Input['InstancePersistenceConfigRdbConfigArgs']]):
310
+ pulumi.set(self, "rdb_config", value)
311
+
312
+
313
+ if not MYPY:
314
+ class InstancePersistenceConfigAofConfigArgsDict(TypedDict):
315
+ append_fsync: NotRequired[pulumi.Input[str]]
316
+ """
317
+ Optional. The fsync mode.
318
+ Possible values:
319
+ NEVER
320
+ EVERY_SEC
321
+ ALWAYS
322
+ """
323
+ elif False:
324
+ InstancePersistenceConfigAofConfigArgsDict: TypeAlias = Mapping[str, Any]
325
+
326
+ @pulumi.input_type
327
+ class InstancePersistenceConfigAofConfigArgs:
328
+ def __init__(__self__, *,
329
+ append_fsync: Optional[pulumi.Input[str]] = None):
330
+ """
331
+ :param pulumi.Input[str] append_fsync: Optional. The fsync mode.
332
+ Possible values:
333
+ NEVER
334
+ EVERY_SEC
335
+ ALWAYS
336
+ """
337
+ if append_fsync is not None:
338
+ pulumi.set(__self__, "append_fsync", append_fsync)
339
+
340
+ @property
341
+ @pulumi.getter(name="appendFsync")
342
+ def append_fsync(self) -> Optional[pulumi.Input[str]]:
343
+ """
344
+ Optional. The fsync mode.
345
+ Possible values:
346
+ NEVER
347
+ EVERY_SEC
348
+ ALWAYS
349
+ """
350
+ return pulumi.get(self, "append_fsync")
351
+
352
+ @append_fsync.setter
353
+ def append_fsync(self, value: Optional[pulumi.Input[str]]):
354
+ pulumi.set(self, "append_fsync", value)
355
+
356
+
357
+ if not MYPY:
358
+ class InstancePersistenceConfigRdbConfigArgsDict(TypedDict):
359
+ rdb_snapshot_period: NotRequired[pulumi.Input[str]]
360
+ """
361
+ Optional. Period between RDB snapshots.
362
+ Possible values:
363
+ ONE_HOUR
364
+ SIX_HOURS
365
+ TWELVE_HOURS
366
+ TWENTY_FOUR_HOURS
367
+ """
368
+ rdb_snapshot_start_time: NotRequired[pulumi.Input[str]]
369
+ """
370
+ Optional. Time that the first snapshot was/will be attempted, and to which future
371
+ snapshots will be aligned. If not provided, the current time will be
372
+ used.
373
+ """
374
+ elif False:
375
+ InstancePersistenceConfigRdbConfigArgsDict: TypeAlias = Mapping[str, Any]
376
+
377
+ @pulumi.input_type
378
+ class InstancePersistenceConfigRdbConfigArgs:
379
+ def __init__(__self__, *,
380
+ rdb_snapshot_period: Optional[pulumi.Input[str]] = None,
381
+ rdb_snapshot_start_time: Optional[pulumi.Input[str]] = None):
382
+ """
383
+ :param pulumi.Input[str] rdb_snapshot_period: Optional. Period between RDB snapshots.
384
+ Possible values:
385
+ ONE_HOUR
386
+ SIX_HOURS
387
+ TWELVE_HOURS
388
+ TWENTY_FOUR_HOURS
389
+ :param pulumi.Input[str] rdb_snapshot_start_time: Optional. Time that the first snapshot was/will be attempted, and to which future
390
+ snapshots will be aligned. If not provided, the current time will be
391
+ used.
392
+ """
393
+ if rdb_snapshot_period is not None:
394
+ pulumi.set(__self__, "rdb_snapshot_period", rdb_snapshot_period)
395
+ if rdb_snapshot_start_time is not None:
396
+ pulumi.set(__self__, "rdb_snapshot_start_time", rdb_snapshot_start_time)
397
+
398
+ @property
399
+ @pulumi.getter(name="rdbSnapshotPeriod")
400
+ def rdb_snapshot_period(self) -> Optional[pulumi.Input[str]]:
401
+ """
402
+ Optional. Period between RDB snapshots.
403
+ Possible values:
404
+ ONE_HOUR
405
+ SIX_HOURS
406
+ TWELVE_HOURS
407
+ TWENTY_FOUR_HOURS
408
+ """
409
+ return pulumi.get(self, "rdb_snapshot_period")
410
+
411
+ @rdb_snapshot_period.setter
412
+ def rdb_snapshot_period(self, value: Optional[pulumi.Input[str]]):
413
+ pulumi.set(self, "rdb_snapshot_period", value)
414
+
415
+ @property
416
+ @pulumi.getter(name="rdbSnapshotStartTime")
417
+ def rdb_snapshot_start_time(self) -> Optional[pulumi.Input[str]]:
418
+ """
419
+ Optional. Time that the first snapshot was/will be attempted, and to which future
420
+ snapshots will be aligned. If not provided, the current time will be
421
+ used.
422
+ """
423
+ return pulumi.get(self, "rdb_snapshot_start_time")
424
+
425
+ @rdb_snapshot_start_time.setter
426
+ def rdb_snapshot_start_time(self, value: Optional[pulumi.Input[str]]):
427
+ pulumi.set(self, "rdb_snapshot_start_time", value)
428
+
429
+
430
+ if not MYPY:
431
+ class InstancePscAutoConnectionArgsDict(TypedDict):
432
+ forwarding_rule: NotRequired[pulumi.Input[str]]
433
+ """
434
+ (Output)
435
+ Output only. The URI of the consumer side forwarding rule.
436
+ Format:
437
+ projects/{project}/regions/{region}/forwardingRules/{forwarding_rule}
438
+ """
439
+ ip_address: NotRequired[pulumi.Input[str]]
440
+ """
441
+ (Output)
442
+ Output only. The IP allocated on the consumer network for the PSC forwarding rule.
443
+ """
444
+ network: NotRequired[pulumi.Input[str]]
445
+ """
446
+ (Output)
447
+ Output only. The consumer network where the IP address resides, in the form of
448
+ projects/{project_id}/global/networks/{network_id}.
449
+ """
450
+ project_id: NotRequired[pulumi.Input[str]]
451
+ """
452
+ (Output)
453
+ Output only. The consumer project_id where the forwarding rule is created from.
454
+ """
455
+ psc_connection_id: NotRequired[pulumi.Input[str]]
456
+ """
457
+ (Output)
458
+ Output only. The PSC connection id of the forwarding rule connected to the
459
+ service attachment.
460
+ """
461
+ elif False:
462
+ InstancePscAutoConnectionArgsDict: TypeAlias = Mapping[str, Any]
463
+
464
+ @pulumi.input_type
465
+ class InstancePscAutoConnectionArgs:
466
+ def __init__(__self__, *,
467
+ forwarding_rule: Optional[pulumi.Input[str]] = None,
468
+ ip_address: Optional[pulumi.Input[str]] = None,
469
+ network: Optional[pulumi.Input[str]] = None,
470
+ project_id: Optional[pulumi.Input[str]] = None,
471
+ psc_connection_id: Optional[pulumi.Input[str]] = None):
472
+ """
473
+ :param pulumi.Input[str] forwarding_rule: (Output)
474
+ Output only. The URI of the consumer side forwarding rule.
475
+ Format:
476
+ projects/{project}/regions/{region}/forwardingRules/{forwarding_rule}
477
+ :param pulumi.Input[str] ip_address: (Output)
478
+ Output only. The IP allocated on the consumer network for the PSC forwarding rule.
479
+ :param pulumi.Input[str] network: (Output)
480
+ Output only. The consumer network where the IP address resides, in the form of
481
+ projects/{project_id}/global/networks/{network_id}.
482
+ :param pulumi.Input[str] project_id: (Output)
483
+ Output only. The consumer project_id where the forwarding rule is created from.
484
+ :param pulumi.Input[str] psc_connection_id: (Output)
485
+ Output only. The PSC connection id of the forwarding rule connected to the
486
+ service attachment.
487
+ """
488
+ if forwarding_rule is not None:
489
+ pulumi.set(__self__, "forwarding_rule", forwarding_rule)
490
+ if ip_address is not None:
491
+ pulumi.set(__self__, "ip_address", ip_address)
492
+ if network is not None:
493
+ pulumi.set(__self__, "network", network)
494
+ if project_id is not None:
495
+ pulumi.set(__self__, "project_id", project_id)
496
+ if psc_connection_id is not None:
497
+ pulumi.set(__self__, "psc_connection_id", psc_connection_id)
498
+
499
+ @property
500
+ @pulumi.getter(name="forwardingRule")
501
+ def forwarding_rule(self) -> Optional[pulumi.Input[str]]:
502
+ """
503
+ (Output)
504
+ Output only. The URI of the consumer side forwarding rule.
505
+ Format:
506
+ projects/{project}/regions/{region}/forwardingRules/{forwarding_rule}
507
+ """
508
+ return pulumi.get(self, "forwarding_rule")
509
+
510
+ @forwarding_rule.setter
511
+ def forwarding_rule(self, value: Optional[pulumi.Input[str]]):
512
+ pulumi.set(self, "forwarding_rule", value)
513
+
514
+ @property
515
+ @pulumi.getter(name="ipAddress")
516
+ def ip_address(self) -> Optional[pulumi.Input[str]]:
517
+ """
518
+ (Output)
519
+ Output only. The IP allocated on the consumer network for the PSC forwarding rule.
520
+ """
521
+ return pulumi.get(self, "ip_address")
522
+
523
+ @ip_address.setter
524
+ def ip_address(self, value: Optional[pulumi.Input[str]]):
525
+ pulumi.set(self, "ip_address", value)
526
+
527
+ @property
528
+ @pulumi.getter
529
+ def network(self) -> Optional[pulumi.Input[str]]:
530
+ """
531
+ (Output)
532
+ Output only. The consumer network where the IP address resides, in the form of
533
+ projects/{project_id}/global/networks/{network_id}.
534
+ """
535
+ return pulumi.get(self, "network")
536
+
537
+ @network.setter
538
+ def network(self, value: Optional[pulumi.Input[str]]):
539
+ pulumi.set(self, "network", value)
540
+
541
+ @property
542
+ @pulumi.getter(name="projectId")
543
+ def project_id(self) -> Optional[pulumi.Input[str]]:
544
+ """
545
+ (Output)
546
+ Output only. The consumer project_id where the forwarding rule is created from.
547
+ """
548
+ return pulumi.get(self, "project_id")
549
+
550
+ @project_id.setter
551
+ def project_id(self, value: Optional[pulumi.Input[str]]):
552
+ pulumi.set(self, "project_id", value)
553
+
554
+ @property
555
+ @pulumi.getter(name="pscConnectionId")
556
+ def psc_connection_id(self) -> Optional[pulumi.Input[str]]:
557
+ """
558
+ (Output)
559
+ Output only. The PSC connection id of the forwarding rule connected to the
560
+ service attachment.
561
+ """
562
+ return pulumi.get(self, "psc_connection_id")
563
+
564
+ @psc_connection_id.setter
565
+ def psc_connection_id(self, value: Optional[pulumi.Input[str]]):
566
+ pulumi.set(self, "psc_connection_id", value)
567
+
568
+
569
+ if not MYPY:
570
+ class InstanceStateInfoArgsDict(TypedDict):
571
+ update_infos: NotRequired[pulumi.Input[Sequence[pulumi.Input['InstanceStateInfoUpdateInfoArgsDict']]]]
572
+ """
573
+ (Output)
574
+ Represents information about instance with state UPDATING.
575
+ Structure is documented below.
576
+ """
577
+ elif False:
578
+ InstanceStateInfoArgsDict: TypeAlias = Mapping[str, Any]
579
+
580
+ @pulumi.input_type
581
+ class InstanceStateInfoArgs:
582
+ def __init__(__self__, *,
583
+ update_infos: Optional[pulumi.Input[Sequence[pulumi.Input['InstanceStateInfoUpdateInfoArgs']]]] = None):
584
+ """
585
+ :param pulumi.Input[Sequence[pulumi.Input['InstanceStateInfoUpdateInfoArgs']]] update_infos: (Output)
586
+ Represents information about instance with state UPDATING.
587
+ Structure is documented below.
588
+ """
589
+ if update_infos is not None:
590
+ pulumi.set(__self__, "update_infos", update_infos)
591
+
592
+ @property
593
+ @pulumi.getter(name="updateInfos")
594
+ def update_infos(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['InstanceStateInfoUpdateInfoArgs']]]]:
595
+ """
596
+ (Output)
597
+ Represents information about instance with state UPDATING.
598
+ Structure is documented below.
599
+ """
600
+ return pulumi.get(self, "update_infos")
601
+
602
+ @update_infos.setter
603
+ def update_infos(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['InstanceStateInfoUpdateInfoArgs']]]]):
604
+ pulumi.set(self, "update_infos", value)
605
+
606
+
607
+ if not MYPY:
608
+ class InstanceStateInfoUpdateInfoArgsDict(TypedDict):
609
+ target_replica_count: NotRequired[pulumi.Input[int]]
610
+ """
611
+ (Output)
612
+ Output only. Target number of replica nodes per shard for the instance.
613
+ """
614
+ target_shard_count: NotRequired[pulumi.Input[int]]
615
+ """
616
+ (Output)
617
+ Output only. Target number of shards for the instance.
618
+ """
619
+ elif False:
620
+ InstanceStateInfoUpdateInfoArgsDict: TypeAlias = Mapping[str, Any]
621
+
622
+ @pulumi.input_type
623
+ class InstanceStateInfoUpdateInfoArgs:
624
+ def __init__(__self__, *,
625
+ target_replica_count: Optional[pulumi.Input[int]] = None,
626
+ target_shard_count: Optional[pulumi.Input[int]] = None):
627
+ """
628
+ :param pulumi.Input[int] target_replica_count: (Output)
629
+ Output only. Target number of replica nodes per shard for the instance.
630
+ :param pulumi.Input[int] target_shard_count: (Output)
631
+ Output only. Target number of shards for the instance.
632
+ """
633
+ if target_replica_count is not None:
634
+ pulumi.set(__self__, "target_replica_count", target_replica_count)
635
+ if target_shard_count is not None:
636
+ pulumi.set(__self__, "target_shard_count", target_shard_count)
637
+
638
+ @property
639
+ @pulumi.getter(name="targetReplicaCount")
640
+ def target_replica_count(self) -> Optional[pulumi.Input[int]]:
641
+ """
642
+ (Output)
643
+ Output only. Target number of replica nodes per shard for the instance.
644
+ """
645
+ return pulumi.get(self, "target_replica_count")
646
+
647
+ @target_replica_count.setter
648
+ def target_replica_count(self, value: Optional[pulumi.Input[int]]):
649
+ pulumi.set(self, "target_replica_count", value)
650
+
651
+ @property
652
+ @pulumi.getter(name="targetShardCount")
653
+ def target_shard_count(self) -> Optional[pulumi.Input[int]]:
654
+ """
655
+ (Output)
656
+ Output only. Target number of shards for the instance.
657
+ """
658
+ return pulumi.get(self, "target_shard_count")
659
+
660
+ @target_shard_count.setter
661
+ def target_shard_count(self, value: Optional[pulumi.Input[int]]):
662
+ pulumi.set(self, "target_shard_count", value)
663
+
664
+
665
+ if not MYPY:
666
+ class InstanceZoneDistributionConfigArgsDict(TypedDict):
667
+ mode: NotRequired[pulumi.Input[str]]
668
+ """
669
+ Optional. Current zone distribution mode. Defaults to MULTI_ZONE.
670
+ Possible values:
671
+ MULTI_ZONE
672
+ SINGLE_ZONE
673
+ Possible values are: `MULTI_ZONE`, `SINGLE_ZONE`.
674
+ """
675
+ zone: NotRequired[pulumi.Input[str]]
676
+ """
677
+ Optional. Defines zone where all resources will be allocated with SINGLE_ZONE mode.
678
+ Ignored for MULTI_ZONE mode.
679
+ """
680
+ elif False:
681
+ InstanceZoneDistributionConfigArgsDict: TypeAlias = Mapping[str, Any]
682
+
683
+ @pulumi.input_type
684
+ class InstanceZoneDistributionConfigArgs:
685
+ def __init__(__self__, *,
686
+ mode: Optional[pulumi.Input[str]] = None,
687
+ zone: Optional[pulumi.Input[str]] = None):
688
+ """
689
+ :param pulumi.Input[str] mode: Optional. Current zone distribution mode. Defaults to MULTI_ZONE.
690
+ Possible values:
691
+ MULTI_ZONE
692
+ SINGLE_ZONE
693
+ Possible values are: `MULTI_ZONE`, `SINGLE_ZONE`.
694
+ :param pulumi.Input[str] zone: Optional. Defines zone where all resources will be allocated with SINGLE_ZONE mode.
695
+ Ignored for MULTI_ZONE mode.
696
+ """
697
+ if mode is not None:
698
+ pulumi.set(__self__, "mode", mode)
699
+ if zone is not None:
700
+ pulumi.set(__self__, "zone", zone)
701
+
702
+ @property
703
+ @pulumi.getter
704
+ def mode(self) -> Optional[pulumi.Input[str]]:
705
+ """
706
+ Optional. Current zone distribution mode. Defaults to MULTI_ZONE.
707
+ Possible values:
708
+ MULTI_ZONE
709
+ SINGLE_ZONE
710
+ Possible values are: `MULTI_ZONE`, `SINGLE_ZONE`.
711
+ """
712
+ return pulumi.get(self, "mode")
713
+
714
+ @mode.setter
715
+ def mode(self, value: Optional[pulumi.Input[str]]):
716
+ pulumi.set(self, "mode", value)
717
+
718
+ @property
719
+ @pulumi.getter
720
+ def zone(self) -> Optional[pulumi.Input[str]]:
721
+ """
722
+ Optional. Defines zone where all resources will be allocated with SINGLE_ZONE mode.
723
+ Ignored for MULTI_ZONE mode.
724
+ """
725
+ return pulumi.get(self, "zone")
726
+
727
+ @zone.setter
728
+ def zone(self, value: Optional[pulumi.Input[str]]):
729
+ pulumi.set(self, "zone", value)
730
+
731
+