aws-sdk-ec2 1.142.0 → 1.147.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -6,6 +6,7 @@
6
6
  # WARNING ABOUT GENERATED CODE
7
7
 
8
8
  module Aws::EC2
9
+
9
10
  class DhcpOptions
10
11
 
11
12
  extend Aws::Deprecations
@@ -6,6 +6,32 @@
6
6
  # WARNING ABOUT GENERATED CODE
7
7
 
8
8
  module Aws::EC2
9
+
10
+ # When EC2 returns an error response, the Ruby SDK constructs and raises an error.
11
+ # These errors all extend Aws::EC2::Errors::ServiceError < {Aws::Errors::ServiceError}
12
+ #
13
+ # You can rescue all EC2 errors using ServiceError:
14
+ # begin
15
+ # # do stuff
16
+ # rescue Aws::EC2::Errors::ServiceError
17
+ # # rescues all EC2 API errors
18
+ # end
19
+ #
20
+ # ## Request Context
21
+ # ServiceError objects have a {Aws::Errors::ServiceError#context #context} method that returns
22
+ # information about the request that generated the error, including:
23
+ # *
24
+ # * #params - The request params
25
+ # * #operation_name - Name of the API operation invoked
26
+ # * #http_request
27
+ # * #http_response
28
+ # * etc ...
29
+ #
30
+ # See {Seahorse::Client::RequestContext} for more information.
31
+ #
32
+ # ## Error Classes
33
+ # Additionally, error classes are dynamically generated for service errors based on the error code
34
+ # if they are not defined above.
9
35
  module Errors
10
36
 
11
37
  extend Aws::Errors::DynamicErrors
@@ -6,6 +6,7 @@
6
6
  # WARNING ABOUT GENERATED CODE
7
7
 
8
8
  module Aws::EC2
9
+
9
10
  class Image
10
11
 
11
12
  extend Aws::Deprecations
@@ -6,6 +6,7 @@
6
6
  # WARNING ABOUT GENERATED CODE
7
7
 
8
8
  module Aws::EC2
9
+
9
10
  class Instance
10
11
 
11
12
  extend Aws::Deprecations
@@ -1357,7 +1358,7 @@ module Aws::EC2
1357
1358
  # values: ["String"],
1358
1359
  # },
1359
1360
  # ],
1360
- # volume_ids: ["String"],
1361
+ # volume_ids: ["VolumeId"],
1361
1362
  # dry_run: false,
1362
1363
  # })
1363
1364
  # @param [Hash] options ({})
@@ -1387,6 +1388,9 @@ module Aws::EC2
1387
1388
  # * `encrypted` - Indicates whether the volume is encrypted (`true` \|
1388
1389
  # `false`)
1389
1390
  #
1391
+ # * `multi-attach-enabled` - Indicates whether the volume is enabled for
1392
+ # Multi-Attach (`true` \| `false`)
1393
+ #
1390
1394
  # * `fast-restored` - Indicates whether the volume was created from a
1391
1395
  # snapshot that is enabled for fast snapshot restore (`true` \|
1392
1396
  # `false`).
@@ -6,6 +6,7 @@
6
6
  # WARNING ABOUT GENERATED CODE
7
7
 
8
8
  module Aws::EC2
9
+
9
10
  class InternetGateway
10
11
 
11
12
  extend Aws::Deprecations
@@ -6,6 +6,7 @@
6
6
  # WARNING ABOUT GENERATED CODE
7
7
 
8
8
  module Aws::EC2
9
+
9
10
  class KeyPair
10
11
 
11
12
  extend Aws::Deprecations
@@ -6,6 +6,7 @@
6
6
  # WARNING ABOUT GENERATED CODE
7
7
 
8
8
  module Aws::EC2
9
+
9
10
  class KeyPairInfo
10
11
 
11
12
  extend Aws::Deprecations
@@ -6,6 +6,7 @@
6
6
  # WARNING ABOUT GENERATED CODE
7
7
 
8
8
  module Aws::EC2
9
+
9
10
  class NatGateway
10
11
 
11
12
  extend Aws::Deprecations
@@ -6,6 +6,7 @@
6
6
  # WARNING ABOUT GENERATED CODE
7
7
 
8
8
  module Aws::EC2
9
+
9
10
  class NetworkAcl
10
11
 
11
12
  extend Aws::Deprecations
@@ -6,6 +6,7 @@
6
6
  # WARNING ABOUT GENERATED CODE
7
7
 
8
8
  module Aws::EC2
9
+
9
10
  class NetworkInterface
10
11
 
11
12
  extend Aws::Deprecations
@@ -497,12 +498,12 @@ module Aws::EC2
497
498
  #
498
499
  # network_interface.modify_attribute({
499
500
  # attachment: {
500
- # attachment_id: "String",
501
+ # attachment_id: "NetworkInterfaceAttachmentId",
501
502
  # delete_on_termination: false,
502
503
  # },
503
504
  # description: "value", # value <Hash,Array,String,Numeric,Boolean,IO,Set,nil>
504
505
  # dry_run: false,
505
- # groups: ["String"],
506
+ # groups: ["SecurityGroupId"],
506
507
  # source_dest_check: {
507
508
  # value: false,
508
509
  # },
@@ -6,6 +6,7 @@
6
6
  # WARNING ABOUT GENERATED CODE
7
7
 
8
8
  module Aws::EC2
9
+
9
10
  class NetworkInterfaceAssociation
10
11
 
11
12
  extend Aws::Deprecations
@@ -6,6 +6,7 @@
6
6
  # WARNING ABOUT GENERATED CODE
7
7
 
8
8
  module Aws::EC2
9
+
9
10
  class PlacementGroup
10
11
 
11
12
  extend Aws::Deprecations
@@ -224,7 +225,7 @@ module Aws::EC2
224
225
  # values: ["String"],
225
226
  # },
226
227
  # ],
227
- # instance_ids: ["String"],
228
+ # instance_ids: ["InstanceId"],
228
229
  # dry_run: false,
229
230
  # })
230
231
  # @param [Hash] options ({})
@@ -6,6 +6,13 @@
6
6
  # WARNING ABOUT GENERATED CODE
7
7
 
8
8
  module Aws::EC2
9
+ # This class provides a resource oriented interface for EC2.
10
+ # To create a resource object:
11
+ # resource = Aws::EC2::Resource.new(region: 'us-west-2')
12
+ # You can supply a client object with custom configuration that will be used for all resource operations.
13
+ # If you do not pass +:client+, a default client will be constructed.
14
+ # client = Aws::EC2::Client.new(region: 'us-west-2')
15
+ # resource = Aws::EC2::Resource.new(client: client)
9
16
  class Resource
10
17
 
11
18
  # @param options ({})
@@ -78,7 +85,7 @@ module Aws::EC2
78
85
  # },
79
86
  # ],
80
87
  # kernel_id: "String",
81
- # key_name: "String",
88
+ # key_name: "KeyPairName",
82
89
  # max_count: 1, # required
83
90
  # min_count: 1, # required
84
91
  # monitoring: {
@@ -95,8 +102,8 @@ module Aws::EC2
95
102
  # host_resource_group_arn: "String",
96
103
  # },
97
104
  # ramdisk_id: "String",
98
- # security_group_ids: ["String"],
99
- # security_groups: ["String"],
105
+ # security_group_ids: ["SecurityGroupId"],
106
+ # security_groups: ["SecurityGroupName"],
100
107
  # subnet_id: "String",
101
108
  # user_data: "String",
102
109
  # additional_info: "String",
@@ -115,7 +122,7 @@ module Aws::EC2
115
122
  # delete_on_termination: false,
116
123
  # description: "String",
117
124
  # device_index: 1,
118
- # groups: ["String"],
125
+ # groups: ["SecurityGroupId"],
119
126
  # ipv_6_address_count: 1,
120
127
  # ipv_6_addresses: [
121
128
  # {
@@ -149,7 +156,7 @@ module Aws::EC2
149
156
  # ],
150
157
  # tag_specifications: [
151
158
  # {
152
- # resource_type: "client-vpn-endpoint", # accepts client-vpn-endpoint, customer-gateway, dedicated-host, dhcp-options, elastic-ip, fleet, fpga-image, host-reservation, image, instance, internet-gateway, key-pair, launch-template, natgateway, network-acl, network-interface, placement-group, reserved-instances, route-table, security-group, snapshot, spot-fleet-request, spot-instances-request, subnet, traffic-mirror-filter, traffic-mirror-session, traffic-mirror-target, transit-gateway, transit-gateway-attachment, transit-gateway-multicast-domain, transit-gateway-route-table, volume, vpc, vpc-peering-connection, vpn-connection, vpn-gateway
159
+ # resource_type: "client-vpn-endpoint", # accepts client-vpn-endpoint, customer-gateway, dedicated-host, dhcp-options, elastic-ip, fleet, fpga-image, host-reservation, image, instance, internet-gateway, key-pair, launch-template, natgateway, network-acl, network-interface, placement-group, reserved-instances, route-table, security-group, snapshot, spot-fleet-request, spot-instances-request, subnet, traffic-mirror-filter, traffic-mirror-session, traffic-mirror-target, transit-gateway, transit-gateway-attachment, transit-gateway-multicast-domain, transit-gateway-route-table, volume, vpc, vpc-peering-connection, vpn-connection, vpn-gateway, vpc-flow-log
153
160
  # tags: [
154
161
  # {
155
162
  # key: "String",
@@ -159,7 +166,7 @@ module Aws::EC2
159
166
  # },
160
167
  # ],
161
168
  # launch_template: {
162
- # launch_template_id: "String",
169
+ # launch_template_id: "LaunchTemplateId",
163
170
  # launch_template_name: "String",
164
171
  # version: "String",
165
172
  # },
@@ -183,7 +190,7 @@ module Aws::EC2
183
190
  # capacity_reservation_specification: {
184
191
  # capacity_reservation_preference: "open", # accepts open, none
185
192
  # capacity_reservation_target: {
186
- # capacity_reservation_id: "String",
193
+ # capacity_reservation_id: "CapacityReservationId",
187
194
  # },
188
195
  # },
189
196
  # hibernation_options: {
@@ -515,7 +522,7 @@ module Aws::EC2
515
522
  # @example Request syntax with placeholder values
516
523
  #
517
524
  # keypair = ec2.create_key_pair({
518
- # key_name: "KeyPairName", # required
525
+ # key_name: "String", # required
519
526
  # dry_run: false,
520
527
  # })
521
528
  # @param [Hash] options ({})
@@ -601,7 +608,7 @@ module Aws::EC2
601
608
  # networkinterface = ec2.create_network_interface({
602
609
  # description: "String",
603
610
  # dry_run: false,
604
- # groups: ["String"],
611
+ # groups: ["SecurityGroupId"],
605
612
  # ipv_6_address_count: 1,
606
613
  # ipv_6_addresses: [
607
614
  # {
@@ -789,7 +796,7 @@ module Aws::EC2
789
796
  # volume_id: "VolumeId", # required
790
797
  # tag_specifications: [
791
798
  # {
792
- # resource_type: "client-vpn-endpoint", # accepts client-vpn-endpoint, customer-gateway, dedicated-host, dhcp-options, elastic-ip, fleet, fpga-image, host-reservation, image, instance, internet-gateway, key-pair, launch-template, natgateway, network-acl, network-interface, placement-group, reserved-instances, route-table, security-group, snapshot, spot-fleet-request, spot-instances-request, subnet, traffic-mirror-filter, traffic-mirror-session, traffic-mirror-target, transit-gateway, transit-gateway-attachment, transit-gateway-multicast-domain, transit-gateway-route-table, volume, vpc, vpc-peering-connection, vpn-connection, vpn-gateway
799
+ # resource_type: "client-vpn-endpoint", # accepts client-vpn-endpoint, customer-gateway, dedicated-host, dhcp-options, elastic-ip, fleet, fpga-image, host-reservation, image, instance, internet-gateway, key-pair, launch-template, natgateway, network-acl, network-interface, placement-group, reserved-instances, route-table, security-group, snapshot, spot-fleet-request, spot-instances-request, subnet, traffic-mirror-filter, traffic-mirror-session, traffic-mirror-target, transit-gateway, transit-gateway-attachment, transit-gateway-multicast-domain, transit-gateway-route-table, volume, vpc, vpc-peering-connection, vpn-connection, vpn-gateway, vpc-flow-log
793
800
  # tags: [
794
801
  # {
795
802
  # key: "String",
@@ -880,7 +887,7 @@ module Aws::EC2
880
887
  #
881
888
  # ec2.create_tags({
882
889
  # dry_run: false,
883
- # resources: ["String"], # required
890
+ # resources: ["TaggableResourceId"], # required
884
891
  # tags: [ # required
885
892
  # {
886
893
  # key: "String",
@@ -913,7 +920,7 @@ module Aws::EC2
913
920
  #
914
921
  # ec2.delete_tags({
915
922
  # dry_run: false,
916
- # resources: ["String"], # required
923
+ # resources: ["TaggableResourceId"], # required
917
924
  # tags: [
918
925
  # {
919
926
  # key: "String",
@@ -962,7 +969,7 @@ module Aws::EC2
962
969
  # dry_run: false,
963
970
  # tag_specifications: [
964
971
  # {
965
- # resource_type: "client-vpn-endpoint", # accepts client-vpn-endpoint, customer-gateway, dedicated-host, dhcp-options, elastic-ip, fleet, fpga-image, host-reservation, image, instance, internet-gateway, key-pair, launch-template, natgateway, network-acl, network-interface, placement-group, reserved-instances, route-table, security-group, snapshot, spot-fleet-request, spot-instances-request, subnet, traffic-mirror-filter, traffic-mirror-session, traffic-mirror-target, transit-gateway, transit-gateway-attachment, transit-gateway-multicast-domain, transit-gateway-route-table, volume, vpc, vpc-peering-connection, vpn-connection, vpn-gateway
972
+ # resource_type: "client-vpn-endpoint", # accepts client-vpn-endpoint, customer-gateway, dedicated-host, dhcp-options, elastic-ip, fleet, fpga-image, host-reservation, image, instance, internet-gateway, key-pair, launch-template, natgateway, network-acl, network-interface, placement-group, reserved-instances, route-table, security-group, snapshot, spot-fleet-request, spot-instances-request, subnet, traffic-mirror-filter, traffic-mirror-session, traffic-mirror-target, transit-gateway, transit-gateway-attachment, transit-gateway-multicast-domain, transit-gateway-route-table, volume, vpc, vpc-peering-connection, vpn-connection, vpn-gateway, vpc-flow-log
966
973
  # tags: [
967
974
  # {
968
975
  # key: "String",
@@ -971,6 +978,7 @@ module Aws::EC2
971
978
  # ],
972
979
  # },
973
980
  # ],
981
+ # multi_attach_enabled: false,
974
982
  # })
975
983
  # @param [Hash] options ({})
976
984
  # @option options [required, String] :availability_zone
@@ -1055,6 +1063,17 @@ module Aws::EC2
1055
1063
  # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
1056
1064
  # @option options [Array<Types::TagSpecification>] :tag_specifications
1057
1065
  # The tags to apply to the volume during creation.
1066
+ # @option options [Boolean] :multi_attach_enabled
1067
+ # Specifies whether to enable Amazon EBS Multi-Attach. If you enable
1068
+ # Multi-Attach, you can attach the volume to up to 16 [Nitro-based
1069
+ # instances][1] in the same Availability Zone. For more information, see
1070
+ # [ Amazon EBS Multi-Attach][2] in the *Amazon Elastic Compute Cloud
1071
+ # User Guide*.
1072
+ #
1073
+ #
1074
+ #
1075
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html#ec2-nitro-instances
1076
+ # [2]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-volumes-multi.html
1058
1077
  # @return [Volume]
1059
1078
  def create_volume(options = {})
1060
1079
  resp = @client.create_volume(options)
@@ -1070,7 +1089,7 @@ module Aws::EC2
1070
1089
  # vpc = ec2.create_vpc({
1071
1090
  # cidr_block: "String", # required
1072
1091
  # amazon_provided_ipv_6_cidr_block: false,
1073
- # ipv_6_pool: "String",
1092
+ # ipv_6_pool: "Ipv6PoolEc2Id",
1074
1093
  # ipv_6_cidr_block: "String",
1075
1094
  # dry_run: false,
1076
1095
  # instance_tenancy: "default", # accepts default, dedicated, host
@@ -1190,7 +1209,7 @@ module Aws::EC2
1190
1209
  #
1191
1210
  # keypairinfo = ec2.import_key_pair({
1192
1211
  # dry_run: false,
1193
- # key_name: "KeyPairName", # required
1212
+ # key_name: "String", # required
1194
1213
  # public_key_material: "data", # required
1195
1214
  # })
1196
1215
  # @param [Hash] options ({})
@@ -1408,7 +1427,7 @@ module Aws::EC2
1408
1427
  # @example Request syntax with placeholder values
1409
1428
  #
1410
1429
  # dhcp_options_sets = ec2.dhcp_options_sets({
1411
- # dhcp_options_ids: ["String"],
1430
+ # dhcp_options_ids: ["DhcpOptionsId"],
1412
1431
  # filters: [
1413
1432
  # {
1414
1433
  # name: "String",
@@ -1486,7 +1505,7 @@ module Aws::EC2
1486
1505
  # values: ["String"],
1487
1506
  # },
1488
1507
  # ],
1489
- # image_ids: ["String"],
1508
+ # image_ids: ["ImageId"],
1490
1509
  # owners: ["String"],
1491
1510
  # dry_run: false,
1492
1511
  # })
@@ -1635,7 +1654,7 @@ module Aws::EC2
1635
1654
  # values: ["String"],
1636
1655
  # },
1637
1656
  # ],
1638
- # instance_ids: ["String"],
1657
+ # instance_ids: ["InstanceId"],
1639
1658
  # dry_run: false,
1640
1659
  # })
1641
1660
  # @param [Hash] options ({})
@@ -1961,7 +1980,7 @@ module Aws::EC2
1961
1980
  # },
1962
1981
  # ],
1963
1982
  # dry_run: false,
1964
- # internet_gateway_ids: ["String"],
1983
+ # internet_gateway_ids: ["InternetGatewayId"],
1965
1984
  # })
1966
1985
  # @param [Hash] options ({})
1967
1986
  # @option options [Array<Types::Filter>] :filters
@@ -2033,8 +2052,8 @@ module Aws::EC2
2033
2052
  # values: ["String"],
2034
2053
  # },
2035
2054
  # ],
2036
- # key_names: ["String"],
2037
- # key_pair_ids: ["String"],
2055
+ # key_names: ["KeyPairName"],
2056
+ # key_pair_ids: ["KeyPairId"],
2038
2057
  # dry_run: false,
2039
2058
  # })
2040
2059
  # @param [Hash] options ({})
@@ -2090,7 +2109,7 @@ module Aws::EC2
2090
2109
  # values: ["String"],
2091
2110
  # },
2092
2111
  # ],
2093
- # nat_gateway_ids: ["String"],
2112
+ # nat_gateway_ids: ["NatGatewayId"],
2094
2113
  # })
2095
2114
  # @param [Hash] options ({})
2096
2115
  # @option options [Array<Types::Filter>] :filter
@@ -2154,7 +2173,7 @@ module Aws::EC2
2154
2173
  # },
2155
2174
  # ],
2156
2175
  # dry_run: false,
2157
- # network_acl_ids: ["String"],
2176
+ # network_acl_ids: ["NetworkAclId"],
2158
2177
  # })
2159
2178
  # @param [Hash] options ({})
2160
2179
  # @option options [Array<Types::Filter>] :filters
@@ -2257,7 +2276,7 @@ module Aws::EC2
2257
2276
  # },
2258
2277
  # ],
2259
2278
  # dry_run: false,
2260
- # network_interface_ids: ["String"],
2279
+ # network_interface_ids: ["NetworkInterfaceId"],
2261
2280
  # })
2262
2281
  # @param [Hash] options ({})
2263
2282
  # @option options [Array<Types::Filter>] :filters
@@ -2419,8 +2438,8 @@ module Aws::EC2
2419
2438
  # },
2420
2439
  # ],
2421
2440
  # dry_run: false,
2422
- # group_names: ["String"],
2423
- # group_ids: ["String"],
2441
+ # group_names: ["PlacementGroupName"],
2442
+ # group_ids: ["PlacementGroupId"],
2424
2443
  # })
2425
2444
  # @param [Hash] options ({})
2426
2445
  # @option options [Array<Types::Filter>] :filters
@@ -2490,7 +2509,7 @@ module Aws::EC2
2490
2509
  # },
2491
2510
  # ],
2492
2511
  # dry_run: false,
2493
- # route_table_ids: ["String"],
2512
+ # route_table_ids: ["RouteTableId"],
2494
2513
  # })
2495
2514
  # @param [Hash] options ({})
2496
2515
  # @option options [Array<Types::Filter>] :filters
@@ -2611,7 +2630,7 @@ module Aws::EC2
2611
2630
  # },
2612
2631
  # ],
2613
2632
  # group_ids: ["String"],
2614
- # group_names: ["String"],
2633
+ # group_names: ["SecurityGroupName"],
2615
2634
  # dry_run: false,
2616
2635
  # })
2617
2636
  # @param [Hash] options ({})
@@ -2750,7 +2769,7 @@ module Aws::EC2
2750
2769
  # ],
2751
2770
  # owner_ids: ["String"],
2752
2771
  # restorable_by_user_ids: ["String"],
2753
- # snapshot_ids: ["String"],
2772
+ # snapshot_ids: ["SnapshotId"],
2754
2773
  # dry_run: false,
2755
2774
  # })
2756
2775
  # @param [Hash] options ({})
@@ -2843,7 +2862,7 @@ module Aws::EC2
2843
2862
  # values: ["String"],
2844
2863
  # },
2845
2864
  # ],
2846
- # subnet_ids: ["String"],
2865
+ # subnet_ids: ["SubnetId"],
2847
2866
  # dry_run: false,
2848
2867
  # })
2849
2868
  # @param [Hash] options ({})
@@ -2942,7 +2961,7 @@ module Aws::EC2
2942
2961
  # values: ["String"],
2943
2962
  # },
2944
2963
  # ],
2945
- # volume_ids: ["String"],
2964
+ # volume_ids: ["VolumeId"],
2946
2965
  # dry_run: false,
2947
2966
  # })
2948
2967
  # @param [Hash] options ({})
@@ -2972,6 +2991,9 @@ module Aws::EC2
2972
2991
  # * `encrypted` - Indicates whether the volume is encrypted (`true` \|
2973
2992
  # `false`)
2974
2993
  #
2994
+ # * `multi-attach-enabled` - Indicates whether the volume is enabled for
2995
+ # Multi-Attach (`true` \| `false`)
2996
+ #
2975
2997
  # * `fast-restored` - Indicates whether the volume was created from a
2976
2998
  # snapshot that is enabled for fast snapshot restore (`true` \|
2977
2999
  # `false`).
@@ -3134,7 +3156,7 @@ module Aws::EC2
3134
3156
  # },
3135
3157
  # ],
3136
3158
  # dry_run: false,
3137
- # vpc_peering_connection_ids: ["String"],
3159
+ # vpc_peering_connection_ids: ["VpcPeeringConnectionId"],
3138
3160
  # })
3139
3161
  # @param [Hash] options ({})
3140
3162
  # @option options [Array<Types::Filter>] :filters
@@ -3214,7 +3236,7 @@ module Aws::EC2
3214
3236
  # values: ["String"],
3215
3237
  # },
3216
3238
  # ],
3217
- # vpc_ids: ["String"],
3239
+ # vpc_ids: ["VpcId"],
3218
3240
  # dry_run: false,
3219
3241
  # })
3220
3242
  # @param [Hash] options ({})