@huaweicloudos/pulumi
Version:
A Pulumi package for creating and managing Huaweicloud cloud resources.
158 lines (157 loc) • 5 kB
TypeScript
import * as pulumi from "@pulumi/pulumi";
/**
* Use this data source to get an available public NAT gateway within HuaweiCloud.
*
* ## Example Usage
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as huaweicloud from "@pulumi/huaweicloud";
*
* const config = new pulumi.Config();
* const gatewayName = config.requireObject("gatewayName");
* const test = huaweicloud.Nat.getGateway({
* name: gatewayName,
* });
* ```
*/
export declare function getGateway(args?: GetGatewayArgs, opts?: pulumi.InvokeOptions): Promise<GetGatewayResult>;
/**
* A collection of arguments for invoking getGateway.
*/
export interface GetGatewayArgs {
/**
* Specifies the description of the NAT gateway. The value contains 0 to 255
* characters, and angle brackets (<)
* and (>) are not allowed.
*/
description?: string;
/**
* Specifies the enterprise project ID of the NAT gateway.
*/
enterpriseProjectId?: string;
/**
* Specifies the ID of the NAT gateway.
*/
id?: string;
/**
* @deprecated use subnet_id instead
*/
internalNetworkId?: string;
/**
* Specifies the public NAT gateway name.
* The valid length is limited from `1` to `64`, only letters, digits, hyphens (-) and underscores (_) are allowed.
*/
name?: string;
/**
* Specifies the region in which to create the NAT gateway resource. If omitted, the
* provider-level region will be used.
*/
region?: string;
/**
* @deprecated use vpc_id instead
*/
routerId?: string;
/**
* The public NAT gateway type. The valid values are as follows:
* + **1**: Small type, which supports up to `10,000` SNAT connections.
* + **2**: Medium type, which supports up to `50,000` SNAT connections.
* + **3**: Large type, which supports up to `200,000` SNAT connections.
* + **4**: Extra-large type, which supports up to `1,000,000` SNAT connections.
*/
spec?: string;
/**
* Specifies the status of the NAT gateway.
*/
status?: string;
/**
* Specifies the subnet ID of the downstream interface (the next hop of the DVR) of the
* public NAT gateway.
*/
subnetId?: string;
/**
* Specifies the ID of the VPC this public NAT gateway belongs to.
*/
vpcId?: string;
}
/**
* A collection of values returned by getGateway.
*/
export interface GetGatewayResult {
readonly description: string;
readonly enterpriseProjectId: string;
readonly id: string;
/**
* @deprecated use subnet_id instead
*/
readonly internalNetworkId?: string;
readonly name: string;
readonly region: string;
/**
* @deprecated use vpc_id instead
*/
readonly routerId?: string;
readonly spec: string;
readonly status: string;
readonly subnetId: string;
readonly vpcId: string;
}
export declare function getGatewayOutput(args?: GetGatewayOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output<GetGatewayResult>;
/**
* A collection of arguments for invoking getGateway.
*/
export interface GetGatewayOutputArgs {
/**
* Specifies the description of the NAT gateway. The value contains 0 to 255
* characters, and angle brackets (<)
* and (>) are not allowed.
*/
description?: pulumi.Input<string>;
/**
* Specifies the enterprise project ID of the NAT gateway.
*/
enterpriseProjectId?: pulumi.Input<string>;
/**
* Specifies the ID of the NAT gateway.
*/
id?: pulumi.Input<string>;
/**
* @deprecated use subnet_id instead
*/
internalNetworkId?: pulumi.Input<string>;
/**
* Specifies the public NAT gateway name.
* The valid length is limited from `1` to `64`, only letters, digits, hyphens (-) and underscores (_) are allowed.
*/
name?: pulumi.Input<string>;
/**
* Specifies the region in which to create the NAT gateway resource. If omitted, the
* provider-level region will be used.
*/
region?: pulumi.Input<string>;
/**
* @deprecated use vpc_id instead
*/
routerId?: pulumi.Input<string>;
/**
* The public NAT gateway type. The valid values are as follows:
* + **1**: Small type, which supports up to `10,000` SNAT connections.
* + **2**: Medium type, which supports up to `50,000` SNAT connections.
* + **3**: Large type, which supports up to `200,000` SNAT connections.
* + **4**: Extra-large type, which supports up to `1,000,000` SNAT connections.
*/
spec?: pulumi.Input<string>;
/**
* Specifies the status of the NAT gateway.
*/
status?: pulumi.Input<string>;
/**
* Specifies the subnet ID of the downstream interface (the next hop of the DVR) of the
* public NAT gateway.
*/
subnetId?: pulumi.Input<string>;
/**
* Specifies the ID of the VPC this public NAT gateway belongs to.
*/
vpcId?: pulumi.Input<string>;
}