getNatGateways

This data source provides a list of Nat Gateways owned by an Alibaba Cloud account.

NOTE: Available in 1.37.0+.

Example Usage

package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.alicloud.AlicloudFunctions;
import com.pulumi.alicloud.inputs.GetZonesArgs;
import com.pulumi.alicloud.vpc.Network;
import com.pulumi.alicloud.vpc.NetworkArgs;
import com.pulumi.alicloud.vpc.NatGateway;
import com.pulumi.alicloud.vpc.NatGatewayArgs;
import com.pulumi.alicloud.vpc.VpcFunctions;
import com.pulumi.alicloud.vpc.inputs.GetNatGatewaysArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
final var config = ctx.config();
final var name = config.get("name").orElse("natGatewaysDatasource");
final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()
.availableResourceCreation("VSwitch")
.build());
var fooNetwork = new Network("fooNetwork", NetworkArgs.builder()
.cidrBlock("172.16.0.0/12")
.vpcName(name)
.build());
var fooNatGateway = new NatGateway("fooNatGateway", NatGatewayArgs.builder()
.natGateName(name)
.specification("Small")
.vpcId(fooNetwork.id())
.build());
final var fooNatGateways = VpcFunctions.getNatGateways(GetNatGatewaysArgs.builder()
.ids(fooNatGateway.id())
.nameRegex(fooNatGateway.name())
.vpcId(fooNetwork.id())
.build());
}
}

Return

A collection of values returned by getNatGateways.

Parameters

argument

A collection of arguments for invoking getNatGateways.


suspend fun getNatGateways(dryRun: Boolean? = null, enableDetails: Boolean? = null, ids: List<String>? = null, nameRegex: String? = null, natGatewayName: String? = null, natType: String? = null, outputFile: String? = null, pageNumber: Int? = null, pageSize: Int? = null, paymentType: String? = null, resourceGroupId: String? = null, specification: String? = null, status: String? = null, tags: Map<String, Any>? = null, vpcId: String? = null): GetNatGatewaysResult

Return

A collection of values returned by getNatGateways.

See also

Parameters

dryRun

Specifies whether to only precheck the request.

enableDetails

Default to false. Set it to true can output more details about resource attributes.

ids

A list of NAT gateways IDs.

nameRegex

A regex string to filter nat gateways by name.

natGatewayName

The name of NAT gateway.

natType

The nat type of NAT gateway. Valid values Enhanced and Normal.

outputFile

File name where to save data source results (after running pulumi preview).

pageNumber
pageSize
paymentType

The payment type of NAT gateway. Valid values PayAsYouGo and Subscription.

resourceGroupId

The resource group id of NAT gateway.

specification

The specification of NAT gateway. Valid values Middle, Large, Small and XLarge.1. Default value is Small.

status

The status of NAT gateway. Valid values Available, Converting, Creating, Deleting and Modifying.

tags

The tags of NAT gateway.

vpcId

The ID of the VPC.


Return

A collection of values returned by getNatGateways.

See also

Parameters

argument

Builder for com.pulumi.alicloud.vpc.kotlin.inputs.GetNatGatewaysPlainArgs.