UNPKG

@pulumi/aws

Version:

A Pulumi package for creating and managing Amazon Web Services (AWS) cloud resources.

145 lines (144 loc) 4.94 kB
import * as pulumi from "@pulumi/pulumi"; import * as inputs from "../types/input"; import * as outputs from "../types/output"; /** * Get information on an EC2 Transit Gateway VPN Attachment. * * > EC2 Transit Gateway VPN Attachments are implicitly created by VPN Connections referencing an EC2 Transit Gateway so there is no managed resource. For ease, the `aws.ec2.VpnConnection` resource includes a `transitGatewayAttachmentId` attribute which can replace some usage of this data source. For tagging the attachment, see the `aws.ec2.Tag` resource. * * ## Example Usage * * ### By Transit Gateway and VPN Connection Identifiers * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as aws from "@pulumi/aws"; * * const example = aws.ec2transitgateway.getVpnAttachment({ * transitGatewayId: exampleAwsEc2TransitGateway.id, * vpnConnectionId: exampleAwsVpnConnection.id, * }); * ``` * * ### Filter * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as aws from "@pulumi/aws"; * * const test = aws.ec2transitgateway.getVpnAttachment({ * filters: [{ * name: "resource-id", * values: ["some-resource"], * }], * }); * ``` */ export declare function getVpnAttachment(args?: GetVpnAttachmentArgs, opts?: pulumi.InvokeOptions): Promise<GetVpnAttachmentResult>; /** * A collection of arguments for invoking getVpnAttachment. */ export interface GetVpnAttachmentArgs { /** * Configuration block(s) for filtering. Detailed below. */ filters?: inputs.ec2transitgateway.GetVpnAttachmentFilter[]; /** * 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; /** * Map of tags, each pair of which must exactly match a pair on the desired Transit Gateway VPN Attachment. */ tags?: { [key: string]: string; }; /** * Identifier of the EC2 Transit Gateway. */ transitGatewayId?: string; /** * Identifier of the EC2 VPN Connection. */ vpnConnectionId?: string; } /** * A collection of values returned by getVpnAttachment. */ export interface GetVpnAttachmentResult { readonly filters?: outputs.ec2transitgateway.GetVpnAttachmentFilter[]; /** * The provider-assigned unique ID for this managed resource. */ readonly id: string; readonly region: string; /** * Key-value tags for the EC2 Transit Gateway VPN Attachment */ readonly tags: { [key: string]: string; }; readonly transitGatewayId?: string; readonly vpnConnectionId?: string; } /** * Get information on an EC2 Transit Gateway VPN Attachment. * * > EC2 Transit Gateway VPN Attachments are implicitly created by VPN Connections referencing an EC2 Transit Gateway so there is no managed resource. For ease, the `aws.ec2.VpnConnection` resource includes a `transitGatewayAttachmentId` attribute which can replace some usage of this data source. For tagging the attachment, see the `aws.ec2.Tag` resource. * * ## Example Usage * * ### By Transit Gateway and VPN Connection Identifiers * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as aws from "@pulumi/aws"; * * const example = aws.ec2transitgateway.getVpnAttachment({ * transitGatewayId: exampleAwsEc2TransitGateway.id, * vpnConnectionId: exampleAwsVpnConnection.id, * }); * ``` * * ### Filter * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as aws from "@pulumi/aws"; * * const test = aws.ec2transitgateway.getVpnAttachment({ * filters: [{ * name: "resource-id", * values: ["some-resource"], * }], * }); * ``` */ export declare function getVpnAttachmentOutput(args?: GetVpnAttachmentOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetVpnAttachmentResult>; /** * A collection of arguments for invoking getVpnAttachment. */ export interface GetVpnAttachmentOutputArgs { /** * Configuration block(s) for filtering. Detailed below. */ filters?: pulumi.Input<pulumi.Input<inputs.ec2transitgateway.GetVpnAttachmentFilterArgs>[]>; /** * 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>; /** * Map of tags, each pair of which must exactly match a pair on the desired Transit Gateway VPN Attachment. */ tags?: pulumi.Input<{ [key: string]: pulumi.Input<string>; }>; /** * Identifier of the EC2 Transit Gateway. */ transitGatewayId?: pulumi.Input<string>; /** * Identifier of the EC2 VPN Connection. */ vpnConnectionId?: pulumi.Input<string>; }