aws-sdk-ec2 1.36.0 → 1.37.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 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