pulumi-alicloud 3.63.0a1727371922__py3-none-any.whl → 3.63.0a1727705137__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 (41) hide show
  1. pulumi_alicloud/__init__.py +24 -0
  2. pulumi_alicloud/alb/acl.py +18 -19
  3. pulumi_alicloud/alb/health_check_template.py +96 -88
  4. pulumi_alicloud/cms/_inputs.py +6 -6
  5. pulumi_alicloud/cms/outputs.py +6 -6
  6. pulumi_alicloud/ddos/_inputs.py +8 -9
  7. pulumi_alicloud/ddos/domain_resource.py +446 -90
  8. pulumi_alicloud/ddos/outputs.py +7 -8
  9. pulumi_alicloud/eci/container_group.py +47 -0
  10. pulumi_alicloud/ecs/ecs_snapshot.py +199 -77
  11. pulumi_alicloud/ecs/snapshot.py +26 -8
  12. pulumi_alicloud/ess/__init__.py +1 -0
  13. pulumi_alicloud/ess/alarm.py +47 -0
  14. pulumi_alicloud/ess/server_group_attachment.py +552 -0
  15. pulumi_alicloud/ga/_inputs.py +23 -5
  16. pulumi_alicloud/ga/outputs.py +21 -5
  17. pulumi_alicloud/governance/account.py +61 -0
  18. pulumi_alicloud/gpdb/__init__.py +4 -0
  19. pulumi_alicloud/gpdb/_inputs.py +361 -3
  20. pulumi_alicloud/gpdb/db_instance_ip_array.py +533 -0
  21. pulumi_alicloud/gpdb/get_data_backups.py +288 -0
  22. pulumi_alicloud/gpdb/get_log_backups.py +225 -0
  23. pulumi_alicloud/gpdb/instance.py +47 -0
  24. pulumi_alicloud/gpdb/outputs.py +597 -4
  25. pulumi_alicloud/gpdb/streaming_job.py +1568 -0
  26. pulumi_alicloud/nlb/load_balancer.py +116 -0
  27. pulumi_alicloud/oos/get_secret_parameters.py +111 -9
  28. pulumi_alicloud/oos/outputs.py +22 -11
  29. pulumi_alicloud/pulumi-plugin.json +1 -1
  30. pulumi_alicloud/ram/get_account_alias.py +35 -2
  31. pulumi_alicloud/rds/instance.py +21 -21
  32. pulumi_alicloud/rocketmq/_inputs.py +79 -22
  33. pulumi_alicloud/rocketmq/outputs.py +85 -21
  34. pulumi_alicloud/rocketmq/rocket_mq_instance.py +307 -113
  35. pulumi_alicloud/vpc/peer_connection.py +127 -59
  36. pulumi_alicloud/vpc/peer_connection_accepter.py +263 -42
  37. pulumi_alicloud/vpc/route_entry.py +232 -210
  38. {pulumi_alicloud-3.63.0a1727371922.dist-info → pulumi_alicloud-3.63.0a1727705137.dist-info}/METADATA +1 -1
  39. {pulumi_alicloud-3.63.0a1727371922.dist-info → pulumi_alicloud-3.63.0a1727705137.dist-info}/RECORD +41 -36
  40. {pulumi_alicloud-3.63.0a1727371922.dist-info → pulumi_alicloud-3.63.0a1727705137.dist-info}/WHEEL +0 -0
  41. {pulumi_alicloud-3.63.0a1727371922.dist-info → pulumi_alicloud-3.63.0a1727705137.dist-info}/top_level.txt +0 -0
@@ -15,31 +15,35 @@ __all__ = ['RouteEntryArgs', 'RouteEntry']
15
15
  class RouteEntryArgs:
16
16
  def __init__(__self__, *,
17
17
  route_table_id: pulumi.Input[str],
18
+ description: Optional[pulumi.Input[str]] = None,
18
19
  destination_cidrblock: Optional[pulumi.Input[str]] = None,
19
20
  name: Optional[pulumi.Input[str]] = None,
20
21
  nexthop_id: Optional[pulumi.Input[str]] = None,
21
- nexthop_type: Optional[pulumi.Input[str]] = None,
22
- router_id: Optional[pulumi.Input[str]] = None):
22
+ nexthop_type: Optional[pulumi.Input[str]] = None):
23
23
  """
24
24
  The set of arguments for constructing a RouteEntry resource.
25
- :param pulumi.Input[str] route_table_id: The ID of the route table.
26
- :param pulumi.Input[str] destination_cidrblock: The RouteEntry's target network segment.
27
- :param pulumi.Input[str] name: The name of the route entry. This name can have a string of 2 to 128 characters, must contain only alphanumeric characters or hyphens, such as "-",".","_", and must not begin or end with a hyphen, and must not begin with http:// or https://.
28
- :param pulumi.Input[str] nexthop_id: The route entry's next hop. ECS instance ID or VPC router interface ID.
29
- :param pulumi.Input[str] nexthop_type: The next hop type. Available values:
30
- - `Instance` (Default): an Elastic Compute Service (ECS) instance. This is the default value.
31
- - `RouterInterface`: a router interface.
32
- - `VpnGateway`: a VPN Gateway.
33
- - `HaVip`: a high-availability virtual IP address (HAVIP).
34
- - `NetworkInterface`: an elastic network interface (ENI).
35
- - `NatGateway`: a Nat Gateway.
36
- - `IPv6Gateway`: an IPv6 gateway.
37
- - `Attachment`: a transit router.
38
- - `VpcPeer`: a VPC Peering Connection.
39
- - `Ipv4Gateway` (Available in 1.193.0+): an IPv4 gateway.
40
- :param pulumi.Input[str] router_id: This argument has been deprecated. Please use other arguments to launch a custom route entry.
25
+ :param pulumi.Input[str] route_table_id: The ID of the Route Table.
26
+ :param pulumi.Input[str] description: The description of the Route Entry. The description must be `1` to `256` characters in length, and cannot start with `http://` or `https://`.
27
+ :param pulumi.Input[str] destination_cidrblock: The destination CIDR block of the custom route entry.
28
+ :param pulumi.Input[str] name: The name of the Route Entry. The name must be `1` to `128` characters in length, and cannot start with `http://` or `https://`.
29
+ :param pulumi.Input[str] nexthop_id: The ID of Next Hop.
30
+ :param pulumi.Input[str] nexthop_type: The type of Next Hop. Valid values:
31
+ - `Instance`: An Elastic Compute Service (ECS) instance.
32
+ - `HaVip`: A high-availability virtual IP address (HAVIP).
33
+ - `RouterInterface`: A router interface.
34
+ - `NetworkInterface`: An elastic network interface (ENI).
35
+ - `VpnGateway`: A VPN Gateway.
36
+ - `IPv6Gateway`: An IPv6 gateway.
37
+ - `NatGateway`: A Nat Gateway.
38
+ - `Attachment`: A transit router.
39
+ - `VpcPeer`: A VPC Peering Connection.
40
+ - `Ipv4Gateway`: An IPv4 gateway.
41
+ - `GatewayEndpoint`: A gateway endpoint.
42
+ - `Ecr`: A Express Connect Router (ECR).
41
43
  """
42
44
  pulumi.set(__self__, "route_table_id", route_table_id)
45
+ if description is not None:
46
+ pulumi.set(__self__, "description", description)
43
47
  if destination_cidrblock is not None:
44
48
  pulumi.set(__self__, "destination_cidrblock", destination_cidrblock)
45
49
  if name is not None:
@@ -48,17 +52,12 @@ class RouteEntryArgs:
48
52
  pulumi.set(__self__, "nexthop_id", nexthop_id)
49
53
  if nexthop_type is not None:
50
54
  pulumi.set(__self__, "nexthop_type", nexthop_type)
51
- if router_id is not None:
52
- warnings.warn("""Attribute router_id has been deprecated and suggest removing it from your template.""", DeprecationWarning)
53
- pulumi.log.warn("""router_id is deprecated: Attribute router_id has been deprecated and suggest removing it from your template.""")
54
- if router_id is not None:
55
- pulumi.set(__self__, "router_id", router_id)
56
55
 
57
56
  @property
58
57
  @pulumi.getter(name="routeTableId")
59
58
  def route_table_id(self) -> pulumi.Input[str]:
60
59
  """
61
- The ID of the route table.
60
+ The ID of the Route Table.
62
61
  """
63
62
  return pulumi.get(self, "route_table_id")
64
63
 
@@ -66,11 +65,23 @@ class RouteEntryArgs:
66
65
  def route_table_id(self, value: pulumi.Input[str]):
67
66
  pulumi.set(self, "route_table_id", value)
68
67
 
68
+ @property
69
+ @pulumi.getter
70
+ def description(self) -> Optional[pulumi.Input[str]]:
71
+ """
72
+ The description of the Route Entry. The description must be `1` to `256` characters in length, and cannot start with `http://` or `https://`.
73
+ """
74
+ return pulumi.get(self, "description")
75
+
76
+ @description.setter
77
+ def description(self, value: Optional[pulumi.Input[str]]):
78
+ pulumi.set(self, "description", value)
79
+
69
80
  @property
70
81
  @pulumi.getter(name="destinationCidrblock")
71
82
  def destination_cidrblock(self) -> Optional[pulumi.Input[str]]:
72
83
  """
73
- The RouteEntry's target network segment.
84
+ The destination CIDR block of the custom route entry.
74
85
  """
75
86
  return pulumi.get(self, "destination_cidrblock")
76
87
 
@@ -82,7 +93,7 @@ class RouteEntryArgs:
82
93
  @pulumi.getter
83
94
  def name(self) -> Optional[pulumi.Input[str]]:
84
95
  """
85
- The name of the route entry. This name can have a string of 2 to 128 characters, must contain only alphanumeric characters or hyphens, such as "-",".","_", and must not begin or end with a hyphen, and must not begin with http:// or https://.
96
+ The name of the Route Entry. The name must be `1` to `128` characters in length, and cannot start with `http://` or `https://`.
86
97
  """
87
98
  return pulumi.get(self, "name")
88
99
 
@@ -94,7 +105,7 @@ class RouteEntryArgs:
94
105
  @pulumi.getter(name="nexthopId")
95
106
  def nexthop_id(self) -> Optional[pulumi.Input[str]]:
96
107
  """
97
- The route entry's next hop. ECS instance ID or VPC router interface ID.
108
+ The ID of Next Hop.
98
109
  """
99
110
  return pulumi.get(self, "nexthop_id")
100
111
 
@@ -106,17 +117,19 @@ class RouteEntryArgs:
106
117
  @pulumi.getter(name="nexthopType")
107
118
  def nexthop_type(self) -> Optional[pulumi.Input[str]]:
108
119
  """
109
- The next hop type. Available values:
110
- - `Instance` (Default): an Elastic Compute Service (ECS) instance. This is the default value.
111
- - `RouterInterface`: a router interface.
112
- - `VpnGateway`: a VPN Gateway.
113
- - `HaVip`: a high-availability virtual IP address (HAVIP).
114
- - `NetworkInterface`: an elastic network interface (ENI).
115
- - `NatGateway`: a Nat Gateway.
116
- - `IPv6Gateway`: an IPv6 gateway.
117
- - `Attachment`: a transit router.
118
- - `VpcPeer`: a VPC Peering Connection.
119
- - `Ipv4Gateway` (Available in 1.193.0+): an IPv4 gateway.
120
+ The type of Next Hop. Valid values:
121
+ - `Instance`: An Elastic Compute Service (ECS) instance.
122
+ - `HaVip`: A high-availability virtual IP address (HAVIP).
123
+ - `RouterInterface`: A router interface.
124
+ - `NetworkInterface`: An elastic network interface (ENI).
125
+ - `VpnGateway`: A VPN Gateway.
126
+ - `IPv6Gateway`: An IPv6 gateway.
127
+ - `NatGateway`: A Nat Gateway.
128
+ - `Attachment`: A transit router.
129
+ - `VpcPeer`: A VPC Peering Connection.
130
+ - `Ipv4Gateway`: An IPv4 gateway.
131
+ - `GatewayEndpoint`: A gateway endpoint.
132
+ - `Ecr`: A Express Connect Router (ECR).
120
133
  """
121
134
  return pulumi.get(self, "nexthop_type")
122
135
 
@@ -124,23 +137,11 @@ class RouteEntryArgs:
124
137
  def nexthop_type(self, value: Optional[pulumi.Input[str]]):
125
138
  pulumi.set(self, "nexthop_type", value)
126
139
 
127
- @property
128
- @pulumi.getter(name="routerId")
129
- @_utilities.deprecated("""Attribute router_id has been deprecated and suggest removing it from your template.""")
130
- def router_id(self) -> Optional[pulumi.Input[str]]:
131
- """
132
- This argument has been deprecated. Please use other arguments to launch a custom route entry.
133
- """
134
- return pulumi.get(self, "router_id")
135
-
136
- @router_id.setter
137
- def router_id(self, value: Optional[pulumi.Input[str]]):
138
- pulumi.set(self, "router_id", value)
139
-
140
140
 
141
141
  @pulumi.input_type
142
142
  class _RouteEntryState:
143
143
  def __init__(__self__, *,
144
+ description: Optional[pulumi.Input[str]] = None,
144
145
  destination_cidrblock: Optional[pulumi.Input[str]] = None,
145
146
  name: Optional[pulumi.Input[str]] = None,
146
147
  nexthop_id: Optional[pulumi.Input[str]] = None,
@@ -149,23 +150,28 @@ class _RouteEntryState:
149
150
  router_id: Optional[pulumi.Input[str]] = None):
150
151
  """
151
152
  Input properties used for looking up and filtering RouteEntry resources.
152
- :param pulumi.Input[str] destination_cidrblock: The RouteEntry's target network segment.
153
- :param pulumi.Input[str] name: The name of the route entry. This name can have a string of 2 to 128 characters, must contain only alphanumeric characters or hyphens, such as "-",".","_", and must not begin or end with a hyphen, and must not begin with http:// or https://.
154
- :param pulumi.Input[str] nexthop_id: The route entry's next hop. ECS instance ID or VPC router interface ID.
155
- :param pulumi.Input[str] nexthop_type: The next hop type. Available values:
156
- - `Instance` (Default): an Elastic Compute Service (ECS) instance. This is the default value.
157
- - `RouterInterface`: a router interface.
158
- - `VpnGateway`: a VPN Gateway.
159
- - `HaVip`: a high-availability virtual IP address (HAVIP).
160
- - `NetworkInterface`: an elastic network interface (ENI).
161
- - `NatGateway`: a Nat Gateway.
162
- - `IPv6Gateway`: an IPv6 gateway.
163
- - `Attachment`: a transit router.
164
- - `VpcPeer`: a VPC Peering Connection.
165
- - `Ipv4Gateway` (Available in 1.193.0+): an IPv4 gateway.
166
- :param pulumi.Input[str] route_table_id: The ID of the route table.
153
+ :param pulumi.Input[str] description: The description of the Route Entry. The description must be `1` to `256` characters in length, and cannot start with `http://` or `https://`.
154
+ :param pulumi.Input[str] destination_cidrblock: The destination CIDR block of the custom route entry.
155
+ :param pulumi.Input[str] name: The name of the Route Entry. The name must be `1` to `128` characters in length, and cannot start with `http://` or `https://`.
156
+ :param pulumi.Input[str] nexthop_id: The ID of Next Hop.
157
+ :param pulumi.Input[str] nexthop_type: The type of Next Hop. Valid values:
158
+ - `Instance`: An Elastic Compute Service (ECS) instance.
159
+ - `HaVip`: A high-availability virtual IP address (HAVIP).
160
+ - `RouterInterface`: A router interface.
161
+ - `NetworkInterface`: An elastic network interface (ENI).
162
+ - `VpnGateway`: A VPN Gateway.
163
+ - `IPv6Gateway`: An IPv6 gateway.
164
+ - `NatGateway`: A Nat Gateway.
165
+ - `Attachment`: A transit router.
166
+ - `VpcPeer`: A VPC Peering Connection.
167
+ - `Ipv4Gateway`: An IPv4 gateway.
168
+ - `GatewayEndpoint`: A gateway endpoint.
169
+ - `Ecr`: A Express Connect Router (ECR).
170
+ :param pulumi.Input[str] route_table_id: The ID of the Route Table.
167
171
  :param pulumi.Input[str] router_id: This argument has been deprecated. Please use other arguments to launch a custom route entry.
168
172
  """
173
+ if description is not None:
174
+ pulumi.set(__self__, "description", description)
169
175
  if destination_cidrblock is not None:
170
176
  pulumi.set(__self__, "destination_cidrblock", destination_cidrblock)
171
177
  if name is not None:
@@ -182,11 +188,23 @@ class _RouteEntryState:
182
188
  if router_id is not None:
183
189
  pulumi.set(__self__, "router_id", router_id)
184
190
 
191
+ @property
192
+ @pulumi.getter
193
+ def description(self) -> Optional[pulumi.Input[str]]:
194
+ """
195
+ The description of the Route Entry. The description must be `1` to `256` characters in length, and cannot start with `http://` or `https://`.
196
+ """
197
+ return pulumi.get(self, "description")
198
+
199
+ @description.setter
200
+ def description(self, value: Optional[pulumi.Input[str]]):
201
+ pulumi.set(self, "description", value)
202
+
185
203
  @property
186
204
  @pulumi.getter(name="destinationCidrblock")
187
205
  def destination_cidrblock(self) -> Optional[pulumi.Input[str]]:
188
206
  """
189
- The RouteEntry's target network segment.
207
+ The destination CIDR block of the custom route entry.
190
208
  """
191
209
  return pulumi.get(self, "destination_cidrblock")
192
210
 
@@ -198,7 +216,7 @@ class _RouteEntryState:
198
216
  @pulumi.getter
199
217
  def name(self) -> Optional[pulumi.Input[str]]:
200
218
  """
201
- The name of the route entry. This name can have a string of 2 to 128 characters, must contain only alphanumeric characters or hyphens, such as "-",".","_", and must not begin or end with a hyphen, and must not begin with http:// or https://.
219
+ The name of the Route Entry. The name must be `1` to `128` characters in length, and cannot start with `http://` or `https://`.
202
220
  """
203
221
  return pulumi.get(self, "name")
204
222
 
@@ -210,7 +228,7 @@ class _RouteEntryState:
210
228
  @pulumi.getter(name="nexthopId")
211
229
  def nexthop_id(self) -> Optional[pulumi.Input[str]]:
212
230
  """
213
- The route entry's next hop. ECS instance ID or VPC router interface ID.
231
+ The ID of Next Hop.
214
232
  """
215
233
  return pulumi.get(self, "nexthop_id")
216
234
 
@@ -222,17 +240,19 @@ class _RouteEntryState:
222
240
  @pulumi.getter(name="nexthopType")
223
241
  def nexthop_type(self) -> Optional[pulumi.Input[str]]:
224
242
  """
225
- The next hop type. Available values:
226
- - `Instance` (Default): an Elastic Compute Service (ECS) instance. This is the default value.
227
- - `RouterInterface`: a router interface.
228
- - `VpnGateway`: a VPN Gateway.
229
- - `HaVip`: a high-availability virtual IP address (HAVIP).
230
- - `NetworkInterface`: an elastic network interface (ENI).
231
- - `NatGateway`: a Nat Gateway.
232
- - `IPv6Gateway`: an IPv6 gateway.
233
- - `Attachment`: a transit router.
234
- - `VpcPeer`: a VPC Peering Connection.
235
- - `Ipv4Gateway` (Available in 1.193.0+): an IPv4 gateway.
243
+ The type of Next Hop. Valid values:
244
+ - `Instance`: An Elastic Compute Service (ECS) instance.
245
+ - `HaVip`: A high-availability virtual IP address (HAVIP).
246
+ - `RouterInterface`: A router interface.
247
+ - `NetworkInterface`: An elastic network interface (ENI).
248
+ - `VpnGateway`: A VPN Gateway.
249
+ - `IPv6Gateway`: An IPv6 gateway.
250
+ - `NatGateway`: A Nat Gateway.
251
+ - `Attachment`: A transit router.
252
+ - `VpcPeer`: A VPC Peering Connection.
253
+ - `Ipv4Gateway`: An IPv4 gateway.
254
+ - `GatewayEndpoint`: A gateway endpoint.
255
+ - `Ecr`: A Express Connect Router (ECR).
236
256
  """
237
257
  return pulumi.get(self, "nexthop_type")
238
258
 
@@ -244,7 +264,7 @@ class _RouteEntryState:
244
264
  @pulumi.getter(name="routeTableId")
245
265
  def route_table_id(self) -> Optional[pulumi.Input[str]]:
246
266
  """
247
- The ID of the route table.
267
+ The ID of the Route Table.
248
268
  """
249
269
  return pulumi.get(self, "route_table_id")
250
270
 
@@ -271,15 +291,19 @@ class RouteEntry(pulumi.CustomResource):
271
291
  def __init__(__self__,
272
292
  resource_name: str,
273
293
  opts: Optional[pulumi.ResourceOptions] = None,
294
+ description: Optional[pulumi.Input[str]] = None,
274
295
  destination_cidrblock: Optional[pulumi.Input[str]] = None,
275
296
  name: Optional[pulumi.Input[str]] = None,
276
297
  nexthop_id: Optional[pulumi.Input[str]] = None,
277
298
  nexthop_type: Optional[pulumi.Input[str]] = None,
278
299
  route_table_id: Optional[pulumi.Input[str]] = None,
279
- router_id: Optional[pulumi.Input[str]] = None,
280
300
  __props__=None):
281
301
  """
282
- Provides a route entry resource. A route entry represents a route item of one VPC route table.
302
+ Provides a Route Entry resource. A Route Entry represents a route item of one VPC Route Table.
303
+
304
+ For information about Route Entry and how to use it, see [What is Route Entry](https://www.alibabacloud.com/help/en/vpc/developer-reference/api-vpc-2016-04-28-createrouteentry).
305
+
306
+ > **NOTE:** Available since v0.1.0.
283
307
 
284
308
  ## Example Usage
285
309
 
@@ -289,53 +313,43 @@ class RouteEntry(pulumi.CustomResource):
289
313
  import pulumi
290
314
  import pulumi_alicloud as alicloud
291
315
 
292
- default = alicloud.get_zones(available_resource_creation="VSwitch")
293
- default_get_instance_types = alicloud.ecs.get_instance_types(availability_zone=default.zones[0].id,
294
- cpu_core_count=1,
295
- memory_size=2)
296
- default_get_images = alicloud.ecs.get_images(name_regex="^ubuntu_18.*64",
297
- most_recent=True,
298
- owners="system")
299
316
  config = pulumi.Config()
300
317
  name = config.get("name")
301
318
  if name is None:
302
- name = "RouteEntryConfig"
303
- foo = alicloud.vpc.Network("foo",
319
+ name = "terraform-example"
320
+ default = alicloud.get_zones(available_disk_category="cloud_efficiency",
321
+ available_resource_creation="VSwitch")
322
+ default_get_images = alicloud.ecs.get_images(most_recent=True,
323
+ owners="system")
324
+ default_get_instance_types = alicloud.ecs.get_instance_types(availability_zone=default.zones[0].id,
325
+ image_id=default_get_images.images[0].id)
326
+ default_network = alicloud.vpc.Network("default",
304
327
  vpc_name=name,
305
- cidr_block="10.1.0.0/21")
306
- foo_switch = alicloud.vpc.Switch("foo",
307
- vpc_id=foo.id,
308
- cidr_block="10.1.1.0/24",
309
- zone_id=default.zones[0].id,
310
- vswitch_name=name)
311
- tf_test_foo = alicloud.ecs.SecurityGroup("tf_test_foo",
328
+ cidr_block="192.168.0.0/16")
329
+ default_switch = alicloud.vpc.Switch("default",
330
+ vswitch_name=name,
331
+ vpc_id=default_network.id,
332
+ cidr_block="192.168.192.0/24",
333
+ zone_id=default.zones[0].id)
334
+ default_security_group = alicloud.ecs.SecurityGroup("default",
312
335
  name=name,
313
- description="foo",
314
- vpc_id=foo.id)
315
- ingress = alicloud.ecs.SecurityGroupRule("ingress",
316
- type="ingress",
317
- ip_protocol="tcp",
318
- nic_type="intranet",
319
- policy="accept",
320
- port_range="22/22",
321
- priority=1,
322
- security_group_id=tf_test_foo.id,
323
- cidr_ip="0.0.0.0/0")
324
- foo_instance = alicloud.ecs.Instance("foo",
325
- security_groups=[tf_test_foo.id],
326
- vswitch_id=foo_switch.id,
327
- instance_charge_type="PostPaid",
336
+ vpc_id=default_network.id)
337
+ default_instance = alicloud.ecs.Instance("default",
338
+ image_id=default_get_images.images[0].id,
328
339
  instance_type=default_get_instance_types.instance_types[0].id,
340
+ security_groups=[__item.id for __item in [default_security_group]],
329
341
  internet_charge_type="PayByTraffic",
330
- internet_max_bandwidth_out=5,
342
+ internet_max_bandwidth_out=10,
343
+ availability_zone=default_get_instance_types.instance_types[0].availability_zones[0],
344
+ instance_charge_type="PostPaid",
331
345
  system_disk_category="cloud_efficiency",
332
- image_id=default_get_images.images[0].id,
346
+ vswitch_id=default_switch.id,
333
347
  instance_name=name)
334
- foo_route_entry = alicloud.vpc.RouteEntry("foo",
335
- route_table_id=foo.route_table_id,
348
+ foo = alicloud.vpc.RouteEntry("foo",
349
+ route_table_id=default_network.route_table_id,
336
350
  destination_cidrblock="172.11.1.1/32",
337
351
  nexthop_type="Instance",
338
- nexthop_id=foo_instance.id)
352
+ nexthop_id=default_instance.id)
339
353
  ```
340
354
 
341
355
  ## Module Support
@@ -345,30 +359,30 @@ class RouteEntry(pulumi.CustomResource):
345
359
 
346
360
  ## Import
347
361
 
348
- Router entry can be imported using the id, e.g (formatted as<route_table_id:router_id:destination_cidrblock:nexthop_type:nexthop_id>).
349
-
350
362
  ```sh
351
- $ pulumi import alicloud:vpc/routeEntry:RouteEntry example vtb-123456:vrt-123456:0.0.0.0/0:NatGateway:ngw-123456
363
+ $ pulumi import alicloud:vpc/routeEntry:RouteEntry example <route_table_id>:<router_id>:<destination_cidrblock>:<nexthop_type>:<nexthop_id>
352
364
  ```
353
365
 
354
366
  :param str resource_name: The name of the resource.
355
367
  :param pulumi.ResourceOptions opts: Options for the resource.
356
- :param pulumi.Input[str] destination_cidrblock: The RouteEntry's target network segment.
357
- :param pulumi.Input[str] name: The name of the route entry. This name can have a string of 2 to 128 characters, must contain only alphanumeric characters or hyphens, such as "-",".","_", and must not begin or end with a hyphen, and must not begin with http:// or https://.
358
- :param pulumi.Input[str] nexthop_id: The route entry's next hop. ECS instance ID or VPC router interface ID.
359
- :param pulumi.Input[str] nexthop_type: The next hop type. Available values:
360
- - `Instance` (Default): an Elastic Compute Service (ECS) instance. This is the default value.
361
- - `RouterInterface`: a router interface.
362
- - `VpnGateway`: a VPN Gateway.
363
- - `HaVip`: a high-availability virtual IP address (HAVIP).
364
- - `NetworkInterface`: an elastic network interface (ENI).
365
- - `NatGateway`: a Nat Gateway.
366
- - `IPv6Gateway`: an IPv6 gateway.
367
- - `Attachment`: a transit router.
368
- - `VpcPeer`: a VPC Peering Connection.
369
- - `Ipv4Gateway` (Available in 1.193.0+): an IPv4 gateway.
370
- :param pulumi.Input[str] route_table_id: The ID of the route table.
371
- :param pulumi.Input[str] router_id: This argument has been deprecated. Please use other arguments to launch a custom route entry.
368
+ :param pulumi.Input[str] description: The description of the Route Entry. The description must be `1` to `256` characters in length, and cannot start with `http://` or `https://`.
369
+ :param pulumi.Input[str] destination_cidrblock: The destination CIDR block of the custom route entry.
370
+ :param pulumi.Input[str] name: The name of the Route Entry. The name must be `1` to `128` characters in length, and cannot start with `http://` or `https://`.
371
+ :param pulumi.Input[str] nexthop_id: The ID of Next Hop.
372
+ :param pulumi.Input[str] nexthop_type: The type of Next Hop. Valid values:
373
+ - `Instance`: An Elastic Compute Service (ECS) instance.
374
+ - `HaVip`: A high-availability virtual IP address (HAVIP).
375
+ - `RouterInterface`: A router interface.
376
+ - `NetworkInterface`: An elastic network interface (ENI).
377
+ - `VpnGateway`: A VPN Gateway.
378
+ - `IPv6Gateway`: An IPv6 gateway.
379
+ - `NatGateway`: A Nat Gateway.
380
+ - `Attachment`: A transit router.
381
+ - `VpcPeer`: A VPC Peering Connection.
382
+ - `Ipv4Gateway`: An IPv4 gateway.
383
+ - `GatewayEndpoint`: A gateway endpoint.
384
+ - `Ecr`: A Express Connect Router (ECR).
385
+ :param pulumi.Input[str] route_table_id: The ID of the Route Table.
372
386
  """
373
387
  ...
374
388
  @overload
@@ -377,7 +391,11 @@ class RouteEntry(pulumi.CustomResource):
377
391
  args: RouteEntryArgs,
378
392
  opts: Optional[pulumi.ResourceOptions] = None):
379
393
  """
380
- Provides a route entry resource. A route entry represents a route item of one VPC route table.
394
+ Provides a Route Entry resource. A Route Entry represents a route item of one VPC Route Table.
395
+
396
+ For information about Route Entry and how to use it, see [What is Route Entry](https://www.alibabacloud.com/help/en/vpc/developer-reference/api-vpc-2016-04-28-createrouteentry).
397
+
398
+ > **NOTE:** Available since v0.1.0.
381
399
 
382
400
  ## Example Usage
383
401
 
@@ -387,53 +405,43 @@ class RouteEntry(pulumi.CustomResource):
387
405
  import pulumi
388
406
  import pulumi_alicloud as alicloud
389
407
 
390
- default = alicloud.get_zones(available_resource_creation="VSwitch")
391
- default_get_instance_types = alicloud.ecs.get_instance_types(availability_zone=default.zones[0].id,
392
- cpu_core_count=1,
393
- memory_size=2)
394
- default_get_images = alicloud.ecs.get_images(name_regex="^ubuntu_18.*64",
395
- most_recent=True,
396
- owners="system")
397
408
  config = pulumi.Config()
398
409
  name = config.get("name")
399
410
  if name is None:
400
- name = "RouteEntryConfig"
401
- foo = alicloud.vpc.Network("foo",
411
+ name = "terraform-example"
412
+ default = alicloud.get_zones(available_disk_category="cloud_efficiency",
413
+ available_resource_creation="VSwitch")
414
+ default_get_images = alicloud.ecs.get_images(most_recent=True,
415
+ owners="system")
416
+ default_get_instance_types = alicloud.ecs.get_instance_types(availability_zone=default.zones[0].id,
417
+ image_id=default_get_images.images[0].id)
418
+ default_network = alicloud.vpc.Network("default",
402
419
  vpc_name=name,
403
- cidr_block="10.1.0.0/21")
404
- foo_switch = alicloud.vpc.Switch("foo",
405
- vpc_id=foo.id,
406
- cidr_block="10.1.1.0/24",
407
- zone_id=default.zones[0].id,
408
- vswitch_name=name)
409
- tf_test_foo = alicloud.ecs.SecurityGroup("tf_test_foo",
420
+ cidr_block="192.168.0.0/16")
421
+ default_switch = alicloud.vpc.Switch("default",
422
+ vswitch_name=name,
423
+ vpc_id=default_network.id,
424
+ cidr_block="192.168.192.0/24",
425
+ zone_id=default.zones[0].id)
426
+ default_security_group = alicloud.ecs.SecurityGroup("default",
410
427
  name=name,
411
- description="foo",
412
- vpc_id=foo.id)
413
- ingress = alicloud.ecs.SecurityGroupRule("ingress",
414
- type="ingress",
415
- ip_protocol="tcp",
416
- nic_type="intranet",
417
- policy="accept",
418
- port_range="22/22",
419
- priority=1,
420
- security_group_id=tf_test_foo.id,
421
- cidr_ip="0.0.0.0/0")
422
- foo_instance = alicloud.ecs.Instance("foo",
423
- security_groups=[tf_test_foo.id],
424
- vswitch_id=foo_switch.id,
425
- instance_charge_type="PostPaid",
428
+ vpc_id=default_network.id)
429
+ default_instance = alicloud.ecs.Instance("default",
430
+ image_id=default_get_images.images[0].id,
426
431
  instance_type=default_get_instance_types.instance_types[0].id,
432
+ security_groups=[__item.id for __item in [default_security_group]],
427
433
  internet_charge_type="PayByTraffic",
428
- internet_max_bandwidth_out=5,
434
+ internet_max_bandwidth_out=10,
435
+ availability_zone=default_get_instance_types.instance_types[0].availability_zones[0],
436
+ instance_charge_type="PostPaid",
429
437
  system_disk_category="cloud_efficiency",
430
- image_id=default_get_images.images[0].id,
438
+ vswitch_id=default_switch.id,
431
439
  instance_name=name)
432
- foo_route_entry = alicloud.vpc.RouteEntry("foo",
433
- route_table_id=foo.route_table_id,
440
+ foo = alicloud.vpc.RouteEntry("foo",
441
+ route_table_id=default_network.route_table_id,
434
442
  destination_cidrblock="172.11.1.1/32",
435
443
  nexthop_type="Instance",
436
- nexthop_id=foo_instance.id)
444
+ nexthop_id=default_instance.id)
437
445
  ```
438
446
 
439
447
  ## Module Support
@@ -443,10 +451,8 @@ class RouteEntry(pulumi.CustomResource):
443
451
 
444
452
  ## Import
445
453
 
446
- Router entry can be imported using the id, e.g (formatted as<route_table_id:router_id:destination_cidrblock:nexthop_type:nexthop_id>).
447
-
448
454
  ```sh
449
- $ pulumi import alicloud:vpc/routeEntry:RouteEntry example vtb-123456:vrt-123456:0.0.0.0/0:NatGateway:ngw-123456
455
+ $ pulumi import alicloud:vpc/routeEntry:RouteEntry example <route_table_id>:<router_id>:<destination_cidrblock>:<nexthop_type>:<nexthop_id>
450
456
  ```
451
457
 
452
458
  :param str resource_name: The name of the resource.
@@ -464,12 +470,12 @@ class RouteEntry(pulumi.CustomResource):
464
470
  def _internal_init(__self__,
465
471
  resource_name: str,
466
472
  opts: Optional[pulumi.ResourceOptions] = None,
473
+ description: Optional[pulumi.Input[str]] = None,
467
474
  destination_cidrblock: Optional[pulumi.Input[str]] = None,
468
475
  name: Optional[pulumi.Input[str]] = None,
469
476
  nexthop_id: Optional[pulumi.Input[str]] = None,
470
477
  nexthop_type: Optional[pulumi.Input[str]] = None,
471
478
  route_table_id: Optional[pulumi.Input[str]] = None,
472
- router_id: Optional[pulumi.Input[str]] = None,
473
479
  __props__=None):
474
480
  opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
475
481
  if not isinstance(opts, pulumi.ResourceOptions):
@@ -479,6 +485,7 @@ class RouteEntry(pulumi.CustomResource):
479
485
  raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
480
486
  __props__ = RouteEntryArgs.__new__(RouteEntryArgs)
481
487
 
488
+ __props__.__dict__["description"] = description
482
489
  __props__.__dict__["destination_cidrblock"] = destination_cidrblock
483
490
  __props__.__dict__["name"] = name
484
491
  __props__.__dict__["nexthop_id"] = nexthop_id
@@ -486,7 +493,7 @@ class RouteEntry(pulumi.CustomResource):
486
493
  if route_table_id is None and not opts.urn:
487
494
  raise TypeError("Missing required property 'route_table_id'")
488
495
  __props__.__dict__["route_table_id"] = route_table_id
489
- __props__.__dict__["router_id"] = router_id
496
+ __props__.__dict__["router_id"] = None
490
497
  super(RouteEntry, __self__).__init__(
491
498
  'alicloud:vpc/routeEntry:RouteEntry',
492
499
  resource_name,
@@ -497,6 +504,7 @@ class RouteEntry(pulumi.CustomResource):
497
504
  def get(resource_name: str,
498
505
  id: pulumi.Input[str],
499
506
  opts: Optional[pulumi.ResourceOptions] = None,
507
+ description: Optional[pulumi.Input[str]] = None,
500
508
  destination_cidrblock: Optional[pulumi.Input[str]] = None,
501
509
  name: Optional[pulumi.Input[str]] = None,
502
510
  nexthop_id: Optional[pulumi.Input[str]] = None,
@@ -510,27 +518,31 @@ class RouteEntry(pulumi.CustomResource):
510
518
  :param str resource_name: The unique name of the resulting resource.
511
519
  :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
512
520
  :param pulumi.ResourceOptions opts: Options for the resource.
513
- :param pulumi.Input[str] destination_cidrblock: The RouteEntry's target network segment.
514
- :param pulumi.Input[str] name: The name of the route entry. This name can have a string of 2 to 128 characters, must contain only alphanumeric characters or hyphens, such as "-",".","_", and must not begin or end with a hyphen, and must not begin with http:// or https://.
515
- :param pulumi.Input[str] nexthop_id: The route entry's next hop. ECS instance ID or VPC router interface ID.
516
- :param pulumi.Input[str] nexthop_type: The next hop type. Available values:
517
- - `Instance` (Default): an Elastic Compute Service (ECS) instance. This is the default value.
518
- - `RouterInterface`: a router interface.
519
- - `VpnGateway`: a VPN Gateway.
520
- - `HaVip`: a high-availability virtual IP address (HAVIP).
521
- - `NetworkInterface`: an elastic network interface (ENI).
522
- - `NatGateway`: a Nat Gateway.
523
- - `IPv6Gateway`: an IPv6 gateway.
524
- - `Attachment`: a transit router.
525
- - `VpcPeer`: a VPC Peering Connection.
526
- - `Ipv4Gateway` (Available in 1.193.0+): an IPv4 gateway.
527
- :param pulumi.Input[str] route_table_id: The ID of the route table.
521
+ :param pulumi.Input[str] description: The description of the Route Entry. The description must be `1` to `256` characters in length, and cannot start with `http://` or `https://`.
522
+ :param pulumi.Input[str] destination_cidrblock: The destination CIDR block of the custom route entry.
523
+ :param pulumi.Input[str] name: The name of the Route Entry. The name must be `1` to `128` characters in length, and cannot start with `http://` or `https://`.
524
+ :param pulumi.Input[str] nexthop_id: The ID of Next Hop.
525
+ :param pulumi.Input[str] nexthop_type: The type of Next Hop. Valid values:
526
+ - `Instance`: An Elastic Compute Service (ECS) instance.
527
+ - `HaVip`: A high-availability virtual IP address (HAVIP).
528
+ - `RouterInterface`: A router interface.
529
+ - `NetworkInterface`: An elastic network interface (ENI).
530
+ - `VpnGateway`: A VPN Gateway.
531
+ - `IPv6Gateway`: An IPv6 gateway.
532
+ - `NatGateway`: A Nat Gateway.
533
+ - `Attachment`: A transit router.
534
+ - `VpcPeer`: A VPC Peering Connection.
535
+ - `Ipv4Gateway`: An IPv4 gateway.
536
+ - `GatewayEndpoint`: A gateway endpoint.
537
+ - `Ecr`: A Express Connect Router (ECR).
538
+ :param pulumi.Input[str] route_table_id: The ID of the Route Table.
528
539
  :param pulumi.Input[str] router_id: This argument has been deprecated. Please use other arguments to launch a custom route entry.
529
540
  """
530
541
  opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
531
542
 
532
543
  __props__ = _RouteEntryState.__new__(_RouteEntryState)
533
544
 
545
+ __props__.__dict__["description"] = description
534
546
  __props__.__dict__["destination_cidrblock"] = destination_cidrblock
535
547
  __props__.__dict__["name"] = name
536
548
  __props__.__dict__["nexthop_id"] = nexthop_id
@@ -539,11 +551,19 @@ class RouteEntry(pulumi.CustomResource):
539
551
  __props__.__dict__["router_id"] = router_id
540
552
  return RouteEntry(resource_name, opts=opts, __props__=__props__)
541
553
 
554
+ @property
555
+ @pulumi.getter
556
+ def description(self) -> pulumi.Output[Optional[str]]:
557
+ """
558
+ The description of the Route Entry. The description must be `1` to `256` characters in length, and cannot start with `http://` or `https://`.
559
+ """
560
+ return pulumi.get(self, "description")
561
+
542
562
  @property
543
563
  @pulumi.getter(name="destinationCidrblock")
544
564
  def destination_cidrblock(self) -> pulumi.Output[Optional[str]]:
545
565
  """
546
- The RouteEntry's target network segment.
566
+ The destination CIDR block of the custom route entry.
547
567
  """
548
568
  return pulumi.get(self, "destination_cidrblock")
549
569
 
@@ -551,7 +571,7 @@ class RouteEntry(pulumi.CustomResource):
551
571
  @pulumi.getter
552
572
  def name(self) -> pulumi.Output[str]:
553
573
  """
554
- The name of the route entry. This name can have a string of 2 to 128 characters, must contain only alphanumeric characters or hyphens, such as "-",".","_", and must not begin or end with a hyphen, and must not begin with http:// or https://.
574
+ The name of the Route Entry. The name must be `1` to `128` characters in length, and cannot start with `http://` or `https://`.
555
575
  """
556
576
  return pulumi.get(self, "name")
557
577
 
@@ -559,7 +579,7 @@ class RouteEntry(pulumi.CustomResource):
559
579
  @pulumi.getter(name="nexthopId")
560
580
  def nexthop_id(self) -> pulumi.Output[Optional[str]]:
561
581
  """
562
- The route entry's next hop. ECS instance ID or VPC router interface ID.
582
+ The ID of Next Hop.
563
583
  """
564
584
  return pulumi.get(self, "nexthop_id")
565
585
 
@@ -567,17 +587,19 @@ class RouteEntry(pulumi.CustomResource):
567
587
  @pulumi.getter(name="nexthopType")
568
588
  def nexthop_type(self) -> pulumi.Output[Optional[str]]:
569
589
  """
570
- The next hop type. Available values:
571
- - `Instance` (Default): an Elastic Compute Service (ECS) instance. This is the default value.
572
- - `RouterInterface`: a router interface.
573
- - `VpnGateway`: a VPN Gateway.
574
- - `HaVip`: a high-availability virtual IP address (HAVIP).
575
- - `NetworkInterface`: an elastic network interface (ENI).
576
- - `NatGateway`: a Nat Gateway.
577
- - `IPv6Gateway`: an IPv6 gateway.
578
- - `Attachment`: a transit router.
579
- - `VpcPeer`: a VPC Peering Connection.
580
- - `Ipv4Gateway` (Available in 1.193.0+): an IPv4 gateway.
590
+ The type of Next Hop. Valid values:
591
+ - `Instance`: An Elastic Compute Service (ECS) instance.
592
+ - `HaVip`: A high-availability virtual IP address (HAVIP).
593
+ - `RouterInterface`: A router interface.
594
+ - `NetworkInterface`: An elastic network interface (ENI).
595
+ - `VpnGateway`: A VPN Gateway.
596
+ - `IPv6Gateway`: An IPv6 gateway.
597
+ - `NatGateway`: A Nat Gateway.
598
+ - `Attachment`: A transit router.
599
+ - `VpcPeer`: A VPC Peering Connection.
600
+ - `Ipv4Gateway`: An IPv4 gateway.
601
+ - `GatewayEndpoint`: A gateway endpoint.
602
+ - `Ecr`: A Express Connect Router (ECR).
581
603
  """
582
604
  return pulumi.get(self, "nexthop_type")
583
605
 
@@ -585,7 +607,7 @@ class RouteEntry(pulumi.CustomResource):
585
607
  @pulumi.getter(name="routeTableId")
586
608
  def route_table_id(self) -> pulumi.Output[str]:
587
609
  """
588
- The ID of the route table.
610
+ The ID of the Route Table.
589
611
  """
590
612
  return pulumi.get(self, "route_table_id")
591
613