aws-sdk-ec2 1.0.0.rc10 → 1.0.0.rc11

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: eda38132f68d52d481afd6e2dbd8585ccf4021ca
4
- data.tar.gz: c1f4cda73f3a0b79d10e1181a83565ee69925aa3
3
+ metadata.gz: 4f8569b7d940ee9ec93d61a382e9ebebc41d00bf
4
+ data.tar.gz: d719dcb37aab30ab7af4c8488b6469d24e081095
5
5
  SHA512:
6
- metadata.gz: 3e98ca77656369d669b85f7312d83b1daabdf19035686a7fd9d6de6d5b7bc9b1dc5f2ce3f8a36ad44100c46711a41c223d84d010427cc62d7d2a6c9e9b8c7de9
7
- data.tar.gz: 7de60d4b2a9cb1af78d459f08f2f6822fa45b14a7abf4fd6aa3f13793f98533b9d4f658cfa38dd1296326f0698e950e5646b4d5f53db62b7d3f7010021a5ff3f
6
+ metadata.gz: 51c49beec41facdb121ecb1182e92bd56003b444a5339b82324f34d990e2feab1566f8b3577ecb2bb3b409c8067788c4e7d7cd0df3fbbc03b85c90a62601f575
7
+ data.tar.gz: 095c4d8fb66f47c569cae8ce0c17811d692feb6367ed31a333788c3075d013561011cadcc0b16d2a027b44faa8f366e5b504187a357ff6521bba645278bf503b
@@ -65,6 +65,6 @@ require_relative 'aws-sdk-ec2/customizations'
65
65
  # @service
66
66
  module Aws::EC2
67
67
 
68
- GEM_VERSION = '1.0.0.rc10'
68
+ GEM_VERSION = '1.0.0.rc11'
69
69
 
70
70
  end
@@ -3552,6 +3552,63 @@ module Aws::EC2
3552
3552
  req.send_request(options)
3553
3553
  end
3554
3554
 
3555
+ # Grants an AWS authorized partner account permission to attach the
3556
+ # specified network interface to an instance in their account.
3557
+ #
3558
+ # You can grant permission to a single AWS account only, and only one
3559
+ # account at a time.
3560
+ #
3561
+ # @option params [required, String] :network_interface_id
3562
+ # The ID of the network interface.
3563
+ #
3564
+ # @option params [String] :aws_account_id
3565
+ # The AWS account ID.
3566
+ #
3567
+ # @option params [String] :aws_service
3568
+ # The AWS service. Currently not supported.
3569
+ #
3570
+ # @option params [required, String] :permission
3571
+ # The type of permission to grant.
3572
+ #
3573
+ # @option params [Boolean] :dry_run
3574
+ # Checks whether you have the required permissions for the action,
3575
+ # without actually making the request, and provides an error response.
3576
+ # If you have the required permissions, the error response is
3577
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
3578
+ #
3579
+ # @return [Types::CreateNetworkInterfacePermissionResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3580
+ #
3581
+ # * {Types::CreateNetworkInterfacePermissionResult#interface_permission #interface_permission} => Types::NetworkInterfacePermission
3582
+ #
3583
+ # @example Request syntax with placeholder values
3584
+ #
3585
+ # resp = client.create_network_interface_permission({
3586
+ # network_interface_id: "String", # required
3587
+ # aws_account_id: "String",
3588
+ # aws_service: "String",
3589
+ # permission: "INSTANCE-ATTACH", # required, accepts INSTANCE-ATTACH, EIP-ASSOCIATE
3590
+ # dry_run: false,
3591
+ # })
3592
+ #
3593
+ # @example Response structure
3594
+ #
3595
+ # resp.interface_permission.network_interface_permission_id #=> String
3596
+ # resp.interface_permission.network_interface_id #=> String
3597
+ # resp.interface_permission.aws_account_id #=> String
3598
+ # resp.interface_permission.aws_service #=> String
3599
+ # resp.interface_permission.permission #=> String, one of "INSTANCE-ATTACH", "EIP-ASSOCIATE"
3600
+ # resp.interface_permission.permission_state.state #=> String, one of "pending", "granted", "revoking", "revoked"
3601
+ # resp.interface_permission.permission_state.status_message #=> String
3602
+ #
3603
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateNetworkInterfacePermission AWS API Documentation
3604
+ #
3605
+ # @overload create_network_interface_permission(params = {})
3606
+ # @param [Hash] params ({})
3607
+ def create_network_interface_permission(params = {}, options = {})
3608
+ req = build_request(:create_network_interface_permission, params)
3609
+ req.send_request(options)
3610
+ end
3611
+
3555
3612
  # Creates a placement group that you launch cluster instances into. You
3556
3613
  # must give the group a name that's unique within the scope of your
3557
3614
  # account.
@@ -5480,6 +5537,49 @@ module Aws::EC2
5480
5537
  req.send_request(options)
5481
5538
  end
5482
5539
 
5540
+ # Deletes a permission for a network interface. By default, you cannot
5541
+ # delete the permission if the account for which you're removing the
5542
+ # permission has attached the network interface to an instance. However,
5543
+ # you can force delete the permission, regardless of any attachment.
5544
+ #
5545
+ # @option params [required, String] :network_interface_permission_id
5546
+ # The ID of the network interface permission.
5547
+ #
5548
+ # @option params [Boolean] :force
5549
+ # Specify `true` to remove the permission even if the network interface
5550
+ # is attached to an instance.
5551
+ #
5552
+ # @option params [Boolean] :dry_run
5553
+ # Checks whether you have the required permissions for the action,
5554
+ # without actually making the request, and provides an error response.
5555
+ # If you have the required permissions, the error response is
5556
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
5557
+ #
5558
+ # @return [Types::DeleteNetworkInterfacePermissionResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
5559
+ #
5560
+ # * {Types::DeleteNetworkInterfacePermissionResult#return #return} => Boolean
5561
+ #
5562
+ # @example Request syntax with placeholder values
5563
+ #
5564
+ # resp = client.delete_network_interface_permission({
5565
+ # network_interface_permission_id: "String", # required
5566
+ # force: false,
5567
+ # dry_run: false,
5568
+ # })
5569
+ #
5570
+ # @example Response structure
5571
+ #
5572
+ # resp.return #=> Boolean
5573
+ #
5574
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteNetworkInterfacePermission AWS API Documentation
5575
+ #
5576
+ # @overload delete_network_interface_permission(params = {})
5577
+ # @param [Hash] params ({})
5578
+ def delete_network_interface_permission(params = {}, options = {})
5579
+ req = build_request(:delete_network_interface_permission, params)
5580
+ req.send_request(options)
5581
+ end
5582
+
5483
5583
  # Deletes the specified placement group. You must terminate all
5484
5584
  # instances in the placement group before you can delete the placement
5485
5585
  # group. For more information about placement groups and cluster
@@ -8374,7 +8474,8 @@ module Aws::EC2
8374
8474
  end
8375
8475
 
8376
8476
  # Describes the status of one or more instances. By default, only
8377
- # running instances are described, unless specified otherwise.
8477
+ # running instances are described, unless you specifically indicate to
8478
+ # return the status of all instances.
8378
8479
  #
8379
8480
  # Instance status includes the following components:
8380
8481
  #
@@ -9676,6 +9777,76 @@ module Aws::EC2
9676
9777
  req.send_request(options)
9677
9778
  end
9678
9779
 
9780
+ # Describes the permissions for your network interfaces.
9781
+ #
9782
+ # @option params [Array<String>] :network_interface_permission_ids
9783
+ # One or more network interface permission IDs.
9784
+ #
9785
+ # @option params [Array<Types::Filter>] :filters
9786
+ # One or more filters.
9787
+ #
9788
+ # * `network-interface-permission.network-interface-permission-id` - The
9789
+ # ID of the permission.
9790
+ #
9791
+ # * `network-interface-permission.network-interface-id` - The ID of the
9792
+ # network interface.
9793
+ #
9794
+ # * `network-interface-permission.aws-account-id` - The AWS account ID.
9795
+ #
9796
+ # * `network-interface-permission.aws-service` - The AWS service.
9797
+ #
9798
+ # * `network-interface-permission.permission` - The type of permission
9799
+ # (`INSTANCE-ATTACH` \| `EIP-ASSOCIATE`).
9800
+ #
9801
+ # @option params [String] :next_token
9802
+ # The token to request the next page of results.
9803
+ #
9804
+ # @option params [Integer] :max_results
9805
+ # The maximum number of results to return in a single call. To retrieve
9806
+ # the remaining results, make another call with the returned `NextToken`
9807
+ # value. If this parameter is not specified, up to 50 results are
9808
+ # returned by default.
9809
+ #
9810
+ # @return [Types::DescribeNetworkInterfacePermissionsResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
9811
+ #
9812
+ # * {Types::DescribeNetworkInterfacePermissionsResult#network_interface_permissions #network_interface_permissions} => Array&lt;Types::NetworkInterfacePermission&gt;
9813
+ # * {Types::DescribeNetworkInterfacePermissionsResult#next_token #next_token} => String
9814
+ #
9815
+ # @example Request syntax with placeholder values
9816
+ #
9817
+ # resp = client.describe_network_interface_permissions({
9818
+ # network_interface_permission_ids: ["String"],
9819
+ # filters: [
9820
+ # {
9821
+ # name: "String",
9822
+ # values: ["String"],
9823
+ # },
9824
+ # ],
9825
+ # next_token: "String",
9826
+ # max_results: 1,
9827
+ # })
9828
+ #
9829
+ # @example Response structure
9830
+ #
9831
+ # resp.network_interface_permissions #=> Array
9832
+ # resp.network_interface_permissions[0].network_interface_permission_id #=> String
9833
+ # resp.network_interface_permissions[0].network_interface_id #=> String
9834
+ # resp.network_interface_permissions[0].aws_account_id #=> String
9835
+ # resp.network_interface_permissions[0].aws_service #=> String
9836
+ # resp.network_interface_permissions[0].permission #=> String, one of "INSTANCE-ATTACH", "EIP-ASSOCIATE"
9837
+ # resp.network_interface_permissions[0].permission_state.state #=> String, one of "pending", "granted", "revoking", "revoked"
9838
+ # resp.network_interface_permissions[0].permission_state.status_message #=> String
9839
+ # resp.next_token #=> String
9840
+ #
9841
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeNetworkInterfacePermissions AWS API Documentation
9842
+ #
9843
+ # @overload describe_network_interface_permissions(params = {})
9844
+ # @param [Hash] params ({})
9845
+ def describe_network_interface_permissions(params = {}, options = {})
9846
+ req = build_request(:describe_network_interface_permissions, params)
9847
+ req.send_request(options)
9848
+ end
9849
+
9679
9850
  # Describes one or more of your network interfaces.
9680
9851
  #
9681
9852
  # @option params [Array<Types::Filter>] :filters
@@ -11563,7 +11734,7 @@ module Aws::EC2
11563
11734
  # * `owner-alias` - Value from an Amazon-maintained list (`amazon` \|
11564
11735
  # `aws-marketplace` \| `microsoft`) of snapshot owners. Not to be
11565
11736
  # confused with the user-configured AWS account alias, which is set
11566
- # from the IAM consolew.
11737
+ # from the IAM console.
11567
11738
  #
11568
11739
  # * `owner-id` - The ID of the AWS account that owns the snapshot.
11569
11740
  #
@@ -16191,7 +16362,7 @@ module Aws::EC2
16191
16362
  # @option params [Types::AttributeBooleanValue] :disable_api_termination
16192
16363
  # If the value is `true`, you can't terminate the instance using the
16193
16364
  # Amazon EC2 console, CLI, or API; otherwise, you can. You cannot use
16194
- # this paramater for Spot Instances.
16365
+ # this parameter for Spot Instances.
16195
16366
  #
16196
16367
  # @option params [Boolean] :dry_run
16197
16368
  # Checks whether you have the required permissions for the action,
@@ -20477,7 +20648,7 @@ module Aws::EC2
20477
20648
  params: params,
20478
20649
  config: config)
20479
20650
  context[:gem_name] = 'aws-sdk-ec2'
20480
- context[:gem_version] = '1.0.0.rc10'
20651
+ context[:gem_version] = '1.0.0.rc11'
20481
20652
  Seahorse::Client::Request.new(handlers, context)
20482
20653
  end
20483
20654
 
@@ -144,6 +144,8 @@ module Aws::EC2
144
144
  CreateNetworkAclEntryRequest = Shapes::StructureShape.new(name: 'CreateNetworkAclEntryRequest')
145
145
  CreateNetworkAclRequest = Shapes::StructureShape.new(name: 'CreateNetworkAclRequest')
146
146
  CreateNetworkAclResult = Shapes::StructureShape.new(name: 'CreateNetworkAclResult')
147
+ CreateNetworkInterfacePermissionRequest = Shapes::StructureShape.new(name: 'CreateNetworkInterfacePermissionRequest')
148
+ CreateNetworkInterfacePermissionResult = Shapes::StructureShape.new(name: 'CreateNetworkInterfacePermissionResult')
147
149
  CreateNetworkInterfaceRequest = Shapes::StructureShape.new(name: 'CreateNetworkInterfaceRequest')
148
150
  CreateNetworkInterfaceResult = Shapes::StructureShape.new(name: 'CreateNetworkInterfaceResult')
149
151
  CreatePlacementGroupRequest = Shapes::StructureShape.new(name: 'CreatePlacementGroupRequest')
@@ -194,6 +196,8 @@ module Aws::EC2
194
196
  DeleteNatGatewayResult = Shapes::StructureShape.new(name: 'DeleteNatGatewayResult')
195
197
  DeleteNetworkAclEntryRequest = Shapes::StructureShape.new(name: 'DeleteNetworkAclEntryRequest')
196
198
  DeleteNetworkAclRequest = Shapes::StructureShape.new(name: 'DeleteNetworkAclRequest')
199
+ DeleteNetworkInterfacePermissionRequest = Shapes::StructureShape.new(name: 'DeleteNetworkInterfacePermissionRequest')
200
+ DeleteNetworkInterfacePermissionResult = Shapes::StructureShape.new(name: 'DeleteNetworkInterfacePermissionResult')
197
201
  DeleteNetworkInterfaceRequest = Shapes::StructureShape.new(name: 'DeleteNetworkInterfaceRequest')
198
202
  DeletePlacementGroupRequest = Shapes::StructureShape.new(name: 'DeletePlacementGroupRequest')
199
203
  DeleteRouteRequest = Shapes::StructureShape.new(name: 'DeleteRouteRequest')
@@ -274,6 +278,8 @@ module Aws::EC2
274
278
  DescribeNetworkAclsResult = Shapes::StructureShape.new(name: 'DescribeNetworkAclsResult')
275
279
  DescribeNetworkInterfaceAttributeRequest = Shapes::StructureShape.new(name: 'DescribeNetworkInterfaceAttributeRequest')
276
280
  DescribeNetworkInterfaceAttributeResult = Shapes::StructureShape.new(name: 'DescribeNetworkInterfaceAttributeResult')
281
+ DescribeNetworkInterfacePermissionsRequest = Shapes::StructureShape.new(name: 'DescribeNetworkInterfacePermissionsRequest')
282
+ DescribeNetworkInterfacePermissionsResult = Shapes::StructureShape.new(name: 'DescribeNetworkInterfacePermissionsResult')
277
283
  DescribeNetworkInterfacesRequest = Shapes::StructureShape.new(name: 'DescribeNetworkInterfacesRequest')
278
284
  DescribeNetworkInterfacesResult = Shapes::StructureShape.new(name: 'DescribeNetworkInterfacesResult')
279
285
  DescribePlacementGroupsRequest = Shapes::StructureShape.new(name: 'DescribePlacementGroupsRequest')
@@ -528,6 +534,7 @@ module Aws::EC2
528
534
  InstanceType = Shapes::StringShape.new(name: 'InstanceType')
529
535
  InstanceTypeList = Shapes::ListShape.new(name: 'InstanceTypeList')
530
536
  Integer = Shapes::IntegerShape.new(name: 'Integer')
537
+ InterfacePermissionType = Shapes::StringShape.new(name: 'InterfacePermissionType')
531
538
  InternetGateway = Shapes::StructureShape.new(name: 'InternetGateway')
532
539
  InternetGatewayAttachment = Shapes::StructureShape.new(name: 'InternetGatewayAttachment')
533
540
  InternetGatewayAttachmentList = Shapes::ListShape.new(name: 'InternetGatewayAttachmentList')
@@ -608,6 +615,11 @@ module Aws::EC2
608
615
  NetworkInterfaceIpv6Address = Shapes::StructureShape.new(name: 'NetworkInterfaceIpv6Address')
609
616
  NetworkInterfaceIpv6AddressesList = Shapes::ListShape.new(name: 'NetworkInterfaceIpv6AddressesList')
610
617
  NetworkInterfaceList = Shapes::ListShape.new(name: 'NetworkInterfaceList')
618
+ NetworkInterfacePermission = Shapes::StructureShape.new(name: 'NetworkInterfacePermission')
619
+ NetworkInterfacePermissionIdList = Shapes::ListShape.new(name: 'NetworkInterfacePermissionIdList')
620
+ NetworkInterfacePermissionList = Shapes::ListShape.new(name: 'NetworkInterfacePermissionList')
621
+ NetworkInterfacePermissionState = Shapes::StructureShape.new(name: 'NetworkInterfacePermissionState')
622
+ NetworkInterfacePermissionStateCode = Shapes::StringShape.new(name: 'NetworkInterfacePermissionStateCode')
611
623
  NetworkInterfacePrivateIpAddress = Shapes::StructureShape.new(name: 'NetworkInterfacePrivateIpAddress')
612
624
  NetworkInterfacePrivateIpAddressList = Shapes::ListShape.new(name: 'NetworkInterfacePrivateIpAddressList')
613
625
  NetworkInterfaceStatus = Shapes::StringShape.new(name: 'NetworkInterfaceStatus')
@@ -1438,6 +1450,16 @@ module Aws::EC2
1438
1450
  CreateNetworkAclResult.add_member(:network_acl, Shapes::ShapeRef.new(shape: NetworkAcl, location_name: "networkAcl"))
1439
1451
  CreateNetworkAclResult.struct_class = Types::CreateNetworkAclResult
1440
1452
 
1453
+ CreateNetworkInterfacePermissionRequest.add_member(:network_interface_id, Shapes::ShapeRef.new(shape: String, required: true, location_name: "NetworkInterfaceId"))
1454
+ CreateNetworkInterfacePermissionRequest.add_member(:aws_account_id, Shapes::ShapeRef.new(shape: String, location_name: "AwsAccountId"))
1455
+ CreateNetworkInterfacePermissionRequest.add_member(:aws_service, Shapes::ShapeRef.new(shape: String, location_name: "AwsService"))
1456
+ CreateNetworkInterfacePermissionRequest.add_member(:permission, Shapes::ShapeRef.new(shape: InterfacePermissionType, required: true, location_name: "Permission"))
1457
+ CreateNetworkInterfacePermissionRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "DryRun"))
1458
+ CreateNetworkInterfacePermissionRequest.struct_class = Types::CreateNetworkInterfacePermissionRequest
1459
+
1460
+ CreateNetworkInterfacePermissionResult.add_member(:interface_permission, Shapes::ShapeRef.new(shape: NetworkInterfacePermission, location_name: "interfacePermission"))
1461
+ CreateNetworkInterfacePermissionResult.struct_class = Types::CreateNetworkInterfacePermissionResult
1462
+
1441
1463
  CreateNetworkInterfaceRequest.add_member(:description, Shapes::ShapeRef.new(shape: String, location_name: "description"))
1442
1464
  CreateNetworkInterfaceRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "dryRun"))
1443
1465
  CreateNetworkInterfaceRequest.add_member(:groups, Shapes::ShapeRef.new(shape: SecurityGroupIdStringList, location_name: "SecurityGroupId"))
@@ -1655,6 +1677,14 @@ module Aws::EC2
1655
1677
  DeleteNetworkAclRequest.add_member(:network_acl_id, Shapes::ShapeRef.new(shape: String, required: true, location_name: "networkAclId"))
1656
1678
  DeleteNetworkAclRequest.struct_class = Types::DeleteNetworkAclRequest
1657
1679
 
1680
+ DeleteNetworkInterfacePermissionRequest.add_member(:network_interface_permission_id, Shapes::ShapeRef.new(shape: String, required: true, location_name: "NetworkInterfacePermissionId"))
1681
+ DeleteNetworkInterfacePermissionRequest.add_member(:force, Shapes::ShapeRef.new(shape: Boolean, location_name: "Force"))
1682
+ DeleteNetworkInterfacePermissionRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "DryRun"))
1683
+ DeleteNetworkInterfacePermissionRequest.struct_class = Types::DeleteNetworkInterfacePermissionRequest
1684
+
1685
+ DeleteNetworkInterfacePermissionResult.add_member(:return, Shapes::ShapeRef.new(shape: Boolean, location_name: "return"))
1686
+ DeleteNetworkInterfacePermissionResult.struct_class = Types::DeleteNetworkInterfacePermissionResult
1687
+
1658
1688
  DeleteNetworkInterfaceRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "dryRun"))
1659
1689
  DeleteNetworkInterfaceRequest.add_member(:network_interface_id, Shapes::ShapeRef.new(shape: String, required: true, location_name: "networkInterfaceId"))
1660
1690
  DeleteNetworkInterfaceRequest.struct_class = Types::DeleteNetworkInterfaceRequest
@@ -2015,6 +2045,16 @@ module Aws::EC2
2015
2045
  DescribeNetworkInterfaceAttributeResult.add_member(:source_dest_check, Shapes::ShapeRef.new(shape: AttributeBooleanValue, location_name: "sourceDestCheck"))
2016
2046
  DescribeNetworkInterfaceAttributeResult.struct_class = Types::DescribeNetworkInterfaceAttributeResult
2017
2047
 
2048
+ DescribeNetworkInterfacePermissionsRequest.add_member(:network_interface_permission_ids, Shapes::ShapeRef.new(shape: NetworkInterfacePermissionIdList, location_name: "NetworkInterfacePermissionId"))
2049
+ DescribeNetworkInterfacePermissionsRequest.add_member(:filters, Shapes::ShapeRef.new(shape: FilterList, location_name: "Filter"))
2050
+ DescribeNetworkInterfacePermissionsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: String, location_name: "NextToken"))
2051
+ DescribeNetworkInterfacePermissionsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: Integer, location_name: "MaxResults"))
2052
+ DescribeNetworkInterfacePermissionsRequest.struct_class = Types::DescribeNetworkInterfacePermissionsRequest
2053
+
2054
+ DescribeNetworkInterfacePermissionsResult.add_member(:network_interface_permissions, Shapes::ShapeRef.new(shape: NetworkInterfacePermissionList, location_name: "networkInterfacePermissions"))
2055
+ DescribeNetworkInterfacePermissionsResult.add_member(:next_token, Shapes::ShapeRef.new(shape: String, location_name: "nextToken"))
2056
+ DescribeNetworkInterfacePermissionsResult.struct_class = Types::DescribeNetworkInterfacePermissionsResult
2057
+
2018
2058
  DescribeNetworkInterfacesRequest.add_member(:filters, Shapes::ShapeRef.new(shape: FilterList, location_name: "filter"))
2019
2059
  DescribeNetworkInterfacesRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "dryRun"))
2020
2060
  DescribeNetworkInterfacesRequest.add_member(:network_interface_ids, Shapes::ShapeRef.new(shape: NetworkInterfaceIdList, location_name: "NetworkInterfaceId"))
@@ -3500,6 +3540,22 @@ module Aws::EC2
3500
3540
 
3501
3541
  NetworkInterfaceList.member = Shapes::ShapeRef.new(shape: NetworkInterface, location_name: "item")
3502
3542
 
3543
+ NetworkInterfacePermission.add_member(:network_interface_permission_id, Shapes::ShapeRef.new(shape: String, location_name: "networkInterfacePermissionId"))
3544
+ NetworkInterfacePermission.add_member(:network_interface_id, Shapes::ShapeRef.new(shape: String, location_name: "networkInterfaceId"))
3545
+ NetworkInterfacePermission.add_member(:aws_account_id, Shapes::ShapeRef.new(shape: String, location_name: "awsAccountId"))
3546
+ NetworkInterfacePermission.add_member(:aws_service, Shapes::ShapeRef.new(shape: String, location_name: "awsService"))
3547
+ NetworkInterfacePermission.add_member(:permission, Shapes::ShapeRef.new(shape: InterfacePermissionType, location_name: "permission"))
3548
+ NetworkInterfacePermission.add_member(:permission_state, Shapes::ShapeRef.new(shape: NetworkInterfacePermissionState, location_name: "permissionState"))
3549
+ NetworkInterfacePermission.struct_class = Types::NetworkInterfacePermission
3550
+
3551
+ NetworkInterfacePermissionIdList.member = Shapes::ShapeRef.new(shape: String)
3552
+
3553
+ NetworkInterfacePermissionList.member = Shapes::ShapeRef.new(shape: NetworkInterfacePermission, location_name: "item")
3554
+
3555
+ NetworkInterfacePermissionState.add_member(:state, Shapes::ShapeRef.new(shape: NetworkInterfacePermissionStateCode, location_name: "state"))
3556
+ NetworkInterfacePermissionState.add_member(:status_message, Shapes::ShapeRef.new(shape: String, location_name: "statusMessage"))
3557
+ NetworkInterfacePermissionState.struct_class = Types::NetworkInterfacePermissionState
3558
+
3503
3559
  NetworkInterfacePrivateIpAddress.add_member(:association, Shapes::ShapeRef.new(shape: NetworkInterfaceAssociation, location_name: "association"))
3504
3560
  NetworkInterfacePrivateIpAddress.add_member(:primary, Shapes::ShapeRef.new(shape: Boolean, location_name: "primary"))
3505
3561
  NetworkInterfacePrivateIpAddress.add_member(:private_dns_name, Shapes::ShapeRef.new(shape: String, location_name: "privateDnsName"))
@@ -5148,6 +5204,14 @@ module Aws::EC2
5148
5204
  o.output = Shapes::ShapeRef.new(shape: CreateNetworkInterfaceResult)
5149
5205
  end)
5150
5206
 
5207
+ api.add_operation(:create_network_interface_permission, Seahorse::Model::Operation.new.tap do |o|
5208
+ o.name = "CreateNetworkInterfacePermission"
5209
+ o.http_method = "POST"
5210
+ o.http_request_uri = "/"
5211
+ o.input = Shapes::ShapeRef.new(shape: CreateNetworkInterfacePermissionRequest)
5212
+ o.output = Shapes::ShapeRef.new(shape: CreateNetworkInterfacePermissionResult)
5213
+ end)
5214
+
5151
5215
  api.add_operation(:create_placement_group, Seahorse::Model::Operation.new.tap do |o|
5152
5216
  o.name = "CreatePlacementGroup"
5153
5217
  o.http_method = "POST"
@@ -5356,6 +5420,14 @@ module Aws::EC2
5356
5420
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
5357
5421
  end)
5358
5422
 
5423
+ api.add_operation(:delete_network_interface_permission, Seahorse::Model::Operation.new.tap do |o|
5424
+ o.name = "DeleteNetworkInterfacePermission"
5425
+ o.http_method = "POST"
5426
+ o.http_request_uri = "/"
5427
+ o.input = Shapes::ShapeRef.new(shape: DeleteNetworkInterfacePermissionRequest)
5428
+ o.output = Shapes::ShapeRef.new(shape: DeleteNetworkInterfacePermissionResult)
5429
+ end)
5430
+
5359
5431
  api.add_operation(:delete_placement_group, Seahorse::Model::Operation.new.tap do |o|
5360
5432
  o.name = "DeletePlacementGroup"
5361
5433
  o.http_method = "POST"
@@ -5750,6 +5822,14 @@ module Aws::EC2
5750
5822
  o.output = Shapes::ShapeRef.new(shape: DescribeNetworkInterfaceAttributeResult)
5751
5823
  end)
5752
5824
 
5825
+ api.add_operation(:describe_network_interface_permissions, Seahorse::Model::Operation.new.tap do |o|
5826
+ o.name = "DescribeNetworkInterfacePermissions"
5827
+ o.http_method = "POST"
5828
+ o.http_request_uri = "/"
5829
+ o.input = Shapes::ShapeRef.new(shape: DescribeNetworkInterfacePermissionsRequest)
5830
+ o.output = Shapes::ShapeRef.new(shape: DescribeNetworkInterfacePermissionsResult)
5831
+ end)
5832
+
5753
5833
  api.add_operation(:describe_network_interfaces, Seahorse::Model::Operation.new.tap do |o|
5754
5834
  o.name = "DescribeNetworkInterfaces"
5755
5835
  o.http_method = "POST"
@@ -703,7 +703,7 @@ module Aws::EC2
703
703
  # @option options [Types::AttributeBooleanValue] :disable_api_termination
704
704
  # If the value is `true`, you can't terminate the instance using the
705
705
  # Amazon EC2 console, CLI, or API; otherwise, you can. You cannot use
706
- # this paramater for Spot Instances.
706
+ # this parameter for Spot Instances.
707
707
  # @option options [Boolean] :dry_run
708
708
  # Checks whether you have the required permissions for the action,
709
709
  # without actually making the request, and provides an error response.
@@ -2315,7 +2315,7 @@ module Aws::EC2
2315
2315
  # * `owner-alias` - Value from an Amazon-maintained list (`amazon` \|
2316
2316
  # `aws-marketplace` \| `microsoft`) of snapshot owners. Not to be
2317
2317
  # confused with the user-configured AWS account alias, which is set
2318
- # from the IAM consolew.
2318
+ # from the IAM console.
2319
2319
  #
2320
2320
  # * `owner-id` - The ID of the AWS account that owns the snapshot.
2321
2321
  #
@@ -3051,6 +3051,62 @@ module Aws::EC2
3051
3051
  include Aws::Structure
3052
3052
  end
3053
3053
 
3054
+ # @note When making an API call, you may pass CreateNetworkInterfacePermissionRequest
3055
+ # data as a hash:
3056
+ #
3057
+ # {
3058
+ # network_interface_id: "String", # required
3059
+ # aws_account_id: "String",
3060
+ # aws_service: "String",
3061
+ # permission: "INSTANCE-ATTACH", # required, accepts INSTANCE-ATTACH, EIP-ASSOCIATE
3062
+ # dry_run: false,
3063
+ # }
3064
+ #
3065
+ # @!attribute [rw] network_interface_id
3066
+ # The ID of the network interface.
3067
+ # @return [String]
3068
+ #
3069
+ # @!attribute [rw] aws_account_id
3070
+ # The AWS account ID.
3071
+ # @return [String]
3072
+ #
3073
+ # @!attribute [rw] aws_service
3074
+ # The AWS service. Currently not supported.
3075
+ # @return [String]
3076
+ #
3077
+ # @!attribute [rw] permission
3078
+ # The type of permission to grant.
3079
+ # @return [String]
3080
+ #
3081
+ # @!attribute [rw] dry_run
3082
+ # Checks whether you have the required permissions for the action,
3083
+ # without actually making the request, and provides an error response.
3084
+ # If you have the required permissions, the error response is
3085
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
3086
+ # @return [Boolean]
3087
+ #
3088
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateNetworkInterfacePermissionRequest AWS API Documentation
3089
+ #
3090
+ class CreateNetworkInterfacePermissionRequest < Struct.new(
3091
+ :network_interface_id,
3092
+ :aws_account_id,
3093
+ :aws_service,
3094
+ :permission,
3095
+ :dry_run)
3096
+ include Aws::Structure
3097
+ end
3098
+
3099
+ # @!attribute [rw] interface_permission
3100
+ # Information about the permission for the network interface.
3101
+ # @return [Types::NetworkInterfacePermission]
3102
+ #
3103
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateNetworkInterfacePermissionResult AWS API Documentation
3104
+ #
3105
+ class CreateNetworkInterfacePermissionResult < Struct.new(
3106
+ :interface_permission)
3107
+ include Aws::Structure
3108
+ end
3109
+
3054
3110
  # Contains the parameters for CreateNetworkInterface.
3055
3111
  #
3056
3112
  # @note When making an API call, you may pass CreateNetworkInterfaceRequest
@@ -4536,6 +4592,51 @@ module Aws::EC2
4536
4592
  include Aws::Structure
4537
4593
  end
4538
4594
 
4595
+ # @note When making an API call, you may pass DeleteNetworkInterfacePermissionRequest
4596
+ # data as a hash:
4597
+ #
4598
+ # {
4599
+ # network_interface_permission_id: "String", # required
4600
+ # force: false,
4601
+ # dry_run: false,
4602
+ # }
4603
+ #
4604
+ # @!attribute [rw] network_interface_permission_id
4605
+ # The ID of the network interface permission.
4606
+ # @return [String]
4607
+ #
4608
+ # @!attribute [rw] force
4609
+ # Specify `true` to remove the permission even if the network
4610
+ # interface is attached to an instance.
4611
+ # @return [Boolean]
4612
+ #
4613
+ # @!attribute [rw] dry_run
4614
+ # Checks whether you have the required permissions for the action,
4615
+ # without actually making the request, and provides an error response.
4616
+ # If you have the required permissions, the error response is
4617
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
4618
+ # @return [Boolean]
4619
+ #
4620
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteNetworkInterfacePermissionRequest AWS API Documentation
4621
+ #
4622
+ class DeleteNetworkInterfacePermissionRequest < Struct.new(
4623
+ :network_interface_permission_id,
4624
+ :force,
4625
+ :dry_run)
4626
+ include Aws::Structure
4627
+ end
4628
+
4629
+ # @!attribute [rw] return
4630
+ # Returns `true` if the request succeeds, otherwise returns an error.
4631
+ # @return [Boolean]
4632
+ #
4633
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteNetworkInterfacePermissionResult AWS API Documentation
4634
+ #
4635
+ class DeleteNetworkInterfacePermissionResult < Struct.new(
4636
+ :return)
4637
+ include Aws::Structure
4638
+ end
4639
+
4539
4640
  # Contains the parameters for DeleteNetworkInterface.
4540
4641
  #
4541
4642
  # @note When making an API call, you may pass DeleteNetworkInterfaceRequest
@@ -7679,6 +7780,80 @@ module Aws::EC2
7679
7780
  include Aws::Structure
7680
7781
  end
7681
7782
 
7783
+ # @note When making an API call, you may pass DescribeNetworkInterfacePermissionsRequest
7784
+ # data as a hash:
7785
+ #
7786
+ # {
7787
+ # network_interface_permission_ids: ["String"],
7788
+ # filters: [
7789
+ # {
7790
+ # name: "String",
7791
+ # values: ["String"],
7792
+ # },
7793
+ # ],
7794
+ # next_token: "String",
7795
+ # max_results: 1,
7796
+ # }
7797
+ #
7798
+ # @!attribute [rw] network_interface_permission_ids
7799
+ # One or more network interface permission IDs.
7800
+ # @return [Array<String>]
7801
+ #
7802
+ # @!attribute [rw] filters
7803
+ # One or more filters.
7804
+ #
7805
+ # * `network-interface-permission.network-interface-permission-id` -
7806
+ # The ID of the permission.
7807
+ #
7808
+ # * `network-interface-permission.network-interface-id` - The ID of
7809
+ # the network interface.
7810
+ #
7811
+ # * `network-interface-permission.aws-account-id` - The AWS account
7812
+ # ID.
7813
+ #
7814
+ # * `network-interface-permission.aws-service` - The AWS service.
7815
+ #
7816
+ # * `network-interface-permission.permission` - The type of permission
7817
+ # (`INSTANCE-ATTACH` \| `EIP-ASSOCIATE`).
7818
+ # @return [Array<Types::Filter>]
7819
+ #
7820
+ # @!attribute [rw] next_token
7821
+ # The token to request the next page of results.
7822
+ # @return [String]
7823
+ #
7824
+ # @!attribute [rw] max_results
7825
+ # The maximum number of results to return in a single call. To
7826
+ # retrieve the remaining results, make another call with the returned
7827
+ # `NextToken` value. If this parameter is not specified, up to 50
7828
+ # results are returned by default.
7829
+ # @return [Integer]
7830
+ #
7831
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeNetworkInterfacePermissionsRequest AWS API Documentation
7832
+ #
7833
+ class DescribeNetworkInterfacePermissionsRequest < Struct.new(
7834
+ :network_interface_permission_ids,
7835
+ :filters,
7836
+ :next_token,
7837
+ :max_results)
7838
+ include Aws::Structure
7839
+ end
7840
+
7841
+ # @!attribute [rw] network_interface_permissions
7842
+ # The network interface permissions.
7843
+ # @return [Array<Types::NetworkInterfacePermission>]
7844
+ #
7845
+ # @!attribute [rw] next_token
7846
+ # The token to use to retrieve the next page of results.
7847
+ # @return [String]
7848
+ #
7849
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeNetworkInterfacePermissionsResult AWS API Documentation
7850
+ #
7851
+ class DescribeNetworkInterfacePermissionsResult < Struct.new(
7852
+ :network_interface_permissions,
7853
+ :next_token)
7854
+ include Aws::Structure
7855
+ end
7856
+
7682
7857
  # Contains the parameters for DescribeNetworkInterfaces.
7683
7858
  #
7684
7859
  # @note When making an API call, you may pass DescribeNetworkInterfacesRequest
@@ -9112,7 +9287,7 @@ module Aws::EC2
9112
9287
  # * `owner-alias` - Value from an Amazon-maintained list (`amazon` \|
9113
9288
  # `aws-marketplace` \| `microsoft`) of snapshot owners. Not to be
9114
9289
  # confused with the user-configured AWS account alias, which is set
9115
- # from the IAM consolew.
9290
+ # from the IAM console.
9116
9291
  #
9117
9292
  # * `owner-id` - The ID of the AWS account that owns the snapshot.
9118
9293
  #
@@ -15857,7 +16032,7 @@ module Aws::EC2
15857
16032
  # @!attribute [rw] disable_api_termination
15858
16033
  # If the value is `true`, you can't terminate the instance using the
15859
16034
  # Amazon EC2 console, CLI, or API; otherwise, you can. You cannot use
15860
- # this paramater for Spot Instances.
16035
+ # this parameter for Spot Instances.
15861
16036
  # @return [Types::AttributeBooleanValue]
15862
16037
  #
15863
16038
  # @!attribute [rw] dry_run
@@ -17232,6 +17407,62 @@ module Aws::EC2
17232
17407
  include Aws::Structure
17233
17408
  end
17234
17409
 
17410
+ # Describes a permission for a network interface.
17411
+ #
17412
+ # @!attribute [rw] network_interface_permission_id
17413
+ # The ID of the network interface permission.
17414
+ # @return [String]
17415
+ #
17416
+ # @!attribute [rw] network_interface_id
17417
+ # The ID of the network interface.
17418
+ # @return [String]
17419
+ #
17420
+ # @!attribute [rw] aws_account_id
17421
+ # The AWS account ID.
17422
+ # @return [String]
17423
+ #
17424
+ # @!attribute [rw] aws_service
17425
+ # The AWS service.
17426
+ # @return [String]
17427
+ #
17428
+ # @!attribute [rw] permission
17429
+ # The type of permission.
17430
+ # @return [String]
17431
+ #
17432
+ # @!attribute [rw] permission_state
17433
+ # Information about the state of the permission.
17434
+ # @return [Types::NetworkInterfacePermissionState]
17435
+ #
17436
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/NetworkInterfacePermission AWS API Documentation
17437
+ #
17438
+ class NetworkInterfacePermission < Struct.new(
17439
+ :network_interface_permission_id,
17440
+ :network_interface_id,
17441
+ :aws_account_id,
17442
+ :aws_service,
17443
+ :permission,
17444
+ :permission_state)
17445
+ include Aws::Structure
17446
+ end
17447
+
17448
+ # Describes the state of a network interface permission.
17449
+ #
17450
+ # @!attribute [rw] state
17451
+ # The state of the permission.
17452
+ # @return [String]
17453
+ #
17454
+ # @!attribute [rw] status_message
17455
+ # A status message, if applicable.
17456
+ # @return [String]
17457
+ #
17458
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/NetworkInterfacePermissionState AWS API Documentation
17459
+ #
17460
+ class NetworkInterfacePermissionState < Struct.new(
17461
+ :state,
17462
+ :status_message)
17463
+ include Aws::Structure
17464
+ end
17465
+
17235
17466
  # Describes the private IPv4 address of a network interface.
17236
17467
  #
17237
17468
  # @!attribute [rw] association
@@ -459,7 +459,7 @@ module Aws::EC2
459
459
  # * `owner-alias` - Value from an Amazon-maintained list (`amazon` \|
460
460
  # `aws-marketplace` \| `microsoft`) of snapshot owners. Not to be
461
461
  # confused with the user-configured AWS account alias, which is set
462
- # from the IAM consolew.
462
+ # from the IAM console.
463
463
  #
464
464
  # * `owner-id` - The ID of the AWS account that owns the snapshot.
465
465
  #
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-ec2
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0.rc10
4
+ version: 1.0.0.rc11
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-07-06 00:00:00.000000000 Z
11
+ date: 2017-07-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sigv4
@@ -30,14 +30,14 @@ dependencies:
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: 3.0.0.rc16
33
+ version: 3.0.0.rc17
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: 3.0.0.rc16
40
+ version: 3.0.0.rc17
41
41
  description: Official AWS Ruby gem for Amazon Elastic Compute Cloud (Amazon EC2).
42
42
  This gem is part of the AWS SDK for Ruby.
43
43
  email: