pulumi-alicloud 3.62.0a1725945881__py3-none-any.whl → 3.62.1__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 (80) hide show
  1. pulumi_alicloud/__init__.py +80 -0
  2. pulumi_alicloud/actiontrail/trail.py +2 -2
  3. pulumi_alicloud/adb/cluster.py +34 -0
  4. pulumi_alicloud/adb/db_cluster.py +47 -0
  5. pulumi_alicloud/amqp/binding.py +30 -36
  6. pulumi_alicloud/amqp/static_account.py +12 -12
  7. pulumi_alicloud/cen/_inputs.py +180 -14
  8. pulumi_alicloud/cen/outputs.py +173 -12
  9. pulumi_alicloud/cen/traffic_marking_policy.py +116 -53
  10. pulumi_alicloud/cen/transit_router_peer_attachment.py +38 -20
  11. pulumi_alicloud/cen/transit_router_vpc_attachment.py +338 -119
  12. pulumi_alicloud/cen/transit_router_vpn_attachment.py +2 -2
  13. pulumi_alicloud/cr/chart_namespace.py +14 -6
  14. pulumi_alicloud/cr/endpoint_acl_policy.py +10 -2
  15. pulumi_alicloud/cr/namespace.py +10 -2
  16. pulumi_alicloud/cs/registry_enterprise_repo.py +4 -4
  17. pulumi_alicloud/cs/registry_enterprise_sync_rule.py +10 -10
  18. pulumi_alicloud/ddos/_inputs.py +24 -0
  19. pulumi_alicloud/ddos/bgp_ip.py +1 -1
  20. pulumi_alicloud/ddos/outputs.py +37 -0
  21. pulumi_alicloud/ddos/port.py +110 -40
  22. pulumi_alicloud/ecs/_inputs.py +28 -0
  23. pulumi_alicloud/ecs/outputs.py +20 -0
  24. pulumi_alicloud/emrv2/_inputs.py +20 -20
  25. pulumi_alicloud/emrv2/get_clusters.py +25 -4
  26. pulumi_alicloud/emrv2/outputs.py +24 -24
  27. pulumi_alicloud/ens/_inputs.py +137 -2
  28. pulumi_alicloud/ens/instance.py +428 -184
  29. pulumi_alicloud/ens/load_balancer.py +74 -25
  30. pulumi_alicloud/ens/outputs.py +141 -2
  31. pulumi_alicloud/expressconnect/physical_connection.py +321 -185
  32. pulumi_alicloud/fc/__init__.py +3 -0
  33. pulumi_alicloud/fc/_inputs.py +320 -8
  34. pulumi_alicloud/fc/outputs.py +321 -8
  35. pulumi_alicloud/fc/trigger.py +22 -24
  36. pulumi_alicloud/fc/v3_layer_version.py +511 -0
  37. pulumi_alicloud/fc/v3_provision_config.py +676 -0
  38. pulumi_alicloud/fc/v3_vpc_binding.py +283 -0
  39. pulumi_alicloud/ga/endpoint_group.py +68 -14
  40. pulumi_alicloud/ga/get_endpoint_group_ip_address_cidr_blocks.py +18 -3
  41. pulumi_alicloud/gpdb/__init__.py +2 -0
  42. pulumi_alicloud/gpdb/account.py +172 -83
  43. pulumi_alicloud/gpdb/db_resource_group.py +54 -9
  44. pulumi_alicloud/gpdb/hadoop_data_source.py +1135 -0
  45. pulumi_alicloud/gpdb/jdbc_data_source.py +643 -0
  46. pulumi_alicloud/hbr/_inputs.py +14 -14
  47. pulumi_alicloud/hbr/outputs.py +14 -14
  48. pulumi_alicloud/hbr/policy.py +18 -18
  49. pulumi_alicloud/hbr/policy_binding.py +203 -62
  50. pulumi_alicloud/mongodb/instance.py +94 -0
  51. pulumi_alicloud/nlb/_inputs.py +120 -64
  52. pulumi_alicloud/nlb/get_listeners.py +32 -2
  53. pulumi_alicloud/nlb/get_server_group_server_attachments.py +8 -2
  54. pulumi_alicloud/nlb/listener.py +315 -245
  55. pulumi_alicloud/nlb/listener_additional_certificate_attachment.py +25 -25
  56. pulumi_alicloud/nlb/load_balancer.py +181 -212
  57. pulumi_alicloud/nlb/load_balancer_security_group_attachment.py +29 -39
  58. pulumi_alicloud/nlb/loadbalancer_common_bandwidth_package_attachment.py +22 -18
  59. pulumi_alicloud/nlb/outputs.py +122 -66
  60. pulumi_alicloud/nlb/security_policy.py +53 -25
  61. pulumi_alicloud/nlb/server_group.py +196 -133
  62. pulumi_alicloud/ocean/base_instance.py +498 -163
  63. pulumi_alicloud/pulumi-plugin.json +1 -1
  64. pulumi_alicloud/quotas/__init__.py +1 -0
  65. pulumi_alicloud/quotas/template_service.py +165 -0
  66. pulumi_alicloud/rds/rds_db_proxy.py +61 -0
  67. pulumi_alicloud/servicecatalog/__init__.py +4 -0
  68. pulumi_alicloud/servicecatalog/portfolio.py +31 -31
  69. pulumi_alicloud/servicecatalog/principal_portfolio_association.py +354 -0
  70. pulumi_alicloud/servicecatalog/product.py +383 -0
  71. pulumi_alicloud/servicecatalog/product_portfolio_association.py +222 -0
  72. pulumi_alicloud/servicecatalog/product_version.py +539 -0
  73. pulumi_alicloud/servicemesh/extension_provider.py +2 -2
  74. pulumi_alicloud/vpc/common_bandwith_package_attachment.py +2 -2
  75. pulumi_alicloud/vpc/get_route_tables.py +28 -5
  76. pulumi_alicloud/vpc/outputs.py +2 -2
  77. {pulumi_alicloud-3.62.0a1725945881.dist-info → pulumi_alicloud-3.62.1.dist-info}/METADATA +1 -1
  78. {pulumi_alicloud-3.62.0a1725945881.dist-info → pulumi_alicloud-3.62.1.dist-info}/RECORD +80 -70
  79. {pulumi_alicloud-3.62.0a1725945881.dist-info → pulumi_alicloud-3.62.1.dist-info}/WHEEL +1 -1
  80. {pulumi_alicloud-3.62.0a1725945881.dist-info → pulumi_alicloud-3.62.1.dist-info}/top_level.txt +0 -0
@@ -8,6 +8,8 @@ import pulumi
8
8
  import pulumi.runtime
9
9
  from typing import Any, Mapping, Optional, Sequence, Union, overload
10
10
  from .. import _utilities
11
+ from . import outputs
12
+ from ._inputs import *
11
13
 
12
14
  __all__ = ['PortArgs', 'Port']
13
15
 
@@ -18,14 +20,19 @@ class PortArgs:
18
20
  frontend_protocol: pulumi.Input[str],
19
21
  instance_id: pulumi.Input[str],
20
22
  real_servers: pulumi.Input[Sequence[pulumi.Input[str]]],
21
- backend_port: Optional[pulumi.Input[str]] = None):
23
+ backend_port: Optional[pulumi.Input[str]] = None,
24
+ config: Optional[pulumi.Input['PortConfigArgs']] = None):
22
25
  """
23
26
  The set of arguments for constructing a Port resource.
24
- :param pulumi.Input[str] frontend_port: The forwarding port. Valid values: [1~65535].
25
- :param pulumi.Input[str] frontend_protocol: The forwarding protocol. Valid values `tcp` and `udp`.
26
- :param pulumi.Input[str] instance_id: The ID of Ddoscoo instance.
27
- :param pulumi.Input[Sequence[pulumi.Input[str]]] real_servers: List of source IP addresses.
28
- :param pulumi.Input[str] backend_port: The port of the origin server. Valid values: [1~65535].
27
+ :param pulumi.Input[str] frontend_port: The forwarding port to query. Valid values: `0` to `65535`.
28
+ :param pulumi.Input[str] frontend_protocol: The type of the forwarding protocol to query. Valid values:
29
+ :param pulumi.Input[str] instance_id: The ID of the Anti-DDoS Pro or Anti-DDoS Premium instance to which the port forwarding rule belongs.
30
+
31
+ > **NOTE:** You can call the [DescribeInstanceIds](https://www.alibabacloud.com/help/en/doc-detail/157459.html) operation to query the IDs of all instances.
32
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] real_servers: List of source IP addresses
33
+ :param pulumi.Input[str] backend_port: The port of the origin server. Valid values: `0` to `65535`.
34
+ :param pulumi.Input['PortConfigArgs'] config: Session persistence settings for port forwarding rules. Use a string representation in JSON format. The specific structure is described as follows.
35
+ - `PersistenceTimeout`: is of Integer type and is required. The timeout period of the session. Value range: `30` to `3600`, in seconds. The default value is `0`, which is closed. See `config` below.
29
36
  """
30
37
  pulumi.set(__self__, "frontend_port", frontend_port)
31
38
  pulumi.set(__self__, "frontend_protocol", frontend_protocol)
@@ -33,12 +40,14 @@ class PortArgs:
33
40
  pulumi.set(__self__, "real_servers", real_servers)
34
41
  if backend_port is not None:
35
42
  pulumi.set(__self__, "backend_port", backend_port)
43
+ if config is not None:
44
+ pulumi.set(__self__, "config", config)
36
45
 
37
46
  @property
38
47
  @pulumi.getter(name="frontendPort")
39
48
  def frontend_port(self) -> pulumi.Input[str]:
40
49
  """
41
- The forwarding port. Valid values: [1~65535].
50
+ The forwarding port to query. Valid values: `0` to `65535`.
42
51
  """
43
52
  return pulumi.get(self, "frontend_port")
44
53
 
@@ -50,7 +59,7 @@ class PortArgs:
50
59
  @pulumi.getter(name="frontendProtocol")
51
60
  def frontend_protocol(self) -> pulumi.Input[str]:
52
61
  """
53
- The forwarding protocol. Valid values `tcp` and `udp`.
62
+ The type of the forwarding protocol to query. Valid values:
54
63
  """
55
64
  return pulumi.get(self, "frontend_protocol")
56
65
 
@@ -62,7 +71,9 @@ class PortArgs:
62
71
  @pulumi.getter(name="instanceId")
63
72
  def instance_id(self) -> pulumi.Input[str]:
64
73
  """
65
- The ID of Ddoscoo instance.
74
+ The ID of the Anti-DDoS Pro or Anti-DDoS Premium instance to which the port forwarding rule belongs.
75
+
76
+ > **NOTE:** You can call the [DescribeInstanceIds](https://www.alibabacloud.com/help/en/doc-detail/157459.html) operation to query the IDs of all instances.
66
77
  """
67
78
  return pulumi.get(self, "instance_id")
68
79
 
@@ -74,7 +85,7 @@ class PortArgs:
74
85
  @pulumi.getter(name="realServers")
75
86
  def real_servers(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]:
76
87
  """
77
- List of source IP addresses.
88
+ List of source IP addresses
78
89
  """
79
90
  return pulumi.get(self, "real_servers")
80
91
 
@@ -86,7 +97,7 @@ class PortArgs:
86
97
  @pulumi.getter(name="backendPort")
87
98
  def backend_port(self) -> Optional[pulumi.Input[str]]:
88
99
  """
89
- The port of the origin server. Valid values: [1~65535].
100
+ The port of the origin server. Valid values: `0` to `65535`.
90
101
  """
91
102
  return pulumi.get(self, "backend_port")
92
103
 
@@ -94,25 +105,45 @@ class PortArgs:
94
105
  def backend_port(self, value: Optional[pulumi.Input[str]]):
95
106
  pulumi.set(self, "backend_port", value)
96
107
 
108
+ @property
109
+ @pulumi.getter
110
+ def config(self) -> Optional[pulumi.Input['PortConfigArgs']]:
111
+ """
112
+ Session persistence settings for port forwarding rules. Use a string representation in JSON format. The specific structure is described as follows.
113
+ - `PersistenceTimeout`: is of Integer type and is required. The timeout period of the session. Value range: `30` to `3600`, in seconds. The default value is `0`, which is closed. See `config` below.
114
+ """
115
+ return pulumi.get(self, "config")
116
+
117
+ @config.setter
118
+ def config(self, value: Optional[pulumi.Input['PortConfigArgs']]):
119
+ pulumi.set(self, "config", value)
120
+
97
121
 
98
122
  @pulumi.input_type
99
123
  class _PortState:
100
124
  def __init__(__self__, *,
101
125
  backend_port: Optional[pulumi.Input[str]] = None,
126
+ config: Optional[pulumi.Input['PortConfigArgs']] = None,
102
127
  frontend_port: Optional[pulumi.Input[str]] = None,
103
128
  frontend_protocol: Optional[pulumi.Input[str]] = None,
104
129
  instance_id: Optional[pulumi.Input[str]] = None,
105
130
  real_servers: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None):
106
131
  """
107
132
  Input properties used for looking up and filtering Port resources.
108
- :param pulumi.Input[str] backend_port: The port of the origin server. Valid values: [1~65535].
109
- :param pulumi.Input[str] frontend_port: The forwarding port. Valid values: [1~65535].
110
- :param pulumi.Input[str] frontend_protocol: The forwarding protocol. Valid values `tcp` and `udp`.
111
- :param pulumi.Input[str] instance_id: The ID of Ddoscoo instance.
112
- :param pulumi.Input[Sequence[pulumi.Input[str]]] real_servers: List of source IP addresses.
133
+ :param pulumi.Input[str] backend_port: The port of the origin server. Valid values: `0` to `65535`.
134
+ :param pulumi.Input['PortConfigArgs'] config: Session persistence settings for port forwarding rules. Use a string representation in JSON format. The specific structure is described as follows.
135
+ - `PersistenceTimeout`: is of Integer type and is required. The timeout period of the session. Value range: `30` to `3600`, in seconds. The default value is `0`, which is closed. See `config` below.
136
+ :param pulumi.Input[str] frontend_port: The forwarding port to query. Valid values: `0` to `65535`.
137
+ :param pulumi.Input[str] frontend_protocol: The type of the forwarding protocol to query. Valid values:
138
+ :param pulumi.Input[str] instance_id: The ID of the Anti-DDoS Pro or Anti-DDoS Premium instance to which the port forwarding rule belongs.
139
+
140
+ > **NOTE:** You can call the [DescribeInstanceIds](https://www.alibabacloud.com/help/en/doc-detail/157459.html) operation to query the IDs of all instances.
141
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] real_servers: List of source IP addresses
113
142
  """
114
143
  if backend_port is not None:
115
144
  pulumi.set(__self__, "backend_port", backend_port)
145
+ if config is not None:
146
+ pulumi.set(__self__, "config", config)
116
147
  if frontend_port is not None:
117
148
  pulumi.set(__self__, "frontend_port", frontend_port)
118
149
  if frontend_protocol is not None:
@@ -126,7 +157,7 @@ class _PortState:
126
157
  @pulumi.getter(name="backendPort")
127
158
  def backend_port(self) -> Optional[pulumi.Input[str]]:
128
159
  """
129
- The port of the origin server. Valid values: [1~65535].
160
+ The port of the origin server. Valid values: `0` to `65535`.
130
161
  """
131
162
  return pulumi.get(self, "backend_port")
132
163
 
@@ -134,11 +165,24 @@ class _PortState:
134
165
  def backend_port(self, value: Optional[pulumi.Input[str]]):
135
166
  pulumi.set(self, "backend_port", value)
136
167
 
168
+ @property
169
+ @pulumi.getter
170
+ def config(self) -> Optional[pulumi.Input['PortConfigArgs']]:
171
+ """
172
+ Session persistence settings for port forwarding rules. Use a string representation in JSON format. The specific structure is described as follows.
173
+ - `PersistenceTimeout`: is of Integer type and is required. The timeout period of the session. Value range: `30` to `3600`, in seconds. The default value is `0`, which is closed. See `config` below.
174
+ """
175
+ return pulumi.get(self, "config")
176
+
177
+ @config.setter
178
+ def config(self, value: Optional[pulumi.Input['PortConfigArgs']]):
179
+ pulumi.set(self, "config", value)
180
+
137
181
  @property
138
182
  @pulumi.getter(name="frontendPort")
139
183
  def frontend_port(self) -> Optional[pulumi.Input[str]]:
140
184
  """
141
- The forwarding port. Valid values: [1~65535].
185
+ The forwarding port to query. Valid values: `0` to `65535`.
142
186
  """
143
187
  return pulumi.get(self, "frontend_port")
144
188
 
@@ -150,7 +194,7 @@ class _PortState:
150
194
  @pulumi.getter(name="frontendProtocol")
151
195
  def frontend_protocol(self) -> Optional[pulumi.Input[str]]:
152
196
  """
153
- The forwarding protocol. Valid values `tcp` and `udp`.
197
+ The type of the forwarding protocol to query. Valid values:
154
198
  """
155
199
  return pulumi.get(self, "frontend_protocol")
156
200
 
@@ -162,7 +206,9 @@ class _PortState:
162
206
  @pulumi.getter(name="instanceId")
163
207
  def instance_id(self) -> Optional[pulumi.Input[str]]:
164
208
  """
165
- The ID of Ddoscoo instance.
209
+ The ID of the Anti-DDoS Pro or Anti-DDoS Premium instance to which the port forwarding rule belongs.
210
+
211
+ > **NOTE:** You can call the [DescribeInstanceIds](https://www.alibabacloud.com/help/en/doc-detail/157459.html) operation to query the IDs of all instances.
166
212
  """
167
213
  return pulumi.get(self, "instance_id")
168
214
 
@@ -174,7 +220,7 @@ class _PortState:
174
220
  @pulumi.getter(name="realServers")
175
221
  def real_servers(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
176
222
  """
177
- List of source IP addresses.
223
+ List of source IP addresses
178
224
  """
179
225
  return pulumi.get(self, "real_servers")
180
226
 
@@ -189,13 +235,14 @@ class Port(pulumi.CustomResource):
189
235
  resource_name: str,
190
236
  opts: Optional[pulumi.ResourceOptions] = None,
191
237
  backend_port: Optional[pulumi.Input[str]] = None,
238
+ config: Optional[pulumi.Input[Union['PortConfigArgs', 'PortConfigArgsDict']]] = None,
192
239
  frontend_port: Optional[pulumi.Input[str]] = None,
193
240
  frontend_protocol: Optional[pulumi.Input[str]] = None,
194
241
  instance_id: Optional[pulumi.Input[str]] = None,
195
242
  real_servers: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
196
243
  __props__=None):
197
244
  """
198
- Provides a Anti-DDoS Pro Port resource.
245
+ Provides a Ddos Coo Port resource.
199
246
 
200
247
  For information about Anti-DDoS Pro Port and how to use it, see [What is Port](https://www.alibabacloud.com/help/en/ddos-protection/latest/api-ddoscoo-2020-01-01-createport).
201
248
 
@@ -235,7 +282,7 @@ class Port(pulumi.CustomResource):
235
282
 
236
283
  ## Import
237
284
 
238
- Anti-DDoS Pro Port can be imported using the id, e.g.
285
+ Ddos Coo Port can be imported using the id, e.g.
239
286
 
240
287
  ```sh
241
288
  $ pulumi import alicloud:ddos/port:Port example <instance_id>:<frontend_port>:<frontend_protocol>
@@ -243,11 +290,15 @@ class Port(pulumi.CustomResource):
243
290
 
244
291
  :param str resource_name: The name of the resource.
245
292
  :param pulumi.ResourceOptions opts: Options for the resource.
246
- :param pulumi.Input[str] backend_port: The port of the origin server. Valid values: [1~65535].
247
- :param pulumi.Input[str] frontend_port: The forwarding port. Valid values: [1~65535].
248
- :param pulumi.Input[str] frontend_protocol: The forwarding protocol. Valid values `tcp` and `udp`.
249
- :param pulumi.Input[str] instance_id: The ID of Ddoscoo instance.
250
- :param pulumi.Input[Sequence[pulumi.Input[str]]] real_servers: List of source IP addresses.
293
+ :param pulumi.Input[str] backend_port: The port of the origin server. Valid values: `0` to `65535`.
294
+ :param pulumi.Input[Union['PortConfigArgs', 'PortConfigArgsDict']] config: Session persistence settings for port forwarding rules. Use a string representation in JSON format. The specific structure is described as follows.
295
+ - `PersistenceTimeout`: is of Integer type and is required. The timeout period of the session. Value range: `30` to `3600`, in seconds. The default value is `0`, which is closed. See `config` below.
296
+ :param pulumi.Input[str] frontend_port: The forwarding port to query. Valid values: `0` to `65535`.
297
+ :param pulumi.Input[str] frontend_protocol: The type of the forwarding protocol to query. Valid values:
298
+ :param pulumi.Input[str] instance_id: The ID of the Anti-DDoS Pro or Anti-DDoS Premium instance to which the port forwarding rule belongs.
299
+
300
+ > **NOTE:** You can call the [DescribeInstanceIds](https://www.alibabacloud.com/help/en/doc-detail/157459.html) operation to query the IDs of all instances.
301
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] real_servers: List of source IP addresses
251
302
  """
252
303
  ...
253
304
  @overload
@@ -256,7 +307,7 @@ class Port(pulumi.CustomResource):
256
307
  args: PortArgs,
257
308
  opts: Optional[pulumi.ResourceOptions] = None):
258
309
  """
259
- Provides a Anti-DDoS Pro Port resource.
310
+ Provides a Ddos Coo Port resource.
260
311
 
261
312
  For information about Anti-DDoS Pro Port and how to use it, see [What is Port](https://www.alibabacloud.com/help/en/ddos-protection/latest/api-ddoscoo-2020-01-01-createport).
262
313
 
@@ -296,7 +347,7 @@ class Port(pulumi.CustomResource):
296
347
 
297
348
  ## Import
298
349
 
299
- Anti-DDoS Pro Port can be imported using the id, e.g.
350
+ Ddos Coo Port can be imported using the id, e.g.
300
351
 
301
352
  ```sh
302
353
  $ pulumi import alicloud:ddos/port:Port example <instance_id>:<frontend_port>:<frontend_protocol>
@@ -318,6 +369,7 @@ class Port(pulumi.CustomResource):
318
369
  resource_name: str,
319
370
  opts: Optional[pulumi.ResourceOptions] = None,
320
371
  backend_port: Optional[pulumi.Input[str]] = None,
372
+ config: Optional[pulumi.Input[Union['PortConfigArgs', 'PortConfigArgsDict']]] = None,
321
373
  frontend_port: Optional[pulumi.Input[str]] = None,
322
374
  frontend_protocol: Optional[pulumi.Input[str]] = None,
323
375
  instance_id: Optional[pulumi.Input[str]] = None,
@@ -332,6 +384,7 @@ class Port(pulumi.CustomResource):
332
384
  __props__ = PortArgs.__new__(PortArgs)
333
385
 
334
386
  __props__.__dict__["backend_port"] = backend_port
387
+ __props__.__dict__["config"] = config
335
388
  if frontend_port is None and not opts.urn:
336
389
  raise TypeError("Missing required property 'frontend_port'")
337
390
  __props__.__dict__["frontend_port"] = frontend_port
@@ -355,6 +408,7 @@ class Port(pulumi.CustomResource):
355
408
  id: pulumi.Input[str],
356
409
  opts: Optional[pulumi.ResourceOptions] = None,
357
410
  backend_port: Optional[pulumi.Input[str]] = None,
411
+ config: Optional[pulumi.Input[Union['PortConfigArgs', 'PortConfigArgsDict']]] = None,
358
412
  frontend_port: Optional[pulumi.Input[str]] = None,
359
413
  frontend_protocol: Optional[pulumi.Input[str]] = None,
360
414
  instance_id: Optional[pulumi.Input[str]] = None,
@@ -366,17 +420,22 @@ class Port(pulumi.CustomResource):
366
420
  :param str resource_name: The unique name of the resulting resource.
367
421
  :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
368
422
  :param pulumi.ResourceOptions opts: Options for the resource.
369
- :param pulumi.Input[str] backend_port: The port of the origin server. Valid values: [1~65535].
370
- :param pulumi.Input[str] frontend_port: The forwarding port. Valid values: [1~65535].
371
- :param pulumi.Input[str] frontend_protocol: The forwarding protocol. Valid values `tcp` and `udp`.
372
- :param pulumi.Input[str] instance_id: The ID of Ddoscoo instance.
373
- :param pulumi.Input[Sequence[pulumi.Input[str]]] real_servers: List of source IP addresses.
423
+ :param pulumi.Input[str] backend_port: The port of the origin server. Valid values: `0` to `65535`.
424
+ :param pulumi.Input[Union['PortConfigArgs', 'PortConfigArgsDict']] config: Session persistence settings for port forwarding rules. Use a string representation in JSON format. The specific structure is described as follows.
425
+ - `PersistenceTimeout`: is of Integer type and is required. The timeout period of the session. Value range: `30` to `3600`, in seconds. The default value is `0`, which is closed. See `config` below.
426
+ :param pulumi.Input[str] frontend_port: The forwarding port to query. Valid values: `0` to `65535`.
427
+ :param pulumi.Input[str] frontend_protocol: The type of the forwarding protocol to query. Valid values:
428
+ :param pulumi.Input[str] instance_id: The ID of the Anti-DDoS Pro or Anti-DDoS Premium instance to which the port forwarding rule belongs.
429
+
430
+ > **NOTE:** You can call the [DescribeInstanceIds](https://www.alibabacloud.com/help/en/doc-detail/157459.html) operation to query the IDs of all instances.
431
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] real_servers: List of source IP addresses
374
432
  """
375
433
  opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
376
434
 
377
435
  __props__ = _PortState.__new__(_PortState)
378
436
 
379
437
  __props__.__dict__["backend_port"] = backend_port
438
+ __props__.__dict__["config"] = config
380
439
  __props__.__dict__["frontend_port"] = frontend_port
381
440
  __props__.__dict__["frontend_protocol"] = frontend_protocol
382
441
  __props__.__dict__["instance_id"] = instance_id
@@ -387,15 +446,24 @@ class Port(pulumi.CustomResource):
387
446
  @pulumi.getter(name="backendPort")
388
447
  def backend_port(self) -> pulumi.Output[Optional[str]]:
389
448
  """
390
- The port of the origin server. Valid values: [1~65535].
449
+ The port of the origin server. Valid values: `0` to `65535`.
391
450
  """
392
451
  return pulumi.get(self, "backend_port")
393
452
 
453
+ @property
454
+ @pulumi.getter
455
+ def config(self) -> pulumi.Output['outputs.PortConfig']:
456
+ """
457
+ Session persistence settings for port forwarding rules. Use a string representation in JSON format. The specific structure is described as follows.
458
+ - `PersistenceTimeout`: is of Integer type and is required. The timeout period of the session. Value range: `30` to `3600`, in seconds. The default value is `0`, which is closed. See `config` below.
459
+ """
460
+ return pulumi.get(self, "config")
461
+
394
462
  @property
395
463
  @pulumi.getter(name="frontendPort")
396
464
  def frontend_port(self) -> pulumi.Output[str]:
397
465
  """
398
- The forwarding port. Valid values: [1~65535].
466
+ The forwarding port to query. Valid values: `0` to `65535`.
399
467
  """
400
468
  return pulumi.get(self, "frontend_port")
401
469
 
@@ -403,7 +471,7 @@ class Port(pulumi.CustomResource):
403
471
  @pulumi.getter(name="frontendProtocol")
404
472
  def frontend_protocol(self) -> pulumi.Output[str]:
405
473
  """
406
- The forwarding protocol. Valid values `tcp` and `udp`.
474
+ The type of the forwarding protocol to query. Valid values:
407
475
  """
408
476
  return pulumi.get(self, "frontend_protocol")
409
477
 
@@ -411,7 +479,9 @@ class Port(pulumi.CustomResource):
411
479
  @pulumi.getter(name="instanceId")
412
480
  def instance_id(self) -> pulumi.Output[str]:
413
481
  """
414
- The ID of Ddoscoo instance.
482
+ The ID of the Anti-DDoS Pro or Anti-DDoS Premium instance to which the port forwarding rule belongs.
483
+
484
+ > **NOTE:** You can call the [DescribeInstanceIds](https://www.alibabacloud.com/help/en/doc-detail/157459.html) operation to query the IDs of all instances.
415
485
  """
416
486
  return pulumi.get(self, "instance_id")
417
487
 
@@ -419,7 +489,7 @@ class Port(pulumi.CustomResource):
419
489
  @pulumi.getter(name="realServers")
420
490
  def real_servers(self) -> pulumi.Output[Sequence[str]]:
421
491
  """
422
- List of source IP addresses.
492
+ List of source IP addresses
423
493
  """
424
494
  return pulumi.get(self, "real_servers")
425
495
 
@@ -444,6 +444,7 @@ class EcsLaunchTemplateDataDiskArgs:
444
444
  category: Optional[pulumi.Input[str]] = None,
445
445
  delete_with_instance: Optional[pulumi.Input[bool]] = None,
446
446
  description: Optional[pulumi.Input[str]] = None,
447
+ device: Optional[pulumi.Input[str]] = None,
447
448
  encrypted: Optional[pulumi.Input[bool]] = None,
448
449
  name: Optional[pulumi.Input[str]] = None,
449
450
  performance_level: Optional[pulumi.Input[str]] = None,
@@ -453,6 +454,7 @@ class EcsLaunchTemplateDataDiskArgs:
453
454
  :param pulumi.Input[str] category: The category of the disk.
454
455
  :param pulumi.Input[bool] delete_with_instance: Indicates whether the data disk is released with the instance.
455
456
  :param pulumi.Input[str] description: The description of the data disk.
457
+ :param pulumi.Input[str] device: The mount point of the data disk.
456
458
  :param pulumi.Input[bool] encrypted: Encrypted the data in this disk.
457
459
  :param pulumi.Input[str] name: The name of the data disk.
458
460
  :param pulumi.Input[str] performance_level: The performance level of the ESSD used as the data disk.
@@ -465,6 +467,8 @@ class EcsLaunchTemplateDataDiskArgs:
465
467
  pulumi.set(__self__, "delete_with_instance", delete_with_instance)
466
468
  if description is not None:
467
469
  pulumi.set(__self__, "description", description)
470
+ if device is not None:
471
+ pulumi.set(__self__, "device", device)
468
472
  if encrypted is not None:
469
473
  pulumi.set(__self__, "encrypted", encrypted)
470
474
  if name is not None:
@@ -512,6 +516,18 @@ class EcsLaunchTemplateDataDiskArgs:
512
516
  def description(self, value: Optional[pulumi.Input[str]]):
513
517
  pulumi.set(self, "description", value)
514
518
 
519
+ @property
520
+ @pulumi.getter
521
+ def device(self) -> Optional[pulumi.Input[str]]:
522
+ """
523
+ The mount point of the data disk.
524
+ """
525
+ return pulumi.get(self, "device")
526
+
527
+ @device.setter
528
+ def device(self, value: Optional[pulumi.Input[str]]):
529
+ pulumi.set(self, "device", value)
530
+
515
531
  @property
516
532
  @pulumi.getter
517
533
  def encrypted(self) -> Optional[pulumi.Input[bool]]:
@@ -1481,6 +1497,7 @@ class LaunchTemplateDataDiskArgs:
1481
1497
  category: Optional[pulumi.Input[str]] = None,
1482
1498
  delete_with_instance: Optional[pulumi.Input[bool]] = None,
1483
1499
  description: Optional[pulumi.Input[str]] = None,
1500
+ device: Optional[pulumi.Input[str]] = None,
1484
1501
  encrypted: Optional[pulumi.Input[bool]] = None,
1485
1502
  name: Optional[pulumi.Input[str]] = None,
1486
1503
  performance_level: Optional[pulumi.Input[str]] = None,
@@ -1517,6 +1534,8 @@ class LaunchTemplateDataDiskArgs:
1517
1534
  pulumi.set(__self__, "delete_with_instance", delete_with_instance)
1518
1535
  if description is not None:
1519
1536
  pulumi.set(__self__, "description", description)
1537
+ if device is not None:
1538
+ pulumi.set(__self__, "device", device)
1520
1539
  if encrypted is not None:
1521
1540
  pulumi.set(__self__, "encrypted", encrypted)
1522
1541
  if name is not None:
@@ -1573,6 +1592,15 @@ class LaunchTemplateDataDiskArgs:
1573
1592
  def description(self, value: Optional[pulumi.Input[str]]):
1574
1593
  pulumi.set(self, "description", value)
1575
1594
 
1595
+ @property
1596
+ @pulumi.getter
1597
+ def device(self) -> Optional[pulumi.Input[str]]:
1598
+ return pulumi.get(self, "device")
1599
+
1600
+ @device.setter
1601
+ def device(self, value: Optional[pulumi.Input[str]]):
1602
+ pulumi.set(self, "device", value)
1603
+
1576
1604
  @property
1577
1605
  @pulumi.getter
1578
1606
  def encrypted(self) -> Optional[pulumi.Input[bool]]:
@@ -533,6 +533,7 @@ class EcsLaunchTemplateDataDisk(dict):
533
533
  category: Optional[str] = None,
534
534
  delete_with_instance: Optional[bool] = None,
535
535
  description: Optional[str] = None,
536
+ device: Optional[str] = None,
536
537
  encrypted: Optional[bool] = None,
537
538
  name: Optional[str] = None,
538
539
  performance_level: Optional[str] = None,
@@ -542,6 +543,7 @@ class EcsLaunchTemplateDataDisk(dict):
542
543
  :param str category: The category of the disk.
543
544
  :param bool delete_with_instance: Indicates whether the data disk is released with the instance.
544
545
  :param str description: The description of the data disk.
546
+ :param str device: The mount point of the data disk.
545
547
  :param bool encrypted: Encrypted the data in this disk.
546
548
  :param str name: The name of the data disk.
547
549
  :param str performance_level: The performance level of the ESSD used as the data disk.
@@ -554,6 +556,8 @@ class EcsLaunchTemplateDataDisk(dict):
554
556
  pulumi.set(__self__, "delete_with_instance", delete_with_instance)
555
557
  if description is not None:
556
558
  pulumi.set(__self__, "description", description)
559
+ if device is not None:
560
+ pulumi.set(__self__, "device", device)
557
561
  if encrypted is not None:
558
562
  pulumi.set(__self__, "encrypted", encrypted)
559
563
  if name is not None:
@@ -589,6 +593,14 @@ class EcsLaunchTemplateDataDisk(dict):
589
593
  """
590
594
  return pulumi.get(self, "description")
591
595
 
596
+ @property
597
+ @pulumi.getter
598
+ def device(self) -> Optional[str]:
599
+ """
600
+ The mount point of the data disk.
601
+ """
602
+ return pulumi.get(self, "device")
603
+
592
604
  @property
593
605
  @pulumi.getter
594
606
  def encrypted(self) -> Optional[bool]:
@@ -1537,6 +1549,7 @@ class LaunchTemplateDataDisk(dict):
1537
1549
  category: Optional[str] = None,
1538
1550
  delete_with_instance: Optional[bool] = None,
1539
1551
  description: Optional[str] = None,
1552
+ device: Optional[str] = None,
1540
1553
  encrypted: Optional[bool] = None,
1541
1554
  name: Optional[str] = None,
1542
1555
  performance_level: Optional[str] = None,
@@ -1573,6 +1586,8 @@ class LaunchTemplateDataDisk(dict):
1573
1586
  pulumi.set(__self__, "delete_with_instance", delete_with_instance)
1574
1587
  if description is not None:
1575
1588
  pulumi.set(__self__, "description", description)
1589
+ if device is not None:
1590
+ pulumi.set(__self__, "device", device)
1576
1591
  if encrypted is not None:
1577
1592
  pulumi.set(__self__, "encrypted", encrypted)
1578
1593
  if name is not None:
@@ -1617,6 +1632,11 @@ class LaunchTemplateDataDisk(dict):
1617
1632
  """
1618
1633
  return pulumi.get(self, "description")
1619
1634
 
1635
+ @property
1636
+ @pulumi.getter
1637
+ def device(self) -> Optional[str]:
1638
+ return pulumi.get(self, "device")
1639
+
1620
1640
  @property
1621
1641
  @pulumi.getter
1622
1642
  def encrypted(self) -> Optional[bool]: