Skip to content

Commit

Permalink
feat(client-ec2): Add support for DisconnectOnSessionTimeout flag in …
Browse files Browse the repository at this point in the history
…CreateClientVpnEndpoint and ModifyClientVpnEndpoint requests and DescribeClientVpnEndpoints responses
  • Loading branch information
awstools committed Jan 13, 2025
1 parent c23e188 commit 9b98cef
Show file tree
Hide file tree
Showing 17 changed files with 106 additions and 25 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,9 @@ export interface CancelCapacityReservationCommandOutput extends CancelCapacityRe
* duration has elapsed. You can't cancel a future-dated Capacity Reservation during the commitment duration.</p>
* </li>
* </ul>
* <note>
* <p>You can't modify or cancel a Capacity Block. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-capacity-blocks.html">Capacity Blocks for ML</a>.</p>
* </note>
* <p>If a future-dated Capacity Reservation enters the <code>delayed</code> state, the commitment
* duration is waived, and you can cancel it as soon as it enters the <code>active</code> state.</p>
* <p>Instances running in the reserved capacity continue running until you stop them. Stopped
Expand Down
9 changes: 4 additions & 5 deletions clients/client-ec2/src/commands/CopySnapshotCommand.ts
Original file line number Diff line number Diff line change
Expand Up @@ -40,11 +40,10 @@ export interface CopySnapshotCommandOutput extends CopySnapshotResult, __Metadat
* however, you can specify a different KMS key. To copy an encrypted
* snapshot that has been shared from another account, you must have permissions for the KMS key
* used to encrypt the snapshot.</p>
* <p>Snapshots copied to an Outpost are encrypted by default using the default
* encryption key 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, <a href="https://docs.aws.amazon.com/ebs/latest/userguide/snapshots-outposts.html#ami">
* Amazon EBS local snapshots on Outposts</a> in the <i>Amazon EBS User Guide</i>.</p>
* <p>Snapshots copied to an Outpost are encrypted by default using the default encryption key
* 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,
* see <a href="https://docs.aws.amazon.com/ebs/latest/userguide/snapshots-outposts.html#ami">Amazon EBS
* local snapshots on Outposts</a> in the <i>Amazon EBS User Guide</i>.</p>
* <p>Snapshots created by copying another snapshot have an arbitrary volume ID that should not
* be used for any purpose.</p>
* <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
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -94,6 +94,7 @@ export interface CreateClientVpnEndpointCommandOutput extends CreateClientVpnEnd
* Enabled: true || false,
* BannerText: "STRING_VALUE",
* },
* DisconnectOnSessionTimeout: true || false,
* };
* const command = new CreateClientVpnEndpointCommand(input);
* const response = await client.send(command);
Expand Down
7 changes: 3 additions & 4 deletions clients/client-ec2/src/commands/CreateSnapshotCommand.ts
Original file line number Diff line number Diff line change
Expand Up @@ -38,8 +38,8 @@ export interface CreateSnapshotCommandOutput extends Snapshot, __MetadataBearer
* Region as the volume.</p>
* </li>
* <li>
* <p>If the source volume is in a Local Zone, you can create the snapshot in the same
* Local Zone or in parent Amazon Web Services Region.</p>
* <p>If the source volume is in a Local Zone, you can create the snapshot in the same Local
* Zone or in its parent Amazon Web Services Region.</p>
* </li>
* <li>
* <p>If the source volume is on an Outpost, you can create the snapshot on the same
Expand All @@ -60,8 +60,7 @@ export interface CreateSnapshotCommandOutput extends Snapshot, __MetadataBearer
* that you stop the instance before taking the snapshot.</p>
* <p>Snapshots that are taken from encrypted volumes are automatically encrypted. Volumes that
* are created from encrypted snapshots are also automatically encrypted. Your encrypted volumes
* and any associated snapshots always remain protected. For more information,
* <a href="https://docs.aws.amazon.com/ebs/latest/userguide/ebs-encryption.html">Amazon EBS encryption</a>
* 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>
* in the <i>Amazon EBS User Guide</i>.</p>
* @example
* Use a bare-bones client and the command you need to make an API call.
Expand Down
2 changes: 1 addition & 1 deletion clients/client-ec2/src/commands/CreateSnapshotsCommand.ts
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ export interface CreateSnapshotsCommandOutput extends CreateSnapshotsResult, __M
* </li>
* <li>
* <p>If the source instance is in a Local Zone, you can create the snapshots in the same
* Local Zone or in parent Amazon Web Services Region.</p>
* Local Zone or in its parent Amazon Web Services Region.</p>
* </li>
* <li>
* <p>If the source instance is on an Outpost, you can create the snapshots on the same
Expand Down
2 changes: 1 addition & 1 deletion clients/client-ec2/src/commands/DeleteSnapshotCommand.ts
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ export interface DeleteSnapshotCommandOutput extends __MetadataBearer {}
* regardless of which prior snapshots have been deleted, all active snapshots will have access
* to all the information needed to restore the volume.</p>
* <p>You cannot delete a snapshot of the root device of an EBS volume used by a registered AMI.
* You must first de-register the AMI before you can delete the snapshot.</p>
* You must first deregister the AMI before you can delete the snapshot.</p>
* <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
* <i>Amazon EBS User Guide</i>.</p>
* @example
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,20 @@ export interface DescribeCapacityBlockOfferingsCommandOutput
/**
* <p>Describes Capacity Block offerings available for purchase in the Amazon Web Services Region that you're currently using. With Capacity Blocks, you purchase a
* specific instance type for a period of time.</p>
* <p>To search for an available Capacity Block offering, you specify a reservation duration
* and instance count. You must select one of the following options.</p>
* <ul>
* <li>
* <p>For reservation durations<b> 1-day increments
* up 14 days and 7-day increments up to 182 days total</b>
* </p>
* </li>
* <li>
* <p>For instance count<b> 1, 2, 4, 8, 16, 32, or
* 64 instances</b>
* </p>
* </li>
* </ul>
* @example
* Use a bare-bones client and the command you need to make an API call.
* ```javascript
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -124,6 +124,7 @@ export interface DescribeClientVpnEndpointsCommandOutput extends DescribeClientV
* // Enabled: true || false,
* // BannerText: "STRING_VALUE",
* // },
* // DisconnectOnSessionTimeout: true || false,
* // },
* // ],
* // NextToken: "STRING_VALUE",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,8 @@ export interface DescribeInstanceTopologyCommandOutput extends DescribeInstanceT
* <li>
* <p>
* <code>trn1.2xlarge</code> | <code>trn1.32xlarge</code> |
* <code>trn1n.32xlarge</code>
* <code>trn1n.32xlarge</code> | <code>trn2.48xlarge</code> |
* <code>trn2u.48xlarge</code>
* </p>
* </li>
* </ul>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -67,6 +67,7 @@ export interface ModifyClientVpnEndpointCommandOutput extends ModifyClientVpnEnd
* Enabled: true || false,
* BannerText: "STRING_VALUE",
* },
* DisconnectOnSessionTimeout: true || false,
* };
* const command = new ModifyClientVpnEndpointCommand(input);
* const response = await client.send(command);
Expand Down
7 changes: 7 additions & 0 deletions clients/client-ec2/src/models/models_1.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2430,6 +2430,13 @@ export interface CreateClientVpnEndpointRequest {
* @public
*/
ClientLoginBannerOptions?: ClientLoginBannerOptions | undefined;

/**
* <p>Indicates whether the client VPN session is disconnected after the maximum timeout specified in <code>SessionTimeoutHours</code> is reached. If <code>true</code>, users are prompted to reconnect client VPN. If <code>false</code>, client VPN attempts to reconnect automatically.
* The default value is <code>false</code>.</p>
* @public
*/
DisconnectOnSessionTimeout?: boolean | undefined;
}

/**
Expand Down
6 changes: 6 additions & 0 deletions clients/client-ec2/src/models/models_3.ts
Original file line number Diff line number Diff line change
Expand Up @@ -5975,6 +5975,12 @@ export interface ClientVpnEndpoint {
* @public
*/
ClientLoginBannerOptions?: ClientLoginBannerResponseOptions | undefined;

/**
* <p>Indicates whether the client VPN session is disconnected after the maximum <code>sessionTimeoutHours</code> is reached. If <code>true</code>, users are prompted to reconnect client VPN. If <code>false</code>, client VPN attempts to reconnect automatically. The default value is <code>false</code>.</p>
* @public
*/
DisconnectOnSessionTimeout?: boolean | undefined;
}

/**
Expand Down
11 changes: 11 additions & 0 deletions clients/client-ec2/src/models/models_4.ts
Original file line number Diff line number Diff line change
Expand Up @@ -11839,6 +11839,17 @@ export interface DescribeNetworkInterfacesRequest {
* </li>
* <li>
* <p>
* <code>operator.managed</code> - A Boolean that indicates whether this is a
* managed network interface.</p>
* </li>
* <li>
* <p>
* <code>operator.principal</code> - The principal that manages the network
* interface. Only valid for managed network interfaces, where <code>managed</code>
* is <code>true</code>.</p>
* </li>
* <li>
* <p>
* <code>owner-id</code> - The Amazon Web Services account ID of the network interface owner.</p>
* </li>
* <li>
Expand Down
5 changes: 3 additions & 2 deletions clients/client-ec2/src/models/models_5.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2943,8 +2943,9 @@ export interface InstanceNetworkInterfaceSpecification {
PrivateIpAddresses?: PrivateIpAddressSpecification[] | undefined;

/**
* <p>The number of secondary private IPv4 addresses. You can't specify this option and specify more than one private IP address using the private IP addresses option. You cannot specify this option if you're
* launching more than one instance in a <a href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RunInstances.html">RunInstances</a> request.</p>
* <p>The number of secondary private IPv4 addresses. You can’t specify this parameter and
* also specify a secondary private IP address using the <code>PrivateIpAddress</code>
* parameter.</p>
* @public
*/
SecondaryPrivateIpAddressCount?: number | undefined;
Expand Down
8 changes: 7 additions & 1 deletion clients/client-ec2/src/models/models_6.ts
Original file line number Diff line number Diff line change
Expand Up @@ -7903,6 +7903,12 @@ export interface ModifyClientVpnEndpointRequest {
* @public
*/
ClientLoginBannerOptions?: ClientLoginBannerOptions | undefined;

/**
* <p>Indicates whether the client VPN session is disconnected after the maximum timeout specified in <code>sessionTimeoutHours</code> is reached. If <code>true</code>, users are prompted to reconnect client VPN. If <code>false</code>, client VPN attempts to reconnect automatically. The default value is <code>false</code>.</p>
* @public
*/
DisconnectOnSessionTimeout?: boolean | undefined;
}

/**
Expand Down Expand Up @@ -8495,7 +8501,7 @@ export interface InstanceBlockDeviceMappingSpecification {
VirtualName?: string | undefined;

/**
* <p>suppress the specified device included in the block device mapping.</p>
* <p>Suppresses the specified device included in the block device mapping.</p>
* @public
*/
NoDevice?: string | undefined;
Expand Down
11 changes: 11 additions & 0 deletions clients/client-ec2/src/protocols/Aws_ec2.ts
Original file line number Diff line number Diff line change
Expand Up @@ -31412,6 +31412,9 @@ const se_CreateClientVpnEndpointRequest = (input: CreateClientVpnEndpointRequest
entries[loc] = value;
});
}
if (input[_DOST] != null) {
entries[_DOST] = input[_DOST];
}
return entries;
};

Expand Down Expand Up @@ -47902,6 +47905,9 @@ const se_ModifyClientVpnEndpointRequest = (input: ModifyClientVpnEndpointRequest
entries[loc] = value;
});
}
if (input[_DOST] != null) {
entries[_DOST] = input[_DOST];
}
return entries;
};

Expand Down Expand Up @@ -60228,6 +60234,9 @@ const de_ClientVpnEndpoint = (output: any, context: __SerdeContext): ClientVpnEn
if (output[_cLBO] != null) {
contents[_CLBO] = de_ClientLoginBannerResponseOptions(output[_cLBO], context);
}
if (output[_dOST] != null) {
contents[_DOST] = __parseBoolean(output[_dOST]);
}
return contents;
};

Expand Down Expand Up @@ -88018,6 +88027,7 @@ const _DO = "DestinationOptions";
const _DOA = "DestinationOutpostArn";
const _DOI = "DhcpOptionsId";
const _DOIh = "DhcpOptionsIds";
const _DOST = "DisconnectOnSessionTimeout";
const _DOT = "DeleteOnTermination";
const _DOe = "DeviceOptions";
const _DOh = "DhcpOptions";
Expand Down Expand Up @@ -90350,6 +90360,7 @@ const _dNn = "dnsName";
const _dO = "dhcpOptions";
const _dOI = "dhcpOptionsId";
const _dOS = "dhcpOptionsSet";
const _dOST = "disconnectOnSessionTimeout";
const _dOT = "deleteOnTermination";
const _dOe = "destinationOptions";
const _dOev = "deviceOptions";
Expand Down
Loading

0 comments on commit 9b98cef

Please sign in to comment.