pulumi-gcp 7.19.0a1713292926__py3-none-any.whl → 7.19.0a1713444144__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 (41) hide show
  1. pulumi_gcp/__init__.py +11 -0
  2. pulumi_gcp/accesscontextmanager/access_policy.py +4 -4
  3. pulumi_gcp/apigee/sync_authorization.py +4 -4
  4. pulumi_gcp/compute/_inputs.py +24 -0
  5. pulumi_gcp/compute/get_router_nat.py +11 -1
  6. pulumi_gcp/compute/instance_settings.py +16 -0
  7. pulumi_gcp/compute/outputs.py +41 -0
  8. pulumi_gcp/compute/router_interface.py +47 -0
  9. pulumi_gcp/compute/router_nat.py +68 -0
  10. pulumi_gcp/compute/router_peer.py +141 -0
  11. pulumi_gcp/config/__init__.pyi +2 -0
  12. pulumi_gcp/config/vars.py +4 -0
  13. pulumi_gcp/container/_inputs.py +48 -7
  14. pulumi_gcp/container/outputs.py +67 -8
  15. pulumi_gcp/datastore/data_store_index.py +14 -0
  16. pulumi_gcp/dns/_inputs.py +22 -22
  17. pulumi_gcp/dns/outputs.py +22 -22
  18. pulumi_gcp/firestore/_inputs.py +80 -11
  19. pulumi_gcp/firestore/document.py +0 -4
  20. pulumi_gcp/firestore/index.py +116 -42
  21. pulumi_gcp/firestore/outputs.py +70 -11
  22. pulumi_gcp/gkebackup/_inputs.py +358 -3
  23. pulumi_gcp/gkebackup/backup_plan.py +294 -0
  24. pulumi_gcp/gkebackup/outputs.py +353 -3
  25. pulumi_gcp/networksecurity/firewall_endpoint.py +2 -0
  26. pulumi_gcp/networksecurity/firewall_endpoint_association.py +61 -0
  27. pulumi_gcp/parallelstore/__init__.py +8 -0
  28. pulumi_gcp/parallelstore/instance.py +1128 -0
  29. pulumi_gcp/provider.py +20 -0
  30. pulumi_gcp/sql/_inputs.py +16 -0
  31. pulumi_gcp/sql/outputs.py +36 -0
  32. pulumi_gcp/tags/__init__.py +2 -0
  33. pulumi_gcp/tags/get_tag_keys.py +101 -0
  34. pulumi_gcp/tags/get_tag_values.py +101 -0
  35. pulumi_gcp/tags/outputs.py +200 -0
  36. pulumi_gcp/vmwareengine/get_private_cloud.py +21 -1
  37. pulumi_gcp/vmwareengine/private_cloud.py +101 -7
  38. {pulumi_gcp-7.19.0a1713292926.dist-info → pulumi_gcp-7.19.0a1713444144.dist-info}/METADATA +1 -1
  39. {pulumi_gcp-7.19.0a1713292926.dist-info → pulumi_gcp-7.19.0a1713444144.dist-info}/RECORD +41 -37
  40. {pulumi_gcp-7.19.0a1713292926.dist-info → pulumi_gcp-7.19.0a1713444144.dist-info}/WHEEL +0 -0
  41. {pulumi_gcp-7.19.0a1713292926.dist-info → pulumi_gcp-7.19.0a1713444144.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,1128 @@
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
+
12
+ __all__ = ['InstanceArgs', 'Instance']
13
+
14
+ @pulumi.input_type
15
+ class InstanceArgs:
16
+ def __init__(__self__, *,
17
+ capacity_gib: pulumi.Input[str],
18
+ instance_id: pulumi.Input[str],
19
+ location: pulumi.Input[str],
20
+ description: Optional[pulumi.Input[str]] = None,
21
+ labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
22
+ network: Optional[pulumi.Input[str]] = None,
23
+ project: Optional[pulumi.Input[str]] = None,
24
+ reserved_ip_range: Optional[pulumi.Input[str]] = None):
25
+ """
26
+ The set of arguments for constructing a Instance resource.
27
+ :param pulumi.Input[str] capacity_gib: Immutable. Storage capacity of Parallelstore instance in Gibibytes (GiB).
28
+ :param pulumi.Input[str] instance_id: The logical name of the Parallelstore instance in the user project with the following restrictions:
29
+ * Must contain only lowercase letters, numbers, and hyphens.
30
+ * Must start with a letter.
31
+ * Must be between 1-63 characters.
32
+ * Must end with a number or a letter.
33
+ * Must be unique within the customer project/ location
34
+
35
+
36
+ - - -
37
+ :param pulumi.Input[str] location: Part of `parent`. See documentation of `projectsId`.
38
+ :param pulumi.Input[str] description: The description of the instance. 2048 characters or less.
39
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: Cloud Labels are a flexible and lightweight mechanism for organizing cloud
40
+ resources into groups that reflect a customer's organizational needs and
41
+ deployment strategies. Cloud Labels can be used to filter collections of
42
+ resources. They can be used to control how resource metrics are aggregated.
43
+ And they can be used as arguments to policy management rules (e.g. route,
44
+ firewall, load balancing, etc.).
45
+ * Label keys must be between 1 and 63 characters long and must conform to
46
+ the following regular expression: `a-z{0,62}`.
47
+ * Label values must be between 0 and 63 characters long and must conform
48
+ to the regular expression `[a-z0-9_-]{0,63}`.
49
+ * No more than 64 labels can be associated with a given resource.
50
+ See https://goo.gl/xmQnxf for more information on and examples of labels.
51
+ If you plan to use labels in your own code, please note that additional
52
+ characters may be allowed in the future. Therefore, you are advised to use
53
+ an internal label representation, such as JSON, which doesn't rely upon
54
+ specific characters being disallowed. For example, representing labels
55
+ as the string: name + "_" + value would prove problematic if we were to
56
+ allow "_" in a future release.
57
+ **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
58
+ Please refer to the field `effective_labels` for all of the labels present on the resource.
59
+ :param pulumi.Input[str] network: Immutable. The name of the Google Compute Engine
60
+ [VPC network](https://cloud.google.com/vpc/docs/vpc) to which the
61
+ instance is connected.
62
+ :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
63
+ If it is not provided, the provider project is used.
64
+ :param pulumi.Input[str] reserved_ip_range: Immutable. Contains the id of the allocated IP address range associated with the
65
+ private service access connection for example, "test-default" associated
66
+ with IP range 10.0.0.0/29. If no range id is provided all ranges will be
67
+ considered.
68
+ """
69
+ pulumi.set(__self__, "capacity_gib", capacity_gib)
70
+ pulumi.set(__self__, "instance_id", instance_id)
71
+ pulumi.set(__self__, "location", location)
72
+ if description is not None:
73
+ pulumi.set(__self__, "description", description)
74
+ if labels is not None:
75
+ pulumi.set(__self__, "labels", labels)
76
+ if network is not None:
77
+ pulumi.set(__self__, "network", network)
78
+ if project is not None:
79
+ pulumi.set(__self__, "project", project)
80
+ if reserved_ip_range is not None:
81
+ pulumi.set(__self__, "reserved_ip_range", reserved_ip_range)
82
+
83
+ @property
84
+ @pulumi.getter(name="capacityGib")
85
+ def capacity_gib(self) -> pulumi.Input[str]:
86
+ """
87
+ Immutable. Storage capacity of Parallelstore instance in Gibibytes (GiB).
88
+ """
89
+ return pulumi.get(self, "capacity_gib")
90
+
91
+ @capacity_gib.setter
92
+ def capacity_gib(self, value: pulumi.Input[str]):
93
+ pulumi.set(self, "capacity_gib", value)
94
+
95
+ @property
96
+ @pulumi.getter(name="instanceId")
97
+ def instance_id(self) -> pulumi.Input[str]:
98
+ """
99
+ The logical name of the Parallelstore instance in the user project with the following restrictions:
100
+ * Must contain only lowercase letters, numbers, and hyphens.
101
+ * Must start with a letter.
102
+ * Must be between 1-63 characters.
103
+ * Must end with a number or a letter.
104
+ * Must be unique within the customer project/ location
105
+
106
+
107
+ - - -
108
+ """
109
+ return pulumi.get(self, "instance_id")
110
+
111
+ @instance_id.setter
112
+ def instance_id(self, value: pulumi.Input[str]):
113
+ pulumi.set(self, "instance_id", value)
114
+
115
+ @property
116
+ @pulumi.getter
117
+ def location(self) -> pulumi.Input[str]:
118
+ """
119
+ Part of `parent`. See documentation of `projectsId`.
120
+ """
121
+ return pulumi.get(self, "location")
122
+
123
+ @location.setter
124
+ def location(self, value: pulumi.Input[str]):
125
+ pulumi.set(self, "location", value)
126
+
127
+ @property
128
+ @pulumi.getter
129
+ def description(self) -> Optional[pulumi.Input[str]]:
130
+ """
131
+ The description of the instance. 2048 characters or less.
132
+ """
133
+ return pulumi.get(self, "description")
134
+
135
+ @description.setter
136
+ def description(self, value: Optional[pulumi.Input[str]]):
137
+ pulumi.set(self, "description", value)
138
+
139
+ @property
140
+ @pulumi.getter
141
+ def labels(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
142
+ """
143
+ Cloud Labels are a flexible and lightweight mechanism for organizing cloud
144
+ resources into groups that reflect a customer's organizational needs and
145
+ deployment strategies. Cloud Labels can be used to filter collections of
146
+ resources. They can be used to control how resource metrics are aggregated.
147
+ And they can be used as arguments to policy management rules (e.g. route,
148
+ firewall, load balancing, etc.).
149
+ * Label keys must be between 1 and 63 characters long and must conform to
150
+ the following regular expression: `a-z{0,62}`.
151
+ * Label values must be between 0 and 63 characters long and must conform
152
+ to the regular expression `[a-z0-9_-]{0,63}`.
153
+ * No more than 64 labels can be associated with a given resource.
154
+ See https://goo.gl/xmQnxf for more information on and examples of labels.
155
+ If you plan to use labels in your own code, please note that additional
156
+ characters may be allowed in the future. Therefore, you are advised to use
157
+ an internal label representation, such as JSON, which doesn't rely upon
158
+ specific characters being disallowed. For example, representing labels
159
+ as the string: name + "_" + value would prove problematic if we were to
160
+ allow "_" in a future release.
161
+ **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
162
+ Please refer to the field `effective_labels` for all of the labels present on the resource.
163
+ """
164
+ return pulumi.get(self, "labels")
165
+
166
+ @labels.setter
167
+ def labels(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
168
+ pulumi.set(self, "labels", value)
169
+
170
+ @property
171
+ @pulumi.getter
172
+ def network(self) -> Optional[pulumi.Input[str]]:
173
+ """
174
+ Immutable. The name of the Google Compute Engine
175
+ [VPC network](https://cloud.google.com/vpc/docs/vpc) to which the
176
+ instance is connected.
177
+ """
178
+ return pulumi.get(self, "network")
179
+
180
+ @network.setter
181
+ def network(self, value: Optional[pulumi.Input[str]]):
182
+ pulumi.set(self, "network", value)
183
+
184
+ @property
185
+ @pulumi.getter
186
+ def project(self) -> Optional[pulumi.Input[str]]:
187
+ """
188
+ The ID of the project in which the resource belongs.
189
+ If it is not provided, the provider project is used.
190
+ """
191
+ return pulumi.get(self, "project")
192
+
193
+ @project.setter
194
+ def project(self, value: Optional[pulumi.Input[str]]):
195
+ pulumi.set(self, "project", value)
196
+
197
+ @property
198
+ @pulumi.getter(name="reservedIpRange")
199
+ def reserved_ip_range(self) -> Optional[pulumi.Input[str]]:
200
+ """
201
+ Immutable. Contains the id of the allocated IP address range associated with the
202
+ private service access connection for example, "test-default" associated
203
+ with IP range 10.0.0.0/29. If no range id is provided all ranges will be
204
+ considered.
205
+ """
206
+ return pulumi.get(self, "reserved_ip_range")
207
+
208
+ @reserved_ip_range.setter
209
+ def reserved_ip_range(self, value: Optional[pulumi.Input[str]]):
210
+ pulumi.set(self, "reserved_ip_range", value)
211
+
212
+
213
+ @pulumi.input_type
214
+ class _InstanceState:
215
+ def __init__(__self__, *,
216
+ access_points: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
217
+ capacity_gib: Optional[pulumi.Input[str]] = None,
218
+ create_time: Optional[pulumi.Input[str]] = None,
219
+ daos_version: Optional[pulumi.Input[str]] = None,
220
+ description: Optional[pulumi.Input[str]] = None,
221
+ effective_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
222
+ effective_reserved_ip_range: Optional[pulumi.Input[str]] = None,
223
+ instance_id: Optional[pulumi.Input[str]] = None,
224
+ labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
225
+ location: Optional[pulumi.Input[str]] = None,
226
+ name: Optional[pulumi.Input[str]] = None,
227
+ network: Optional[pulumi.Input[str]] = None,
228
+ project: Optional[pulumi.Input[str]] = None,
229
+ pulumi_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
230
+ reserved_ip_range: Optional[pulumi.Input[str]] = None,
231
+ state: Optional[pulumi.Input[str]] = None,
232
+ update_time: Optional[pulumi.Input[str]] = None):
233
+ """
234
+ Input properties used for looking up and filtering Instance resources.
235
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] access_points: List of access_points.
236
+ Contains a list of IPv4 addresses used for client side configuration.
237
+ :param pulumi.Input[str] capacity_gib: Immutable. Storage capacity of Parallelstore instance in Gibibytes (GiB).
238
+ :param pulumi.Input[str] create_time: The time when the instance was created.
239
+ :param pulumi.Input[str] daos_version: The version of DAOS software running in the instance
240
+ :param pulumi.Input[str] description: The description of the instance. 2048 characters or less.
241
+ :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.
242
+ :param pulumi.Input[str] effective_reserved_ip_range: Immutable. Contains the id of the allocated IP address range associated with the
243
+ private service access connection for example, "test-default" associated
244
+ with IP range 10.0.0.0/29. This field is populated by the service and
245
+ and contains the value currently used by the service.
246
+ :param pulumi.Input[str] instance_id: The logical name of the Parallelstore instance in the user project with the following restrictions:
247
+ * Must contain only lowercase letters, numbers, and hyphens.
248
+ * Must start with a letter.
249
+ * Must be between 1-63 characters.
250
+ * Must end with a number or a letter.
251
+ * Must be unique within the customer project/ location
252
+
253
+
254
+ - - -
255
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: Cloud Labels are a flexible and lightweight mechanism for organizing cloud
256
+ resources into groups that reflect a customer's organizational needs and
257
+ deployment strategies. Cloud Labels can be used to filter collections of
258
+ resources. They can be used to control how resource metrics are aggregated.
259
+ And they can be used as arguments to policy management rules (e.g. route,
260
+ firewall, load balancing, etc.).
261
+ * Label keys must be between 1 and 63 characters long and must conform to
262
+ the following regular expression: `a-z{0,62}`.
263
+ * Label values must be between 0 and 63 characters long and must conform
264
+ to the regular expression `[a-z0-9_-]{0,63}`.
265
+ * No more than 64 labels can be associated with a given resource.
266
+ See https://goo.gl/xmQnxf for more information on and examples of labels.
267
+ If you plan to use labels in your own code, please note that additional
268
+ characters may be allowed in the future. Therefore, you are advised to use
269
+ an internal label representation, such as JSON, which doesn't rely upon
270
+ specific characters being disallowed. For example, representing labels
271
+ as the string: name + "_" + value would prove problematic if we were to
272
+ allow "_" in a future release.
273
+ **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
274
+ Please refer to the field `effective_labels` for all of the labels present on the resource.
275
+ :param pulumi.Input[str] location: Part of `parent`. See documentation of `projectsId`.
276
+ :param pulumi.Input[str] name: The resource name of the instance, in the format
277
+ `projects/{project}/locations/{location}/instances/{instance_id}`
278
+ :param pulumi.Input[str] network: Immutable. The name of the Google Compute Engine
279
+ [VPC network](https://cloud.google.com/vpc/docs/vpc) to which the
280
+ instance is connected.
281
+ :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
282
+ If it is not provided, the provider project is used.
283
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] pulumi_labels: The combination of labels configured directly on the resource
284
+ and default labels configured on the provider.
285
+ :param pulumi.Input[str] reserved_ip_range: Immutable. Contains the id of the allocated IP address range associated with the
286
+ private service access connection for example, "test-default" associated
287
+ with IP range 10.0.0.0/29. If no range id is provided all ranges will be
288
+ considered.
289
+ :param pulumi.Input[str] state: The instance state.
290
+ Possible values:
291
+ STATE_UNSPECIFIED
292
+ CREATING
293
+ ACTIVE
294
+ DELETING
295
+ FAILED
296
+ :param pulumi.Input[str] update_time: The time when the instance was updated.
297
+ """
298
+ if access_points is not None:
299
+ pulumi.set(__self__, "access_points", access_points)
300
+ if capacity_gib is not None:
301
+ pulumi.set(__self__, "capacity_gib", capacity_gib)
302
+ if create_time is not None:
303
+ pulumi.set(__self__, "create_time", create_time)
304
+ if daos_version is not None:
305
+ pulumi.set(__self__, "daos_version", daos_version)
306
+ if description is not None:
307
+ pulumi.set(__self__, "description", description)
308
+ if effective_labels is not None:
309
+ pulumi.set(__self__, "effective_labels", effective_labels)
310
+ if effective_reserved_ip_range is not None:
311
+ pulumi.set(__self__, "effective_reserved_ip_range", effective_reserved_ip_range)
312
+ if instance_id is not None:
313
+ pulumi.set(__self__, "instance_id", instance_id)
314
+ if labels is not None:
315
+ pulumi.set(__self__, "labels", labels)
316
+ if location is not None:
317
+ pulumi.set(__self__, "location", location)
318
+ if name is not None:
319
+ pulumi.set(__self__, "name", name)
320
+ if network is not None:
321
+ pulumi.set(__self__, "network", network)
322
+ if project is not None:
323
+ pulumi.set(__self__, "project", project)
324
+ if pulumi_labels is not None:
325
+ pulumi.set(__self__, "pulumi_labels", pulumi_labels)
326
+ if reserved_ip_range is not None:
327
+ pulumi.set(__self__, "reserved_ip_range", reserved_ip_range)
328
+ if state is not None:
329
+ pulumi.set(__self__, "state", state)
330
+ if update_time is not None:
331
+ pulumi.set(__self__, "update_time", update_time)
332
+
333
+ @property
334
+ @pulumi.getter(name="accessPoints")
335
+ def access_points(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
336
+ """
337
+ List of access_points.
338
+ Contains a list of IPv4 addresses used for client side configuration.
339
+ """
340
+ return pulumi.get(self, "access_points")
341
+
342
+ @access_points.setter
343
+ def access_points(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
344
+ pulumi.set(self, "access_points", value)
345
+
346
+ @property
347
+ @pulumi.getter(name="capacityGib")
348
+ def capacity_gib(self) -> Optional[pulumi.Input[str]]:
349
+ """
350
+ Immutable. Storage capacity of Parallelstore instance in Gibibytes (GiB).
351
+ """
352
+ return pulumi.get(self, "capacity_gib")
353
+
354
+ @capacity_gib.setter
355
+ def capacity_gib(self, value: Optional[pulumi.Input[str]]):
356
+ pulumi.set(self, "capacity_gib", value)
357
+
358
+ @property
359
+ @pulumi.getter(name="createTime")
360
+ def create_time(self) -> Optional[pulumi.Input[str]]:
361
+ """
362
+ The time when the instance was created.
363
+ """
364
+ return pulumi.get(self, "create_time")
365
+
366
+ @create_time.setter
367
+ def create_time(self, value: Optional[pulumi.Input[str]]):
368
+ pulumi.set(self, "create_time", value)
369
+
370
+ @property
371
+ @pulumi.getter(name="daosVersion")
372
+ def daos_version(self) -> Optional[pulumi.Input[str]]:
373
+ """
374
+ The version of DAOS software running in the instance
375
+ """
376
+ return pulumi.get(self, "daos_version")
377
+
378
+ @daos_version.setter
379
+ def daos_version(self, value: Optional[pulumi.Input[str]]):
380
+ pulumi.set(self, "daos_version", value)
381
+
382
+ @property
383
+ @pulumi.getter
384
+ def description(self) -> Optional[pulumi.Input[str]]:
385
+ """
386
+ The description of the instance. 2048 characters or less.
387
+ """
388
+ return pulumi.get(self, "description")
389
+
390
+ @description.setter
391
+ def description(self, value: Optional[pulumi.Input[str]]):
392
+ pulumi.set(self, "description", value)
393
+
394
+ @property
395
+ @pulumi.getter(name="effectiveLabels")
396
+ def effective_labels(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
397
+ """
398
+ All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
399
+ """
400
+ return pulumi.get(self, "effective_labels")
401
+
402
+ @effective_labels.setter
403
+ def effective_labels(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
404
+ pulumi.set(self, "effective_labels", value)
405
+
406
+ @property
407
+ @pulumi.getter(name="effectiveReservedIpRange")
408
+ def effective_reserved_ip_range(self) -> Optional[pulumi.Input[str]]:
409
+ """
410
+ Immutable. Contains the id of the allocated IP address range associated with the
411
+ private service access connection for example, "test-default" associated
412
+ with IP range 10.0.0.0/29. This field is populated by the service and
413
+ and contains the value currently used by the service.
414
+ """
415
+ return pulumi.get(self, "effective_reserved_ip_range")
416
+
417
+ @effective_reserved_ip_range.setter
418
+ def effective_reserved_ip_range(self, value: Optional[pulumi.Input[str]]):
419
+ pulumi.set(self, "effective_reserved_ip_range", value)
420
+
421
+ @property
422
+ @pulumi.getter(name="instanceId")
423
+ def instance_id(self) -> Optional[pulumi.Input[str]]:
424
+ """
425
+ The logical name of the Parallelstore instance in the user project with the following restrictions:
426
+ * Must contain only lowercase letters, numbers, and hyphens.
427
+ * Must start with a letter.
428
+ * Must be between 1-63 characters.
429
+ * Must end with a number or a letter.
430
+ * Must be unique within the customer project/ location
431
+
432
+
433
+ - - -
434
+ """
435
+ return pulumi.get(self, "instance_id")
436
+
437
+ @instance_id.setter
438
+ def instance_id(self, value: Optional[pulumi.Input[str]]):
439
+ pulumi.set(self, "instance_id", value)
440
+
441
+ @property
442
+ @pulumi.getter
443
+ def labels(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
444
+ """
445
+ Cloud Labels are a flexible and lightweight mechanism for organizing cloud
446
+ resources into groups that reflect a customer's organizational needs and
447
+ deployment strategies. Cloud Labels can be used to filter collections of
448
+ resources. They can be used to control how resource metrics are aggregated.
449
+ And they can be used as arguments to policy management rules (e.g. route,
450
+ firewall, load balancing, etc.).
451
+ * Label keys must be between 1 and 63 characters long and must conform to
452
+ the following regular expression: `a-z{0,62}`.
453
+ * Label values must be between 0 and 63 characters long and must conform
454
+ to the regular expression `[a-z0-9_-]{0,63}`.
455
+ * No more than 64 labels can be associated with a given resource.
456
+ See https://goo.gl/xmQnxf for more information on and examples of labels.
457
+ If you plan to use labels in your own code, please note that additional
458
+ characters may be allowed in the future. Therefore, you are advised to use
459
+ an internal label representation, such as JSON, which doesn't rely upon
460
+ specific characters being disallowed. For example, representing labels
461
+ as the string: name + "_" + value would prove problematic if we were to
462
+ allow "_" in a future release.
463
+ **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
464
+ Please refer to the field `effective_labels` for all of the labels present on the resource.
465
+ """
466
+ return pulumi.get(self, "labels")
467
+
468
+ @labels.setter
469
+ def labels(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
470
+ pulumi.set(self, "labels", value)
471
+
472
+ @property
473
+ @pulumi.getter
474
+ def location(self) -> Optional[pulumi.Input[str]]:
475
+ """
476
+ Part of `parent`. See documentation of `projectsId`.
477
+ """
478
+ return pulumi.get(self, "location")
479
+
480
+ @location.setter
481
+ def location(self, value: Optional[pulumi.Input[str]]):
482
+ pulumi.set(self, "location", value)
483
+
484
+ @property
485
+ @pulumi.getter
486
+ def name(self) -> Optional[pulumi.Input[str]]:
487
+ """
488
+ The resource name of the instance, in the format
489
+ `projects/{project}/locations/{location}/instances/{instance_id}`
490
+ """
491
+ return pulumi.get(self, "name")
492
+
493
+ @name.setter
494
+ def name(self, value: Optional[pulumi.Input[str]]):
495
+ pulumi.set(self, "name", value)
496
+
497
+ @property
498
+ @pulumi.getter
499
+ def network(self) -> Optional[pulumi.Input[str]]:
500
+ """
501
+ Immutable. The name of the Google Compute Engine
502
+ [VPC network](https://cloud.google.com/vpc/docs/vpc) to which the
503
+ instance is connected.
504
+ """
505
+ return pulumi.get(self, "network")
506
+
507
+ @network.setter
508
+ def network(self, value: Optional[pulumi.Input[str]]):
509
+ pulumi.set(self, "network", value)
510
+
511
+ @property
512
+ @pulumi.getter
513
+ def project(self) -> Optional[pulumi.Input[str]]:
514
+ """
515
+ The ID of the project in which the resource belongs.
516
+ If it is not provided, the provider project is used.
517
+ """
518
+ return pulumi.get(self, "project")
519
+
520
+ @project.setter
521
+ def project(self, value: Optional[pulumi.Input[str]]):
522
+ pulumi.set(self, "project", value)
523
+
524
+ @property
525
+ @pulumi.getter(name="pulumiLabels")
526
+ def pulumi_labels(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
527
+ """
528
+ The combination of labels configured directly on the resource
529
+ and default labels configured on the provider.
530
+ """
531
+ return pulumi.get(self, "pulumi_labels")
532
+
533
+ @pulumi_labels.setter
534
+ def pulumi_labels(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
535
+ pulumi.set(self, "pulumi_labels", value)
536
+
537
+ @property
538
+ @pulumi.getter(name="reservedIpRange")
539
+ def reserved_ip_range(self) -> Optional[pulumi.Input[str]]:
540
+ """
541
+ Immutable. Contains the id of the allocated IP address range associated with the
542
+ private service access connection for example, "test-default" associated
543
+ with IP range 10.0.0.0/29. If no range id is provided all ranges will be
544
+ considered.
545
+ """
546
+ return pulumi.get(self, "reserved_ip_range")
547
+
548
+ @reserved_ip_range.setter
549
+ def reserved_ip_range(self, value: Optional[pulumi.Input[str]]):
550
+ pulumi.set(self, "reserved_ip_range", value)
551
+
552
+ @property
553
+ @pulumi.getter
554
+ def state(self) -> Optional[pulumi.Input[str]]:
555
+ """
556
+ The instance state.
557
+ Possible values:
558
+ STATE_UNSPECIFIED
559
+ CREATING
560
+ ACTIVE
561
+ DELETING
562
+ FAILED
563
+ """
564
+ return pulumi.get(self, "state")
565
+
566
+ @state.setter
567
+ def state(self, value: Optional[pulumi.Input[str]]):
568
+ pulumi.set(self, "state", value)
569
+
570
+ @property
571
+ @pulumi.getter(name="updateTime")
572
+ def update_time(self) -> Optional[pulumi.Input[str]]:
573
+ """
574
+ The time when the instance was updated.
575
+ """
576
+ return pulumi.get(self, "update_time")
577
+
578
+ @update_time.setter
579
+ def update_time(self, value: Optional[pulumi.Input[str]]):
580
+ pulumi.set(self, "update_time", value)
581
+
582
+
583
+ class Instance(pulumi.CustomResource):
584
+ @overload
585
+ def __init__(__self__,
586
+ resource_name: str,
587
+ opts: Optional[pulumi.ResourceOptions] = None,
588
+ capacity_gib: Optional[pulumi.Input[str]] = None,
589
+ description: Optional[pulumi.Input[str]] = None,
590
+ instance_id: Optional[pulumi.Input[str]] = None,
591
+ labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
592
+ location: Optional[pulumi.Input[str]] = None,
593
+ network: Optional[pulumi.Input[str]] = None,
594
+ project: Optional[pulumi.Input[str]] = None,
595
+ reserved_ip_range: Optional[pulumi.Input[str]] = None,
596
+ __props__=None):
597
+ """
598
+ ## Example Usage
599
+
600
+ ### Parallelstore Instance Basic
601
+
602
+ <!--Start PulumiCodeChooser -->
603
+ ```python
604
+ import pulumi
605
+ import pulumi_gcp as gcp
606
+
607
+ network = gcp.compute.Network("network",
608
+ name="network",
609
+ auto_create_subnetworks=True,
610
+ mtu=8896)
611
+ instance = gcp.parallelstore.Instance("instance",
612
+ instance_id="instance",
613
+ location="us-central1-a",
614
+ description="test instance",
615
+ capacity_gib="12000",
616
+ network=network.name,
617
+ labels={
618
+ "test": "value",
619
+ })
620
+ # Create an IP address
621
+ private_ip_alloc = gcp.compute.GlobalAddress("private_ip_alloc",
622
+ name="address",
623
+ purpose="VPC_PEERING",
624
+ address_type="INTERNAL",
625
+ prefix_length=24,
626
+ network=network.id)
627
+ # Create a private connection
628
+ default = gcp.servicenetworking.Connection("default",
629
+ network=network.id,
630
+ service="servicenetworking.googleapis.com",
631
+ reserved_peering_ranges=[private_ip_alloc.name])
632
+ ```
633
+ <!--End PulumiCodeChooser -->
634
+
635
+ ## Import
636
+
637
+ Instance can be imported using any of these accepted formats:
638
+
639
+ * `projects/{{project}}/locations/{{location}}/instances/{{instance_id}}`
640
+
641
+ * `{{project}}/{{location}}/{{instance_id}}`
642
+
643
+ * `{{location}}/{{instance_id}}`
644
+
645
+ When using the `pulumi import` command, Instance can be imported using one of the formats above. For example:
646
+
647
+ ```sh
648
+ $ pulumi import gcp:parallelstore/instance:Instance default projects/{{project}}/locations/{{location}}/instances/{{instance_id}}
649
+ ```
650
+
651
+ ```sh
652
+ $ pulumi import gcp:parallelstore/instance:Instance default {{project}}/{{location}}/{{instance_id}}
653
+ ```
654
+
655
+ ```sh
656
+ $ pulumi import gcp:parallelstore/instance:Instance default {{location}}/{{instance_id}}
657
+ ```
658
+
659
+ :param str resource_name: The name of the resource.
660
+ :param pulumi.ResourceOptions opts: Options for the resource.
661
+ :param pulumi.Input[str] capacity_gib: Immutable. Storage capacity of Parallelstore instance in Gibibytes (GiB).
662
+ :param pulumi.Input[str] description: The description of the instance. 2048 characters or less.
663
+ :param pulumi.Input[str] instance_id: The logical name of the Parallelstore instance in the user project with the following restrictions:
664
+ * Must contain only lowercase letters, numbers, and hyphens.
665
+ * Must start with a letter.
666
+ * Must be between 1-63 characters.
667
+ * Must end with a number or a letter.
668
+ * Must be unique within the customer project/ location
669
+
670
+
671
+ - - -
672
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: Cloud Labels are a flexible and lightweight mechanism for organizing cloud
673
+ resources into groups that reflect a customer's organizational needs and
674
+ deployment strategies. Cloud Labels can be used to filter collections of
675
+ resources. They can be used to control how resource metrics are aggregated.
676
+ And they can be used as arguments to policy management rules (e.g. route,
677
+ firewall, load balancing, etc.).
678
+ * Label keys must be between 1 and 63 characters long and must conform to
679
+ the following regular expression: `a-z{0,62}`.
680
+ * Label values must be between 0 and 63 characters long and must conform
681
+ to the regular expression `[a-z0-9_-]{0,63}`.
682
+ * No more than 64 labels can be associated with a given resource.
683
+ See https://goo.gl/xmQnxf for more information on and examples of labels.
684
+ If you plan to use labels in your own code, please note that additional
685
+ characters may be allowed in the future. Therefore, you are advised to use
686
+ an internal label representation, such as JSON, which doesn't rely upon
687
+ specific characters being disallowed. For example, representing labels
688
+ as the string: name + "_" + value would prove problematic if we were to
689
+ allow "_" in a future release.
690
+ **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
691
+ Please refer to the field `effective_labels` for all of the labels present on the resource.
692
+ :param pulumi.Input[str] location: Part of `parent`. See documentation of `projectsId`.
693
+ :param pulumi.Input[str] network: Immutable. The name of the Google Compute Engine
694
+ [VPC network](https://cloud.google.com/vpc/docs/vpc) to which the
695
+ instance is connected.
696
+ :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
697
+ If it is not provided, the provider project is used.
698
+ :param pulumi.Input[str] reserved_ip_range: Immutable. Contains the id of the allocated IP address range associated with the
699
+ private service access connection for example, "test-default" associated
700
+ with IP range 10.0.0.0/29. If no range id is provided all ranges will be
701
+ considered.
702
+ """
703
+ ...
704
+ @overload
705
+ def __init__(__self__,
706
+ resource_name: str,
707
+ args: InstanceArgs,
708
+ opts: Optional[pulumi.ResourceOptions] = None):
709
+ """
710
+ ## Example Usage
711
+
712
+ ### Parallelstore Instance Basic
713
+
714
+ <!--Start PulumiCodeChooser -->
715
+ ```python
716
+ import pulumi
717
+ import pulumi_gcp as gcp
718
+
719
+ network = gcp.compute.Network("network",
720
+ name="network",
721
+ auto_create_subnetworks=True,
722
+ mtu=8896)
723
+ instance = gcp.parallelstore.Instance("instance",
724
+ instance_id="instance",
725
+ location="us-central1-a",
726
+ description="test instance",
727
+ capacity_gib="12000",
728
+ network=network.name,
729
+ labels={
730
+ "test": "value",
731
+ })
732
+ # Create an IP address
733
+ private_ip_alloc = gcp.compute.GlobalAddress("private_ip_alloc",
734
+ name="address",
735
+ purpose="VPC_PEERING",
736
+ address_type="INTERNAL",
737
+ prefix_length=24,
738
+ network=network.id)
739
+ # Create a private connection
740
+ default = gcp.servicenetworking.Connection("default",
741
+ network=network.id,
742
+ service="servicenetworking.googleapis.com",
743
+ reserved_peering_ranges=[private_ip_alloc.name])
744
+ ```
745
+ <!--End PulumiCodeChooser -->
746
+
747
+ ## Import
748
+
749
+ Instance can be imported using any of these accepted formats:
750
+
751
+ * `projects/{{project}}/locations/{{location}}/instances/{{instance_id}}`
752
+
753
+ * `{{project}}/{{location}}/{{instance_id}}`
754
+
755
+ * `{{location}}/{{instance_id}}`
756
+
757
+ When using the `pulumi import` command, Instance can be imported using one of the formats above. For example:
758
+
759
+ ```sh
760
+ $ pulumi import gcp:parallelstore/instance:Instance default projects/{{project}}/locations/{{location}}/instances/{{instance_id}}
761
+ ```
762
+
763
+ ```sh
764
+ $ pulumi import gcp:parallelstore/instance:Instance default {{project}}/{{location}}/{{instance_id}}
765
+ ```
766
+
767
+ ```sh
768
+ $ pulumi import gcp:parallelstore/instance:Instance default {{location}}/{{instance_id}}
769
+ ```
770
+
771
+ :param str resource_name: The name of the resource.
772
+ :param InstanceArgs args: The arguments to use to populate this resource's properties.
773
+ :param pulumi.ResourceOptions opts: Options for the resource.
774
+ """
775
+ ...
776
+ def __init__(__self__, resource_name: str, *args, **kwargs):
777
+ resource_args, opts = _utilities.get_resource_args_opts(InstanceArgs, pulumi.ResourceOptions, *args, **kwargs)
778
+ if resource_args is not None:
779
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
780
+ else:
781
+ __self__._internal_init(resource_name, *args, **kwargs)
782
+
783
+ def _internal_init(__self__,
784
+ resource_name: str,
785
+ opts: Optional[pulumi.ResourceOptions] = None,
786
+ capacity_gib: Optional[pulumi.Input[str]] = None,
787
+ description: Optional[pulumi.Input[str]] = None,
788
+ instance_id: Optional[pulumi.Input[str]] = None,
789
+ labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
790
+ location: Optional[pulumi.Input[str]] = None,
791
+ network: Optional[pulumi.Input[str]] = None,
792
+ project: Optional[pulumi.Input[str]] = None,
793
+ reserved_ip_range: Optional[pulumi.Input[str]] = None,
794
+ __props__=None):
795
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
796
+ if not isinstance(opts, pulumi.ResourceOptions):
797
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
798
+ if opts.id is None:
799
+ if __props__ is not None:
800
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
801
+ __props__ = InstanceArgs.__new__(InstanceArgs)
802
+
803
+ if capacity_gib is None and not opts.urn:
804
+ raise TypeError("Missing required property 'capacity_gib'")
805
+ __props__.__dict__["capacity_gib"] = capacity_gib
806
+ __props__.__dict__["description"] = description
807
+ if instance_id is None and not opts.urn:
808
+ raise TypeError("Missing required property 'instance_id'")
809
+ __props__.__dict__["instance_id"] = instance_id
810
+ __props__.__dict__["labels"] = labels
811
+ if location is None and not opts.urn:
812
+ raise TypeError("Missing required property 'location'")
813
+ __props__.__dict__["location"] = location
814
+ __props__.__dict__["network"] = network
815
+ __props__.__dict__["project"] = project
816
+ __props__.__dict__["reserved_ip_range"] = reserved_ip_range
817
+ __props__.__dict__["access_points"] = None
818
+ __props__.__dict__["create_time"] = None
819
+ __props__.__dict__["daos_version"] = None
820
+ __props__.__dict__["effective_labels"] = None
821
+ __props__.__dict__["effective_reserved_ip_range"] = None
822
+ __props__.__dict__["name"] = None
823
+ __props__.__dict__["pulumi_labels"] = None
824
+ __props__.__dict__["state"] = None
825
+ __props__.__dict__["update_time"] = None
826
+ secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["effectiveLabels", "pulumiLabels"])
827
+ opts = pulumi.ResourceOptions.merge(opts, secret_opts)
828
+ super(Instance, __self__).__init__(
829
+ 'gcp:parallelstore/instance:Instance',
830
+ resource_name,
831
+ __props__,
832
+ opts)
833
+
834
+ @staticmethod
835
+ def get(resource_name: str,
836
+ id: pulumi.Input[str],
837
+ opts: Optional[pulumi.ResourceOptions] = None,
838
+ access_points: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
839
+ capacity_gib: Optional[pulumi.Input[str]] = None,
840
+ create_time: Optional[pulumi.Input[str]] = None,
841
+ daos_version: Optional[pulumi.Input[str]] = None,
842
+ description: Optional[pulumi.Input[str]] = None,
843
+ effective_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
844
+ effective_reserved_ip_range: Optional[pulumi.Input[str]] = None,
845
+ instance_id: Optional[pulumi.Input[str]] = None,
846
+ labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
847
+ location: Optional[pulumi.Input[str]] = None,
848
+ name: Optional[pulumi.Input[str]] = None,
849
+ network: Optional[pulumi.Input[str]] = None,
850
+ project: Optional[pulumi.Input[str]] = None,
851
+ pulumi_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
852
+ reserved_ip_range: Optional[pulumi.Input[str]] = None,
853
+ state: Optional[pulumi.Input[str]] = None,
854
+ update_time: Optional[pulumi.Input[str]] = None) -> 'Instance':
855
+ """
856
+ Get an existing Instance resource's state with the given name, id, and optional extra
857
+ properties used to qualify the lookup.
858
+
859
+ :param str resource_name: The unique name of the resulting resource.
860
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
861
+ :param pulumi.ResourceOptions opts: Options for the resource.
862
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] access_points: List of access_points.
863
+ Contains a list of IPv4 addresses used for client side configuration.
864
+ :param pulumi.Input[str] capacity_gib: Immutable. Storage capacity of Parallelstore instance in Gibibytes (GiB).
865
+ :param pulumi.Input[str] create_time: The time when the instance was created.
866
+ :param pulumi.Input[str] daos_version: The version of DAOS software running in the instance
867
+ :param pulumi.Input[str] description: The description of the instance. 2048 characters or less.
868
+ :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.
869
+ :param pulumi.Input[str] effective_reserved_ip_range: Immutable. Contains the id of the allocated IP address range associated with the
870
+ private service access connection for example, "test-default" associated
871
+ with IP range 10.0.0.0/29. This field is populated by the service and
872
+ and contains the value currently used by the service.
873
+ :param pulumi.Input[str] instance_id: The logical name of the Parallelstore instance in the user project with the following restrictions:
874
+ * Must contain only lowercase letters, numbers, and hyphens.
875
+ * Must start with a letter.
876
+ * Must be between 1-63 characters.
877
+ * Must end with a number or a letter.
878
+ * Must be unique within the customer project/ location
879
+
880
+
881
+ - - -
882
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: Cloud Labels are a flexible and lightweight mechanism for organizing cloud
883
+ resources into groups that reflect a customer's organizational needs and
884
+ deployment strategies. Cloud Labels can be used to filter collections of
885
+ resources. They can be used to control how resource metrics are aggregated.
886
+ And they can be used as arguments to policy management rules (e.g. route,
887
+ firewall, load balancing, etc.).
888
+ * Label keys must be between 1 and 63 characters long and must conform to
889
+ the following regular expression: `a-z{0,62}`.
890
+ * Label values must be between 0 and 63 characters long and must conform
891
+ to the regular expression `[a-z0-9_-]{0,63}`.
892
+ * No more than 64 labels can be associated with a given resource.
893
+ See https://goo.gl/xmQnxf for more information on and examples of labels.
894
+ If you plan to use labels in your own code, please note that additional
895
+ characters may be allowed in the future. Therefore, you are advised to use
896
+ an internal label representation, such as JSON, which doesn't rely upon
897
+ specific characters being disallowed. For example, representing labels
898
+ as the string: name + "_" + value would prove problematic if we were to
899
+ allow "_" in a future release.
900
+ **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
901
+ Please refer to the field `effective_labels` for all of the labels present on the resource.
902
+ :param pulumi.Input[str] location: Part of `parent`. See documentation of `projectsId`.
903
+ :param pulumi.Input[str] name: The resource name of the instance, in the format
904
+ `projects/{project}/locations/{location}/instances/{instance_id}`
905
+ :param pulumi.Input[str] network: Immutable. The name of the Google Compute Engine
906
+ [VPC network](https://cloud.google.com/vpc/docs/vpc) to which the
907
+ instance is connected.
908
+ :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
909
+ If it is not provided, the provider project is used.
910
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] pulumi_labels: The combination of labels configured directly on the resource
911
+ and default labels configured on the provider.
912
+ :param pulumi.Input[str] reserved_ip_range: Immutable. Contains the id of the allocated IP address range associated with the
913
+ private service access connection for example, "test-default" associated
914
+ with IP range 10.0.0.0/29. If no range id is provided all ranges will be
915
+ considered.
916
+ :param pulumi.Input[str] state: The instance state.
917
+ Possible values:
918
+ STATE_UNSPECIFIED
919
+ CREATING
920
+ ACTIVE
921
+ DELETING
922
+ FAILED
923
+ :param pulumi.Input[str] update_time: The time when the instance was updated.
924
+ """
925
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
926
+
927
+ __props__ = _InstanceState.__new__(_InstanceState)
928
+
929
+ __props__.__dict__["access_points"] = access_points
930
+ __props__.__dict__["capacity_gib"] = capacity_gib
931
+ __props__.__dict__["create_time"] = create_time
932
+ __props__.__dict__["daos_version"] = daos_version
933
+ __props__.__dict__["description"] = description
934
+ __props__.__dict__["effective_labels"] = effective_labels
935
+ __props__.__dict__["effective_reserved_ip_range"] = effective_reserved_ip_range
936
+ __props__.__dict__["instance_id"] = instance_id
937
+ __props__.__dict__["labels"] = labels
938
+ __props__.__dict__["location"] = location
939
+ __props__.__dict__["name"] = name
940
+ __props__.__dict__["network"] = network
941
+ __props__.__dict__["project"] = project
942
+ __props__.__dict__["pulumi_labels"] = pulumi_labels
943
+ __props__.__dict__["reserved_ip_range"] = reserved_ip_range
944
+ __props__.__dict__["state"] = state
945
+ __props__.__dict__["update_time"] = update_time
946
+ return Instance(resource_name, opts=opts, __props__=__props__)
947
+
948
+ @property
949
+ @pulumi.getter(name="accessPoints")
950
+ def access_points(self) -> pulumi.Output[Sequence[str]]:
951
+ """
952
+ List of access_points.
953
+ Contains a list of IPv4 addresses used for client side configuration.
954
+ """
955
+ return pulumi.get(self, "access_points")
956
+
957
+ @property
958
+ @pulumi.getter(name="capacityGib")
959
+ def capacity_gib(self) -> pulumi.Output[str]:
960
+ """
961
+ Immutable. Storage capacity of Parallelstore instance in Gibibytes (GiB).
962
+ """
963
+ return pulumi.get(self, "capacity_gib")
964
+
965
+ @property
966
+ @pulumi.getter(name="createTime")
967
+ def create_time(self) -> pulumi.Output[str]:
968
+ """
969
+ The time when the instance was created.
970
+ """
971
+ return pulumi.get(self, "create_time")
972
+
973
+ @property
974
+ @pulumi.getter(name="daosVersion")
975
+ def daos_version(self) -> pulumi.Output[str]:
976
+ """
977
+ The version of DAOS software running in the instance
978
+ """
979
+ return pulumi.get(self, "daos_version")
980
+
981
+ @property
982
+ @pulumi.getter
983
+ def description(self) -> pulumi.Output[Optional[str]]:
984
+ """
985
+ The description of the instance. 2048 characters or less.
986
+ """
987
+ return pulumi.get(self, "description")
988
+
989
+ @property
990
+ @pulumi.getter(name="effectiveLabels")
991
+ def effective_labels(self) -> pulumi.Output[Mapping[str, str]]:
992
+ """
993
+ All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
994
+ """
995
+ return pulumi.get(self, "effective_labels")
996
+
997
+ @property
998
+ @pulumi.getter(name="effectiveReservedIpRange")
999
+ def effective_reserved_ip_range(self) -> pulumi.Output[str]:
1000
+ """
1001
+ Immutable. Contains the id of the allocated IP address range associated with the
1002
+ private service access connection for example, "test-default" associated
1003
+ with IP range 10.0.0.0/29. This field is populated by the service and
1004
+ and contains the value currently used by the service.
1005
+ """
1006
+ return pulumi.get(self, "effective_reserved_ip_range")
1007
+
1008
+ @property
1009
+ @pulumi.getter(name="instanceId")
1010
+ def instance_id(self) -> pulumi.Output[str]:
1011
+ """
1012
+ The logical name of the Parallelstore instance in the user project with the following restrictions:
1013
+ * Must contain only lowercase letters, numbers, and hyphens.
1014
+ * Must start with a letter.
1015
+ * Must be between 1-63 characters.
1016
+ * Must end with a number or a letter.
1017
+ * Must be unique within the customer project/ location
1018
+
1019
+
1020
+ - - -
1021
+ """
1022
+ return pulumi.get(self, "instance_id")
1023
+
1024
+ @property
1025
+ @pulumi.getter
1026
+ def labels(self) -> pulumi.Output[Optional[Mapping[str, str]]]:
1027
+ """
1028
+ Cloud Labels are a flexible and lightweight mechanism for organizing cloud
1029
+ resources into groups that reflect a customer's organizational needs and
1030
+ deployment strategies. Cloud Labels can be used to filter collections of
1031
+ resources. They can be used to control how resource metrics are aggregated.
1032
+ And they can be used as arguments to policy management rules (e.g. route,
1033
+ firewall, load balancing, etc.).
1034
+ * Label keys must be between 1 and 63 characters long and must conform to
1035
+ the following regular expression: `a-z{0,62}`.
1036
+ * Label values must be between 0 and 63 characters long and must conform
1037
+ to the regular expression `[a-z0-9_-]{0,63}`.
1038
+ * No more than 64 labels can be associated with a given resource.
1039
+ See https://goo.gl/xmQnxf for more information on and examples of labels.
1040
+ If you plan to use labels in your own code, please note that additional
1041
+ characters may be allowed in the future. Therefore, you are advised to use
1042
+ an internal label representation, such as JSON, which doesn't rely upon
1043
+ specific characters being disallowed. For example, representing labels
1044
+ as the string: name + "_" + value would prove problematic if we were to
1045
+ allow "_" in a future release.
1046
+ **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
1047
+ Please refer to the field `effective_labels` for all of the labels present on the resource.
1048
+ """
1049
+ return pulumi.get(self, "labels")
1050
+
1051
+ @property
1052
+ @pulumi.getter
1053
+ def location(self) -> pulumi.Output[str]:
1054
+ """
1055
+ Part of `parent`. See documentation of `projectsId`.
1056
+ """
1057
+ return pulumi.get(self, "location")
1058
+
1059
+ @property
1060
+ @pulumi.getter
1061
+ def name(self) -> pulumi.Output[str]:
1062
+ """
1063
+ The resource name of the instance, in the format
1064
+ `projects/{project}/locations/{location}/instances/{instance_id}`
1065
+ """
1066
+ return pulumi.get(self, "name")
1067
+
1068
+ @property
1069
+ @pulumi.getter
1070
+ def network(self) -> pulumi.Output[Optional[str]]:
1071
+ """
1072
+ Immutable. The name of the Google Compute Engine
1073
+ [VPC network](https://cloud.google.com/vpc/docs/vpc) to which the
1074
+ instance is connected.
1075
+ """
1076
+ return pulumi.get(self, "network")
1077
+
1078
+ @property
1079
+ @pulumi.getter
1080
+ def project(self) -> pulumi.Output[str]:
1081
+ """
1082
+ The ID of the project in which the resource belongs.
1083
+ If it is not provided, the provider project is used.
1084
+ """
1085
+ return pulumi.get(self, "project")
1086
+
1087
+ @property
1088
+ @pulumi.getter(name="pulumiLabels")
1089
+ def pulumi_labels(self) -> pulumi.Output[Mapping[str, str]]:
1090
+ """
1091
+ The combination of labels configured directly on the resource
1092
+ and default labels configured on the provider.
1093
+ """
1094
+ return pulumi.get(self, "pulumi_labels")
1095
+
1096
+ @property
1097
+ @pulumi.getter(name="reservedIpRange")
1098
+ def reserved_ip_range(self) -> pulumi.Output[Optional[str]]:
1099
+ """
1100
+ Immutable. Contains the id of the allocated IP address range associated with the
1101
+ private service access connection for example, "test-default" associated
1102
+ with IP range 10.0.0.0/29. If no range id is provided all ranges will be
1103
+ considered.
1104
+ """
1105
+ return pulumi.get(self, "reserved_ip_range")
1106
+
1107
+ @property
1108
+ @pulumi.getter
1109
+ def state(self) -> pulumi.Output[str]:
1110
+ """
1111
+ The instance state.
1112
+ Possible values:
1113
+ STATE_UNSPECIFIED
1114
+ CREATING
1115
+ ACTIVE
1116
+ DELETING
1117
+ FAILED
1118
+ """
1119
+ return pulumi.get(self, "state")
1120
+
1121
+ @property
1122
+ @pulumi.getter(name="updateTime")
1123
+ def update_time(self) -> pulumi.Output[str]:
1124
+ """
1125
+ The time when the instance was updated.
1126
+ """
1127
+ return pulumi.get(self, "update_time")
1128
+