@pulumi/aws
Version:
A Pulumi package for creating and managing Amazon Web Services (AWS) cloud resources.
146 lines (145 loc) • 4.58 kB
TypeScript
import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../types/input";
import * as outputs from "../types/output";
/**
* The VPN Gateway data source provides details about
* a specific VPN gateway.
*
* ## Example Usage
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as aws from "@pulumi/aws";
*
* const selected = aws.ec2.getVpnGateway({
* filters: [{
* name: "tag:Name",
* values: ["vpn-gw"],
* }],
* });
* export const vpnGatewayId = selected.then(selected => selected.id);
* ```
*/
export declare function getVpnGateway(args?: GetVpnGatewayArgs, opts?: pulumi.InvokeOptions): Promise<GetVpnGatewayResult>;
/**
* A collection of arguments for invoking getVpnGateway.
*/
export interface GetVpnGatewayArgs {
/**
* Autonomous System Number (ASN) for the Amazon side of the specific VPN Gateway to retrieve.
*
* The arguments of this data source act as filters for querying the available VPN gateways.
* The given filters must match exactly one VPN gateway whose data will be exported as attributes.
*/
amazonSideAsn?: string;
/**
* ID of a VPC attached to the specific VPN Gateway to retrieve.
*/
attachedVpcId?: string;
/**
* Availability Zone of the specific VPN Gateway to retrieve.
*/
availabilityZone?: string;
/**
* Custom filter block as described below.
*/
filters?: inputs.ec2.GetVpnGatewayFilter[];
/**
* ID of the specific VPN Gateway to retrieve.
*/
id?: string;
/**
* Region where this resource will be [managed](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). Defaults to the Region set in the provider configuration.
*/
region?: string;
/**
* State of the specific VPN Gateway to retrieve.
*/
state?: string;
/**
* Map of tags, each pair of which must exactly match
* a pair on the desired VPN Gateway.
*/
tags?: {
[key: string]: string;
};
}
/**
* A collection of values returned by getVpnGateway.
*/
export interface GetVpnGatewayResult {
readonly amazonSideAsn: string;
readonly arn: string;
readonly attachedVpcId: string;
readonly availabilityZone: string;
readonly filters?: outputs.ec2.GetVpnGatewayFilter[];
readonly id: string;
readonly region: string;
readonly state: string;
readonly tags: {
[key: string]: string;
};
}
/**
* The VPN Gateway data source provides details about
* a specific VPN gateway.
*
* ## Example Usage
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as aws from "@pulumi/aws";
*
* const selected = aws.ec2.getVpnGateway({
* filters: [{
* name: "tag:Name",
* values: ["vpn-gw"],
* }],
* });
* export const vpnGatewayId = selected.then(selected => selected.id);
* ```
*/
export declare function getVpnGatewayOutput(args?: GetVpnGatewayOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetVpnGatewayResult>;
/**
* A collection of arguments for invoking getVpnGateway.
*/
export interface GetVpnGatewayOutputArgs {
/**
* Autonomous System Number (ASN) for the Amazon side of the specific VPN Gateway to retrieve.
*
* The arguments of this data source act as filters for querying the available VPN gateways.
* The given filters must match exactly one VPN gateway whose data will be exported as attributes.
*/
amazonSideAsn?: pulumi.Input<string>;
/**
* ID of a VPC attached to the specific VPN Gateway to retrieve.
*/
attachedVpcId?: pulumi.Input<string>;
/**
* Availability Zone of the specific VPN Gateway to retrieve.
*/
availabilityZone?: pulumi.Input<string>;
/**
* Custom filter block as described below.
*/
filters?: pulumi.Input<pulumi.Input<inputs.ec2.GetVpnGatewayFilterArgs>[]>;
/**
* ID of the specific VPN Gateway to retrieve.
*/
id?: pulumi.Input<string>;
/**
* Region where this resource will be [managed](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). Defaults to the Region set in the provider configuration.
*/
region?: pulumi.Input<string>;
/**
* State of the specific VPN Gateway to retrieve.
*/
state?: pulumi.Input<string>;
/**
* Map of tags, each pair of which must exactly match
* a pair on the desired VPN Gateway.
*/
tags?: pulumi.Input<{
[key: string]: pulumi.Input<string>;
}>;
}