aws-sdk-ec2 1.87.0 → 1.88.0

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: 21dda517188475950d29fe7f6e39614b5a01590b
4
- data.tar.gz: 5aa78a8b99f16769e3832e3d753fb2d17c97594d
3
+ metadata.gz: c5f248852b2c365ea6324b173559a6f251224657
4
+ data.tar.gz: eb6f18f32d420f90488c46b4f41a56608857bbbf
5
5
  SHA512:
6
- metadata.gz: 883e7edbf9f132e67c27eaed8acf9b0ca9956552942692c93c51cc61709803d798bf0b044d4a880550cf615388f1278c0c89e91e0e6feea78d50bcaa9b2342f5
7
- data.tar.gz: 8b258f3003a9fbcb4a315d27dc33e56a8d022cb6804aca2acdedceb9147eb3bfdea4589cbf1e61f5aa6d7372428a95978118fb07f488ce6e58a74a42558dadc8
6
+ metadata.gz: d2f357be688258ee723df816e14add07da815e6e9b60539d232cbcaa65447389a110f3056a3fc89e29d8adabc580d7a7ee97bb254c9b5849f01ff6f2f536844e
7
+ data.tar.gz: 2e388653ad6d94fd6d7d4e8758c61ad75994c72de09d93a8967c119e850967340a24798ebded76eed15632a322f3bac98f01573ca1e9e5802ba92d63ea925ddd
@@ -65,6 +65,6 @@ require_relative 'aws-sdk-ec2/customizations'
65
65
  # @service
66
66
  module Aws::EC2
67
67
 
68
- GEM_VERSION = '1.87.0'
68
+ GEM_VERSION = '1.88.0'
69
69
 
70
70
  end
@@ -1850,8 +1850,8 @@ module Aws::EC2
1850
1850
  # use with a VPC.
1851
1851
  #
1852
1852
  # An outbound rule permits instances to send traffic to the specified
1853
- # destination IPv4 or IPv6 CIDR address ranges, or to the specified
1854
- # destination security groups for the same VPC.
1853
+ # IPv4 or IPv6 CIDR address ranges, or to the instances associated with
1854
+ # the specified destination security groups.
1855
1855
  #
1856
1856
  # You specify a protocol for each rule (for example, TCP). For the TCP
1857
1857
  # and UDP protocols, you must also specify the destination port or port
@@ -2015,8 +2015,8 @@ module Aws::EC2
2015
2015
  # Adds the specified ingress rules to a security group.
2016
2016
  #
2017
2017
  # An inbound rule permits instances to receive traffic from the
2018
- # specified destination IPv4 or IPv6 CIDR address ranges, or from the
2019
- # specified destination security groups.
2018
+ # specified IPv4 or IPv6 CIDR address ranges, or from the instances
2019
+ # associated with the specified destination security groups.
2020
2020
  #
2021
2021
  # You specify a protocol for each rule (for example, TCP). For TCP and
2022
2022
  # UDP, you must also specify the destination port or port range. For
@@ -2912,20 +2912,18 @@ module Aws::EC2
2912
2912
  # this parameter is not specified, the default CMK for EBS is used. If a
2913
2913
  # `KmsKeyId` is specified, the `Encrypted` flag must also be set.
2914
2914
  #
2915
- # The CMK identifier may be provided in any of the following formats:
2915
+ # To specify a CMK, use its key ID, Amazon Resource Name (ARN), alias
2916
+ # name, or alias ARN. When using an alias name, prefix it with
2917
+ # "alias/". For example:
2916
2918
  #
2917
- # * Key ID
2919
+ # * Key ID: `1234abcd-12ab-34cd-56ef-1234567890ab`
2918
2920
  #
2919
- # * ARN using key ID. The ID ARN contains the `arn:aws:kms` namespace,
2920
- # followed by the Region of the CMK, the AWS account ID of the CMK
2921
- # owner, the `key` namespace, and then the CMK ID. For example,
2922
- # arn:aws:kms:*us-east-1*\:*012345678910*\:key/*abcd1234-a123-456a-a12b-a123b4cd56ef*.
2921
+ # * Key ARN:
2922
+ # `arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab`
2923
2923
  #
2924
- # * ARN using key alias. The alias ARN contains the `arn:aws:kms`
2925
- # namespace, followed by the Region of the CMK, the AWS account ID of
2926
- # the CMK owner, the `alias` namespace, and then the CMK alias. For
2927
- # example,
2928
- # arn:aws:kms:*us-east-1*\:*012345678910*\:alias/*ExampleAlias*.
2924
+ # * Alias name: `alias/ExampleAlias`
2925
+ #
2926
+ # * Alias ARN: `arn:aws:kms:us-east-2:111122223333:alias/ExampleAlias`
2929
2927
  #
2930
2928
  # AWS parses `KmsKeyId` asynchronously, meaning that the action you call
2931
2929
  # may appear to complete even though you provided an invalid identifier.
@@ -6541,6 +6539,83 @@ module Aws::EC2
6541
6539
  req.send_request(options)
6542
6540
  end
6543
6541
 
6542
+ # Creates crash-consistent snapshots of multiple EBS volumes and stores
6543
+ # the data in S3. Volumes are chosen by specifying an instance. Any
6544
+ # attached volumes will produce one snapshot each that is
6545
+ # crash-consistent across the instance. Boot volumes can be excluded by
6546
+ # changing the paramaters.
6547
+ #
6548
+ # @option params [String] :description
6549
+ # A description propagated to every snapshot specified by the instance.
6550
+ #
6551
+ # @option params [required, Types::InstanceSpecification] :instance_specification
6552
+ # The instance to specify which volumes should be included in the
6553
+ # snapshots.
6554
+ #
6555
+ # @option params [Array<Types::TagSpecification>] :tag_specifications
6556
+ # Tags to apply to every snapshot specified by the instance.
6557
+ #
6558
+ # @option params [Boolean] :dry_run
6559
+ # Checks whether you have the required permissions for the action
6560
+ # without actually making the request. Provides an error response. If
6561
+ # you have the required permissions, the error response is
6562
+ # DryRunOperation. Otherwise, it is UnauthorizedOperation.
6563
+ #
6564
+ # @option params [String] :copy_tags_from_source
6565
+ # Copies the tags from the specified instance to all snapshots.
6566
+ #
6567
+ # @return [Types::CreateSnapshotsResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
6568
+ #
6569
+ # * {Types::CreateSnapshotsResult#snapshots #snapshots} => Array&lt;Types::SnapshotInfo&gt;
6570
+ #
6571
+ # @example Request syntax with placeholder values
6572
+ #
6573
+ # resp = client.create_snapshots({
6574
+ # description: "String",
6575
+ # instance_specification: { # required
6576
+ # instance_id: "String",
6577
+ # exclude_boot_volume: false,
6578
+ # },
6579
+ # tag_specifications: [
6580
+ # {
6581
+ # 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, launch-template, natgateway, network-acl, network-interface, reserved-instances, route-table, security-group, snapshot, spot-instances-request, subnet, transit-gateway, transit-gateway-attachment, transit-gateway-route-table, volume, vpc, vpc-peering-connection, vpn-connection, vpn-gateway
6582
+ # tags: [
6583
+ # {
6584
+ # key: "String",
6585
+ # value: "String",
6586
+ # },
6587
+ # ],
6588
+ # },
6589
+ # ],
6590
+ # dry_run: false,
6591
+ # copy_tags_from_source: "volume", # accepts volume
6592
+ # })
6593
+ #
6594
+ # @example Response structure
6595
+ #
6596
+ # resp.snapshots #=> Array
6597
+ # resp.snapshots[0].description #=> String
6598
+ # resp.snapshots[0].tags #=> Array
6599
+ # resp.snapshots[0].tags[0].key #=> String
6600
+ # resp.snapshots[0].tags[0].value #=> String
6601
+ # resp.snapshots[0].encrypted #=> Boolean
6602
+ # resp.snapshots[0].volume_id #=> String
6603
+ # resp.snapshots[0].state #=> String, one of "pending", "completed", "error"
6604
+ # resp.snapshots[0].volume_size #=> Integer
6605
+ # resp.snapshots[0].start_time #=> Time
6606
+ # resp.snapshots[0].progress #=> String
6607
+ # resp.snapshots[0].owner_id #=> String
6608
+ # resp.snapshots[0].snapshot_id #=> String
6609
+ #
6610
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateSnapshots AWS API Documentation
6611
+ #
6612
+ # @overload create_snapshots(params = {})
6613
+ # @param [Hash] params ({})
6614
+ def create_snapshots(params = {}, options = {})
6615
+ req = build_request(:create_snapshots, params)
6616
+ req.send_request(options)
6617
+ end
6618
+
6544
6619
  # Creates a data feed for Spot Instances, enabling you to view Spot
6545
6620
  # Instance usage logs. You can create one data feed per AWS account. For
6546
6621
  # more information, see [Spot Instance Data Feed][1] in the *Amazon EC2
@@ -7148,23 +7223,23 @@ module Aws::EC2
7148
7223
  #
7149
7224
  # @option params [Boolean] :encrypted
7150
7225
  # Specifies the encryption state of the volume. The default effect of
7151
- # setting the `Encrypted` parameter to `true` through the console, API,
7152
- # or CLI depends on the volume's origin (new or from a snapshot),
7153
- # starting encryption state, ownership, and whether [account-level
7154
- # encryption][1] is enabled. Each default case can be overridden by
7155
- # specifying a customer master key (CMK) with the `KmsKeyId` parameter
7156
- # in addition to setting `Encrypted` to `true`. For a complete list of
7157
- # possible encryption cases, see [Amazon EBS
7158
- # Encryption](AWSEC2/latest/UserGuide/EBSEncryption.htm).
7226
+ # setting the `Encrypted` parameter to `true` depends on the volume
7227
+ # origin (new or from a snapshot), starting encryption state, ownership,
7228
+ # and whether [account-level encryption][1] is enabled. Each default
7229
+ # case can be overridden by specifying a customer master key (CMK) using
7230
+ # the `KmsKeyId` parameter, in addition to setting `Encrypted` to
7231
+ # `true`. For a complete list of possible encryption cases, see [Amazon
7232
+ # EBS Encryption][2].
7159
7233
  #
7160
7234
  # Encrypted Amazon EBS volumes may only be attached to instances that
7161
7235
  # support Amazon EBS encryption. For more information, see [Supported
7162
- # Instance Types][2].
7236
+ # Instance Types][3].
7163
7237
  #
7164
7238
  #
7165
7239
  #
7166
7240
  # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/account-level-encryption.html
7167
- # [2]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html#EBSEncryption_supported_instances
7241
+ # [2]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html
7242
+ # [3]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html#EBSEncryption_supported_instances
7168
7243
  #
7169
7244
  # @option params [Integer] :iops
7170
7245
  # The number of I/O operations per second (IOPS) to provision for the
@@ -8377,6 +8452,8 @@ module Aws::EC2
8377
8452
  # @option params [required, Array<String>] :flow_log_ids
8378
8453
  # One or more flow log IDs.
8379
8454
  #
8455
+ # Constraint: Maximum of 1000 flow log IDs.
8456
+ #
8380
8457
  # @return [Types::DeleteFlowLogsResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
8381
8458
  #
8382
8459
  # * {Types::DeleteFlowLogsResult#unsuccessful #unsuccessful} => Array&lt;Types::UnsuccessfulItem&gt;
@@ -11884,6 +11961,8 @@ module Aws::EC2
11884
11961
  # @option params [Array<String>] :flow_log_ids
11885
11962
  # One or more flow log IDs.
11886
11963
  #
11964
+ # Constraint: Maximum of 1000 flow log IDs.
11965
+ #
11887
11966
  # @option params [Integer] :max_results
11888
11967
  # The maximum number of results to return with a single call. To
11889
11968
  # retrieve the remaining results, make another call with the returned
@@ -21813,7 +21892,7 @@ module Aws::EC2
21813
21892
  # Any volume restored from an encrypted snapshot is also encrypted. For
21814
21893
  # more information, see [Amazon EBS Snapshots][1].
21815
21894
  #
21816
- # Once EBS encryption by default is enabled, you can no longer launch
21895
+ # After EBS encryption by default is enabled, you can no longer launch
21817
21896
  # older-generation instance types that do not support encryption. For
21818
21897
  # more information, see [Supported Instance Types][2].
21819
21898
  #
@@ -23769,7 +23848,7 @@ module Aws::EC2
23769
23848
  end
23770
23849
 
23771
23850
  # Changes the default customer master key (CMK) that your account uses
23772
- # to encrypt EBS volumes if you dont specify a CMK in the API call.
23851
+ # to encrypt EBS volumes if you don't specify a CMK in the API call.
23773
23852
  #
23774
23853
  # Your account has an AWS-managed default CMK that is used for
23775
23854
  # encrypting an EBS volume when no CMK is specified in the API call that
@@ -26641,7 +26720,14 @@ module Aws::EC2
26641
26720
  # [2]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-launch-snapshot.html
26642
26721
  #
26643
26722
  # @option params [String] :image_location
26644
- # The full path to your AMI manifest in Amazon S3 storage.
26723
+ # The full path to your AMI manifest in Amazon S3 storage. The specified
26724
+ # bucket must have the `aws-exec-read` canned access control list (ACL)
26725
+ # to ensure that it can be accessed by Amazon EC2. For more information,
26726
+ # see [Canned ACLs][1] in the *Amazon S3 Service Developer Guide*.
26727
+ #
26728
+ #
26729
+ #
26730
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#canned-acl
26645
26731
  #
26646
26732
  # @option params [String] :architecture
26647
26733
  # The architecture of the AMI.
@@ -30627,7 +30713,7 @@ module Aws::EC2
30627
30713
  params: params,
30628
30714
  config: config)
30629
30715
  context[:gem_name] = 'aws-sdk-ec2'
30630
- context[:gem_version] = '1.87.0'
30716
+ context[:gem_version] = '1.88.0'
30631
30717
  Seahorse::Client::Request.new(handlers, context)
30632
30718
  end
30633
30719
 
@@ -199,6 +199,7 @@ module Aws::EC2
199
199
  CopyImageResult = Shapes::StructureShape.new(name: 'CopyImageResult')
200
200
  CopySnapshotRequest = Shapes::StructureShape.new(name: 'CopySnapshotRequest')
201
201
  CopySnapshotResult = Shapes::StructureShape.new(name: 'CopySnapshotResult')
202
+ CopyTagsFromSource = Shapes::StringShape.new(name: 'CopyTagsFromSource')
202
203
  CpuOptions = Shapes::StructureShape.new(name: 'CpuOptions')
203
204
  CpuOptionsRequest = Shapes::StructureShape.new(name: 'CpuOptionsRequest')
204
205
  CreateCapacityReservationRequest = Shapes::StructureShape.new(name: 'CreateCapacityReservationRequest')
@@ -257,6 +258,8 @@ module Aws::EC2
257
258
  CreateSecurityGroupRequest = Shapes::StructureShape.new(name: 'CreateSecurityGroupRequest')
258
259
  CreateSecurityGroupResult = Shapes::StructureShape.new(name: 'CreateSecurityGroupResult')
259
260
  CreateSnapshotRequest = Shapes::StructureShape.new(name: 'CreateSnapshotRequest')
261
+ CreateSnapshotsRequest = Shapes::StructureShape.new(name: 'CreateSnapshotsRequest')
262
+ CreateSnapshotsResult = Shapes::StructureShape.new(name: 'CreateSnapshotsResult')
260
263
  CreateSpotDatafeedSubscriptionRequest = Shapes::StructureShape.new(name: 'CreateSpotDatafeedSubscriptionRequest')
261
264
  CreateSpotDatafeedSubscriptionResult = Shapes::StructureShape.new(name: 'CreateSpotDatafeedSubscriptionResult')
262
265
  CreateSubnetRequest = Shapes::StructureShape.new(name: 'CreateSubnetRequest')
@@ -842,6 +845,7 @@ module Aws::EC2
842
845
  InstanceNetworkInterfaceSpecificationList = Shapes::ListShape.new(name: 'InstanceNetworkInterfaceSpecificationList')
843
846
  InstancePrivateIpAddress = Shapes::StructureShape.new(name: 'InstancePrivateIpAddress')
844
847
  InstancePrivateIpAddressList = Shapes::ListShape.new(name: 'InstancePrivateIpAddressList')
848
+ InstanceSpecification = Shapes::StructureShape.new(name: 'InstanceSpecification')
845
849
  InstanceState = Shapes::StructureShape.new(name: 'InstanceState')
846
850
  InstanceStateChange = Shapes::StructureShape.new(name: 'InstanceStateChange')
847
851
  InstanceStateChangeList = Shapes::ListShape.new(name: 'InstanceStateChangeList')
@@ -1265,7 +1269,9 @@ module Aws::EC2
1265
1269
  SnapshotDetailList = Shapes::ListShape.new(name: 'SnapshotDetailList')
1266
1270
  SnapshotDiskContainer = Shapes::StructureShape.new(name: 'SnapshotDiskContainer')
1267
1271
  SnapshotIdStringList = Shapes::ListShape.new(name: 'SnapshotIdStringList')
1272
+ SnapshotInfo = Shapes::StructureShape.new(name: 'SnapshotInfo')
1268
1273
  SnapshotList = Shapes::ListShape.new(name: 'SnapshotList')
1274
+ SnapshotSet = Shapes::ListShape.new(name: 'SnapshotSet')
1269
1275
  SnapshotState = Shapes::StringShape.new(name: 'SnapshotState')
1270
1276
  SnapshotTaskDetail = Shapes::StructureShape.new(name: 'SnapshotTaskDetail')
1271
1277
  SpotAllocationStrategy = Shapes::StringShape.new(name: 'SpotAllocationStrategy')
@@ -2481,6 +2487,16 @@ module Aws::EC2
2481
2487
  CreateSnapshotRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "dryRun"))
2482
2488
  CreateSnapshotRequest.struct_class = Types::CreateSnapshotRequest
2483
2489
 
2490
+ CreateSnapshotsRequest.add_member(:description, Shapes::ShapeRef.new(shape: String, location_name: "Description"))
2491
+ CreateSnapshotsRequest.add_member(:instance_specification, Shapes::ShapeRef.new(shape: InstanceSpecification, required: true, location_name: "InstanceSpecification"))
2492
+ CreateSnapshotsRequest.add_member(:tag_specifications, Shapes::ShapeRef.new(shape: TagSpecificationList, location_name: "TagSpecification"))
2493
+ CreateSnapshotsRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "DryRun"))
2494
+ CreateSnapshotsRequest.add_member(:copy_tags_from_source, Shapes::ShapeRef.new(shape: CopyTagsFromSource, location_name: "CopyTagsFromSource"))
2495
+ CreateSnapshotsRequest.struct_class = Types::CreateSnapshotsRequest
2496
+
2497
+ CreateSnapshotsResult.add_member(:snapshots, Shapes::ShapeRef.new(shape: SnapshotSet, location_name: "snapshotSet"))
2498
+ CreateSnapshotsResult.struct_class = Types::CreateSnapshotsResult
2499
+
2484
2500
  CreateSpotDatafeedSubscriptionRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: String, required: true, location_name: "bucket"))
2485
2501
  CreateSpotDatafeedSubscriptionRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "dryRun"))
2486
2502
  CreateSpotDatafeedSubscriptionRequest.add_member(:prefix, Shapes::ShapeRef.new(shape: String, location_name: "prefix"))
@@ -4996,6 +5012,10 @@ module Aws::EC2
4996
5012
 
4997
5013
  InstancePrivateIpAddressList.member = Shapes::ShapeRef.new(shape: InstancePrivateIpAddress, location_name: "item")
4998
5014
 
5015
+ InstanceSpecification.add_member(:instance_id, Shapes::ShapeRef.new(shape: String, location_name: "InstanceId"))
5016
+ InstanceSpecification.add_member(:exclude_boot_volume, Shapes::ShapeRef.new(shape: Boolean, location_name: "ExcludeBootVolume"))
5017
+ InstanceSpecification.struct_class = Types::InstanceSpecification
5018
+
4999
5019
  InstanceState.add_member(:code, Shapes::ShapeRef.new(shape: Integer, location_name: "code"))
5000
5020
  InstanceState.add_member(:name, Shapes::ShapeRef.new(shape: InstanceStateName, location_name: "name"))
5001
5021
  InstanceState.struct_class = Types::InstanceState
@@ -6823,8 +6843,22 @@ module Aws::EC2
6823
6843
 
6824
6844
  SnapshotIdStringList.member = Shapes::ShapeRef.new(shape: String, location_name: "SnapshotId")
6825
6845
 
6846
+ SnapshotInfo.add_member(:description, Shapes::ShapeRef.new(shape: String, location_name: "description"))
6847
+ SnapshotInfo.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "tagSet"))
6848
+ SnapshotInfo.add_member(:encrypted, Shapes::ShapeRef.new(shape: Boolean, location_name: "encrypted"))
6849
+ SnapshotInfo.add_member(:volume_id, Shapes::ShapeRef.new(shape: String, location_name: "volumeId"))
6850
+ SnapshotInfo.add_member(:state, Shapes::ShapeRef.new(shape: SnapshotState, location_name: "state"))
6851
+ SnapshotInfo.add_member(:volume_size, Shapes::ShapeRef.new(shape: Integer, location_name: "volumeSize"))
6852
+ SnapshotInfo.add_member(:start_time, Shapes::ShapeRef.new(shape: MillisecondDateTime, location_name: "startTime"))
6853
+ SnapshotInfo.add_member(:progress, Shapes::ShapeRef.new(shape: String, location_name: "progress"))
6854
+ SnapshotInfo.add_member(:owner_id, Shapes::ShapeRef.new(shape: String, location_name: "ownerId"))
6855
+ SnapshotInfo.add_member(:snapshot_id, Shapes::ShapeRef.new(shape: String, location_name: "snapshotId"))
6856
+ SnapshotInfo.struct_class = Types::SnapshotInfo
6857
+
6826
6858
  SnapshotList.member = Shapes::ShapeRef.new(shape: Snapshot, location_name: "item")
6827
6859
 
6860
+ SnapshotSet.member = Shapes::ShapeRef.new(shape: SnapshotInfo, location_name: "item")
6861
+
6828
6862
  SnapshotTaskDetail.add_member(:description, Shapes::ShapeRef.new(shape: String, location_name: "description"))
6829
6863
  SnapshotTaskDetail.add_member(:disk_image_size, Shapes::ShapeRef.new(shape: Double, location_name: "diskImageSize"))
6830
6864
  SnapshotTaskDetail.add_member(:encrypted, Shapes::ShapeRef.new(shape: Boolean, location_name: "encrypted"))
@@ -8188,6 +8222,14 @@ module Aws::EC2
8188
8222
  o.output = Shapes::ShapeRef.new(shape: Snapshot)
8189
8223
  end)
8190
8224
 
8225
+ api.add_operation(:create_snapshots, Seahorse::Model::Operation.new.tap do |o|
8226
+ o.name = "CreateSnapshots"
8227
+ o.http_method = "POST"
8228
+ o.http_request_uri = "/"
8229
+ o.input = Shapes::ShapeRef.new(shape: CreateSnapshotsRequest)
8230
+ o.output = Shapes::ShapeRef.new(shape: CreateSnapshotsResult)
8231
+ end)
8232
+
8191
8233
  api.add_operation(:create_spot_datafeed_subscription, Seahorse::Model::Operation.new.tap do |o|
8192
8234
  o.name = "CreateSpotDatafeedSubscription"
8193
8235
  o.http_method = "POST"
@@ -884,23 +884,23 @@ module Aws::EC2
884
884
  # The Availability Zone in which to create the volume.
885
885
  # @option options [Boolean] :encrypted
886
886
  # Specifies the encryption state of the volume. The default effect of
887
- # setting the `Encrypted` parameter to `true` through the console, API,
888
- # or CLI depends on the volume's origin (new or from a snapshot),
889
- # starting encryption state, ownership, and whether [account-level
890
- # encryption][1] is enabled. Each default case can be overridden by
891
- # specifying a customer master key (CMK) with the `KmsKeyId` parameter
892
- # in addition to setting `Encrypted` to `true`. For a complete list of
893
- # possible encryption cases, see [Amazon EBS
894
- # Encryption](AWSEC2/latest/UserGuide/EBSEncryption.htm).
887
+ # setting the `Encrypted` parameter to `true` depends on the volume
888
+ # origin (new or from a snapshot), starting encryption state, ownership,
889
+ # and whether [account-level encryption][1] is enabled. Each default
890
+ # case can be overridden by specifying a customer master key (CMK) using
891
+ # the `KmsKeyId` parameter, in addition to setting `Encrypted` to
892
+ # `true`. For a complete list of possible encryption cases, see [Amazon
893
+ # EBS Encryption][2].
895
894
  #
896
895
  # Encrypted Amazon EBS volumes may only be attached to instances that
897
896
  # support Amazon EBS encryption. For more information, see [Supported
898
- # Instance Types][2].
897
+ # Instance Types][3].
899
898
  #
900
899
  #
901
900
  #
902
901
  # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/account-level-encryption.html
903
- # [2]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html#EBSEncryption_supported_instances
902
+ # [2]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html
903
+ # [3]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html#EBSEncryption_supported_instances
904
904
  # @option options [Integer] :iops
905
905
  # The number of I/O operations per second (IOPS) to provision for the
906
906
  # volume, with a maximum ratio of 50 IOPS/GiB. Range is 100 to 64,000
@@ -1157,7 +1157,14 @@ module Aws::EC2
1157
1157
  # })
1158
1158
  # @param [Hash] options ({})
1159
1159
  # @option options [String] :image_location
1160
- # The full path to your AMI manifest in Amazon S3 storage.
1160
+ # The full path to your AMI manifest in Amazon S3 storage. The specified
1161
+ # bucket must have the `aws-exec-read` canned access control list (ACL)
1162
+ # to ensure that it can be accessed by Amazon EC2. For more information,
1163
+ # see [Canned ACLs][1] in the *Amazon S3 Service Developer Guide*.
1164
+ #
1165
+ #
1166
+ #
1167
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#canned-acl
1161
1168
  # @option options [String] :architecture
1162
1169
  # The architecture of the AMI.
1163
1170
  #
@@ -3681,20 +3681,18 @@ module Aws::EC2
3681
3681
  # this parameter is not specified, the default CMK for EBS is used. If
3682
3682
  # a `KmsKeyId` is specified, the `Encrypted` flag must also be set.
3683
3683
  #
3684
- # The CMK identifier may be provided in any of the following formats:
3684
+ # To specify a CMK, use its key ID, Amazon Resource Name (ARN), alias
3685
+ # name, or alias ARN. When using an alias name, prefix it with
3686
+ # "alias/". For example:
3685
3687
  #
3686
- # * Key ID
3688
+ # * Key ID: `1234abcd-12ab-34cd-56ef-1234567890ab`
3687
3689
  #
3688
- # * ARN using key ID. The ID ARN contains the `arn:aws:kms` namespace,
3689
- # followed by the Region of the CMK, the AWS account ID of the CMK
3690
- # owner, the `key` namespace, and then the CMK ID. For example,
3691
- # arn:aws:kms:*us-east-1*\:*012345678910*\:key/*abcd1234-a123-456a-a12b-a123b4cd56ef*.
3690
+ # * Key ARN:
3691
+ # `arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab`
3692
3692
  #
3693
- # * ARN using key alias. The alias ARN contains the `arn:aws:kms`
3694
- # namespace, followed by the Region of the CMK, the AWS account ID
3695
- # of the CMK owner, the `alias` namespace, and then the CMK alias.
3696
- # For example,
3697
- # arn:aws:kms:*us-east-1*\:*012345678910*\:alias/*ExampleAlias*.
3693
+ # * Alias name: `alias/ExampleAlias`
3694
+ #
3695
+ # * Alias ARN: `arn:aws:kms:us-east-2:111122223333:alias/ExampleAlias`
3698
3696
  #
3699
3697
  # AWS parses `KmsKeyId` asynchronously, meaning that the action you
3700
3698
  # call may appear to complete even though you provided an invalid
@@ -6431,6 +6429,77 @@ module Aws::EC2
6431
6429
  include Aws::Structure
6432
6430
  end
6433
6431
 
6432
+ # @note When making an API call, you may pass CreateSnapshotsRequest
6433
+ # data as a hash:
6434
+ #
6435
+ # {
6436
+ # description: "String",
6437
+ # instance_specification: { # required
6438
+ # instance_id: "String",
6439
+ # exclude_boot_volume: false,
6440
+ # },
6441
+ # tag_specifications: [
6442
+ # {
6443
+ # 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, launch-template, natgateway, network-acl, network-interface, reserved-instances, route-table, security-group, snapshot, spot-instances-request, subnet, transit-gateway, transit-gateway-attachment, transit-gateway-route-table, volume, vpc, vpc-peering-connection, vpn-connection, vpn-gateway
6444
+ # tags: [
6445
+ # {
6446
+ # key: "String",
6447
+ # value: "String",
6448
+ # },
6449
+ # ],
6450
+ # },
6451
+ # ],
6452
+ # dry_run: false,
6453
+ # copy_tags_from_source: "volume", # accepts volume
6454
+ # }
6455
+ #
6456
+ # @!attribute [rw] description
6457
+ # A description propagated to every snapshot specified by the
6458
+ # instance.
6459
+ # @return [String]
6460
+ #
6461
+ # @!attribute [rw] instance_specification
6462
+ # The instance to specify which volumes should be included in the
6463
+ # snapshots.
6464
+ # @return [Types::InstanceSpecification]
6465
+ #
6466
+ # @!attribute [rw] tag_specifications
6467
+ # Tags to apply to every snapshot specified by the instance.
6468
+ # @return [Array<Types::TagSpecification>]
6469
+ #
6470
+ # @!attribute [rw] dry_run
6471
+ # Checks whether you have the required permissions for the action
6472
+ # without actually making the request. Provides an error response. If
6473
+ # you have the required permissions, the error response is
6474
+ # DryRunOperation. Otherwise, it is UnauthorizedOperation.
6475
+ # @return [Boolean]
6476
+ #
6477
+ # @!attribute [rw] copy_tags_from_source
6478
+ # Copies the tags from the specified instance to all snapshots.
6479
+ # @return [String]
6480
+ #
6481
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateSnapshotsRequest AWS API Documentation
6482
+ #
6483
+ class CreateSnapshotsRequest < Struct.new(
6484
+ :description,
6485
+ :instance_specification,
6486
+ :tag_specifications,
6487
+ :dry_run,
6488
+ :copy_tags_from_source)
6489
+ include Aws::Structure
6490
+ end
6491
+
6492
+ # @!attribute [rw] snapshots
6493
+ # List of snapshots.
6494
+ # @return [Array<Types::SnapshotInfo>]
6495
+ #
6496
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateSnapshotsResult AWS API Documentation
6497
+ #
6498
+ class CreateSnapshotsResult < Struct.new(
6499
+ :snapshots)
6500
+ include Aws::Structure
6501
+ end
6502
+
6434
6503
  # Contains the parameters for CreateSpotDatafeedSubscription.
6435
6504
  #
6436
6505
  # @note When making an API call, you may pass CreateSpotDatafeedSubscriptionRequest
@@ -6969,23 +7038,23 @@ module Aws::EC2
6969
7038
  #
6970
7039
  # @!attribute [rw] encrypted
6971
7040
  # Specifies the encryption state of the volume. The default effect of
6972
- # setting the `Encrypted` parameter to `true` through the console,
6973
- # API, or CLI depends on the volume's origin (new or from a
6974
- # snapshot), starting encryption state, ownership, and whether
6975
- # [account-level encryption][1] is enabled. Each default case can be
6976
- # overridden by specifying a customer master key (CMK) with the
6977
- # `KmsKeyId` parameter in addition to setting `Encrypted` to `true`.
6978
- # For a complete list of possible encryption cases, see [Amazon EBS
6979
- # Encryption](AWSEC2/latest/UserGuide/EBSEncryption.htm).
7041
+ # setting the `Encrypted` parameter to `true` depends on the volume
7042
+ # origin (new or from a snapshot), starting encryption state,
7043
+ # ownership, and whether [account-level encryption][1] is enabled.
7044
+ # Each default case can be overridden by specifying a customer master
7045
+ # key (CMK) using the `KmsKeyId` parameter, in addition to setting
7046
+ # `Encrypted` to `true`. For a complete list of possible encryption
7047
+ # cases, see [Amazon EBS Encryption][2].
6980
7048
  #
6981
7049
  # Encrypted Amazon EBS volumes may only be attached to instances that
6982
7050
  # support Amazon EBS encryption. For more information, see [Supported
6983
- # Instance Types][2].
7051
+ # Instance Types][3].
6984
7052
  #
6985
7053
  #
6986
7054
  #
6987
7055
  # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/account-level-encryption.html
6988
- # [2]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html#EBSEncryption_supported_instances
7056
+ # [2]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html
7057
+ # [3]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html#EBSEncryption_supported_instances
6989
7058
  # @return [Boolean]
6990
7059
  #
6991
7060
  # @!attribute [rw] iops
@@ -8039,6 +8108,8 @@ module Aws::EC2
8039
8108
  #
8040
8109
  # @!attribute [rw] flow_log_ids
8041
8110
  # One or more flow log IDs.
8111
+ #
8112
+ # Constraint: Maximum of 1000 flow log IDs.
8042
8113
  # @return [Array<String>]
8043
8114
  #
8044
8115
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteFlowLogsRequest AWS API Documentation
@@ -10918,6 +10989,8 @@ module Aws::EC2
10918
10989
  #
10919
10990
  # @!attribute [rw] flow_log_ids
10920
10991
  # One or more flow log IDs.
10992
+ #
10993
+ # Constraint: Maximum of 1000 flow log IDs.
10921
10994
  # @return [Array<String>]
10922
10995
  #
10923
10996
  # @!attribute [rw] max_results
@@ -23359,7 +23432,7 @@ module Aws::EC2
23359
23432
  # If you are not creating an EFA, specify `interface` or omit this
23360
23433
  # parameter.
23361
23434
  #
23362
- # Valide values: `interface` \| `efa`
23435
+ # Valid values: `interface` \| `efa`
23363
23436
  #
23364
23437
  #
23365
23438
  #
@@ -23415,6 +23488,32 @@ module Aws::EC2
23415
23488
  include Aws::Structure
23416
23489
  end
23417
23490
 
23491
+ # The instance details to specify which volumes should be snapshotted.
23492
+ #
23493
+ # @note When making an API call, you may pass InstanceSpecification
23494
+ # data as a hash:
23495
+ #
23496
+ # {
23497
+ # instance_id: "String",
23498
+ # exclude_boot_volume: false,
23499
+ # }
23500
+ #
23501
+ # @!attribute [rw] instance_id
23502
+ # The instance to specify which volumes should be snapshotted.
23503
+ # @return [String]
23504
+ #
23505
+ # @!attribute [rw] exclude_boot_volume
23506
+ # Excludes the root volume from being snapshotted.
23507
+ # @return [Boolean]
23508
+ #
23509
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/InstanceSpecification AWS API Documentation
23510
+ #
23511
+ class InstanceSpecification < Struct.new(
23512
+ :instance_id,
23513
+ :exclude_boot_volume)
23514
+ include Aws::Structure
23515
+ end
23516
+
23418
23517
  # Describes the current state of an instance.
23419
23518
  #
23420
23519
  # @!attribute [rw] code
@@ -24762,7 +24861,18 @@ module Aws::EC2
24762
24861
  # @return [Array<String>]
24763
24862
  #
24764
24863
  # @!attribute [rw] interface_type
24765
- # The type of networking interface.
24864
+ # The type of network interface. To create an Elastic Fabric Adapter
24865
+ # (EFA), specify `efa`. For more information, see [Elastic Fabric
24866
+ # Adapter][1] in the *Amazon Elastic Compute Cloud User Guide*.
24867
+ #
24868
+ # If you are not creating an EFA, specify `interface` or omit this
24869
+ # parameter.
24870
+ #
24871
+ # Valid values: `interface` \| `efa`
24872
+ #
24873
+ #
24874
+ #
24875
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/efa.html
24766
24876
  # @return [String]
24767
24877
  #
24768
24878
  # @!attribute [rw] ipv_6_address_count
@@ -29306,7 +29416,15 @@ module Aws::EC2
29306
29416
  # }
29307
29417
  #
29308
29418
  # @!attribute [rw] image_location
29309
- # The full path to your AMI manifest in Amazon S3 storage.
29419
+ # The full path to your AMI manifest in Amazon S3 storage. The
29420
+ # specified bucket must have the `aws-exec-read` canned access control
29421
+ # list (ACL) to ensure that it can be accessed by Amazon EC2. For more
29422
+ # information, see [Canned ACLs][1] in the *Amazon S3 Service
29423
+ # Developer Guide*.
29424
+ #
29425
+ #
29426
+ #
29427
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#canned-acl
29310
29428
  # @return [String]
29311
29429
  #
29312
29430
  # @!attribute [rw] architecture
@@ -34478,6 +34596,66 @@ module Aws::EC2
34478
34596
  include Aws::Structure
34479
34597
  end
34480
34598
 
34599
+ # Object that contains information about a snapshot.
34600
+ #
34601
+ # @!attribute [rw] description
34602
+ # Description specified by the CreateSnapshotRequest that has been
34603
+ # applied to all snapshots.
34604
+ # @return [String]
34605
+ #
34606
+ # @!attribute [rw] tags
34607
+ # Tags associated with this snapshot.
34608
+ # @return [Array<Types::Tag>]
34609
+ #
34610
+ # @!attribute [rw] encrypted
34611
+ # Boolean that specifies whether or not this snapshot is encrypted.
34612
+ # @return [Boolean]
34613
+ #
34614
+ # @!attribute [rw] volume_id
34615
+ # Source volume from which this snapshot was created.
34616
+ # @return [String]
34617
+ #
34618
+ # @!attribute [rw] state
34619
+ # Current state of the snapshot.
34620
+ # @return [String]
34621
+ #
34622
+ # @!attribute [rw] volume_size
34623
+ # Size of the volume from which this snapshot was created.
34624
+ # @return [Integer]
34625
+ #
34626
+ # @!attribute [rw] start_time
34627
+ # Time this snapshot was started. This is the same for all snapshots
34628
+ # initiated by the same request.
34629
+ # @return [Time]
34630
+ #
34631
+ # @!attribute [rw] progress
34632
+ # Progress this snapshot has made towards completing.
34633
+ # @return [String]
34634
+ #
34635
+ # @!attribute [rw] owner_id
34636
+ # Account id used when creating this snapshot.
34637
+ # @return [String]
34638
+ #
34639
+ # @!attribute [rw] snapshot_id
34640
+ # Snapshot id that can be used to describe this snapshot.
34641
+ # @return [String]
34642
+ #
34643
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/SnapshotInfo AWS API Documentation
34644
+ #
34645
+ class SnapshotInfo < Struct.new(
34646
+ :description,
34647
+ :tags,
34648
+ :encrypted,
34649
+ :volume_id,
34650
+ :state,
34651
+ :volume_size,
34652
+ :start_time,
34653
+ :progress,
34654
+ :owner_id,
34655
+ :snapshot_id)
34656
+ include Aws::Structure
34657
+ end
34658
+
34481
34659
  # Details about the import snapshot task.
34482
34660
  #
34483
34661
  # @!attribute [rw] description
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.87.0
4
+ version: 1.88.0
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: 2019-05-23 00:00:00.000000000 Z
11
+ date: 2019-05-29 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sigv4