pulumi-alicloud 3.73.0a1736850863__py3-none-any.whl → 3.74.0__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 (123) hide show
  1. pulumi_alicloud/__init__.py +139 -0
  2. pulumi_alicloud/alb/__init__.py +2 -0
  3. pulumi_alicloud/alb/_inputs.py +913 -250
  4. pulumi_alicloud/alb/a_script.py +116 -98
  5. pulumi_alicloud/alb/get_server_groups.py +55 -25
  6. pulumi_alicloud/alb/listener.py +269 -174
  7. pulumi_alicloud/alb/load_balancer.py +239 -118
  8. pulumi_alicloud/alb/load_balancer_access_log_config_attachment.py +303 -0
  9. pulumi_alicloud/alb/load_balancer_zone_shifted_attachment.py +303 -0
  10. pulumi_alicloud/alb/outputs.py +720 -222
  11. pulumi_alicloud/alb/server_group.py +532 -122
  12. pulumi_alicloud/alikafka/instance.py +188 -70
  13. pulumi_alicloud/amqp/instance.py +77 -28
  14. pulumi_alicloud/bastionhost/_inputs.py +40 -38
  15. pulumi_alicloud/bastionhost/get_instances.py +6 -22
  16. pulumi_alicloud/bastionhost/outputs.py +60 -49
  17. pulumi_alicloud/cen/_inputs.py +34 -0
  18. pulumi_alicloud/cen/instance_grant.py +4 -0
  19. pulumi_alicloud/cen/outputs.py +37 -0
  20. pulumi_alicloud/cen/transit_router_multicast_domain.py +123 -36
  21. pulumi_alicloud/cloudcontrol/__init__.py +12 -0
  22. pulumi_alicloud/cloudcontrol/get_prices.py +199 -0
  23. pulumi_alicloud/cloudcontrol/get_products.py +187 -0
  24. pulumi_alicloud/cloudcontrol/get_resource_types.py +178 -0
  25. pulumi_alicloud/cloudcontrol/outputs.py +688 -0
  26. pulumi_alicloud/cloudcontrol/resource.py +407 -0
  27. pulumi_alicloud/cms/_inputs.py +21 -15
  28. pulumi_alicloud/cms/alarm.py +7 -7
  29. pulumi_alicloud/cms/outputs.py +14 -10
  30. pulumi_alicloud/cs/_inputs.py +349 -1
  31. pulumi_alicloud/cs/get_edge_kubernetes_clusters.py +4 -2
  32. pulumi_alicloud/cs/get_managed_kubernetes_clusters.py +2 -0
  33. pulumi_alicloud/cs/kubernetes.py +29 -29
  34. pulumi_alicloud/cs/managed_kubernetes.py +137 -47
  35. pulumi_alicloud/cs/node_pool.py +77 -2
  36. pulumi_alicloud/cs/outputs.py +265 -1
  37. pulumi_alicloud/dataworks/__init__.py +4 -0
  38. pulumi_alicloud/dataworks/_inputs.py +1534 -0
  39. pulumi_alicloud/dataworks/di_alarm_rule.py +708 -0
  40. pulumi_alicloud/dataworks/di_job.py +1005 -0
  41. pulumi_alicloud/dataworks/dw_resource_group.py +703 -0
  42. pulumi_alicloud/dataworks/network.py +331 -0
  43. pulumi_alicloud/dataworks/outputs.py +1247 -0
  44. pulumi_alicloud/dcdn/waf_rule.py +14 -14
  45. pulumi_alicloud/dfs/file_system.py +62 -23
  46. pulumi_alicloud/dfs/mount_point.py +48 -22
  47. pulumi_alicloud/dns/get_alidns_domains.py +7 -2
  48. pulumi_alicloud/dns/outputs.py +8 -0
  49. pulumi_alicloud/ecs/ecs_launch_template.py +122 -0
  50. pulumi_alicloud/ecs/ecs_network_interface.py +14 -14
  51. pulumi_alicloud/ecs/ecs_session_manager_status.py +18 -18
  52. pulumi_alicloud/ecs/instance.py +7 -7
  53. pulumi_alicloud/ecs/launch_template.py +88 -0
  54. pulumi_alicloud/esa/__init__.py +3 -0
  55. pulumi_alicloud/esa/_inputs.py +81 -0
  56. pulumi_alicloud/esa/http_request_header_modification_rule.py +531 -0
  57. pulumi_alicloud/esa/list.py +361 -0
  58. pulumi_alicloud/esa/outputs.py +48 -0
  59. pulumi_alicloud/esa/page.py +376 -0
  60. pulumi_alicloud/esa/rate_plan_instance.py +63 -7
  61. pulumi_alicloud/ess/get_scaling_groups.py +64 -10
  62. pulumi_alicloud/ess/get_scaling_rules.py +74 -10
  63. pulumi_alicloud/ess/outputs.py +357 -17
  64. pulumi_alicloud/eventbridge/get_service.py +2 -6
  65. pulumi_alicloud/fc/_inputs.py +75 -75
  66. pulumi_alicloud/fc/custom_domain.py +2 -2
  67. pulumi_alicloud/fc/function.py +32 -4
  68. pulumi_alicloud/fc/outputs.py +50 -50
  69. pulumi_alicloud/fc/v2_function.py +20 -0
  70. pulumi_alicloud/fc/v3_function.py +53 -6
  71. pulumi_alicloud/hbr/__init__.py +1 -0
  72. pulumi_alicloud/hbr/cross_account.py +338 -0
  73. pulumi_alicloud/ims/oidc_provider.py +28 -0
  74. pulumi_alicloud/kms/__init__.py +1 -0
  75. pulumi_alicloud/kms/get_instances.py +160 -0
  76. pulumi_alicloud/kms/instance.py +0 -60
  77. pulumi_alicloud/kms/outputs.py +19 -0
  78. pulumi_alicloud/log/resource_record.py +42 -26
  79. pulumi_alicloud/maxcompute/__init__.py +5 -0
  80. pulumi_alicloud/maxcompute/_inputs.py +615 -42
  81. pulumi_alicloud/maxcompute/outputs.py +486 -28
  82. pulumi_alicloud/maxcompute/project.py +63 -31
  83. pulumi_alicloud/maxcompute/quota_plan.py +412 -0
  84. pulumi_alicloud/maxcompute/quota_schedule.py +260 -0
  85. pulumi_alicloud/maxcompute/role.py +423 -0
  86. pulumi_alicloud/maxcompute/role_user_attachment.py +368 -0
  87. pulumi_alicloud/maxcompute/tunnel_quota_timer.py +287 -0
  88. pulumi_alicloud/message/service_queue.py +106 -59
  89. pulumi_alicloud/message/service_topic.py +182 -37
  90. pulumi_alicloud/mongodb/account.py +138 -163
  91. pulumi_alicloud/oos/secret_parameter.py +84 -9
  92. pulumi_alicloud/oss/bucket.py +1 -1
  93. pulumi_alicloud/oss/bucket_policy.py +2 -4
  94. pulumi_alicloud/oss/bucket_referer.py +2 -4
  95. pulumi_alicloud/oss/get_buckets.py +16 -2
  96. pulumi_alicloud/oss/outputs.py +18 -17
  97. pulumi_alicloud/pulumi-plugin.json +1 -1
  98. pulumi_alicloud/rds/instance.py +68 -0
  99. pulumi_alicloud/sae/application.py +84 -7
  100. pulumi_alicloud/sls/collection_policy.py +2 -2
  101. pulumi_alicloud/vpc/__init__.py +6 -0
  102. pulumi_alicloud/vpc/get_ipam_ipam_pool_allocations.py +295 -0
  103. pulumi_alicloud/vpc/get_ipam_ipam_pool_cidrs.py +196 -0
  104. pulumi_alicloud/vpc/get_ipam_ipam_pools.py +353 -0
  105. pulumi_alicloud/vpc/get_ipam_ipam_scopes.py +333 -0
  106. pulumi_alicloud/vpc/get_ipam_ipams.py +291 -0
  107. pulumi_alicloud/vpc/get_networks.py +3 -0
  108. pulumi_alicloud/vpc/ipam_ipam_pool.py +47 -0
  109. pulumi_alicloud/vpc/ipam_ipam_scope.py +47 -0
  110. pulumi_alicloud/vpc/ipam_service.py +144 -0
  111. pulumi_alicloud/vpc/ipv4_cidr_block.py +162 -51
  112. pulumi_alicloud/vpc/nat_gateway.py +145 -7
  113. pulumi_alicloud/vpc/outputs.py +777 -0
  114. pulumi_alicloud/vpc/snat_entry.py +107 -48
  115. pulumi_alicloud/vpn/_inputs.py +96 -72
  116. pulumi_alicloud/vpn/connection.py +24 -28
  117. pulumi_alicloud/vpn/outputs.py +64 -48
  118. pulumi_alicloud/yundun/_inputs.py +26 -24
  119. pulumi_alicloud/yundun/outputs.py +37 -22
  120. {pulumi_alicloud-3.73.0a1736850863.dist-info → pulumi_alicloud-3.74.0.dist-info}/METADATA +1 -1
  121. {pulumi_alicloud-3.73.0a1736850863.dist-info → pulumi_alicloud-3.74.0.dist-info}/RECORD +123 -95
  122. {pulumi_alicloud-3.73.0a1736850863.dist-info → pulumi_alicloud-3.74.0.dist-info}/WHEEL +0 -0
  123. {pulumi_alicloud-3.73.0a1736850863.dist-info → pulumi_alicloud-3.74.0.dist-info}/top_level.txt +0 -0
@@ -13,6 +13,8 @@ if sys.version_info >= (3, 11):
13
13
  else:
14
14
  from typing_extensions import NotRequired, TypedDict, TypeAlias
15
15
  from .. import _utilities
16
+ from . import outputs
17
+ from ._inputs import *
16
18
 
17
19
  __all__ = ['TransitRouterMulticastDomainArgs', 'TransitRouterMulticastDomain']
18
20
 
@@ -20,17 +22,21 @@ __all__ = ['TransitRouterMulticastDomainArgs', 'TransitRouterMulticastDomain']
20
22
  class TransitRouterMulticastDomainArgs:
21
23
  def __init__(__self__, *,
22
24
  transit_router_id: pulumi.Input[str],
25
+ options: Optional[pulumi.Input['TransitRouterMulticastDomainOptionsArgs']] = None,
23
26
  tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
24
27
  transit_router_multicast_domain_description: Optional[pulumi.Input[str]] = None,
25
28
  transit_router_multicast_domain_name: Optional[pulumi.Input[str]] = None):
26
29
  """
27
30
  The set of arguments for constructing a TransitRouterMulticastDomain resource.
28
- :param pulumi.Input[str] transit_router_id: The ID of the transit router.
31
+ :param pulumi.Input[str] transit_router_id: The ID of the forwarding router instance.
32
+ :param pulumi.Input['TransitRouterMulticastDomainOptionsArgs'] options: The function options of the multicast domain. See `options` below.
29
33
  :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: A mapping of tags to assign to the resource.
30
- :param pulumi.Input[str] transit_router_multicast_domain_description: The description of the multicast domain. The description must be 0 to 256 characters in length, and can contain letters, digits, commas (,), periods (.), semicolons (;), forward slashes (/), at signs (@), underscores (_), and hyphens (-).
31
- :param pulumi.Input[str] transit_router_multicast_domain_name: The name of the multicast domain. The name must be 0 to 128 characters in length, and can contain letters, digits, commas (,), periods (.), semicolons (;), forward slashes (/), at signs (@), underscores (_), and hyphens (-).
34
+ :param pulumi.Input[str] transit_router_multicast_domain_description: The description of the multicast domain.
35
+ :param pulumi.Input[str] transit_router_multicast_domain_name: The name of the multicast domain.
32
36
  """
33
37
  pulumi.set(__self__, "transit_router_id", transit_router_id)
38
+ if options is not None:
39
+ pulumi.set(__self__, "options", options)
34
40
  if tags is not None:
35
41
  pulumi.set(__self__, "tags", tags)
36
42
  if transit_router_multicast_domain_description is not None:
@@ -42,7 +48,7 @@ class TransitRouterMulticastDomainArgs:
42
48
  @pulumi.getter(name="transitRouterId")
43
49
  def transit_router_id(self) -> pulumi.Input[str]:
44
50
  """
45
- The ID of the transit router.
51
+ The ID of the forwarding router instance.
46
52
  """
47
53
  return pulumi.get(self, "transit_router_id")
48
54
 
@@ -50,6 +56,18 @@ class TransitRouterMulticastDomainArgs:
50
56
  def transit_router_id(self, value: pulumi.Input[str]):
51
57
  pulumi.set(self, "transit_router_id", value)
52
58
 
59
+ @property
60
+ @pulumi.getter
61
+ def options(self) -> Optional[pulumi.Input['TransitRouterMulticastDomainOptionsArgs']]:
62
+ """
63
+ The function options of the multicast domain. See `options` below.
64
+ """
65
+ return pulumi.get(self, "options")
66
+
67
+ @options.setter
68
+ def options(self, value: Optional[pulumi.Input['TransitRouterMulticastDomainOptionsArgs']]):
69
+ pulumi.set(self, "options", value)
70
+
53
71
  @property
54
72
  @pulumi.getter
55
73
  def tags(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
@@ -66,7 +84,7 @@ class TransitRouterMulticastDomainArgs:
66
84
  @pulumi.getter(name="transitRouterMulticastDomainDescription")
67
85
  def transit_router_multicast_domain_description(self) -> Optional[pulumi.Input[str]]:
68
86
  """
69
- The description of the multicast domain. The description must be 0 to 256 characters in length, and can contain letters, digits, commas (,), periods (.), semicolons (;), forward slashes (/), at signs (@), underscores (_), and hyphens (-).
87
+ The description of the multicast domain.
70
88
  """
71
89
  return pulumi.get(self, "transit_router_multicast_domain_description")
72
90
 
@@ -78,7 +96,7 @@ class TransitRouterMulticastDomainArgs:
78
96
  @pulumi.getter(name="transitRouterMulticastDomainName")
79
97
  def transit_router_multicast_domain_name(self) -> Optional[pulumi.Input[str]]:
80
98
  """
81
- The name of the multicast domain. The name must be 0 to 128 characters in length, and can contain letters, digits, commas (,), periods (.), semicolons (;), forward slashes (/), at signs (@), underscores (_), and hyphens (-).
99
+ The name of the multicast domain.
82
100
  """
83
101
  return pulumi.get(self, "transit_router_multicast_domain_name")
84
102
 
@@ -90,6 +108,8 @@ class TransitRouterMulticastDomainArgs:
90
108
  @pulumi.input_type
91
109
  class _TransitRouterMulticastDomainState:
92
110
  def __init__(__self__, *,
111
+ options: Optional[pulumi.Input['TransitRouterMulticastDomainOptionsArgs']] = None,
112
+ region_id: Optional[pulumi.Input[str]] = None,
93
113
  status: Optional[pulumi.Input[str]] = None,
94
114
  tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
95
115
  transit_router_id: Optional[pulumi.Input[str]] = None,
@@ -97,12 +117,18 @@ class _TransitRouterMulticastDomainState:
97
117
  transit_router_multicast_domain_name: Optional[pulumi.Input[str]] = None):
98
118
  """
99
119
  Input properties used for looking up and filtering TransitRouterMulticastDomain resources.
120
+ :param pulumi.Input['TransitRouterMulticastDomainOptionsArgs'] options: The function options of the multicast domain. See `options` below.
121
+ :param pulumi.Input[str] region_id: (Available since v1.242.0) The region ID of the transit router.
100
122
  :param pulumi.Input[str] status: The status of the Transit Router Multicast Domain.
101
123
  :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: A mapping of tags to assign to the resource.
102
- :param pulumi.Input[str] transit_router_id: The ID of the transit router.
103
- :param pulumi.Input[str] transit_router_multicast_domain_description: The description of the multicast domain. The description must be 0 to 256 characters in length, and can contain letters, digits, commas (,), periods (.), semicolons (;), forward slashes (/), at signs (@), underscores (_), and hyphens (-).
104
- :param pulumi.Input[str] transit_router_multicast_domain_name: The name of the multicast domain. The name must be 0 to 128 characters in length, and can contain letters, digits, commas (,), periods (.), semicolons (;), forward slashes (/), at signs (@), underscores (_), and hyphens (-).
105
- """
124
+ :param pulumi.Input[str] transit_router_id: The ID of the forwarding router instance.
125
+ :param pulumi.Input[str] transit_router_multicast_domain_description: The description of the multicast domain.
126
+ :param pulumi.Input[str] transit_router_multicast_domain_name: The name of the multicast domain.
127
+ """
128
+ if options is not None:
129
+ pulumi.set(__self__, "options", options)
130
+ if region_id is not None:
131
+ pulumi.set(__self__, "region_id", region_id)
106
132
  if status is not None:
107
133
  pulumi.set(__self__, "status", status)
108
134
  if tags is not None:
@@ -114,6 +140,30 @@ class _TransitRouterMulticastDomainState:
114
140
  if transit_router_multicast_domain_name is not None:
115
141
  pulumi.set(__self__, "transit_router_multicast_domain_name", transit_router_multicast_domain_name)
116
142
 
143
+ @property
144
+ @pulumi.getter
145
+ def options(self) -> Optional[pulumi.Input['TransitRouterMulticastDomainOptionsArgs']]:
146
+ """
147
+ The function options of the multicast domain. See `options` below.
148
+ """
149
+ return pulumi.get(self, "options")
150
+
151
+ @options.setter
152
+ def options(self, value: Optional[pulumi.Input['TransitRouterMulticastDomainOptionsArgs']]):
153
+ pulumi.set(self, "options", value)
154
+
155
+ @property
156
+ @pulumi.getter(name="regionId")
157
+ def region_id(self) -> Optional[pulumi.Input[str]]:
158
+ """
159
+ (Available since v1.242.0) The region ID of the transit router.
160
+ """
161
+ return pulumi.get(self, "region_id")
162
+
163
+ @region_id.setter
164
+ def region_id(self, value: Optional[pulumi.Input[str]]):
165
+ pulumi.set(self, "region_id", value)
166
+
117
167
  @property
118
168
  @pulumi.getter
119
169
  def status(self) -> Optional[pulumi.Input[str]]:
@@ -142,7 +192,7 @@ class _TransitRouterMulticastDomainState:
142
192
  @pulumi.getter(name="transitRouterId")
143
193
  def transit_router_id(self) -> Optional[pulumi.Input[str]]:
144
194
  """
145
- The ID of the transit router.
195
+ The ID of the forwarding router instance.
146
196
  """
147
197
  return pulumi.get(self, "transit_router_id")
148
198
 
@@ -154,7 +204,7 @@ class _TransitRouterMulticastDomainState:
154
204
  @pulumi.getter(name="transitRouterMulticastDomainDescription")
155
205
  def transit_router_multicast_domain_description(self) -> Optional[pulumi.Input[str]]:
156
206
  """
157
- The description of the multicast domain. The description must be 0 to 256 characters in length, and can contain letters, digits, commas (,), periods (.), semicolons (;), forward slashes (/), at signs (@), underscores (_), and hyphens (-).
207
+ The description of the multicast domain.
158
208
  """
159
209
  return pulumi.get(self, "transit_router_multicast_domain_description")
160
210
 
@@ -166,7 +216,7 @@ class _TransitRouterMulticastDomainState:
166
216
  @pulumi.getter(name="transitRouterMulticastDomainName")
167
217
  def transit_router_multicast_domain_name(self) -> Optional[pulumi.Input[str]]:
168
218
  """
169
- The name of the multicast domain. The name must be 0 to 128 characters in length, and can contain letters, digits, commas (,), periods (.), semicolons (;), forward slashes (/), at signs (@), underscores (_), and hyphens (-).
219
+ The name of the multicast domain.
170
220
  """
171
221
  return pulumi.get(self, "transit_router_multicast_domain_name")
172
222
 
@@ -180,6 +230,7 @@ class TransitRouterMulticastDomain(pulumi.CustomResource):
180
230
  def __init__(__self__,
181
231
  resource_name: str,
182
232
  opts: Optional[pulumi.ResourceOptions] = None,
233
+ options: Optional[pulumi.Input[Union['TransitRouterMulticastDomainOptionsArgs', 'TransitRouterMulticastDomainOptionsArgsDict']]] = None,
183
234
  tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
184
235
  transit_router_id: Optional[pulumi.Input[str]] = None,
185
236
  transit_router_multicast_domain_description: Optional[pulumi.Input[str]] = None,
@@ -200,17 +251,22 @@ class TransitRouterMulticastDomain(pulumi.CustomResource):
200
251
  import pulumi
201
252
  import pulumi_alicloud as alicloud
202
253
 
203
- example = alicloud.cen.Instance("example",
204
- cen_instance_name="tf_example",
205
- description="an example for cen")
254
+ config = pulumi.Config()
255
+ name = config.get("name")
256
+ if name is None:
257
+ name = "terraform-example"
258
+ example = alicloud.cen.Instance("example", cen_instance_name=name)
206
259
  example_transit_router = alicloud.cen.TransitRouter("example",
207
- transit_router_name="tf_example",
260
+ transit_router_name=name,
208
261
  cen_id=example.id,
209
262
  support_multicast=True)
210
- example_transit_router_multicast_domain = alicloud.cen.TransitRouterMulticastDomain("example",
263
+ default = alicloud.cen.TransitRouterMulticastDomain("default",
211
264
  transit_router_id=example_transit_router.transit_router_id,
212
- transit_router_multicast_domain_name="tf_example",
213
- transit_router_multicast_domain_description="tf_example")
265
+ transit_router_multicast_domain_name=name,
266
+ transit_router_multicast_domain_description=name,
267
+ options={
268
+ "igmpv2_support": "disable",
269
+ })
214
270
  ```
215
271
 
216
272
  ## Import
@@ -223,10 +279,11 @@ class TransitRouterMulticastDomain(pulumi.CustomResource):
223
279
 
224
280
  :param str resource_name: The name of the resource.
225
281
  :param pulumi.ResourceOptions opts: Options for the resource.
282
+ :param pulumi.Input[Union['TransitRouterMulticastDomainOptionsArgs', 'TransitRouterMulticastDomainOptionsArgsDict']] options: The function options of the multicast domain. See `options` below.
226
283
  :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: A mapping of tags to assign to the resource.
227
- :param pulumi.Input[str] transit_router_id: The ID of the transit router.
228
- :param pulumi.Input[str] transit_router_multicast_domain_description: The description of the multicast domain. The description must be 0 to 256 characters in length, and can contain letters, digits, commas (,), periods (.), semicolons (;), forward slashes (/), at signs (@), underscores (_), and hyphens (-).
229
- :param pulumi.Input[str] transit_router_multicast_domain_name: The name of the multicast domain. The name must be 0 to 128 characters in length, and can contain letters, digits, commas (,), periods (.), semicolons (;), forward slashes (/), at signs (@), underscores (_), and hyphens (-).
284
+ :param pulumi.Input[str] transit_router_id: The ID of the forwarding router instance.
285
+ :param pulumi.Input[str] transit_router_multicast_domain_description: The description of the multicast domain.
286
+ :param pulumi.Input[str] transit_router_multicast_domain_name: The name of the multicast domain.
230
287
  """
231
288
  ...
232
289
  @overload
@@ -249,17 +306,22 @@ class TransitRouterMulticastDomain(pulumi.CustomResource):
249
306
  import pulumi
250
307
  import pulumi_alicloud as alicloud
251
308
 
252
- example = alicloud.cen.Instance("example",
253
- cen_instance_name="tf_example",
254
- description="an example for cen")
309
+ config = pulumi.Config()
310
+ name = config.get("name")
311
+ if name is None:
312
+ name = "terraform-example"
313
+ example = alicloud.cen.Instance("example", cen_instance_name=name)
255
314
  example_transit_router = alicloud.cen.TransitRouter("example",
256
- transit_router_name="tf_example",
315
+ transit_router_name=name,
257
316
  cen_id=example.id,
258
317
  support_multicast=True)
259
- example_transit_router_multicast_domain = alicloud.cen.TransitRouterMulticastDomain("example",
318
+ default = alicloud.cen.TransitRouterMulticastDomain("default",
260
319
  transit_router_id=example_transit_router.transit_router_id,
261
- transit_router_multicast_domain_name="tf_example",
262
- transit_router_multicast_domain_description="tf_example")
320
+ transit_router_multicast_domain_name=name,
321
+ transit_router_multicast_domain_description=name,
322
+ options={
323
+ "igmpv2_support": "disable",
324
+ })
263
325
  ```
264
326
 
265
327
  ## Import
@@ -285,6 +347,7 @@ class TransitRouterMulticastDomain(pulumi.CustomResource):
285
347
  def _internal_init(__self__,
286
348
  resource_name: str,
287
349
  opts: Optional[pulumi.ResourceOptions] = None,
350
+ options: Optional[pulumi.Input[Union['TransitRouterMulticastDomainOptionsArgs', 'TransitRouterMulticastDomainOptionsArgsDict']]] = None,
288
351
  tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
289
352
  transit_router_id: Optional[pulumi.Input[str]] = None,
290
353
  transit_router_multicast_domain_description: Optional[pulumi.Input[str]] = None,
@@ -298,12 +361,14 @@ class TransitRouterMulticastDomain(pulumi.CustomResource):
298
361
  raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
299
362
  __props__ = TransitRouterMulticastDomainArgs.__new__(TransitRouterMulticastDomainArgs)
300
363
 
364
+ __props__.__dict__["options"] = options
301
365
  __props__.__dict__["tags"] = tags
302
366
  if transit_router_id is None and not opts.urn:
303
367
  raise TypeError("Missing required property 'transit_router_id'")
304
368
  __props__.__dict__["transit_router_id"] = transit_router_id
305
369
  __props__.__dict__["transit_router_multicast_domain_description"] = transit_router_multicast_domain_description
306
370
  __props__.__dict__["transit_router_multicast_domain_name"] = transit_router_multicast_domain_name
371
+ __props__.__dict__["region_id"] = None
307
372
  __props__.__dict__["status"] = None
308
373
  super(TransitRouterMulticastDomain, __self__).__init__(
309
374
  'alicloud:cen/transitRouterMulticastDomain:TransitRouterMulticastDomain',
@@ -315,6 +380,8 @@ class TransitRouterMulticastDomain(pulumi.CustomResource):
315
380
  def get(resource_name: str,
316
381
  id: pulumi.Input[str],
317
382
  opts: Optional[pulumi.ResourceOptions] = None,
383
+ options: Optional[pulumi.Input[Union['TransitRouterMulticastDomainOptionsArgs', 'TransitRouterMulticastDomainOptionsArgsDict']]] = None,
384
+ region_id: Optional[pulumi.Input[str]] = None,
318
385
  status: Optional[pulumi.Input[str]] = None,
319
386
  tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
320
387
  transit_router_id: Optional[pulumi.Input[str]] = None,
@@ -327,16 +394,20 @@ class TransitRouterMulticastDomain(pulumi.CustomResource):
327
394
  :param str resource_name: The unique name of the resulting resource.
328
395
  :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
329
396
  :param pulumi.ResourceOptions opts: Options for the resource.
397
+ :param pulumi.Input[Union['TransitRouterMulticastDomainOptionsArgs', 'TransitRouterMulticastDomainOptionsArgsDict']] options: The function options of the multicast domain. See `options` below.
398
+ :param pulumi.Input[str] region_id: (Available since v1.242.0) The region ID of the transit router.
330
399
  :param pulumi.Input[str] status: The status of the Transit Router Multicast Domain.
331
400
  :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: A mapping of tags to assign to the resource.
332
- :param pulumi.Input[str] transit_router_id: The ID of the transit router.
333
- :param pulumi.Input[str] transit_router_multicast_domain_description: The description of the multicast domain. The description must be 0 to 256 characters in length, and can contain letters, digits, commas (,), periods (.), semicolons (;), forward slashes (/), at signs (@), underscores (_), and hyphens (-).
334
- :param pulumi.Input[str] transit_router_multicast_domain_name: The name of the multicast domain. The name must be 0 to 128 characters in length, and can contain letters, digits, commas (,), periods (.), semicolons (;), forward slashes (/), at signs (@), underscores (_), and hyphens (-).
401
+ :param pulumi.Input[str] transit_router_id: The ID of the forwarding router instance.
402
+ :param pulumi.Input[str] transit_router_multicast_domain_description: The description of the multicast domain.
403
+ :param pulumi.Input[str] transit_router_multicast_domain_name: The name of the multicast domain.
335
404
  """
336
405
  opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
337
406
 
338
407
  __props__ = _TransitRouterMulticastDomainState.__new__(_TransitRouterMulticastDomainState)
339
408
 
409
+ __props__.__dict__["options"] = options
410
+ __props__.__dict__["region_id"] = region_id
340
411
  __props__.__dict__["status"] = status
341
412
  __props__.__dict__["tags"] = tags
342
413
  __props__.__dict__["transit_router_id"] = transit_router_id
@@ -344,6 +415,22 @@ class TransitRouterMulticastDomain(pulumi.CustomResource):
344
415
  __props__.__dict__["transit_router_multicast_domain_name"] = transit_router_multicast_domain_name
345
416
  return TransitRouterMulticastDomain(resource_name, opts=opts, __props__=__props__)
346
417
 
418
+ @property
419
+ @pulumi.getter
420
+ def options(self) -> pulumi.Output['outputs.TransitRouterMulticastDomainOptions']:
421
+ """
422
+ The function options of the multicast domain. See `options` below.
423
+ """
424
+ return pulumi.get(self, "options")
425
+
426
+ @property
427
+ @pulumi.getter(name="regionId")
428
+ def region_id(self) -> pulumi.Output[str]:
429
+ """
430
+ (Available since v1.242.0) The region ID of the transit router.
431
+ """
432
+ return pulumi.get(self, "region_id")
433
+
347
434
  @property
348
435
  @pulumi.getter
349
436
  def status(self) -> pulumi.Output[str]:
@@ -364,7 +451,7 @@ class TransitRouterMulticastDomain(pulumi.CustomResource):
364
451
  @pulumi.getter(name="transitRouterId")
365
452
  def transit_router_id(self) -> pulumi.Output[str]:
366
453
  """
367
- The ID of the transit router.
454
+ The ID of the forwarding router instance.
368
455
  """
369
456
  return pulumi.get(self, "transit_router_id")
370
457
 
@@ -372,7 +459,7 @@ class TransitRouterMulticastDomain(pulumi.CustomResource):
372
459
  @pulumi.getter(name="transitRouterMulticastDomainDescription")
373
460
  def transit_router_multicast_domain_description(self) -> pulumi.Output[Optional[str]]:
374
461
  """
375
- The description of the multicast domain. The description must be 0 to 256 characters in length, and can contain letters, digits, commas (,), periods (.), semicolons (;), forward slashes (/), at signs (@), underscores (_), and hyphens (-).
462
+ The description of the multicast domain.
376
463
  """
377
464
  return pulumi.get(self, "transit_router_multicast_domain_description")
378
465
 
@@ -380,7 +467,7 @@ class TransitRouterMulticastDomain(pulumi.CustomResource):
380
467
  @pulumi.getter(name="transitRouterMulticastDomainName")
381
468
  def transit_router_multicast_domain_name(self) -> pulumi.Output[Optional[str]]:
382
469
  """
383
- The name of the multicast domain. The name must be 0 to 128 characters in length, and can contain letters, digits, commas (,), periods (.), semicolons (;), forward slashes (/), at signs (@), underscores (_), and hyphens (-).
470
+ The name of the multicast domain.
384
471
  """
385
472
  return pulumi.get(self, "transit_router_multicast_domain_name")
386
473
 
@@ -0,0 +1,12 @@
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
+ from .. import _utilities
6
+ import typing
7
+ # Export this package's modules as members:
8
+ from .get_prices import *
9
+ from .get_products import *
10
+ from .get_resource_types import *
11
+ from .resource import *
12
+ from . import outputs
@@ -0,0 +1,199 @@
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
+ from . import outputs
17
+
18
+ __all__ = [
19
+ 'GetPricesResult',
20
+ 'AwaitableGetPricesResult',
21
+ 'get_prices',
22
+ 'get_prices_output',
23
+ ]
24
+
25
+ @pulumi.output_type
26
+ class GetPricesResult:
27
+ """
28
+ A collection of values returned by getPrices.
29
+ """
30
+ def __init__(__self__, desire_attributes=None, id=None, output_file=None, prices=None, product=None, resource_code=None):
31
+ if desire_attributes and not isinstance(desire_attributes, dict):
32
+ raise TypeError("Expected argument 'desire_attributes' to be a dict")
33
+ pulumi.set(__self__, "desire_attributes", desire_attributes)
34
+ if id and not isinstance(id, str):
35
+ raise TypeError("Expected argument 'id' to be a str")
36
+ pulumi.set(__self__, "id", id)
37
+ if output_file and not isinstance(output_file, str):
38
+ raise TypeError("Expected argument 'output_file' to be a str")
39
+ pulumi.set(__self__, "output_file", output_file)
40
+ if prices and not isinstance(prices, list):
41
+ raise TypeError("Expected argument 'prices' to be a list")
42
+ pulumi.set(__self__, "prices", prices)
43
+ if product and not isinstance(product, str):
44
+ raise TypeError("Expected argument 'product' to be a str")
45
+ pulumi.set(__self__, "product", product)
46
+ if resource_code and not isinstance(resource_code, str):
47
+ raise TypeError("Expected argument 'resource_code' to be a str")
48
+ pulumi.set(__self__, "resource_code", resource_code)
49
+
50
+ @property
51
+ @pulumi.getter(name="desireAttributes")
52
+ def desire_attributes(self) -> Optional[Mapping[str, str]]:
53
+ return pulumi.get(self, "desire_attributes")
54
+
55
+ @property
56
+ @pulumi.getter
57
+ def id(self) -> str:
58
+ """
59
+ The provider-assigned unique ID for this managed resource.
60
+ """
61
+ return pulumi.get(self, "id")
62
+
63
+ @property
64
+ @pulumi.getter(name="outputFile")
65
+ def output_file(self) -> Optional[str]:
66
+ return pulumi.get(self, "output_file")
67
+
68
+ @property
69
+ @pulumi.getter
70
+ def prices(self) -> Sequence['outputs.GetPricesPriceResult']:
71
+ """
72
+ A list of Price Entries. Each element contains the following attributes:
73
+ """
74
+ return pulumi.get(self, "prices")
75
+
76
+ @property
77
+ @pulumi.getter
78
+ def product(self) -> str:
79
+ return pulumi.get(self, "product")
80
+
81
+ @property
82
+ @pulumi.getter(name="resourceCode")
83
+ def resource_code(self) -> str:
84
+ return pulumi.get(self, "resource_code")
85
+
86
+
87
+ class AwaitableGetPricesResult(GetPricesResult):
88
+ # pylint: disable=using-constant-test
89
+ def __await__(self):
90
+ if False:
91
+ yield self
92
+ return GetPricesResult(
93
+ desire_attributes=self.desire_attributes,
94
+ id=self.id,
95
+ output_file=self.output_file,
96
+ prices=self.prices,
97
+ product=self.product,
98
+ resource_code=self.resource_code)
99
+
100
+
101
+ def get_prices(desire_attributes: Optional[Mapping[str, str]] = None,
102
+ output_file: Optional[str] = None,
103
+ product: Optional[str] = None,
104
+ resource_code: Optional[str] = None,
105
+ opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetPricesResult:
106
+ """
107
+ This data source provides Cloud Control Price available to the user.[What is Price](https://www.alibabacloud.com/help/en/)
108
+
109
+ > **NOTE:** Available since v1.241.0.
110
+
111
+ ## Example Usage
112
+
113
+ ```python
114
+ import pulumi
115
+ import pulumi_alicloud as alicloud
116
+
117
+ config = pulumi.Config()
118
+ name = config.get("name")
119
+ if name is None:
120
+ name = "terraform-example"
121
+ default = alicloud.cloudcontrol.get_prices(desire_attributes={
122
+ "AddressType": "internet",
123
+ "PaymentType": "PayAsYouGo",
124
+ },
125
+ product="SLB",
126
+ resource_code="LoadBalancer")
127
+ pulumi.export("alicloudCloudControlPriceExampleId", default.prices[0].discount_price)
128
+ ```
129
+
130
+
131
+ :param Mapping[str, str] desire_attributes: This property represent the detailed configuration of the Resource which you are going to get price. Give same content as DesireAttributes of the 'Resource' Resource when start Create operation. 'PaymentType' is necessary when in DesireAttributes. Here is a probably example when you get the price of SLB LoadBalancer:```json{"LoadBalancerName": "cc-test","Bandwidth": 6,"PaymentType": "PayAsYouGo","AddressType": "internet","LoadBalancerSpec": "slb.s3.small","InternetChargeType": "paybybandwidth"} See `DesireAttributes` below.
132
+ :param str output_file: File name where to save data source results (after running `pulumi preview`).
133
+ :param str product: The product Code represents the product to be operated. Currently supported products and resources can be queried at the following link: [supported-services-and-resource-types](https://help.aliyun.com/zh/cloud-control-api/product-overview/supported-services-and-resource-types).
134
+ :param str resource_code: Resource Code, if there is a parent resource, split with `::`, such as VPC::VSwitch. The supported resource Code can be obtained from the following link: [supported-services-and-resource-types](https://help.aliyun.com/zh/cloud-control-api/product-overview/supported-services-and-resource-types).
135
+ """
136
+ __args__ = dict()
137
+ __args__['desireAttributes'] = desire_attributes
138
+ __args__['outputFile'] = output_file
139
+ __args__['product'] = product
140
+ __args__['resourceCode'] = resource_code
141
+ opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
142
+ __ret__ = pulumi.runtime.invoke('alicloud:cloudcontrol/getPrices:getPrices', __args__, opts=opts, typ=GetPricesResult).value
143
+
144
+ return AwaitableGetPricesResult(
145
+ desire_attributes=pulumi.get(__ret__, 'desire_attributes'),
146
+ id=pulumi.get(__ret__, 'id'),
147
+ output_file=pulumi.get(__ret__, 'output_file'),
148
+ prices=pulumi.get(__ret__, 'prices'),
149
+ product=pulumi.get(__ret__, 'product'),
150
+ resource_code=pulumi.get(__ret__, 'resource_code'))
151
+ def get_prices_output(desire_attributes: Optional[pulumi.Input[Optional[Mapping[str, str]]]] = None,
152
+ output_file: Optional[pulumi.Input[Optional[str]]] = None,
153
+ product: Optional[pulumi.Input[str]] = None,
154
+ resource_code: Optional[pulumi.Input[str]] = None,
155
+ opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetPricesResult]:
156
+ """
157
+ This data source provides Cloud Control Price available to the user.[What is Price](https://www.alibabacloud.com/help/en/)
158
+
159
+ > **NOTE:** Available since v1.241.0.
160
+
161
+ ## Example Usage
162
+
163
+ ```python
164
+ import pulumi
165
+ import pulumi_alicloud as alicloud
166
+
167
+ config = pulumi.Config()
168
+ name = config.get("name")
169
+ if name is None:
170
+ name = "terraform-example"
171
+ default = alicloud.cloudcontrol.get_prices(desire_attributes={
172
+ "AddressType": "internet",
173
+ "PaymentType": "PayAsYouGo",
174
+ },
175
+ product="SLB",
176
+ resource_code="LoadBalancer")
177
+ pulumi.export("alicloudCloudControlPriceExampleId", default.prices[0].discount_price)
178
+ ```
179
+
180
+
181
+ :param Mapping[str, str] desire_attributes: This property represent the detailed configuration of the Resource which you are going to get price. Give same content as DesireAttributes of the 'Resource' Resource when start Create operation. 'PaymentType' is necessary when in DesireAttributes. Here is a probably example when you get the price of SLB LoadBalancer:```json{"LoadBalancerName": "cc-test","Bandwidth": 6,"PaymentType": "PayAsYouGo","AddressType": "internet","LoadBalancerSpec": "slb.s3.small","InternetChargeType": "paybybandwidth"} See `DesireAttributes` below.
182
+ :param str output_file: File name where to save data source results (after running `pulumi preview`).
183
+ :param str product: The product Code represents the product to be operated. Currently supported products and resources can be queried at the following link: [supported-services-and-resource-types](https://help.aliyun.com/zh/cloud-control-api/product-overview/supported-services-and-resource-types).
184
+ :param str resource_code: Resource Code, if there is a parent resource, split with `::`, such as VPC::VSwitch. The supported resource Code can be obtained from the following link: [supported-services-and-resource-types](https://help.aliyun.com/zh/cloud-control-api/product-overview/supported-services-and-resource-types).
185
+ """
186
+ __args__ = dict()
187
+ __args__['desireAttributes'] = desire_attributes
188
+ __args__['outputFile'] = output_file
189
+ __args__['product'] = product
190
+ __args__['resourceCode'] = resource_code
191
+ opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
192
+ __ret__ = pulumi.runtime.invoke_output('alicloud:cloudcontrol/getPrices:getPrices', __args__, opts=opts, typ=GetPricesResult)
193
+ return __ret__.apply(lambda __response__: GetPricesResult(
194
+ desire_attributes=pulumi.get(__response__, 'desire_attributes'),
195
+ id=pulumi.get(__response__, 'id'),
196
+ output_file=pulumi.get(__response__, 'output_file'),
197
+ prices=pulumi.get(__response__, 'prices'),
198
+ product=pulumi.get(__response__, 'product'),
199
+ resource_code=pulumi.get(__response__, 'resource_code')))