aws-sdk-ec2 1.36.0 → 1.37.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 350bd1c350a006abe7235d62c5a412f5f029825f
4
- data.tar.gz: b3aa25788a96aea0485a05bf8245a4dd099c100b
3
+ metadata.gz: 5bc1054d7de2e127ff2a659ece66ee3e8032f18b
4
+ data.tar.gz: bc047ad8017d23cd971731fcabc52eff36a9ea77
5
5
  SHA512:
6
- metadata.gz: 5d18006622677d4b9ce0adda2ce4dda8e9ecaf19a55f8b9120349b2d7888320a46cde6953daa5f839debb71c41c2a1fe0333ddb491eca0ef0ff3586e86986df6
7
- data.tar.gz: 4df48da8b4a4f0ca895cf2a3e3cd71147d814562e897f95f35ac6a6f32c4165109fe63b3bbcaaf19a9e0d358c9919b3bf620bde17f1336705e5f87fcaa34ca56
6
+ metadata.gz: f1ea6d9e7b149b3edbda599b7f4335e56d0822e1c3780faa2089286d90b730c4c8a149d520ea5417fce4ee8e7a5513d41c42d932235f9283da2101dbeb5f940f
7
+ data.tar.gz: 460306f8fe1a92b7ff3f48305f6e6f25554354d9288f6b660b585b642504f0c51be57ff8fdd37a6cf7e1e68cb73312dfe7c01c32f3e66c01b477b41287c6a758
data/lib/aws-sdk-ec2.rb CHANGED
@@ -65,6 +65,6 @@ require_relative 'aws-sdk-ec2/customizations'
65
65
  # @service
66
66
  module Aws::EC2
67
67
 
68
- GEM_VERSION = '1.36.0'
68
+ GEM_VERSION = '1.37.0'
69
69
 
70
70
  end
@@ -412,9 +412,9 @@ module Aws::EC2
412
412
  req.send_request(options)
413
413
  end
414
414
 
415
- # Allocates a Dedicated Host to your account. At minimum you need to
416
- # specify the instance size type, Availability Zone, and quantity of
417
- # hosts you want to allocate.
415
+ # Allocates a Dedicated Host to your account. At a minimum, specify the
416
+ # instance size type, Availability Zone, and quantity of hosts to
417
+ # allocate.
418
418
  #
419
419
  # @option params [String] :auto_placement
420
420
  # This is enabled by default. This property allows instances to be
@@ -427,22 +427,22 @@ module Aws::EC2
427
427
  # The Availability Zone for the Dedicated Hosts.
428
428
  #
429
429
  # @option params [String] :client_token
430
- # Unique, case-sensitive identifier you provide to ensure idempotency of
431
- # the request. For more information, see [How to Ensure Idempotency][1]
432
- # in the *Amazon Elastic Compute Cloud User Guide*.
430
+ # Unique, case-sensitive identifier that you provide to ensure the
431
+ # idempotency of the request. For more information, see [How to Ensure
432
+ # Idempotency][1] in the *Amazon Elastic Compute Cloud User Guide*.
433
433
  #
434
434
  #
435
435
  #
436
436
  # [1]: http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Run_Instance_Idempotency.html
437
437
  #
438
438
  # @option params [required, String] :instance_type
439
- # Specify the instance type that you want your Dedicated Hosts to be
440
- # configured for. When you specify the instance type, that is the only
441
- # instance type that you can launch onto that host.
439
+ # Specify the instance type for which to configure your Dedicated Hosts.
440
+ # When you specify the instance type, that is the only instance type
441
+ # that you can launch onto that host.
442
442
  #
443
443
  # @option params [required, Integer] :quantity
444
- # The number of Dedicated Hosts you want to allocate to your account
445
- # with these parameters.
444
+ # The number of Dedicated Hosts to allocate to your account with these
445
+ # parameters.
446
446
  #
447
447
  # @return [Types::AllocateHostsResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
448
448
  #
@@ -828,6 +828,31 @@ module Aws::EC2
828
828
  #
829
829
  # * {Types::AssociateIamInstanceProfileResult#iam_instance_profile_association #iam_instance_profile_association} => Types::IamInstanceProfileAssociation
830
830
  #
831
+ #
832
+ # @example Example: To associate an IAM instance profile with an instance
833
+ #
834
+ # # This example associates an IAM instance profile named admin-role with the specified instance.
835
+ #
836
+ # resp = client.associate_iam_instance_profile({
837
+ # iam_instance_profile: {
838
+ # name: "admin-role",
839
+ # },
840
+ # instance_id: "i-123456789abcde123",
841
+ # })
842
+ #
843
+ # resp.to_h outputs the following:
844
+ # {
845
+ # iam_instance_profile_association: {
846
+ # association_id: "iip-assoc-0e7736511a163c209",
847
+ # iam_instance_profile: {
848
+ # arn: "arn:aws:iam::123456789012:instance-profile/admin-role",
849
+ # id: "AIPAJBLK7RKJKWDXVHIEC",
850
+ # },
851
+ # instance_id: "i-123456789abcde123",
852
+ # state: "associating",
853
+ # },
854
+ # }
855
+ #
831
856
  # @example Request syntax with placeholder values
832
857
  #
833
858
  # resp = client.associate_iam_instance_profile({
@@ -1212,9 +1237,6 @@ module Aws::EC2
1212
1237
  # the product. For example, you can't detach a volume from a Windows
1213
1238
  # instance and attach it to a Linux instance.
1214
1239
  #
1215
- # For an overview of the AWS Marketplace, see [Introducing AWS
1216
- # Marketplace][4].
1217
- #
1218
1240
  # For more information about EBS volumes, see [Attaching Amazon EBS
1219
1241
  # Volumes][2] in the *Amazon Elastic Compute Cloud User Guide*.
1220
1242
  #
@@ -1223,7 +1245,6 @@ module Aws::EC2
1223
1245
  # [1]: http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html
1224
1246
  # [2]: http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-attaching-volume.html
1225
1247
  # [3]: http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/InstanceStorage.html
1226
- # [4]: https://aws.amazon.com/marketplace/help/200900000
1227
1248
  #
1228
1249
  # @option params [required, String] :device
1229
1250
  # The device name (for example, `/dev/sdh` or `xvdh`).
@@ -1406,6 +1427,55 @@ module Aws::EC2
1406
1427
  #
1407
1428
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1408
1429
  #
1430
+ #
1431
+ # @example Example: To add a rule that allows outbound traffic to a specific address range
1432
+ #
1433
+ # # This example adds a rule that grants access to the specified address ranges on TCP port 80.
1434
+ #
1435
+ # resp = client.authorize_security_group_egress({
1436
+ # group_id: "sg-1a2b3c4d",
1437
+ # ip_permissions: [
1438
+ # {
1439
+ # from_port: 80,
1440
+ # ip_protocol: "tcp",
1441
+ # ip_ranges: [
1442
+ # {
1443
+ # cidr_ip: "10.0.0.0/16",
1444
+ # },
1445
+ # ],
1446
+ # to_port: 80,
1447
+ # },
1448
+ # ],
1449
+ # })
1450
+ #
1451
+ # resp.to_h outputs the following:
1452
+ # {
1453
+ # }
1454
+ #
1455
+ # @example Example: To add a rule that allows outbound traffic to a specific security group
1456
+ #
1457
+ # # This example adds a rule that grants access to the specified security group on TCP port 80.
1458
+ #
1459
+ # resp = client.authorize_security_group_egress({
1460
+ # group_id: "sg-1a2b3c4d",
1461
+ # ip_permissions: [
1462
+ # {
1463
+ # from_port: 80,
1464
+ # ip_protocol: "tcp",
1465
+ # to_port: 80,
1466
+ # user_id_group_pairs: [
1467
+ # {
1468
+ # group_id: "sg-4b51a32f",
1469
+ # },
1470
+ # ],
1471
+ # },
1472
+ # ],
1473
+ # })
1474
+ #
1475
+ # resp.to_h outputs the following:
1476
+ # {
1477
+ # }
1478
+ #
1409
1479
  # @example Request syntax with placeholder values
1410
1480
  #
1411
1481
  # resp = client.authorize_security_group_egress({
@@ -1558,6 +1628,86 @@ module Aws::EC2
1558
1628
  #
1559
1629
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1560
1630
  #
1631
+ #
1632
+ # @example Example: To add a rule that allows inbound SSH traffic from an IPv4 address range
1633
+ #
1634
+ # # This example enables inbound traffic on TCP port 22 (SSH). The rule includes a description to help you identify it
1635
+ # # later.
1636
+ #
1637
+ # resp = client.authorize_security_group_ingress({
1638
+ # group_id: "sg-903004f8",
1639
+ # ip_permissions: [
1640
+ # {
1641
+ # from_port: 22,
1642
+ # ip_protocol: "tcp",
1643
+ # ip_ranges: [
1644
+ # {
1645
+ # cidr_ip: "203.0.113.0/24",
1646
+ # description: "SSH access from the LA office",
1647
+ # },
1648
+ # ],
1649
+ # to_port: 22,
1650
+ # },
1651
+ # ],
1652
+ # })
1653
+ #
1654
+ # resp.to_h outputs the following:
1655
+ # {
1656
+ # }
1657
+ #
1658
+ # @example Example: To add a rule that allows inbound HTTP traffic from another security group
1659
+ #
1660
+ # # This example enables inbound traffic on TCP port 80 from the specified security group. The group must be in the same VPC
1661
+ # # or a peer VPC. Incoming traffic is allowed based on the private IP addresses of instances that are associated with the
1662
+ # # specified security group.
1663
+ #
1664
+ # resp = client.authorize_security_group_ingress({
1665
+ # group_id: "sg-111aaa22",
1666
+ # ip_permissions: [
1667
+ # {
1668
+ # from_port: 80,
1669
+ # ip_protocol: "tcp",
1670
+ # to_port: 80,
1671
+ # user_id_group_pairs: [
1672
+ # {
1673
+ # description: "HTTP access from other instances",
1674
+ # group_id: "sg-1a2b3c4d",
1675
+ # },
1676
+ # ],
1677
+ # },
1678
+ # ],
1679
+ # })
1680
+ #
1681
+ # resp.to_h outputs the following:
1682
+ # {
1683
+ # }
1684
+ #
1685
+ # @example Example: To add a rule that allows inbound RDP traffic from an IPv6 address range
1686
+ #
1687
+ # # This example adds an inbound rule that allows RDP traffic from the specified IPv6 address range. The rule includes a
1688
+ # # description to help you identify it later.
1689
+ #
1690
+ # resp = client.authorize_security_group_ingress({
1691
+ # group_id: "sg-123abc12 ",
1692
+ # ip_permissions: [
1693
+ # {
1694
+ # from_port: 3389,
1695
+ # ip_protocol: "tcp",
1696
+ # ipv_6_ranges: [
1697
+ # {
1698
+ # cidr_ipv_6: "2001:db8:1234:1a00::/64",
1699
+ # description: "RDP access from the NY office",
1700
+ # },
1701
+ # ],
1702
+ # to_port: 3389,
1703
+ # },
1704
+ # ],
1705
+ # })
1706
+ #
1707
+ # resp.to_h outputs the following:
1708
+ # {
1709
+ # }
1710
+ #
1561
1711
  # @example Request syntax with placeholder values
1562
1712
  #
1563
1713
  # resp = client.authorize_security_group_ingress({
@@ -2278,6 +2428,23 @@ module Aws::EC2
2278
2428
  #
2279
2429
  # * {Types::CopyImageResult#image_id #image_id} => String
2280
2430
  #
2431
+ #
2432
+ # @example Example: To copy an AMI to another region
2433
+ #
2434
+ # # This example copies the specified AMI from the us-east-1 region to the current region.
2435
+ #
2436
+ # resp = client.copy_image({
2437
+ # description: "",
2438
+ # name: "My server",
2439
+ # source_image_id: "ami-5731123e",
2440
+ # source_region: "us-east-1",
2441
+ # })
2442
+ #
2443
+ # resp.to_h outputs the following:
2444
+ # {
2445
+ # image_id: "ami-438bea42",
2446
+ # }
2447
+ #
2281
2448
  # @example Request syntax with placeholder values
2282
2449
  #
2283
2450
  # resp = client.copy_image({
@@ -2992,7 +3159,16 @@ module Aws::EC2
2992
3159
  # Indicates whether EC2 Fleet should replace unhealthy instances.
2993
3160
  #
2994
3161
  # @option params [Array<Types::TagSpecification>] :tag_specifications
2995
- # The tags for an EC2 Fleet resource.
3162
+ # The key-value pair for tagging the EC2 Fleet request on creation. The
3163
+ # value for `ResourceType` must be `fleet`, otherwise the fleet request
3164
+ # fails. To tag instances at launch, specify the tags in the [launch
3165
+ # template][1]. For information about tagging after launch, see [Tagging
3166
+ # Your Resources][2].
3167
+ #
3168
+ #
3169
+ #
3170
+ # [1]: http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-launch-templates.html#create-launch-template
3171
+ # [2]: http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html#tag-resources
2996
3172
  #
2997
3173
  # @return [Types::CreateFleetResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2998
3174
  #
@@ -3273,6 +3449,36 @@ module Aws::EC2
3273
3449
  #
3274
3450
  # * {Types::CreateImageResult#image_id #image_id} => String
3275
3451
  #
3452
+ #
3453
+ # @example Example: To create an AMI from an Amazon EBS-backed instance
3454
+ #
3455
+ # # This example creates an AMI from the specified instance and adds an EBS volume with the device name /dev/sdh and an
3456
+ # # instance store volume with the device name /dev/sdc.
3457
+ #
3458
+ # resp = client.create_image({
3459
+ # block_device_mappings: [
3460
+ # {
3461
+ # device_name: "/dev/sdh",
3462
+ # ebs: {
3463
+ # volume_size: 100,
3464
+ # },
3465
+ # },
3466
+ # {
3467
+ # device_name: "/dev/sdc",
3468
+ # virtual_name: "ephemeral1",
3469
+ # },
3470
+ # ],
3471
+ # description: "An AMI for my server",
3472
+ # instance_id: "i-1234567890abcdef0",
3473
+ # name: "My server",
3474
+ # no_reboot: true,
3475
+ # })
3476
+ #
3477
+ # resp.to_h outputs the following:
3478
+ # {
3479
+ # image_id: "ami-1a2b3c4d",
3480
+ # }
3481
+ #
3276
3482
  # @example Request syntax with placeholder values
3277
3483
  #
3278
3484
  # resp = client.create_image({
@@ -3540,6 +3746,52 @@ module Aws::EC2
3540
3746
  #
3541
3747
  # * {Types::CreateLaunchTemplateResult#launch_template #launch_template} => Types::LaunchTemplate
3542
3748
  #
3749
+ #
3750
+ # @example Example: To create a launch template
3751
+ #
3752
+ # # This example creates a launch template that specifies the subnet in which to launch the instance, assigns a public IP
3753
+ # # address and an IPv6 address to the instance, and creates a tag for the instance.
3754
+ #
3755
+ # resp = client.create_launch_template({
3756
+ # launch_template_data: {
3757
+ # image_id: "ami-8c1be5f6",
3758
+ # instance_type: "t2.small",
3759
+ # network_interfaces: [
3760
+ # {
3761
+ # associate_public_ip_address: true,
3762
+ # device_index: 0,
3763
+ # ipv_6_address_count: 1,
3764
+ # subnet_id: "subnet-7b16de0c",
3765
+ # },
3766
+ # ],
3767
+ # tag_specifications: [
3768
+ # {
3769
+ # resource_type: "instance",
3770
+ # tags: [
3771
+ # {
3772
+ # key: "Name",
3773
+ # value: "webserver",
3774
+ # },
3775
+ # ],
3776
+ # },
3777
+ # ],
3778
+ # },
3779
+ # launch_template_name: "my-template",
3780
+ # version_description: "WebVersion1",
3781
+ # })
3782
+ #
3783
+ # resp.to_h outputs the following:
3784
+ # {
3785
+ # launch_template: {
3786
+ # create_time: Time.parse("2017-11-27T09:13:24.000Z"),
3787
+ # created_by: "arn:aws:iam::123456789012:root",
3788
+ # default_version_number: 1,
3789
+ # latest_version_number: 1,
3790
+ # launch_template_id: "lt-01238c059e3466abc",
3791
+ # launch_template_name: "my-template",
3792
+ # },
3793
+ # }
3794
+ #
3543
3795
  # @example Request syntax with placeholder values
3544
3796
  #
3545
3797
  # resp = client.create_launch_template({
@@ -3715,6 +3967,50 @@ module Aws::EC2
3715
3967
  #
3716
3968
  # * {Types::CreateLaunchTemplateVersionResult#launch_template_version #launch_template_version} => Types::LaunchTemplateVersion
3717
3969
  #
3970
+ #
3971
+ # @example Example: To create a launch template version
3972
+ #
3973
+ # # This example creates a new launch template version based on version 1 of the specified launch template and specifies a
3974
+ # # different AMI ID.
3975
+ #
3976
+ # resp = client.create_launch_template_version({
3977
+ # launch_template_data: {
3978
+ # image_id: "ami-c998b6b2",
3979
+ # },
3980
+ # launch_template_id: "lt-0abcd290751193123",
3981
+ # source_version: "1",
3982
+ # version_description: "WebVersion2",
3983
+ # })
3984
+ #
3985
+ # resp.to_h outputs the following:
3986
+ # {
3987
+ # launch_template_version: {
3988
+ # create_time: Time.parse("2017-12-01T13:35:46.000Z"),
3989
+ # created_by: "arn:aws:iam::123456789012:root",
3990
+ # default_version: false,
3991
+ # launch_template_data: {
3992
+ # image_id: "ami-c998b6b2",
3993
+ # instance_type: "t2.micro",
3994
+ # network_interfaces: [
3995
+ # {
3996
+ # associate_public_ip_address: true,
3997
+ # device_index: 0,
3998
+ # ipv_6_addresses: [
3999
+ # {
4000
+ # ipv_6_address: "2001:db8:1234:1a00::123",
4001
+ # },
4002
+ # ],
4003
+ # subnet_id: "subnet-7b16de0c",
4004
+ # },
4005
+ # ],
4006
+ # },
4007
+ # launch_template_id: "lt-0abcd290751193123",
4008
+ # launch_template_name: "my-template",
4009
+ # version_description: "WebVersion2",
4010
+ # version_number: 2,
4011
+ # },
4012
+ # }
4013
+ #
3718
4014
  # @example Request syntax with placeholder values
3719
4015
  #
3720
4016
  # resp = client.create_launch_template_version({
@@ -4927,6 +5223,22 @@ module Aws::EC2
4927
5223
  #
4928
5224
  # * {Types::CreateSecurityGroupResult#group_id #group_id} => String
4929
5225
  #
5226
+ #
5227
+ # @example Example: To create a security group for a VPC
5228
+ #
5229
+ # # This example creates a security group for the specified VPC.
5230
+ #
5231
+ # resp = client.create_security_group({
5232
+ # description: "My security group",
5233
+ # group_name: "my-security-group",
5234
+ # vpc_id: "vpc-1a2b3c4d",
5235
+ # })
5236
+ #
5237
+ # resp.to_h outputs the following:
5238
+ # {
5239
+ # group_id: "sg-903004f8",
5240
+ # }
5241
+ #
4930
5242
  # @example Request syntax with placeholder values
4931
5243
  #
4932
5244
  # resp = client.create_security_group({
@@ -6437,12 +6749,12 @@ module Aws::EC2
6437
6749
 
6438
6750
  # Deletes the specified EC2 Fleet.
6439
6751
  #
6440
- # After you delete an EC2 Fleet, the EC2 Fleet launches no new
6441
- # instances. You must specify whether the EC2 Fleet should also
6442
- # terminate its instances. If you terminate the instances, the EC2 Fleet
6443
- # enters the `deleted_terminating` state. Otherwise, the EC2 Fleet
6444
- # enters the `deleted_running` state, and the instances continue to run
6445
- # until they are interrupted or you terminate them manually.
6752
+ # After you delete an EC2 Fleet, it launches no new instances. You must
6753
+ # specify whether an EC2 Fleet should also terminate its instances. If
6754
+ # you terminate the instances, the EC2 Fleet enters the
6755
+ # `deleted_terminating` state. Otherwise, the EC2 Fleet enters the
6756
+ # `deleted_running` state, and the instances continue to run until they
6757
+ # are interrupted or you terminate them manually.
6446
6758
  #
6447
6759
  # @option params [Boolean] :dry_run
6448
6760
  # Checks whether you have the required permissions for the action,
@@ -6655,6 +6967,27 @@ module Aws::EC2
6655
6967
  #
6656
6968
  # * {Types::DeleteLaunchTemplateResult#launch_template #launch_template} => Types::LaunchTemplate
6657
6969
  #
6970
+ #
6971
+ # @example Example: To delete a launch template
6972
+ #
6973
+ # # This example deletes the specified launch template.
6974
+ #
6975
+ # resp = client.delete_launch_template({
6976
+ # launch_template_id: "lt-0abcd290751193123",
6977
+ # })
6978
+ #
6979
+ # resp.to_h outputs the following:
6980
+ # {
6981
+ # launch_template: {
6982
+ # create_time: Time.parse("2017-11-23T16:46:25.000Z"),
6983
+ # created_by: "arn:aws:iam::123456789012:root",
6984
+ # default_version_number: 2,
6985
+ # latest_version_number: 2,
6986
+ # launch_template_id: "lt-0abcd290751193123",
6987
+ # launch_template_name: "my-template",
6988
+ # },
6989
+ # }
6990
+ #
6658
6991
  # @example Request syntax with placeholder values
6659
6992
  #
6660
6993
  # resp = client.delete_launch_template({
@@ -6712,6 +7045,31 @@ module Aws::EC2
6712
7045
  # * {Types::DeleteLaunchTemplateVersionsResult#successfully_deleted_launch_template_versions #successfully_deleted_launch_template_versions} => Array&lt;Types::DeleteLaunchTemplateVersionsResponseSuccessItem&gt;
6713
7046
  # * {Types::DeleteLaunchTemplateVersionsResult#unsuccessfully_deleted_launch_template_versions #unsuccessfully_deleted_launch_template_versions} => Array&lt;Types::DeleteLaunchTemplateVersionsResponseErrorItem&gt;
6714
7047
  #
7048
+ #
7049
+ # @example Example: To delete a launch template version
7050
+ #
7051
+ # # This example deletes the specified launch template version.
7052
+ #
7053
+ # resp = client.delete_launch_template_versions({
7054
+ # launch_template_id: "lt-0abcd290751193123",
7055
+ # versions: [
7056
+ # "1",
7057
+ # ],
7058
+ # })
7059
+ #
7060
+ # resp.to_h outputs the following:
7061
+ # {
7062
+ # successfully_deleted_launch_template_versions: [
7063
+ # {
7064
+ # launch_template_id: "lt-0abcd290751193123",
7065
+ # launch_template_name: "my-template",
7066
+ # version_number: 1,
7067
+ # },
7068
+ # ],
7069
+ # unsuccessfully_deleted_launch_template_versions: [
7070
+ # ],
7071
+ # }
7072
+ #
6715
7073
  # @example Request syntax with placeholder values
6716
7074
  #
6717
7075
  # resp = client.delete_launch_template_versions({
@@ -7119,6 +7477,19 @@ module Aws::EC2
7119
7477
  #
7120
7478
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
7121
7479
  #
7480
+ #
7481
+ # @example Example: To delete a security group
7482
+ #
7483
+ # # This example deletes the specified security group.
7484
+ #
7485
+ # resp = client.delete_security_group({
7486
+ # group_id: "sg-903004f8",
7487
+ # })
7488
+ #
7489
+ # resp.to_h outputs the following:
7490
+ # {
7491
+ # }
7492
+ #
7122
7493
  # @example Request syntax with placeholder values
7123
7494
  #
7124
7495
  # resp = client.delete_security_group({
@@ -7927,13 +8298,9 @@ module Aws::EC2
7927
8298
  # Purpose=X, specify `tag:Purpose` for the filter name and `X` for the
7928
8299
  # filter value.
7929
8300
  #
7930
- # * `tag-key` - The key of a tag assigned to the resource. This filter
7931
- # is independent of the `tag-value` filter. For example, if you use
7932
- # both the filter "tag-key=Purpose" and the filter "tag-value=X",
7933
- # you get any resources assigned both the tag key Purpose (regardless
7934
- # of what the tag's value is), and the tag value X (regardless of the
7935
- # tag's key). If you want to list only resources where Purpose is X,
7936
- # see the `tag`\:*key*=*value* filter.
8301
+ # * `tag-key` - The key of a tag assigned to the resource. Use this
8302
+ # filter to find all resources assigned a tag with a specific key,
8303
+ # regardless of the tag value.
7937
8304
  #
7938
8305
  # @option params [Array<String>] :public_ips
7939
8306
  # \[EC2-Classic\] One or more Elastic IP addresses.
@@ -8353,16 +8720,9 @@ module Aws::EC2
8353
8720
  # * `tag`\:*key*=*value* - The key/value combination of a tag assigned
8354
8721
  # to the resource.
8355
8722
  #
8356
- # * `tag-key` - The key of a tag assigned to the resource. This filter
8357
- # is independent of the `tag-value` filter. For example, if you use
8358
- # both the filter "tag-key=Purpose" and the filter "tag-value=X",
8359
- # you get any resources assigned both the tag key Purpose (regardless
8360
- # of what the tag's value is), and the tag value X (regardless of
8361
- # what the tag's key is). If you want to list only resources where
8362
- # Purpose is X, see the `tag`\:*key*=*value* filter.
8363
- #
8364
- # * `tag-value` - The value of a tag assigned to the resource. This
8365
- # filter is independent of the `tag-key` filter.
8723
+ # * `tag-key` - The key of a tag assigned to the resource. Use this
8724
+ # filter to find all resources assigned a tag with a specific key,
8725
+ # regardless of the tag value.
8366
8726
  #
8367
8727
  # * `vpc-id` - The ID of the VPC that the instance is linked to.
8368
8728
  #
@@ -8544,16 +8904,9 @@ module Aws::EC2
8544
8904
  # Purpose=X, specify `tag:Purpose` for the filter name and `X` for the
8545
8905
  # filter value.
8546
8906
  #
8547
- # * `tag-key` - The key of a tag assigned to the resource. This filter
8548
- # is independent of the `tag-value` filter. For example, if you use
8549
- # both the filter "tag-key=Purpose" and the filter "tag-value=X",
8550
- # you get any resources assigned both the tag key Purpose (regardless
8551
- # of what the tag's value is), and the tag value X (regardless of
8552
- # what the tag's key is). If you want to list only resources where
8553
- # Purpose is X, see the `tag`\:*key*=*value* filter.
8554
- #
8555
- # * `tag-value` - The value of a tag assigned to the resource. This
8556
- # filter is independent of the `tag-key` filter.
8907
+ # * `tag-key` - The key of a tag assigned to the resource. Use this
8908
+ # filter to find all resources assigned a tag with a specific key,
8909
+ # regardless of the tag value.
8557
8910
  #
8558
8911
  # @option params [Boolean] :dry_run
8559
8912
  # Checks whether you have the required permissions for the action,
@@ -8652,16 +9005,9 @@ module Aws::EC2
8652
9005
  # Purpose=X, specify `tag:Purpose` for the filter name and `X` for the
8653
9006
  # filter value.
8654
9007
  #
8655
- # * `tag-key` - The key of a tag assigned to the resource. This filter
8656
- # is independent of the `tag-value` filter. For example, if you use
8657
- # both the filter "tag-key=Purpose" and the filter "tag-value=X",
8658
- # you get any resources assigned both the tag key Purpose (regardless
8659
- # of what the tag's value is), and the tag value X (regardless of
8660
- # what the tag's key is). If you want to list only resources where
8661
- # Purpose is X, see the `tag`\:*key*=*value* filter.
8662
- #
8663
- # * `tag-value` - The value of a tag assigned to the resource. This
8664
- # filter is independent of the `tag-key` filter.
9008
+ # * `tag-key` - The key of a tag assigned to the resource. Use this
9009
+ # filter to find all resources assigned a tag with a specific key,
9010
+ # regardless of the tag value.
8665
9011
  #
8666
9012
  # @option params [Boolean] :dry_run
8667
9013
  # Checks whether you have the required permissions for the action,
@@ -9006,6 +9352,10 @@ module Aws::EC2
9006
9352
  # @option params [Array<Types::Filter>] :filters
9007
9353
  # One or more filters.
9008
9354
  #
9355
+ # * `instance-type` - The instance type.
9356
+ #
9357
+ # ^
9358
+ #
9009
9359
  # @return [Types::DescribeFleetInstancesResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
9010
9360
  #
9011
9361
  # * {Types::DescribeFleetInstancesResult#active_instances #active_instances} => Array&lt;Types::ActiveInstance&gt;
@@ -9046,7 +9396,7 @@ module Aws::EC2
9046
9396
  req.send_request(options)
9047
9397
  end
9048
9398
 
9049
- # Describes the specified EC2 Fleet.
9399
+ # Describes one or more of your EC2 Fleet.
9050
9400
  #
9051
9401
  # @option params [Boolean] :dry_run
9052
9402
  # Checks whether you have the required permissions for the action,
@@ -9069,6 +9419,22 @@ module Aws::EC2
9069
9419
  # @option params [Array<Types::Filter>] :filters
9070
9420
  # One or more filters.
9071
9421
  #
9422
+ # * `activity-status` - The progress of the EC2 Fleet ( `error` \|
9423
+ # `pending-fulfillment` \| `pending-termination` \| `fulfilled`).
9424
+ #
9425
+ # * `excess-capacity-termination-policy` - Indicates whether to
9426
+ # terminate running instances if the target capacity is decreased
9427
+ # below the current EC2 Fleet size (`true` \| `false`).
9428
+ #
9429
+ # * `fleet-state` - The state of the EC2 Fleet (`submitted` \| `active`
9430
+ # \| `deleted` \| `failed` \| `deleted-running` \|
9431
+ # `deleted-terminating` \| `modifying`).
9432
+ #
9433
+ # * `replace-unhealthy-instances` - Indicates whether EC2 Fleet should
9434
+ # replace unhealthy instances (`true` \| `false`).
9435
+ #
9436
+ # * `type` - The type of request (`request` \| `maintain`).
9437
+ #
9072
9438
  # @return [Types::DescribeFleetsResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
9073
9439
  #
9074
9440
  # * {Types::DescribeFleetsResult#next_token #next_token} => String
@@ -9302,16 +9668,9 @@ module Aws::EC2
9302
9668
  # Purpose=X, specify `tag:Purpose` for the filter name and `X` for the
9303
9669
  # filter value.
9304
9670
  #
9305
- # * `tag-key` - The key of a tag assigned to the resource. This filter
9306
- # is independent of the `tag-value` filter. For example, if you use
9307
- # both the filter "tag-key=Purpose" and the filter "tag-value=X",
9308
- # you get any resources assigned both the tag key Purpose (regardless
9309
- # of what the tag's value is), and the tag value X (regardless of
9310
- # what the tag's key is). If you want to list only resources where
9311
- # Purpose is X, see the `tag`\:*key*=*value* filter.
9312
- #
9313
- # * `tag-value` - The value of a tag assigned to the resource. This
9314
- # filter is independent of the `tag-key` filter.
9671
+ # * `tag-key` - The key of a tag assigned to the resource. Use this
9672
+ # filter to find all resources assigned a tag with a specific key,
9673
+ # regardless of the tag value.
9315
9674
  #
9316
9675
  # * `update-time` - The time of the most recent update.
9317
9676
  #
@@ -9573,6 +9932,10 @@ module Aws::EC2
9573
9932
  # `under-assessment` \| `permanent-failure` \| `released` \|
9574
9933
  # `released-permanent-failure`).
9575
9934
  #
9935
+ # * `tag-key` - The key of a tag assigned to the resource. Use this
9936
+ # filter to find all resources assigned a tag with a specific key,
9937
+ # regardless of the tag value.
9938
+ #
9576
9939
  # @option params [Array<String>] :host_ids
9577
9940
  # The IDs of the Dedicated Hosts. The IDs are used for targeted instance
9578
9941
  # launches.
@@ -9630,6 +9993,9 @@ module Aws::EC2
9630
9993
  # resp.hosts[0].state #=> String, one of "available", "under-assessment", "permanent-failure", "released", "released-permanent-failure"
9631
9994
  # resp.hosts[0].allocation_time #=> Time
9632
9995
  # resp.hosts[0].release_time #=> Time
9996
+ # resp.hosts[0].tags #=> Array
9997
+ # resp.hosts[0].tags[0].key #=> String
9998
+ # resp.hosts[0].tags[0].value #=> String
9633
9999
  # resp.next_token #=> String
9634
10000
  #
9635
10001
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeHosts AWS API Documentation
@@ -9667,15 +10033,41 @@ module Aws::EC2
9667
10033
  # * {Types::DescribeIamInstanceProfileAssociationsResult#iam_instance_profile_associations #iam_instance_profile_associations} => Array&lt;Types::IamInstanceProfileAssociation&gt;
9668
10034
  # * {Types::DescribeIamInstanceProfileAssociationsResult#next_token #next_token} => String
9669
10035
  #
9670
- # @example Request syntax with placeholder values
10036
+ #
10037
+ # @example Example: To describe an IAM instance profile association
10038
+ #
10039
+ # # This example describes the specified IAM instance profile association.
9671
10040
  #
9672
10041
  # resp = client.describe_iam_instance_profile_associations({
9673
- # association_ids: ["String"],
9674
- # filters: [
9675
- # {
9676
- # name: "String",
9677
- # values: ["String"],
9678
- # },
10042
+ # association_ids: [
10043
+ # "iip-assoc-0db249b1f25fa24b8",
10044
+ # ],
10045
+ # })
10046
+ #
10047
+ # resp.to_h outputs the following:
10048
+ # {
10049
+ # iam_instance_profile_associations: [
10050
+ # {
10051
+ # association_id: "iip-assoc-0db249b1f25fa24b8",
10052
+ # iam_instance_profile: {
10053
+ # arn: "arn:aws:iam::123456789012:instance-profile/admin-role",
10054
+ # id: "AIPAJVQN4F5WVLGCJDRGM",
10055
+ # },
10056
+ # instance_id: "i-09eb09efa73ec1dee",
10057
+ # state: "associated",
10058
+ # },
10059
+ # ],
10060
+ # }
10061
+ #
10062
+ # @example Request syntax with placeholder values
10063
+ #
10064
+ # resp = client.describe_iam_instance_profile_associations({
10065
+ # association_ids: ["String"],
10066
+ # filters: [
10067
+ # {
10068
+ # name: "String",
10069
+ # values: ["String"],
10070
+ # },
9679
10071
  # ],
9680
10072
  # max_results: 1,
9681
10073
  # next_token: "NextToken",
@@ -9866,6 +10258,26 @@ module Aws::EC2
9866
10258
  # * {Types::ImageAttribute#ramdisk_id #ramdisk_id} => Types::AttributeValue
9867
10259
  # * {Types::ImageAttribute#sriov_net_support #sriov_net_support} => Types::AttributeValue
9868
10260
  #
10261
+ #
10262
+ # @example Example: To describe the launch permissions for an AMI
10263
+ #
10264
+ # # This example describes the launch permissions for the specified AMI.
10265
+ #
10266
+ # resp = client.describe_image_attribute({
10267
+ # attribute: "launchPermission",
10268
+ # image_id: "ami-5731123e",
10269
+ # })
10270
+ #
10271
+ # resp.to_h outputs the following:
10272
+ # {
10273
+ # image_id: "ami-5731123e",
10274
+ # launch_permissions: [
10275
+ # {
10276
+ # user_id: "123456789012",
10277
+ # },
10278
+ # ],
10279
+ # }
10280
+ #
9869
10281
  # @example Request syntax with placeholder values
9870
10282
  #
9871
10283
  # resp = client.describe_image_attribute({
@@ -10003,16 +10415,9 @@ module Aws::EC2
10003
10415
  # Purpose=X, specify `tag:Purpose` for the filter name and `X` for the
10004
10416
  # filter value.
10005
10417
  #
10006
- # * `tag-key` - The key of a tag assigned to the resource. This filter
10007
- # is independent of the tag-value filter. For example, if you use both
10008
- # the filter "tag-key=Purpose" and the filter "tag-value=X", you
10009
- # get any resources assigned both the tag key Purpose (regardless of
10010
- # what the tag's value is), and the tag value X (regardless of what
10011
- # the tag's key is). If you want to list only resources where Purpose
10012
- # is X, see the `tag`\:*key*=*value* filter.
10013
- #
10014
- # * `tag-value` - The value of a tag assigned to the resource. This
10015
- # filter is independent of the `tag-key` filter.
10418
+ # * `tag-key` - The key of a tag assigned to the resource. Use this
10419
+ # filter to find all resources assigned a tag with a specific key,
10420
+ # regardless of the tag value.
10016
10421
  #
10017
10422
  # * `virtualization-type` - The virtualization type (`paravirtual` \|
10018
10423
  # `hvm`).
@@ -10039,6 +10444,50 @@ module Aws::EC2
10039
10444
  #
10040
10445
  # * {Types::DescribeImagesResult#images #images} => Array&lt;Types::Image&gt;
10041
10446
  #
10447
+ #
10448
+ # @example Example: To describe an AMI
10449
+ #
10450
+ # # This example describes the specified AMI.
10451
+ #
10452
+ # resp = client.describe_images({
10453
+ # image_ids: [
10454
+ # "ami-5731123e",
10455
+ # ],
10456
+ # })
10457
+ #
10458
+ # resp.to_h outputs the following:
10459
+ # {
10460
+ # images: [
10461
+ # {
10462
+ # architecture: "x86_64",
10463
+ # block_device_mappings: [
10464
+ # {
10465
+ # device_name: "/dev/sda1",
10466
+ # ebs: {
10467
+ # delete_on_termination: true,
10468
+ # snapshot_id: "snap-1234567890abcdef0",
10469
+ # volume_size: 8,
10470
+ # volume_type: "standard",
10471
+ # },
10472
+ # },
10473
+ # ],
10474
+ # description: "An AMI for my server",
10475
+ # hypervisor: "xen",
10476
+ # image_id: "ami-5731123e",
10477
+ # image_location: "123456789012/My server",
10478
+ # image_type: "machine",
10479
+ # kernel_id: "aki-88aa75e1",
10480
+ # name: "My server",
10481
+ # owner_id: "123456789012",
10482
+ # public: false,
10483
+ # root_device_name: "/dev/sda1",
10484
+ # root_device_type: "ebs",
10485
+ # state: "available",
10486
+ # virtualization_type: "paravirtual",
10487
+ # },
10488
+ # ],
10489
+ # }
10490
+ #
10042
10491
  # @example Request syntax with placeholder values
10043
10492
  #
10044
10493
  # resp = client.describe_images({
@@ -10602,6 +11051,49 @@ module Aws::EC2
10602
11051
  # * {Types::DescribeInstanceStatusResult#instance_statuses #instance_statuses} => Array&lt;Types::InstanceStatus&gt;
10603
11052
  # * {Types::DescribeInstanceStatusResult#next_token #next_token} => String
10604
11053
  #
11054
+ #
11055
+ # @example Example: To describe the status of an instance
11056
+ #
11057
+ # # This example describes the current status of the specified instance.
11058
+ #
11059
+ # resp = client.describe_instance_status({
11060
+ # instance_ids: [
11061
+ # "i-1234567890abcdef0",
11062
+ # ],
11063
+ # })
11064
+ #
11065
+ # resp.to_h outputs the following:
11066
+ # {
11067
+ # instance_statuses: [
11068
+ # {
11069
+ # availability_zone: "us-east-1d",
11070
+ # instance_id: "i-1234567890abcdef0",
11071
+ # instance_state: {
11072
+ # code: 16,
11073
+ # name: "running",
11074
+ # },
11075
+ # instance_status: {
11076
+ # details: [
11077
+ # {
11078
+ # name: "reachability",
11079
+ # status: "passed",
11080
+ # },
11081
+ # ],
11082
+ # status: "ok",
11083
+ # },
11084
+ # system_status: {
11085
+ # details: [
11086
+ # {
11087
+ # name: "reachability",
11088
+ # status: "passed",
11089
+ # },
11090
+ # ],
11091
+ # status: "ok",
11092
+ # },
11093
+ # },
11094
+ # ],
11095
+ # }
11096
+ #
10605
11097
  # @example Request syntax with placeholder values
10606
11098
  #
10607
11099
  # resp = client.describe_instance_status({
@@ -10913,16 +11405,9 @@ module Aws::EC2
10913
11405
  # Purpose=X, specify `tag:Purpose` for the filter name and `X` for the
10914
11406
  # filter value.
10915
11407
  #
10916
- # * `tag-key` - The key of a tag assigned to the resource. This filter
10917
- # is independent of the `tag-value` filter. For example, if you use
10918
- # both the filter "tag-key=Purpose" and the filter "tag-value=X",
10919
- # you get any resources assigned both the tag key Purpose (regardless
10920
- # of what the tag's value is), and the tag value X (regardless of the
10921
- # tag's key). If you want to list only resources where Purpose is X,
10922
- # see the `tag`\:*key*=*value* filter.
10923
- #
10924
- # * `tag-value` - The value of a tag assigned to the resource. This
10925
- # filter is independent of the `tag-key` filter.
11408
+ # * `tag-key` - The key of a tag assigned to the resource. Use this
11409
+ # filter to find all resources assigned a tag with a specific key,
11410
+ # regardless of the tag value.
10926
11411
  #
10927
11412
  # * `tenancy` - The tenancy of an instance (`dedicated` \| `default` \|
10928
11413
  # `host`).
@@ -10957,6 +11442,59 @@ module Aws::EC2
10957
11442
  # * {Types::DescribeInstancesResult#reservations #reservations} => Array&lt;Types::Reservation&gt;
10958
11443
  # * {Types::DescribeInstancesResult#next_token #next_token} => String
10959
11444
  #
11445
+ #
11446
+ # @example Example: To describe an Amazon EC2 instance
11447
+ #
11448
+ # # This example describes the specified instance.
11449
+ #
11450
+ # resp = client.describe_instances({
11451
+ # instance_ids: [
11452
+ # "i-1234567890abcdef0",
11453
+ # ],
11454
+ # })
11455
+ #
11456
+ # resp.to_h outputs the following:
11457
+ # {
11458
+ # }
11459
+ #
11460
+ # @example Example: To describe the instances with a specific instance type
11461
+ #
11462
+ # # This example describes the instances with the t2.micro instance type.
11463
+ #
11464
+ # resp = client.describe_instances({
11465
+ # filters: [
11466
+ # {
11467
+ # name: "instance-type",
11468
+ # values: [
11469
+ # "t2.micro",
11470
+ # ],
11471
+ # },
11472
+ # ],
11473
+ # })
11474
+ #
11475
+ # resp.to_h outputs the following:
11476
+ # {
11477
+ # }
11478
+ #
11479
+ # @example Example: To describe the instances with a specific tag
11480
+ #
11481
+ # # This example describes the instances with the Purpose=test tag.
11482
+ #
11483
+ # resp = client.describe_instances({
11484
+ # filters: [
11485
+ # {
11486
+ # name: "tag:Purpose",
11487
+ # values: [
11488
+ # "test",
11489
+ # ],
11490
+ # },
11491
+ # ],
11492
+ # })
11493
+ #
11494
+ # resp.to_h outputs the following:
11495
+ # {
11496
+ # }
11497
+ #
10960
11498
  # @example Filtering by tags examples
10961
11499
  # # filtering by tag keys "key1" or "key2"
10962
11500
  # ec2.describe_instances(filters:[{ name: 'tag-key', values: ['key1', 'key2'] }])
@@ -11116,16 +11654,9 @@ module Aws::EC2
11116
11654
  # Purpose=X, specify `tag:Purpose` for the filter name and `X` for the
11117
11655
  # filter value.
11118
11656
  #
11119
- # * `tag-key` - The key of a tag assigned to the resource. This filter
11120
- # is independent of the `tag-value` filter. For example, if you use
11121
- # both the filter "tag-key=Purpose" and the filter "tag-value=X",
11122
- # you get any resources assigned both the tag key Purpose (regardless
11123
- # of what the tag's value is), and the tag value X (regardless of
11124
- # what the tag's key is). If you want to list only resources where
11125
- # Purpose is X, see the `tag`\:*key*=*value* filter.
11126
- #
11127
- # * `tag-value` - The value of a tag assigned to the resource. This
11128
- # filter is independent of the `tag-key` filter.
11657
+ # * `tag-key` - The key of a tag assigned to the resource. Use this
11658
+ # filter to find all resources assigned a tag with a specific key,
11659
+ # regardless of the tag value.
11129
11660
  #
11130
11661
  # @option params [Boolean] :dry_run
11131
11662
  # Checks whether you have the required permissions for the action,
@@ -11320,7 +11851,7 @@ module Aws::EC2
11320
11851
  # @option params [Integer] :max_results
11321
11852
  # The maximum number of results to return in a single call. To retrieve
11322
11853
  # the remaining results, make another call with the returned `NextToken`
11323
- # value. This value can be between 5 and 1000.
11854
+ # value. This value can be between 1 and 200.
11324
11855
  #
11325
11856
  # @option params [Array<Types::Filter>] :filters
11326
11857
  # One or more filters.
@@ -11348,6 +11879,68 @@ module Aws::EC2
11348
11879
  # * {Types::DescribeLaunchTemplateVersionsResult#launch_template_versions #launch_template_versions} => Array&lt;Types::LaunchTemplateVersion&gt;
11349
11880
  # * {Types::DescribeLaunchTemplateVersionsResult#next_token #next_token} => String
11350
11881
  #
11882
+ #
11883
+ # @example Example: To describe the versions for a launch template
11884
+ #
11885
+ # # This example describes the versions for the specified launch template.
11886
+ #
11887
+ # resp = client.describe_launch_template_versions({
11888
+ # launch_template_id: "068f72b72934aff71",
11889
+ # })
11890
+ #
11891
+ # resp.to_h outputs the following:
11892
+ # {
11893
+ # launch_template_versions: [
11894
+ # {
11895
+ # create_time: Time.parse("2017-11-20T13:12:32.000Z"),
11896
+ # created_by: "arn:aws:iam::123456789102:root",
11897
+ # default_version: false,
11898
+ # launch_template_data: {
11899
+ # image_id: "ami-6057e21a",
11900
+ # instance_type: "t2.medium",
11901
+ # key_name: "kp-us-east",
11902
+ # network_interfaces: [
11903
+ # {
11904
+ # device_index: 0,
11905
+ # groups: [
11906
+ # "sg-7c227019",
11907
+ # ],
11908
+ # subnet_id: "subnet-1a2b3c4d",
11909
+ # },
11910
+ # ],
11911
+ # },
11912
+ # launch_template_id: "lt-068f72b72934aff71",
11913
+ # launch_template_name: "Webservers",
11914
+ # version_number: 2,
11915
+ # },
11916
+ # {
11917
+ # create_time: Time.parse("2017-11-20T12:52:33.000Z"),
11918
+ # created_by: "arn:aws:iam::123456789102:root",
11919
+ # default_version: true,
11920
+ # launch_template_data: {
11921
+ # image_id: "ami-aabbcc11",
11922
+ # instance_type: "t2.medium",
11923
+ # key_name: "kp-us-east",
11924
+ # network_interfaces: [
11925
+ # {
11926
+ # associate_public_ip_address: true,
11927
+ # delete_on_termination: false,
11928
+ # device_index: 0,
11929
+ # groups: [
11930
+ # "sg-7c227019",
11931
+ # ],
11932
+ # subnet_id: "subnet-7b16de0c",
11933
+ # },
11934
+ # ],
11935
+ # user_data: "",
11936
+ # },
11937
+ # launch_template_id: "lt-068f72b72934aff71",
11938
+ # launch_template_name: "Webservers",
11939
+ # version_number: 1,
11940
+ # },
11941
+ # ],
11942
+ # }
11943
+ #
11351
11944
  # @example Request syntax with placeholder values
11352
11945
  #
11353
11946
  # resp = client.describe_launch_template_versions({
@@ -11479,13 +12072,9 @@ module Aws::EC2
11479
12072
  # Purpose=X, specify `tag:Purpose` for the filter name and `X` for the
11480
12073
  # filter value.
11481
12074
  #
11482
- # * `tag-key` - The key of a tag assigned to the resource. This filter
11483
- # is independent of the `tag-value` filter. For example, if you use
11484
- # both the filter "tag-key=Purpose" and the filter "tag-value=X",
11485
- # you get any resources assigned both the tag key Purpose (regardless
11486
- # of what the tag's value is), and the tag value X (regardless of the
11487
- # tag's key). If you want to list only resources where Purpose is X,
11488
- # see the `tag`\:*key*=*value* filter.
12075
+ # * `tag-key` - The key of a tag assigned to the resource. Use this
12076
+ # filter to find all resources assigned a tag with a specific key,
12077
+ # regardless of the tag value.
11489
12078
  #
11490
12079
  # @option params [String] :next_token
11491
12080
  # The token to request the next page of results.
@@ -11500,6 +12089,31 @@ module Aws::EC2
11500
12089
  # * {Types::DescribeLaunchTemplatesResult#launch_templates #launch_templates} => Array&lt;Types::LaunchTemplate&gt;
11501
12090
  # * {Types::DescribeLaunchTemplatesResult#next_token #next_token} => String
11502
12091
  #
12092
+ #
12093
+ # @example Example: To describe a launch template
12094
+ #
12095
+ # # This example describes the specified launch template.
12096
+ #
12097
+ # resp = client.describe_launch_templates({
12098
+ # launch_template_ids: [
12099
+ # "lt-01238c059e3466abc",
12100
+ # ],
12101
+ # })
12102
+ #
12103
+ # resp.to_h outputs the following:
12104
+ # {
12105
+ # launch_templates: [
12106
+ # {
12107
+ # create_time: Time.parse("2018-01-16T04:32:57.000Z"),
12108
+ # created_by: "arn:aws:iam::123456789012:root",
12109
+ # default_version_number: 1,
12110
+ # latest_version_number: 1,
12111
+ # launch_template_id: "lt-01238c059e3466abc",
12112
+ # launch_template_name: "my-template",
12113
+ # },
12114
+ # ],
12115
+ # }
12116
+ #
11503
12117
  # @example Request syntax with placeholder values
11504
12118
  #
11505
12119
  # resp = client.describe_launch_templates({
@@ -11645,16 +12259,9 @@ module Aws::EC2
11645
12259
  # Purpose=X, specify `tag:Purpose` for the filter name and `X` for the
11646
12260
  # filter value.
11647
12261
  #
11648
- # * `tag-key` - The key of a tag assigned to the resource. This filter
11649
- # is independent of the `tag-value` filter. For example, if you use
11650
- # both the filter "tag-key=Purpose" and the filter "tag-value=X",
11651
- # you get any resources assigned both the tag key Purpose (regardless
11652
- # of what the tag's value is), and the tag value X (regardless of
11653
- # what the tag's key is). If you want to list only resources where
11654
- # Purpose is X, see the `tag`\:*key*=*value* filter.
11655
- #
11656
- # * `tag-value` - The value of a tag assigned to the resource. This
11657
- # filter is independent of the `tag-key` filter.
12262
+ # * `tag-key` - The key of a tag assigned to the resource. Use this
12263
+ # filter to find all resources assigned a tag with a specific key,
12264
+ # regardless of the tag value.
11658
12265
  #
11659
12266
  # * `vpc-id` - The ID of the VPC in which the NAT gateway resides.
11660
12267
  #
@@ -11821,16 +12428,9 @@ module Aws::EC2
11821
12428
  # Purpose=X, specify `tag:Purpose` for the filter name and `X` for the
11822
12429
  # filter value.
11823
12430
  #
11824
- # * `tag-key` - The key of a tag assigned to the resource. This filter
11825
- # is independent of the `tag-value` filter. For example, if you use
11826
- # both the filter "tag-key=Purpose" and the filter "tag-value=X",
11827
- # you get any resources assigned both the tag key Purpose (regardless
11828
- # of what the tag's value is), and the tag value X (regardless of
11829
- # what the tag's key is). If you want to list only resources where
11830
- # Purpose is X, see the `tag`\:*key*=*value* filter.
11831
- #
11832
- # * `tag-value` - The value of a tag assigned to the resource. This
11833
- # filter is independent of the `tag-key` filter.
12431
+ # * `tag-key` - The key of a tag assigned to the resource. Use this
12432
+ # filter to find all resources assigned a tag with a specific key,
12433
+ # regardless of the tag value.
11834
12434
  #
11835
12435
  # * `vpc-id` - The ID of the VPC for the network ACL.
11836
12436
  #
@@ -12256,16 +12856,9 @@ module Aws::EC2
12256
12856
  # Purpose=X, specify `tag:Purpose` for the filter name and `X` for the
12257
12857
  # filter value.
12258
12858
  #
12259
- # * `tag-key` - The key of a tag assigned to the resource. This filter
12260
- # is independent of the `tag-value` filter. For example, if you use
12261
- # both the filter "tag-key=Purpose" and the filter "tag-value=X",
12262
- # you get any resources assigned both the tag key Purpose (regardless
12263
- # of what the tag's value is), and the tag value X (regardless of
12264
- # what the tag's key is). If you want to list only resources where
12265
- # Purpose is X, see the `tag`\:*key*=*value* filter.
12266
- #
12267
- # * `tag-value` - The value of a tag assigned to the resource. This
12268
- # filter is independent of the `tag-key` filter.
12859
+ # * `tag-key` - The key of a tag assigned to the resource. Use this
12860
+ # filter to find all resources assigned a tag with a specific key,
12861
+ # regardless of the tag value.
12269
12862
  #
12270
12863
  # * `vpc-id` - The ID of the VPC for the network interface.
12271
12864
  #
@@ -12487,6 +13080,8 @@ module Aws::EC2
12487
13080
  # the IP address range for the service. A prefix list ID is required for
12488
13081
  # creating an outbound security group rule that allows traffic from a
12489
13082
  # VPC to access an AWS service through a gateway VPC endpoint.
13083
+ # Currently, the services that support this action are Amazon S3 and
13084
+ # Amazon DynamoDB.
12490
13085
  #
12491
13086
  # @option params [Boolean] :dry_run
12492
13087
  # Checks whether you have the required permissions for the action,
@@ -12806,16 +13401,9 @@ module Aws::EC2
12806
13401
  # Purpose=X, specify `tag:Purpose` for the filter name and `X` for the
12807
13402
  # filter value.
12808
13403
  #
12809
- # * `tag-key` - The key of a tag assigned to the resource. This filter
12810
- # is independent of the `tag-value` filter. For example, if you use
12811
- # both the filter "tag-key=Purpose" and the filter "tag-value=X",
12812
- # you get any resources assigned both the tag key Purpose (regardless
12813
- # of what the tag's value is), and the tag value X (regardless of
12814
- # what the tag's key is). If you want to list only resources where
12815
- # Purpose is X, see the `tag`\:*key*=*value* filter.
12816
- #
12817
- # * `tag-value` - The value of a tag assigned to the resource. This
12818
- # filter is independent of the `tag-key` filter.
13404
+ # * `tag-key` - The key of a tag assigned to the resource. Use this
13405
+ # filter to find all resources assigned a tag with a specific key,
13406
+ # regardless of the tag value.
12819
13407
  #
12820
13408
  # * `usage-price` - The usage price of the Reserved Instance, per hour
12821
13409
  # (for example, 0.84).
@@ -13366,16 +13954,9 @@ module Aws::EC2
13366
13954
  # Purpose=X, specify `tag:Purpose` for the filter name and `X` for the
13367
13955
  # filter value.
13368
13956
  #
13369
- # * `tag-key` - The key of a tag assigned to the resource. This filter
13370
- # is independent of the `tag-value` filter. For example, if you use
13371
- # both the filter "tag-key=Purpose" and the filter "tag-value=X",
13372
- # you get any resources assigned both the tag key Purpose (regardless
13373
- # of what the tag's value is), and the tag value X (regardless of
13374
- # what the tag's key is). If you want to list only resources where
13375
- # Purpose is X, see the `tag`\:*key*=*value* filter.
13376
- #
13377
- # * `tag-value` - The value of a tag assigned to the resource. This
13378
- # filter is independent of the `tag-key` filter.
13957
+ # * `tag-key` - The key of a tag assigned to the resource. Use this
13958
+ # filter to find all resources assigned a tag with a specific key,
13959
+ # regardless of the tag value.
13379
13960
  #
13380
13961
  # * `vpc-id` - The ID of the VPC for the route table.
13381
13962
  #
@@ -13804,6 +14385,28 @@ module Aws::EC2
13804
14385
  #
13805
14386
  # * {Types::DescribeSecurityGroupReferencesResult#security_group_reference_set #security_group_reference_set} => Array&lt;Types::SecurityGroupReference&gt;
13806
14387
  #
14388
+ #
14389
+ # @example Example: To describe security group references
14390
+ #
14391
+ # # This example describes the security group references for the specified security group.
14392
+ #
14393
+ # resp = client.describe_security_group_references({
14394
+ # group_id: [
14395
+ # "sg-903004f8",
14396
+ # ],
14397
+ # })
14398
+ #
14399
+ # resp.to_h outputs the following:
14400
+ # {
14401
+ # security_group_reference_set: [
14402
+ # {
14403
+ # group_id: "sg-903004f8",
14404
+ # referencing_vpc_id: "vpc-1a2b3c4d",
14405
+ # vpc_peering_connection_id: "pcx-b04deed9",
14406
+ # },
14407
+ # ],
14408
+ # }
14409
+ #
13807
14410
  # @example Request syntax with placeholder values
13808
14411
  #
13809
14412
  # resp = client.describe_security_group_references({
@@ -13907,9 +14510,9 @@ module Aws::EC2
13907
14510
  #
13908
14511
  # * `owner-id` - The AWS account ID of the owner of the security group.
13909
14512
  #
13910
- # * `tag-key` - The key of a tag assigned to the security group.
13911
- #
13912
- # * `tag-value` - The value of a tag assigned to the security group.
14513
+ # * `tag-key` - The key of a tag assigned to the resource. Use this
14514
+ # filter to find all resources assigned a tag with a specific key,
14515
+ # regardless of the tag value.
13913
14516
  #
13914
14517
  # * `vpc-id` - The ID of the VPC specified when the security group was
13915
14518
  # created.
@@ -13948,6 +14551,40 @@ module Aws::EC2
13948
14551
  # * {Types::DescribeSecurityGroupsResult#security_groups #security_groups} => Array&lt;Types::SecurityGroup&gt;
13949
14552
  # * {Types::DescribeSecurityGroupsResult#next_token #next_token} => String
13950
14553
  #
14554
+ #
14555
+ # @example Example: To describe a security group
14556
+ #
14557
+ # # This example describes the specified security group.
14558
+ #
14559
+ # resp = client.describe_security_groups({
14560
+ # group_ids: [
14561
+ # "sg-903004f8",
14562
+ # ],
14563
+ # })
14564
+ #
14565
+ # resp.to_h outputs the following:
14566
+ # {
14567
+ # }
14568
+ #
14569
+ # @example Example: To describe a tagged security group
14570
+ #
14571
+ # # This example describes the security groups that include the specified tag (Purpose=test).
14572
+ #
14573
+ # resp = client.describe_security_groups({
14574
+ # filters: [
14575
+ # {
14576
+ # name: "tag:Purpose",
14577
+ # values: [
14578
+ # "test",
14579
+ # ],
14580
+ # },
14581
+ # ],
14582
+ # })
14583
+ #
14584
+ # resp.to_h outputs the following:
14585
+ # {
14586
+ # }
14587
+ #
13951
14588
  # @example Request syntax with placeholder values
13952
14589
  #
13953
14590
  # resp = client.describe_security_groups({
@@ -14183,16 +14820,9 @@ module Aws::EC2
14183
14820
  # Purpose=X, specify `tag:Purpose` for the filter name and `X` for the
14184
14821
  # filter value.
14185
14822
  #
14186
- # * `tag-key` - The key of a tag assigned to the resource. This filter
14187
- # is independent of the `tag-value` filter. For example, if you use
14188
- # both the filter "tag-key=Purpose" and the filter "tag-value=X",
14189
- # you get any resources assigned both the tag key Purpose (regardless
14190
- # of what the tag's value is), and the tag value X (regardless of
14191
- # what the tag's key is). If you want to list only resources where
14192
- # Purpose is X, see the `tag`\:*key*=*value* filter.
14193
- #
14194
- # * `tag-value` - The value of a tag assigned to the resource. This
14195
- # filter is independent of the `tag-key` filter.
14823
+ # * `tag-key` - The key of a tag assigned to the resource. Use this
14824
+ # filter to find all resources assigned a tag with a specific key,
14825
+ # regardless of the tag value.
14196
14826
  #
14197
14827
  # * `volume-id` - The ID of the volume the snapshot is for.
14198
14828
  #
@@ -14921,16 +15551,9 @@ module Aws::EC2
14921
15551
  # Purpose=X, specify `tag:Purpose` for the filter name and `X` for the
14922
15552
  # filter value.
14923
15553
  #
14924
- # * `tag-key` - The key of a tag assigned to the resource. This filter
14925
- # is independent of the `tag-value` filter. For example, if you use
14926
- # both the filter "tag-key=Purpose" and the filter "tag-value=X",
14927
- # you get any resources assigned both the tag key Purpose (regardless
14928
- # of what the tag's value is), and the tag value X (regardless of
14929
- # what the tag's key is). If you want to list only resources where
14930
- # Purpose is X, see the `tag`\:*key*=*value* filter.
14931
- #
14932
- # * `tag-value` - The value of a tag assigned to the resource. This
14933
- # filter is independent of the `tag-key` filter.
15554
+ # * `tag-key` - The key of a tag assigned to the resource. Use this
15555
+ # filter to find all resources assigned a tag with a specific key,
15556
+ # regardless of the tag value.
14934
15557
  #
14935
15558
  # * `type` - The type of Spot Instance request (`one-time` \|
14936
15559
  # `persistent`).
@@ -15386,16 +16009,9 @@ module Aws::EC2
15386
16009
  # Purpose=X, specify `tag:Purpose` for the filter name and `X` for the
15387
16010
  # filter value.
15388
16011
  #
15389
- # * `tag-key` - The key of a tag assigned to the resource. This filter
15390
- # is independent of the `tag-value` filter. For example, if you use
15391
- # both the filter "tag-key=Purpose" and the filter "tag-value=X",
15392
- # you get any resources assigned both the tag key Purpose (regardless
15393
- # of what the tag's value is), and the tag value X (regardless of
15394
- # what the tag's key is). If you want to list only resources where
15395
- # Purpose is X, see the `tag`\:*key*=*value* filter.
15396
- #
15397
- # * `tag-value` - The value of a tag assigned to the resource. This
15398
- # filter is independent of the `tag-key` filter.
16012
+ # * `tag-key` - The key of a tag assigned to the resource. Use this
16013
+ # filter to find all resources assigned a tag with a specific key,
16014
+ # regardless of the tag value.
15399
16015
  #
15400
16016
  # * `vpc-id` - The ID of the VPC for the subnet.
15401
16017
  #
@@ -15512,8 +16128,8 @@ module Aws::EC2
15512
16128
  # * `resource-id` - The resource ID.
15513
16129
  #
15514
16130
  # * `resource-type` - The resource type (`customer-gateway` \|
15515
- # `dhcp-options` \| `elastic-ip` \| `fpga-image` \| `image` \|
15516
- # `instance` \| `internet-gateway` \| `launch-template` \|
16131
+ # `dhcp-options` \| `elastic-ip` \| `fleet` \| `fpga-image` \| `image`
16132
+ # \| `instance` \| `internet-gateway` \| `launch-template` \|
15517
16133
  # `natgateway` \| `network-acl` \| `network-interface` \|
15518
16134
  # `reserved-instances` \| `route-table` \| `security-group` \|
15519
16135
  # `snapshot` \| `spot-instances-request` \| `subnet` \| `volume` \|
@@ -15949,16 +16565,9 @@ module Aws::EC2
15949
16565
  # Purpose=X, specify `tag:Purpose` for the filter name and `X` for the
15950
16566
  # filter value.
15951
16567
  #
15952
- # * `tag-key` - The key of a tag assigned to the resource. This filter
15953
- # is independent of the `tag-value` filter. For example, if you use
15954
- # both the filter "tag-key=Purpose" and the filter "tag-value=X",
15955
- # you get any resources assigned both the tag key Purpose (regardless
15956
- # of what the tag's value is), and the tag value X (regardless of
15957
- # what the tag's key is). If you want to list only resources where
15958
- # Purpose is X, see the `tag`\:*key*=*value* filter.
15959
- #
15960
- # * `tag-value` - The value of a tag assigned to the resource. This
15961
- # filter is independent of the `tag-key` filter.
16568
+ # * `tag-key` - The key of a tag assigned to the resource. Use this
16569
+ # filter to find all resources assigned a tag with a specific key,
16570
+ # regardless of the tag value.
15962
16571
  #
15963
16572
  # * `volume-id` - The volume ID.
15964
16573
  #
@@ -16315,16 +16924,9 @@ module Aws::EC2
16315
16924
  # Purpose=X, specify `tag:Purpose` for the filter name and `X` for the
16316
16925
  # filter value.
16317
16926
  #
16318
- # * `tag-key` - The key of a tag assigned to the resource. This filter
16319
- # is independent of the `tag-value` filter. For example, if you use
16320
- # both the filter "tag-key=Purpose" and the filter "tag-value=X",
16321
- # you get any resources assigned both the tag key Purpose (regardless
16322
- # of what the tag's value is), and the tag value X (regardless of
16323
- # what the tag's key is). If you want to list only resources where
16324
- # Purpose is X, see the `tag`\:*key*=*value* filter.
16325
- #
16326
- # * `tag-value` - The value of a tag assigned to the resource. This
16327
- # filter is independent of the `tag-key` filter.
16927
+ # * `tag-key` - The key of a tag assigned to the resource. Use this
16928
+ # filter to find all resources assigned a tag with a specific key,
16929
+ # regardless of the tag value.
16328
16930
  #
16329
16931
  # @option params [Boolean] :dry_run
16330
16932
  # Checks whether you have the required permissions for the action,
@@ -16923,16 +17525,9 @@ module Aws::EC2
16923
17525
  # Purpose=X, specify `tag:Purpose` for the filter name and `X` for the
16924
17526
  # filter value.
16925
17527
  #
16926
- # * `tag-key` - The key of a tag assigned to the resource. This filter
16927
- # is independent of the `tag-value` filter. For example, if you use
16928
- # both the filter "tag-key=Purpose" and the filter "tag-value=X",
16929
- # you get any resources assigned both the tag key Purpose (regardless
16930
- # of what the tag's value is), and the tag value X (regardless of
16931
- # what the tag's key is). If you want to list only resources where
16932
- # Purpose is X, see the `tag`\:*key*=*value* filter.
16933
- #
16934
- # * `tag-value` - The value of a tag assigned to the resource. This
16935
- # filter is independent of the `tag-key` filter.
17528
+ # * `tag-key` - The key of a tag assigned to the resource. Use this
17529
+ # filter to find all resources assigned a tag with a specific key,
17530
+ # regardless of the tag value.
16936
17531
  #
16937
17532
  # * `vpc-peering-connection-id` - The ID of the VPC peering connection.
16938
17533
  #
@@ -17046,16 +17641,9 @@ module Aws::EC2
17046
17641
  # Purpose=X, specify `tag:Purpose` for the filter name and `X` for the
17047
17642
  # filter value.
17048
17643
  #
17049
- # * `tag-key` - The key of a tag assigned to the resource. This filter
17050
- # is independent of the `tag-value` filter. For example, if you use
17051
- # both the filter "tag-key=Purpose" and the filter "tag-value=X",
17052
- # you get any resources assigned both the tag key Purpose (regardless
17053
- # of what the tag's value is), and the tag value X (regardless of
17054
- # what the tag's key is). If you want to list only resources where
17055
- # Purpose is X, see the `tag`\:*key*=*value* filter.
17056
- #
17057
- # * `tag-value` - The value of a tag assigned to the resource. This
17058
- # filter is independent of the `tag-key` filter.
17644
+ # * `tag-key` - The key of a tag assigned to the resource. Use this
17645
+ # filter to find all resources assigned a tag with a specific key,
17646
+ # regardless of the tag value.
17059
17647
  #
17060
17648
  # * `vpc-id` - The ID of the VPC.
17061
17649
  #
@@ -17187,16 +17775,9 @@ module Aws::EC2
17187
17775
  # Purpose=X, specify `tag:Purpose` for the filter name and `X` for the
17188
17776
  # filter value.
17189
17777
  #
17190
- # * `tag-key` - The key of a tag assigned to the resource. This filter
17191
- # is independent of the `tag-value` filter. For example, if you use
17192
- # both the filter "tag-key=Purpose" and the filter "tag-value=X",
17193
- # you get any resources assigned both the tag key Purpose (regardless
17194
- # of what the tag's value is), and the tag value X (regardless of
17195
- # what the tag's key is). If you want to list only resources where
17196
- # Purpose is X, see the `tag`\:*key*=*value* filter.
17197
- #
17198
- # * `tag-value` - The value of a tag assigned to the resource. This
17199
- # filter is independent of the `tag-key` filter.
17778
+ # * `tag-key` - The key of a tag assigned to the resource. Use this
17779
+ # filter to find all resources assigned a tag with a specific key,
17780
+ # regardless of the tag value.
17200
17781
  #
17201
17782
  # * `type` - The type of VPN connection. Currently the only supported
17202
17783
  # type is `ipsec.1`.
@@ -17301,16 +17882,9 @@ module Aws::EC2
17301
17882
  # Purpose=X, specify `tag:Purpose` for the filter name and `X` for the
17302
17883
  # filter value.
17303
17884
  #
17304
- # * `tag-key` - The key of a tag assigned to the resource. This filter
17305
- # is independent of the `tag-value` filter. For example, if you use
17306
- # both the filter "tag-key=Purpose" and the filter "tag-value=X",
17307
- # you get any resources assigned both the tag key Purpose (regardless
17308
- # of what the tag's value is), and the tag value X (regardless of
17309
- # what the tag's key is). If you want to list only resources where
17310
- # Purpose is X, see the `tag`\:*key*=*value* filter.
17311
- #
17312
- # * `tag-value` - The value of a tag assigned to the resource. This
17313
- # filter is independent of the `tag-key` filter.
17885
+ # * `tag-key` - The key of a tag assigned to the resource. Use this
17886
+ # filter to find all resources assigned a tag with a specific key,
17887
+ # regardless of the tag value.
17314
17888
  #
17315
17889
  # * `type` - The type of virtual private gateway. Currently the only
17316
17890
  # supported type is `ipsec.1`.
@@ -17821,6 +18395,28 @@ module Aws::EC2
17821
18395
  #
17822
18396
  # * {Types::DisassociateIamInstanceProfileResult#iam_instance_profile_association #iam_instance_profile_association} => Types::IamInstanceProfileAssociation
17823
18397
  #
18398
+ #
18399
+ # @example Example: To disassociate an IAM instance profile
18400
+ #
18401
+ # # This example disassociates the specified IAM instance profile from an instance.
18402
+ #
18403
+ # resp = client.disassociate_iam_instance_profile({
18404
+ # association_id: "iip-assoc-05020b59952902f5f",
18405
+ # })
18406
+ #
18407
+ # resp.to_h outputs the following:
18408
+ # {
18409
+ # iam_instance_profile_association: {
18410
+ # association_id: "iip-assoc-05020b59952902f5f",
18411
+ # iam_instance_profile: {
18412
+ # arn: "arn:aws:iam::123456789012:instance-profile/admin-role",
18413
+ # id: "AIPAI5IVIHMFFYY2DKV5Y",
18414
+ # },
18415
+ # instance_id: "i-123456789abcde123",
18416
+ # state: "disassociating",
18417
+ # },
18418
+ # }
18419
+ #
17824
18420
  # @example Request syntax with placeholder values
17825
18421
  #
17826
18422
  # resp = client.disassociate_iam_instance_profile({
@@ -18172,12 +18768,28 @@ module Aws::EC2
18172
18768
  # * {Types::GetConsoleOutputResult#output #output} => String
18173
18769
  # * {Types::GetConsoleOutputResult#timestamp #timestamp} => Time
18174
18770
  #
18175
- # @example Request syntax with placeholder values
18771
+ #
18772
+ # @example Example: To get the console output
18773
+ #
18774
+ # # This example gets the console output for the specified instance.
18176
18775
  #
18177
18776
  # resp = client.get_console_output({
18178
- # instance_id: "String", # required
18179
- # dry_run: false,
18180
- # latest: false,
18777
+ # instance_id: "i-1234567890abcdef0",
18778
+ # })
18779
+ #
18780
+ # resp.to_h outputs the following:
18781
+ # {
18782
+ # instance_id: "i-1234567890abcdef0",
18783
+ # output: "...",
18784
+ # timestamp: Time.parse("2018-05-25T21:23:53.000Z"),
18785
+ # }
18786
+ #
18787
+ # @example Request syntax with placeholder values
18788
+ #
18789
+ # resp = client.get_console_output({
18790
+ # instance_id: "String", # required
18791
+ # dry_run: false,
18792
+ # latest: false,
18181
18793
  # })
18182
18794
  #
18183
18795
  # @example Response structure
@@ -18309,6 +18921,68 @@ module Aws::EC2
18309
18921
  #
18310
18922
  # * {Types::GetLaunchTemplateDataResult#launch_template_data #launch_template_data} => Types::ResponseLaunchTemplateData
18311
18923
  #
18924
+ #
18925
+ # @example Example: To get the launch template data for an instance
18926
+ #
18927
+ # # This example gets the launch template data for the specified instance.
18928
+ #
18929
+ # resp = client.get_launch_template_data({
18930
+ # instance_id: "0123d646e8048babc",
18931
+ # })
18932
+ #
18933
+ # resp.to_h outputs the following:
18934
+ # {
18935
+ # launch_template_data: {
18936
+ # block_device_mappings: [
18937
+ # {
18938
+ # device_name: "/dev/xvda",
18939
+ # ebs: {
18940
+ # delete_on_termination: true,
18941
+ # encrypted: false,
18942
+ # iops: 100,
18943
+ # snapshot_id: "snap-02594938353ef77d3",
18944
+ # volume_size: 8,
18945
+ # volume_type: "gp2",
18946
+ # },
18947
+ # },
18948
+ # ],
18949
+ # ebs_optimized: false,
18950
+ # image_id: "ami-32cf7b4a",
18951
+ # instance_type: "t2.medium",
18952
+ # key_name: "my-key-pair",
18953
+ # monitoring: {
18954
+ # enabled: false,
18955
+ # },
18956
+ # network_interfaces: [
18957
+ # {
18958
+ # associate_public_ip_address: false,
18959
+ # delete_on_termination: true,
18960
+ # description: "",
18961
+ # device_index: 0,
18962
+ # groups: [
18963
+ # "sg-d14e1bb4",
18964
+ # ],
18965
+ # ipv_6_addresses: [
18966
+ # ],
18967
+ # network_interface_id: "eni-4338b5a9",
18968
+ # private_ip_address: "10.0.3.233",
18969
+ # private_ip_addresses: [
18970
+ # {
18971
+ # primary: true,
18972
+ # private_ip_address: "10.0.3.233",
18973
+ # },
18974
+ # ],
18975
+ # subnet_id: "subnet-5264e837",
18976
+ # },
18977
+ # ],
18978
+ # placement: {
18979
+ # availability_zone: "us-east-2b",
18980
+ # group_name: "",
18981
+ # tenancy: "default",
18982
+ # },
18983
+ # },
18984
+ # }
18985
+ #
18312
18986
  # @example Request syntax with placeholder values
18313
18987
  #
18314
18988
  # resp = client.get_launch_template_data({
@@ -19411,6 +20085,45 @@ module Aws::EC2
19411
20085
  #
19412
20086
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
19413
20087
  #
20088
+ #
20089
+ # @example Example: To make an AMI public
20090
+ #
20091
+ # # This example makes the specified AMI public.
20092
+ #
20093
+ # resp = client.modify_image_attribute({
20094
+ # image_id: "ami-5731123e",
20095
+ # launch_permission: {
20096
+ # add: [
20097
+ # {
20098
+ # group: "all",
20099
+ # },
20100
+ # ],
20101
+ # },
20102
+ # })
20103
+ #
20104
+ # resp.to_h outputs the following:
20105
+ # {
20106
+ # }
20107
+ #
20108
+ # @example Example: To grant launch permissions
20109
+ #
20110
+ # # This example grants launch permissions for the specified AMI to the specified AWS account.
20111
+ #
20112
+ # resp = client.modify_image_attribute({
20113
+ # image_id: "ami-5731123e",
20114
+ # launch_permission: {
20115
+ # add: [
20116
+ # {
20117
+ # user_id: "123456789012",
20118
+ # },
20119
+ # ],
20120
+ # },
20121
+ # })
20122
+ #
20123
+ # resp.to_h outputs the following:
20124
+ # {
20125
+ # }
20126
+ #
19414
20127
  # @example Request syntax with placeholder values
19415
20128
  #
19416
20129
  # resp = client.modify_image_attribute({
@@ -19578,6 +20291,37 @@ module Aws::EC2
19578
20291
  #
19579
20292
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
19580
20293
  #
20294
+ #
20295
+ # @example Example: To modify the instance type
20296
+ #
20297
+ # # This example modifies the instance type of the specified stopped instance.
20298
+ #
20299
+ # resp = client.modify_instance_attribute({
20300
+ # instance_id: "i-1234567890abcdef0",
20301
+ # instance_type: {
20302
+ # value: "m5.large",
20303
+ # },
20304
+ # })
20305
+ #
20306
+ # resp.to_h outputs the following:
20307
+ # {
20308
+ # }
20309
+ #
20310
+ # @example Example: To enable enhanced networking
20311
+ #
20312
+ # # This example enables enhanced networking for the specified stopped instance.
20313
+ #
20314
+ # resp = client.modify_instance_attribute({
20315
+ # ena_support: {
20316
+ # value: true,
20317
+ # },
20318
+ # instance_id: "i-1234567890abcdef0",
20319
+ # })
20320
+ #
20321
+ # resp.to_h outputs the following:
20322
+ # {
20323
+ # }
20324
+ #
19581
20325
  # @example Request syntax with placeholder values
19582
20326
  #
19583
20327
  # resp = client.modify_instance_attribute({
@@ -19805,6 +20549,28 @@ module Aws::EC2
19805
20549
  #
19806
20550
  # * {Types::ModifyLaunchTemplateResult#launch_template #launch_template} => Types::LaunchTemplate
19807
20551
  #
20552
+ #
20553
+ # @example Example: To change the default version of a launch template
20554
+ #
20555
+ # # This example specifies version 2 as the default version of the specified launch template.
20556
+ #
20557
+ # resp = client.modify_launch_template({
20558
+ # default_version: "2",
20559
+ # launch_template_id: "lt-0abcd290751193123",
20560
+ # })
20561
+ #
20562
+ # resp.to_h outputs the following:
20563
+ # {
20564
+ # launch_template: {
20565
+ # create_time: Time.parse("2017-12-01T13:35:46.000Z"),
20566
+ # created_by: "arn:aws:iam::123456789012:root",
20567
+ # default_version_number: 2,
20568
+ # latest_version_number: 2,
20569
+ # launch_template_id: "lt-0abcd290751193123",
20570
+ # launch_template_name: "WebServers",
20571
+ # },
20572
+ # }
20573
+ #
19808
20574
  # @example Request syntax with placeholder values
19809
20575
  #
19810
20576
  # resp = client.modify_launch_template({
@@ -21315,6 +22081,21 @@ module Aws::EC2
21315
22081
  #
21316
22082
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
21317
22083
  #
22084
+ #
22085
+ # @example Example: To reboot an EC2 instance
22086
+ #
22087
+ # # This example reboots the specified EC2 instance.
22088
+ #
22089
+ # resp = client.reboot_instances({
22090
+ # instance_ids: [
22091
+ # "i-1234567890abcdef5",
22092
+ # ],
22093
+ # })
22094
+ #
22095
+ # resp.to_h outputs the following:
22096
+ # {
22097
+ # }
22098
+ #
21318
22099
  # @example Request syntax with placeholder values
21319
22100
  #
21320
22101
  # resp = client.reboot_instances({
@@ -22867,6 +23648,20 @@ module Aws::EC2
22867
23648
  #
22868
23649
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
22869
23650
  #
23651
+ #
23652
+ # @example Example: To reset the launchPermission attribute
23653
+ #
23654
+ # # This example resets the launchPermission attribute for the specified AMI. By default, AMIs are private.
23655
+ #
23656
+ # resp = client.reset_image_attribute({
23657
+ # attribute: "launchPermission",
23658
+ # image_id: "ami-5731123e",
23659
+ # })
23660
+ #
23661
+ # resp.to_h outputs the following:
23662
+ # {
23663
+ # }
23664
+ #
22870
23665
  # @example Request syntax with placeholder values
22871
23666
  #
22872
23667
  # resp = client.reset_image_attribute({
@@ -22917,6 +23712,20 @@ module Aws::EC2
22917
23712
  #
22918
23713
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
22919
23714
  #
23715
+ #
23716
+ # @example Example: To reset the sourceDestCheck attribute
23717
+ #
23718
+ # # This example resets the sourceDestCheck attribute for the specified instance.
23719
+ #
23720
+ # resp = client.reset_instance_attribute({
23721
+ # attribute: "sourceDestCheck",
23722
+ # instance_id: "i-1234567890abcdef0",
23723
+ # })
23724
+ #
23725
+ # resp.to_h outputs the following:
23726
+ # {
23727
+ # }
23728
+ #
22920
23729
  # @example Request syntax with placeholder values
22921
23730
  #
22922
23731
  # resp = client.reset_instance_attribute({
@@ -23593,9 +24402,10 @@ module Aws::EC2
23593
24402
  # An elastic GPU to associate with the instance.
23594
24403
  #
23595
24404
  # @option params [Array<Types::TagSpecification>] :tag_specifications
23596
- # The tags to apply to the resources during launch. You can tag
23597
- # instances and volumes. The specified tags are applied to all instances
23598
- # or volumes that are created during launch.
24405
+ # The tags to apply to the resources during launch. You can only tag
24406
+ # instances and volumes on launch. The specified tags are applied to all
24407
+ # instances or volumes that are created during launch. To tag a resource
24408
+ # after it has been created, see CreateTags.
23599
24409
  #
23600
24410
  # @option params [Types::LaunchTemplateSpecification] :launch_template
23601
24411
  # The launch template to use to launch the instances. Any parameters
@@ -23635,6 +24445,47 @@ module Aws::EC2
23635
24445
  # * {Types::Reservation#requester_id #requester_id} => String
23636
24446
  # * {Types::Reservation#reservation_id #reservation_id} => String
23637
24447
  #
24448
+ #
24449
+ # @example Example: To launch an instance
24450
+ #
24451
+ # # This example launches an instance using the specified AMI, instance type, security group, subnet, block device mapping,
24452
+ # # and tags.
24453
+ #
24454
+ # resp = client.run_instances({
24455
+ # block_device_mappings: [
24456
+ # {
24457
+ # device_name: "/dev/sdh",
24458
+ # ebs: {
24459
+ # volume_size: 100,
24460
+ # },
24461
+ # },
24462
+ # ],
24463
+ # image_id: "ami-abc12345",
24464
+ # instance_type: "t2.micro",
24465
+ # key_name: "my-key-pair",
24466
+ # max_count: 1,
24467
+ # min_count: 1,
24468
+ # security_group_ids: [
24469
+ # "sg-1a2b3c4d",
24470
+ # ],
24471
+ # subnet_id: "subnet-6e7f829e",
24472
+ # tag_specifications: [
24473
+ # {
24474
+ # resource_type: "instance",
24475
+ # tags: [
24476
+ # {
24477
+ # key: "Purpose",
24478
+ # value: "test",
24479
+ # },
24480
+ # ],
24481
+ # },
24482
+ # ],
24483
+ # })
24484
+ #
24485
+ # resp.to_h outputs the following:
24486
+ # {
24487
+ # }
24488
+ #
23638
24489
  # @example Request syntax with placeholder values
23639
24490
  #
23640
24491
  # resp = client.run_instances({
@@ -24117,6 +24968,34 @@ module Aws::EC2
24117
24968
  #
24118
24969
  # * {Types::StartInstancesResult#starting_instances #starting_instances} => Array&lt;Types::InstanceStateChange&gt;
24119
24970
  #
24971
+ #
24972
+ # @example Example: To start a stopped EC2 instance
24973
+ #
24974
+ # # This example starts the specified EC2 instance.
24975
+ #
24976
+ # resp = client.start_instances({
24977
+ # instance_ids: [
24978
+ # "i-1234567890abcdef0",
24979
+ # ],
24980
+ # })
24981
+ #
24982
+ # resp.to_h outputs the following:
24983
+ # {
24984
+ # starting_instances: [
24985
+ # {
24986
+ # current_state: {
24987
+ # code: 0,
24988
+ # name: "pending",
24989
+ # },
24990
+ # instance_id: "i-1234567890abcdef0",
24991
+ # previous_state: {
24992
+ # code: 80,
24993
+ # name: "stopped",
24994
+ # },
24995
+ # },
24996
+ # ],
24997
+ # }
24998
+ #
24120
24999
  # @example Request syntax with placeholder values
24121
25000
  #
24122
25001
  # resp = client.start_instances({
@@ -24205,6 +25084,34 @@ module Aws::EC2
24205
25084
  #
24206
25085
  # * {Types::StopInstancesResult#stopping_instances #stopping_instances} => Array&lt;Types::InstanceStateChange&gt;
24207
25086
  #
25087
+ #
25088
+ # @example Example: To stop a running EC2 instance
25089
+ #
25090
+ # # This example stops the specified EC2 instance.
25091
+ #
25092
+ # resp = client.stop_instances({
25093
+ # instance_ids: [
25094
+ # "i-1234567890abcdef0",
25095
+ # ],
25096
+ # })
25097
+ #
25098
+ # resp.to_h outputs the following:
25099
+ # {
25100
+ # stopping_instances: [
25101
+ # {
25102
+ # current_state: {
25103
+ # code: 64,
25104
+ # name: "stopping",
25105
+ # },
25106
+ # instance_id: "i-1234567890abcdef0",
25107
+ # previous_state: {
25108
+ # code: 16,
25109
+ # name: "running",
25110
+ # },
25111
+ # },
25112
+ # ],
25113
+ # }
25114
+ #
24208
25115
  # @example Request syntax with placeholder values
24209
25116
  #
24210
25117
  # resp = client.stop_instances({
@@ -24281,6 +25188,34 @@ module Aws::EC2
24281
25188
  #
24282
25189
  # * {Types::TerminateInstancesResult#terminating_instances #terminating_instances} => Array&lt;Types::InstanceStateChange&gt;
24283
25190
  #
25191
+ #
25192
+ # @example Example: To terminate an EC2 instance
25193
+ #
25194
+ # # This example terminates the specified EC2 instance.
25195
+ #
25196
+ # resp = client.terminate_instances({
25197
+ # instance_ids: [
25198
+ # "i-1234567890abcdef0",
25199
+ # ],
25200
+ # })
25201
+ #
25202
+ # resp.to_h outputs the following:
25203
+ # {
25204
+ # terminating_instances: [
25205
+ # {
25206
+ # current_state: {
25207
+ # code: 32,
25208
+ # name: "shutting-down",
25209
+ # },
25210
+ # instance_id: "i-1234567890abcdef0",
25211
+ # previous_state: {
25212
+ # code: 16,
25213
+ # name: "running",
25214
+ # },
25215
+ # },
25216
+ # ],
25217
+ # }
25218
+ #
24284
25219
  # @example Request syntax with placeholder values
24285
25220
  #
24286
25221
  # resp = client.terminate_instances({
@@ -24456,6 +25391,32 @@ module Aws::EC2
24456
25391
  #
24457
25392
  # * {Types::UpdateSecurityGroupRuleDescriptionsEgressResult#return #return} => Boolean
24458
25393
  #
25394
+ #
25395
+ # @example Example: To update an outbound security group rule description
25396
+ #
25397
+ # # This example updates the description for the specified security group rule.
25398
+ #
25399
+ # resp = client.update_security_group_rule_descriptions_egress({
25400
+ # group_id: "sg-123abc12",
25401
+ # ip_permissions: [
25402
+ # {
25403
+ # from_port: 80,
25404
+ # ip_protocol: "tcp",
25405
+ # ip_ranges: [
25406
+ # {
25407
+ # cidr_ip: "203.0.113.0/24",
25408
+ # description: "Outbound HTTP access to server 2",
25409
+ # },
25410
+ # ],
25411
+ # to_port: 80,
25412
+ # },
25413
+ # ],
25414
+ # })
25415
+ #
25416
+ # resp.to_h outputs the following:
25417
+ # {
25418
+ # }
25419
+ #
24459
25420
  # @example Request syntax with placeholder values
24460
25421
  #
24461
25422
  # resp = client.update_security_group_rule_descriptions_egress({
@@ -24544,6 +25505,32 @@ module Aws::EC2
24544
25505
  #
24545
25506
  # * {Types::UpdateSecurityGroupRuleDescriptionsIngressResult#return #return} => Boolean
24546
25507
  #
25508
+ #
25509
+ # @example Example: To update an inbound security group rule description
25510
+ #
25511
+ # # This example updates the description for the specified security group rule.
25512
+ #
25513
+ # resp = client.update_security_group_rule_descriptions_ingress({
25514
+ # group_id: "sg-123abc12",
25515
+ # ip_permissions: [
25516
+ # {
25517
+ # from_port: 22,
25518
+ # ip_protocol: "tcp",
25519
+ # ip_ranges: [
25520
+ # {
25521
+ # cidr_ip: "203.0.113.0/16",
25522
+ # description: "SSH access from the LA office",
25523
+ # },
25524
+ # ],
25525
+ # to_port: 22,
25526
+ # },
25527
+ # ],
25528
+ # })
25529
+ #
25530
+ # resp.to_h outputs the following:
25531
+ # {
25532
+ # }
25533
+ #
24547
25534
  # @example Request syntax with placeholder values
24548
25535
  #
24549
25536
  # resp = client.update_security_group_rule_descriptions_ingress({
@@ -24614,7 +25601,7 @@ module Aws::EC2
24614
25601
  params: params,
24615
25602
  config: config)
24616
25603
  context[:gem_name] = 'aws-sdk-ec2'
24617
- context[:gem_version] = '1.36.0'
25604
+ context[:gem_version] = '1.37.0'
24618
25605
  Seahorse::Client::Request.new(handlers, context)
24619
25606
  end
24620
25607