pulumi-gcp 8.21.0a1741070272__py3-none-any.whl → 8.21.0a1741156431__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 +16 -0
- pulumi_gcp/alloydb/__init__.py +1 -0
- pulumi_gcp/alloydb/get_cluster.py +491 -0
- pulumi_gcp/alloydb/outputs.py +808 -0
- pulumi_gcp/appengine/_inputs.py +3 -3
- pulumi_gcp/appengine/outputs.py +2 -2
- pulumi_gcp/backupdisasterrecovery/backup_plan.py +16 -0
- pulumi_gcp/backupdisasterrecovery/backup_plan_association.py +16 -0
- pulumi_gcp/backupdisasterrecovery/management_server.py +16 -0
- pulumi_gcp/bigquery/_inputs.py +6 -8
- pulumi_gcp/bigquery/data_transfer_config.py +28 -0
- pulumi_gcp/bigquery/outputs.py +4 -5
- pulumi_gcp/chronicle/rule_deployment.py +21 -7
- pulumi_gcp/composer/get_environment.py +12 -0
- pulumi_gcp/composer/get_image_versions.py +12 -0
- pulumi_gcp/composer/get_user_workloads_config_map.py +12 -0
- pulumi_gcp/composer/get_user_workloads_secret.py +12 -0
- pulumi_gcp/compute/network_peering_routes_config.py +140 -6
- pulumi_gcp/datacatalog/entry_group.py +4 -0
- pulumi_gcp/datacatalog/tag_template.py +4 -0
- pulumi_gcp/developerconnect/_inputs.py +575 -0
- pulumi_gcp/developerconnect/connection.py +200 -0
- pulumi_gcp/developerconnect/git_repository_link.py +12 -0
- pulumi_gcp/developerconnect/outputs.py +461 -0
- pulumi_gcp/gemini/__init__.py +1 -0
- pulumi_gcp/gemini/data_sharing_with_google_setting.py +6 -0
- pulumi_gcp/gemini/data_sharing_with_google_setting_binding.py +722 -0
- pulumi_gcp/gemini/logging_setting.py +4 -0
- pulumi_gcp/gemini/logging_setting_binding.py +12 -0
- pulumi_gcp/iam/organizations_policy_binding.py +10 -2
- pulumi_gcp/iam/projects_policy_binding.py +10 -2
- pulumi_gcp/iam/workforce_pool_provider.py +63 -11
- pulumi_gcp/parametermanager/get_parameter_version_render.py +3 -0
- pulumi_gcp/parametermanager/get_regional_parameter_version_render.py +3 -0
- pulumi_gcp/projects/__init__.py +1 -0
- pulumi_gcp/projects/get_ancestry.py +150 -0
- pulumi_gcp/projects/outputs.py +30 -0
- pulumi_gcp/pulumi-plugin.json +1 -1
- pulumi_gcp/redis/cluster.py +211 -94
- pulumi_gcp/secretmanager/secret_version.py +73 -23
- pulumi_gcp/spanner/__init__.py +1 -0
- pulumi_gcp/spanner/instance_partition.py +658 -0
- pulumi_gcp/sql/user.py +20 -14
- pulumi_gcp/tpu/_inputs.py +150 -1
- pulumi_gcp/tpu/outputs.py +114 -1
- pulumi_gcp/tpu/v2_queued_resource.py +74 -0
- {pulumi_gcp-8.21.0a1741070272.dist-info → pulumi_gcp-8.21.0a1741156431.dist-info}/METADATA +1 -1
- {pulumi_gcp-8.21.0a1741070272.dist-info → pulumi_gcp-8.21.0a1741156431.dist-info}/RECORD +50 -46
- {pulumi_gcp-8.21.0a1741070272.dist-info → pulumi_gcp-8.21.0a1741156431.dist-info}/WHEEL +0 -0
- {pulumi_gcp-8.21.0a1741070272.dist-info → pulumi_gcp-8.21.0a1741156431.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,658 @@
|
|
1
|
+
# coding=utf-8
|
2
|
+
# *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
|
3
|
+
# *** Do not edit by hand unless you're certain you know what you are doing! ***
|
4
|
+
|
5
|
+
import copy
|
6
|
+
import warnings
|
7
|
+
import sys
|
8
|
+
import pulumi
|
9
|
+
import pulumi.runtime
|
10
|
+
from typing import Any, Mapping, Optional, Sequence, Union, overload
|
11
|
+
if sys.version_info >= (3, 11):
|
12
|
+
from typing import NotRequired, TypedDict, TypeAlias
|
13
|
+
else:
|
14
|
+
from typing_extensions import NotRequired, TypedDict, TypeAlias
|
15
|
+
from .. import _utilities
|
16
|
+
|
17
|
+
__all__ = ['InstancePartitionArgs', 'InstancePartition']
|
18
|
+
|
19
|
+
@pulumi.input_type
|
20
|
+
class InstancePartitionArgs:
|
21
|
+
def __init__(__self__, *,
|
22
|
+
config: pulumi.Input[str],
|
23
|
+
display_name: pulumi.Input[str],
|
24
|
+
instance: pulumi.Input[str],
|
25
|
+
name: Optional[pulumi.Input[str]] = None,
|
26
|
+
node_count: Optional[pulumi.Input[int]] = None,
|
27
|
+
processing_units: Optional[pulumi.Input[int]] = None,
|
28
|
+
project: Optional[pulumi.Input[str]] = None):
|
29
|
+
"""
|
30
|
+
The set of arguments for constructing a InstancePartition resource.
|
31
|
+
:param pulumi.Input[str] config: The name of the instance partition's configuration (similar to a region) which
|
32
|
+
defines the geographic placement and replication of data in this instance partition.
|
33
|
+
:param pulumi.Input[str] display_name: The descriptive name for this instance partition as it appears in UIs.
|
34
|
+
Must be unique per project and between 4 and 30 characters in length.
|
35
|
+
:param pulumi.Input[str] instance: The instance to create the instance partition in.
|
36
|
+
|
37
|
+
|
38
|
+
- - -
|
39
|
+
:param pulumi.Input[str] name: A unique identifier for the instance partition, which cannot be changed after
|
40
|
+
the instance partition is created. The name must be between 2 and 64 characters
|
41
|
+
and match the regular expression [a-z][a-z0-9\\\\-]{0,61}[a-z0-9].
|
42
|
+
:param pulumi.Input[int] node_count: The number of nodes allocated to this instance partition. One node equals
|
43
|
+
1000 processing units. Exactly one of either node_count or processing_units
|
44
|
+
must be present.
|
45
|
+
:param pulumi.Input[int] processing_units: The number of processing units allocated to this instance partition.
|
46
|
+
Exactly one of either node_count or processing_units must be present.
|
47
|
+
:param pulumi.Input[str] project: The ID of the project in which the resource belongs.
|
48
|
+
If it is not provided, the provider project is used.
|
49
|
+
"""
|
50
|
+
pulumi.set(__self__, "config", config)
|
51
|
+
pulumi.set(__self__, "display_name", display_name)
|
52
|
+
pulumi.set(__self__, "instance", instance)
|
53
|
+
if name is not None:
|
54
|
+
pulumi.set(__self__, "name", name)
|
55
|
+
if node_count is not None:
|
56
|
+
pulumi.set(__self__, "node_count", node_count)
|
57
|
+
if processing_units is not None:
|
58
|
+
pulumi.set(__self__, "processing_units", processing_units)
|
59
|
+
if project is not None:
|
60
|
+
pulumi.set(__self__, "project", project)
|
61
|
+
|
62
|
+
@property
|
63
|
+
@pulumi.getter
|
64
|
+
def config(self) -> pulumi.Input[str]:
|
65
|
+
"""
|
66
|
+
The name of the instance partition's configuration (similar to a region) which
|
67
|
+
defines the geographic placement and replication of data in this instance partition.
|
68
|
+
"""
|
69
|
+
return pulumi.get(self, "config")
|
70
|
+
|
71
|
+
@config.setter
|
72
|
+
def config(self, value: pulumi.Input[str]):
|
73
|
+
pulumi.set(self, "config", value)
|
74
|
+
|
75
|
+
@property
|
76
|
+
@pulumi.getter(name="displayName")
|
77
|
+
def display_name(self) -> pulumi.Input[str]:
|
78
|
+
"""
|
79
|
+
The descriptive name for this instance partition as it appears in UIs.
|
80
|
+
Must be unique per project and between 4 and 30 characters in length.
|
81
|
+
"""
|
82
|
+
return pulumi.get(self, "display_name")
|
83
|
+
|
84
|
+
@display_name.setter
|
85
|
+
def display_name(self, value: pulumi.Input[str]):
|
86
|
+
pulumi.set(self, "display_name", value)
|
87
|
+
|
88
|
+
@property
|
89
|
+
@pulumi.getter
|
90
|
+
def instance(self) -> pulumi.Input[str]:
|
91
|
+
"""
|
92
|
+
The instance to create the instance partition in.
|
93
|
+
|
94
|
+
|
95
|
+
- - -
|
96
|
+
"""
|
97
|
+
return pulumi.get(self, "instance")
|
98
|
+
|
99
|
+
@instance.setter
|
100
|
+
def instance(self, value: pulumi.Input[str]):
|
101
|
+
pulumi.set(self, "instance", value)
|
102
|
+
|
103
|
+
@property
|
104
|
+
@pulumi.getter
|
105
|
+
def name(self) -> Optional[pulumi.Input[str]]:
|
106
|
+
"""
|
107
|
+
A unique identifier for the instance partition, which cannot be changed after
|
108
|
+
the instance partition is created. The name must be between 2 and 64 characters
|
109
|
+
and match the regular expression [a-z][a-z0-9\\\\-]{0,61}[a-z0-9].
|
110
|
+
"""
|
111
|
+
return pulumi.get(self, "name")
|
112
|
+
|
113
|
+
@name.setter
|
114
|
+
def name(self, value: Optional[pulumi.Input[str]]):
|
115
|
+
pulumi.set(self, "name", value)
|
116
|
+
|
117
|
+
@property
|
118
|
+
@pulumi.getter(name="nodeCount")
|
119
|
+
def node_count(self) -> Optional[pulumi.Input[int]]:
|
120
|
+
"""
|
121
|
+
The number of nodes allocated to this instance partition. One node equals
|
122
|
+
1000 processing units. Exactly one of either node_count or processing_units
|
123
|
+
must be present.
|
124
|
+
"""
|
125
|
+
return pulumi.get(self, "node_count")
|
126
|
+
|
127
|
+
@node_count.setter
|
128
|
+
def node_count(self, value: Optional[pulumi.Input[int]]):
|
129
|
+
pulumi.set(self, "node_count", value)
|
130
|
+
|
131
|
+
@property
|
132
|
+
@pulumi.getter(name="processingUnits")
|
133
|
+
def processing_units(self) -> Optional[pulumi.Input[int]]:
|
134
|
+
"""
|
135
|
+
The number of processing units allocated to this instance partition.
|
136
|
+
Exactly one of either node_count or processing_units must be present.
|
137
|
+
"""
|
138
|
+
return pulumi.get(self, "processing_units")
|
139
|
+
|
140
|
+
@processing_units.setter
|
141
|
+
def processing_units(self, value: Optional[pulumi.Input[int]]):
|
142
|
+
pulumi.set(self, "processing_units", value)
|
143
|
+
|
144
|
+
@property
|
145
|
+
@pulumi.getter
|
146
|
+
def project(self) -> Optional[pulumi.Input[str]]:
|
147
|
+
"""
|
148
|
+
The ID of the project in which the resource belongs.
|
149
|
+
If it is not provided, the provider project is used.
|
150
|
+
"""
|
151
|
+
return pulumi.get(self, "project")
|
152
|
+
|
153
|
+
@project.setter
|
154
|
+
def project(self, value: Optional[pulumi.Input[str]]):
|
155
|
+
pulumi.set(self, "project", value)
|
156
|
+
|
157
|
+
|
158
|
+
@pulumi.input_type
|
159
|
+
class _InstancePartitionState:
|
160
|
+
def __init__(__self__, *,
|
161
|
+
config: Optional[pulumi.Input[str]] = None,
|
162
|
+
display_name: Optional[pulumi.Input[str]] = None,
|
163
|
+
instance: Optional[pulumi.Input[str]] = None,
|
164
|
+
name: Optional[pulumi.Input[str]] = None,
|
165
|
+
node_count: Optional[pulumi.Input[int]] = None,
|
166
|
+
processing_units: Optional[pulumi.Input[int]] = None,
|
167
|
+
project: Optional[pulumi.Input[str]] = None,
|
168
|
+
state: Optional[pulumi.Input[str]] = None):
|
169
|
+
"""
|
170
|
+
Input properties used for looking up and filtering InstancePartition resources.
|
171
|
+
:param pulumi.Input[str] config: The name of the instance partition's configuration (similar to a region) which
|
172
|
+
defines the geographic placement and replication of data in this instance partition.
|
173
|
+
:param pulumi.Input[str] display_name: The descriptive name for this instance partition as it appears in UIs.
|
174
|
+
Must be unique per project and between 4 and 30 characters in length.
|
175
|
+
:param pulumi.Input[str] instance: The instance to create the instance partition in.
|
176
|
+
|
177
|
+
|
178
|
+
- - -
|
179
|
+
:param pulumi.Input[str] name: A unique identifier for the instance partition, which cannot be changed after
|
180
|
+
the instance partition is created. The name must be between 2 and 64 characters
|
181
|
+
and match the regular expression [a-z][a-z0-9\\\\-]{0,61}[a-z0-9].
|
182
|
+
:param pulumi.Input[int] node_count: The number of nodes allocated to this instance partition. One node equals
|
183
|
+
1000 processing units. Exactly one of either node_count or processing_units
|
184
|
+
must be present.
|
185
|
+
:param pulumi.Input[int] processing_units: The number of processing units allocated to this instance partition.
|
186
|
+
Exactly one of either node_count or processing_units must be present.
|
187
|
+
:param pulumi.Input[str] project: The ID of the project in which the resource belongs.
|
188
|
+
If it is not provided, the provider project is used.
|
189
|
+
:param pulumi.Input[str] state: The current instance partition state. Possible values are:
|
190
|
+
CREATING: The instance partition is being created. Resources are being
|
191
|
+
allocated for the instance partition.
|
192
|
+
READY: The instance partition has been allocated resources and is ready for use.
|
193
|
+
"""
|
194
|
+
if config is not None:
|
195
|
+
pulumi.set(__self__, "config", config)
|
196
|
+
if display_name is not None:
|
197
|
+
pulumi.set(__self__, "display_name", display_name)
|
198
|
+
if instance is not None:
|
199
|
+
pulumi.set(__self__, "instance", instance)
|
200
|
+
if name is not None:
|
201
|
+
pulumi.set(__self__, "name", name)
|
202
|
+
if node_count is not None:
|
203
|
+
pulumi.set(__self__, "node_count", node_count)
|
204
|
+
if processing_units is not None:
|
205
|
+
pulumi.set(__self__, "processing_units", processing_units)
|
206
|
+
if project is not None:
|
207
|
+
pulumi.set(__self__, "project", project)
|
208
|
+
if state is not None:
|
209
|
+
pulumi.set(__self__, "state", state)
|
210
|
+
|
211
|
+
@property
|
212
|
+
@pulumi.getter
|
213
|
+
def config(self) -> Optional[pulumi.Input[str]]:
|
214
|
+
"""
|
215
|
+
The name of the instance partition's configuration (similar to a region) which
|
216
|
+
defines the geographic placement and replication of data in this instance partition.
|
217
|
+
"""
|
218
|
+
return pulumi.get(self, "config")
|
219
|
+
|
220
|
+
@config.setter
|
221
|
+
def config(self, value: Optional[pulumi.Input[str]]):
|
222
|
+
pulumi.set(self, "config", value)
|
223
|
+
|
224
|
+
@property
|
225
|
+
@pulumi.getter(name="displayName")
|
226
|
+
def display_name(self) -> Optional[pulumi.Input[str]]:
|
227
|
+
"""
|
228
|
+
The descriptive name for this instance partition as it appears in UIs.
|
229
|
+
Must be unique per project and between 4 and 30 characters in length.
|
230
|
+
"""
|
231
|
+
return pulumi.get(self, "display_name")
|
232
|
+
|
233
|
+
@display_name.setter
|
234
|
+
def display_name(self, value: Optional[pulumi.Input[str]]):
|
235
|
+
pulumi.set(self, "display_name", value)
|
236
|
+
|
237
|
+
@property
|
238
|
+
@pulumi.getter
|
239
|
+
def instance(self) -> Optional[pulumi.Input[str]]:
|
240
|
+
"""
|
241
|
+
The instance to create the instance partition in.
|
242
|
+
|
243
|
+
|
244
|
+
- - -
|
245
|
+
"""
|
246
|
+
return pulumi.get(self, "instance")
|
247
|
+
|
248
|
+
@instance.setter
|
249
|
+
def instance(self, value: Optional[pulumi.Input[str]]):
|
250
|
+
pulumi.set(self, "instance", value)
|
251
|
+
|
252
|
+
@property
|
253
|
+
@pulumi.getter
|
254
|
+
def name(self) -> Optional[pulumi.Input[str]]:
|
255
|
+
"""
|
256
|
+
A unique identifier for the instance partition, which cannot be changed after
|
257
|
+
the instance partition is created. The name must be between 2 and 64 characters
|
258
|
+
and match the regular expression [a-z][a-z0-9\\\\-]{0,61}[a-z0-9].
|
259
|
+
"""
|
260
|
+
return pulumi.get(self, "name")
|
261
|
+
|
262
|
+
@name.setter
|
263
|
+
def name(self, value: Optional[pulumi.Input[str]]):
|
264
|
+
pulumi.set(self, "name", value)
|
265
|
+
|
266
|
+
@property
|
267
|
+
@pulumi.getter(name="nodeCount")
|
268
|
+
def node_count(self) -> Optional[pulumi.Input[int]]:
|
269
|
+
"""
|
270
|
+
The number of nodes allocated to this instance partition. One node equals
|
271
|
+
1000 processing units. Exactly one of either node_count or processing_units
|
272
|
+
must be present.
|
273
|
+
"""
|
274
|
+
return pulumi.get(self, "node_count")
|
275
|
+
|
276
|
+
@node_count.setter
|
277
|
+
def node_count(self, value: Optional[pulumi.Input[int]]):
|
278
|
+
pulumi.set(self, "node_count", value)
|
279
|
+
|
280
|
+
@property
|
281
|
+
@pulumi.getter(name="processingUnits")
|
282
|
+
def processing_units(self) -> Optional[pulumi.Input[int]]:
|
283
|
+
"""
|
284
|
+
The number of processing units allocated to this instance partition.
|
285
|
+
Exactly one of either node_count or processing_units must be present.
|
286
|
+
"""
|
287
|
+
return pulumi.get(self, "processing_units")
|
288
|
+
|
289
|
+
@processing_units.setter
|
290
|
+
def processing_units(self, value: Optional[pulumi.Input[int]]):
|
291
|
+
pulumi.set(self, "processing_units", value)
|
292
|
+
|
293
|
+
@property
|
294
|
+
@pulumi.getter
|
295
|
+
def project(self) -> Optional[pulumi.Input[str]]:
|
296
|
+
"""
|
297
|
+
The ID of the project in which the resource belongs.
|
298
|
+
If it is not provided, the provider project is used.
|
299
|
+
"""
|
300
|
+
return pulumi.get(self, "project")
|
301
|
+
|
302
|
+
@project.setter
|
303
|
+
def project(self, value: Optional[pulumi.Input[str]]):
|
304
|
+
pulumi.set(self, "project", value)
|
305
|
+
|
306
|
+
@property
|
307
|
+
@pulumi.getter
|
308
|
+
def state(self) -> Optional[pulumi.Input[str]]:
|
309
|
+
"""
|
310
|
+
The current instance partition state. Possible values are:
|
311
|
+
CREATING: The instance partition is being created. Resources are being
|
312
|
+
allocated for the instance partition.
|
313
|
+
READY: The instance partition has been allocated resources and is ready for use.
|
314
|
+
"""
|
315
|
+
return pulumi.get(self, "state")
|
316
|
+
|
317
|
+
@state.setter
|
318
|
+
def state(self, value: Optional[pulumi.Input[str]]):
|
319
|
+
pulumi.set(self, "state", value)
|
320
|
+
|
321
|
+
|
322
|
+
class InstancePartition(pulumi.CustomResource):
|
323
|
+
@overload
|
324
|
+
def __init__(__self__,
|
325
|
+
resource_name: str,
|
326
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
327
|
+
config: Optional[pulumi.Input[str]] = None,
|
328
|
+
display_name: Optional[pulumi.Input[str]] = None,
|
329
|
+
instance: Optional[pulumi.Input[str]] = None,
|
330
|
+
name: Optional[pulumi.Input[str]] = None,
|
331
|
+
node_count: Optional[pulumi.Input[int]] = None,
|
332
|
+
processing_units: Optional[pulumi.Input[int]] = None,
|
333
|
+
project: Optional[pulumi.Input[str]] = None,
|
334
|
+
__props__=None):
|
335
|
+
"""
|
336
|
+
A Cloud Spanner instance partition is a unit of Cloud Spanner database capacity
|
337
|
+
that can be used to partition data and processing capacity within an instance.
|
338
|
+
|
339
|
+
To get more information about InstancePartition, see:
|
340
|
+
|
341
|
+
* [API documentation](https://cloud.google.com/spanner/docs/reference/rest/v1/projects.instances.instancePartitions)
|
342
|
+
* How-to Guides
|
343
|
+
* [Official Documentation](https://cloud.google.com/spanner/docs/geo-partitioning)
|
344
|
+
|
345
|
+
## Example Usage
|
346
|
+
|
347
|
+
### Spanner Instance Partition Basic
|
348
|
+
|
349
|
+
```python
|
350
|
+
import pulumi
|
351
|
+
import pulumi_gcp as gcp
|
352
|
+
|
353
|
+
main = gcp.spanner.Instance("main",
|
354
|
+
name="test-instance",
|
355
|
+
config="nam6",
|
356
|
+
display_name="main-instance",
|
357
|
+
num_nodes=1,
|
358
|
+
edition="ENTERPRISE_PLUS")
|
359
|
+
partition = gcp.spanner.InstancePartition("partition",
|
360
|
+
name="test-partition",
|
361
|
+
instance=main.name,
|
362
|
+
config="nam8",
|
363
|
+
display_name="test-spanner-partition",
|
364
|
+
node_count=1)
|
365
|
+
```
|
366
|
+
|
367
|
+
## Import
|
368
|
+
|
369
|
+
InstancePartition can be imported using any of these accepted formats:
|
370
|
+
|
371
|
+
* `projects/{{project}}/instances/{{instance}}/instancePartitions/{{name}}`
|
372
|
+
|
373
|
+
* `{{project}}/{{instance}}/{{name}}`
|
374
|
+
|
375
|
+
* `{{instance}}/{{name}}`
|
376
|
+
|
377
|
+
When using the `pulumi import` command, InstancePartition can be imported using one of the formats above. For example:
|
378
|
+
|
379
|
+
```sh
|
380
|
+
$ pulumi import gcp:spanner/instancePartition:InstancePartition default projects/{{project}}/instances/{{instance}}/instancePartitions/{{name}}
|
381
|
+
```
|
382
|
+
|
383
|
+
```sh
|
384
|
+
$ pulumi import gcp:spanner/instancePartition:InstancePartition default {{project}}/{{instance}}/{{name}}
|
385
|
+
```
|
386
|
+
|
387
|
+
```sh
|
388
|
+
$ pulumi import gcp:spanner/instancePartition:InstancePartition default {{instance}}/{{name}}
|
389
|
+
```
|
390
|
+
|
391
|
+
:param str resource_name: The name of the resource.
|
392
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
393
|
+
:param pulumi.Input[str] config: The name of the instance partition's configuration (similar to a region) which
|
394
|
+
defines the geographic placement and replication of data in this instance partition.
|
395
|
+
:param pulumi.Input[str] display_name: The descriptive name for this instance partition as it appears in UIs.
|
396
|
+
Must be unique per project and between 4 and 30 characters in length.
|
397
|
+
:param pulumi.Input[str] instance: The instance to create the instance partition in.
|
398
|
+
|
399
|
+
|
400
|
+
- - -
|
401
|
+
:param pulumi.Input[str] name: A unique identifier for the instance partition, which cannot be changed after
|
402
|
+
the instance partition is created. The name must be between 2 and 64 characters
|
403
|
+
and match the regular expression [a-z][a-z0-9\\\\-]{0,61}[a-z0-9].
|
404
|
+
:param pulumi.Input[int] node_count: The number of nodes allocated to this instance partition. One node equals
|
405
|
+
1000 processing units. Exactly one of either node_count or processing_units
|
406
|
+
must be present.
|
407
|
+
:param pulumi.Input[int] processing_units: The number of processing units allocated to this instance partition.
|
408
|
+
Exactly one of either node_count or processing_units must be present.
|
409
|
+
:param pulumi.Input[str] project: The ID of the project in which the resource belongs.
|
410
|
+
If it is not provided, the provider project is used.
|
411
|
+
"""
|
412
|
+
...
|
413
|
+
@overload
|
414
|
+
def __init__(__self__,
|
415
|
+
resource_name: str,
|
416
|
+
args: InstancePartitionArgs,
|
417
|
+
opts: Optional[pulumi.ResourceOptions] = None):
|
418
|
+
"""
|
419
|
+
A Cloud Spanner instance partition is a unit of Cloud Spanner database capacity
|
420
|
+
that can be used to partition data and processing capacity within an instance.
|
421
|
+
|
422
|
+
To get more information about InstancePartition, see:
|
423
|
+
|
424
|
+
* [API documentation](https://cloud.google.com/spanner/docs/reference/rest/v1/projects.instances.instancePartitions)
|
425
|
+
* How-to Guides
|
426
|
+
* [Official Documentation](https://cloud.google.com/spanner/docs/geo-partitioning)
|
427
|
+
|
428
|
+
## Example Usage
|
429
|
+
|
430
|
+
### Spanner Instance Partition Basic
|
431
|
+
|
432
|
+
```python
|
433
|
+
import pulumi
|
434
|
+
import pulumi_gcp as gcp
|
435
|
+
|
436
|
+
main = gcp.spanner.Instance("main",
|
437
|
+
name="test-instance",
|
438
|
+
config="nam6",
|
439
|
+
display_name="main-instance",
|
440
|
+
num_nodes=1,
|
441
|
+
edition="ENTERPRISE_PLUS")
|
442
|
+
partition = gcp.spanner.InstancePartition("partition",
|
443
|
+
name="test-partition",
|
444
|
+
instance=main.name,
|
445
|
+
config="nam8",
|
446
|
+
display_name="test-spanner-partition",
|
447
|
+
node_count=1)
|
448
|
+
```
|
449
|
+
|
450
|
+
## Import
|
451
|
+
|
452
|
+
InstancePartition can be imported using any of these accepted formats:
|
453
|
+
|
454
|
+
* `projects/{{project}}/instances/{{instance}}/instancePartitions/{{name}}`
|
455
|
+
|
456
|
+
* `{{project}}/{{instance}}/{{name}}`
|
457
|
+
|
458
|
+
* `{{instance}}/{{name}}`
|
459
|
+
|
460
|
+
When using the `pulumi import` command, InstancePartition can be imported using one of the formats above. For example:
|
461
|
+
|
462
|
+
```sh
|
463
|
+
$ pulumi import gcp:spanner/instancePartition:InstancePartition default projects/{{project}}/instances/{{instance}}/instancePartitions/{{name}}
|
464
|
+
```
|
465
|
+
|
466
|
+
```sh
|
467
|
+
$ pulumi import gcp:spanner/instancePartition:InstancePartition default {{project}}/{{instance}}/{{name}}
|
468
|
+
```
|
469
|
+
|
470
|
+
```sh
|
471
|
+
$ pulumi import gcp:spanner/instancePartition:InstancePartition default {{instance}}/{{name}}
|
472
|
+
```
|
473
|
+
|
474
|
+
:param str resource_name: The name of the resource.
|
475
|
+
:param InstancePartitionArgs args: The arguments to use to populate this resource's properties.
|
476
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
477
|
+
"""
|
478
|
+
...
|
479
|
+
def __init__(__self__, resource_name: str, *args, **kwargs):
|
480
|
+
resource_args, opts = _utilities.get_resource_args_opts(InstancePartitionArgs, pulumi.ResourceOptions, *args, **kwargs)
|
481
|
+
if resource_args is not None:
|
482
|
+
__self__._internal_init(resource_name, opts, **resource_args.__dict__)
|
483
|
+
else:
|
484
|
+
__self__._internal_init(resource_name, *args, **kwargs)
|
485
|
+
|
486
|
+
def _internal_init(__self__,
|
487
|
+
resource_name: str,
|
488
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
489
|
+
config: Optional[pulumi.Input[str]] = None,
|
490
|
+
display_name: Optional[pulumi.Input[str]] = None,
|
491
|
+
instance: Optional[pulumi.Input[str]] = None,
|
492
|
+
name: Optional[pulumi.Input[str]] = None,
|
493
|
+
node_count: Optional[pulumi.Input[int]] = None,
|
494
|
+
processing_units: Optional[pulumi.Input[int]] = None,
|
495
|
+
project: Optional[pulumi.Input[str]] = None,
|
496
|
+
__props__=None):
|
497
|
+
opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
|
498
|
+
if not isinstance(opts, pulumi.ResourceOptions):
|
499
|
+
raise TypeError('Expected resource options to be a ResourceOptions instance')
|
500
|
+
if opts.id is None:
|
501
|
+
if __props__ is not None:
|
502
|
+
raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
|
503
|
+
__props__ = InstancePartitionArgs.__new__(InstancePartitionArgs)
|
504
|
+
|
505
|
+
if config is None and not opts.urn:
|
506
|
+
raise TypeError("Missing required property 'config'")
|
507
|
+
__props__.__dict__["config"] = config
|
508
|
+
if display_name is None and not opts.urn:
|
509
|
+
raise TypeError("Missing required property 'display_name'")
|
510
|
+
__props__.__dict__["display_name"] = display_name
|
511
|
+
if instance is None and not opts.urn:
|
512
|
+
raise TypeError("Missing required property 'instance'")
|
513
|
+
__props__.__dict__["instance"] = instance
|
514
|
+
__props__.__dict__["name"] = name
|
515
|
+
__props__.__dict__["node_count"] = node_count
|
516
|
+
__props__.__dict__["processing_units"] = processing_units
|
517
|
+
__props__.__dict__["project"] = project
|
518
|
+
__props__.__dict__["state"] = None
|
519
|
+
super(InstancePartition, __self__).__init__(
|
520
|
+
'gcp:spanner/instancePartition:InstancePartition',
|
521
|
+
resource_name,
|
522
|
+
__props__,
|
523
|
+
opts)
|
524
|
+
|
525
|
+
@staticmethod
|
526
|
+
def get(resource_name: str,
|
527
|
+
id: pulumi.Input[str],
|
528
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
529
|
+
config: Optional[pulumi.Input[str]] = None,
|
530
|
+
display_name: Optional[pulumi.Input[str]] = None,
|
531
|
+
instance: Optional[pulumi.Input[str]] = None,
|
532
|
+
name: Optional[pulumi.Input[str]] = None,
|
533
|
+
node_count: Optional[pulumi.Input[int]] = None,
|
534
|
+
processing_units: Optional[pulumi.Input[int]] = None,
|
535
|
+
project: Optional[pulumi.Input[str]] = None,
|
536
|
+
state: Optional[pulumi.Input[str]] = None) -> 'InstancePartition':
|
537
|
+
"""
|
538
|
+
Get an existing InstancePartition resource's state with the given name, id, and optional extra
|
539
|
+
properties used to qualify the lookup.
|
540
|
+
|
541
|
+
:param str resource_name: The unique name of the resulting resource.
|
542
|
+
:param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
|
543
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
544
|
+
:param pulumi.Input[str] config: The name of the instance partition's configuration (similar to a region) which
|
545
|
+
defines the geographic placement and replication of data in this instance partition.
|
546
|
+
:param pulumi.Input[str] display_name: The descriptive name for this instance partition as it appears in UIs.
|
547
|
+
Must be unique per project and between 4 and 30 characters in length.
|
548
|
+
:param pulumi.Input[str] instance: The instance to create the instance partition in.
|
549
|
+
|
550
|
+
|
551
|
+
- - -
|
552
|
+
:param pulumi.Input[str] name: A unique identifier for the instance partition, which cannot be changed after
|
553
|
+
the instance partition is created. The name must be between 2 and 64 characters
|
554
|
+
and match the regular expression [a-z][a-z0-9\\\\-]{0,61}[a-z0-9].
|
555
|
+
:param pulumi.Input[int] node_count: The number of nodes allocated to this instance partition. One node equals
|
556
|
+
1000 processing units. Exactly one of either node_count or processing_units
|
557
|
+
must be present.
|
558
|
+
:param pulumi.Input[int] processing_units: The number of processing units allocated to this instance partition.
|
559
|
+
Exactly one of either node_count or processing_units must be present.
|
560
|
+
:param pulumi.Input[str] project: The ID of the project in which the resource belongs.
|
561
|
+
If it is not provided, the provider project is used.
|
562
|
+
:param pulumi.Input[str] state: The current instance partition state. Possible values are:
|
563
|
+
CREATING: The instance partition is being created. Resources are being
|
564
|
+
allocated for the instance partition.
|
565
|
+
READY: The instance partition has been allocated resources and is ready for use.
|
566
|
+
"""
|
567
|
+
opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
|
568
|
+
|
569
|
+
__props__ = _InstancePartitionState.__new__(_InstancePartitionState)
|
570
|
+
|
571
|
+
__props__.__dict__["config"] = config
|
572
|
+
__props__.__dict__["display_name"] = display_name
|
573
|
+
__props__.__dict__["instance"] = instance
|
574
|
+
__props__.__dict__["name"] = name
|
575
|
+
__props__.__dict__["node_count"] = node_count
|
576
|
+
__props__.__dict__["processing_units"] = processing_units
|
577
|
+
__props__.__dict__["project"] = project
|
578
|
+
__props__.__dict__["state"] = state
|
579
|
+
return InstancePartition(resource_name, opts=opts, __props__=__props__)
|
580
|
+
|
581
|
+
@property
|
582
|
+
@pulumi.getter
|
583
|
+
def config(self) -> pulumi.Output[str]:
|
584
|
+
"""
|
585
|
+
The name of the instance partition's configuration (similar to a region) which
|
586
|
+
defines the geographic placement and replication of data in this instance partition.
|
587
|
+
"""
|
588
|
+
return pulumi.get(self, "config")
|
589
|
+
|
590
|
+
@property
|
591
|
+
@pulumi.getter(name="displayName")
|
592
|
+
def display_name(self) -> pulumi.Output[str]:
|
593
|
+
"""
|
594
|
+
The descriptive name for this instance partition as it appears in UIs.
|
595
|
+
Must be unique per project and between 4 and 30 characters in length.
|
596
|
+
"""
|
597
|
+
return pulumi.get(self, "display_name")
|
598
|
+
|
599
|
+
@property
|
600
|
+
@pulumi.getter
|
601
|
+
def instance(self) -> pulumi.Output[str]:
|
602
|
+
"""
|
603
|
+
The instance to create the instance partition in.
|
604
|
+
|
605
|
+
|
606
|
+
- - -
|
607
|
+
"""
|
608
|
+
return pulumi.get(self, "instance")
|
609
|
+
|
610
|
+
@property
|
611
|
+
@pulumi.getter
|
612
|
+
def name(self) -> pulumi.Output[str]:
|
613
|
+
"""
|
614
|
+
A unique identifier for the instance partition, which cannot be changed after
|
615
|
+
the instance partition is created. The name must be between 2 and 64 characters
|
616
|
+
and match the regular expression [a-z][a-z0-9\\\\-]{0,61}[a-z0-9].
|
617
|
+
"""
|
618
|
+
return pulumi.get(self, "name")
|
619
|
+
|
620
|
+
@property
|
621
|
+
@pulumi.getter(name="nodeCount")
|
622
|
+
def node_count(self) -> pulumi.Output[Optional[int]]:
|
623
|
+
"""
|
624
|
+
The number of nodes allocated to this instance partition. One node equals
|
625
|
+
1000 processing units. Exactly one of either node_count or processing_units
|
626
|
+
must be present.
|
627
|
+
"""
|
628
|
+
return pulumi.get(self, "node_count")
|
629
|
+
|
630
|
+
@property
|
631
|
+
@pulumi.getter(name="processingUnits")
|
632
|
+
def processing_units(self) -> pulumi.Output[Optional[int]]:
|
633
|
+
"""
|
634
|
+
The number of processing units allocated to this instance partition.
|
635
|
+
Exactly one of either node_count or processing_units must be present.
|
636
|
+
"""
|
637
|
+
return pulumi.get(self, "processing_units")
|
638
|
+
|
639
|
+
@property
|
640
|
+
@pulumi.getter
|
641
|
+
def project(self) -> pulumi.Output[str]:
|
642
|
+
"""
|
643
|
+
The ID of the project in which the resource belongs.
|
644
|
+
If it is not provided, the provider project is used.
|
645
|
+
"""
|
646
|
+
return pulumi.get(self, "project")
|
647
|
+
|
648
|
+
@property
|
649
|
+
@pulumi.getter
|
650
|
+
def state(self) -> pulumi.Output[str]:
|
651
|
+
"""
|
652
|
+
The current instance partition state. Possible values are:
|
653
|
+
CREATING: The instance partition is being created. Resources are being
|
654
|
+
allocated for the instance partition.
|
655
|
+
READY: The instance partition has been allocated resources and is ready for use.
|
656
|
+
"""
|
657
|
+
return pulumi.get(self, "state")
|
658
|
+
|