aws-sdk-ec2 1.450.0 → 1.451.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
  SHA256:
3
- metadata.gz: 3cfc2713df2791836117e0645f8d70d719af91828a8ce406f187196faa552956
4
- data.tar.gz: 8eb7d7743cc6ab220eea905d959716d84775cd38971b5dfa6ee7f7cd84edec56
3
+ metadata.gz: 16e74014b6f1e1387fd83bd97bede3ede98e3d1d7c3fb4410dace6678e426596
4
+ data.tar.gz: 2d7ba5199968e244df5562a7e9dfe2808384b530036ac7db90c9df8d16e218de
5
5
  SHA512:
6
- metadata.gz: e72e2c60f3ecf42df7b2109aae11fff024c7b5ebdb1994af48891fd4a3651c98cf2f6f8884db8470779ed78d27cbc5bf1a17ccf06ee17a661a50b0f0170f46d1
7
- data.tar.gz: 518c09399e4b341b00497ecc19458a49d5b04ff1fe38bc2d49aed35762f5ebe2b9c7aee5021bf4168af621724469cf806a3dda2537532e1642d6fd68df6033ce
6
+ metadata.gz: 69d1ceaff24e9867bccef931192b5e16dd721be0097345df896bc8e7309c765cfd959eed06ececbb89d299d1fb8ee0a2cf14191c361489424079c15b31bdf0eb
7
+ data.tar.gz: dc098d33d87fb5f1b180f78a3c4ad9b9bcc697a7ef2d6bd9765cdd215dda331af658c6a38e57ad8f44fde732431dcb0a02f25c2f348ec17a44ac7f3895b0ef50
data/CHANGELOG.md CHANGED
@@ -1,6 +1,11 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.451.0 (2024-04-23)
5
+ ------------------
6
+
7
+ * Feature - This release introduces EC2 AMI Deregistration Protection, a new AMI property that can be enabled by customers to protect an AMI against an unintended deregistration. This release also enables the AMI owners to view the AMI 'LastLaunchedTime' in DescribeImages API.
8
+
4
9
  1.450.0 (2024-04-17)
5
10
  ------------------
6
11
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.450.0
1
+ 1.451.0
@@ -6050,8 +6050,8 @@ module Aws::EC2
6050
6050
  # supported. For more information about NetBIOS node types, see [RFC
6051
6051
  # 2132][2].
6052
6052
  #
6053
- # * `ipv6-preferred-lease-time` - A value (in seconds, minutes, hours,
6054
- # or years) for how frequently a running instance with an IPv6
6053
+ # * `ipv6-address-preferred-lease-time` - A value (in seconds, minutes,
6054
+ # hours, or years) for how frequently a running instance with an IPv6
6055
6055
  # assigned to it goes through DHCPv6 lease renewal. Acceptable values
6056
6056
  # are between 140 and 2147483647 seconds (approximately 68 years). If
6057
6057
  # no value is entered, the default lease time is 140 seconds. If you
@@ -8126,11 +8126,11 @@ module Aws::EC2
8126
8126
  # For more information, see [Launch an instance from a launch
8127
8127
  # template][1] in the *Amazon Elastic Compute Cloud User Guide*.
8128
8128
  #
8129
- # If you want to clone an existing launch template as the basis for
8130
- # creating a new launch template, you can use the Amazon EC2 console.
8131
- # The API, SDKs, and CLI do not support cloning a template. For more
8132
- # information, see [Create a launch template from an existing launch
8133
- # template][2] in the *Amazon Elastic Compute Cloud User Guide*.
8129
+ # To clone an existing launch template as the basis for a new launch
8130
+ # template, use the Amazon EC2 console. The API, SDKs, and CLI do not
8131
+ # support cloning a template. For more information, see [Create a launch
8132
+ # template from an existing launch template][2] in the *Amazon Elastic
8133
+ # Compute Cloud User Guide*.
8134
8134
  #
8135
8135
  #
8136
8136
  #
@@ -8167,12 +8167,10 @@ module Aws::EC2
8167
8167
  # The tags to apply to the launch template on creation. To tag the
8168
8168
  # launch template, the resource type must be `launch-template`.
8169
8169
  #
8170
- # <note markdown="1"> To specify the tags for the resources that are created when an
8170
+ # To specify the tags for the resources that are created when an
8171
8171
  # instance is launched, you must use the `TagSpecifications` parameter
8172
8172
  # in the [launch template data][1] structure.
8173
8173
  #
8174
- # </note>
8175
- #
8176
8174
  #
8177
8175
  #
8178
8176
  # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RequestLaunchTemplateData.html
@@ -8499,17 +8497,18 @@ module Aws::EC2
8499
8497
  req.send_request(options)
8500
8498
  end
8501
8499
 
8502
- # Creates a new version of a launch template. You can specify an
8503
- # existing version of launch template from which to base the new
8504
- # version.
8500
+ # Creates a new version of a launch template. You must specify an
8501
+ # existing launch template, either by name or ID. You can determine
8502
+ # whether the new version inherits parameters from a source version, and
8503
+ # add or overwrite parameters as needed.
8505
8504
  #
8506
8505
  # Launch template versions are numbered in the order in which they are
8507
- # created. You cannot specify, change, or replace the numbering of
8506
+ # created. You can't specify, change, or replace the numbering of
8508
8507
  # launch template versions.
8509
8508
  #
8510
8509
  # Launch templates are immutable; after you create a launch template,
8511
8510
  # you can't modify it. Instead, you can create a new version of the
8512
- # launch template that includes any changes you require.
8511
+ # launch template that includes the changes that you require.
8513
8512
  #
8514
8513
  # For more information, see [Modify a launch template (manage launch
8515
8514
  # template versions)][1] in the *Amazon Elastic Compute Cloud User
@@ -8539,22 +8538,27 @@ module Aws::EC2
8539
8538
  # @option params [String] :launch_template_id
8540
8539
  # The ID of the launch template.
8541
8540
  #
8542
- # You must specify either the `LaunchTemplateId` or the
8543
- # `LaunchTemplateName`, but not both.
8541
+ # You must specify either the launch template ID or the launch template
8542
+ # name, but not both.
8544
8543
  #
8545
8544
  # @option params [String] :launch_template_name
8546
8545
  # The name of the launch template.
8547
8546
  #
8548
- # You must specify the `LaunchTemplateName` or the `LaunchTemplateId`,
8549
- # but not both.
8547
+ # You must specify either the launch template ID or the launch template
8548
+ # name, but not both.
8550
8549
  #
8551
8550
  # @option params [String] :source_version
8552
- # The version number of the launch template version on which to base the
8553
- # new version. The new version inherits the same launch parameters as
8554
- # the source version, except for parameters that you specify in
8555
- # `LaunchTemplateData`. Snapshots applied to the block device mapping
8556
- # are ignored when creating a new version unless they are explicitly
8557
- # included.
8551
+ # The version of the launch template on which to base the new version.
8552
+ # Snapshots applied to the block device mapping are ignored when
8553
+ # creating a new version unless they are explicitly included.
8554
+ #
8555
+ # If you specify this parameter, the new version inherits the launch
8556
+ # parameters from the source version. If you specify additional launch
8557
+ # parameters for the new version, they overwrite any corresponding
8558
+ # launch parameters inherited from the source version.
8559
+ #
8560
+ # If you omit this parameter, the new version contains only the launch
8561
+ # parameters that you specify for the new version.
8558
8562
  #
8559
8563
  # @option params [String] :version_description
8560
8564
  # A description for the version of the launch template.
@@ -16374,14 +16378,14 @@ module Aws::EC2
16374
16378
  # @option params [String] :launch_template_id
16375
16379
  # The ID of the launch template.
16376
16380
  #
16377
- # You must specify either the `LaunchTemplateId` or the
16378
- # `LaunchTemplateName`, but not both.
16381
+ # You must specify either the launch template ID or the launch template
16382
+ # name, but not both.
16379
16383
  #
16380
16384
  # @option params [String] :launch_template_name
16381
16385
  # The name of the launch template.
16382
16386
  #
16383
- # You must specify either the `LaunchTemplateName` or the
16384
- # `LaunchTemplateId`, but not both.
16387
+ # You must specify either the launch template ID or the launch template
16388
+ # name, but not both.
16385
16389
  #
16386
16390
  # @return [Types::DeleteLaunchTemplateResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
16387
16391
  #
@@ -16465,14 +16469,14 @@ module Aws::EC2
16465
16469
  # @option params [String] :launch_template_id
16466
16470
  # The ID of the launch template.
16467
16471
  #
16468
- # You must specify either the `LaunchTemplateId` or the
16469
- # `LaunchTemplateName`, but not both.
16472
+ # You must specify either the launch template ID or the launch template
16473
+ # name, but not both.
16470
16474
  #
16471
16475
  # @option params [String] :launch_template_name
16472
16476
  # The name of the launch template.
16473
16477
  #
16474
- # You must specify either the `LaunchTemplateName` or the
16475
- # `LaunchTemplateId`, but not both.
16478
+ # You must specify either the launch template ID or the launch template
16479
+ # name, but not both.
16476
16480
  #
16477
16481
  # @option params [required, Array<String>] :versions
16478
16482
  # The version numbers of one or more launch template versions to delete.
@@ -23360,6 +23364,7 @@ module Aws::EC2
23360
23364
  # * {Types::ImageAttribute#uefi_data #uefi_data} => Types::AttributeValue
23361
23365
  # * {Types::ImageAttribute#last_launched_time #last_launched_time} => Types::AttributeValue
23362
23366
  # * {Types::ImageAttribute#imds_support #imds_support} => Types::AttributeValue
23367
+ # * {Types::ImageAttribute#deregistration_protection #deregistration_protection} => Types::AttributeValue
23363
23368
  #
23364
23369
  #
23365
23370
  # @example Example: To describe the launch permissions for an AMI
@@ -23384,7 +23389,7 @@ module Aws::EC2
23384
23389
  # @example Request syntax with placeholder values
23385
23390
  #
23386
23391
  # resp = client.describe_image_attribute({
23387
- # attribute: "description", # required, accepts description, kernel, ramdisk, launchPermission, productCodes, blockDeviceMapping, sriovNetSupport, bootMode, tpmSupport, uefiData, lastLaunchedTime, imdsSupport
23392
+ # attribute: "description", # required, accepts description, kernel, ramdisk, launchPermission, productCodes, blockDeviceMapping, sriovNetSupport, bootMode, tpmSupport, uefiData, lastLaunchedTime, imdsSupport, deregistrationProtection
23388
23393
  # image_id: "ImageId", # required
23389
23394
  # dry_run: false,
23390
23395
  # })
@@ -23422,6 +23427,7 @@ module Aws::EC2
23422
23427
  # resp.uefi_data #=> <Hash,Array,String,Numeric,Boolean,IO,Set,nil>
23423
23428
  # resp.last_launched_time #=> <Hash,Array,String,Numeric,Boolean,IO,Set,nil>
23424
23429
  # resp.imds_support #=> <Hash,Array,String,Numeric,Boolean,IO,Set,nil>
23430
+ # resp.deregistration_protection #=> <Hash,Array,String,Numeric,Boolean,IO,Set,nil>
23425
23431
  #
23426
23432
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeImageAttribute AWS API Documentation
23427
23433
  #
@@ -23445,6 +23451,9 @@ module Aws::EC2
23445
23451
  # image will eventually return an error indicating that the AMI ID
23446
23452
  # cannot be found.
23447
23453
  #
23454
+ # We strongly recommend using only paginated requests. Unpaginated
23455
+ # requests are susceptible to throttling and timeouts.
23456
+ #
23448
23457
  # <note markdown="1"> The order of the elements in the response, including those within
23449
23458
  # nested structures, might vary. Applications should not assume the
23450
23459
  # elements appear in a particular order.
@@ -23741,6 +23750,8 @@ module Aws::EC2
23741
23750
  # resp.images[0].deprecation_time #=> String
23742
23751
  # resp.images[0].imds_support #=> String, one of "v2.0"
23743
23752
  # resp.images[0].source_instance_id #=> String
23753
+ # resp.images[0].deregistration_protection #=> String
23754
+ # resp.images[0].last_launched_time #=> String
23744
23755
  # resp.next_token #=> String
23745
23756
  #
23746
23757
  #
@@ -25254,6 +25265,9 @@ module Aws::EC2
25254
25265
  # the call fails. If you describe instances and specify only instance
25255
25266
  # IDs that are in an unaffected zone, the call works normally.
25256
25267
  #
25268
+ # We strongly recommend using only paginated requests. Unpaginated
25269
+ # requests are susceptible to throttling and timeouts.
25270
+ #
25257
25271
  # <note markdown="1"> The order of the elements in the response, including those within
25258
25272
  # nested structures, might vary. Applications should not assume the
25259
25273
  # elements appear in a particular order.
@@ -26762,8 +26776,8 @@ module Aws::EC2
26762
26776
  # The ID of the launch template.
26763
26777
  #
26764
26778
  # To describe one or more versions of a specified launch template, you
26765
- # must specify either the `LaunchTemplateId` or the
26766
- # `LaunchTemplateName`, but not both.
26779
+ # must specify either the launch template ID or the launch template
26780
+ # name, but not both.
26767
26781
  #
26768
26782
  # To describe all the latest or default launch template versions in your
26769
26783
  # account, you must omit this parameter.
@@ -26772,8 +26786,8 @@ module Aws::EC2
26772
26786
  # The name of the launch template.
26773
26787
  #
26774
26788
  # To describe one or more versions of a specified launch template, you
26775
- # must specify either the `LaunchTemplateName` or the
26776
- # `LaunchTemplateId`, but not both.
26789
+ # must specify either the launch template name or the launch template
26790
+ # ID, but not both.
26777
26791
  #
26778
26792
  # To describe all the latest or default launch template versions in your
26779
26793
  # account, you must omit this parameter.
@@ -29795,6 +29809,9 @@ module Aws::EC2
29795
29809
  # `mac-address`, `private-dns-name`, `private-ip-address`,
29796
29810
  # `private-dns-name`, `subnet-id`, or `vpc-id`.
29797
29811
  #
29812
+ # We strongly recommend using only paginated requests. Unpaginated
29813
+ # requests are susceptible to throttling and timeouts.
29814
+ #
29798
29815
  # @option params [Array<Types::Filter>] :filters
29799
29816
  # One or more filters.
29800
29817
  #
@@ -32240,6 +32257,9 @@ module Aws::EC2
32240
32257
  # For more information about EBS snapshots, see [Amazon EBS
32241
32258
  # snapshots][2] in the *Amazon EBS User Guide*.
32242
32259
  #
32260
+ # We strongly recommend using only paginated requests. Unpaginated
32261
+ # requests are susceptible to throttling and timeouts.
32262
+ #
32243
32263
  #
32244
32264
  #
32245
32265
  # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html#api-pagination
@@ -33981,6 +34001,9 @@ module Aws::EC2
33981
34001
  # For more information about tags, see [Tag your Amazon EC2
33982
34002
  # resources][1] in the *Amazon Elastic Compute Cloud User Guide*.
33983
34003
  #
34004
+ # We strongly recommend using only paginated requests. Unpaginated
34005
+ # requests are susceptible to throttling and timeouts.
34006
+ #
33984
34007
  # <note markdown="1"> The order of the elements in the response, including those within
33985
34008
  # nested structures, might vary. Applications should not assume the
33986
34009
  # elements appear in a particular order.
@@ -34004,16 +34027,8 @@ module Aws::EC2
34004
34027
  #
34005
34028
  # * `resource-id` - The ID of the resource.
34006
34029
  #
34007
- # * `resource-type` - The resource type (`customer-gateway` \|
34008
- # `dedicated-host` \| `dhcp-options` \| `elastic-ip` \| `fleet` \|
34009
- # `fpga-image` \| `host-reservation` \| `image` \| `instance` \|
34010
- # `internet-gateway` \| `key-pair` \| `launch-template` \|
34011
- # `natgateway` \| `network-acl` \| `network-interface` \|
34012
- # `placement-group` \| `reserved-instances` \| `route-table` \|
34013
- # `security-group` \| `snapshot` \| `spot-instances-request` \|
34014
- # `subnet` \| `volume` \| `vpc` \| `vpc-endpoint` \|
34015
- # `vpc-endpoint-service` \| `vpc-peering-connection` \|
34016
- # `vpn-connection` \| `vpn-gateway`).
34030
+ # * `resource-type` - The resource type. For a list of possible values,
34031
+ # see [TagSpecification][1].
34017
34032
  #
34018
34033
  # * `tag`:&lt;key&gt; - The key/value combination of the tag. For
34019
34034
  # example, specify "tag:Owner" for the filter name and "TeamA" for
@@ -34021,6 +34036,10 @@ module Aws::EC2
34021
34036
  #
34022
34037
  # * `value` - The tag value.
34023
34038
  #
34039
+ #
34040
+ #
34041
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_TagSpecification.html
34042
+ #
34024
34043
  # @option params [Integer] :max_results
34025
34044
  # The maximum number of items to return for this request. This value can
34026
34045
  # be between 5 and 1000. To get the next page of items, make another
@@ -36026,6 +36045,9 @@ module Aws::EC2
36026
36045
  # For more information about EBS volumes, see [Amazon EBS volumes][2] in
36027
36046
  # the *Amazon EBS User Guide*.
36028
36047
  #
36048
+ # We strongly recommend using only paginated requests. Unpaginated
36049
+ # requests are susceptible to throttling and timeouts.
36050
+ #
36029
36051
  # <note markdown="1"> The order of the elements in the response, including those within
36030
36052
  # nested structures, might vary. Applications should not assume the
36031
36053
  # elements appear in a particular order.
@@ -38552,6 +38574,54 @@ module Aws::EC2
38552
38574
  req.send_request(options)
38553
38575
  end
38554
38576
 
38577
+ # Disables deregistration protection for an AMI. When deregistration
38578
+ # protection is disabled, the AMI can be deregistered.
38579
+ #
38580
+ # If you chose to include a 24-hour cooldown period when you enabled
38581
+ # deregistration protection for the AMI, then, when you disable
38582
+ # deregistration protection, you won’t immediately be able to deregister
38583
+ # the AMI.
38584
+ #
38585
+ # For more information, see [Protect an AMI from deregistration][1] in
38586
+ # the *Amazon EC2 User Guide*.
38587
+ #
38588
+ #
38589
+ #
38590
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/deregister-ami.html#ami-deregistration-protection
38591
+ #
38592
+ # @option params [required, String] :image_id
38593
+ # The ID of the AMI.
38594
+ #
38595
+ # @option params [Boolean] :dry_run
38596
+ # Checks whether you have the required permissions for the action,
38597
+ # without actually making the request, and provides an error response.
38598
+ # If you have the required permissions, the error response is
38599
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
38600
+ #
38601
+ # @return [Types::DisableImageDeregistrationProtectionResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
38602
+ #
38603
+ # * {Types::DisableImageDeregistrationProtectionResult#return #return} => String
38604
+ #
38605
+ # @example Request syntax with placeholder values
38606
+ #
38607
+ # resp = client.disable_image_deregistration_protection({
38608
+ # image_id: "ImageId", # required
38609
+ # dry_run: false,
38610
+ # })
38611
+ #
38612
+ # @example Response structure
38613
+ #
38614
+ # resp.return #=> String
38615
+ #
38616
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisableImageDeregistrationProtection AWS API Documentation
38617
+ #
38618
+ # @overload disable_image_deregistration_protection(params = {})
38619
+ # @param [Hash] params ({})
38620
+ def disable_image_deregistration_protection(params = {}, options = {})
38621
+ req = build_request(:disable_image_deregistration_protection, params)
38622
+ req.send_request(options)
38623
+ end
38624
+
38555
38625
  # Disable the IPAM account. For more information, see [Enable
38556
38626
  # integration with Organizations][1] in the *Amazon VPC IPAM User
38557
38627
  # Guide*.
@@ -40096,6 +40166,57 @@ module Aws::EC2
40096
40166
  req.send_request(options)
40097
40167
  end
40098
40168
 
40169
+ # Enables deregistration protection for an AMI. When deregistration
40170
+ # protection is enabled, the AMI can't be deregistered.
40171
+ #
40172
+ # To allow the AMI to be deregistered, you must first disable
40173
+ # deregistration protection using DisableImageDeregistrationProtection.
40174
+ #
40175
+ # For more information, see [Protect an AMI from deregistration][1] in
40176
+ # the *Amazon EC2 User Guide*.
40177
+ #
40178
+ #
40179
+ #
40180
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/deregister-ami.html#ami-deregistration-protection
40181
+ #
40182
+ # @option params [required, String] :image_id
40183
+ # The ID of the AMI.
40184
+ #
40185
+ # @option params [Boolean] :with_cooldown
40186
+ # If `true`, enforces deregistration protection for 24 hours after
40187
+ # deregistration protection is disabled.
40188
+ #
40189
+ # @option params [Boolean] :dry_run
40190
+ # Checks whether you have the required permissions for the action,
40191
+ # without actually making the request, and provides an error response.
40192
+ # If you have the required permissions, the error response is
40193
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
40194
+ #
40195
+ # @return [Types::EnableImageDeregistrationProtectionResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
40196
+ #
40197
+ # * {Types::EnableImageDeregistrationProtectionResult#return #return} => String
40198
+ #
40199
+ # @example Request syntax with placeholder values
40200
+ #
40201
+ # resp = client.enable_image_deregistration_protection({
40202
+ # image_id: "ImageId", # required
40203
+ # with_cooldown: false,
40204
+ # dry_run: false,
40205
+ # })
40206
+ #
40207
+ # @example Response structure
40208
+ #
40209
+ # resp.return #=> String
40210
+ #
40211
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/EnableImageDeregistrationProtection AWS API Documentation
40212
+ #
40213
+ # @overload enable_image_deregistration_protection(params = {})
40214
+ # @param [Hash] params ({})
40215
+ def enable_image_deregistration_protection(params = {}, options = {})
40216
+ req = build_request(:enable_image_deregistration_protection, params)
40217
+ req.send_request(options)
40218
+ end
40219
+
40099
40220
  # Enable an Organizations member account as the IPAM admin account. You
40100
40221
  # cannot select the Organizations management account as the IPAM admin
40101
40222
  # account. For more information, see [Enable integration with
@@ -48141,14 +48262,14 @@ module Aws::EC2
48141
48262
  # @option params [String] :launch_template_id
48142
48263
  # The ID of the launch template.
48143
48264
  #
48144
- # You must specify either the `LaunchTemplateId` or the
48145
- # `LaunchTemplateName`, but not both.
48265
+ # You must specify either the launch template ID or the launch template
48266
+ # name, but not both.
48146
48267
  #
48147
48268
  # @option params [String] :launch_template_name
48148
48269
  # The name of the launch template.
48149
48270
  #
48150
- # You must specify either the `LaunchTemplateName` or the
48151
- # `LaunchTemplateId`, but not both.
48271
+ # You must specify either the launch template ID or the launch template
48272
+ # name, but not both.
48152
48273
  #
48153
48274
  # @option params [String] :default_version
48154
48275
  # The version number of the launch template to set as the default
@@ -56131,10 +56252,9 @@ module Aws::EC2
56131
56252
  # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateTags.html
56132
56253
  #
56133
56254
  # @option params [Types::LaunchTemplateSpecification] :launch_template
56134
- # The launch template to use to launch the instances. Any parameters
56135
- # that you specify in RunInstances override the same parameters in the
56136
- # launch template. You can specify either the name or ID of a launch
56137
- # template, but not both.
56255
+ # The launch template. Any additional parameters that you specify for
56256
+ # the new instance overwrite the corresponding parameters included in
56257
+ # the launch template.
56138
56258
  #
56139
56259
  # @option params [Types::InstanceMarketOptionsRequest] :instance_market_options
56140
56260
  # The market (purchasing) option for the instances.
@@ -59142,7 +59262,7 @@ module Aws::EC2
59142
59262
  params: params,
59143
59263
  config: config)
59144
59264
  context[:gem_name] = 'aws-sdk-ec2'
59145
- context[:gem_version] = '1.450.0'
59265
+ context[:gem_version] = '1.451.0'
59146
59266
  Seahorse::Client::Request.new(handlers, context)
59147
59267
  end
59148
59268
 
@@ -1168,6 +1168,8 @@ module Aws::EC2
1168
1168
  DisableImageBlockPublicAccessResult = Shapes::StructureShape.new(name: 'DisableImageBlockPublicAccessResult')
1169
1169
  DisableImageDeprecationRequest = Shapes::StructureShape.new(name: 'DisableImageDeprecationRequest')
1170
1170
  DisableImageDeprecationResult = Shapes::StructureShape.new(name: 'DisableImageDeprecationResult')
1171
+ DisableImageDeregistrationProtectionRequest = Shapes::StructureShape.new(name: 'DisableImageDeregistrationProtectionRequest')
1172
+ DisableImageDeregistrationProtectionResult = Shapes::StructureShape.new(name: 'DisableImageDeregistrationProtectionResult')
1171
1173
  DisableImageRequest = Shapes::StructureShape.new(name: 'DisableImageRequest')
1172
1174
  DisableImageResult = Shapes::StructureShape.new(name: 'DisableImageResult')
1173
1175
  DisableIpamOrganizationAdminAccountRequest = Shapes::StructureShape.new(name: 'DisableIpamOrganizationAdminAccountRequest')
@@ -1300,6 +1302,8 @@ module Aws::EC2
1300
1302
  EnableImageBlockPublicAccessResult = Shapes::StructureShape.new(name: 'EnableImageBlockPublicAccessResult')
1301
1303
  EnableImageDeprecationRequest = Shapes::StructureShape.new(name: 'EnableImageDeprecationRequest')
1302
1304
  EnableImageDeprecationResult = Shapes::StructureShape.new(name: 'EnableImageDeprecationResult')
1305
+ EnableImageDeregistrationProtectionRequest = Shapes::StructureShape.new(name: 'EnableImageDeregistrationProtectionRequest')
1306
+ EnableImageDeregistrationProtectionResult = Shapes::StructureShape.new(name: 'EnableImageDeregistrationProtectionResult')
1303
1307
  EnableImageRequest = Shapes::StructureShape.new(name: 'EnableImageRequest')
1304
1308
  EnableImageResult = Shapes::StructureShape.new(name: 'EnableImageResult')
1305
1309
  EnableIpamOrganizationAdminAccountRequest = Shapes::StructureShape.new(name: 'EnableIpamOrganizationAdminAccountRequest')
@@ -8017,6 +8021,13 @@ module Aws::EC2
8017
8021
  DisableImageDeprecationResult.add_member(:return, Shapes::ShapeRef.new(shape: Boolean, location_name: "return"))
8018
8022
  DisableImageDeprecationResult.struct_class = Types::DisableImageDeprecationResult
8019
8023
 
8024
+ DisableImageDeregistrationProtectionRequest.add_member(:image_id, Shapes::ShapeRef.new(shape: ImageId, required: true, location_name: "ImageId"))
8025
+ DisableImageDeregistrationProtectionRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "DryRun"))
8026
+ DisableImageDeregistrationProtectionRequest.struct_class = Types::DisableImageDeregistrationProtectionRequest
8027
+
8028
+ DisableImageDeregistrationProtectionResult.add_member(:return, Shapes::ShapeRef.new(shape: String, location_name: "return"))
8029
+ DisableImageDeregistrationProtectionResult.struct_class = Types::DisableImageDeregistrationProtectionResult
8030
+
8020
8031
  DisableImageRequest.add_member(:image_id, Shapes::ShapeRef.new(shape: ImageId, required: true, location_name: "ImageId"))
8021
8032
  DisableImageRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "DryRun"))
8022
8033
  DisableImageRequest.struct_class = Types::DisableImageRequest
@@ -8461,6 +8472,14 @@ module Aws::EC2
8461
8472
  EnableImageDeprecationResult.add_member(:return, Shapes::ShapeRef.new(shape: Boolean, location_name: "return"))
8462
8473
  EnableImageDeprecationResult.struct_class = Types::EnableImageDeprecationResult
8463
8474
 
8475
+ EnableImageDeregistrationProtectionRequest.add_member(:image_id, Shapes::ShapeRef.new(shape: ImageId, required: true, location_name: "ImageId"))
8476
+ EnableImageDeregistrationProtectionRequest.add_member(:with_cooldown, Shapes::ShapeRef.new(shape: Boolean, location_name: "WithCooldown"))
8477
+ EnableImageDeregistrationProtectionRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "DryRun"))
8478
+ EnableImageDeregistrationProtectionRequest.struct_class = Types::EnableImageDeregistrationProtectionRequest
8479
+
8480
+ EnableImageDeregistrationProtectionResult.add_member(:return, Shapes::ShapeRef.new(shape: String, location_name: "return"))
8481
+ EnableImageDeregistrationProtectionResult.struct_class = Types::EnableImageDeregistrationProtectionResult
8482
+
8464
8483
  EnableImageRequest.add_member(:image_id, Shapes::ShapeRef.new(shape: ImageId, required: true, location_name: "ImageId"))
8465
8484
  EnableImageRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "DryRun"))
8466
8485
  EnableImageRequest.struct_class = Types::EnableImageRequest
@@ -9617,6 +9636,8 @@ module Aws::EC2
9617
9636
  Image.add_member(:deprecation_time, Shapes::ShapeRef.new(shape: String, location_name: "deprecationTime"))
9618
9637
  Image.add_member(:imds_support, Shapes::ShapeRef.new(shape: ImdsSupportValues, location_name: "imdsSupport"))
9619
9638
  Image.add_member(:source_instance_id, Shapes::ShapeRef.new(shape: String, location_name: "sourceInstanceId"))
9639
+ Image.add_member(:deregistration_protection, Shapes::ShapeRef.new(shape: String, location_name: "deregistrationProtection"))
9640
+ Image.add_member(:last_launched_time, Shapes::ShapeRef.new(shape: String, location_name: "lastLaunchedTime"))
9620
9641
  Image.struct_class = Types::Image
9621
9642
 
9622
9643
  ImageAttribute.add_member(:block_device_mappings, Shapes::ShapeRef.new(shape: BlockDeviceMappingList, location_name: "blockDeviceMapping"))
@@ -9632,6 +9653,7 @@ module Aws::EC2
9632
9653
  ImageAttribute.add_member(:uefi_data, Shapes::ShapeRef.new(shape: AttributeValue, location_name: "uefiData"))
9633
9654
  ImageAttribute.add_member(:last_launched_time, Shapes::ShapeRef.new(shape: AttributeValue, location_name: "lastLaunchedTime"))
9634
9655
  ImageAttribute.add_member(:imds_support, Shapes::ShapeRef.new(shape: AttributeValue, location_name: "imdsSupport"))
9656
+ ImageAttribute.add_member(:deregistration_protection, Shapes::ShapeRef.new(shape: AttributeValue, location_name: "deregistrationProtection"))
9635
9657
  ImageAttribute.struct_class = Types::ImageAttribute
9636
9658
 
9637
9659
  ImageDiskContainer.add_member(:description, Shapes::ShapeRef.new(shape: String, location_name: "Description"))
@@ -19426,6 +19448,14 @@ module Aws::EC2
19426
19448
  o.output = Shapes::ShapeRef.new(shape: DisableImageDeprecationResult)
19427
19449
  end)
19428
19450
 
19451
+ api.add_operation(:disable_image_deregistration_protection, Seahorse::Model::Operation.new.tap do |o|
19452
+ o.name = "DisableImageDeregistrationProtection"
19453
+ o.http_method = "POST"
19454
+ o.http_request_uri = "/"
19455
+ o.input = Shapes::ShapeRef.new(shape: DisableImageDeregistrationProtectionRequest)
19456
+ o.output = Shapes::ShapeRef.new(shape: DisableImageDeregistrationProtectionResult)
19457
+ end)
19458
+
19429
19459
  api.add_operation(:disable_ipam_organization_admin_account, Seahorse::Model::Operation.new.tap do |o|
19430
19460
  o.name = "DisableIpamOrganizationAdminAccount"
19431
19461
  o.http_method = "POST"
@@ -19666,6 +19696,14 @@ module Aws::EC2
19666
19696
  o.output = Shapes::ShapeRef.new(shape: EnableImageDeprecationResult)
19667
19697
  end)
19668
19698
 
19699
+ api.add_operation(:enable_image_deregistration_protection, Seahorse::Model::Operation.new.tap do |o|
19700
+ o.name = "EnableImageDeregistrationProtection"
19701
+ o.http_method = "POST"
19702
+ o.http_request_uri = "/"
19703
+ o.input = Shapes::ShapeRef.new(shape: EnableImageDeregistrationProtectionRequest)
19704
+ o.output = Shapes::ShapeRef.new(shape: EnableImageDeregistrationProtectionResult)
19705
+ end)
19706
+
19669
19707
  api.add_operation(:enable_ipam_organization_admin_account, Seahorse::Model::Operation.new.tap do |o|
19670
19708
  o.name = "EnableIpamOrganizationAdminAccount"
19671
19709
  o.http_method = "POST"
@@ -5374,6 +5374,20 @@ module Aws::EC2
5374
5374
  end
5375
5375
  end
5376
5376
 
5377
+ class DisableImageDeregistrationProtection
5378
+ def self.build(context)
5379
+ unless context.config.regional_endpoint
5380
+ endpoint = context.config.endpoint.to_s
5381
+ end
5382
+ Aws::EC2::EndpointParameters.new(
5383
+ region: context.config.region,
5384
+ use_dual_stack: context.config.use_dualstack_endpoint,
5385
+ use_fips: context.config.use_fips_endpoint,
5386
+ endpoint: endpoint,
5387
+ )
5388
+ end
5389
+ end
5390
+
5377
5391
  class DisableIpamOrganizationAdminAccount
5378
5392
  def self.build(context)
5379
5393
  unless context.config.regional_endpoint
@@ -5794,6 +5808,20 @@ module Aws::EC2
5794
5808
  end
5795
5809
  end
5796
5810
 
5811
+ class EnableImageDeregistrationProtection
5812
+ def self.build(context)
5813
+ unless context.config.regional_endpoint
5814
+ endpoint = context.config.endpoint.to_s
5815
+ end
5816
+ Aws::EC2::EndpointParameters.new(
5817
+ region: context.config.region,
5818
+ use_dual_stack: context.config.use_dualstack_endpoint,
5819
+ use_fips: context.config.use_fips_endpoint,
5820
+ endpoint: endpoint,
5821
+ )
5822
+ end
5823
+ end
5824
+
5797
5825
  class EnableIpamOrganizationAdminAccount
5798
5826
  def self.build(context)
5799
5827
  unless context.config.regional_endpoint
@@ -272,6 +272,28 @@ module Aws::EC2
272
272
  data[:source_instance_id]
273
273
  end
274
274
 
275
+ # Indicates whether deregistration protection is enabled for the AMI.
276
+ # @return [String]
277
+ def deregistration_protection
278
+ data[:deregistration_protection]
279
+ end
280
+
281
+ # The date and time, in [ISO 8601 date-time format][1], when the AMI was
282
+ # last used to launch an EC2 instance. When the AMI is used to launch an
283
+ # instance, there is a 24-hour delay before that usage is reported.
284
+ #
285
+ # <note markdown="1"> `lastLaunchedTime` data is available starting April 2017.
286
+ #
287
+ # </note>
288
+ #
289
+ #
290
+ #
291
+ # [1]: http://www.iso.org/iso/iso8601
292
+ # @return [String]
293
+ def last_launched_time
294
+ data[:last_launched_time]
295
+ end
296
+
275
297
  # @!endgroup
276
298
 
277
299
  # @return [Client]
@@ -553,7 +575,7 @@ module Aws::EC2
553
575
  # @example Request syntax with placeholder values
554
576
  #
555
577
  # image.describe_attribute({
556
- # attribute: "description", # required, accepts description, kernel, ramdisk, launchPermission, productCodes, blockDeviceMapping, sriovNetSupport, bootMode, tpmSupport, uefiData, lastLaunchedTime, imdsSupport
578
+ # attribute: "description", # required, accepts description, kernel, ramdisk, launchPermission, productCodes, blockDeviceMapping, sriovNetSupport, bootMode, tpmSupport, uefiData, lastLaunchedTime, imdsSupport, deregistrationProtection
557
579
  # dry_run: false,
558
580
  # })
559
581
  # @param [Hash] options ({})
@@ -824,6 +824,8 @@ module Aws::EC2
824
824
  Aws::EC2::Endpoints::DisableImageBlockPublicAccess.build(context)
825
825
  when :disable_image_deprecation
826
826
  Aws::EC2::Endpoints::DisableImageDeprecation.build(context)
827
+ when :disable_image_deregistration_protection
828
+ Aws::EC2::Endpoints::DisableImageDeregistrationProtection.build(context)
827
829
  when :disable_ipam_organization_admin_account
828
830
  Aws::EC2::Endpoints::DisableIpamOrganizationAdminAccount.build(context)
829
831
  when :disable_serial_console_access
@@ -884,6 +886,8 @@ module Aws::EC2
884
886
  Aws::EC2::Endpoints::EnableImageBlockPublicAccess.build(context)
885
887
  when :enable_image_deprecation
886
888
  Aws::EC2::Endpoints::EnableImageDeprecation.build(context)
889
+ when :enable_image_deregistration_protection
890
+ Aws::EC2::Endpoints::EnableImageDeregistrationProtection.build(context)
887
891
  when :enable_ipam_organization_admin_account
888
892
  Aws::EC2::Endpoints::EnableIpamOrganizationAdminAccount.build(context)
889
893
  when :enable_reachability_analyzer_organization_sharing
@@ -517,10 +517,9 @@ module Aws::EC2
517
517
  #
518
518
  # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateTags.html
519
519
  # @option options [Types::LaunchTemplateSpecification] :launch_template
520
- # The launch template to use to launch the instances. Any parameters
521
- # that you specify in RunInstances override the same parameters in the
522
- # launch template. You can specify either the name or ID of a launch
523
- # template, but not both.
520
+ # The launch template. Any additional parameters that you specify for
521
+ # the new instance overwrite the corresponding parameters included in
522
+ # the launch template.
524
523
  # @option options [Types::InstanceMarketOptionsRequest] :instance_market_options
525
524
  # The market (purchasing) option for the instances.
526
525
  #
@@ -747,10 +747,9 @@ module Aws::EC2
747
747
  #
748
748
  # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateTags.html
749
749
  # @option options [Types::LaunchTemplateSpecification] :launch_template
750
- # The launch template to use to launch the instances. Any parameters
751
- # that you specify in RunInstances override the same parameters in the
752
- # launch template. You can specify either the name or ID of a launch
753
- # template, but not both.
750
+ # The launch template. Any additional parameters that you specify for
751
+ # the new instance overwrite the corresponding parameters included in
752
+ # the launch template.
754
753
  # @option options [Types::InstanceMarketOptionsRequest] :instance_market_options
755
754
  # The market (purchasing) option for the instances.
756
755
  #
@@ -2676,14 +2676,13 @@ module Aws::EC2
2676
2676
  # @return [String]
2677
2677
  #
2678
2678
  # @!attribute [rw] certificate_s3_object_key
2679
- # The key of the Amazon S3 object ey where the certificate,
2680
- # certificate chain, and encrypted private key bundle is stored. The
2681
- # object key is formated as follows: `role_arn`/`certificate_arn`.
2679
+ # The key of the Amazon S3 object where the certificate, certificate
2680
+ # chain, and encrypted private key bundle are stored. The object key
2681
+ # is formatted as follows: `role_arn`/`certificate_arn`.
2682
2682
  # @return [String]
2683
2683
  #
2684
2684
  # @!attribute [rw] encryption_kms_key_id
2685
- # The ID of the KMS customer master key (CMK) used to encrypt the
2686
- # private key.
2685
+ # The ID of the KMS key used to encrypt the private key.
2687
2686
  # @return [String]
2688
2687
  #
2689
2688
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AssociatedRole AWS API Documentation
@@ -8935,12 +8934,10 @@ module Aws::EC2
8935
8934
  # The tags to apply to the launch template on creation. To tag the
8936
8935
  # launch template, the resource type must be `launch-template`.
8937
8936
  #
8938
- # <note markdown="1"> To specify the tags for the resources that are created when an
8937
+ # To specify the tags for the resources that are created when an
8939
8938
  # instance is launched, you must use the `TagSpecifications` parameter
8940
8939
  # in the [launch template data][1] structure.
8941
8940
  #
8942
- # </note>
8943
- #
8944
8941
  #
8945
8942
  #
8946
8943
  # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RequestLaunchTemplateData.html
@@ -9000,24 +8997,29 @@ module Aws::EC2
9000
8997
  # @!attribute [rw] launch_template_id
9001
8998
  # The ID of the launch template.
9002
8999
  #
9003
- # You must specify either the `LaunchTemplateId` or the
9004
- # `LaunchTemplateName`, but not both.
9000
+ # You must specify either the launch template ID or the launch
9001
+ # template name, but not both.
9005
9002
  # @return [String]
9006
9003
  #
9007
9004
  # @!attribute [rw] launch_template_name
9008
9005
  # The name of the launch template.
9009
9006
  #
9010
- # You must specify the `LaunchTemplateName` or the `LaunchTemplateId`,
9011
- # but not both.
9007
+ # You must specify either the launch template ID or the launch
9008
+ # template name, but not both.
9012
9009
  # @return [String]
9013
9010
  #
9014
9011
  # @!attribute [rw] source_version
9015
- # The version number of the launch template version on which to base
9016
- # the new version. The new version inherits the same launch parameters
9017
- # as the source version, except for parameters that you specify in
9018
- # `LaunchTemplateData`. Snapshots applied to the block device mapping
9019
- # are ignored when creating a new version unless they are explicitly
9020
- # included.
9012
+ # The version of the launch template on which to base the new version.
9013
+ # Snapshots applied to the block device mapping are ignored when
9014
+ # creating a new version unless they are explicitly included.
9015
+ #
9016
+ # If you specify this parameter, the new version inherits the launch
9017
+ # parameters from the source version. If you specify additional launch
9018
+ # parameters for the new version, they overwrite any corresponding
9019
+ # launch parameters inherited from the source version.
9020
+ #
9021
+ # If you omit this parameter, the new version contains only the launch
9022
+ # parameters that you specify for the new version.
9021
9023
  # @return [String]
9022
9024
  #
9023
9025
  # @!attribute [rw] version_description
@@ -14127,15 +14129,15 @@ module Aws::EC2
14127
14129
  # @!attribute [rw] launch_template_id
14128
14130
  # The ID of the launch template.
14129
14131
  #
14130
- # You must specify either the `LaunchTemplateId` or the
14131
- # `LaunchTemplateName`, but not both.
14132
+ # You must specify either the launch template ID or the launch
14133
+ # template name, but not both.
14132
14134
  # @return [String]
14133
14135
  #
14134
14136
  # @!attribute [rw] launch_template_name
14135
14137
  # The name of the launch template.
14136
14138
  #
14137
- # You must specify either the `LaunchTemplateName` or the
14138
- # `LaunchTemplateId`, but not both.
14139
+ # You must specify either the launch template ID or the launch
14140
+ # template name, but not both.
14139
14141
  # @return [String]
14140
14142
  #
14141
14143
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteLaunchTemplateRequest AWS API Documentation
@@ -14170,15 +14172,15 @@ module Aws::EC2
14170
14172
  # @!attribute [rw] launch_template_id
14171
14173
  # The ID of the launch template.
14172
14174
  #
14173
- # You must specify either the `LaunchTemplateId` or the
14174
- # `LaunchTemplateName`, but not both.
14175
+ # You must specify either the launch template ID or the launch
14176
+ # template name, but not both.
14175
14177
  # @return [String]
14176
14178
  #
14177
14179
  # @!attribute [rw] launch_template_name
14178
14180
  # The name of the launch template.
14179
14181
  #
14180
- # You must specify either the `LaunchTemplateName` or the
14181
- # `LaunchTemplateId`, but not both.
14182
+ # You must specify either the launch template ID or the launch
14183
+ # template name, but not both.
14182
14184
  # @return [String]
14183
14185
  #
14184
14186
  # @!attribute [rw] versions
@@ -21395,8 +21397,8 @@ module Aws::EC2
21395
21397
  # The ID of the launch template.
21396
21398
  #
21397
21399
  # To describe one or more versions of a specified launch template, you
21398
- # must specify either the `LaunchTemplateId` or the
21399
- # `LaunchTemplateName`, but not both.
21400
+ # must specify either the launch template ID or the launch template
21401
+ # name, but not both.
21400
21402
  #
21401
21403
  # To describe all the latest or default launch template versions in
21402
21404
  # your account, you must omit this parameter.
@@ -21406,8 +21408,8 @@ module Aws::EC2
21406
21408
  # The name of the launch template.
21407
21409
  #
21408
21410
  # To describe one or more versions of a specified launch template, you
21409
- # must specify either the `LaunchTemplateName` or the
21410
- # `LaunchTemplateId`, but not both.
21411
+ # must specify either the launch template name or the launch template
21412
+ # ID, but not both.
21411
21413
  #
21412
21414
  # To describe all the latest or default launch template versions in
21413
21415
  # your account, you must omit this parameter.
@@ -23065,7 +23067,7 @@ module Aws::EC2
23065
23067
  end
23066
23068
 
23067
23069
  # @!attribute [rw] network_interfaces
23068
- # Information about one or more network interfaces.
23070
+ # Information about the network interfaces.
23069
23071
  # @return [Array<Types::NetworkInterface>]
23070
23072
  #
23071
23073
  # @!attribute [rw] next_token
@@ -25481,16 +25483,8 @@ module Aws::EC2
25481
25483
  #
25482
25484
  # * `resource-id` - The ID of the resource.
25483
25485
  #
25484
- # * `resource-type` - The resource type (`customer-gateway` \|
25485
- # `dedicated-host` \| `dhcp-options` \| `elastic-ip` \| `fleet` \|
25486
- # `fpga-image` \| `host-reservation` \| `image` \| `instance` \|
25487
- # `internet-gateway` \| `key-pair` \| `launch-template` \|
25488
- # `natgateway` \| `network-acl` \| `network-interface` \|
25489
- # `placement-group` \| `reserved-instances` \| `route-table` \|
25490
- # `security-group` \| `snapshot` \| `spot-instances-request` \|
25491
- # `subnet` \| `volume` \| `vpc` \| `vpc-endpoint` \|
25492
- # `vpc-endpoint-service` \| `vpc-peering-connection` \|
25493
- # `vpn-connection` \| `vpn-gateway`).
25486
+ # * `resource-type` - The resource type. For a list of possible
25487
+ # values, see [TagSpecification][1].
25494
25488
  #
25495
25489
  # * `tag`:&lt;key&gt; - The key/value combination of the tag. For
25496
25490
  # example, specify "tag:Owner" for the filter name and "TeamA"
@@ -25498,6 +25492,10 @@ module Aws::EC2
25498
25492
  # "Owner=TeamA".
25499
25493
  #
25500
25494
  # * `value` - The tag value.
25495
+ #
25496
+ #
25497
+ #
25498
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_TagSpecification.html
25501
25499
  # @return [Array<Types::Filter>]
25502
25500
  #
25503
25501
  # @!attribute [rw] max_results
@@ -28938,6 +28936,39 @@ module Aws::EC2
28938
28936
  include Aws::Structure
28939
28937
  end
28940
28938
 
28939
+ # @!attribute [rw] image_id
28940
+ # The ID of the AMI.
28941
+ # @return [String]
28942
+ #
28943
+ # @!attribute [rw] dry_run
28944
+ # Checks whether you have the required permissions for the action,
28945
+ # without actually making the request, and provides an error response.
28946
+ # If you have the required permissions, the error response is
28947
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
28948
+ # @return [Boolean]
28949
+ #
28950
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisableImageDeregistrationProtectionRequest AWS API Documentation
28951
+ #
28952
+ class DisableImageDeregistrationProtectionRequest < Struct.new(
28953
+ :image_id,
28954
+ :dry_run)
28955
+ SENSITIVE = []
28956
+ include Aws::Structure
28957
+ end
28958
+
28959
+ # @!attribute [rw] return
28960
+ # Returns `true` if the request succeeds; otherwise, it returns an
28961
+ # error.
28962
+ # @return [String]
28963
+ #
28964
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisableImageDeregistrationProtectionResult AWS API Documentation
28965
+ #
28966
+ class DisableImageDeregistrationProtectionResult < Struct.new(
28967
+ :return)
28968
+ SENSITIVE = []
28969
+ include Aws::Structure
28970
+ end
28971
+
28941
28972
  # @!attribute [rw] image_id
28942
28973
  # The ID of the AMI.
28943
28974
  # @return [String]
@@ -31215,6 +31246,45 @@ module Aws::EC2
31215
31246
  include Aws::Structure
31216
31247
  end
31217
31248
 
31249
+ # @!attribute [rw] image_id
31250
+ # The ID of the AMI.
31251
+ # @return [String]
31252
+ #
31253
+ # @!attribute [rw] with_cooldown
31254
+ # If `true`, enforces deregistration protection for 24 hours after
31255
+ # deregistration protection is disabled.
31256
+ # @return [Boolean]
31257
+ #
31258
+ # @!attribute [rw] dry_run
31259
+ # Checks whether you have the required permissions for the action,
31260
+ # without actually making the request, and provides an error response.
31261
+ # If you have the required permissions, the error response is
31262
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
31263
+ # @return [Boolean]
31264
+ #
31265
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/EnableImageDeregistrationProtectionRequest AWS API Documentation
31266
+ #
31267
+ class EnableImageDeregistrationProtectionRequest < Struct.new(
31268
+ :image_id,
31269
+ :with_cooldown,
31270
+ :dry_run)
31271
+ SENSITIVE = []
31272
+ include Aws::Structure
31273
+ end
31274
+
31275
+ # @!attribute [rw] return
31276
+ # Returns `true` if the request succeeds; otherwise, it returns an
31277
+ # error.
31278
+ # @return [String]
31279
+ #
31280
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/EnableImageDeregistrationProtectionResult AWS API Documentation
31281
+ #
31282
+ class EnableImageDeregistrationProtectionResult < Struct.new(
31283
+ :return)
31284
+ SENSITIVE = []
31285
+ include Aws::Structure
31286
+ end
31287
+
31218
31288
  # @!attribute [rw] image_id
31219
31289
  # The ID of the AMI.
31220
31290
  # @return [String]
@@ -37320,6 +37390,25 @@ module Aws::EC2
37320
37390
  # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateImage.html
37321
37391
  # @return [String]
37322
37392
  #
37393
+ # @!attribute [rw] deregistration_protection
37394
+ # Indicates whether deregistration protection is enabled for the AMI.
37395
+ # @return [String]
37396
+ #
37397
+ # @!attribute [rw] last_launched_time
37398
+ # The date and time, in [ISO 8601 date-time format][1], when the AMI
37399
+ # was last used to launch an EC2 instance. When the AMI is used to
37400
+ # launch an instance, there is a 24-hour delay before that usage is
37401
+ # reported.
37402
+ #
37403
+ # <note markdown="1"> `lastLaunchedTime` data is available starting April 2017.
37404
+ #
37405
+ # </note>
37406
+ #
37407
+ #
37408
+ #
37409
+ # [1]: http://www.iso.org/iso/iso8601
37410
+ # @return [String]
37411
+ #
37323
37412
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/Image AWS API Documentation
37324
37413
  #
37325
37414
  class Image < Struct.new(
@@ -37353,7 +37442,9 @@ module Aws::EC2
37353
37442
  :tpm_support,
37354
37443
  :deprecation_time,
37355
37444
  :imds_support,
37356
- :source_instance_id)
37445
+ :source_instance_id,
37446
+ :deregistration_protection,
37447
+ :last_launched_time)
37357
37448
  SENSITIVE = []
37358
37449
  include Aws::Structure
37359
37450
  end
@@ -37445,6 +37536,10 @@ module Aws::EC2
37445
37536
  # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/configuring-IMDS-new-instances.html#configure-IMDS-new-instances-ami-configuration
37446
37537
  # @return [Types::AttributeValue]
37447
37538
  #
37539
+ # @!attribute [rw] deregistration_protection
37540
+ # Indicates whether deregistration protection is enabled for the AMI.
37541
+ # @return [Types::AttributeValue]
37542
+ #
37448
37543
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ImageAttribute AWS API Documentation
37449
37544
  #
37450
37545
  class ImageAttribute < Struct.new(
@@ -37460,7 +37555,8 @@ module Aws::EC2
37460
37555
  :tpm_support,
37461
37556
  :uefi_data,
37462
37557
  :last_launched_time,
37463
- :imds_support)
37558
+ :imds_support,
37559
+ :deregistration_protection)
37464
37560
  SENSITIVE = []
37465
37561
  include Aws::Structure
37466
37562
  end
@@ -45250,31 +45346,29 @@ module Aws::EC2
45250
45346
  include Aws::Structure
45251
45347
  end
45252
45348
 
45253
- # The launch template to use. You must specify either the launch
45254
- # template ID or launch template name in the request, but not both.
45349
+ # Describes the launch template to use.
45255
45350
  #
45256
45351
  # @!attribute [rw] launch_template_id
45257
45352
  # The ID of the launch template.
45258
45353
  #
45259
- # You must specify the `LaunchTemplateId` or the `LaunchTemplateName`,
45260
- # but not both.
45354
+ # You must specify either the launch template ID or the launch
45355
+ # template name, but not both.
45261
45356
  # @return [String]
45262
45357
  #
45263
45358
  # @!attribute [rw] launch_template_name
45264
45359
  # The name of the launch template.
45265
45360
  #
45266
- # You must specify the `LaunchTemplateName` or the `LaunchTemplateId`,
45267
- # but not both.
45361
+ # You must specify either the launch template ID or the launch
45362
+ # template name, but not both.
45268
45363
  # @return [String]
45269
45364
  #
45270
45365
  # @!attribute [rw] version
45271
45366
  # The launch template version number, `$Latest`, or `$Default`.
45272
45367
  #
45273
- # If the value is `$Latest`, Amazon EC2 uses the latest version of the
45274
- # launch template.
45368
+ # A value of `$Latest` uses the latest version of the launch template.
45275
45369
  #
45276
- # If the value is `$Default`, Amazon EC2 uses the default version of
45277
- # the launch template.
45370
+ # A value of `$Default` uses the default version of the launch
45371
+ # template.
45278
45372
  #
45279
45373
  # Default: The default version of the launch template.
45280
45374
  # @return [String]
@@ -48493,15 +48587,15 @@ module Aws::EC2
48493
48587
  # @!attribute [rw] launch_template_id
48494
48588
  # The ID of the launch template.
48495
48589
  #
48496
- # You must specify either the `LaunchTemplateId` or the
48497
- # `LaunchTemplateName`, but not both.
48590
+ # You must specify either the launch template ID or the launch
48591
+ # template name, but not both.
48498
48592
  # @return [String]
48499
48593
  #
48500
48594
  # @!attribute [rw] launch_template_name
48501
48595
  # The name of the launch template.
48502
48596
  #
48503
- # You must specify either the `LaunchTemplateName` or the
48504
- # `LaunchTemplateId`, but not both.
48597
+ # You must specify either the launch template ID or the launch
48598
+ # template name, but not both.
48505
48599
  # @return [String]
48506
48600
  #
48507
48601
  # @!attribute [rw] default_version
@@ -59018,10 +59112,9 @@ module Aws::EC2
59018
59112
  # @return [Array<Types::TagSpecification>]
59019
59113
  #
59020
59114
  # @!attribute [rw] launch_template
59021
- # The launch template to use to launch the instances. Any parameters
59022
- # that you specify in RunInstances override the same parameters in the
59023
- # launch template. You can specify either the name or ID of a launch
59024
- # template, but not both.
59115
+ # The launch template. Any additional parameters that you specify for
59116
+ # the new instance overwrite the corresponding parameters included in
59117
+ # the launch template.
59025
59118
  # @return [Types::LaunchTemplateSpecification]
59026
59119
  #
59027
59120
  # @!attribute [rw] instance_market_options
data/lib/aws-sdk-ec2.rb CHANGED
@@ -76,6 +76,6 @@ require_relative 'aws-sdk-ec2/customizations'
76
76
  # @!group service
77
77
  module Aws::EC2
78
78
 
79
- GEM_VERSION = '1.450.0'
79
+ GEM_VERSION = '1.451.0'
80
80
 
81
81
  end
data/sig/client.rbs CHANGED
@@ -5581,10 +5581,11 @@ module Aws
5581
5581
  def uefi_data: () -> Types::AttributeValue
5582
5582
  def last_launched_time: () -> Types::AttributeValue
5583
5583
  def imds_support: () -> Types::AttributeValue
5584
+ def deregistration_protection: () -> Types::AttributeValue
5584
5585
  end
5585
5586
  # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Client.html#describe_image_attribute-instance_method
5586
5587
  def describe_image_attribute: (
5587
- attribute: ("description" | "kernel" | "ramdisk" | "launchPermission" | "productCodes" | "blockDeviceMapping" | "sriovNetSupport" | "bootMode" | "tpmSupport" | "uefiData" | "lastLaunchedTime" | "imdsSupport"),
5588
+ attribute: ("description" | "kernel" | "ramdisk" | "launchPermission" | "productCodes" | "blockDeviceMapping" | "sriovNetSupport" | "bootMode" | "tpmSupport" | "uefiData" | "lastLaunchedTime" | "imdsSupport" | "deregistrationProtection"),
5588
5589
  image_id: ::String,
5589
5590
  ?dry_run: bool
5590
5591
  ) -> _DescribeImageAttributeResponseSuccess
@@ -7870,6 +7871,17 @@ module Aws
7870
7871
  ) -> _DisableImageDeprecationResponseSuccess
7871
7872
  | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _DisableImageDeprecationResponseSuccess
7872
7873
 
7874
+ interface _DisableImageDeregistrationProtectionResponseSuccess
7875
+ include ::Seahorse::Client::_ResponseSuccess[Types::DisableImageDeregistrationProtectionResult]
7876
+ def return: () -> ::String
7877
+ end
7878
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Client.html#disable_image_deregistration_protection-instance_method
7879
+ def disable_image_deregistration_protection: (
7880
+ image_id: ::String,
7881
+ ?dry_run: bool
7882
+ ) -> _DisableImageDeregistrationProtectionResponseSuccess
7883
+ | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _DisableImageDeregistrationProtectionResponseSuccess
7884
+
7873
7885
  interface _DisableIpamOrganizationAdminAccountResponseSuccess
7874
7886
  include ::Seahorse::Client::_ResponseSuccess[Types::DisableIpamOrganizationAdminAccountResult]
7875
7887
  def success: () -> bool
@@ -8236,6 +8248,18 @@ module Aws
8236
8248
  ) -> _EnableImageDeprecationResponseSuccess
8237
8249
  | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _EnableImageDeprecationResponseSuccess
8238
8250
 
8251
+ interface _EnableImageDeregistrationProtectionResponseSuccess
8252
+ include ::Seahorse::Client::_ResponseSuccess[Types::EnableImageDeregistrationProtectionResult]
8253
+ def return: () -> ::String
8254
+ end
8255
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Client.html#enable_image_deregistration_protection-instance_method
8256
+ def enable_image_deregistration_protection: (
8257
+ image_id: ::String,
8258
+ ?with_cooldown: bool,
8259
+ ?dry_run: bool
8260
+ ) -> _EnableImageDeregistrationProtectionResponseSuccess
8261
+ | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _EnableImageDeregistrationProtectionResponseSuccess
8262
+
8239
8263
  interface _EnableIpamOrganizationAdminAccountResponseSuccess
8240
8264
  include ::Seahorse::Client::_ResponseSuccess[Types::EnableIpamOrganizationAdminAccountResult]
8241
8265
  def success: () -> bool
data/sig/image.rbs CHANGED
@@ -108,6 +108,12 @@ module Aws
108
108
  # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Image.html#source_instance_id-instance_method
109
109
  def source_instance_id: () -> ::String
110
110
 
111
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Image.html#deregistration_protection-instance_method
112
+ def deregistration_protection: () -> ::String
113
+
114
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Image.html#last_launched_time-instance_method
115
+ def last_launched_time: () -> ::String
116
+
111
117
  def client: () -> Client
112
118
 
113
119
  # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Image.html#load-instance_method
@@ -160,7 +166,7 @@ module Aws
160
166
 
161
167
  # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Image.html#describe_attribute-instance_method
162
168
  def describe_attribute: (
163
- attribute: ("description" | "kernel" | "ramdisk" | "launchPermission" | "productCodes" | "blockDeviceMapping" | "sriovNetSupport" | "bootMode" | "tpmSupport" | "uefiData" | "lastLaunchedTime" | "imdsSupport"),
169
+ attribute: ("description" | "kernel" | "ramdisk" | "launchPermission" | "productCodes" | "blockDeviceMapping" | "sriovNetSupport" | "bootMode" | "tpmSupport" | "uefiData" | "lastLaunchedTime" | "imdsSupport" | "deregistrationProtection"),
164
170
  ?dry_run: bool
165
171
  ) -> Types::ImageAttribute
166
172
  | (?Hash[Symbol, untyped]) -> Types::ImageAttribute
data/sig/types.rbs CHANGED
@@ -4533,7 +4533,7 @@ module Aws::EC2
4533
4533
  end
4534
4534
 
4535
4535
  class DescribeImageAttributeRequest
4536
- attr_accessor attribute: ("description" | "kernel" | "ramdisk" | "launchPermission" | "productCodes" | "blockDeviceMapping" | "sriovNetSupport" | "bootMode" | "tpmSupport" | "uefiData" | "lastLaunchedTime" | "imdsSupport")
4536
+ attr_accessor attribute: ("description" | "kernel" | "ramdisk" | "launchPermission" | "productCodes" | "blockDeviceMapping" | "sriovNetSupport" | "bootMode" | "tpmSupport" | "uefiData" | "lastLaunchedTime" | "imdsSupport" | "deregistrationProtection")
4537
4537
  attr_accessor image_id: ::String
4538
4538
  attr_accessor dry_run: bool
4539
4539
  SENSITIVE: []
@@ -6372,6 +6372,17 @@ module Aws::EC2
6372
6372
  SENSITIVE: []
6373
6373
  end
6374
6374
 
6375
+ class DisableImageDeregistrationProtectionRequest
6376
+ attr_accessor image_id: ::String
6377
+ attr_accessor dry_run: bool
6378
+ SENSITIVE: []
6379
+ end
6380
+
6381
+ class DisableImageDeregistrationProtectionResult
6382
+ attr_accessor return: ::String
6383
+ SENSITIVE: []
6384
+ end
6385
+
6375
6386
  class DisableImageRequest
6376
6387
  attr_accessor image_id: ::String
6377
6388
  attr_accessor dry_run: bool
@@ -6960,6 +6971,18 @@ module Aws::EC2
6960
6971
  SENSITIVE: []
6961
6972
  end
6962
6973
 
6974
+ class EnableImageDeregistrationProtectionRequest
6975
+ attr_accessor image_id: ::String
6976
+ attr_accessor with_cooldown: bool
6977
+ attr_accessor dry_run: bool
6978
+ SENSITIVE: []
6979
+ end
6980
+
6981
+ class EnableImageDeregistrationProtectionResult
6982
+ attr_accessor return: ::String
6983
+ SENSITIVE: []
6984
+ end
6985
+
6963
6986
  class EnableImageRequest
6964
6987
  attr_accessor image_id: ::String
6965
6988
  attr_accessor dry_run: bool
@@ -8397,6 +8420,8 @@ module Aws::EC2
8397
8420
  attr_accessor deprecation_time: ::String
8398
8421
  attr_accessor imds_support: ("v2.0")
8399
8422
  attr_accessor source_instance_id: ::String
8423
+ attr_accessor deregistration_protection: ::String
8424
+ attr_accessor last_launched_time: ::String
8400
8425
  SENSITIVE: []
8401
8426
  end
8402
8427
 
@@ -8414,6 +8439,7 @@ module Aws::EC2
8414
8439
  attr_accessor uefi_data: Types::AttributeValue
8415
8440
  attr_accessor last_launched_time: Types::AttributeValue
8416
8441
  attr_accessor imds_support: Types::AttributeValue
8442
+ attr_accessor deregistration_protection: Types::AttributeValue
8417
8443
  SENSITIVE: []
8418
8444
  end
8419
8445
 
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.450.0
4
+ version: 1.451.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: 2024-04-17 00:00:00.000000000 Z
11
+ date: 2024-04-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core