pulumi-gcp 7.7.1__py3-none-any.whl → 7.8.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 (37) hide show
  1. pulumi_gcp/__init__.py +43 -0
  2. pulumi_gcp/alloydb/instance.py +1 -1
  3. pulumi_gcp/blockchainnodeengine/__init__.py +10 -0
  4. pulumi_gcp/blockchainnodeengine/_inputs.py +388 -0
  5. pulumi_gcp/blockchainnodeengine/blockchain_nodes.py +791 -0
  6. pulumi_gcp/blockchainnodeengine/outputs.py +441 -0
  7. pulumi_gcp/compute/__init__.py +2 -0
  8. pulumi_gcp/compute/disk.py +28 -0
  9. pulumi_gcp/compute/get_disk.py +11 -1
  10. pulumi_gcp/compute/get_instance_group_manager.py +11 -1
  11. pulumi_gcp/compute/get_machine_types.py +143 -0
  12. pulumi_gcp/compute/instance_group_manager.py +28 -0
  13. pulumi_gcp/compute/interconnect_attachment.py +75 -0
  14. pulumi_gcp/compute/outputs.py +219 -0
  15. pulumi_gcp/compute/region_instance_group_manager.py +28 -0
  16. pulumi_gcp/compute/region_network_endpoint.py +556 -0
  17. pulumi_gcp/compute/region_network_endpoint_group.py +128 -71
  18. pulumi_gcp/config/__init__.pyi +2 -2
  19. pulumi_gcp/config/vars.py +4 -4
  20. pulumi_gcp/discoveryengine/__init__.py +4 -0
  21. pulumi_gcp/discoveryengine/_inputs.py +237 -0
  22. pulumi_gcp/discoveryengine/chat_engine.py +822 -0
  23. pulumi_gcp/discoveryengine/outputs.py +304 -0
  24. pulumi_gcp/discoveryengine/search_engine.py +752 -0
  25. pulumi_gcp/filestore/_inputs.py +1 -3
  26. pulumi_gcp/filestore/outputs.py +1 -3
  27. pulumi_gcp/memcache/instance.py +61 -0
  28. pulumi_gcp/netapp/__init__.py +1 -0
  29. pulumi_gcp/netapp/storage_pool.py +34 -6
  30. pulumi_gcp/netapp/volume.py +65 -2
  31. pulumi_gcp/netapp/volume_snapshot.py +625 -0
  32. pulumi_gcp/provider.py +20 -0
  33. pulumi_gcp/vmwareengine/private_cloud.py +0 -7
  34. {pulumi_gcp-7.7.1.dist-info → pulumi_gcp-7.8.0.dist-info}/METADATA +1 -1
  35. {pulumi_gcp-7.7.1.dist-info → pulumi_gcp-7.8.0.dist-info}/RECORD +37 -26
  36. {pulumi_gcp-7.7.1.dist-info → pulumi_gcp-7.8.0.dist-info}/WHEEL +0 -0
  37. {pulumi_gcp-7.7.1.dist-info → pulumi_gcp-7.8.0.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,441 @@
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 pulumi
8
+ import pulumi.runtime
9
+ from typing import Any, Mapping, Optional, Sequence, Union, overload
10
+ from .. import _utilities
11
+ from . import outputs
12
+
13
+ __all__ = [
14
+ 'BlockchainNodesConnectionInfo',
15
+ 'BlockchainNodesConnectionInfoEndpointInfo',
16
+ 'BlockchainNodesEthereumDetails',
17
+ 'BlockchainNodesEthereumDetailsAdditionalEndpoint',
18
+ 'BlockchainNodesEthereumDetailsGethDetails',
19
+ 'BlockchainNodesEthereumDetailsValidatorConfig',
20
+ ]
21
+
22
+ @pulumi.output_type
23
+ class BlockchainNodesConnectionInfo(dict):
24
+ @staticmethod
25
+ def __key_warning(key: str):
26
+ suggest = None
27
+ if key == "endpointInfos":
28
+ suggest = "endpoint_infos"
29
+ elif key == "serviceAttachment":
30
+ suggest = "service_attachment"
31
+
32
+ if suggest:
33
+ pulumi.log.warn(f"Key '{key}' not found in BlockchainNodesConnectionInfo. Access the value via the '{suggest}' property getter instead.")
34
+
35
+ def __getitem__(self, key: str) -> Any:
36
+ BlockchainNodesConnectionInfo.__key_warning(key)
37
+ return super().__getitem__(key)
38
+
39
+ def get(self, key: str, default = None) -> Any:
40
+ BlockchainNodesConnectionInfo.__key_warning(key)
41
+ return super().get(key, default)
42
+
43
+ def __init__(__self__, *,
44
+ endpoint_infos: Optional[Sequence['outputs.BlockchainNodesConnectionInfoEndpointInfo']] = None,
45
+ service_attachment: Optional[str] = None):
46
+ """
47
+ :param Sequence['BlockchainNodesConnectionInfoEndpointInfoArgs'] endpoint_infos: (Output)
48
+ The endpoint information through which to interact with a blockchain node.
49
+ Structure is documented below.
50
+ :param str service_attachment: (Output)
51
+ A service attachment that exposes a node, and has the following format: projects/{project}/regions/{region}/serviceAttachments/{service_attachment_name}
52
+ """
53
+ if endpoint_infos is not None:
54
+ pulumi.set(__self__, "endpoint_infos", endpoint_infos)
55
+ if service_attachment is not None:
56
+ pulumi.set(__self__, "service_attachment", service_attachment)
57
+
58
+ @property
59
+ @pulumi.getter(name="endpointInfos")
60
+ def endpoint_infos(self) -> Optional[Sequence['outputs.BlockchainNodesConnectionInfoEndpointInfo']]:
61
+ """
62
+ (Output)
63
+ The endpoint information through which to interact with a blockchain node.
64
+ Structure is documented below.
65
+ """
66
+ return pulumi.get(self, "endpoint_infos")
67
+
68
+ @property
69
+ @pulumi.getter(name="serviceAttachment")
70
+ def service_attachment(self) -> Optional[str]:
71
+ """
72
+ (Output)
73
+ A service attachment that exposes a node, and has the following format: projects/{project}/regions/{region}/serviceAttachments/{service_attachment_name}
74
+ """
75
+ return pulumi.get(self, "service_attachment")
76
+
77
+
78
+ @pulumi.output_type
79
+ class BlockchainNodesConnectionInfoEndpointInfo(dict):
80
+ @staticmethod
81
+ def __key_warning(key: str):
82
+ suggest = None
83
+ if key == "jsonRpcApiEndpoint":
84
+ suggest = "json_rpc_api_endpoint"
85
+ elif key == "websocketsApiEndpoint":
86
+ suggest = "websockets_api_endpoint"
87
+
88
+ if suggest:
89
+ pulumi.log.warn(f"Key '{key}' not found in BlockchainNodesConnectionInfoEndpointInfo. Access the value via the '{suggest}' property getter instead.")
90
+
91
+ def __getitem__(self, key: str) -> Any:
92
+ BlockchainNodesConnectionInfoEndpointInfo.__key_warning(key)
93
+ return super().__getitem__(key)
94
+
95
+ def get(self, key: str, default = None) -> Any:
96
+ BlockchainNodesConnectionInfoEndpointInfo.__key_warning(key)
97
+ return super().get(key, default)
98
+
99
+ def __init__(__self__, *,
100
+ json_rpc_api_endpoint: Optional[str] = None,
101
+ websockets_api_endpoint: Optional[str] = None):
102
+ """
103
+ :param str json_rpc_api_endpoint: (Output)
104
+ The assigned URL for the node JSON-RPC API endpoint.
105
+ :param str websockets_api_endpoint: (Output)
106
+ The assigned URL for the node WebSockets API endpoint.
107
+ """
108
+ if json_rpc_api_endpoint is not None:
109
+ pulumi.set(__self__, "json_rpc_api_endpoint", json_rpc_api_endpoint)
110
+ if websockets_api_endpoint is not None:
111
+ pulumi.set(__self__, "websockets_api_endpoint", websockets_api_endpoint)
112
+
113
+ @property
114
+ @pulumi.getter(name="jsonRpcApiEndpoint")
115
+ def json_rpc_api_endpoint(self) -> Optional[str]:
116
+ """
117
+ (Output)
118
+ The assigned URL for the node JSON-RPC API endpoint.
119
+ """
120
+ return pulumi.get(self, "json_rpc_api_endpoint")
121
+
122
+ @property
123
+ @pulumi.getter(name="websocketsApiEndpoint")
124
+ def websockets_api_endpoint(self) -> Optional[str]:
125
+ """
126
+ (Output)
127
+ The assigned URL for the node WebSockets API endpoint.
128
+ """
129
+ return pulumi.get(self, "websockets_api_endpoint")
130
+
131
+
132
+ @pulumi.output_type
133
+ class BlockchainNodesEthereumDetails(dict):
134
+ @staticmethod
135
+ def __key_warning(key: str):
136
+ suggest = None
137
+ if key == "additionalEndpoints":
138
+ suggest = "additional_endpoints"
139
+ elif key == "apiEnableAdmin":
140
+ suggest = "api_enable_admin"
141
+ elif key == "apiEnableDebug":
142
+ suggest = "api_enable_debug"
143
+ elif key == "consensusClient":
144
+ suggest = "consensus_client"
145
+ elif key == "executionClient":
146
+ suggest = "execution_client"
147
+ elif key == "gethDetails":
148
+ suggest = "geth_details"
149
+ elif key == "nodeType":
150
+ suggest = "node_type"
151
+ elif key == "validatorConfig":
152
+ suggest = "validator_config"
153
+
154
+ if suggest:
155
+ pulumi.log.warn(f"Key '{key}' not found in BlockchainNodesEthereumDetails. Access the value via the '{suggest}' property getter instead.")
156
+
157
+ def __getitem__(self, key: str) -> Any:
158
+ BlockchainNodesEthereumDetails.__key_warning(key)
159
+ return super().__getitem__(key)
160
+
161
+ def get(self, key: str, default = None) -> Any:
162
+ BlockchainNodesEthereumDetails.__key_warning(key)
163
+ return super().get(key, default)
164
+
165
+ def __init__(__self__, *,
166
+ additional_endpoints: Optional[Sequence['outputs.BlockchainNodesEthereumDetailsAdditionalEndpoint']] = None,
167
+ api_enable_admin: Optional[bool] = None,
168
+ api_enable_debug: Optional[bool] = None,
169
+ consensus_client: Optional[str] = None,
170
+ execution_client: Optional[str] = None,
171
+ geth_details: Optional['outputs.BlockchainNodesEthereumDetailsGethDetails'] = None,
172
+ network: Optional[str] = None,
173
+ node_type: Optional[str] = None,
174
+ validator_config: Optional['outputs.BlockchainNodesEthereumDetailsValidatorConfig'] = None):
175
+ """
176
+ :param Sequence['BlockchainNodesEthereumDetailsAdditionalEndpointArgs'] additional_endpoints: (Output)
177
+ User-provided key-value pairs
178
+ Structure is documented below.
179
+ :param bool api_enable_admin: Enables JSON-RPC access to functions in the admin namespace. Defaults to false.
180
+ :param bool api_enable_debug: Enables JSON-RPC access to functions in the debug namespace. Defaults to false.
181
+ :param str consensus_client: The consensus client
182
+ Possible values are: `CONSENSUS_CLIENT_UNSPECIFIED`, `LIGHTHOUSE`.
183
+ :param str execution_client: The execution client
184
+ Possible values are: `EXECUTION_CLIENT_UNSPECIFIED`, `GETH`, `ERIGON`.
185
+ :param 'BlockchainNodesEthereumDetailsGethDetailsArgs' geth_details: User-provided key-value pairs
186
+ Structure is documented below.
187
+ :param str network: The Ethereum environment being accessed.
188
+ Possible values are: `MAINNET`, `TESTNET_GOERLI_PRATER`, `TESTNET_SEPOLIA`.
189
+ :param str node_type: The type of Ethereum node.
190
+ Possible values are: `LIGHT`, `FULL`, `ARCHIVE`.
191
+ :param 'BlockchainNodesEthereumDetailsValidatorConfigArgs' validator_config: Configuration for validator-related parameters on the beacon client, and for any managed validator client.
192
+ Structure is documented below.
193
+ """
194
+ if additional_endpoints is not None:
195
+ pulumi.set(__self__, "additional_endpoints", additional_endpoints)
196
+ if api_enable_admin is not None:
197
+ pulumi.set(__self__, "api_enable_admin", api_enable_admin)
198
+ if api_enable_debug is not None:
199
+ pulumi.set(__self__, "api_enable_debug", api_enable_debug)
200
+ if consensus_client is not None:
201
+ pulumi.set(__self__, "consensus_client", consensus_client)
202
+ if execution_client is not None:
203
+ pulumi.set(__self__, "execution_client", execution_client)
204
+ if geth_details is not None:
205
+ pulumi.set(__self__, "geth_details", geth_details)
206
+ if network is not None:
207
+ pulumi.set(__self__, "network", network)
208
+ if node_type is not None:
209
+ pulumi.set(__self__, "node_type", node_type)
210
+ if validator_config is not None:
211
+ pulumi.set(__self__, "validator_config", validator_config)
212
+
213
+ @property
214
+ @pulumi.getter(name="additionalEndpoints")
215
+ def additional_endpoints(self) -> Optional[Sequence['outputs.BlockchainNodesEthereumDetailsAdditionalEndpoint']]:
216
+ """
217
+ (Output)
218
+ User-provided key-value pairs
219
+ Structure is documented below.
220
+ """
221
+ return pulumi.get(self, "additional_endpoints")
222
+
223
+ @property
224
+ @pulumi.getter(name="apiEnableAdmin")
225
+ def api_enable_admin(self) -> Optional[bool]:
226
+ """
227
+ Enables JSON-RPC access to functions in the admin namespace. Defaults to false.
228
+ """
229
+ return pulumi.get(self, "api_enable_admin")
230
+
231
+ @property
232
+ @pulumi.getter(name="apiEnableDebug")
233
+ def api_enable_debug(self) -> Optional[bool]:
234
+ """
235
+ Enables JSON-RPC access to functions in the debug namespace. Defaults to false.
236
+ """
237
+ return pulumi.get(self, "api_enable_debug")
238
+
239
+ @property
240
+ @pulumi.getter(name="consensusClient")
241
+ def consensus_client(self) -> Optional[str]:
242
+ """
243
+ The consensus client
244
+ Possible values are: `CONSENSUS_CLIENT_UNSPECIFIED`, `LIGHTHOUSE`.
245
+ """
246
+ return pulumi.get(self, "consensus_client")
247
+
248
+ @property
249
+ @pulumi.getter(name="executionClient")
250
+ def execution_client(self) -> Optional[str]:
251
+ """
252
+ The execution client
253
+ Possible values are: `EXECUTION_CLIENT_UNSPECIFIED`, `GETH`, `ERIGON`.
254
+ """
255
+ return pulumi.get(self, "execution_client")
256
+
257
+ @property
258
+ @pulumi.getter(name="gethDetails")
259
+ def geth_details(self) -> Optional['outputs.BlockchainNodesEthereumDetailsGethDetails']:
260
+ """
261
+ User-provided key-value pairs
262
+ Structure is documented below.
263
+ """
264
+ return pulumi.get(self, "geth_details")
265
+
266
+ @property
267
+ @pulumi.getter
268
+ def network(self) -> Optional[str]:
269
+ """
270
+ The Ethereum environment being accessed.
271
+ Possible values are: `MAINNET`, `TESTNET_GOERLI_PRATER`, `TESTNET_SEPOLIA`.
272
+ """
273
+ return pulumi.get(self, "network")
274
+
275
+ @property
276
+ @pulumi.getter(name="nodeType")
277
+ def node_type(self) -> Optional[str]:
278
+ """
279
+ The type of Ethereum node.
280
+ Possible values are: `LIGHT`, `FULL`, `ARCHIVE`.
281
+ """
282
+ return pulumi.get(self, "node_type")
283
+
284
+ @property
285
+ @pulumi.getter(name="validatorConfig")
286
+ def validator_config(self) -> Optional['outputs.BlockchainNodesEthereumDetailsValidatorConfig']:
287
+ """
288
+ Configuration for validator-related parameters on the beacon client, and for any managed validator client.
289
+ Structure is documented below.
290
+ """
291
+ return pulumi.get(self, "validator_config")
292
+
293
+
294
+ @pulumi.output_type
295
+ class BlockchainNodesEthereumDetailsAdditionalEndpoint(dict):
296
+ @staticmethod
297
+ def __key_warning(key: str):
298
+ suggest = None
299
+ if key == "beaconApiEndpoint":
300
+ suggest = "beacon_api_endpoint"
301
+ elif key == "beaconPrometheusMetricsApiEndpoint":
302
+ suggest = "beacon_prometheus_metrics_api_endpoint"
303
+ elif key == "executionClientPrometheusMetricsApiEndpoint":
304
+ suggest = "execution_client_prometheus_metrics_api_endpoint"
305
+
306
+ if suggest:
307
+ pulumi.log.warn(f"Key '{key}' not found in BlockchainNodesEthereumDetailsAdditionalEndpoint. Access the value via the '{suggest}' property getter instead.")
308
+
309
+ def __getitem__(self, key: str) -> Any:
310
+ BlockchainNodesEthereumDetailsAdditionalEndpoint.__key_warning(key)
311
+ return super().__getitem__(key)
312
+
313
+ def get(self, key: str, default = None) -> Any:
314
+ BlockchainNodesEthereumDetailsAdditionalEndpoint.__key_warning(key)
315
+ return super().get(key, default)
316
+
317
+ def __init__(__self__, *,
318
+ beacon_api_endpoint: Optional[str] = None,
319
+ beacon_prometheus_metrics_api_endpoint: Optional[str] = None,
320
+ execution_client_prometheus_metrics_api_endpoint: Optional[str] = None):
321
+ """
322
+ :param str beacon_api_endpoint: (Output)
323
+ The assigned URL for the node's Beacon API endpoint.
324
+ :param str beacon_prometheus_metrics_api_endpoint: (Output)
325
+ The assigned URL for the node's Beacon Prometheus metrics endpoint.
326
+ :param str execution_client_prometheus_metrics_api_endpoint: (Output)
327
+ The assigned URL for the node's execution client's Prometheus metrics endpoint.
328
+ """
329
+ if beacon_api_endpoint is not None:
330
+ pulumi.set(__self__, "beacon_api_endpoint", beacon_api_endpoint)
331
+ if beacon_prometheus_metrics_api_endpoint is not None:
332
+ pulumi.set(__self__, "beacon_prometheus_metrics_api_endpoint", beacon_prometheus_metrics_api_endpoint)
333
+ if execution_client_prometheus_metrics_api_endpoint is not None:
334
+ pulumi.set(__self__, "execution_client_prometheus_metrics_api_endpoint", execution_client_prometheus_metrics_api_endpoint)
335
+
336
+ @property
337
+ @pulumi.getter(name="beaconApiEndpoint")
338
+ def beacon_api_endpoint(self) -> Optional[str]:
339
+ """
340
+ (Output)
341
+ The assigned URL for the node's Beacon API endpoint.
342
+ """
343
+ return pulumi.get(self, "beacon_api_endpoint")
344
+
345
+ @property
346
+ @pulumi.getter(name="beaconPrometheusMetricsApiEndpoint")
347
+ def beacon_prometheus_metrics_api_endpoint(self) -> Optional[str]:
348
+ """
349
+ (Output)
350
+ The assigned URL for the node's Beacon Prometheus metrics endpoint.
351
+ """
352
+ return pulumi.get(self, "beacon_prometheus_metrics_api_endpoint")
353
+
354
+ @property
355
+ @pulumi.getter(name="executionClientPrometheusMetricsApiEndpoint")
356
+ def execution_client_prometheus_metrics_api_endpoint(self) -> Optional[str]:
357
+ """
358
+ (Output)
359
+ The assigned URL for the node's execution client's Prometheus metrics endpoint.
360
+ """
361
+ return pulumi.get(self, "execution_client_prometheus_metrics_api_endpoint")
362
+
363
+
364
+ @pulumi.output_type
365
+ class BlockchainNodesEthereumDetailsGethDetails(dict):
366
+ @staticmethod
367
+ def __key_warning(key: str):
368
+ suggest = None
369
+ if key == "garbageCollectionMode":
370
+ suggest = "garbage_collection_mode"
371
+
372
+ if suggest:
373
+ pulumi.log.warn(f"Key '{key}' not found in BlockchainNodesEthereumDetailsGethDetails. Access the value via the '{suggest}' property getter instead.")
374
+
375
+ def __getitem__(self, key: str) -> Any:
376
+ BlockchainNodesEthereumDetailsGethDetails.__key_warning(key)
377
+ return super().__getitem__(key)
378
+
379
+ def get(self, key: str, default = None) -> Any:
380
+ BlockchainNodesEthereumDetailsGethDetails.__key_warning(key)
381
+ return super().get(key, default)
382
+
383
+ def __init__(__self__, *,
384
+ garbage_collection_mode: Optional[str] = None):
385
+ """
386
+ :param str garbage_collection_mode: Blockchain garbage collection modes. Only applicable when NodeType is FULL or ARCHIVE.
387
+ Possible values are: `FULL`, `ARCHIVE`.
388
+
389
+ <a name="nested_additional_endpoints"></a>The `additional_endpoints` block contains:
390
+ """
391
+ if garbage_collection_mode is not None:
392
+ pulumi.set(__self__, "garbage_collection_mode", garbage_collection_mode)
393
+
394
+ @property
395
+ @pulumi.getter(name="garbageCollectionMode")
396
+ def garbage_collection_mode(self) -> Optional[str]:
397
+ """
398
+ Blockchain garbage collection modes. Only applicable when NodeType is FULL or ARCHIVE.
399
+ Possible values are: `FULL`, `ARCHIVE`.
400
+
401
+ <a name="nested_additional_endpoints"></a>The `additional_endpoints` block contains:
402
+ """
403
+ return pulumi.get(self, "garbage_collection_mode")
404
+
405
+
406
+ @pulumi.output_type
407
+ class BlockchainNodesEthereumDetailsValidatorConfig(dict):
408
+ @staticmethod
409
+ def __key_warning(key: str):
410
+ suggest = None
411
+ if key == "mevRelayUrls":
412
+ suggest = "mev_relay_urls"
413
+
414
+ if suggest:
415
+ pulumi.log.warn(f"Key '{key}' not found in BlockchainNodesEthereumDetailsValidatorConfig. Access the value via the '{suggest}' property getter instead.")
416
+
417
+ def __getitem__(self, key: str) -> Any:
418
+ BlockchainNodesEthereumDetailsValidatorConfig.__key_warning(key)
419
+ return super().__getitem__(key)
420
+
421
+ def get(self, key: str, default = None) -> Any:
422
+ BlockchainNodesEthereumDetailsValidatorConfig.__key_warning(key)
423
+ return super().get(key, default)
424
+
425
+ def __init__(__self__, *,
426
+ mev_relay_urls: Optional[Sequence[str]] = None):
427
+ """
428
+ :param Sequence[str] mev_relay_urls: URLs for MEV-relay services to use for block building. When set, a managed MEV-boost service is configured on the beacon client.
429
+ """
430
+ if mev_relay_urls is not None:
431
+ pulumi.set(__self__, "mev_relay_urls", mev_relay_urls)
432
+
433
+ @property
434
+ @pulumi.getter(name="mevRelayUrls")
435
+ def mev_relay_urls(self) -> Optional[Sequence[str]]:
436
+ """
437
+ URLs for MEV-relay services to use for block building. When set, a managed MEV-boost service is configured on the beacon client.
438
+ """
439
+ return pulumi.get(self, "mev_relay_urls")
440
+
441
+
@@ -56,6 +56,7 @@ from .get_instance_serial_port import *
56
56
  from .get_instance_template import *
57
57
  from .get_lbip_ranges import *
58
58
  from .get_machine_image_iam_policy import *
59
+ from .get_machine_types import *
59
60
  from .get_netblock_ip_ranges import *
60
61
  from .get_network import *
61
62
  from .get_network_endpoint_group import *
@@ -149,6 +150,7 @@ from .region_disk_resource_policy_attachment import *
149
150
  from .region_health_check import *
150
151
  from .region_instance_group_manager import *
151
152
  from .region_instance_template import *
153
+ from .region_network_endpoint import *
152
154
  from .region_network_endpoint_group import *
153
155
  from .region_network_firewall_policy import *
154
156
  from .region_network_firewall_policy_association import *
@@ -554,6 +554,7 @@ class _DiskState:
554
554
  creation_timestamp: Optional[pulumi.Input[str]] = None,
555
555
  description: Optional[pulumi.Input[str]] = None,
556
556
  disk_encryption_key: Optional[pulumi.Input['DiskDiskEncryptionKeyArgs']] = None,
557
+ disk_id: Optional[pulumi.Input[str]] = None,
557
558
  effective_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
558
559
  enable_confidential_compute: Optional[pulumi.Input[bool]] = None,
559
560
  guest_os_features: Optional[pulumi.Input[Sequence[pulumi.Input['DiskGuestOsFeatureArgs']]]] = None,
@@ -601,6 +602,7 @@ class _DiskState:
601
602
  the disk will be encrypted using an automatically generated key and
602
603
  you do not need to provide a key to use the disk later.
603
604
  Structure is documented below.
605
+ :param pulumi.Input[str] disk_id: The unique identifier for the resource. This identifier is defined by the server.
604
606
  :param pulumi.Input[Mapping[str, pulumi.Input[str]]] effective_labels: All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
605
607
  :param pulumi.Input[bool] enable_confidential_compute: Whether this disk is using confidential compute mode.
606
608
  Note: Only supported on hyperdisk skus, disk_encryption_key is required when setting to true
@@ -719,6 +721,8 @@ class _DiskState:
719
721
  pulumi.set(__self__, "description", description)
720
722
  if disk_encryption_key is not None:
721
723
  pulumi.set(__self__, "disk_encryption_key", disk_encryption_key)
724
+ if disk_id is not None:
725
+ pulumi.set(__self__, "disk_id", disk_id)
722
726
  if effective_labels is not None:
723
727
  pulumi.set(__self__, "effective_labels", effective_labels)
724
728
  if enable_confidential_compute is not None:
@@ -842,6 +846,18 @@ class _DiskState:
842
846
  def disk_encryption_key(self, value: Optional[pulumi.Input['DiskDiskEncryptionKeyArgs']]):
843
847
  pulumi.set(self, "disk_encryption_key", value)
844
848
 
849
+ @property
850
+ @pulumi.getter(name="diskId")
851
+ def disk_id(self) -> Optional[pulumi.Input[str]]:
852
+ """
853
+ The unique identifier for the resource. This identifier is defined by the server.
854
+ """
855
+ return pulumi.get(self, "disk_id")
856
+
857
+ @disk_id.setter
858
+ def disk_id(self, value: Optional[pulumi.Input[str]]):
859
+ pulumi.set(self, "disk_id", value)
860
+
845
861
  @property
846
862
  @pulumi.getter(name="effectiveLabels")
847
863
  def effective_labels(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
@@ -1701,6 +1717,7 @@ class Disk(pulumi.CustomResource):
1701
1717
  __props__.__dict__["type"] = type
1702
1718
  __props__.__dict__["zone"] = zone
1703
1719
  __props__.__dict__["creation_timestamp"] = None
1720
+ __props__.__dict__["disk_id"] = None
1704
1721
  __props__.__dict__["effective_labels"] = None
1705
1722
  __props__.__dict__["label_fingerprint"] = None
1706
1723
  __props__.__dict__["last_attach_timestamp"] = None
@@ -1727,6 +1744,7 @@ class Disk(pulumi.CustomResource):
1727
1744
  creation_timestamp: Optional[pulumi.Input[str]] = None,
1728
1745
  description: Optional[pulumi.Input[str]] = None,
1729
1746
  disk_encryption_key: Optional[pulumi.Input[pulumi.InputType['DiskDiskEncryptionKeyArgs']]] = None,
1747
+ disk_id: Optional[pulumi.Input[str]] = None,
1730
1748
  effective_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
1731
1749
  enable_confidential_compute: Optional[pulumi.Input[bool]] = None,
1732
1750
  guest_os_features: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['DiskGuestOsFeatureArgs']]]]] = None,
@@ -1779,6 +1797,7 @@ class Disk(pulumi.CustomResource):
1779
1797
  the disk will be encrypted using an automatically generated key and
1780
1798
  you do not need to provide a key to use the disk later.
1781
1799
  Structure is documented below.
1800
+ :param pulumi.Input[str] disk_id: The unique identifier for the resource. This identifier is defined by the server.
1782
1801
  :param pulumi.Input[Mapping[str, pulumi.Input[str]]] effective_labels: All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
1783
1802
  :param pulumi.Input[bool] enable_confidential_compute: Whether this disk is using confidential compute mode.
1784
1803
  Note: Only supported on hyperdisk skus, disk_encryption_key is required when setting to true
@@ -1897,6 +1916,7 @@ class Disk(pulumi.CustomResource):
1897
1916
  __props__.__dict__["creation_timestamp"] = creation_timestamp
1898
1917
  __props__.__dict__["description"] = description
1899
1918
  __props__.__dict__["disk_encryption_key"] = disk_encryption_key
1919
+ __props__.__dict__["disk_id"] = disk_id
1900
1920
  __props__.__dict__["effective_labels"] = effective_labels
1901
1921
  __props__.__dict__["enable_confidential_compute"] = enable_confidential_compute
1902
1922
  __props__.__dict__["guest_os_features"] = guest_os_features
@@ -1972,6 +1992,14 @@ class Disk(pulumi.CustomResource):
1972
1992
  """
1973
1993
  return pulumi.get(self, "disk_encryption_key")
1974
1994
 
1995
+ @property
1996
+ @pulumi.getter(name="diskId")
1997
+ def disk_id(self) -> pulumi.Output[str]:
1998
+ """
1999
+ The unique identifier for the resource. This identifier is defined by the server.
2000
+ """
2001
+ return pulumi.get(self, "disk_id")
2002
+
1975
2003
  @property
1976
2004
  @pulumi.getter(name="effectiveLabels")
1977
2005
  def effective_labels(self) -> pulumi.Output[Mapping[str, str]]:
@@ -22,7 +22,7 @@ class GetDiskResult:
22
22
  """
23
23
  A collection of values returned by getDisk.
24
24
  """
25
- def __init__(__self__, async_primary_disks=None, creation_timestamp=None, description=None, disk_encryption_keys=None, effective_labels=None, enable_confidential_compute=None, guest_os_features=None, id=None, image=None, interface=None, label_fingerprint=None, labels=None, last_attach_timestamp=None, last_detach_timestamp=None, licenses=None, multi_writer=None, name=None, physical_block_size_bytes=None, project=None, provisioned_iops=None, provisioned_throughput=None, pulumi_labels=None, resource_policies=None, self_link=None, size=None, snapshot=None, source_disk=None, source_disk_id=None, source_image_encryption_keys=None, source_image_id=None, source_snapshot_encryption_keys=None, source_snapshot_id=None, type=None, users=None, zone=None):
25
+ def __init__(__self__, async_primary_disks=None, creation_timestamp=None, description=None, disk_encryption_keys=None, disk_id=None, effective_labels=None, enable_confidential_compute=None, guest_os_features=None, id=None, image=None, interface=None, label_fingerprint=None, labels=None, last_attach_timestamp=None, last_detach_timestamp=None, licenses=None, multi_writer=None, name=None, physical_block_size_bytes=None, project=None, provisioned_iops=None, provisioned_throughput=None, pulumi_labels=None, resource_policies=None, self_link=None, size=None, snapshot=None, source_disk=None, source_disk_id=None, source_image_encryption_keys=None, source_image_id=None, source_snapshot_encryption_keys=None, source_snapshot_id=None, type=None, users=None, zone=None):
26
26
  if async_primary_disks and not isinstance(async_primary_disks, list):
27
27
  raise TypeError("Expected argument 'async_primary_disks' to be a list")
28
28
  pulumi.set(__self__, "async_primary_disks", async_primary_disks)
@@ -35,6 +35,9 @@ class GetDiskResult:
35
35
  if disk_encryption_keys and not isinstance(disk_encryption_keys, list):
36
36
  raise TypeError("Expected argument 'disk_encryption_keys' to be a list")
37
37
  pulumi.set(__self__, "disk_encryption_keys", disk_encryption_keys)
38
+ if disk_id and not isinstance(disk_id, str):
39
+ raise TypeError("Expected argument 'disk_id' to be a str")
40
+ pulumi.set(__self__, "disk_id", disk_id)
38
41
  if effective_labels and not isinstance(effective_labels, dict):
39
42
  raise TypeError("Expected argument 'effective_labels' to be a dict")
40
43
  pulumi.set(__self__, "effective_labels", effective_labels)
@@ -155,6 +158,11 @@ class GetDiskResult:
155
158
  def disk_encryption_keys(self) -> Sequence['outputs.GetDiskDiskEncryptionKeyResult']:
156
159
  return pulumi.get(self, "disk_encryption_keys")
157
160
 
161
+ @property
162
+ @pulumi.getter(name="diskId")
163
+ def disk_id(self) -> str:
164
+ return pulumi.get(self, "disk_id")
165
+
158
166
  @property
159
167
  @pulumi.getter(name="effectiveLabels")
160
168
  def effective_labels(self) -> Mapping[str, str]:
@@ -384,6 +392,7 @@ class AwaitableGetDiskResult(GetDiskResult):
384
392
  creation_timestamp=self.creation_timestamp,
385
393
  description=self.description,
386
394
  disk_encryption_keys=self.disk_encryption_keys,
395
+ disk_id=self.disk_id,
387
396
  effective_labels=self.effective_labels,
388
397
  enable_confidential_compute=self.enable_confidential_compute,
389
398
  guest_os_features=self.guest_os_features,
@@ -461,6 +470,7 @@ def get_disk(name: Optional[str] = None,
461
470
  creation_timestamp=pulumi.get(__ret__, 'creation_timestamp'),
462
471
  description=pulumi.get(__ret__, 'description'),
463
472
  disk_encryption_keys=pulumi.get(__ret__, 'disk_encryption_keys'),
473
+ disk_id=pulumi.get(__ret__, 'disk_id'),
464
474
  effective_labels=pulumi.get(__ret__, 'effective_labels'),
465
475
  enable_confidential_compute=pulumi.get(__ret__, 'enable_confidential_compute'),
466
476
  guest_os_features=pulumi.get(__ret__, 'guest_os_features'),
@@ -22,7 +22,7 @@ class GetInstanceGroupManagerResult:
22
22
  """
23
23
  A collection of values returned by getInstanceGroupManager.
24
24
  """
25
- def __init__(__self__, all_instances_configs=None, auto_healing_policies=None, base_instance_name=None, description=None, fingerprint=None, id=None, instance_group=None, instance_lifecycle_policies=None, list_managed_instances_results=None, name=None, named_ports=None, operation=None, project=None, self_link=None, stateful_disks=None, stateful_external_ips=None, stateful_internal_ips=None, statuses=None, target_pools=None, target_size=None, update_policies=None, versions=None, wait_for_instances=None, wait_for_instances_status=None, zone=None):
25
+ def __init__(__self__, all_instances_configs=None, auto_healing_policies=None, base_instance_name=None, creation_timestamp=None, description=None, fingerprint=None, id=None, instance_group=None, instance_lifecycle_policies=None, list_managed_instances_results=None, name=None, named_ports=None, operation=None, project=None, self_link=None, stateful_disks=None, stateful_external_ips=None, stateful_internal_ips=None, statuses=None, target_pools=None, target_size=None, update_policies=None, versions=None, wait_for_instances=None, wait_for_instances_status=None, zone=None):
26
26
  if all_instances_configs and not isinstance(all_instances_configs, list):
27
27
  raise TypeError("Expected argument 'all_instances_configs' to be a list")
28
28
  pulumi.set(__self__, "all_instances_configs", all_instances_configs)
@@ -32,6 +32,9 @@ class GetInstanceGroupManagerResult:
32
32
  if base_instance_name and not isinstance(base_instance_name, str):
33
33
  raise TypeError("Expected argument 'base_instance_name' to be a str")
34
34
  pulumi.set(__self__, "base_instance_name", base_instance_name)
35
+ if creation_timestamp and not isinstance(creation_timestamp, str):
36
+ raise TypeError("Expected argument 'creation_timestamp' to be a str")
37
+ pulumi.set(__self__, "creation_timestamp", creation_timestamp)
35
38
  if description and not isinstance(description, str):
36
39
  raise TypeError("Expected argument 'description' to be a str")
37
40
  pulumi.set(__self__, "description", description)
@@ -114,6 +117,11 @@ class GetInstanceGroupManagerResult:
114
117
  def base_instance_name(self) -> str:
115
118
  return pulumi.get(self, "base_instance_name")
116
119
 
120
+ @property
121
+ @pulumi.getter(name="creationTimestamp")
122
+ def creation_timestamp(self) -> str:
123
+ return pulumi.get(self, "creation_timestamp")
124
+
117
125
  @property
118
126
  @pulumi.getter
119
127
  def description(self) -> str:
@@ -237,6 +245,7 @@ class AwaitableGetInstanceGroupManagerResult(GetInstanceGroupManagerResult):
237
245
  all_instances_configs=self.all_instances_configs,
238
246
  auto_healing_policies=self.auto_healing_policies,
239
247
  base_instance_name=self.base_instance_name,
248
+ creation_timestamp=self.creation_timestamp,
240
249
  description=self.description,
241
250
  fingerprint=self.fingerprint,
242
251
  id=self.id,
@@ -300,6 +309,7 @@ def get_instance_group_manager(name: Optional[str] = None,
300
309
  all_instances_configs=pulumi.get(__ret__, 'all_instances_configs'),
301
310
  auto_healing_policies=pulumi.get(__ret__, 'auto_healing_policies'),
302
311
  base_instance_name=pulumi.get(__ret__, 'base_instance_name'),
312
+ creation_timestamp=pulumi.get(__ret__, 'creation_timestamp'),
303
313
  description=pulumi.get(__ret__, 'description'),
304
314
  fingerprint=pulumi.get(__ret__, 'fingerprint'),
305
315
  id=pulumi.get(__ret__, 'id'),