Skip to content

Commit

Permalink
feat(client-ec2): Amazon VPC IP Address Manager (IPAM) now supports B…
Browse files Browse the repository at this point in the history
…ring-Your-Own-IP (BYOIP) for IP addresses registered with any Internet Registry. This feature uses DNS TXT records to validate ownership of a public IP address range.
  • Loading branch information
awstools committed Jul 18, 2024
1 parent 709db60 commit 337c43d
Show file tree
Hide file tree
Showing 127 changed files with 3,570 additions and 1,984 deletions.
24 changes: 24 additions & 0 deletions clients/client-ec2/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -813,6 +813,14 @@ CreateIpam

[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/ec2/command/CreateIpamCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-ec2/Interface/CreateIpamCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-ec2/Interface/CreateIpamCommandOutput/)

</details>
<details>
<summary>
CreateIpamExternalResourceVerificationToken
</summary>

[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/ec2/command/CreateIpamExternalResourceVerificationTokenCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-ec2/Interface/CreateIpamExternalResourceVerificationTokenCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-ec2/Interface/CreateIpamExternalResourceVerificationTokenCommandOutput/)

</details>
<details>
<summary>
Expand Down Expand Up @@ -1421,6 +1429,14 @@ DeleteIpam

[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/ec2/command/DeleteIpamCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-ec2/Interface/DeleteIpamCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-ec2/Interface/DeleteIpamCommandOutput/)

</details>
<details>
<summary>
DeleteIpamExternalResourceVerificationToken
</summary>

[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/ec2/command/DeleteIpamExternalResourceVerificationTokenCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-ec2/Interface/DeleteIpamExternalResourceVerificationTokenCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-ec2/Interface/DeleteIpamExternalResourceVerificationTokenCommandOutput/)

</details>
<details>
<summary>
Expand Down Expand Up @@ -2413,6 +2429,14 @@ DescribeIpamByoasn

[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/ec2/command/DescribeIpamByoasnCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-ec2/Interface/DescribeIpamByoasnCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-ec2/Interface/DescribeIpamByoasnCommandOutput/)

</details>
<details>
<summary>
DescribeIpamExternalResourceVerificationTokens
</summary>

[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/ec2/command/DescribeIpamExternalResourceVerificationTokensCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-ec2/Interface/DescribeIpamExternalResourceVerificationTokensCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-ec2/Interface/DescribeIpamExternalResourceVerificationTokensCommandOutput/)

</details>
<details>
<summary>
Expand Down
70 changes: 70 additions & 0 deletions clients/client-ec2/src/EC2.ts
Original file line number Diff line number Diff line change
Expand Up @@ -366,6 +366,11 @@ import {
CreateInternetGatewayCommandOutput,
} from "./commands/CreateInternetGatewayCommand";
import { CreateIpamCommand, CreateIpamCommandInput, CreateIpamCommandOutput } from "./commands/CreateIpamCommand";
import {
CreateIpamExternalResourceVerificationTokenCommand,
CreateIpamExternalResourceVerificationTokenCommandInput,
CreateIpamExternalResourceVerificationTokenCommandOutput,
} from "./commands/CreateIpamExternalResourceVerificationTokenCommand";
import {
CreateIpamPoolCommand,
CreateIpamPoolCommandInput,
Expand Down Expand Up @@ -730,6 +735,11 @@ import {
DeleteInternetGatewayCommandOutput,
} from "./commands/DeleteInternetGatewayCommand";
import { DeleteIpamCommand, DeleteIpamCommandInput, DeleteIpamCommandOutput } from "./commands/DeleteIpamCommand";
import {
DeleteIpamExternalResourceVerificationTokenCommand,
DeleteIpamExternalResourceVerificationTokenCommandInput,
DeleteIpamExternalResourceVerificationTokenCommandOutput,
} from "./commands/DeleteIpamExternalResourceVerificationTokenCommand";
import {
DeleteIpamPoolCommand,
DeleteIpamPoolCommandInput,
Expand Down Expand Up @@ -1338,6 +1348,11 @@ import {
DescribeIpamByoasnCommandInput,
DescribeIpamByoasnCommandOutput,
} from "./commands/DescribeIpamByoasnCommand";
import {
DescribeIpamExternalResourceVerificationTokensCommand,
DescribeIpamExternalResourceVerificationTokensCommandInput,
DescribeIpamExternalResourceVerificationTokensCommandOutput,
} from "./commands/DescribeIpamExternalResourceVerificationTokensCommand";
import {
DescribeIpamPoolsCommand,
DescribeIpamPoolsCommandInput,
Expand Down Expand Up @@ -3123,6 +3138,7 @@ const commands = {
CreateInstanceExportTaskCommand,
CreateInternetGatewayCommand,
CreateIpamCommand,
CreateIpamExternalResourceVerificationTokenCommand,
CreateIpamPoolCommand,
CreateIpamResourceDiscoveryCommand,
CreateIpamScopeCommand,
Expand Down Expand Up @@ -3199,6 +3215,7 @@ const commands = {
DeleteInstanceEventWindowCommand,
DeleteInternetGatewayCommand,
DeleteIpamCommand,
DeleteIpamExternalResourceVerificationTokenCommand,
DeleteIpamPoolCommand,
DeleteIpamResourceDiscoveryCommand,
DeleteIpamScopeCommand,
Expand Down Expand Up @@ -3323,6 +3340,7 @@ const commands = {
DescribeInstanceTypesCommand,
DescribeInternetGatewaysCommand,
DescribeIpamByoasnCommand,
DescribeIpamExternalResourceVerificationTokensCommand,
DescribeIpamPoolsCommand,
DescribeIpamResourceDiscoveriesCommand,
DescribeIpamResourceDiscoveryAssociationsCommand,
Expand Down Expand Up @@ -4907,6 +4925,23 @@ export interface EC2 {
cb: (err: any, data?: CreateIpamCommandOutput) => void
): void;

/**
* @see {@link CreateIpamExternalResourceVerificationTokenCommand}
*/
createIpamExternalResourceVerificationToken(
args: CreateIpamExternalResourceVerificationTokenCommandInput,
options?: __HttpHandlerOptions
): Promise<CreateIpamExternalResourceVerificationTokenCommandOutput>;
createIpamExternalResourceVerificationToken(
args: CreateIpamExternalResourceVerificationTokenCommandInput,
cb: (err: any, data?: CreateIpamExternalResourceVerificationTokenCommandOutput) => void
): void;
createIpamExternalResourceVerificationToken(
args: CreateIpamExternalResourceVerificationTokenCommandInput,
options: __HttpHandlerOptions,
cb: (err: any, data?: CreateIpamExternalResourceVerificationTokenCommandOutput) => void
): void;

/**
* @see {@link CreateIpamPoolCommand}
*/
Expand Down Expand Up @@ -6136,6 +6171,23 @@ export interface EC2 {
cb: (err: any, data?: DeleteIpamCommandOutput) => void
): void;

/**
* @see {@link DeleteIpamExternalResourceVerificationTokenCommand}
*/
deleteIpamExternalResourceVerificationToken(
args: DeleteIpamExternalResourceVerificationTokenCommandInput,
options?: __HttpHandlerOptions
): Promise<DeleteIpamExternalResourceVerificationTokenCommandOutput>;
deleteIpamExternalResourceVerificationToken(
args: DeleteIpamExternalResourceVerificationTokenCommandInput,
cb: (err: any, data?: DeleteIpamExternalResourceVerificationTokenCommandOutput) => void
): void;
deleteIpamExternalResourceVerificationToken(
args: DeleteIpamExternalResourceVerificationTokenCommandInput,
options: __HttpHandlerOptions,
cb: (err: any, data?: DeleteIpamExternalResourceVerificationTokenCommandOutput) => void
): void;

/**
* @see {@link DeleteIpamPoolCommand}
*/
Expand Down Expand Up @@ -8235,6 +8287,24 @@ export interface EC2 {
cb: (err: any, data?: DescribeIpamByoasnCommandOutput) => void
): void;

/**
* @see {@link DescribeIpamExternalResourceVerificationTokensCommand}
*/
describeIpamExternalResourceVerificationTokens(): Promise<DescribeIpamExternalResourceVerificationTokensCommandOutput>;
describeIpamExternalResourceVerificationTokens(
args: DescribeIpamExternalResourceVerificationTokensCommandInput,
options?: __HttpHandlerOptions
): Promise<DescribeIpamExternalResourceVerificationTokensCommandOutput>;
describeIpamExternalResourceVerificationTokens(
args: DescribeIpamExternalResourceVerificationTokensCommandInput,
cb: (err: any, data?: DescribeIpamExternalResourceVerificationTokensCommandOutput) => void
): void;
describeIpamExternalResourceVerificationTokens(
args: DescribeIpamExternalResourceVerificationTokensCommandInput,
options: __HttpHandlerOptions,
cb: (err: any, data?: DescribeIpamExternalResourceVerificationTokensCommandOutput) => void
): void;

/**
* @see {@link DescribeIpamPoolsCommand}
*/
Expand Down
18 changes: 18 additions & 0 deletions clients/client-ec2/src/EC2Client.ts
Original file line number Diff line number Diff line change
Expand Up @@ -291,6 +291,10 @@ import {
CreateInternetGatewayCommandOutput,
} from "./commands/CreateInternetGatewayCommand";
import { CreateIpamCommandInput, CreateIpamCommandOutput } from "./commands/CreateIpamCommand";
import {
CreateIpamExternalResourceVerificationTokenCommandInput,
CreateIpamExternalResourceVerificationTokenCommandOutput,
} from "./commands/CreateIpamExternalResourceVerificationTokenCommand";
import { CreateIpamPoolCommandInput, CreateIpamPoolCommandOutput } from "./commands/CreateIpamPoolCommand";
import {
CreateIpamResourceDiscoveryCommandInput,
Expand Down Expand Up @@ -529,6 +533,10 @@ import {
DeleteInternetGatewayCommandOutput,
} from "./commands/DeleteInternetGatewayCommand";
import { DeleteIpamCommandInput, DeleteIpamCommandOutput } from "./commands/DeleteIpamCommand";
import {
DeleteIpamExternalResourceVerificationTokenCommandInput,
DeleteIpamExternalResourceVerificationTokenCommandOutput,
} from "./commands/DeleteIpamExternalResourceVerificationTokenCommand";
import { DeleteIpamPoolCommandInput, DeleteIpamPoolCommandOutput } from "./commands/DeleteIpamPoolCommand";
import {
DeleteIpamResourceDiscoveryCommandInput,
Expand Down Expand Up @@ -947,6 +955,10 @@ import {
DescribeInternetGatewaysCommandOutput,
} from "./commands/DescribeInternetGatewaysCommand";
import { DescribeIpamByoasnCommandInput, DescribeIpamByoasnCommandOutput } from "./commands/DescribeIpamByoasnCommand";
import {
DescribeIpamExternalResourceVerificationTokensCommandInput,
DescribeIpamExternalResourceVerificationTokensCommandOutput,
} from "./commands/DescribeIpamExternalResourceVerificationTokensCommand";
import { DescribeIpamPoolsCommandInput, DescribeIpamPoolsCommandOutput } from "./commands/DescribeIpamPoolsCommand";
import {
DescribeIpamResourceDiscoveriesCommandInput,
Expand Down Expand Up @@ -2248,6 +2260,7 @@ export type ServiceInputTypes =
| CreateInstanceExportTaskCommandInput
| CreateInternetGatewayCommandInput
| CreateIpamCommandInput
| CreateIpamExternalResourceVerificationTokenCommandInput
| CreateIpamPoolCommandInput
| CreateIpamResourceDiscoveryCommandInput
| CreateIpamScopeCommandInput
Expand Down Expand Up @@ -2324,6 +2337,7 @@ export type ServiceInputTypes =
| DeleteInstanceEventWindowCommandInput
| DeleteInternetGatewayCommandInput
| DeleteIpamCommandInput
| DeleteIpamExternalResourceVerificationTokenCommandInput
| DeleteIpamPoolCommandInput
| DeleteIpamResourceDiscoveryCommandInput
| DeleteIpamScopeCommandInput
Expand Down Expand Up @@ -2448,6 +2462,7 @@ export type ServiceInputTypes =
| DescribeInstancesCommandInput
| DescribeInternetGatewaysCommandInput
| DescribeIpamByoasnCommandInput
| DescribeIpamExternalResourceVerificationTokensCommandInput
| DescribeIpamPoolsCommandInput
| DescribeIpamResourceDiscoveriesCommandInput
| DescribeIpamResourceDiscoveryAssociationsCommandInput
Expand Down Expand Up @@ -2875,6 +2890,7 @@ export type ServiceOutputTypes =
| CreateInstanceExportTaskCommandOutput
| CreateInternetGatewayCommandOutput
| CreateIpamCommandOutput
| CreateIpamExternalResourceVerificationTokenCommandOutput
| CreateIpamPoolCommandOutput
| CreateIpamResourceDiscoveryCommandOutput
| CreateIpamScopeCommandOutput
Expand Down Expand Up @@ -2951,6 +2967,7 @@ export type ServiceOutputTypes =
| DeleteInstanceEventWindowCommandOutput
| DeleteInternetGatewayCommandOutput
| DeleteIpamCommandOutput
| DeleteIpamExternalResourceVerificationTokenCommandOutput
| DeleteIpamPoolCommandOutput
| DeleteIpamResourceDiscoveryCommandOutput
| DeleteIpamScopeCommandOutput
Expand Down Expand Up @@ -3075,6 +3092,7 @@ export type ServiceOutputTypes =
| DescribeInstancesCommandOutput
| DescribeInternetGatewaysCommandOutput
| DescribeIpamByoasnCommandOutput
| DescribeIpamExternalResourceVerificationTokensCommandOutput
| DescribeIpamPoolsCommandOutput
| DescribeIpamResourceDiscoveriesCommandOutput
| DescribeIpamResourceDiscoveryAssociationsCommandOutput
Expand Down
2 changes: 1 addition & 1 deletion clients/client-ec2/src/auth/httpAuthSchemeProvider.ts
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,7 @@ function createAwsAuthSigv4HttpAuthOption(authParameters: EC2HttpAuthSchemeParam
name: "ec2",
region: authParameters.region,
},
propertiesExtractor: (config: EC2ClientConfig, context) => ({
propertiesExtractor: (config: Partial<EC2ClientConfig>, context) => ({
/**
* @internal
*/
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ export interface AcceptAddressTransferCommandOutput extends AcceptAddressTransfe
* Address: "STRING_VALUE", // required
* TagSpecifications: [ // TagSpecificationList
* { // TagSpecification
* ResourceType: "capacity-reservation" || "client-vpn-endpoint" || "customer-gateway" || "carrier-gateway" || "coip-pool" || "dedicated-host" || "dhcp-options" || "egress-only-internet-gateway" || "elastic-ip" || "elastic-gpu" || "export-image-task" || "export-instance-task" || "fleet" || "fpga-image" || "host-reservation" || "image" || "import-image-task" || "import-snapshot-task" || "instance" || "instance-event-window" || "internet-gateway" || "ipam" || "ipam-pool" || "ipam-scope" || "ipv4pool-ec2" || "ipv6pool-ec2" || "key-pair" || "launch-template" || "local-gateway" || "local-gateway-route-table" || "local-gateway-virtual-interface" || "local-gateway-virtual-interface-group" || "local-gateway-route-table-vpc-association" || "local-gateway-route-table-virtual-interface-group-association" || "natgateway" || "network-acl" || "network-interface" || "network-insights-analysis" || "network-insights-path" || "network-insights-access-scope" || "network-insights-access-scope-analysis" || "placement-group" || "prefix-list" || "replace-root-volume-task" || "reserved-instances" || "route-table" || "security-group" || "security-group-rule" || "snapshot" || "spot-fleet-request" || "spot-instances-request" || "subnet" || "subnet-cidr-reservation" || "traffic-mirror-filter" || "traffic-mirror-session" || "traffic-mirror-target" || "transit-gateway" || "transit-gateway-attachment" || "transit-gateway-connect-peer" || "transit-gateway-multicast-domain" || "transit-gateway-policy-table" || "transit-gateway-route-table" || "transit-gateway-route-table-announcement" || "volume" || "vpc" || "vpc-endpoint" || "vpc-endpoint-connection" || "vpc-endpoint-service" || "vpc-endpoint-service-permission" || "vpc-peering-connection" || "vpn-connection" || "vpn-gateway" || "vpc-flow-log" || "capacity-reservation-fleet" || "traffic-mirror-filter-rule" || "vpc-endpoint-connection-device-type" || "verified-access-instance" || "verified-access-group" || "verified-access-endpoint" || "verified-access-policy" || "verified-access-trust-provider" || "vpn-connection-device-type" || "vpc-block-public-access-exclusion" || "vpc-encryption-control" || "ipam-resource-discovery" || "ipam-resource-discovery-association" || "instance-connect-endpoint",
* ResourceType: "capacity-reservation" || "client-vpn-endpoint" || "customer-gateway" || "carrier-gateway" || "coip-pool" || "dedicated-host" || "dhcp-options" || "egress-only-internet-gateway" || "elastic-ip" || "elastic-gpu" || "export-image-task" || "export-instance-task" || "fleet" || "fpga-image" || "host-reservation" || "image" || "import-image-task" || "import-snapshot-task" || "instance" || "instance-event-window" || "internet-gateway" || "ipam" || "ipam-pool" || "ipam-scope" || "ipv4pool-ec2" || "ipv6pool-ec2" || "key-pair" || "launch-template" || "local-gateway" || "local-gateway-route-table" || "local-gateway-virtual-interface" || "local-gateway-virtual-interface-group" || "local-gateway-route-table-vpc-association" || "local-gateway-route-table-virtual-interface-group-association" || "natgateway" || "network-acl" || "network-interface" || "network-insights-analysis" || "network-insights-path" || "network-insights-access-scope" || "network-insights-access-scope-analysis" || "placement-group" || "prefix-list" || "replace-root-volume-task" || "reserved-instances" || "route-table" || "security-group" || "security-group-rule" || "snapshot" || "spot-fleet-request" || "spot-instances-request" || "subnet" || "subnet-cidr-reservation" || "traffic-mirror-filter" || "traffic-mirror-session" || "traffic-mirror-target" || "transit-gateway" || "transit-gateway-attachment" || "transit-gateway-connect-peer" || "transit-gateway-multicast-domain" || "transit-gateway-policy-table" || "transit-gateway-route-table" || "transit-gateway-route-table-announcement" || "volume" || "vpc" || "vpc-endpoint" || "vpc-endpoint-connection" || "vpc-endpoint-service" || "vpc-endpoint-service-permission" || "vpc-peering-connection" || "vpn-connection" || "vpn-gateway" || "vpc-flow-log" || "capacity-reservation-fleet" || "traffic-mirror-filter-rule" || "vpc-endpoint-connection-device-type" || "verified-access-instance" || "verified-access-group" || "verified-access-endpoint" || "verified-access-policy" || "verified-access-trust-provider" || "vpn-connection-device-type" || "vpc-block-public-access-exclusion" || "vpc-encryption-control" || "ipam-resource-discovery" || "ipam-resource-discovery-association" || "instance-connect-endpoint" || "ipam-external-resource-verification-token",
* Tags: [ // TagList
* { // Tag
* Key: "STRING_VALUE",
Expand Down
Loading

0 comments on commit 337c43d

Please sign in to comment.