pulumi-alicloud 3.61.0a1723820875__py3-none-any.whl → 3.61.0a1724318858__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.

Potentially problematic release.


This version of pulumi-alicloud might be problematic. Click here for more details.

Files changed (29) hide show
  1. pulumi_alicloud/__init__.py +27 -0
  2. pulumi_alicloud/_inputs.py +16 -0
  3. pulumi_alicloud/alikafka/instance.py +21 -14
  4. pulumi_alicloud/amqp/binding.py +7 -0
  5. pulumi_alicloud/config/outputs.py +12 -0
  6. pulumi_alicloud/cs/_inputs.py +50 -2
  7. pulumi_alicloud/cs/node_pool.py +42 -42
  8. pulumi_alicloud/cs/outputs.py +45 -3
  9. pulumi_alicloud/dataworks/__init__.py +1 -0
  10. pulumi_alicloud/dataworks/project.py +450 -0
  11. pulumi_alicloud/elasticsearch/instance.py +296 -14
  12. pulumi_alicloud/log/store.py +91 -10
  13. pulumi_alicloud/mongodb/_inputs.py +12 -12
  14. pulumi_alicloud/mongodb/instance.py +54 -7
  15. pulumi_alicloud/mongodb/outputs.py +12 -12
  16. pulumi_alicloud/mongodb/sharding_instance.py +54 -7
  17. pulumi_alicloud/mongodb/sharding_network_private_address.py +145 -39
  18. pulumi_alicloud/pulumi-plugin.json +1 -1
  19. pulumi_alicloud/selectdb/__init__.py +13 -0
  20. pulumi_alicloud/selectdb/_inputs.py +446 -0
  21. pulumi_alicloud/selectdb/db_cluster.py +830 -0
  22. pulumi_alicloud/selectdb/db_instance.py +1368 -0
  23. pulumi_alicloud/selectdb/get_db_clusters.py +184 -0
  24. pulumi_alicloud/selectdb/get_db_instances.py +191 -0
  25. pulumi_alicloud/selectdb/outputs.py +1122 -0
  26. {pulumi_alicloud-3.61.0a1723820875.dist-info → pulumi_alicloud-3.61.0a1724318858.dist-info}/METADATA +1 -1
  27. {pulumi_alicloud-3.61.0a1723820875.dist-info → pulumi_alicloud-3.61.0a1724318858.dist-info}/RECORD +29 -21
  28. {pulumi_alicloud-3.61.0a1723820875.dist-info → pulumi_alicloud-3.61.0a1724318858.dist-info}/WHEEL +1 -1
  29. {pulumi_alicloud-3.61.0a1723820875.dist-info → pulumi_alicloud-3.61.0a1724318858.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,830 @@
1
+ # coding=utf-8
2
+ # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
3
+ # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+
5
+ import copy
6
+ import warnings
7
+ import pulumi
8
+ import pulumi.runtime
9
+ from typing import Any, Mapping, Optional, Sequence, Union, overload
10
+ from .. import _utilities
11
+ from . import outputs
12
+ from ._inputs import *
13
+
14
+ __all__ = ['DbClusterArgs', 'DbCluster']
15
+
16
+ @pulumi.input_type
17
+ class DbClusterArgs:
18
+ def __init__(__self__, *,
19
+ cache_size: pulumi.Input[int],
20
+ db_cluster_class: pulumi.Input[str],
21
+ db_cluster_description: pulumi.Input[str],
22
+ db_instance_id: pulumi.Input[str],
23
+ payment_type: pulumi.Input[str],
24
+ desired_params: Optional[pulumi.Input[Sequence[pulumi.Input['DbClusterDesiredParamArgs']]]] = None,
25
+ desired_status: Optional[pulumi.Input[str]] = None):
26
+ """
27
+ The set of arguments for constructing a DbCluster resource.
28
+ :param pulumi.Input[int] cache_size: The desired cache size on creating cluster. The number should be divided by 100.
29
+ :param pulumi.Input[str] db_cluster_class: The DBCluster class. db_cluster_class has a range of class from `selectdb.xlarge` to `selectdb.256xlarge`.
30
+ :param pulumi.Input[str] db_cluster_description: The DBCluster description.
31
+ :param pulumi.Input[str] db_instance_id: The InstanceId of DBInstance for DBCluster. Every DBCluster requires one DBInstance to rely on.
32
+ :param pulumi.Input[str] payment_type: The payment type of the resource. Valid values: `PayAsYouGo`,`Subscription`.
33
+ :param pulumi.Input[Sequence[pulumi.Input['DbClusterDesiredParamArgs']]] desired_params: The modified parameter in DBCluster. See `desired_params` below.
34
+ :param pulumi.Input[str] desired_status: The desired status for the resource. Valid values: `ACTIVATION`,`STOPPED`,`STARTING`,`RESTART`.
35
+ """
36
+ pulumi.set(__self__, "cache_size", cache_size)
37
+ pulumi.set(__self__, "db_cluster_class", db_cluster_class)
38
+ pulumi.set(__self__, "db_cluster_description", db_cluster_description)
39
+ pulumi.set(__self__, "db_instance_id", db_instance_id)
40
+ pulumi.set(__self__, "payment_type", payment_type)
41
+ if desired_params is not None:
42
+ pulumi.set(__self__, "desired_params", desired_params)
43
+ if desired_status is not None:
44
+ pulumi.set(__self__, "desired_status", desired_status)
45
+
46
+ @property
47
+ @pulumi.getter(name="cacheSize")
48
+ def cache_size(self) -> pulumi.Input[int]:
49
+ """
50
+ The desired cache size on creating cluster. The number should be divided by 100.
51
+ """
52
+ return pulumi.get(self, "cache_size")
53
+
54
+ @cache_size.setter
55
+ def cache_size(self, value: pulumi.Input[int]):
56
+ pulumi.set(self, "cache_size", value)
57
+
58
+ @property
59
+ @pulumi.getter(name="dbClusterClass")
60
+ def db_cluster_class(self) -> pulumi.Input[str]:
61
+ """
62
+ The DBCluster class. db_cluster_class has a range of class from `selectdb.xlarge` to `selectdb.256xlarge`.
63
+ """
64
+ return pulumi.get(self, "db_cluster_class")
65
+
66
+ @db_cluster_class.setter
67
+ def db_cluster_class(self, value: pulumi.Input[str]):
68
+ pulumi.set(self, "db_cluster_class", value)
69
+
70
+ @property
71
+ @pulumi.getter(name="dbClusterDescription")
72
+ def db_cluster_description(self) -> pulumi.Input[str]:
73
+ """
74
+ The DBCluster description.
75
+ """
76
+ return pulumi.get(self, "db_cluster_description")
77
+
78
+ @db_cluster_description.setter
79
+ def db_cluster_description(self, value: pulumi.Input[str]):
80
+ pulumi.set(self, "db_cluster_description", value)
81
+
82
+ @property
83
+ @pulumi.getter(name="dbInstanceId")
84
+ def db_instance_id(self) -> pulumi.Input[str]:
85
+ """
86
+ The InstanceId of DBInstance for DBCluster. Every DBCluster requires one DBInstance to rely on.
87
+ """
88
+ return pulumi.get(self, "db_instance_id")
89
+
90
+ @db_instance_id.setter
91
+ def db_instance_id(self, value: pulumi.Input[str]):
92
+ pulumi.set(self, "db_instance_id", value)
93
+
94
+ @property
95
+ @pulumi.getter(name="paymentType")
96
+ def payment_type(self) -> pulumi.Input[str]:
97
+ """
98
+ The payment type of the resource. Valid values: `PayAsYouGo`,`Subscription`.
99
+ """
100
+ return pulumi.get(self, "payment_type")
101
+
102
+ @payment_type.setter
103
+ def payment_type(self, value: pulumi.Input[str]):
104
+ pulumi.set(self, "payment_type", value)
105
+
106
+ @property
107
+ @pulumi.getter(name="desiredParams")
108
+ def desired_params(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['DbClusterDesiredParamArgs']]]]:
109
+ """
110
+ The modified parameter in DBCluster. See `desired_params` below.
111
+ """
112
+ return pulumi.get(self, "desired_params")
113
+
114
+ @desired_params.setter
115
+ def desired_params(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['DbClusterDesiredParamArgs']]]]):
116
+ pulumi.set(self, "desired_params", value)
117
+
118
+ @property
119
+ @pulumi.getter(name="desiredStatus")
120
+ def desired_status(self) -> Optional[pulumi.Input[str]]:
121
+ """
122
+ The desired status for the resource. Valid values: `ACTIVATION`,`STOPPED`,`STARTING`,`RESTART`.
123
+ """
124
+ return pulumi.get(self, "desired_status")
125
+
126
+ @desired_status.setter
127
+ def desired_status(self, value: Optional[pulumi.Input[str]]):
128
+ pulumi.set(self, "desired_status", value)
129
+
130
+
131
+ @pulumi.input_type
132
+ class _DbClusterState:
133
+ def __init__(__self__, *,
134
+ cache_size: Optional[pulumi.Input[int]] = None,
135
+ cpu: Optional[pulumi.Input[int]] = None,
136
+ create_time: Optional[pulumi.Input[str]] = None,
137
+ db_cluster_class: Optional[pulumi.Input[str]] = None,
138
+ db_cluster_description: Optional[pulumi.Input[str]] = None,
139
+ db_cluster_id: Optional[pulumi.Input[str]] = None,
140
+ db_instance_id: Optional[pulumi.Input[str]] = None,
141
+ desired_params: Optional[pulumi.Input[Sequence[pulumi.Input['DbClusterDesiredParamArgs']]]] = None,
142
+ desired_status: Optional[pulumi.Input[str]] = None,
143
+ engine: Optional[pulumi.Input[str]] = None,
144
+ engine_version: Optional[pulumi.Input[str]] = None,
145
+ memory: Optional[pulumi.Input[int]] = None,
146
+ param_change_logs: Optional[pulumi.Input[Sequence[pulumi.Input['DbClusterParamChangeLogArgs']]]] = None,
147
+ payment_type: Optional[pulumi.Input[str]] = None,
148
+ region_id: Optional[pulumi.Input[str]] = None,
149
+ status: Optional[pulumi.Input[str]] = None,
150
+ vpc_id: Optional[pulumi.Input[str]] = None,
151
+ zone_id: Optional[pulumi.Input[str]] = None):
152
+ """
153
+ Input properties used for looking up and filtering DbCluster resources.
154
+ :param pulumi.Input[int] cache_size: The desired cache size on creating cluster. The number should be divided by 100.
155
+ :param pulumi.Input[int] cpu: The cpu resource amount of DBCluster. Depends on `db_cluster_class`.
156
+ :param pulumi.Input[str] create_time: The time when DBCluster is created.
157
+ :param pulumi.Input[str] db_cluster_class: The DBCluster class. db_cluster_class has a range of class from `selectdb.xlarge` to `selectdb.256xlarge`.
158
+ :param pulumi.Input[str] db_cluster_description: The DBCluster description.
159
+ :param pulumi.Input[str] db_cluster_id: The id of the cluster.
160
+ :param pulumi.Input[str] db_instance_id: The InstanceId of DBInstance for DBCluster. Every DBCluster requires one DBInstance to rely on.
161
+ :param pulumi.Input[Sequence[pulumi.Input['DbClusterDesiredParamArgs']]] desired_params: The modified parameter in DBCluster. See `desired_params` below.
162
+ :param pulumi.Input[str] desired_status: The desired status for the resource. Valid values: `ACTIVATION`,`STOPPED`,`STARTING`,`RESTART`.
163
+ :param pulumi.Input[str] engine: The engine of DBCluster. Always `selectdb`.
164
+ :param pulumi.Input[str] engine_version: The version of DBCluster.
165
+ :param pulumi.Input[int] memory: The memory resource amount of DBCluster. Depends on `db_cluster_class`.
166
+ :param pulumi.Input[Sequence[pulumi.Input['DbClusterParamChangeLogArgs']]] param_change_logs: The details about parameter changelogs in DBCluster returned.
167
+ :param pulumi.Input[str] payment_type: The payment type of the resource. Valid values: `PayAsYouGo`,`Subscription`.
168
+ :param pulumi.Input[str] region_id: The ID of region for the cluster.
169
+ :param pulumi.Input[str] status: The current status of the resource.
170
+ :param pulumi.Input[str] vpc_id: The ID of the VPC for the cluster.
171
+ :param pulumi.Input[str] zone_id: The ID of zone for the cluster.
172
+ """
173
+ if cache_size is not None:
174
+ pulumi.set(__self__, "cache_size", cache_size)
175
+ if cpu is not None:
176
+ pulumi.set(__self__, "cpu", cpu)
177
+ if create_time is not None:
178
+ pulumi.set(__self__, "create_time", create_time)
179
+ if db_cluster_class is not None:
180
+ pulumi.set(__self__, "db_cluster_class", db_cluster_class)
181
+ if db_cluster_description is not None:
182
+ pulumi.set(__self__, "db_cluster_description", db_cluster_description)
183
+ if db_cluster_id is not None:
184
+ pulumi.set(__self__, "db_cluster_id", db_cluster_id)
185
+ if db_instance_id is not None:
186
+ pulumi.set(__self__, "db_instance_id", db_instance_id)
187
+ if desired_params is not None:
188
+ pulumi.set(__self__, "desired_params", desired_params)
189
+ if desired_status is not None:
190
+ pulumi.set(__self__, "desired_status", desired_status)
191
+ if engine is not None:
192
+ pulumi.set(__self__, "engine", engine)
193
+ if engine_version is not None:
194
+ pulumi.set(__self__, "engine_version", engine_version)
195
+ if memory is not None:
196
+ pulumi.set(__self__, "memory", memory)
197
+ if param_change_logs is not None:
198
+ pulumi.set(__self__, "param_change_logs", param_change_logs)
199
+ if payment_type is not None:
200
+ pulumi.set(__self__, "payment_type", payment_type)
201
+ if region_id is not None:
202
+ pulumi.set(__self__, "region_id", region_id)
203
+ if status is not None:
204
+ pulumi.set(__self__, "status", status)
205
+ if vpc_id is not None:
206
+ pulumi.set(__self__, "vpc_id", vpc_id)
207
+ if zone_id is not None:
208
+ pulumi.set(__self__, "zone_id", zone_id)
209
+
210
+ @property
211
+ @pulumi.getter(name="cacheSize")
212
+ def cache_size(self) -> Optional[pulumi.Input[int]]:
213
+ """
214
+ The desired cache size on creating cluster. The number should be divided by 100.
215
+ """
216
+ return pulumi.get(self, "cache_size")
217
+
218
+ @cache_size.setter
219
+ def cache_size(self, value: Optional[pulumi.Input[int]]):
220
+ pulumi.set(self, "cache_size", value)
221
+
222
+ @property
223
+ @pulumi.getter
224
+ def cpu(self) -> Optional[pulumi.Input[int]]:
225
+ """
226
+ The cpu resource amount of DBCluster. Depends on `db_cluster_class`.
227
+ """
228
+ return pulumi.get(self, "cpu")
229
+
230
+ @cpu.setter
231
+ def cpu(self, value: Optional[pulumi.Input[int]]):
232
+ pulumi.set(self, "cpu", value)
233
+
234
+ @property
235
+ @pulumi.getter(name="createTime")
236
+ def create_time(self) -> Optional[pulumi.Input[str]]:
237
+ """
238
+ The time when DBCluster is created.
239
+ """
240
+ return pulumi.get(self, "create_time")
241
+
242
+ @create_time.setter
243
+ def create_time(self, value: Optional[pulumi.Input[str]]):
244
+ pulumi.set(self, "create_time", value)
245
+
246
+ @property
247
+ @pulumi.getter(name="dbClusterClass")
248
+ def db_cluster_class(self) -> Optional[pulumi.Input[str]]:
249
+ """
250
+ The DBCluster class. db_cluster_class has a range of class from `selectdb.xlarge` to `selectdb.256xlarge`.
251
+ """
252
+ return pulumi.get(self, "db_cluster_class")
253
+
254
+ @db_cluster_class.setter
255
+ def db_cluster_class(self, value: Optional[pulumi.Input[str]]):
256
+ pulumi.set(self, "db_cluster_class", value)
257
+
258
+ @property
259
+ @pulumi.getter(name="dbClusterDescription")
260
+ def db_cluster_description(self) -> Optional[pulumi.Input[str]]:
261
+ """
262
+ The DBCluster description.
263
+ """
264
+ return pulumi.get(self, "db_cluster_description")
265
+
266
+ @db_cluster_description.setter
267
+ def db_cluster_description(self, value: Optional[pulumi.Input[str]]):
268
+ pulumi.set(self, "db_cluster_description", value)
269
+
270
+ @property
271
+ @pulumi.getter(name="dbClusterId")
272
+ def db_cluster_id(self) -> Optional[pulumi.Input[str]]:
273
+ """
274
+ The id of the cluster.
275
+ """
276
+ return pulumi.get(self, "db_cluster_id")
277
+
278
+ @db_cluster_id.setter
279
+ def db_cluster_id(self, value: Optional[pulumi.Input[str]]):
280
+ pulumi.set(self, "db_cluster_id", value)
281
+
282
+ @property
283
+ @pulumi.getter(name="dbInstanceId")
284
+ def db_instance_id(self) -> Optional[pulumi.Input[str]]:
285
+ """
286
+ The InstanceId of DBInstance for DBCluster. Every DBCluster requires one DBInstance to rely on.
287
+ """
288
+ return pulumi.get(self, "db_instance_id")
289
+
290
+ @db_instance_id.setter
291
+ def db_instance_id(self, value: Optional[pulumi.Input[str]]):
292
+ pulumi.set(self, "db_instance_id", value)
293
+
294
+ @property
295
+ @pulumi.getter(name="desiredParams")
296
+ def desired_params(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['DbClusterDesiredParamArgs']]]]:
297
+ """
298
+ The modified parameter in DBCluster. See `desired_params` below.
299
+ """
300
+ return pulumi.get(self, "desired_params")
301
+
302
+ @desired_params.setter
303
+ def desired_params(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['DbClusterDesiredParamArgs']]]]):
304
+ pulumi.set(self, "desired_params", value)
305
+
306
+ @property
307
+ @pulumi.getter(name="desiredStatus")
308
+ def desired_status(self) -> Optional[pulumi.Input[str]]:
309
+ """
310
+ The desired status for the resource. Valid values: `ACTIVATION`,`STOPPED`,`STARTING`,`RESTART`.
311
+ """
312
+ return pulumi.get(self, "desired_status")
313
+
314
+ @desired_status.setter
315
+ def desired_status(self, value: Optional[pulumi.Input[str]]):
316
+ pulumi.set(self, "desired_status", value)
317
+
318
+ @property
319
+ @pulumi.getter
320
+ def engine(self) -> Optional[pulumi.Input[str]]:
321
+ """
322
+ The engine of DBCluster. Always `selectdb`.
323
+ """
324
+ return pulumi.get(self, "engine")
325
+
326
+ @engine.setter
327
+ def engine(self, value: Optional[pulumi.Input[str]]):
328
+ pulumi.set(self, "engine", value)
329
+
330
+ @property
331
+ @pulumi.getter(name="engineVersion")
332
+ def engine_version(self) -> Optional[pulumi.Input[str]]:
333
+ """
334
+ The version of DBCluster.
335
+ """
336
+ return pulumi.get(self, "engine_version")
337
+
338
+ @engine_version.setter
339
+ def engine_version(self, value: Optional[pulumi.Input[str]]):
340
+ pulumi.set(self, "engine_version", value)
341
+
342
+ @property
343
+ @pulumi.getter
344
+ def memory(self) -> Optional[pulumi.Input[int]]:
345
+ """
346
+ The memory resource amount of DBCluster. Depends on `db_cluster_class`.
347
+ """
348
+ return pulumi.get(self, "memory")
349
+
350
+ @memory.setter
351
+ def memory(self, value: Optional[pulumi.Input[int]]):
352
+ pulumi.set(self, "memory", value)
353
+
354
+ @property
355
+ @pulumi.getter(name="paramChangeLogs")
356
+ def param_change_logs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['DbClusterParamChangeLogArgs']]]]:
357
+ """
358
+ The details about parameter changelogs in DBCluster returned.
359
+ """
360
+ return pulumi.get(self, "param_change_logs")
361
+
362
+ @param_change_logs.setter
363
+ def param_change_logs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['DbClusterParamChangeLogArgs']]]]):
364
+ pulumi.set(self, "param_change_logs", value)
365
+
366
+ @property
367
+ @pulumi.getter(name="paymentType")
368
+ def payment_type(self) -> Optional[pulumi.Input[str]]:
369
+ """
370
+ The payment type of the resource. Valid values: `PayAsYouGo`,`Subscription`.
371
+ """
372
+ return pulumi.get(self, "payment_type")
373
+
374
+ @payment_type.setter
375
+ def payment_type(self, value: Optional[pulumi.Input[str]]):
376
+ pulumi.set(self, "payment_type", value)
377
+
378
+ @property
379
+ @pulumi.getter(name="regionId")
380
+ def region_id(self) -> Optional[pulumi.Input[str]]:
381
+ """
382
+ The ID of region for the cluster.
383
+ """
384
+ return pulumi.get(self, "region_id")
385
+
386
+ @region_id.setter
387
+ def region_id(self, value: Optional[pulumi.Input[str]]):
388
+ pulumi.set(self, "region_id", value)
389
+
390
+ @property
391
+ @pulumi.getter
392
+ def status(self) -> Optional[pulumi.Input[str]]:
393
+ """
394
+ The current status of the resource.
395
+ """
396
+ return pulumi.get(self, "status")
397
+
398
+ @status.setter
399
+ def status(self, value: Optional[pulumi.Input[str]]):
400
+ pulumi.set(self, "status", value)
401
+
402
+ @property
403
+ @pulumi.getter(name="vpcId")
404
+ def vpc_id(self) -> Optional[pulumi.Input[str]]:
405
+ """
406
+ The ID of the VPC for the cluster.
407
+ """
408
+ return pulumi.get(self, "vpc_id")
409
+
410
+ @vpc_id.setter
411
+ def vpc_id(self, value: Optional[pulumi.Input[str]]):
412
+ pulumi.set(self, "vpc_id", value)
413
+
414
+ @property
415
+ @pulumi.getter(name="zoneId")
416
+ def zone_id(self) -> Optional[pulumi.Input[str]]:
417
+ """
418
+ The ID of zone for the cluster.
419
+ """
420
+ return pulumi.get(self, "zone_id")
421
+
422
+ @zone_id.setter
423
+ def zone_id(self, value: Optional[pulumi.Input[str]]):
424
+ pulumi.set(self, "zone_id", value)
425
+
426
+
427
+ class DbCluster(pulumi.CustomResource):
428
+ @overload
429
+ def __init__(__self__,
430
+ resource_name: str,
431
+ opts: Optional[pulumi.ResourceOptions] = None,
432
+ cache_size: Optional[pulumi.Input[int]] = None,
433
+ db_cluster_class: Optional[pulumi.Input[str]] = None,
434
+ db_cluster_description: Optional[pulumi.Input[str]] = None,
435
+ db_instance_id: Optional[pulumi.Input[str]] = None,
436
+ desired_params: Optional[pulumi.Input[Sequence[pulumi.Input[Union['DbClusterDesiredParamArgs', 'DbClusterDesiredParamArgsDict']]]]] = None,
437
+ desired_status: Optional[pulumi.Input[str]] = None,
438
+ payment_type: Optional[pulumi.Input[str]] = None,
439
+ __props__=None):
440
+ """
441
+ Provides a SelectDB DBCluster resource.
442
+
443
+ For information about SelectDB DBCluster and how to use it, see [What is DBCluster](https://www.alibabacloud.com/help/zh/selectdb/latest/api-selectdb-2023-05-22-createdbcluster).
444
+
445
+ > **NOTE:** Available since v1.229.0.
446
+
447
+ ## Example Usage
448
+
449
+ Basic Usage
450
+
451
+ ```python
452
+ import pulumi
453
+ import pulumi_alicloud as alicloud
454
+
455
+ default = alicloud.get_zones(available_resource_creation="VSwitch")
456
+ config = pulumi.Config()
457
+ name = config.get("name")
458
+ if name is None:
459
+ name = "terraform_example"
460
+ default_get_networks = alicloud.vpc.get_networks(name_regex="^default-NODELETING$")
461
+ default_get_switches = alicloud.vpc.get_switches(vpc_id=default_get_networks.ids[0],
462
+ zone_id=default.zones[0].id)
463
+ default_db_instance = alicloud.selectdb.DbInstance("default",
464
+ db_instance_class="selectdb.xlarge",
465
+ db_instance_description=name,
466
+ cache_size=200,
467
+ payment_type="PayAsYouGo",
468
+ vpc_id=default_get_switches.vswitches[0].vpc_id,
469
+ zone_id=default_get_switches.vswitches[0].zone_id,
470
+ vswitch_id=default_get_switches.vswitches[0].id)
471
+ default_db_cluster = alicloud.selectdb.DbCluster("default",
472
+ db_instance_id=default_db_instance.id,
473
+ db_cluster_description=name,
474
+ db_cluster_class="selectdb.2xlarge",
475
+ cache_size=400,
476
+ payment_type="PayAsYouGo")
477
+ ```
478
+
479
+ ## Import
480
+
481
+ SelectDB DBCluster can be imported using the id, e.g.
482
+
483
+ ```sh
484
+ $ pulumi import alicloud:selectdb/dbCluster:DbCluster example <db_instance_id>:<db_cluster_id>
485
+ ```
486
+
487
+ :param str resource_name: The name of the resource.
488
+ :param pulumi.ResourceOptions opts: Options for the resource.
489
+ :param pulumi.Input[int] cache_size: The desired cache size on creating cluster. The number should be divided by 100.
490
+ :param pulumi.Input[str] db_cluster_class: The DBCluster class. db_cluster_class has a range of class from `selectdb.xlarge` to `selectdb.256xlarge`.
491
+ :param pulumi.Input[str] db_cluster_description: The DBCluster description.
492
+ :param pulumi.Input[str] db_instance_id: The InstanceId of DBInstance for DBCluster. Every DBCluster requires one DBInstance to rely on.
493
+ :param pulumi.Input[Sequence[pulumi.Input[Union['DbClusterDesiredParamArgs', 'DbClusterDesiredParamArgsDict']]]] desired_params: The modified parameter in DBCluster. See `desired_params` below.
494
+ :param pulumi.Input[str] desired_status: The desired status for the resource. Valid values: `ACTIVATION`,`STOPPED`,`STARTING`,`RESTART`.
495
+ :param pulumi.Input[str] payment_type: The payment type of the resource. Valid values: `PayAsYouGo`,`Subscription`.
496
+ """
497
+ ...
498
+ @overload
499
+ def __init__(__self__,
500
+ resource_name: str,
501
+ args: DbClusterArgs,
502
+ opts: Optional[pulumi.ResourceOptions] = None):
503
+ """
504
+ Provides a SelectDB DBCluster resource.
505
+
506
+ For information about SelectDB DBCluster and how to use it, see [What is DBCluster](https://www.alibabacloud.com/help/zh/selectdb/latest/api-selectdb-2023-05-22-createdbcluster).
507
+
508
+ > **NOTE:** Available since v1.229.0.
509
+
510
+ ## Example Usage
511
+
512
+ Basic Usage
513
+
514
+ ```python
515
+ import pulumi
516
+ import pulumi_alicloud as alicloud
517
+
518
+ default = alicloud.get_zones(available_resource_creation="VSwitch")
519
+ config = pulumi.Config()
520
+ name = config.get("name")
521
+ if name is None:
522
+ name = "terraform_example"
523
+ default_get_networks = alicloud.vpc.get_networks(name_regex="^default-NODELETING$")
524
+ default_get_switches = alicloud.vpc.get_switches(vpc_id=default_get_networks.ids[0],
525
+ zone_id=default.zones[0].id)
526
+ default_db_instance = alicloud.selectdb.DbInstance("default",
527
+ db_instance_class="selectdb.xlarge",
528
+ db_instance_description=name,
529
+ cache_size=200,
530
+ payment_type="PayAsYouGo",
531
+ vpc_id=default_get_switches.vswitches[0].vpc_id,
532
+ zone_id=default_get_switches.vswitches[0].zone_id,
533
+ vswitch_id=default_get_switches.vswitches[0].id)
534
+ default_db_cluster = alicloud.selectdb.DbCluster("default",
535
+ db_instance_id=default_db_instance.id,
536
+ db_cluster_description=name,
537
+ db_cluster_class="selectdb.2xlarge",
538
+ cache_size=400,
539
+ payment_type="PayAsYouGo")
540
+ ```
541
+
542
+ ## Import
543
+
544
+ SelectDB DBCluster can be imported using the id, e.g.
545
+
546
+ ```sh
547
+ $ pulumi import alicloud:selectdb/dbCluster:DbCluster example <db_instance_id>:<db_cluster_id>
548
+ ```
549
+
550
+ :param str resource_name: The name of the resource.
551
+ :param DbClusterArgs args: The arguments to use to populate this resource's properties.
552
+ :param pulumi.ResourceOptions opts: Options for the resource.
553
+ """
554
+ ...
555
+ def __init__(__self__, resource_name: str, *args, **kwargs):
556
+ resource_args, opts = _utilities.get_resource_args_opts(DbClusterArgs, pulumi.ResourceOptions, *args, **kwargs)
557
+ if resource_args is not None:
558
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
559
+ else:
560
+ __self__._internal_init(resource_name, *args, **kwargs)
561
+
562
+ def _internal_init(__self__,
563
+ resource_name: str,
564
+ opts: Optional[pulumi.ResourceOptions] = None,
565
+ cache_size: Optional[pulumi.Input[int]] = None,
566
+ db_cluster_class: Optional[pulumi.Input[str]] = None,
567
+ db_cluster_description: Optional[pulumi.Input[str]] = None,
568
+ db_instance_id: Optional[pulumi.Input[str]] = None,
569
+ desired_params: Optional[pulumi.Input[Sequence[pulumi.Input[Union['DbClusterDesiredParamArgs', 'DbClusterDesiredParamArgsDict']]]]] = None,
570
+ desired_status: Optional[pulumi.Input[str]] = None,
571
+ payment_type: Optional[pulumi.Input[str]] = None,
572
+ __props__=None):
573
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
574
+ if not isinstance(opts, pulumi.ResourceOptions):
575
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
576
+ if opts.id is None:
577
+ if __props__ is not None:
578
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
579
+ __props__ = DbClusterArgs.__new__(DbClusterArgs)
580
+
581
+ if cache_size is None and not opts.urn:
582
+ raise TypeError("Missing required property 'cache_size'")
583
+ __props__.__dict__["cache_size"] = cache_size
584
+ if db_cluster_class is None and not opts.urn:
585
+ raise TypeError("Missing required property 'db_cluster_class'")
586
+ __props__.__dict__["db_cluster_class"] = db_cluster_class
587
+ if db_cluster_description is None and not opts.urn:
588
+ raise TypeError("Missing required property 'db_cluster_description'")
589
+ __props__.__dict__["db_cluster_description"] = db_cluster_description
590
+ if db_instance_id is None and not opts.urn:
591
+ raise TypeError("Missing required property 'db_instance_id'")
592
+ __props__.__dict__["db_instance_id"] = db_instance_id
593
+ __props__.__dict__["desired_params"] = desired_params
594
+ __props__.__dict__["desired_status"] = desired_status
595
+ if payment_type is None and not opts.urn:
596
+ raise TypeError("Missing required property 'payment_type'")
597
+ __props__.__dict__["payment_type"] = payment_type
598
+ __props__.__dict__["cpu"] = None
599
+ __props__.__dict__["create_time"] = None
600
+ __props__.__dict__["db_cluster_id"] = None
601
+ __props__.__dict__["engine"] = None
602
+ __props__.__dict__["engine_version"] = None
603
+ __props__.__dict__["memory"] = None
604
+ __props__.__dict__["param_change_logs"] = None
605
+ __props__.__dict__["region_id"] = None
606
+ __props__.__dict__["status"] = None
607
+ __props__.__dict__["vpc_id"] = None
608
+ __props__.__dict__["zone_id"] = None
609
+ super(DbCluster, __self__).__init__(
610
+ 'alicloud:selectdb/dbCluster:DbCluster',
611
+ resource_name,
612
+ __props__,
613
+ opts)
614
+
615
+ @staticmethod
616
+ def get(resource_name: str,
617
+ id: pulumi.Input[str],
618
+ opts: Optional[pulumi.ResourceOptions] = None,
619
+ cache_size: Optional[pulumi.Input[int]] = None,
620
+ cpu: Optional[pulumi.Input[int]] = None,
621
+ create_time: Optional[pulumi.Input[str]] = None,
622
+ db_cluster_class: Optional[pulumi.Input[str]] = None,
623
+ db_cluster_description: Optional[pulumi.Input[str]] = None,
624
+ db_cluster_id: Optional[pulumi.Input[str]] = None,
625
+ db_instance_id: Optional[pulumi.Input[str]] = None,
626
+ desired_params: Optional[pulumi.Input[Sequence[pulumi.Input[Union['DbClusterDesiredParamArgs', 'DbClusterDesiredParamArgsDict']]]]] = None,
627
+ desired_status: Optional[pulumi.Input[str]] = None,
628
+ engine: Optional[pulumi.Input[str]] = None,
629
+ engine_version: Optional[pulumi.Input[str]] = None,
630
+ memory: Optional[pulumi.Input[int]] = None,
631
+ param_change_logs: Optional[pulumi.Input[Sequence[pulumi.Input[Union['DbClusterParamChangeLogArgs', 'DbClusterParamChangeLogArgsDict']]]]] = None,
632
+ payment_type: Optional[pulumi.Input[str]] = None,
633
+ region_id: Optional[pulumi.Input[str]] = None,
634
+ status: Optional[pulumi.Input[str]] = None,
635
+ vpc_id: Optional[pulumi.Input[str]] = None,
636
+ zone_id: Optional[pulumi.Input[str]] = None) -> 'DbCluster':
637
+ """
638
+ Get an existing DbCluster resource's state with the given name, id, and optional extra
639
+ properties used to qualify the lookup.
640
+
641
+ :param str resource_name: The unique name of the resulting resource.
642
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
643
+ :param pulumi.ResourceOptions opts: Options for the resource.
644
+ :param pulumi.Input[int] cache_size: The desired cache size on creating cluster. The number should be divided by 100.
645
+ :param pulumi.Input[int] cpu: The cpu resource amount of DBCluster. Depends on `db_cluster_class`.
646
+ :param pulumi.Input[str] create_time: The time when DBCluster is created.
647
+ :param pulumi.Input[str] db_cluster_class: The DBCluster class. db_cluster_class has a range of class from `selectdb.xlarge` to `selectdb.256xlarge`.
648
+ :param pulumi.Input[str] db_cluster_description: The DBCluster description.
649
+ :param pulumi.Input[str] db_cluster_id: The id of the cluster.
650
+ :param pulumi.Input[str] db_instance_id: The InstanceId of DBInstance for DBCluster. Every DBCluster requires one DBInstance to rely on.
651
+ :param pulumi.Input[Sequence[pulumi.Input[Union['DbClusterDesiredParamArgs', 'DbClusterDesiredParamArgsDict']]]] desired_params: The modified parameter in DBCluster. See `desired_params` below.
652
+ :param pulumi.Input[str] desired_status: The desired status for the resource. Valid values: `ACTIVATION`,`STOPPED`,`STARTING`,`RESTART`.
653
+ :param pulumi.Input[str] engine: The engine of DBCluster. Always `selectdb`.
654
+ :param pulumi.Input[str] engine_version: The version of DBCluster.
655
+ :param pulumi.Input[int] memory: The memory resource amount of DBCluster. Depends on `db_cluster_class`.
656
+ :param pulumi.Input[Sequence[pulumi.Input[Union['DbClusterParamChangeLogArgs', 'DbClusterParamChangeLogArgsDict']]]] param_change_logs: The details about parameter changelogs in DBCluster returned.
657
+ :param pulumi.Input[str] payment_type: The payment type of the resource. Valid values: `PayAsYouGo`,`Subscription`.
658
+ :param pulumi.Input[str] region_id: The ID of region for the cluster.
659
+ :param pulumi.Input[str] status: The current status of the resource.
660
+ :param pulumi.Input[str] vpc_id: The ID of the VPC for the cluster.
661
+ :param pulumi.Input[str] zone_id: The ID of zone for the cluster.
662
+ """
663
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
664
+
665
+ __props__ = _DbClusterState.__new__(_DbClusterState)
666
+
667
+ __props__.__dict__["cache_size"] = cache_size
668
+ __props__.__dict__["cpu"] = cpu
669
+ __props__.__dict__["create_time"] = create_time
670
+ __props__.__dict__["db_cluster_class"] = db_cluster_class
671
+ __props__.__dict__["db_cluster_description"] = db_cluster_description
672
+ __props__.__dict__["db_cluster_id"] = db_cluster_id
673
+ __props__.__dict__["db_instance_id"] = db_instance_id
674
+ __props__.__dict__["desired_params"] = desired_params
675
+ __props__.__dict__["desired_status"] = desired_status
676
+ __props__.__dict__["engine"] = engine
677
+ __props__.__dict__["engine_version"] = engine_version
678
+ __props__.__dict__["memory"] = memory
679
+ __props__.__dict__["param_change_logs"] = param_change_logs
680
+ __props__.__dict__["payment_type"] = payment_type
681
+ __props__.__dict__["region_id"] = region_id
682
+ __props__.__dict__["status"] = status
683
+ __props__.__dict__["vpc_id"] = vpc_id
684
+ __props__.__dict__["zone_id"] = zone_id
685
+ return DbCluster(resource_name, opts=opts, __props__=__props__)
686
+
687
+ @property
688
+ @pulumi.getter(name="cacheSize")
689
+ def cache_size(self) -> pulumi.Output[int]:
690
+ """
691
+ The desired cache size on creating cluster. The number should be divided by 100.
692
+ """
693
+ return pulumi.get(self, "cache_size")
694
+
695
+ @property
696
+ @pulumi.getter
697
+ def cpu(self) -> pulumi.Output[int]:
698
+ """
699
+ The cpu resource amount of DBCluster. Depends on `db_cluster_class`.
700
+ """
701
+ return pulumi.get(self, "cpu")
702
+
703
+ @property
704
+ @pulumi.getter(name="createTime")
705
+ def create_time(self) -> pulumi.Output[str]:
706
+ """
707
+ The time when DBCluster is created.
708
+ """
709
+ return pulumi.get(self, "create_time")
710
+
711
+ @property
712
+ @pulumi.getter(name="dbClusterClass")
713
+ def db_cluster_class(self) -> pulumi.Output[str]:
714
+ """
715
+ The DBCluster class. db_cluster_class has a range of class from `selectdb.xlarge` to `selectdb.256xlarge`.
716
+ """
717
+ return pulumi.get(self, "db_cluster_class")
718
+
719
+ @property
720
+ @pulumi.getter(name="dbClusterDescription")
721
+ def db_cluster_description(self) -> pulumi.Output[str]:
722
+ """
723
+ The DBCluster description.
724
+ """
725
+ return pulumi.get(self, "db_cluster_description")
726
+
727
+ @property
728
+ @pulumi.getter(name="dbClusterId")
729
+ def db_cluster_id(self) -> pulumi.Output[str]:
730
+ """
731
+ The id of the cluster.
732
+ """
733
+ return pulumi.get(self, "db_cluster_id")
734
+
735
+ @property
736
+ @pulumi.getter(name="dbInstanceId")
737
+ def db_instance_id(self) -> pulumi.Output[str]:
738
+ """
739
+ The InstanceId of DBInstance for DBCluster. Every DBCluster requires one DBInstance to rely on.
740
+ """
741
+ return pulumi.get(self, "db_instance_id")
742
+
743
+ @property
744
+ @pulumi.getter(name="desiredParams")
745
+ def desired_params(self) -> pulumi.Output[Optional[Sequence['outputs.DbClusterDesiredParam']]]:
746
+ """
747
+ The modified parameter in DBCluster. See `desired_params` below.
748
+ """
749
+ return pulumi.get(self, "desired_params")
750
+
751
+ @property
752
+ @pulumi.getter(name="desiredStatus")
753
+ def desired_status(self) -> pulumi.Output[Optional[str]]:
754
+ """
755
+ The desired status for the resource. Valid values: `ACTIVATION`,`STOPPED`,`STARTING`,`RESTART`.
756
+ """
757
+ return pulumi.get(self, "desired_status")
758
+
759
+ @property
760
+ @pulumi.getter
761
+ def engine(self) -> pulumi.Output[str]:
762
+ """
763
+ The engine of DBCluster. Always `selectdb`.
764
+ """
765
+ return pulumi.get(self, "engine")
766
+
767
+ @property
768
+ @pulumi.getter(name="engineVersion")
769
+ def engine_version(self) -> pulumi.Output[str]:
770
+ """
771
+ The version of DBCluster.
772
+ """
773
+ return pulumi.get(self, "engine_version")
774
+
775
+ @property
776
+ @pulumi.getter
777
+ def memory(self) -> pulumi.Output[int]:
778
+ """
779
+ The memory resource amount of DBCluster. Depends on `db_cluster_class`.
780
+ """
781
+ return pulumi.get(self, "memory")
782
+
783
+ @property
784
+ @pulumi.getter(name="paramChangeLogs")
785
+ def param_change_logs(self) -> pulumi.Output[Sequence['outputs.DbClusterParamChangeLog']]:
786
+ """
787
+ The details about parameter changelogs in DBCluster returned.
788
+ """
789
+ return pulumi.get(self, "param_change_logs")
790
+
791
+ @property
792
+ @pulumi.getter(name="paymentType")
793
+ def payment_type(self) -> pulumi.Output[str]:
794
+ """
795
+ The payment type of the resource. Valid values: `PayAsYouGo`,`Subscription`.
796
+ """
797
+ return pulumi.get(self, "payment_type")
798
+
799
+ @property
800
+ @pulumi.getter(name="regionId")
801
+ def region_id(self) -> pulumi.Output[str]:
802
+ """
803
+ The ID of region for the cluster.
804
+ """
805
+ return pulumi.get(self, "region_id")
806
+
807
+ @property
808
+ @pulumi.getter
809
+ def status(self) -> pulumi.Output[str]:
810
+ """
811
+ The current status of the resource.
812
+ """
813
+ return pulumi.get(self, "status")
814
+
815
+ @property
816
+ @pulumi.getter(name="vpcId")
817
+ def vpc_id(self) -> pulumi.Output[str]:
818
+ """
819
+ The ID of the VPC for the cluster.
820
+ """
821
+ return pulumi.get(self, "vpc_id")
822
+
823
+ @property
824
+ @pulumi.getter(name="zoneId")
825
+ def zone_id(self) -> pulumi.Output[str]:
826
+ """
827
+ The ID of zone for the cluster.
828
+ """
829
+ return pulumi.get(self, "zone_id")
830
+