pulumi-alicloud 3.76.0a1743571220__py3-none-any.whl → 3.76.0a1744139894__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 (237) hide show
  1. pulumi_alicloud/__init__.py +271 -4
  2. pulumi_alicloud/_inputs.py +20 -0
  3. pulumi_alicloud/actiontrail/global_events_storage_region.py +2 -2
  4. pulumi_alicloud/adb/db_cluster_lake_version.py +458 -49
  5. pulumi_alicloud/alb/load_balancer_access_log_config_attachment.py +2 -2
  6. pulumi_alicloud/alb/server_group.py +2 -2
  7. pulumi_alicloud/alikafka/sasl_acl.py +7 -7
  8. pulumi_alicloud/apigateway/_inputs.py +134 -0
  9. pulumi_alicloud/apigateway/group.py +117 -5
  10. pulumi_alicloud/apigateway/instance.py +148 -7
  11. pulumi_alicloud/apigateway/outputs.py +107 -0
  12. pulumi_alicloud/arms/alert_contact.py +2 -2
  13. pulumi_alicloud/arms/alert_contact_group.py +2 -2
  14. pulumi_alicloud/arms/get_prometheus.py +2 -6
  15. pulumi_alicloud/arms/grafana_workspace.py +511 -69
  16. pulumi_alicloud/arms/outputs.py +18 -18
  17. pulumi_alicloud/arms/prometheus_alert_rule.py +2 -2
  18. pulumi_alicloud/arms/prometheus_monitoring.py +2 -2
  19. pulumi_alicloud/cdn/domain_new.py +2 -2
  20. pulumi_alicloud/cen/_inputs.py +6 -3
  21. pulumi_alicloud/cen/get_transit_router_vpn_attachments.py +131 -19
  22. pulumi_alicloud/cen/instance.py +101 -59
  23. pulumi_alicloud/cen/inter_region_traffic_qos_policy.py +126 -81
  24. pulumi_alicloud/cen/inter_region_traffic_qos_queue.py +93 -47
  25. pulumi_alicloud/cen/outputs.py +69 -26
  26. pulumi_alicloud/cen/transit_route_table_aggregation.py +171 -55
  27. pulumi_alicloud/cen/transit_router.py +127 -53
  28. pulumi_alicloud/cen/transit_router_cidr.py +53 -35
  29. pulumi_alicloud/cen/transit_router_ecr_attachment.py +2 -2
  30. pulumi_alicloud/cen/transit_router_peer_attachment.py +360 -143
  31. pulumi_alicloud/cen/transit_router_route_table_association.py +33 -43
  32. pulumi_alicloud/cen/transit_router_vpn_attachment.py +438 -109
  33. pulumi_alicloud/clickhouse/db_cluster.py +179 -6
  34. pulumi_alicloud/clickhouseenterprisedbcluster/__init__.py +14 -0
  35. pulumi_alicloud/clickhouseenterprisedbcluster/_inputs.py +167 -0
  36. pulumi_alicloud/clickhouseenterprisedbcluster/account.py +554 -0
  37. pulumi_alicloud/clickhouseenterprisedbcluster/backup_policy.py +407 -0
  38. pulumi_alicloud/clickhouseenterprisedbcluster/click_house_enterprise_db_cluster.py +641 -0
  39. pulumi_alicloud/clickhouseenterprisedbcluster/outputs.py +147 -0
  40. pulumi_alicloud/clickhouseenterprisedbcluster/public_endpoint.py +364 -0
  41. pulumi_alicloud/clickhouseenterprisedbcluster/security_ip.py +357 -0
  42. pulumi_alicloud/cloudsso/scim_server_credential.py +178 -11
  43. pulumi_alicloud/config/outputs.py +12 -0
  44. pulumi_alicloud/cs/__init__.py +1 -0
  45. pulumi_alicloud/cs/get_kubernetes_node_pools.py +147 -0
  46. pulumi_alicloud/cs/managed_kubernetes.py +127 -24
  47. pulumi_alicloud/cs/node_pool.py +42 -42
  48. pulumi_alicloud/cs/outputs.py +1782 -4
  49. pulumi_alicloud/databasefilesystem/service_linked_role.py +2 -2
  50. pulumi_alicloud/dataworks/data_source.py +2 -2
  51. pulumi_alicloud/dataworks/data_source_shared_rule.py +2 -2
  52. pulumi_alicloud/dataworks/di_alarm_rule.py +2 -2
  53. pulumi_alicloud/dataworks/di_job.py +2 -2
  54. pulumi_alicloud/dataworks/dw_resource_group.py +2 -2
  55. pulumi_alicloud/dataworks/network.py +2 -2
  56. pulumi_alicloud/dataworks/project.py +2 -2
  57. pulumi_alicloud/dataworks/project_member.py +2 -2
  58. pulumi_alicloud/dbs/backup_plan.py +2 -2
  59. pulumi_alicloud/ddos/bgp_policy.py +2 -2
  60. pulumi_alicloud/eais/__init__.py +2 -0
  61. pulumi_alicloud/eais/_inputs.py +75 -0
  62. pulumi_alicloud/eais/client_instance_attachment.py +408 -0
  63. pulumi_alicloud/eais/instance.py +365 -118
  64. pulumi_alicloud/eais/outputs.py +32 -0
  65. pulumi_alicloud/ebs/disk_replica_group.py +512 -30
  66. pulumi_alicloud/ebs/disk_replica_pair.py +443 -113
  67. pulumi_alicloud/ebs/enterprise_snapshot_policy.py +2 -2
  68. pulumi_alicloud/ebs/enterprise_snapshot_policy_attachment.py +2 -2
  69. pulumi_alicloud/ecp/instance.py +2 -2
  70. pulumi_alicloud/ecp/key_pair.py +4 -4
  71. pulumi_alicloud/ecs/_inputs.py +33 -0
  72. pulumi_alicloud/ecs/disk.py +1 -1
  73. pulumi_alicloud/ecs/ecs_disk.py +1 -1
  74. pulumi_alicloud/ecs/ecs_launch_template.py +23 -23
  75. pulumi_alicloud/ecs/instance.py +1 -1
  76. pulumi_alicloud/ecs/outputs.py +26 -2
  77. pulumi_alicloud/eflo/__init__.py +5 -0
  78. pulumi_alicloud/eflo/_inputs.py +1717 -0
  79. pulumi_alicloud/eflo/cluster.py +935 -0
  80. pulumi_alicloud/eflo/invocation.py +1114 -0
  81. pulumi_alicloud/eflo/node.py +1013 -0
  82. pulumi_alicloud/eflo/node_group.py +1101 -0
  83. pulumi_alicloud/eflo/outputs.py +1366 -0
  84. pulumi_alicloud/ens/eip_instance_attachment.py +2 -2
  85. pulumi_alicloud/ens/image.py +81 -34
  86. pulumi_alicloud/esa/__init__.py +4 -0
  87. pulumi_alicloud/esa/_inputs.py +640 -18
  88. pulumi_alicloud/esa/cache_reserve_instance.py +522 -0
  89. pulumi_alicloud/esa/cache_rule.py +193 -179
  90. pulumi_alicloud/esa/certificate.py +99 -92
  91. pulumi_alicloud/esa/compression_rule.py +42 -28
  92. pulumi_alicloud/esa/edge_container_app.py +972 -0
  93. pulumi_alicloud/esa/edge_container_app_record.py +376 -0
  94. pulumi_alicloud/esa/http_request_header_modification_rule.py +56 -42
  95. pulumi_alicloud/esa/http_response_header_modification_rule.py +35 -56
  96. pulumi_alicloud/esa/https_application_configuration.py +42 -28
  97. pulumi_alicloud/esa/https_basic_configuration.py +56 -42
  98. pulumi_alicloud/esa/image_transform.py +42 -28
  99. pulumi_alicloud/esa/kv_namespace.py +11 -11
  100. pulumi_alicloud/esa/list.py +28 -28
  101. pulumi_alicloud/esa/network_optimization.py +56 -126
  102. pulumi_alicloud/esa/origin_pool.py +19 -19
  103. pulumi_alicloud/esa/origin_rule.py +67 -39
  104. pulumi_alicloud/esa/outputs.py +536 -12
  105. pulumi_alicloud/esa/page.py +28 -49
  106. pulumi_alicloud/esa/rate_plan_instance.py +86 -159
  107. pulumi_alicloud/esa/redirect_rule.py +42 -28
  108. pulumi_alicloud/esa/rewrite_url_rule.py +49 -63
  109. pulumi_alicloud/esa/site.py +67 -123
  110. pulumi_alicloud/esa/site_delivery_task.py +841 -0
  111. pulumi_alicloud/esa/waiting_room.py +269 -319
  112. pulumi_alicloud/esa/waiting_room_event.py +291 -305
  113. pulumi_alicloud/esa/waiting_room_rule.py +46 -53
  114. pulumi_alicloud/ess/_inputs.py +155 -0
  115. pulumi_alicloud/ess/outputs.py +128 -0
  116. pulumi_alicloud/ess/scaling_group.py +237 -2
  117. pulumi_alicloud/ess/scaling_rule.py +143 -2
  118. pulumi_alicloud/expressconnect/router_grant_association.py +2 -2
  119. pulumi_alicloud/expressconnect/virtual_border_router.py +4 -4
  120. pulumi_alicloud/gpdb/hadoop_data_source.py +2 -2
  121. pulumi_alicloud/gpdb/jdbc_data_source.py +2 -2
  122. pulumi_alicloud/gpdb/remote_adb_data_source.py +6 -6
  123. pulumi_alicloud/gpdb/streaming_data_source.py +2 -2
  124. pulumi_alicloud/gpdb/streaming_job.py +2 -2
  125. pulumi_alicloud/ims/oidc_provider.py +24 -13
  126. pulumi_alicloud/kvstore/account.py +9 -9
  127. pulumi_alicloud/kvstore/connection.py +2 -2
  128. pulumi_alicloud/kvstore/get_instance_classes.py +2 -2
  129. pulumi_alicloud/kvstore/get_instance_engines.py +2 -2
  130. pulumi_alicloud/kvstore/instance.py +7 -7
  131. pulumi_alicloud/kvstore/outputs.py +2 -2
  132. pulumi_alicloud/live/caster.py +2 -2
  133. pulumi_alicloud/maxcompute/__init__.py +1 -0
  134. pulumi_alicloud/maxcompute/_inputs.py +232 -3
  135. pulumi_alicloud/maxcompute/outputs.py +183 -2
  136. pulumi_alicloud/maxcompute/project.py +2 -2
  137. pulumi_alicloud/maxcompute/quota.py +438 -0
  138. pulumi_alicloud/nas/mount_target.py +149 -54
  139. pulumi_alicloud/nlb/__init__.py +1 -0
  140. pulumi_alicloud/nlb/_inputs.py +43 -6
  141. pulumi_alicloud/nlb/load_balancer.py +212 -24
  142. pulumi_alicloud/nlb/load_balancer_zone_shifted_attachment.py +397 -0
  143. pulumi_alicloud/nlb/outputs.py +30 -4
  144. pulumi_alicloud/nlb/server_group_server_attachment.py +118 -65
  145. pulumi_alicloud/oss/__init__.py +1 -0
  146. pulumi_alicloud/oss/_inputs.py +20 -0
  147. pulumi_alicloud/oss/access_point.py +2 -2
  148. pulumi_alicloud/oss/bucket_cname.py +2 -2
  149. pulumi_alicloud/oss/bucket_cors.py +2 -2
  150. pulumi_alicloud/oss/bucket_style.py +402 -0
  151. pulumi_alicloud/oss/bucket_website.py +2 -2
  152. pulumi_alicloud/oss/outputs.py +14 -0
  153. pulumi_alicloud/pai/service.py +59 -67
  154. pulumi_alicloud/polardb/cluster.py +75 -28
  155. pulumi_alicloud/privatelink/vpc_endpoint_zone.py +1 -1
  156. pulumi_alicloud/pulumi-plugin.json +1 -1
  157. pulumi_alicloud/ram/__init__.py +3 -0
  158. pulumi_alicloud/ram/_inputs.py +9 -9
  159. pulumi_alicloud/ram/access_key.py +77 -31
  160. pulumi_alicloud/ram/account_alias.py +18 -45
  161. pulumi_alicloud/ram/get_system_policys.py +189 -0
  162. pulumi_alicloud/ram/group.py +156 -35
  163. pulumi_alicloud/ram/group_policy_attachment.py +51 -29
  164. pulumi_alicloud/ram/login_profile.py +92 -38
  165. pulumi_alicloud/ram/outputs.py +91 -6
  166. pulumi_alicloud/ram/password_policy.py +779 -0
  167. pulumi_alicloud/ram/policy.py +199 -88
  168. pulumi_alicloud/ram/role_policy_attachment.py +51 -29
  169. pulumi_alicloud/ram/saml_provider.py +44 -37
  170. pulumi_alicloud/ram/user_group_attachment.py +273 -0
  171. pulumi_alicloud/ram/user_policy_attachment.py +49 -27
  172. pulumi_alicloud/rds/__init__.py +1 -0
  173. pulumi_alicloud/rds/custom_disk.py +1053 -0
  174. pulumi_alicloud/rds/instance.py +110 -14
  175. pulumi_alicloud/redis/tair_instance.py +14 -14
  176. pulumi_alicloud/resourcemanager/__init__.py +1 -0
  177. pulumi_alicloud/resourcemanager/_inputs.py +53 -0
  178. pulumi_alicloud/resourcemanager/auto_grouping_rule.py +796 -0
  179. pulumi_alicloud/resourcemanager/outputs.py +50 -0
  180. pulumi_alicloud/resourcemanager/shared_resource.py +7 -0
  181. pulumi_alicloud/rocketmq/__init__.py +1 -1
  182. pulumi_alicloud/rocketmq/_inputs.py +146 -4
  183. pulumi_alicloud/rocketmq/account.py +452 -0
  184. pulumi_alicloud/rocketmq/acl.py +473 -47
  185. pulumi_alicloud/rocketmq/client_user.py +8 -2
  186. pulumi_alicloud/rocketmq/consumer_group.py +121 -24
  187. pulumi_alicloud/rocketmq/dnat_entry.py +8 -2
  188. pulumi_alicloud/rocketmq/outputs.py +113 -4
  189. pulumi_alicloud/rocketmq/qos.py +8 -2
  190. pulumi_alicloud/rocketmq/qos_car.py +10 -4
  191. pulumi_alicloud/rocketmq/qos_policy.py +6 -0
  192. pulumi_alicloud/rocketmq/rocket_mq_instance.py +136 -7
  193. pulumi_alicloud/rocketmq/rocket_mq_topic.py +121 -24
  194. pulumi_alicloud/rocketmq/snat_entry.py +8 -2
  195. pulumi_alicloud/sag/__init__.py +8 -0
  196. pulumi_alicloud/sag/acl.py +200 -0
  197. pulumi_alicloud/{rocketmq → sag}/acl_rule.py +7 -7
  198. pulumi_alicloud/sag/client_user.py +560 -0
  199. pulumi_alicloud/sag/dnat_entry.py +512 -0
  200. pulumi_alicloud/sag/get_acls.py +2 -2
  201. pulumi_alicloud/sag/qos.py +202 -0
  202. pulumi_alicloud/sag/qos_car.py +654 -0
  203. pulumi_alicloud/sag/qos_policy.py +659 -0
  204. pulumi_alicloud/sag/snat_entry.py +313 -0
  205. pulumi_alicloud/securitycenter/group.py +2 -2
  206. pulumi_alicloud/selectdb/db_instance.py +60 -11
  207. pulumi_alicloud/slb/server_group_server_attachment.py +101 -111
  208. pulumi_alicloud/sls/oss_export_sink.py +2 -2
  209. pulumi_alicloud/threatdetection/__init__.py +3 -0
  210. pulumi_alicloud/threatdetection/anti_brute_force_rule.py +41 -65
  211. pulumi_alicloud/threatdetection/asset_bind.py +209 -0
  212. pulumi_alicloud/threatdetection/asset_selection_config.py +258 -0
  213. pulumi_alicloud/threatdetection/instance.py +271 -54
  214. pulumi_alicloud/threatdetection/log_meta.py +351 -0
  215. pulumi_alicloud/vpc/__init__.py +1 -0
  216. pulumi_alicloud/vpc/_inputs.py +281 -0
  217. pulumi_alicloud/vpc/gateway_endpoint.py +85 -27
  218. pulumi_alicloud/vpc/get_ipam_ipam_pool_allocations.py +2 -2
  219. pulumi_alicloud/vpc/get_ipam_ipam_pool_cidrs.py +2 -2
  220. pulumi_alicloud/vpc/get_ipam_ipam_pools.py +2 -2
  221. pulumi_alicloud/vpc/get_ipam_ipam_scopes.py +2 -2
  222. pulumi_alicloud/vpc/get_ipam_ipams.py +2 -2
  223. pulumi_alicloud/vpc/ipv6_address.py +85 -5
  224. pulumi_alicloud/vpc/outputs.py +232 -0
  225. pulumi_alicloud/vpc/peer_connection.py +84 -42
  226. pulumi_alicloud/vpc/peer_connection_accepter.py +7 -21
  227. pulumi_alicloud/vpc/route_table.py +100 -45
  228. pulumi_alicloud/vpc/vpc_route_entry.py +724 -0
  229. pulumi_alicloud/vpn/_inputs.py +716 -71
  230. pulumi_alicloud/vpn/gateway_vpn_attachment.py +622 -128
  231. pulumi_alicloud/vpn/get_gateway_vpn_attachments.py +20 -63
  232. pulumi_alicloud/vpn/ipsec_server.py +2 -2
  233. pulumi_alicloud/vpn/outputs.py +1963 -998
  234. {pulumi_alicloud-3.76.0a1743571220.dist-info → pulumi_alicloud-3.76.0a1744139894.dist-info}/METADATA +1 -1
  235. {pulumi_alicloud-3.76.0a1743571220.dist-info → pulumi_alicloud-3.76.0a1744139894.dist-info}/RECORD +237 -197
  236. {pulumi_alicloud-3.76.0a1743571220.dist-info → pulumi_alicloud-3.76.0a1744139894.dist-info}/WHEEL +0 -0
  237. {pulumi_alicloud-3.76.0a1743571220.dist-info → pulumi_alicloud-3.76.0a1744139894.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,1053 @@
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__ = ['CustomDiskArgs', 'CustomDisk']
18
+
19
+ @pulumi.input_type
20
+ class CustomDiskArgs:
21
+ def __init__(__self__, *,
22
+ disk_category: pulumi.Input[str],
23
+ size: pulumi.Input[int],
24
+ zone_id: pulumi.Input[str],
25
+ auto_pay: Optional[pulumi.Input[bool]] = None,
26
+ auto_renew: Optional[pulumi.Input[bool]] = None,
27
+ description: Optional[pulumi.Input[str]] = None,
28
+ disk_name: Optional[pulumi.Input[str]] = None,
29
+ dry_run: Optional[pulumi.Input[bool]] = None,
30
+ instance_charge_type: Optional[pulumi.Input[str]] = None,
31
+ performance_level: Optional[pulumi.Input[str]] = None,
32
+ period: Optional[pulumi.Input[int]] = None,
33
+ period_unit: Optional[pulumi.Input[str]] = None,
34
+ snapshot_id: Optional[pulumi.Input[str]] = None,
35
+ type: Optional[pulumi.Input[str]] = None):
36
+ """
37
+ The set of arguments for constructing a CustomDisk resource.
38
+ :param pulumi.Input[str] disk_category: The type of the data disk. Value range:
39
+ :param pulumi.Input[int] size: Capacity size. Unit: GiB. You must pass in a parameter value for this parameter. Value range:
40
+ :param pulumi.Input[str] zone_id: The zone ID.
41
+ :param pulumi.Input[bool] auto_pay: Whether to pay automatically. Value range:
42
+ :param pulumi.Input[bool] auto_renew: Whether to automatically renew. This parameter is passed in only when you create a data disk. Valid values:
43
+ :param pulumi.Input[str] description: The disk description. It must be 2 to 256 characters in length and cannot start with 'http:// 'or 'https.
44
+ Default value: empty.
45
+ :param pulumi.Input[str] disk_name: The disk name. It can be 2 to 128 characters in length. It supports letters in Unicode (including English, Chinese, and numbers). Can contain a colon (:), an underscore (_), a period (.), or a dash (-).
46
+ Default value: empty.
47
+ :param pulumi.Input[bool] dry_run: Whether to pre-check the instance creation operation. Valid values:
48
+ :param pulumi.Input[str] instance_charge_type: The Payment type. Only `Postpaid`: Pay-As-You-Go is supported.
49
+ :param pulumi.Input[str] performance_level: When creating an ESSD cloud disk, set the performance level of the disk. Value range:
50
+ - `PL0`: The maximum random read/write IOPS 10000 for a single disk.
51
+ - `PL1` (default): The maximum number of random read/write IOPS 50000 for a single disk.
52
+ - `PL2`: maximum random read/write IOPS 100000 for a single disk.
53
+ - `PL3`: The maximum random read/write IOPS 1 million for a single disk.
54
+
55
+ For more information about how to select an ESSD performance level, see ESSD cloud disk.
56
+ :param pulumi.Input[int] period: Reserved parameters, no need to fill in.
57
+ :param pulumi.Input[str] period_unit: Reserved parameters, no need to fill in.
58
+ :param pulumi.Input[str] snapshot_id: The snapshot used to create the cloud disk. Snapshots made on or before July 15, 2013 cannot be used to create cloud disks. The 'SnapshotId' parameter and the 'Size' parameter have the following limitations:
59
+ - If the snapshot capacity corresponding to the 'SnapshotId' parameter is greater than the set 'Size' parameter value, the actual size of the cloud disk created is the size of the specified snapshot.
60
+ - If the snapshot capacity corresponding to the 'SnapshotId' parameter is less than the set 'Size' parameter value, the size of the cloud disk created is the specified 'Size' parameter value.
61
+ - Snapshots are not supported for creating elastic temporary disks.
62
+ :param pulumi.Input[str] type: The method of expanding the disk. Value range:
63
+ offline (default): offline expansion. After the expansion, the instance must be restarted to take effect.
64
+ online: online expansion, which can be completed without restarting the instance.
65
+ """
66
+ pulumi.set(__self__, "disk_category", disk_category)
67
+ pulumi.set(__self__, "size", size)
68
+ pulumi.set(__self__, "zone_id", zone_id)
69
+ if auto_pay is not None:
70
+ pulumi.set(__self__, "auto_pay", auto_pay)
71
+ if auto_renew is not None:
72
+ pulumi.set(__self__, "auto_renew", auto_renew)
73
+ if description is not None:
74
+ pulumi.set(__self__, "description", description)
75
+ if disk_name is not None:
76
+ pulumi.set(__self__, "disk_name", disk_name)
77
+ if dry_run is not None:
78
+ pulumi.set(__self__, "dry_run", dry_run)
79
+ if instance_charge_type is not None:
80
+ pulumi.set(__self__, "instance_charge_type", instance_charge_type)
81
+ if performance_level is not None:
82
+ pulumi.set(__self__, "performance_level", performance_level)
83
+ if period is not None:
84
+ pulumi.set(__self__, "period", period)
85
+ if period_unit is not None:
86
+ pulumi.set(__self__, "period_unit", period_unit)
87
+ if snapshot_id is not None:
88
+ pulumi.set(__self__, "snapshot_id", snapshot_id)
89
+ if type is not None:
90
+ pulumi.set(__self__, "type", type)
91
+
92
+ @property
93
+ @pulumi.getter(name="diskCategory")
94
+ def disk_category(self) -> pulumi.Input[str]:
95
+ """
96
+ The type of the data disk. Value range:
97
+ """
98
+ return pulumi.get(self, "disk_category")
99
+
100
+ @disk_category.setter
101
+ def disk_category(self, value: pulumi.Input[str]):
102
+ pulumi.set(self, "disk_category", value)
103
+
104
+ @property
105
+ @pulumi.getter
106
+ def size(self) -> pulumi.Input[int]:
107
+ """
108
+ Capacity size. Unit: GiB. You must pass in a parameter value for this parameter. Value range:
109
+ """
110
+ return pulumi.get(self, "size")
111
+
112
+ @size.setter
113
+ def size(self, value: pulumi.Input[int]):
114
+ pulumi.set(self, "size", value)
115
+
116
+ @property
117
+ @pulumi.getter(name="zoneId")
118
+ def zone_id(self) -> pulumi.Input[str]:
119
+ """
120
+ The zone ID.
121
+ """
122
+ return pulumi.get(self, "zone_id")
123
+
124
+ @zone_id.setter
125
+ def zone_id(self, value: pulumi.Input[str]):
126
+ pulumi.set(self, "zone_id", value)
127
+
128
+ @property
129
+ @pulumi.getter(name="autoPay")
130
+ def auto_pay(self) -> Optional[pulumi.Input[bool]]:
131
+ """
132
+ Whether to pay automatically. Value range:
133
+ """
134
+ return pulumi.get(self, "auto_pay")
135
+
136
+ @auto_pay.setter
137
+ def auto_pay(self, value: Optional[pulumi.Input[bool]]):
138
+ pulumi.set(self, "auto_pay", value)
139
+
140
+ @property
141
+ @pulumi.getter(name="autoRenew")
142
+ def auto_renew(self) -> Optional[pulumi.Input[bool]]:
143
+ """
144
+ Whether to automatically renew. This parameter is passed in only when you create a data disk. Valid values:
145
+ """
146
+ return pulumi.get(self, "auto_renew")
147
+
148
+ @auto_renew.setter
149
+ def auto_renew(self, value: Optional[pulumi.Input[bool]]):
150
+ pulumi.set(self, "auto_renew", value)
151
+
152
+ @property
153
+ @pulumi.getter
154
+ def description(self) -> Optional[pulumi.Input[str]]:
155
+ """
156
+ The disk description. It must be 2 to 256 characters in length and cannot start with 'http:// 'or 'https.
157
+ Default value: empty.
158
+ """
159
+ return pulumi.get(self, "description")
160
+
161
+ @description.setter
162
+ def description(self, value: Optional[pulumi.Input[str]]):
163
+ pulumi.set(self, "description", value)
164
+
165
+ @property
166
+ @pulumi.getter(name="diskName")
167
+ def disk_name(self) -> Optional[pulumi.Input[str]]:
168
+ """
169
+ The disk name. It can be 2 to 128 characters in length. It supports letters in Unicode (including English, Chinese, and numbers). Can contain a colon (:), an underscore (_), a period (.), or a dash (-).
170
+ Default value: empty.
171
+ """
172
+ return pulumi.get(self, "disk_name")
173
+
174
+ @disk_name.setter
175
+ def disk_name(self, value: Optional[pulumi.Input[str]]):
176
+ pulumi.set(self, "disk_name", value)
177
+
178
+ @property
179
+ @pulumi.getter(name="dryRun")
180
+ def dry_run(self) -> Optional[pulumi.Input[bool]]:
181
+ """
182
+ Whether to pre-check the instance creation operation. Valid values:
183
+ """
184
+ return pulumi.get(self, "dry_run")
185
+
186
+ @dry_run.setter
187
+ def dry_run(self, value: Optional[pulumi.Input[bool]]):
188
+ pulumi.set(self, "dry_run", value)
189
+
190
+ @property
191
+ @pulumi.getter(name="instanceChargeType")
192
+ def instance_charge_type(self) -> Optional[pulumi.Input[str]]:
193
+ """
194
+ The Payment type. Only `Postpaid`: Pay-As-You-Go is supported.
195
+ """
196
+ return pulumi.get(self, "instance_charge_type")
197
+
198
+ @instance_charge_type.setter
199
+ def instance_charge_type(self, value: Optional[pulumi.Input[str]]):
200
+ pulumi.set(self, "instance_charge_type", value)
201
+
202
+ @property
203
+ @pulumi.getter(name="performanceLevel")
204
+ def performance_level(self) -> Optional[pulumi.Input[str]]:
205
+ """
206
+ When creating an ESSD cloud disk, set the performance level of the disk. Value range:
207
+ - `PL0`: The maximum random read/write IOPS 10000 for a single disk.
208
+ - `PL1` (default): The maximum number of random read/write IOPS 50000 for a single disk.
209
+ - `PL2`: maximum random read/write IOPS 100000 for a single disk.
210
+ - `PL3`: The maximum random read/write IOPS 1 million for a single disk.
211
+
212
+ For more information about how to select an ESSD performance level, see ESSD cloud disk.
213
+ """
214
+ return pulumi.get(self, "performance_level")
215
+
216
+ @performance_level.setter
217
+ def performance_level(self, value: Optional[pulumi.Input[str]]):
218
+ pulumi.set(self, "performance_level", value)
219
+
220
+ @property
221
+ @pulumi.getter
222
+ def period(self) -> Optional[pulumi.Input[int]]:
223
+ """
224
+ Reserved parameters, no need to fill in.
225
+ """
226
+ return pulumi.get(self, "period")
227
+
228
+ @period.setter
229
+ def period(self, value: Optional[pulumi.Input[int]]):
230
+ pulumi.set(self, "period", value)
231
+
232
+ @property
233
+ @pulumi.getter(name="periodUnit")
234
+ def period_unit(self) -> Optional[pulumi.Input[str]]:
235
+ """
236
+ Reserved parameters, no need to fill in.
237
+ """
238
+ return pulumi.get(self, "period_unit")
239
+
240
+ @period_unit.setter
241
+ def period_unit(self, value: Optional[pulumi.Input[str]]):
242
+ pulumi.set(self, "period_unit", value)
243
+
244
+ @property
245
+ @pulumi.getter(name="snapshotId")
246
+ def snapshot_id(self) -> Optional[pulumi.Input[str]]:
247
+ """
248
+ The snapshot used to create the cloud disk. Snapshots made on or before July 15, 2013 cannot be used to create cloud disks. The 'SnapshotId' parameter and the 'Size' parameter have the following limitations:
249
+ - If the snapshot capacity corresponding to the 'SnapshotId' parameter is greater than the set 'Size' parameter value, the actual size of the cloud disk created is the size of the specified snapshot.
250
+ - If the snapshot capacity corresponding to the 'SnapshotId' parameter is less than the set 'Size' parameter value, the size of the cloud disk created is the specified 'Size' parameter value.
251
+ - Snapshots are not supported for creating elastic temporary disks.
252
+ """
253
+ return pulumi.get(self, "snapshot_id")
254
+
255
+ @snapshot_id.setter
256
+ def snapshot_id(self, value: Optional[pulumi.Input[str]]):
257
+ pulumi.set(self, "snapshot_id", value)
258
+
259
+ @property
260
+ @pulumi.getter
261
+ def type(self) -> Optional[pulumi.Input[str]]:
262
+ """
263
+ The method of expanding the disk. Value range:
264
+ offline (default): offline expansion. After the expansion, the instance must be restarted to take effect.
265
+ online: online expansion, which can be completed without restarting the instance.
266
+ """
267
+ return pulumi.get(self, "type")
268
+
269
+ @type.setter
270
+ def type(self, value: Optional[pulumi.Input[str]]):
271
+ pulumi.set(self, "type", value)
272
+
273
+
274
+ @pulumi.input_type
275
+ class _CustomDiskState:
276
+ def __init__(__self__, *,
277
+ auto_pay: Optional[pulumi.Input[bool]] = None,
278
+ auto_renew: Optional[pulumi.Input[bool]] = None,
279
+ create_time: Optional[pulumi.Input[str]] = None,
280
+ description: Optional[pulumi.Input[str]] = None,
281
+ disk_category: Optional[pulumi.Input[str]] = None,
282
+ disk_name: Optional[pulumi.Input[str]] = None,
283
+ dry_run: Optional[pulumi.Input[bool]] = None,
284
+ instance_charge_type: Optional[pulumi.Input[str]] = None,
285
+ performance_level: Optional[pulumi.Input[str]] = None,
286
+ period: Optional[pulumi.Input[int]] = None,
287
+ period_unit: Optional[pulumi.Input[str]] = None,
288
+ region_id: Optional[pulumi.Input[str]] = None,
289
+ resource_group_id: Optional[pulumi.Input[str]] = None,
290
+ size: Optional[pulumi.Input[int]] = None,
291
+ snapshot_id: Optional[pulumi.Input[str]] = None,
292
+ status: Optional[pulumi.Input[str]] = None,
293
+ type: Optional[pulumi.Input[str]] = None,
294
+ zone_id: Optional[pulumi.Input[str]] = None):
295
+ """
296
+ Input properties used for looking up and filtering CustomDisk resources.
297
+ :param pulumi.Input[bool] auto_pay: Whether to pay automatically. Value range:
298
+ :param pulumi.Input[bool] auto_renew: Whether to automatically renew. This parameter is passed in only when you create a data disk. Valid values:
299
+ :param pulumi.Input[str] create_time: Creation time.
300
+ :param pulumi.Input[str] description: The disk description. It must be 2 to 256 characters in length and cannot start with 'http:// 'or 'https.
301
+ Default value: empty.
302
+ :param pulumi.Input[str] disk_category: The type of the data disk. Value range:
303
+ :param pulumi.Input[str] disk_name: The disk name. It can be 2 to 128 characters in length. It supports letters in Unicode (including English, Chinese, and numbers). Can contain a colon (:), an underscore (_), a period (.), or a dash (-).
304
+ Default value: empty.
305
+ :param pulumi.Input[bool] dry_run: Whether to pre-check the instance creation operation. Valid values:
306
+ :param pulumi.Input[str] instance_charge_type: The Payment type. Only `Postpaid`: Pay-As-You-Go is supported.
307
+ :param pulumi.Input[str] performance_level: When creating an ESSD cloud disk, set the performance level of the disk. Value range:
308
+ - `PL0`: The maximum random read/write IOPS 10000 for a single disk.
309
+ - `PL1` (default): The maximum number of random read/write IOPS 50000 for a single disk.
310
+ - `PL2`: maximum random read/write IOPS 100000 for a single disk.
311
+ - `PL3`: The maximum random read/write IOPS 1 million for a single disk.
312
+
313
+ For more information about how to select an ESSD performance level, see ESSD cloud disk.
314
+ :param pulumi.Input[int] period: Reserved parameters, no need to fill in.
315
+ :param pulumi.Input[str] period_unit: Reserved parameters, no need to fill in.
316
+ :param pulumi.Input[str] region_id: The region ID. You can view the region ID through the DescribeRegions interface.
317
+ :param pulumi.Input[str] resource_group_id: The ID of the resource group to which the disk belongs.
318
+ :param pulumi.Input[int] size: Capacity size. Unit: GiB. You must pass in a parameter value for this parameter. Value range:
319
+ :param pulumi.Input[str] snapshot_id: The snapshot used to create the cloud disk. Snapshots made on or before July 15, 2013 cannot be used to create cloud disks. The 'SnapshotId' parameter and the 'Size' parameter have the following limitations:
320
+ - If the snapshot capacity corresponding to the 'SnapshotId' parameter is greater than the set 'Size' parameter value, the actual size of the cloud disk created is the size of the specified snapshot.
321
+ - If the snapshot capacity corresponding to the 'SnapshotId' parameter is less than the set 'Size' parameter value, the size of the cloud disk created is the specified 'Size' parameter value.
322
+ - Snapshots are not supported for creating elastic temporary disks.
323
+ :param pulumi.Input[str] status: Disk status. Value Description:_use: In use.
324
+ :param pulumi.Input[str] type: The method of expanding the disk. Value range:
325
+ offline (default): offline expansion. After the expansion, the instance must be restarted to take effect.
326
+ online: online expansion, which can be completed without restarting the instance.
327
+ :param pulumi.Input[str] zone_id: The zone ID.
328
+ """
329
+ if auto_pay is not None:
330
+ pulumi.set(__self__, "auto_pay", auto_pay)
331
+ if auto_renew is not None:
332
+ pulumi.set(__self__, "auto_renew", auto_renew)
333
+ if create_time is not None:
334
+ pulumi.set(__self__, "create_time", create_time)
335
+ if description is not None:
336
+ pulumi.set(__self__, "description", description)
337
+ if disk_category is not None:
338
+ pulumi.set(__self__, "disk_category", disk_category)
339
+ if disk_name is not None:
340
+ pulumi.set(__self__, "disk_name", disk_name)
341
+ if dry_run is not None:
342
+ pulumi.set(__self__, "dry_run", dry_run)
343
+ if instance_charge_type is not None:
344
+ pulumi.set(__self__, "instance_charge_type", instance_charge_type)
345
+ if performance_level is not None:
346
+ pulumi.set(__self__, "performance_level", performance_level)
347
+ if period is not None:
348
+ pulumi.set(__self__, "period", period)
349
+ if period_unit is not None:
350
+ pulumi.set(__self__, "period_unit", period_unit)
351
+ if region_id is not None:
352
+ pulumi.set(__self__, "region_id", region_id)
353
+ if resource_group_id is not None:
354
+ pulumi.set(__self__, "resource_group_id", resource_group_id)
355
+ if size is not None:
356
+ pulumi.set(__self__, "size", size)
357
+ if snapshot_id is not None:
358
+ pulumi.set(__self__, "snapshot_id", snapshot_id)
359
+ if status is not None:
360
+ pulumi.set(__self__, "status", status)
361
+ if type is not None:
362
+ pulumi.set(__self__, "type", type)
363
+ if zone_id is not None:
364
+ pulumi.set(__self__, "zone_id", zone_id)
365
+
366
+ @property
367
+ @pulumi.getter(name="autoPay")
368
+ def auto_pay(self) -> Optional[pulumi.Input[bool]]:
369
+ """
370
+ Whether to pay automatically. Value range:
371
+ """
372
+ return pulumi.get(self, "auto_pay")
373
+
374
+ @auto_pay.setter
375
+ def auto_pay(self, value: Optional[pulumi.Input[bool]]):
376
+ pulumi.set(self, "auto_pay", value)
377
+
378
+ @property
379
+ @pulumi.getter(name="autoRenew")
380
+ def auto_renew(self) -> Optional[pulumi.Input[bool]]:
381
+ """
382
+ Whether to automatically renew. This parameter is passed in only when you create a data disk. Valid values:
383
+ """
384
+ return pulumi.get(self, "auto_renew")
385
+
386
+ @auto_renew.setter
387
+ def auto_renew(self, value: Optional[pulumi.Input[bool]]):
388
+ pulumi.set(self, "auto_renew", value)
389
+
390
+ @property
391
+ @pulumi.getter(name="createTime")
392
+ def create_time(self) -> Optional[pulumi.Input[str]]:
393
+ """
394
+ Creation time.
395
+ """
396
+ return pulumi.get(self, "create_time")
397
+
398
+ @create_time.setter
399
+ def create_time(self, value: Optional[pulumi.Input[str]]):
400
+ pulumi.set(self, "create_time", value)
401
+
402
+ @property
403
+ @pulumi.getter
404
+ def description(self) -> Optional[pulumi.Input[str]]:
405
+ """
406
+ The disk description. It must be 2 to 256 characters in length and cannot start with 'http:// 'or 'https.
407
+ Default value: empty.
408
+ """
409
+ return pulumi.get(self, "description")
410
+
411
+ @description.setter
412
+ def description(self, value: Optional[pulumi.Input[str]]):
413
+ pulumi.set(self, "description", value)
414
+
415
+ @property
416
+ @pulumi.getter(name="diskCategory")
417
+ def disk_category(self) -> Optional[pulumi.Input[str]]:
418
+ """
419
+ The type of the data disk. Value range:
420
+ """
421
+ return pulumi.get(self, "disk_category")
422
+
423
+ @disk_category.setter
424
+ def disk_category(self, value: Optional[pulumi.Input[str]]):
425
+ pulumi.set(self, "disk_category", value)
426
+
427
+ @property
428
+ @pulumi.getter(name="diskName")
429
+ def disk_name(self) -> Optional[pulumi.Input[str]]:
430
+ """
431
+ The disk name. It can be 2 to 128 characters in length. It supports letters in Unicode (including English, Chinese, and numbers). Can contain a colon (:), an underscore (_), a period (.), or a dash (-).
432
+ Default value: empty.
433
+ """
434
+ return pulumi.get(self, "disk_name")
435
+
436
+ @disk_name.setter
437
+ def disk_name(self, value: Optional[pulumi.Input[str]]):
438
+ pulumi.set(self, "disk_name", value)
439
+
440
+ @property
441
+ @pulumi.getter(name="dryRun")
442
+ def dry_run(self) -> Optional[pulumi.Input[bool]]:
443
+ """
444
+ Whether to pre-check the instance creation operation. Valid values:
445
+ """
446
+ return pulumi.get(self, "dry_run")
447
+
448
+ @dry_run.setter
449
+ def dry_run(self, value: Optional[pulumi.Input[bool]]):
450
+ pulumi.set(self, "dry_run", value)
451
+
452
+ @property
453
+ @pulumi.getter(name="instanceChargeType")
454
+ def instance_charge_type(self) -> Optional[pulumi.Input[str]]:
455
+ """
456
+ The Payment type. Only `Postpaid`: Pay-As-You-Go is supported.
457
+ """
458
+ return pulumi.get(self, "instance_charge_type")
459
+
460
+ @instance_charge_type.setter
461
+ def instance_charge_type(self, value: Optional[pulumi.Input[str]]):
462
+ pulumi.set(self, "instance_charge_type", value)
463
+
464
+ @property
465
+ @pulumi.getter(name="performanceLevel")
466
+ def performance_level(self) -> Optional[pulumi.Input[str]]:
467
+ """
468
+ When creating an ESSD cloud disk, set the performance level of the disk. Value range:
469
+ - `PL0`: The maximum random read/write IOPS 10000 for a single disk.
470
+ - `PL1` (default): The maximum number of random read/write IOPS 50000 for a single disk.
471
+ - `PL2`: maximum random read/write IOPS 100000 for a single disk.
472
+ - `PL3`: The maximum random read/write IOPS 1 million for a single disk.
473
+
474
+ For more information about how to select an ESSD performance level, see ESSD cloud disk.
475
+ """
476
+ return pulumi.get(self, "performance_level")
477
+
478
+ @performance_level.setter
479
+ def performance_level(self, value: Optional[pulumi.Input[str]]):
480
+ pulumi.set(self, "performance_level", value)
481
+
482
+ @property
483
+ @pulumi.getter
484
+ def period(self) -> Optional[pulumi.Input[int]]:
485
+ """
486
+ Reserved parameters, no need to fill in.
487
+ """
488
+ return pulumi.get(self, "period")
489
+
490
+ @period.setter
491
+ def period(self, value: Optional[pulumi.Input[int]]):
492
+ pulumi.set(self, "period", value)
493
+
494
+ @property
495
+ @pulumi.getter(name="periodUnit")
496
+ def period_unit(self) -> Optional[pulumi.Input[str]]:
497
+ """
498
+ Reserved parameters, no need to fill in.
499
+ """
500
+ return pulumi.get(self, "period_unit")
501
+
502
+ @period_unit.setter
503
+ def period_unit(self, value: Optional[pulumi.Input[str]]):
504
+ pulumi.set(self, "period_unit", value)
505
+
506
+ @property
507
+ @pulumi.getter(name="regionId")
508
+ def region_id(self) -> Optional[pulumi.Input[str]]:
509
+ """
510
+ The region ID. You can view the region ID through the DescribeRegions interface.
511
+ """
512
+ return pulumi.get(self, "region_id")
513
+
514
+ @region_id.setter
515
+ def region_id(self, value: Optional[pulumi.Input[str]]):
516
+ pulumi.set(self, "region_id", value)
517
+
518
+ @property
519
+ @pulumi.getter(name="resourceGroupId")
520
+ def resource_group_id(self) -> Optional[pulumi.Input[str]]:
521
+ """
522
+ The ID of the resource group to which the disk belongs.
523
+ """
524
+ return pulumi.get(self, "resource_group_id")
525
+
526
+ @resource_group_id.setter
527
+ def resource_group_id(self, value: Optional[pulumi.Input[str]]):
528
+ pulumi.set(self, "resource_group_id", value)
529
+
530
+ @property
531
+ @pulumi.getter
532
+ def size(self) -> Optional[pulumi.Input[int]]:
533
+ """
534
+ Capacity size. Unit: GiB. You must pass in a parameter value for this parameter. Value range:
535
+ """
536
+ return pulumi.get(self, "size")
537
+
538
+ @size.setter
539
+ def size(self, value: Optional[pulumi.Input[int]]):
540
+ pulumi.set(self, "size", value)
541
+
542
+ @property
543
+ @pulumi.getter(name="snapshotId")
544
+ def snapshot_id(self) -> Optional[pulumi.Input[str]]:
545
+ """
546
+ The snapshot used to create the cloud disk. Snapshots made on or before July 15, 2013 cannot be used to create cloud disks. The 'SnapshotId' parameter and the 'Size' parameter have the following limitations:
547
+ - If the snapshot capacity corresponding to the 'SnapshotId' parameter is greater than the set 'Size' parameter value, the actual size of the cloud disk created is the size of the specified snapshot.
548
+ - If the snapshot capacity corresponding to the 'SnapshotId' parameter is less than the set 'Size' parameter value, the size of the cloud disk created is the specified 'Size' parameter value.
549
+ - Snapshots are not supported for creating elastic temporary disks.
550
+ """
551
+ return pulumi.get(self, "snapshot_id")
552
+
553
+ @snapshot_id.setter
554
+ def snapshot_id(self, value: Optional[pulumi.Input[str]]):
555
+ pulumi.set(self, "snapshot_id", value)
556
+
557
+ @property
558
+ @pulumi.getter
559
+ def status(self) -> Optional[pulumi.Input[str]]:
560
+ """
561
+ Disk status. Value Description:_use: In use.
562
+ """
563
+ return pulumi.get(self, "status")
564
+
565
+ @status.setter
566
+ def status(self, value: Optional[pulumi.Input[str]]):
567
+ pulumi.set(self, "status", value)
568
+
569
+ @property
570
+ @pulumi.getter
571
+ def type(self) -> Optional[pulumi.Input[str]]:
572
+ """
573
+ The method of expanding the disk. Value range:
574
+ offline (default): offline expansion. After the expansion, the instance must be restarted to take effect.
575
+ online: online expansion, which can be completed without restarting the instance.
576
+ """
577
+ return pulumi.get(self, "type")
578
+
579
+ @type.setter
580
+ def type(self, value: Optional[pulumi.Input[str]]):
581
+ pulumi.set(self, "type", value)
582
+
583
+ @property
584
+ @pulumi.getter(name="zoneId")
585
+ def zone_id(self) -> Optional[pulumi.Input[str]]:
586
+ """
587
+ The zone ID.
588
+ """
589
+ return pulumi.get(self, "zone_id")
590
+
591
+ @zone_id.setter
592
+ def zone_id(self, value: Optional[pulumi.Input[str]]):
593
+ pulumi.set(self, "zone_id", value)
594
+
595
+
596
+ class CustomDisk(pulumi.CustomResource):
597
+ @overload
598
+ def __init__(__self__,
599
+ resource_name: str,
600
+ opts: Optional[pulumi.ResourceOptions] = None,
601
+ auto_pay: Optional[pulumi.Input[bool]] = None,
602
+ auto_renew: Optional[pulumi.Input[bool]] = None,
603
+ description: Optional[pulumi.Input[str]] = None,
604
+ disk_category: Optional[pulumi.Input[str]] = None,
605
+ disk_name: Optional[pulumi.Input[str]] = None,
606
+ dry_run: Optional[pulumi.Input[bool]] = None,
607
+ instance_charge_type: Optional[pulumi.Input[str]] = None,
608
+ performance_level: Optional[pulumi.Input[str]] = None,
609
+ period: Optional[pulumi.Input[int]] = None,
610
+ period_unit: Optional[pulumi.Input[str]] = None,
611
+ size: Optional[pulumi.Input[int]] = None,
612
+ snapshot_id: Optional[pulumi.Input[str]] = None,
613
+ type: Optional[pulumi.Input[str]] = None,
614
+ zone_id: Optional[pulumi.Input[str]] = None,
615
+ __props__=None):
616
+ """
617
+ Provides a RDS Custom Disk resource.
618
+
619
+ RDS User dedicated host disk.
620
+
621
+ For information about RDS Custom Disk and how to use it, see [What is Custom Disk](https://next.api.alibabacloud.com/document/Rds/2014-08-15/CreateRCDisk).
622
+
623
+ > **NOTE:** Available since v1.247.0.
624
+
625
+ ## Example Usage
626
+
627
+ Basic Usage
628
+
629
+ ```python
630
+ import pulumi
631
+ import pulumi_alicloud as alicloud
632
+
633
+ config = pulumi.Config()
634
+ name = config.get("name")
635
+ if name is None:
636
+ name = "terraform-example"
637
+ region_id = config.get("regionId")
638
+ if region_id is None:
639
+ region_id = "cn-beijing"
640
+ default = alicloud.rds.CustomDisk("default",
641
+ description="zcc测试用例",
642
+ zone_id="cn-beijing-i",
643
+ size=40,
644
+ performance_level="PL1",
645
+ instance_charge_type="Postpaid",
646
+ disk_category="cloud_essd",
647
+ disk_name="custom_disk_001",
648
+ auto_renew=False,
649
+ period=1,
650
+ auto_pay=True,
651
+ period_unit="1")
652
+ ```
653
+
654
+ ## Import
655
+
656
+ RDS Custom Disk can be imported using the id, e.g.
657
+
658
+ ```sh
659
+ $ pulumi import alicloud:rds/customDisk:CustomDisk example <id>
660
+ ```
661
+
662
+ :param str resource_name: The name of the resource.
663
+ :param pulumi.ResourceOptions opts: Options for the resource.
664
+ :param pulumi.Input[bool] auto_pay: Whether to pay automatically. Value range:
665
+ :param pulumi.Input[bool] auto_renew: Whether to automatically renew. This parameter is passed in only when you create a data disk. Valid values:
666
+ :param pulumi.Input[str] description: The disk description. It must be 2 to 256 characters in length and cannot start with 'http:// 'or 'https.
667
+ Default value: empty.
668
+ :param pulumi.Input[str] disk_category: The type of the data disk. Value range:
669
+ :param pulumi.Input[str] disk_name: The disk name. It can be 2 to 128 characters in length. It supports letters in Unicode (including English, Chinese, and numbers). Can contain a colon (:), an underscore (_), a period (.), or a dash (-).
670
+ Default value: empty.
671
+ :param pulumi.Input[bool] dry_run: Whether to pre-check the instance creation operation. Valid values:
672
+ :param pulumi.Input[str] instance_charge_type: The Payment type. Only `Postpaid`: Pay-As-You-Go is supported.
673
+ :param pulumi.Input[str] performance_level: When creating an ESSD cloud disk, set the performance level of the disk. Value range:
674
+ - `PL0`: The maximum random read/write IOPS 10000 for a single disk.
675
+ - `PL1` (default): The maximum number of random read/write IOPS 50000 for a single disk.
676
+ - `PL2`: maximum random read/write IOPS 100000 for a single disk.
677
+ - `PL3`: The maximum random read/write IOPS 1 million for a single disk.
678
+
679
+ For more information about how to select an ESSD performance level, see ESSD cloud disk.
680
+ :param pulumi.Input[int] period: Reserved parameters, no need to fill in.
681
+ :param pulumi.Input[str] period_unit: Reserved parameters, no need to fill in.
682
+ :param pulumi.Input[int] size: Capacity size. Unit: GiB. You must pass in a parameter value for this parameter. Value range:
683
+ :param pulumi.Input[str] snapshot_id: The snapshot used to create the cloud disk. Snapshots made on or before July 15, 2013 cannot be used to create cloud disks. The 'SnapshotId' parameter and the 'Size' parameter have the following limitations:
684
+ - If the snapshot capacity corresponding to the 'SnapshotId' parameter is greater than the set 'Size' parameter value, the actual size of the cloud disk created is the size of the specified snapshot.
685
+ - If the snapshot capacity corresponding to the 'SnapshotId' parameter is less than the set 'Size' parameter value, the size of the cloud disk created is the specified 'Size' parameter value.
686
+ - Snapshots are not supported for creating elastic temporary disks.
687
+ :param pulumi.Input[str] type: The method of expanding the disk. Value range:
688
+ offline (default): offline expansion. After the expansion, the instance must be restarted to take effect.
689
+ online: online expansion, which can be completed without restarting the instance.
690
+ :param pulumi.Input[str] zone_id: The zone ID.
691
+ """
692
+ ...
693
+ @overload
694
+ def __init__(__self__,
695
+ resource_name: str,
696
+ args: CustomDiskArgs,
697
+ opts: Optional[pulumi.ResourceOptions] = None):
698
+ """
699
+ Provides a RDS Custom Disk resource.
700
+
701
+ RDS User dedicated host disk.
702
+
703
+ For information about RDS Custom Disk and how to use it, see [What is Custom Disk](https://next.api.alibabacloud.com/document/Rds/2014-08-15/CreateRCDisk).
704
+
705
+ > **NOTE:** Available since v1.247.0.
706
+
707
+ ## Example Usage
708
+
709
+ Basic Usage
710
+
711
+ ```python
712
+ import pulumi
713
+ import pulumi_alicloud as alicloud
714
+
715
+ config = pulumi.Config()
716
+ name = config.get("name")
717
+ if name is None:
718
+ name = "terraform-example"
719
+ region_id = config.get("regionId")
720
+ if region_id is None:
721
+ region_id = "cn-beijing"
722
+ default = alicloud.rds.CustomDisk("default",
723
+ description="zcc测试用例",
724
+ zone_id="cn-beijing-i",
725
+ size=40,
726
+ performance_level="PL1",
727
+ instance_charge_type="Postpaid",
728
+ disk_category="cloud_essd",
729
+ disk_name="custom_disk_001",
730
+ auto_renew=False,
731
+ period=1,
732
+ auto_pay=True,
733
+ period_unit="1")
734
+ ```
735
+
736
+ ## Import
737
+
738
+ RDS Custom Disk can be imported using the id, e.g.
739
+
740
+ ```sh
741
+ $ pulumi import alicloud:rds/customDisk:CustomDisk example <id>
742
+ ```
743
+
744
+ :param str resource_name: The name of the resource.
745
+ :param CustomDiskArgs args: The arguments to use to populate this resource's properties.
746
+ :param pulumi.ResourceOptions opts: Options for the resource.
747
+ """
748
+ ...
749
+ def __init__(__self__, resource_name: str, *args, **kwargs):
750
+ resource_args, opts = _utilities.get_resource_args_opts(CustomDiskArgs, pulumi.ResourceOptions, *args, **kwargs)
751
+ if resource_args is not None:
752
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
753
+ else:
754
+ __self__._internal_init(resource_name, *args, **kwargs)
755
+
756
+ def _internal_init(__self__,
757
+ resource_name: str,
758
+ opts: Optional[pulumi.ResourceOptions] = None,
759
+ auto_pay: Optional[pulumi.Input[bool]] = None,
760
+ auto_renew: Optional[pulumi.Input[bool]] = None,
761
+ description: Optional[pulumi.Input[str]] = None,
762
+ disk_category: Optional[pulumi.Input[str]] = None,
763
+ disk_name: Optional[pulumi.Input[str]] = None,
764
+ dry_run: Optional[pulumi.Input[bool]] = None,
765
+ instance_charge_type: Optional[pulumi.Input[str]] = None,
766
+ performance_level: Optional[pulumi.Input[str]] = None,
767
+ period: Optional[pulumi.Input[int]] = None,
768
+ period_unit: Optional[pulumi.Input[str]] = None,
769
+ size: Optional[pulumi.Input[int]] = None,
770
+ snapshot_id: Optional[pulumi.Input[str]] = None,
771
+ type: Optional[pulumi.Input[str]] = None,
772
+ zone_id: Optional[pulumi.Input[str]] = None,
773
+ __props__=None):
774
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
775
+ if not isinstance(opts, pulumi.ResourceOptions):
776
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
777
+ if opts.id is None:
778
+ if __props__ is not None:
779
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
780
+ __props__ = CustomDiskArgs.__new__(CustomDiskArgs)
781
+
782
+ __props__.__dict__["auto_pay"] = auto_pay
783
+ __props__.__dict__["auto_renew"] = auto_renew
784
+ __props__.__dict__["description"] = description
785
+ if disk_category is None and not opts.urn:
786
+ raise TypeError("Missing required property 'disk_category'")
787
+ __props__.__dict__["disk_category"] = disk_category
788
+ __props__.__dict__["disk_name"] = disk_name
789
+ __props__.__dict__["dry_run"] = dry_run
790
+ __props__.__dict__["instance_charge_type"] = instance_charge_type
791
+ __props__.__dict__["performance_level"] = performance_level
792
+ __props__.__dict__["period"] = period
793
+ __props__.__dict__["period_unit"] = period_unit
794
+ if size is None and not opts.urn:
795
+ raise TypeError("Missing required property 'size'")
796
+ __props__.__dict__["size"] = size
797
+ __props__.__dict__["snapshot_id"] = snapshot_id
798
+ __props__.__dict__["type"] = type
799
+ if zone_id is None and not opts.urn:
800
+ raise TypeError("Missing required property 'zone_id'")
801
+ __props__.__dict__["zone_id"] = zone_id
802
+ __props__.__dict__["create_time"] = None
803
+ __props__.__dict__["region_id"] = None
804
+ __props__.__dict__["resource_group_id"] = None
805
+ __props__.__dict__["status"] = None
806
+ super(CustomDisk, __self__).__init__(
807
+ 'alicloud:rds/customDisk:CustomDisk',
808
+ resource_name,
809
+ __props__,
810
+ opts)
811
+
812
+ @staticmethod
813
+ def get(resource_name: str,
814
+ id: pulumi.Input[str],
815
+ opts: Optional[pulumi.ResourceOptions] = None,
816
+ auto_pay: Optional[pulumi.Input[bool]] = None,
817
+ auto_renew: Optional[pulumi.Input[bool]] = None,
818
+ create_time: Optional[pulumi.Input[str]] = None,
819
+ description: Optional[pulumi.Input[str]] = None,
820
+ disk_category: Optional[pulumi.Input[str]] = None,
821
+ disk_name: Optional[pulumi.Input[str]] = None,
822
+ dry_run: Optional[pulumi.Input[bool]] = None,
823
+ instance_charge_type: Optional[pulumi.Input[str]] = None,
824
+ performance_level: Optional[pulumi.Input[str]] = None,
825
+ period: Optional[pulumi.Input[int]] = None,
826
+ period_unit: Optional[pulumi.Input[str]] = None,
827
+ region_id: Optional[pulumi.Input[str]] = None,
828
+ resource_group_id: Optional[pulumi.Input[str]] = None,
829
+ size: Optional[pulumi.Input[int]] = None,
830
+ snapshot_id: Optional[pulumi.Input[str]] = None,
831
+ status: Optional[pulumi.Input[str]] = None,
832
+ type: Optional[pulumi.Input[str]] = None,
833
+ zone_id: Optional[pulumi.Input[str]] = None) -> 'CustomDisk':
834
+ """
835
+ Get an existing CustomDisk resource's state with the given name, id, and optional extra
836
+ properties used to qualify the lookup.
837
+
838
+ :param str resource_name: The unique name of the resulting resource.
839
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
840
+ :param pulumi.ResourceOptions opts: Options for the resource.
841
+ :param pulumi.Input[bool] auto_pay: Whether to pay automatically. Value range:
842
+ :param pulumi.Input[bool] auto_renew: Whether to automatically renew. This parameter is passed in only when you create a data disk. Valid values:
843
+ :param pulumi.Input[str] create_time: Creation time.
844
+ :param pulumi.Input[str] description: The disk description. It must be 2 to 256 characters in length and cannot start with 'http:// 'or 'https.
845
+ Default value: empty.
846
+ :param pulumi.Input[str] disk_category: The type of the data disk. Value range:
847
+ :param pulumi.Input[str] disk_name: The disk name. It can be 2 to 128 characters in length. It supports letters in Unicode (including English, Chinese, and numbers). Can contain a colon (:), an underscore (_), a period (.), or a dash (-).
848
+ Default value: empty.
849
+ :param pulumi.Input[bool] dry_run: Whether to pre-check the instance creation operation. Valid values:
850
+ :param pulumi.Input[str] instance_charge_type: The Payment type. Only `Postpaid`: Pay-As-You-Go is supported.
851
+ :param pulumi.Input[str] performance_level: When creating an ESSD cloud disk, set the performance level of the disk. Value range:
852
+ - `PL0`: The maximum random read/write IOPS 10000 for a single disk.
853
+ - `PL1` (default): The maximum number of random read/write IOPS 50000 for a single disk.
854
+ - `PL2`: maximum random read/write IOPS 100000 for a single disk.
855
+ - `PL3`: The maximum random read/write IOPS 1 million for a single disk.
856
+
857
+ For more information about how to select an ESSD performance level, see ESSD cloud disk.
858
+ :param pulumi.Input[int] period: Reserved parameters, no need to fill in.
859
+ :param pulumi.Input[str] period_unit: Reserved parameters, no need to fill in.
860
+ :param pulumi.Input[str] region_id: The region ID. You can view the region ID through the DescribeRegions interface.
861
+ :param pulumi.Input[str] resource_group_id: The ID of the resource group to which the disk belongs.
862
+ :param pulumi.Input[int] size: Capacity size. Unit: GiB. You must pass in a parameter value for this parameter. Value range:
863
+ :param pulumi.Input[str] snapshot_id: The snapshot used to create the cloud disk. Snapshots made on or before July 15, 2013 cannot be used to create cloud disks. The 'SnapshotId' parameter and the 'Size' parameter have the following limitations:
864
+ - If the snapshot capacity corresponding to the 'SnapshotId' parameter is greater than the set 'Size' parameter value, the actual size of the cloud disk created is the size of the specified snapshot.
865
+ - If the snapshot capacity corresponding to the 'SnapshotId' parameter is less than the set 'Size' parameter value, the size of the cloud disk created is the specified 'Size' parameter value.
866
+ - Snapshots are not supported for creating elastic temporary disks.
867
+ :param pulumi.Input[str] status: Disk status. Value Description:_use: In use.
868
+ :param pulumi.Input[str] type: The method of expanding the disk. Value range:
869
+ offline (default): offline expansion. After the expansion, the instance must be restarted to take effect.
870
+ online: online expansion, which can be completed without restarting the instance.
871
+ :param pulumi.Input[str] zone_id: The zone ID.
872
+ """
873
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
874
+
875
+ __props__ = _CustomDiskState.__new__(_CustomDiskState)
876
+
877
+ __props__.__dict__["auto_pay"] = auto_pay
878
+ __props__.__dict__["auto_renew"] = auto_renew
879
+ __props__.__dict__["create_time"] = create_time
880
+ __props__.__dict__["description"] = description
881
+ __props__.__dict__["disk_category"] = disk_category
882
+ __props__.__dict__["disk_name"] = disk_name
883
+ __props__.__dict__["dry_run"] = dry_run
884
+ __props__.__dict__["instance_charge_type"] = instance_charge_type
885
+ __props__.__dict__["performance_level"] = performance_level
886
+ __props__.__dict__["period"] = period
887
+ __props__.__dict__["period_unit"] = period_unit
888
+ __props__.__dict__["region_id"] = region_id
889
+ __props__.__dict__["resource_group_id"] = resource_group_id
890
+ __props__.__dict__["size"] = size
891
+ __props__.__dict__["snapshot_id"] = snapshot_id
892
+ __props__.__dict__["status"] = status
893
+ __props__.__dict__["type"] = type
894
+ __props__.__dict__["zone_id"] = zone_id
895
+ return CustomDisk(resource_name, opts=opts, __props__=__props__)
896
+
897
+ @property
898
+ @pulumi.getter(name="autoPay")
899
+ def auto_pay(self) -> pulumi.Output[Optional[bool]]:
900
+ """
901
+ Whether to pay automatically. Value range:
902
+ """
903
+ return pulumi.get(self, "auto_pay")
904
+
905
+ @property
906
+ @pulumi.getter(name="autoRenew")
907
+ def auto_renew(self) -> pulumi.Output[Optional[bool]]:
908
+ """
909
+ Whether to automatically renew. This parameter is passed in only when you create a data disk. Valid values:
910
+ """
911
+ return pulumi.get(self, "auto_renew")
912
+
913
+ @property
914
+ @pulumi.getter(name="createTime")
915
+ def create_time(self) -> pulumi.Output[str]:
916
+ """
917
+ Creation time.
918
+ """
919
+ return pulumi.get(self, "create_time")
920
+
921
+ @property
922
+ @pulumi.getter
923
+ def description(self) -> pulumi.Output[Optional[str]]:
924
+ """
925
+ The disk description. It must be 2 to 256 characters in length and cannot start with 'http:// 'or 'https.
926
+ Default value: empty.
927
+ """
928
+ return pulumi.get(self, "description")
929
+
930
+ @property
931
+ @pulumi.getter(name="diskCategory")
932
+ def disk_category(self) -> pulumi.Output[str]:
933
+ """
934
+ The type of the data disk. Value range:
935
+ """
936
+ return pulumi.get(self, "disk_category")
937
+
938
+ @property
939
+ @pulumi.getter(name="diskName")
940
+ def disk_name(self) -> pulumi.Output[Optional[str]]:
941
+ """
942
+ The disk name. It can be 2 to 128 characters in length. It supports letters in Unicode (including English, Chinese, and numbers). Can contain a colon (:), an underscore (_), a period (.), or a dash (-).
943
+ Default value: empty.
944
+ """
945
+ return pulumi.get(self, "disk_name")
946
+
947
+ @property
948
+ @pulumi.getter(name="dryRun")
949
+ def dry_run(self) -> pulumi.Output[Optional[bool]]:
950
+ """
951
+ Whether to pre-check the instance creation operation. Valid values:
952
+ """
953
+ return pulumi.get(self, "dry_run")
954
+
955
+ @property
956
+ @pulumi.getter(name="instanceChargeType")
957
+ def instance_charge_type(self) -> pulumi.Output[Optional[str]]:
958
+ """
959
+ The Payment type. Only `Postpaid`: Pay-As-You-Go is supported.
960
+ """
961
+ return pulumi.get(self, "instance_charge_type")
962
+
963
+ @property
964
+ @pulumi.getter(name="performanceLevel")
965
+ def performance_level(self) -> pulumi.Output[Optional[str]]:
966
+ """
967
+ When creating an ESSD cloud disk, set the performance level of the disk. Value range:
968
+ - `PL0`: The maximum random read/write IOPS 10000 for a single disk.
969
+ - `PL1` (default): The maximum number of random read/write IOPS 50000 for a single disk.
970
+ - `PL2`: maximum random read/write IOPS 100000 for a single disk.
971
+ - `PL3`: The maximum random read/write IOPS 1 million for a single disk.
972
+
973
+ For more information about how to select an ESSD performance level, see ESSD cloud disk.
974
+ """
975
+ return pulumi.get(self, "performance_level")
976
+
977
+ @property
978
+ @pulumi.getter
979
+ def period(self) -> pulumi.Output[Optional[int]]:
980
+ """
981
+ Reserved parameters, no need to fill in.
982
+ """
983
+ return pulumi.get(self, "period")
984
+
985
+ @property
986
+ @pulumi.getter(name="periodUnit")
987
+ def period_unit(self) -> pulumi.Output[Optional[str]]:
988
+ """
989
+ Reserved parameters, no need to fill in.
990
+ """
991
+ return pulumi.get(self, "period_unit")
992
+
993
+ @property
994
+ @pulumi.getter(name="regionId")
995
+ def region_id(self) -> pulumi.Output[str]:
996
+ """
997
+ The region ID. You can view the region ID through the DescribeRegions interface.
998
+ """
999
+ return pulumi.get(self, "region_id")
1000
+
1001
+ @property
1002
+ @pulumi.getter(name="resourceGroupId")
1003
+ def resource_group_id(self) -> pulumi.Output[str]:
1004
+ """
1005
+ The ID of the resource group to which the disk belongs.
1006
+ """
1007
+ return pulumi.get(self, "resource_group_id")
1008
+
1009
+ @property
1010
+ @pulumi.getter
1011
+ def size(self) -> pulumi.Output[int]:
1012
+ """
1013
+ Capacity size. Unit: GiB. You must pass in a parameter value for this parameter. Value range:
1014
+ """
1015
+ return pulumi.get(self, "size")
1016
+
1017
+ @property
1018
+ @pulumi.getter(name="snapshotId")
1019
+ def snapshot_id(self) -> pulumi.Output[Optional[str]]:
1020
+ """
1021
+ The snapshot used to create the cloud disk. Snapshots made on or before July 15, 2013 cannot be used to create cloud disks. The 'SnapshotId' parameter and the 'Size' parameter have the following limitations:
1022
+ - If the snapshot capacity corresponding to the 'SnapshotId' parameter is greater than the set 'Size' parameter value, the actual size of the cloud disk created is the size of the specified snapshot.
1023
+ - If the snapshot capacity corresponding to the 'SnapshotId' parameter is less than the set 'Size' parameter value, the size of the cloud disk created is the specified 'Size' parameter value.
1024
+ - Snapshots are not supported for creating elastic temporary disks.
1025
+ """
1026
+ return pulumi.get(self, "snapshot_id")
1027
+
1028
+ @property
1029
+ @pulumi.getter
1030
+ def status(self) -> pulumi.Output[str]:
1031
+ """
1032
+ Disk status. Value Description:_use: In use.
1033
+ """
1034
+ return pulumi.get(self, "status")
1035
+
1036
+ @property
1037
+ @pulumi.getter
1038
+ def type(self) -> pulumi.Output[Optional[str]]:
1039
+ """
1040
+ The method of expanding the disk. Value range:
1041
+ offline (default): offline expansion. After the expansion, the instance must be restarted to take effect.
1042
+ online: online expansion, which can be completed without restarting the instance.
1043
+ """
1044
+ return pulumi.get(self, "type")
1045
+
1046
+ @property
1047
+ @pulumi.getter(name="zoneId")
1048
+ def zone_id(self) -> pulumi.Output[str]:
1049
+ """
1050
+ The zone ID.
1051
+ """
1052
+ return pulumi.get(self, "zone_id")
1053
+