Skip to content

Commit 2962b1b

Browse files
author
awstools
committed
feat(client-ec2): Adding support for the new fullSnapshotSizeInBytes field in the response of the EC2 EBS DescribeSnapshots API. This field represents the size of all the blocks that were written to the source volume at the time the snapshot was created.
1 parent 4a66449 commit 2962b1b

22 files changed

+192
-117
lines changed

clients/client-ec2/src/commands/AssignIpv6AddressesCommand.ts

+4-4
Original file line numberDiff line numberDiff line change
@@ -28,11 +28,11 @@ export interface AssignIpv6AddressesCommandInput extends AssignIpv6AddressesRequ
2828
export interface AssignIpv6AddressesCommandOutput extends AssignIpv6AddressesResult, __MetadataBearer {}
2929

3030
/**
31-
* <p>Assigns one or more IPv6 addresses to the specified network interface. You can
32-
* specify one or more specific IPv6 addresses, or you can specify the number of IPv6
33-
* addresses to be automatically assigned from within the subnet's IPv6 CIDR block range.
31+
* <p>Assigns the specified IPv6 addresses to the specified network interface. You can
32+
* specify specific IPv6 addresses, or you can specify the number of IPv6
33+
* addresses to be automatically assigned from the subnet's IPv6 CIDR block range.
3434
* You can assign as many IPv6 addresses to a network interface as you can assign private
35-
* IPv4 addresses, and the limit varies per instance type.</p>
35+
* IPv4 addresses, and the limit varies by instance type.</p>
3636
* <p>You must specify either the IPv6 addresses or the IPv6 address count in the request. </p>
3737
* <p>You can optionally use Prefix Delegation on the network interface. You must specify
3838
* either the IPV6 Prefix Delegation prefixes, or the IPv6 Prefix Delegation count. For

clients/client-ec2/src/commands/AssignPrivateIpAddressesCommand.ts

+3-3
Original file line numberDiff line numberDiff line change
@@ -28,9 +28,9 @@ export interface AssignPrivateIpAddressesCommandInput extends AssignPrivateIpAdd
2828
export interface AssignPrivateIpAddressesCommandOutput extends AssignPrivateIpAddressesResult, __MetadataBearer {}
2929

3030
/**
31-
* <p>Assigns one or more secondary private IP addresses to the specified network interface.</p>
32-
* <p>You can specify one or more specific secondary IP addresses, or you can specify the number
33-
* of secondary IP addresses to be automatically assigned within the subnet's CIDR block range.
31+
* <p>Assigns the specified secondary private IP addresses to the specified network interface.</p>
32+
* <p>You can specify specific secondary IP addresses, or you can specify the number
33+
* of secondary IP addresses to be automatically assigned from the subnet's CIDR block range.
3434
* The number of secondary IP addresses that you can assign to an instance varies by instance type.
3535
* For more information about Elastic IP addresses, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/elastic-ip-addresses-eip.html">Elastic IP Addresses</a> in the <i>Amazon EC2 User Guide</i>.</p>
3636
* <p>When you move a secondary private IP address to another network interface, any Elastic IP address

clients/client-ec2/src/commands/CopySnapshotCommand.ts

+4-5
Original file line numberDiff line numberDiff line change
@@ -40,11 +40,10 @@ export interface CopySnapshotCommandOutput extends CopySnapshotResult, __Metadat
4040
* however, you can specify a different KMS key. To copy an encrypted
4141
* snapshot that has been shared from another account, you must have permissions for the KMS key
4242
* used to encrypt the snapshot.</p>
43-
* <p>Snapshots copied to an Outpost are encrypted by default using the default
44-
* encryption key for the Region, or a different key that you specify in the request using
45-
* <b>KmsKeyId</b>. Outposts do not support unencrypted
46-
* snapshots. For more information, <a href="https://docs.aws.amazon.com/ebs/latest/userguide/snapshots-outposts.html#ami">
47-
* Amazon EBS local snapshots on Outposts</a> in the <i>Amazon EBS User Guide</i>.</p>
43+
* <p>Snapshots copied to an Outpost are encrypted by default using the default encryption key
44+
* for the Region, or a different key that you specify in the request using <b>KmsKeyId</b>. Outposts do not support unencrypted snapshots. For more information,
45+
* see <a href="https://docs.aws.amazon.com/ebs/latest/userguide/snapshots-outposts.html#ami">Amazon EBS
46+
* local snapshots on Outposts</a> in the <i>Amazon EBS User Guide</i>.</p>
4847
* <p>Snapshots created by copying another snapshot have an arbitrary volume ID that should not
4948
* be used for any purpose.</p>
5049
* <p>For more information, see <a href="https://docs.aws.amazon.com/ebs/latest/userguide/ebs-copy-snapshot.html">Copy an Amazon EBS snapshot</a> in the

clients/client-ec2/src/commands/CreateManagedPrefixListCommand.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ export interface CreateManagedPrefixListCommandInput extends CreateManagedPrefix
2828
export interface CreateManagedPrefixListCommandOutput extends CreateManagedPrefixListResult, __MetadataBearer {}
2929

3030
/**
31-
* <p>Creates a managed prefix list. You can specify one or more entries for the prefix list.
31+
* <p>Creates a managed prefix list. You can specify entries for the prefix list.
3232
* Each entry consists of a CIDR block and an optional description.</p>
3333
* @example
3434
* Use a bare-bones client and the command you need to make an API call.

clients/client-ec2/src/commands/CreateSnapshotCommand.ts

+4-4
Original file line numberDiff line numberDiff line change
@@ -38,8 +38,8 @@ export interface CreateSnapshotCommandOutput extends Snapshot, __MetadataBearer
3838
* Region as the volume.</p>
3939
* </li>
4040
* <li>
41-
* <p>If the source volume is in a Local Zone, you can create the snapshot in the same
42-
* Local Zone or in parent Amazon Web Services Region.</p>
41+
* <p>If the source volume is in a Local Zone, you can create the snapshot in the same Local
42+
* Zone or in its parent Amazon Web Services Region.</p>
4343
* </li>
4444
* <li>
4545
* <p>If the source volume is on an Outpost, you can create the snapshot on the same
@@ -60,8 +60,7 @@ export interface CreateSnapshotCommandOutput extends Snapshot, __MetadataBearer
6060
* that you stop the instance before taking the snapshot.</p>
6161
* <p>Snapshots that are taken from encrypted volumes are automatically encrypted. Volumes that
6262
* are created from encrypted snapshots are also automatically encrypted. Your encrypted volumes
63-
* and any associated snapshots always remain protected. For more information,
64-
* <a href="https://docs.aws.amazon.com/ebs/latest/userguide/ebs-encryption.html">Amazon EBS encryption</a>
63+
* and any associated snapshots always remain protected. For more information, see <a href="https://docs.aws.amazon.com/ebs/latest/userguide/ebs-encryption.html">Amazon EBS encryption</a>
6564
* in the <i>Amazon EBS User Guide</i>.</p>
6665
* @example
6766
* Use a bare-bones client and the command you need to make an API call.
@@ -105,6 +104,7 @@ export interface CreateSnapshotCommandOutput extends Snapshot, __MetadataBearer
105104
* // TransferType: "time-based" || "standard",
106105
* // CompletionDurationMinutes: Number("int"),
107106
* // CompletionTime: new Date("TIMESTAMP"),
107+
* // FullSnapshotSizeInBytes: Number("long"),
108108
* // SnapshotId: "STRING_VALUE",
109109
* // VolumeId: "STRING_VALUE",
110110
* // State: "pending" || "completed" || "error" || "recoverable" || "recovering",

clients/client-ec2/src/commands/CreateSnapshotsCommand.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ export interface CreateSnapshotsCommandOutput extends CreateSnapshotsResult, __M
4141
* </li>
4242
* <li>
4343
* <p>If the source instance is in a Local Zone, you can create the snapshots in the same
44-
* Local Zone or in parent Amazon Web Services Region.</p>
44+
* Local Zone or in its parent Amazon Web Services Region.</p>
4545
* </li>
4646
* <li>
4747
* <p>If the source instance is on an Outpost, you can create the snapshots on the same

clients/client-ec2/src/commands/DeleteSnapshotCommand.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ export interface DeleteSnapshotCommandOutput extends __MetadataBearer {}
3535
* regardless of which prior snapshots have been deleted, all active snapshots will have access
3636
* to all the information needed to restore the volume.</p>
3737
* <p>You cannot delete a snapshot of the root device of an EBS volume used by a registered AMI.
38-
* You must first de-register the AMI before you can delete the snapshot.</p>
38+
* You must first deregister the AMI before you can delete the snapshot.</p>
3939
* <p>For more information, see <a href="https://docs.aws.amazon.com/ebs/latest/userguide/ebs-deleting-snapshot.html">Delete an Amazon EBS snapshot</a> in the
4040
* <i>Amazon EBS User Guide</i>.</p>
4141
* @example

clients/client-ec2/src/commands/DescribeInstanceAttributeCommand.ts

+2-7
Original file line numberDiff line numberDiff line change
@@ -29,13 +29,8 @@ export interface DescribeInstanceAttributeCommandOutput extends InstanceAttribut
2929

3030
/**
3131
* <p>Describes the specified attribute of the specified instance. You can specify only one
32-
* attribute at a time. Valid attribute values are: <code>instanceType</code> |
33-
* <code>kernel</code> | <code>ramdisk</code> | <code>userData</code> |
34-
* <code>disableApiTermination</code> | <code>instanceInitiatedShutdownBehavior</code>
35-
* | <code>rootDeviceName</code> | <code>blockDeviceMapping</code> |
36-
* <code>productCodes</code> | <code>sourceDestCheck</code> | <code>groupSet</code> |
37-
* <code>ebsOptimized</code> | <code>sriovNetSupport</code>
38-
* </p>
32+
* attribute at a time.
33+
* </p>
3934
* @example
4035
* Use a bare-bones client and the command you need to make an API call.
4136
* ```javascript

clients/client-ec2/src/commands/DescribeNetworkInterfacesCommand.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ export interface DescribeNetworkInterfacesCommandInput extends DescribeNetworkIn
2828
export interface DescribeNetworkInterfacesCommandOutput extends DescribeNetworkInterfacesResult, __MetadataBearer {}
2929

3030
/**
31-
* <p>Describes one or more of your network interfaces.</p>
31+
* <p>Describes the specified network interfaces or all your network interfaces.</p>
3232
* <p>If you have a large number of network interfaces, the operation fails unless
3333
* you use pagination or one of the following filters: <code>group-id</code>,
3434
* <code>mac-address</code>, <code>private-dns-name</code>, <code>private-ip-address</code>,

clients/client-ec2/src/commands/DescribeSnapshotsCommand.ts

+1
Original file line numberDiff line numberDiff line change
@@ -124,6 +124,7 @@ export interface DescribeSnapshotsCommandOutput extends DescribeSnapshotsResult,
124124
* // TransferType: "time-based" || "standard",
125125
* // CompletionDurationMinutes: Number("int"),
126126
* // CompletionTime: new Date("TIMESTAMP"),
127+
* // FullSnapshotSizeInBytes: Number("long"),
127128
* // SnapshotId: "STRING_VALUE",
128129
* // VolumeId: "STRING_VALUE",
129130
* // State: "pending" || "completed" || "error" || "recoverable" || "recovering",

clients/client-ec2/src/commands/UnassignIpv6AddressesCommand.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ export interface UnassignIpv6AddressesCommandInput extends UnassignIpv6Addresses
2828
export interface UnassignIpv6AddressesCommandOutput extends UnassignIpv6AddressesResult, __MetadataBearer {}
2929

3030
/**
31-
* <p>Unassigns one or more IPv6 addresses IPv4 Prefix Delegation prefixes from a network interface.</p>
31+
* <p>Unassigns the specified IPv6 addresses or Prefix Delegation prefixes from a network interface.</p>
3232
* @example
3333
* Use a bare-bones client and the command you need to make an API call.
3434
* ```javascript

clients/client-ec2/src/commands/UnassignPrivateIpAddressesCommand.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ export interface UnassignPrivateIpAddressesCommandInput extends UnassignPrivateI
2828
export interface UnassignPrivateIpAddressesCommandOutput extends __MetadataBearer {}
2929

3030
/**
31-
* <p>Unassigns one or more secondary private IP addresses, or IPv4 Prefix Delegation prefixes from a
31+
* <p>Unassigns the specified secondary private IP addresses or IPv4 Prefix Delegation prefixes from a
3232
* network interface.</p>
3333
* @example
3434
* Use a bare-bones client and the command you need to make an API call.

clients/client-ec2/src/models/models_0.ts

+27-3
Original file line numberDiff line numberDiff line change
@@ -3903,7 +3903,7 @@ export interface AssignIpv6AddressesRequest {
39033903
Ipv6PrefixCount?: number | undefined;
39043904

39053905
/**
3906-
* <p>One or more IPv6 prefixes assigned to the network interface. You cannot use this option if you use the <code>Ipv6PrefixCount</code> option.</p>
3906+
* <p>One or more IPv6 prefixes assigned to the network interface. You can't use this option if you use the <code>Ipv6PrefixCount</code> option.</p>
39073907
* @public
39083908
*/
39093909
Ipv6Prefixes?: string[] | undefined;
@@ -3961,13 +3961,13 @@ export interface AssignIpv6AddressesResult {
39613961
*/
39623962
export interface AssignPrivateIpAddressesRequest {
39633963
/**
3964-
* <p>One or more IPv4 prefixes assigned to the network interface. You cannot use this option if you use the <code>Ipv4PrefixCount</code> option.</p>
3964+
* <p>One or more IPv4 prefixes assigned to the network interface. You can't use this option if you use the <code>Ipv4PrefixCount</code> option.</p>
39653965
* @public
39663966
*/
39673967
Ipv4Prefixes?: string[] | undefined;
39683968

39693969
/**
3970-
* <p>The number of IPv4 prefixes that Amazon Web Services automatically assigns to the network interface. You cannot use this option if you use the <code>Ipv4 Prefixes</code> option.</p>
3970+
* <p>The number of IPv4 prefixes that Amazon Web Services automatically assigns to the network interface. You can't use this option if you use the <code>Ipv4 Prefixes</code> option.</p>
39713971
* @public
39723972
*/
39733973
Ipv4PrefixCount?: number | undefined;
@@ -6739,6 +6739,14 @@ export interface IpRange {
67396739
/**
67406740
* <p>The IPv4 address range. You can either specify a CIDR block or a source security group,
67416741
* not both. To specify a single IPv4 address, use the /32 prefix length.</p>
6742+
* <note>
6743+
* <p>
6744+
* Amazon Web Services <a href="https://en.wikipedia.org/wiki/Canonicalization">canonicalizes</a> IPv4 and IPv6 CIDRs. For example, if you specify 100.68.0.18/18 for the CIDR block,
6745+
* Amazon Web Services canonicalizes the CIDR block to 100.68.0.0/18. Any subsequent DescribeSecurityGroups and DescribeSecurityGroupRules calls will
6746+
* return the canonicalized form of the CIDR block. Additionally, if you attempt to add another rule with the
6747+
* non-canonical form of the CIDR (such as 100.68.0.18/18) and there is already a rule for the canonicalized
6748+
* form of the CIDR block (such as 100.68.0.0/18), the API throws an duplicate rule error.</p>
6749+
* </note>
67426750
* @public
67436751
*/
67446752
CidrIp?: string | undefined;
@@ -6760,6 +6768,14 @@ export interface Ipv6Range {
67606768
/**
67616769
* <p>The IPv6 address range. You can either specify a CIDR block or a source security group,
67626770
* not both. To specify a single IPv6 address, use the /128 prefix length.</p>
6771+
* <note>
6772+
* <p>
6773+
* Amazon Web Services <a href="https://en.wikipedia.org/wiki/Canonicalization">canonicalizes</a> IPv4 and IPv6 CIDRs. For example, if you specify 100.68.0.18/18 for the CIDR block,
6774+
* Amazon Web Services canonicalizes the CIDR block to 100.68.0.0/18. Any subsequent DescribeSecurityGroups and DescribeSecurityGroupRules calls will
6775+
* return the canonicalized form of the CIDR block. Additionally, if you attempt to add another rule with the
6776+
* non-canonical form of the CIDR (such as 100.68.0.18/18) and there is already a rule for the canonicalized
6777+
* form of the CIDR block (such as 100.68.0.0/18), the API throws an duplicate rule error.</p>
6778+
* </note>
67636779
* @public
67646780
*/
67656781
CidrIpv6?: string | undefined;
@@ -7121,6 +7137,14 @@ export interface AuthorizeSecurityGroupEgressResult {
71217137
export interface AuthorizeSecurityGroupIngressRequest {
71227138
/**
71237139
* <p>The IPv4 address range, in CIDR format.</p>
7140+
* <note>
7141+
* <p>
7142+
* Amazon Web Services <a href="https://en.wikipedia.org/wiki/Canonicalization">canonicalizes</a> IPv4 and IPv6 CIDRs. For example, if you specify 100.68.0.18/18 for the CIDR block,
7143+
* Amazon Web Services canonicalizes the CIDR block to 100.68.0.0/18. Any subsequent DescribeSecurityGroups and DescribeSecurityGroupRules calls will
7144+
* return the canonicalized form of the CIDR block. Additionally, if you attempt to add another rule with the
7145+
* non-canonical form of the CIDR (such as 100.68.0.18/18) and there is already a rule for the canonicalized
7146+
* form of the CIDR block (such as 100.68.0.0/18), the API throws an duplicate rule error.</p>
7147+
* </note>
71247148
* <p>To specify an IPv6 address range, use IP permissions instead.</p>
71257149
* <p>To specify multiple rules and descriptions for the rules, use IP permissions instead.</p>
71267150
* @public

clients/client-ec2/src/models/models_1.ts

+7-7
Original file line numberDiff line numberDiff line change
@@ -161,7 +161,7 @@ export interface CreateCapacityReservationRequest {
161161
* <p>The number of instances for which to reserve capacity.</p>
162162
* <note>
163163
* <p>You can request future-dated Capacity Reservations for an instance count
164-
* with a minimum of 100 VPUs. For example, if you request a future-dated Capacity
164+
* with a minimum of 100 vCPUs. For example, if you request a future-dated Capacity
165165
* Reservation for <code>m5.xlarge</code> instances, you must request at least
166166
* 25 instances (<i>25 * m5.xlarge = 100 vCPUs</i>).</p>
167167
* </note>
@@ -9669,7 +9669,7 @@ export interface InstanceIpv6AddressRequest {
96699669
}
96709670

96719671
/**
9672-
* <p>Describes the IPv4 prefix option for a network interface.</p>
9672+
* <p>Describes the IPv6 prefix option for a network interface.</p>
96739673
* @public
96749674
*/
96759675
export interface Ipv6PrefixSpecificationRequest {
@@ -10210,11 +10210,11 @@ export interface RequestLaunchTemplateData {
1021010210
RamDiskId?: string | undefined;
1021110211

1021210212
/**
10213-
* <p>If you set this parameter to <code>true</code>, you can't terminate the instance using
10214-
* the Amazon EC2 console, CLI, or API; otherwise, you can. To change this attribute after
10215-
* launch, use <a href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_ModifyInstanceAttribute.html">ModifyInstanceAttribute</a>. Alternatively, if you set
10216-
* <code>InstanceInitiatedShutdownBehavior</code> to <code>terminate</code>, you can
10217-
* terminate the instance by running the shutdown command from the instance.</p>
10213+
* <p>Indicates whether termination protection is enabled for the instance. The default
10214+
* is <code>false</code>, which means that you can terminate the instance using
10215+
* the Amazon EC2 console, command line tools, or API. You can enable termination protection
10216+
* when you launch an instance, while the instance is running, or while the instance
10217+
* is stopped.</p>
1021810218
* @public
1021910219
*/
1022010220
DisableApiTermination?: boolean | undefined;

clients/client-ec2/src/models/models_2.ts

+12-1
Original file line numberDiff line numberDiff line change
@@ -1312,7 +1312,7 @@ export interface CreateNetworkInterfaceRequest {
13121312
PrivateIpAddress?: string | undefined;
13131313

13141314
/**
1315-
* <p>The IDs of one or more security groups.</p>
1315+
* <p>The IDs of the security groups.</p>
13161316
* @public
13171317
*/
13181318
Groups?: string[] | undefined;
@@ -3250,6 +3250,17 @@ export interface Snapshot {
32503250
*/
32513251
CompletionTime?: Date | undefined;
32523252

3253+
/**
3254+
* <p>The full size of the snapshot, in bytes.</p>
3255+
* <important>
3256+
* <p>This is <b>not</b> the incremental size of the snapshot.
3257+
* This is the full snapshot size and represents the size of all the blocks that were
3258+
* written to the source volume at the time the snapshot was created.</p>
3259+
* </important>
3260+
* @public
3261+
*/
3262+
FullSnapshotSizeInBytes?: number | undefined;
3263+
32533264
/**
32543265
* <p>The ID of the snapshot. Each snapshot receives a unique identifier when it is
32553266
* created.</p>

0 commit comments

Comments
 (0)