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.
- pulumi_gcp/__init__.py +11 -0
- pulumi_gcp/accesscontextmanager/access_policy.py +4 -4
- pulumi_gcp/apigee/sync_authorization.py +4 -4
- pulumi_gcp/compute/_inputs.py +24 -0
- pulumi_gcp/compute/get_router_nat.py +11 -1
- pulumi_gcp/compute/instance_settings.py +16 -0
- pulumi_gcp/compute/outputs.py +41 -0
- pulumi_gcp/compute/router_interface.py +47 -0
- pulumi_gcp/compute/router_nat.py +68 -0
- pulumi_gcp/compute/router_peer.py +141 -0
- pulumi_gcp/config/__init__.pyi +2 -0
- pulumi_gcp/config/vars.py +4 -0
- pulumi_gcp/container/_inputs.py +48 -7
- pulumi_gcp/container/outputs.py +67 -8
- pulumi_gcp/datastore/data_store_index.py +14 -0
- pulumi_gcp/dns/_inputs.py +22 -22
- pulumi_gcp/dns/outputs.py +22 -22
- pulumi_gcp/firestore/_inputs.py +80 -11
- pulumi_gcp/firestore/document.py +0 -4
- pulumi_gcp/firestore/index.py +116 -42
- pulumi_gcp/firestore/outputs.py +70 -11
- pulumi_gcp/gkebackup/_inputs.py +358 -3
- pulumi_gcp/gkebackup/backup_plan.py +294 -0
- pulumi_gcp/gkebackup/outputs.py +353 -3
- pulumi_gcp/networksecurity/firewall_endpoint.py +2 -0
- pulumi_gcp/networksecurity/firewall_endpoint_association.py +61 -0
- pulumi_gcp/parallelstore/__init__.py +8 -0
- pulumi_gcp/parallelstore/instance.py +1128 -0
- pulumi_gcp/provider.py +20 -0
- pulumi_gcp/sql/_inputs.py +16 -0
- pulumi_gcp/sql/outputs.py +36 -0
- pulumi_gcp/tags/__init__.py +2 -0
- pulumi_gcp/tags/get_tag_keys.py +101 -0
- pulumi_gcp/tags/get_tag_values.py +101 -0
- pulumi_gcp/tags/outputs.py +200 -0
- pulumi_gcp/vmwareengine/get_private_cloud.py +21 -1
- pulumi_gcp/vmwareengine/private_cloud.py +101 -7
- {pulumi_gcp-7.19.0a1713292926.dist-info → pulumi_gcp-7.19.0a1713444144.dist-info}/METADATA +1 -1
- {pulumi_gcp-7.19.0a1713292926.dist-info → pulumi_gcp-7.19.0a1713444144.dist-info}/RECORD +41 -37
- {pulumi_gcp-7.19.0a1713292926.dist-info → pulumi_gcp-7.19.0a1713444144.dist-info}/WHEEL +0 -0
- {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
|
+
|