ec2transitgateway

package
v2.13.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 22, 2020 License: Apache-2.0 Imports: 4 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type GetDirectConnectGatewayAttachmentArgs

type GetDirectConnectGatewayAttachmentArgs struct {
	// Identifier of the Direct Connect Gateway.
	DxGatewayId *string `pulumi:"dxGatewayId"`
	// Configuration block(s) for filtering. Detailed below.
	Filters []GetDirectConnectGatewayAttachmentFilter `pulumi:"filters"`
	// A map of tags, each pair of which must exactly match a pair on the desired Transit Gateway Direct Connect Gateway Attachment.
	Tags map[string]string `pulumi:"tags"`
	// Identifier of the EC2 Transit Gateway.
	TransitGatewayId *string `pulumi:"transitGatewayId"`
}

A collection of arguments for invoking getDirectConnectGatewayAttachment.

type GetDirectConnectGatewayAttachmentFilter

type GetDirectConnectGatewayAttachmentFilter struct {
	// The name of the filter field. Valid values can be found in the [EC2 DescribeTransitGatewayAttachments API Reference](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeTransitGatewayAttachments.html).
	Name string `pulumi:"name"`
	// Set of values that are accepted for the given filter field. Results will be selected if any given value matches.
	Values []string `pulumi:"values"`
}

type GetDirectConnectGatewayAttachmentFilterArgs

type GetDirectConnectGatewayAttachmentFilterArgs struct {
	// The name of the filter field. Valid values can be found in the [EC2 DescribeTransitGatewayAttachments API Reference](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeTransitGatewayAttachments.html).
	Name pulumi.StringInput `pulumi:"name"`
	// Set of values that are accepted for the given filter field. Results will be selected if any given value matches.
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (GetDirectConnectGatewayAttachmentFilterArgs) ElementType

func (GetDirectConnectGatewayAttachmentFilterArgs) ToGetDirectConnectGatewayAttachmentFilterOutput

func (i GetDirectConnectGatewayAttachmentFilterArgs) ToGetDirectConnectGatewayAttachmentFilterOutput() GetDirectConnectGatewayAttachmentFilterOutput

func (GetDirectConnectGatewayAttachmentFilterArgs) ToGetDirectConnectGatewayAttachmentFilterOutputWithContext

func (i GetDirectConnectGatewayAttachmentFilterArgs) ToGetDirectConnectGatewayAttachmentFilterOutputWithContext(ctx context.Context) GetDirectConnectGatewayAttachmentFilterOutput

type GetDirectConnectGatewayAttachmentFilterArray

type GetDirectConnectGatewayAttachmentFilterArray []GetDirectConnectGatewayAttachmentFilterInput

func (GetDirectConnectGatewayAttachmentFilterArray) ElementType

func (GetDirectConnectGatewayAttachmentFilterArray) ToGetDirectConnectGatewayAttachmentFilterArrayOutput

func (i GetDirectConnectGatewayAttachmentFilterArray) ToGetDirectConnectGatewayAttachmentFilterArrayOutput() GetDirectConnectGatewayAttachmentFilterArrayOutput

func (GetDirectConnectGatewayAttachmentFilterArray) ToGetDirectConnectGatewayAttachmentFilterArrayOutputWithContext

func (i GetDirectConnectGatewayAttachmentFilterArray) ToGetDirectConnectGatewayAttachmentFilterArrayOutputWithContext(ctx context.Context) GetDirectConnectGatewayAttachmentFilterArrayOutput

type GetDirectConnectGatewayAttachmentFilterArrayInput

type GetDirectConnectGatewayAttachmentFilterArrayInput interface {
	pulumi.Input

	ToGetDirectConnectGatewayAttachmentFilterArrayOutput() GetDirectConnectGatewayAttachmentFilterArrayOutput
	ToGetDirectConnectGatewayAttachmentFilterArrayOutputWithContext(context.Context) GetDirectConnectGatewayAttachmentFilterArrayOutput
}

GetDirectConnectGatewayAttachmentFilterArrayInput is an input type that accepts GetDirectConnectGatewayAttachmentFilterArray and GetDirectConnectGatewayAttachmentFilterArrayOutput values. You can construct a concrete instance of `GetDirectConnectGatewayAttachmentFilterArrayInput` via:

GetDirectConnectGatewayAttachmentFilterArray{ GetDirectConnectGatewayAttachmentFilterArgs{...} }

type GetDirectConnectGatewayAttachmentFilterArrayOutput

type GetDirectConnectGatewayAttachmentFilterArrayOutput struct{ *pulumi.OutputState }

func (GetDirectConnectGatewayAttachmentFilterArrayOutput) ElementType

func (GetDirectConnectGatewayAttachmentFilterArrayOutput) Index

func (GetDirectConnectGatewayAttachmentFilterArrayOutput) ToGetDirectConnectGatewayAttachmentFilterArrayOutput

func (o GetDirectConnectGatewayAttachmentFilterArrayOutput) ToGetDirectConnectGatewayAttachmentFilterArrayOutput() GetDirectConnectGatewayAttachmentFilterArrayOutput

func (GetDirectConnectGatewayAttachmentFilterArrayOutput) ToGetDirectConnectGatewayAttachmentFilterArrayOutputWithContext

func (o GetDirectConnectGatewayAttachmentFilterArrayOutput) ToGetDirectConnectGatewayAttachmentFilterArrayOutputWithContext(ctx context.Context) GetDirectConnectGatewayAttachmentFilterArrayOutput

type GetDirectConnectGatewayAttachmentFilterInput

type GetDirectConnectGatewayAttachmentFilterInput interface {
	pulumi.Input

	ToGetDirectConnectGatewayAttachmentFilterOutput() GetDirectConnectGatewayAttachmentFilterOutput
	ToGetDirectConnectGatewayAttachmentFilterOutputWithContext(context.Context) GetDirectConnectGatewayAttachmentFilterOutput
}

GetDirectConnectGatewayAttachmentFilterInput is an input type that accepts GetDirectConnectGatewayAttachmentFilterArgs and GetDirectConnectGatewayAttachmentFilterOutput values. You can construct a concrete instance of `GetDirectConnectGatewayAttachmentFilterInput` via:

GetDirectConnectGatewayAttachmentFilterArgs{...}

type GetDirectConnectGatewayAttachmentFilterOutput

type GetDirectConnectGatewayAttachmentFilterOutput struct{ *pulumi.OutputState }

func (GetDirectConnectGatewayAttachmentFilterOutput) ElementType

func (GetDirectConnectGatewayAttachmentFilterOutput) Name

The name of the filter field. Valid values can be found in the [EC2 DescribeTransitGatewayAttachments API Reference](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeTransitGatewayAttachments.html).

func (GetDirectConnectGatewayAttachmentFilterOutput) ToGetDirectConnectGatewayAttachmentFilterOutput

func (o GetDirectConnectGatewayAttachmentFilterOutput) ToGetDirectConnectGatewayAttachmentFilterOutput() GetDirectConnectGatewayAttachmentFilterOutput

func (GetDirectConnectGatewayAttachmentFilterOutput) ToGetDirectConnectGatewayAttachmentFilterOutputWithContext

func (o GetDirectConnectGatewayAttachmentFilterOutput) ToGetDirectConnectGatewayAttachmentFilterOutputWithContext(ctx context.Context) GetDirectConnectGatewayAttachmentFilterOutput

func (GetDirectConnectGatewayAttachmentFilterOutput) Values

Set of values that are accepted for the given filter field. Results will be selected if any given value matches.

type GetDirectConnectGatewayAttachmentResult

type GetDirectConnectGatewayAttachmentResult struct {
	DxGatewayId *string                                   `pulumi:"dxGatewayId"`
	Filters     []GetDirectConnectGatewayAttachmentFilter `pulumi:"filters"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// Key-value tags for the EC2 Transit Gateway Attachment
	Tags             map[string]string `pulumi:"tags"`
	TransitGatewayId *string           `pulumi:"transitGatewayId"`
}

A collection of values returned by getDirectConnectGatewayAttachment.

func GetDirectConnectGatewayAttachment

Get information on an EC2 Transit Gateway's attachment to a Direct Connect Gateway.

## Example Usage ### By Transit Gateway and Direct Connect Gateway Identifiers

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v2/go/aws/ec2transitgateway"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		opt0 := aws_dx_gateway.Example.Id
		opt1 := aws_ec2_transit_gateway.Example.Id
		_, err := ec2transitgateway.GetDirectConnectGatewayAttachment(ctx, &ec2transitgateway.GetDirectConnectGatewayAttachmentArgs{
			DxGatewayId:      &opt0,
			TransitGatewayId: &opt1,
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetPeeringAttachmentFilter added in v2.3.0

type GetPeeringAttachmentFilter struct {
	// The name of the field to filter by, as defined by
	// [the underlying AWS API](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeTransitGatewayPeeringAttachments.html).
	Name string `pulumi:"name"`
	// Set of values that are accepted for the given field.
	// An EC2 Transit Gateway Peering Attachment be selected if any one of the given values matches.
	Values []string `pulumi:"values"`
}

type GetPeeringAttachmentFilterArgs added in v2.3.0

type GetPeeringAttachmentFilterArgs struct {
	// The name of the field to filter by, as defined by
	// [the underlying AWS API](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeTransitGatewayPeeringAttachments.html).
	Name pulumi.StringInput `pulumi:"name"`
	// Set of values that are accepted for the given field.
	// An EC2 Transit Gateway Peering Attachment be selected if any one of the given values matches.
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (GetPeeringAttachmentFilterArgs) ElementType added in v2.3.0

func (GetPeeringAttachmentFilterArgs) ToGetPeeringAttachmentFilterOutput added in v2.3.0

func (i GetPeeringAttachmentFilterArgs) ToGetPeeringAttachmentFilterOutput() GetPeeringAttachmentFilterOutput

func (GetPeeringAttachmentFilterArgs) ToGetPeeringAttachmentFilterOutputWithContext added in v2.3.0

func (i GetPeeringAttachmentFilterArgs) ToGetPeeringAttachmentFilterOutputWithContext(ctx context.Context) GetPeeringAttachmentFilterOutput

type GetPeeringAttachmentFilterArray added in v2.3.0

type GetPeeringAttachmentFilterArray []GetPeeringAttachmentFilterInput

func (GetPeeringAttachmentFilterArray) ElementType added in v2.3.0

func (GetPeeringAttachmentFilterArray) ToGetPeeringAttachmentFilterArrayOutput added in v2.3.0

func (i GetPeeringAttachmentFilterArray) ToGetPeeringAttachmentFilterArrayOutput() GetPeeringAttachmentFilterArrayOutput

func (GetPeeringAttachmentFilterArray) ToGetPeeringAttachmentFilterArrayOutputWithContext added in v2.3.0

func (i GetPeeringAttachmentFilterArray) ToGetPeeringAttachmentFilterArrayOutputWithContext(ctx context.Context) GetPeeringAttachmentFilterArrayOutput

type GetPeeringAttachmentFilterArrayInput added in v2.3.0

type GetPeeringAttachmentFilterArrayInput interface {
	pulumi.Input

	ToGetPeeringAttachmentFilterArrayOutput() GetPeeringAttachmentFilterArrayOutput
	ToGetPeeringAttachmentFilterArrayOutputWithContext(context.Context) GetPeeringAttachmentFilterArrayOutput
}

GetPeeringAttachmentFilterArrayInput is an input type that accepts GetPeeringAttachmentFilterArray and GetPeeringAttachmentFilterArrayOutput values. You can construct a concrete instance of `GetPeeringAttachmentFilterArrayInput` via:

GetPeeringAttachmentFilterArray{ GetPeeringAttachmentFilterArgs{...} }

type GetPeeringAttachmentFilterArrayOutput added in v2.3.0

type GetPeeringAttachmentFilterArrayOutput struct{ *pulumi.OutputState }

func (GetPeeringAttachmentFilterArrayOutput) ElementType added in v2.3.0

func (GetPeeringAttachmentFilterArrayOutput) Index added in v2.3.0

func (GetPeeringAttachmentFilterArrayOutput) ToGetPeeringAttachmentFilterArrayOutput added in v2.3.0

func (o GetPeeringAttachmentFilterArrayOutput) ToGetPeeringAttachmentFilterArrayOutput() GetPeeringAttachmentFilterArrayOutput

func (GetPeeringAttachmentFilterArrayOutput) ToGetPeeringAttachmentFilterArrayOutputWithContext added in v2.3.0

func (o GetPeeringAttachmentFilterArrayOutput) ToGetPeeringAttachmentFilterArrayOutputWithContext(ctx context.Context) GetPeeringAttachmentFilterArrayOutput

type GetPeeringAttachmentFilterInput added in v2.3.0

type GetPeeringAttachmentFilterInput interface {
	pulumi.Input

	ToGetPeeringAttachmentFilterOutput() GetPeeringAttachmentFilterOutput
	ToGetPeeringAttachmentFilterOutputWithContext(context.Context) GetPeeringAttachmentFilterOutput
}

GetPeeringAttachmentFilterInput is an input type that accepts GetPeeringAttachmentFilterArgs and GetPeeringAttachmentFilterOutput values. You can construct a concrete instance of `GetPeeringAttachmentFilterInput` via:

GetPeeringAttachmentFilterArgs{...}

type GetPeeringAttachmentFilterOutput added in v2.3.0

type GetPeeringAttachmentFilterOutput struct{ *pulumi.OutputState }

func (GetPeeringAttachmentFilterOutput) ElementType added in v2.3.0

func (GetPeeringAttachmentFilterOutput) Name added in v2.3.0

The name of the field to filter by, as defined by [the underlying AWS API](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeTransitGatewayPeeringAttachments.html).

func (GetPeeringAttachmentFilterOutput) ToGetPeeringAttachmentFilterOutput added in v2.3.0

func (o GetPeeringAttachmentFilterOutput) ToGetPeeringAttachmentFilterOutput() GetPeeringAttachmentFilterOutput

func (GetPeeringAttachmentFilterOutput) ToGetPeeringAttachmentFilterOutputWithContext added in v2.3.0

func (o GetPeeringAttachmentFilterOutput) ToGetPeeringAttachmentFilterOutputWithContext(ctx context.Context) GetPeeringAttachmentFilterOutput

func (GetPeeringAttachmentFilterOutput) Values added in v2.3.0

Set of values that are accepted for the given field. An EC2 Transit Gateway Peering Attachment be selected if any one of the given values matches.

type GetRouteTableFilter

type GetRouteTableFilter struct {
	// Name of the filter.
	Name string `pulumi:"name"`
	// List of one or more values for the filter.
	Values []string `pulumi:"values"`
}

type GetRouteTableFilterArgs

type GetRouteTableFilterArgs struct {
	// Name of the filter.
	Name pulumi.StringInput `pulumi:"name"`
	// List of one or more values for the filter.
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (GetRouteTableFilterArgs) ElementType

func (GetRouteTableFilterArgs) ElementType() reflect.Type

func (GetRouteTableFilterArgs) ToGetRouteTableFilterOutput

func (i GetRouteTableFilterArgs) ToGetRouteTableFilterOutput() GetRouteTableFilterOutput

func (GetRouteTableFilterArgs) ToGetRouteTableFilterOutputWithContext

func (i GetRouteTableFilterArgs) ToGetRouteTableFilterOutputWithContext(ctx context.Context) GetRouteTableFilterOutput

type GetRouteTableFilterArray

type GetRouteTableFilterArray []GetRouteTableFilterInput

func (GetRouteTableFilterArray) ElementType

func (GetRouteTableFilterArray) ElementType() reflect.Type

func (GetRouteTableFilterArray) ToGetRouteTableFilterArrayOutput

func (i GetRouteTableFilterArray) ToGetRouteTableFilterArrayOutput() GetRouteTableFilterArrayOutput

func (GetRouteTableFilterArray) ToGetRouteTableFilterArrayOutputWithContext

func (i GetRouteTableFilterArray) ToGetRouteTableFilterArrayOutputWithContext(ctx context.Context) GetRouteTableFilterArrayOutput

type GetRouteTableFilterArrayInput

type GetRouteTableFilterArrayInput interface {
	pulumi.Input

	ToGetRouteTableFilterArrayOutput() GetRouteTableFilterArrayOutput
	ToGetRouteTableFilterArrayOutputWithContext(context.Context) GetRouteTableFilterArrayOutput
}

GetRouteTableFilterArrayInput is an input type that accepts GetRouteTableFilterArray and GetRouteTableFilterArrayOutput values. You can construct a concrete instance of `GetRouteTableFilterArrayInput` via:

GetRouteTableFilterArray{ GetRouteTableFilterArgs{...} }

type GetRouteTableFilterArrayOutput

type GetRouteTableFilterArrayOutput struct{ *pulumi.OutputState }

func (GetRouteTableFilterArrayOutput) ElementType

func (GetRouteTableFilterArrayOutput) Index

func (GetRouteTableFilterArrayOutput) ToGetRouteTableFilterArrayOutput

func (o GetRouteTableFilterArrayOutput) ToGetRouteTableFilterArrayOutput() GetRouteTableFilterArrayOutput

func (GetRouteTableFilterArrayOutput) ToGetRouteTableFilterArrayOutputWithContext

func (o GetRouteTableFilterArrayOutput) ToGetRouteTableFilterArrayOutputWithContext(ctx context.Context) GetRouteTableFilterArrayOutput

type GetRouteTableFilterInput

type GetRouteTableFilterInput interface {
	pulumi.Input

	ToGetRouteTableFilterOutput() GetRouteTableFilterOutput
	ToGetRouteTableFilterOutputWithContext(context.Context) GetRouteTableFilterOutput
}

GetRouteTableFilterInput is an input type that accepts GetRouteTableFilterArgs and GetRouteTableFilterOutput values. You can construct a concrete instance of `GetRouteTableFilterInput` via:

GetRouteTableFilterArgs{...}

type GetRouteTableFilterOutput

type GetRouteTableFilterOutput struct{ *pulumi.OutputState }

func (GetRouteTableFilterOutput) ElementType

func (GetRouteTableFilterOutput) ElementType() reflect.Type

func (GetRouteTableFilterOutput) Name

Name of the filter.

func (GetRouteTableFilterOutput) ToGetRouteTableFilterOutput

func (o GetRouteTableFilterOutput) ToGetRouteTableFilterOutput() GetRouteTableFilterOutput

func (GetRouteTableFilterOutput) ToGetRouteTableFilterOutputWithContext

func (o GetRouteTableFilterOutput) ToGetRouteTableFilterOutputWithContext(ctx context.Context) GetRouteTableFilterOutput

func (GetRouteTableFilterOutput) Values

List of one or more values for the filter.

type GetTransitGatewayFilter

type GetTransitGatewayFilter struct {
	// Name of the filter.
	Name string `pulumi:"name"`
	// List of one or more values for the filter.
	Values []string `pulumi:"values"`
}

type GetTransitGatewayFilterArgs

type GetTransitGatewayFilterArgs struct {
	// Name of the filter.
	Name pulumi.StringInput `pulumi:"name"`
	// List of one or more values for the filter.
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (GetTransitGatewayFilterArgs) ElementType

func (GetTransitGatewayFilterArgs) ToGetTransitGatewayFilterOutput

func (i GetTransitGatewayFilterArgs) ToGetTransitGatewayFilterOutput() GetTransitGatewayFilterOutput

func (GetTransitGatewayFilterArgs) ToGetTransitGatewayFilterOutputWithContext

func (i GetTransitGatewayFilterArgs) ToGetTransitGatewayFilterOutputWithContext(ctx context.Context) GetTransitGatewayFilterOutput

type GetTransitGatewayFilterArray

type GetTransitGatewayFilterArray []GetTransitGatewayFilterInput

func (GetTransitGatewayFilterArray) ElementType

func (GetTransitGatewayFilterArray) ToGetTransitGatewayFilterArrayOutput

func (i GetTransitGatewayFilterArray) ToGetTransitGatewayFilterArrayOutput() GetTransitGatewayFilterArrayOutput

func (GetTransitGatewayFilterArray) ToGetTransitGatewayFilterArrayOutputWithContext

func (i GetTransitGatewayFilterArray) ToGetTransitGatewayFilterArrayOutputWithContext(ctx context.Context) GetTransitGatewayFilterArrayOutput

type GetTransitGatewayFilterArrayInput

type GetTransitGatewayFilterArrayInput interface {
	pulumi.Input

	ToGetTransitGatewayFilterArrayOutput() GetTransitGatewayFilterArrayOutput
	ToGetTransitGatewayFilterArrayOutputWithContext(context.Context) GetTransitGatewayFilterArrayOutput
}

GetTransitGatewayFilterArrayInput is an input type that accepts GetTransitGatewayFilterArray and GetTransitGatewayFilterArrayOutput values. You can construct a concrete instance of `GetTransitGatewayFilterArrayInput` via:

GetTransitGatewayFilterArray{ GetTransitGatewayFilterArgs{...} }

type GetTransitGatewayFilterArrayOutput

type GetTransitGatewayFilterArrayOutput struct{ *pulumi.OutputState }

func (GetTransitGatewayFilterArrayOutput) ElementType

func (GetTransitGatewayFilterArrayOutput) Index

func (GetTransitGatewayFilterArrayOutput) ToGetTransitGatewayFilterArrayOutput

func (o GetTransitGatewayFilterArrayOutput) ToGetTransitGatewayFilterArrayOutput() GetTransitGatewayFilterArrayOutput

func (GetTransitGatewayFilterArrayOutput) ToGetTransitGatewayFilterArrayOutputWithContext

func (o GetTransitGatewayFilterArrayOutput) ToGetTransitGatewayFilterArrayOutputWithContext(ctx context.Context) GetTransitGatewayFilterArrayOutput

type GetTransitGatewayFilterInput

type GetTransitGatewayFilterInput interface {
	pulumi.Input

	ToGetTransitGatewayFilterOutput() GetTransitGatewayFilterOutput
	ToGetTransitGatewayFilterOutputWithContext(context.Context) GetTransitGatewayFilterOutput
}

GetTransitGatewayFilterInput is an input type that accepts GetTransitGatewayFilterArgs and GetTransitGatewayFilterOutput values. You can construct a concrete instance of `GetTransitGatewayFilterInput` via:

GetTransitGatewayFilterArgs{...}

type GetTransitGatewayFilterOutput

type GetTransitGatewayFilterOutput struct{ *pulumi.OutputState }

func (GetTransitGatewayFilterOutput) ElementType

func (GetTransitGatewayFilterOutput) Name

Name of the filter.

func (GetTransitGatewayFilterOutput) ToGetTransitGatewayFilterOutput

func (o GetTransitGatewayFilterOutput) ToGetTransitGatewayFilterOutput() GetTransitGatewayFilterOutput

func (GetTransitGatewayFilterOutput) ToGetTransitGatewayFilterOutputWithContext

func (o GetTransitGatewayFilterOutput) ToGetTransitGatewayFilterOutputWithContext(ctx context.Context) GetTransitGatewayFilterOutput

func (GetTransitGatewayFilterOutput) Values

List of one or more values for the filter.

type GetVpcAttachmentFilter

type GetVpcAttachmentFilter struct {
	// Name of the filter.
	Name string `pulumi:"name"`
	// List of one or more values for the filter.
	Values []string `pulumi:"values"`
}

type GetVpcAttachmentFilterArgs

type GetVpcAttachmentFilterArgs struct {
	// Name of the filter.
	Name pulumi.StringInput `pulumi:"name"`
	// List of one or more values for the filter.
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (GetVpcAttachmentFilterArgs) ElementType

func (GetVpcAttachmentFilterArgs) ElementType() reflect.Type

func (GetVpcAttachmentFilterArgs) ToGetVpcAttachmentFilterOutput

func (i GetVpcAttachmentFilterArgs) ToGetVpcAttachmentFilterOutput() GetVpcAttachmentFilterOutput

func (GetVpcAttachmentFilterArgs) ToGetVpcAttachmentFilterOutputWithContext

func (i GetVpcAttachmentFilterArgs) ToGetVpcAttachmentFilterOutputWithContext(ctx context.Context) GetVpcAttachmentFilterOutput

type GetVpcAttachmentFilterArray

type GetVpcAttachmentFilterArray []GetVpcAttachmentFilterInput

func (GetVpcAttachmentFilterArray) ElementType

func (GetVpcAttachmentFilterArray) ToGetVpcAttachmentFilterArrayOutput

func (i GetVpcAttachmentFilterArray) ToGetVpcAttachmentFilterArrayOutput() GetVpcAttachmentFilterArrayOutput

func (GetVpcAttachmentFilterArray) ToGetVpcAttachmentFilterArrayOutputWithContext

func (i GetVpcAttachmentFilterArray) ToGetVpcAttachmentFilterArrayOutputWithContext(ctx context.Context) GetVpcAttachmentFilterArrayOutput

type GetVpcAttachmentFilterArrayInput

type GetVpcAttachmentFilterArrayInput interface {
	pulumi.Input

	ToGetVpcAttachmentFilterArrayOutput() GetVpcAttachmentFilterArrayOutput
	ToGetVpcAttachmentFilterArrayOutputWithContext(context.Context) GetVpcAttachmentFilterArrayOutput
}

GetVpcAttachmentFilterArrayInput is an input type that accepts GetVpcAttachmentFilterArray and GetVpcAttachmentFilterArrayOutput values. You can construct a concrete instance of `GetVpcAttachmentFilterArrayInput` via:

GetVpcAttachmentFilterArray{ GetVpcAttachmentFilterArgs{...} }

type GetVpcAttachmentFilterArrayOutput

type GetVpcAttachmentFilterArrayOutput struct{ *pulumi.OutputState }

func (GetVpcAttachmentFilterArrayOutput) ElementType

func (GetVpcAttachmentFilterArrayOutput) Index

func (GetVpcAttachmentFilterArrayOutput) ToGetVpcAttachmentFilterArrayOutput

func (o GetVpcAttachmentFilterArrayOutput) ToGetVpcAttachmentFilterArrayOutput() GetVpcAttachmentFilterArrayOutput

func (GetVpcAttachmentFilterArrayOutput) ToGetVpcAttachmentFilterArrayOutputWithContext

func (o GetVpcAttachmentFilterArrayOutput) ToGetVpcAttachmentFilterArrayOutputWithContext(ctx context.Context) GetVpcAttachmentFilterArrayOutput

type GetVpcAttachmentFilterInput

type GetVpcAttachmentFilterInput interface {
	pulumi.Input

	ToGetVpcAttachmentFilterOutput() GetVpcAttachmentFilterOutput
	ToGetVpcAttachmentFilterOutputWithContext(context.Context) GetVpcAttachmentFilterOutput
}

GetVpcAttachmentFilterInput is an input type that accepts GetVpcAttachmentFilterArgs and GetVpcAttachmentFilterOutput values. You can construct a concrete instance of `GetVpcAttachmentFilterInput` via:

GetVpcAttachmentFilterArgs{...}

type GetVpcAttachmentFilterOutput

type GetVpcAttachmentFilterOutput struct{ *pulumi.OutputState }

func (GetVpcAttachmentFilterOutput) ElementType

func (GetVpcAttachmentFilterOutput) Name

Name of the filter.

func (GetVpcAttachmentFilterOutput) ToGetVpcAttachmentFilterOutput

func (o GetVpcAttachmentFilterOutput) ToGetVpcAttachmentFilterOutput() GetVpcAttachmentFilterOutput

func (GetVpcAttachmentFilterOutput) ToGetVpcAttachmentFilterOutputWithContext

func (o GetVpcAttachmentFilterOutput) ToGetVpcAttachmentFilterOutputWithContext(ctx context.Context) GetVpcAttachmentFilterOutput

func (GetVpcAttachmentFilterOutput) Values

List of one or more values for the filter.

type GetVpnAttachmentArgs

type GetVpnAttachmentArgs struct {
	// Configuration block(s) for filtering. Detailed below.
	Filters []GetVpnAttachmentFilter `pulumi:"filters"`
	// A map of tags, each pair of which must exactly match a pair on the desired Transit Gateway VPN Attachment.
	Tags map[string]string `pulumi:"tags"`
	// Identifier of the EC2 Transit Gateway.
	TransitGatewayId *string `pulumi:"transitGatewayId"`
	// Identifier of the EC2 VPN Connection.
	VpnConnectionId *string `pulumi:"vpnConnectionId"`
}

A collection of arguments for invoking getVpnAttachment.

type GetVpnAttachmentFilter

type GetVpnAttachmentFilter struct {
	// The name of the filter field. Valid values can be found in the [EC2 DescribeTransitGatewayAttachments API Reference](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeTransitGatewayAttachments.html).
	Name string `pulumi:"name"`
	// Set of values that are accepted for the given filter field. Results will be selected if any given value matches.
	Values []string `pulumi:"values"`
}

type GetVpnAttachmentFilterArgs

type GetVpnAttachmentFilterArgs struct {
	// The name of the filter field. Valid values can be found in the [EC2 DescribeTransitGatewayAttachments API Reference](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeTransitGatewayAttachments.html).
	Name pulumi.StringInput `pulumi:"name"`
	// Set of values that are accepted for the given filter field. Results will be selected if any given value matches.
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (GetVpnAttachmentFilterArgs) ElementType

func (GetVpnAttachmentFilterArgs) ElementType() reflect.Type

func (GetVpnAttachmentFilterArgs) ToGetVpnAttachmentFilterOutput

func (i GetVpnAttachmentFilterArgs) ToGetVpnAttachmentFilterOutput() GetVpnAttachmentFilterOutput

func (GetVpnAttachmentFilterArgs) ToGetVpnAttachmentFilterOutputWithContext

func (i GetVpnAttachmentFilterArgs) ToGetVpnAttachmentFilterOutputWithContext(ctx context.Context) GetVpnAttachmentFilterOutput

type GetVpnAttachmentFilterArray

type GetVpnAttachmentFilterArray []GetVpnAttachmentFilterInput

func (GetVpnAttachmentFilterArray) ElementType

func (GetVpnAttachmentFilterArray) ToGetVpnAttachmentFilterArrayOutput

func (i GetVpnAttachmentFilterArray) ToGetVpnAttachmentFilterArrayOutput() GetVpnAttachmentFilterArrayOutput

func (GetVpnAttachmentFilterArray) ToGetVpnAttachmentFilterArrayOutputWithContext

func (i GetVpnAttachmentFilterArray) ToGetVpnAttachmentFilterArrayOutputWithContext(ctx context.Context) GetVpnAttachmentFilterArrayOutput

type GetVpnAttachmentFilterArrayInput

type GetVpnAttachmentFilterArrayInput interface {
	pulumi.Input

	ToGetVpnAttachmentFilterArrayOutput() GetVpnAttachmentFilterArrayOutput
	ToGetVpnAttachmentFilterArrayOutputWithContext(context.Context) GetVpnAttachmentFilterArrayOutput
}

GetVpnAttachmentFilterArrayInput is an input type that accepts GetVpnAttachmentFilterArray and GetVpnAttachmentFilterArrayOutput values. You can construct a concrete instance of `GetVpnAttachmentFilterArrayInput` via:

GetVpnAttachmentFilterArray{ GetVpnAttachmentFilterArgs{...} }

type GetVpnAttachmentFilterArrayOutput

type GetVpnAttachmentFilterArrayOutput struct{ *pulumi.OutputState }

func (GetVpnAttachmentFilterArrayOutput) ElementType

func (GetVpnAttachmentFilterArrayOutput) Index

func (GetVpnAttachmentFilterArrayOutput) ToGetVpnAttachmentFilterArrayOutput

func (o GetVpnAttachmentFilterArrayOutput) ToGetVpnAttachmentFilterArrayOutput() GetVpnAttachmentFilterArrayOutput

func (GetVpnAttachmentFilterArrayOutput) ToGetVpnAttachmentFilterArrayOutputWithContext

func (o GetVpnAttachmentFilterArrayOutput) ToGetVpnAttachmentFilterArrayOutputWithContext(ctx context.Context) GetVpnAttachmentFilterArrayOutput

type GetVpnAttachmentFilterInput

type GetVpnAttachmentFilterInput interface {
	pulumi.Input

	ToGetVpnAttachmentFilterOutput() GetVpnAttachmentFilterOutput
	ToGetVpnAttachmentFilterOutputWithContext(context.Context) GetVpnAttachmentFilterOutput
}

GetVpnAttachmentFilterInput is an input type that accepts GetVpnAttachmentFilterArgs and GetVpnAttachmentFilterOutput values. You can construct a concrete instance of `GetVpnAttachmentFilterInput` via:

GetVpnAttachmentFilterArgs{...}

type GetVpnAttachmentFilterOutput

type GetVpnAttachmentFilterOutput struct{ *pulumi.OutputState }

func (GetVpnAttachmentFilterOutput) ElementType

func (GetVpnAttachmentFilterOutput) Name

The name of the filter field. Valid values can be found in the [EC2 DescribeTransitGatewayAttachments API Reference](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeTransitGatewayAttachments.html).

func (GetVpnAttachmentFilterOutput) ToGetVpnAttachmentFilterOutput

func (o GetVpnAttachmentFilterOutput) ToGetVpnAttachmentFilterOutput() GetVpnAttachmentFilterOutput

func (GetVpnAttachmentFilterOutput) ToGetVpnAttachmentFilterOutputWithContext

func (o GetVpnAttachmentFilterOutput) ToGetVpnAttachmentFilterOutputWithContext(ctx context.Context) GetVpnAttachmentFilterOutput

func (GetVpnAttachmentFilterOutput) Values

Set of values that are accepted for the given filter field. Results will be selected if any given value matches.

type GetVpnAttachmentResult

type GetVpnAttachmentResult struct {
	Filters []GetVpnAttachmentFilter `pulumi:"filters"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// Key-value tags for the EC2 Transit Gateway VPN Attachment
	Tags             map[string]string `pulumi:"tags"`
	TransitGatewayId *string           `pulumi:"transitGatewayId"`
	VpnConnectionId  *string           `pulumi:"vpnConnectionId"`
}

A collection of values returned by getVpnAttachment.

func GetVpnAttachment

func GetVpnAttachment(ctx *pulumi.Context, args *GetVpnAttachmentArgs, opts ...pulumi.InvokeOption) (*GetVpnAttachmentResult, error)

Get information on an EC2 Transit Gateway VPN Attachment.

## Example Usage ### By Transit Gateway and VPN Connection Identifiers

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v2/go/aws/ec2transitgateway"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		opt0 := aws_ec2_transit_gateway.Example.Id
		opt1 := aws_vpn_connection.Example.Id
		_, err := ec2transitgateway.GetVpnAttachment(ctx, &ec2transitgateway.GetVpnAttachmentArgs{
			TransitGatewayId: &opt0,
			VpnConnectionId:  &opt1,
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Filter

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v2/go/aws/ec2transitgateway"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2transitgateway.GetVpnAttachment(ctx, &ec2transitgateway.GetVpnAttachmentArgs{
			Filters: []ec2transitgateway.GetVpnAttachmentFilter{
				ec2transitgateway.GetVpnAttachmentFilter{
					Name: "resource-id",
					Values: []string{
						"some-resource",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupPeeringAttachmentArgs added in v2.3.0

type LookupPeeringAttachmentArgs struct {
	// One or more configuration blocks containing name-values filters. Detailed below.
	Filters []GetPeeringAttachmentFilter `pulumi:"filters"`
	// Identifier of the EC2 Transit Gateway Peering Attachment.
	Id *string `pulumi:"id"`
	// A mapping of tags, each pair of which must exactly match
	// a pair on the specific EC2 Transit Gateway Peering Attachment to retrieve.
	Tags map[string]string `pulumi:"tags"`
}

A collection of arguments for invoking getPeeringAttachment.

type LookupPeeringAttachmentResult added in v2.3.0

type LookupPeeringAttachmentResult struct {
	Filters []GetPeeringAttachmentFilter `pulumi:"filters"`
	Id      *string                      `pulumi:"id"`
	// Identifier of the peer AWS account
	PeerAccountId string `pulumi:"peerAccountId"`
	// Identifier of the peer AWS region
	PeerRegion string `pulumi:"peerRegion"`
	// Identifier of the peer EC2 Transit Gateway
	PeerTransitGatewayId string            `pulumi:"peerTransitGatewayId"`
	Tags                 map[string]string `pulumi:"tags"`
	// Identifier of the local EC2 Transit Gateway
	TransitGatewayId string `pulumi:"transitGatewayId"`
}

A collection of values returned by getPeeringAttachment.

func LookupPeeringAttachment added in v2.3.0

func LookupPeeringAttachment(ctx *pulumi.Context, args *LookupPeeringAttachmentArgs, opts ...pulumi.InvokeOption) (*LookupPeeringAttachmentResult, error)

Get information on an EC2 Transit Gateway Peering Attachment.

## Example Usage ### By Filter

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v2/go/aws/ec2transitgateway"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2transitgateway.LookupPeeringAttachment(ctx, &ec2transitgateway.LookupPeeringAttachmentArgs{
			Filters: []ec2transitgateway.GetPeeringAttachmentFilter{
				ec2transitgateway.GetPeeringAttachmentFilter{
					Name: "transit-gateway-attachment-id",
					Values: []string{
						"tgw-attach-12345678",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### By Identifier

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v2/go/aws/ec2transitgateway"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		opt0 := "tgw-attach-12345678"
		_, err := ec2transitgateway.LookupPeeringAttachment(ctx, &ec2transitgateway.LookupPeeringAttachmentArgs{
			Id: &opt0,
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupRouteTableArgs

type LookupRouteTableArgs struct {
	// One or more configuration blocks containing name-values filters. Detailed below.
	Filters []GetRouteTableFilter `pulumi:"filters"`
	// Identifier of the EC2 Transit Gateway Route Table.
	Id *string `pulumi:"id"`
	// Key-value tags for the EC2 Transit Gateway Route Table
	Tags map[string]string `pulumi:"tags"`
}

A collection of arguments for invoking getRouteTable.

type LookupRouteTableResult

type LookupRouteTableResult struct {
	// Boolean whether this is the default association route table for the EC2 Transit Gateway
	DefaultAssociationRouteTable bool `pulumi:"defaultAssociationRouteTable"`
	// Boolean whether this is the default propagation route table for the EC2 Transit Gateway
	DefaultPropagationRouteTable bool                  `pulumi:"defaultPropagationRouteTable"`
	Filters                      []GetRouteTableFilter `pulumi:"filters"`
	// EC2 Transit Gateway Route Table identifier
	Id *string `pulumi:"id"`
	// Key-value tags for the EC2 Transit Gateway Route Table
	Tags map[string]string `pulumi:"tags"`
	// EC2 Transit Gateway identifier
	TransitGatewayId string `pulumi:"transitGatewayId"`
}

A collection of values returned by getRouteTable.

func LookupRouteTable

func LookupRouteTable(ctx *pulumi.Context, args *LookupRouteTableArgs, opts ...pulumi.InvokeOption) (*LookupRouteTableResult, error)

Get information on an EC2 Transit Gateway Route Table.

## Example Usage ### By Filter

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v2/go/aws/ec2transitgateway"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2transitgateway.LookupRouteTable(ctx, &ec2transitgateway.LookupRouteTableArgs{
			Filters: []ec2transitgateway.GetRouteTableFilter{
				ec2transitgateway.GetRouteTableFilter{
					Name: "default-association-route-table",
					Values: []string{
						"true",
					},
				},
				ec2transitgateway.GetRouteTableFilter{
					Name: "transit-gateway-id",
					Values: []string{
						"tgw-12345678",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### By Identifier

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v2/go/aws/ec2transitgateway"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		opt0 := "tgw-rtb-12345678"
		_, err := ec2transitgateway.LookupRouteTable(ctx, &ec2transitgateway.LookupRouteTableArgs{
			Id: &opt0,
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupTransitGatewayArgs

type LookupTransitGatewayArgs struct {
	// One or more configuration blocks containing name-values filters. Detailed below.
	Filters []GetTransitGatewayFilter `pulumi:"filters"`
	// Identifier of the EC2 Transit Gateway.
	Id *string `pulumi:"id"`
	// Key-value tags for the EC2 Transit Gateway
	Tags map[string]string `pulumi:"tags"`
}

A collection of arguments for invoking getTransitGateway.

type LookupTransitGatewayResult

type LookupTransitGatewayResult struct {
	// Private Autonomous System Number (ASN) for the Amazon side of a BGP session
	AmazonSideAsn int `pulumi:"amazonSideAsn"`
	// EC2 Transit Gateway Amazon Resource Name (ARN)
	Arn string `pulumi:"arn"`
	// Identifier of the default association route table
	AssociationDefaultRouteTableId string `pulumi:"associationDefaultRouteTableId"`
	// Whether resource attachment requests are automatically accepted.
	AutoAcceptSharedAttachments string `pulumi:"autoAcceptSharedAttachments"`
	// Whether resource attachments are automatically associated with the default association route table.
	DefaultRouteTableAssociation string `pulumi:"defaultRouteTableAssociation"`
	// Whether resource attachments automatically propagate routes to the default propagation route table.
	DefaultRouteTablePropagation string `pulumi:"defaultRouteTablePropagation"`
	// Description of the EC2 Transit Gateway
	Description string `pulumi:"description"`
	// Whether DNS support is enabled.
	DnsSupport string                    `pulumi:"dnsSupport"`
	Filters    []GetTransitGatewayFilter `pulumi:"filters"`
	// EC2 Transit Gateway identifier
	Id *string `pulumi:"id"`
	// Identifier of the AWS account that owns the EC2 Transit Gateway
	OwnerId string `pulumi:"ownerId"`
	// Identifier of the default propagation route table.
	PropagationDefaultRouteTableId string `pulumi:"propagationDefaultRouteTableId"`
	// Key-value tags for the EC2 Transit Gateway
	Tags map[string]string `pulumi:"tags"`
	// Whether VPN Equal Cost Multipath Protocol support is enabled.
	VpnEcmpSupport string `pulumi:"vpnEcmpSupport"`
}

A collection of values returned by getTransitGateway.

func LookupTransitGateway

func LookupTransitGateway(ctx *pulumi.Context, args *LookupTransitGatewayArgs, opts ...pulumi.InvokeOption) (*LookupTransitGatewayResult, error)

Get information on an EC2 Transit Gateway.

## Example Usage ### By Filter

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v2/go/aws/ec2transitgateway"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2transitgateway.LookupTransitGateway(ctx, &ec2transitgateway.LookupTransitGatewayArgs{
			Filters: []ec2transitgateway.GetTransitGatewayFilter{
				ec2transitgateway.GetTransitGatewayFilter{
					Name: "options.amazon-side-asn",
					Values: []string{
						"64512",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### By Identifier

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v2/go/aws/ec2transitgateway"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		opt0 := "tgw-12345678"
		_, err := ec2transitgateway.LookupTransitGateway(ctx, &ec2transitgateway.LookupTransitGatewayArgs{
			Id: &opt0,
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupVpcAttachmentArgs

type LookupVpcAttachmentArgs struct {
	// One or more configuration blocks containing name-values filters. Detailed below.
	Filters []GetVpcAttachmentFilter `pulumi:"filters"`
	// Identifier of the EC2 Transit Gateway VPC Attachment.
	Id *string `pulumi:"id"`
	// Key-value tags for the EC2 Transit Gateway VPC Attachment
	Tags map[string]string `pulumi:"tags"`
}

A collection of arguments for invoking getVpcAttachment.

type LookupVpcAttachmentResult

type LookupVpcAttachmentResult struct {
	// Whether DNS support is enabled.
	DnsSupport string                   `pulumi:"dnsSupport"`
	Filters    []GetVpcAttachmentFilter `pulumi:"filters"`
	// EC2 Transit Gateway VPC Attachment identifier
	Id *string `pulumi:"id"`
	// Whether IPv6 support is enabled.
	Ipv6Support string `pulumi:"ipv6Support"`
	// Identifiers of EC2 Subnets.
	SubnetIds []string `pulumi:"subnetIds"`
	// Key-value tags for the EC2 Transit Gateway VPC Attachment
	Tags map[string]string `pulumi:"tags"`
	// EC2 Transit Gateway identifier
	TransitGatewayId string `pulumi:"transitGatewayId"`
	// Identifier of EC2 VPC.
	VpcId string `pulumi:"vpcId"`
	// Identifier of the AWS account that owns the EC2 VPC.
	VpcOwnerId string `pulumi:"vpcOwnerId"`
}

A collection of values returned by getVpcAttachment.

func LookupVpcAttachment

func LookupVpcAttachment(ctx *pulumi.Context, args *LookupVpcAttachmentArgs, opts ...pulumi.InvokeOption) (*LookupVpcAttachmentResult, error)

Get information on an EC2 Transit Gateway VPC Attachment.

## Example Usage ### By Filter

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v2/go/aws/ec2transitgateway"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2transitgateway.LookupVpcAttachment(ctx, &ec2transitgateway.LookupVpcAttachmentArgs{
			Filters: []ec2transitgateway.GetVpcAttachmentFilter{
				ec2transitgateway.GetVpcAttachmentFilter{
					Name: "vpc-id",
					Values: []string{
						"vpc-12345678",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### By Identifier

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v2/go/aws/ec2transitgateway"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		opt0 := "tgw-attach-12345678"
		_, err := ec2transitgateway.LookupVpcAttachment(ctx, &ec2transitgateway.LookupVpcAttachmentArgs{
			Id: &opt0,
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type PeeringAttachment added in v2.3.0

type PeeringAttachment struct {
	pulumi.CustomResourceState

	// Account ID of EC2 Transit Gateway to peer with. Defaults to the account ID the current provider is currently connected to.
	PeerAccountId pulumi.StringOutput `pulumi:"peerAccountId"`
	// Region of EC2 Transit Gateway to peer with.
	PeerRegion pulumi.StringOutput `pulumi:"peerRegion"`
	// Identifier of EC2 Transit Gateway to peer with.
	PeerTransitGatewayId pulumi.StringOutput `pulumi:"peerTransitGatewayId"`
	// Key-value tags for the EC2 Transit Gateway Peering Attachment.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// Identifier of EC2 Transit Gateway.
	TransitGatewayId pulumi.StringOutput `pulumi:"transitGatewayId"`
}

Manages an EC2 Transit Gateway Peering Attachment. For examples of custom route table association and propagation, see the [EC2 Transit Gateway Networking Examples Guide](https://docs.aws.amazon.com/vpc/latest/tgw/TGW_Scenarios.html).

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v2/go/aws"
"github.com/pulumi/pulumi-aws/sdk/v2/go/aws/ec2transitgateway"
"github.com/pulumi/pulumi-aws/sdk/v2/go/aws/providers"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := providers.Newaws(ctx, "local", &providers.awsArgs{
			Region: pulumi.String("us-east-1"),
		})
		if err != nil {
			return err
		}
		_, err = providers.Newaws(ctx, "peer", &providers.awsArgs{
			Region: pulumi.String("us-west-2"),
		})
		if err != nil {
			return err
		}
		peerRegion, err := aws.GetRegion(ctx, nil, nil)
		if err != nil {
			return err
		}
		localTransitGateway, err := ec2transitgateway.NewTransitGateway(ctx, "localTransitGateway", &ec2transitgateway.TransitGatewayArgs{
			Tags: pulumi.StringMap{
				"Name": pulumi.String("Local TGW"),
			},
		}, pulumi.Provider(aws.Local))
		if err != nil {
			return err
		}
		peerTransitGateway, err := ec2transitgateway.NewTransitGateway(ctx, "peerTransitGateway", &ec2transitgateway.TransitGatewayArgs{
			Tags: pulumi.StringMap{
				"Name": pulumi.String("Peer TGW"),
			},
		}, pulumi.Provider(aws.Peer))
		if err != nil {
			return err
		}
		_, err = ec2transitgateway.NewPeeringAttachment(ctx, "example", &ec2transitgateway.PeeringAttachmentArgs{
			PeerAccountId:        peerTransitGateway.OwnerId,
			PeerRegion:           pulumi.String(peerRegion.Name),
			PeerTransitGatewayId: peerTransitGateway.ID(),
			TransitGatewayId:     localTransitGateway.ID(),
			Tags: pulumi.StringMap{
				"Name": pulumi.String("TGW Peering Requestor"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetPeeringAttachment added in v2.3.0

func GetPeeringAttachment(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *PeeringAttachmentState, opts ...pulumi.ResourceOption) (*PeeringAttachment, error)

GetPeeringAttachment gets an existing PeeringAttachment resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewPeeringAttachment added in v2.3.0

func NewPeeringAttachment(ctx *pulumi.Context,
	name string, args *PeeringAttachmentArgs, opts ...pulumi.ResourceOption) (*PeeringAttachment, error)

NewPeeringAttachment registers a new resource with the given unique name, arguments, and options.

type PeeringAttachmentArgs added in v2.3.0

type PeeringAttachmentArgs struct {
	// Account ID of EC2 Transit Gateway to peer with. Defaults to the account ID the current provider is currently connected to.
	PeerAccountId pulumi.StringPtrInput
	// Region of EC2 Transit Gateway to peer with.
	PeerRegion pulumi.StringInput
	// Identifier of EC2 Transit Gateway to peer with.
	PeerTransitGatewayId pulumi.StringInput
	// Key-value tags for the EC2 Transit Gateway Peering Attachment.
	Tags pulumi.StringMapInput
	// Identifier of EC2 Transit Gateway.
	TransitGatewayId pulumi.StringInput
}

The set of arguments for constructing a PeeringAttachment resource.

func (PeeringAttachmentArgs) ElementType added in v2.3.0

func (PeeringAttachmentArgs) ElementType() reflect.Type

type PeeringAttachmentState added in v2.3.0

type PeeringAttachmentState struct {
	// Account ID of EC2 Transit Gateway to peer with. Defaults to the account ID the current provider is currently connected to.
	PeerAccountId pulumi.StringPtrInput
	// Region of EC2 Transit Gateway to peer with.
	PeerRegion pulumi.StringPtrInput
	// Identifier of EC2 Transit Gateway to peer with.
	PeerTransitGatewayId pulumi.StringPtrInput
	// Key-value tags for the EC2 Transit Gateway Peering Attachment.
	Tags pulumi.StringMapInput
	// Identifier of EC2 Transit Gateway.
	TransitGatewayId pulumi.StringPtrInput
}

func (PeeringAttachmentState) ElementType added in v2.3.0

func (PeeringAttachmentState) ElementType() reflect.Type

type Route

type Route struct {
	pulumi.CustomResourceState

	// Indicates whether to drop traffic that matches this route (default to `false`).
	Blackhole pulumi.BoolPtrOutput `pulumi:"blackhole"`
	// IPv4 CIDR range used for destination matches. Routing decisions are based on the most specific match.
	DestinationCidrBlock pulumi.StringOutput `pulumi:"destinationCidrBlock"`
	// Identifier of EC2 Transit Gateway Attachment (required if `blackhole` is set to false).
	TransitGatewayAttachmentId pulumi.StringPtrOutput `pulumi:"transitGatewayAttachmentId"`
	// Identifier of EC2 Transit Gateway Route Table.
	TransitGatewayRouteTableId pulumi.StringOutput `pulumi:"transitGatewayRouteTableId"`
}

Manages an EC2 Transit Gateway Route.

## Example Usage ### Standard usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v2/go/aws/ec2transitgateway"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2transitgateway.NewRoute(ctx, "example", &ec2transitgateway.RouteArgs{
			DestinationCidrBlock:       pulumi.String("0.0.0.0/0"),
			TransitGatewayAttachmentId: pulumi.String(aws_ec2_transit_gateway_vpc_attachment.Example.Id),
			TransitGatewayRouteTableId: pulumi.String(aws_ec2_transit_gateway.Example.Association_default_route_table_id),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Blackhole route

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v2/go/aws/ec2transitgateway"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2transitgateway.NewRoute(ctx, "example", &ec2transitgateway.RouteArgs{
			Blackhole:                  pulumi.Bool(true),
			DestinationCidrBlock:       pulumi.String("0.0.0.0/0"),
			TransitGatewayRouteTableId: pulumi.String(aws_ec2_transit_gateway.Example.Association_default_route_table_id),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetRoute

func GetRoute(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *RouteState, opts ...pulumi.ResourceOption) (*Route, error)

GetRoute gets an existing Route resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewRoute

func NewRoute(ctx *pulumi.Context,
	name string, args *RouteArgs, opts ...pulumi.ResourceOption) (*Route, error)

NewRoute registers a new resource with the given unique name, arguments, and options.

type RouteArgs

type RouteArgs struct {
	// Indicates whether to drop traffic that matches this route (default to `false`).
	Blackhole pulumi.BoolPtrInput
	// IPv4 CIDR range used for destination matches. Routing decisions are based on the most specific match.
	DestinationCidrBlock pulumi.StringInput
	// Identifier of EC2 Transit Gateway Attachment (required if `blackhole` is set to false).
	TransitGatewayAttachmentId pulumi.StringPtrInput
	// Identifier of EC2 Transit Gateway Route Table.
	TransitGatewayRouteTableId pulumi.StringInput
}

The set of arguments for constructing a Route resource.

func (RouteArgs) ElementType

func (RouteArgs) ElementType() reflect.Type

type RouteState

type RouteState struct {
	// Indicates whether to drop traffic that matches this route (default to `false`).
	Blackhole pulumi.BoolPtrInput
	// IPv4 CIDR range used for destination matches. Routing decisions are based on the most specific match.
	DestinationCidrBlock pulumi.StringPtrInput
	// Identifier of EC2 Transit Gateway Attachment (required if `blackhole` is set to false).
	TransitGatewayAttachmentId pulumi.StringPtrInput
	// Identifier of EC2 Transit Gateway Route Table.
	TransitGatewayRouteTableId pulumi.StringPtrInput
}

func (RouteState) ElementType

func (RouteState) ElementType() reflect.Type

type RouteTable

type RouteTable struct {
	pulumi.CustomResourceState

	// Boolean whether this is the default association route table for the EC2 Transit Gateway.
	DefaultAssociationRouteTable pulumi.BoolOutput `pulumi:"defaultAssociationRouteTable"`
	// Boolean whether this is the default propagation route table for the EC2 Transit Gateway.
	DefaultPropagationRouteTable pulumi.BoolOutput `pulumi:"defaultPropagationRouteTable"`
	// Key-value tags for the EC2 Transit Gateway Route Table.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// Identifier of EC2 Transit Gateway.
	TransitGatewayId pulumi.StringOutput `pulumi:"transitGatewayId"`
}

Manages an EC2 Transit Gateway Route Table.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v2/go/aws/ec2transitgateway"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2transitgateway.NewRouteTable(ctx, "example", &ec2transitgateway.RouteTableArgs{
			TransitGatewayId: pulumi.String(aws_ec2_transit_gateway.Example.Id),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetRouteTable

func GetRouteTable(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *RouteTableState, opts ...pulumi.ResourceOption) (*RouteTable, error)

GetRouteTable gets an existing RouteTable resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewRouteTable

func NewRouteTable(ctx *pulumi.Context,
	name string, args *RouteTableArgs, opts ...pulumi.ResourceOption) (*RouteTable, error)

NewRouteTable registers a new resource with the given unique name, arguments, and options.

type RouteTableArgs

type RouteTableArgs struct {
	// Key-value tags for the EC2 Transit Gateway Route Table.
	Tags pulumi.StringMapInput
	// Identifier of EC2 Transit Gateway.
	TransitGatewayId pulumi.StringInput
}

The set of arguments for constructing a RouteTable resource.

func (RouteTableArgs) ElementType

func (RouteTableArgs) ElementType() reflect.Type

type RouteTableAssociation

type RouteTableAssociation struct {
	pulumi.CustomResourceState

	// Identifier of the resource
	ResourceId pulumi.StringOutput `pulumi:"resourceId"`
	// Type of the resource
	ResourceType pulumi.StringOutput `pulumi:"resourceType"`
	// Identifier of EC2 Transit Gateway Attachment.
	TransitGatewayAttachmentId pulumi.StringOutput `pulumi:"transitGatewayAttachmentId"`
	// Identifier of EC2 Transit Gateway Route Table.
	TransitGatewayRouteTableId pulumi.StringOutput `pulumi:"transitGatewayRouteTableId"`
}

Manages an EC2 Transit Gateway Route Table association.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v2/go/aws/ec2transitgateway"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2transitgateway.NewRouteTableAssociation(ctx, "example", &ec2transitgateway.RouteTableAssociationArgs{
			TransitGatewayAttachmentId: pulumi.String(aws_ec2_transit_gateway_vpc_attachment.Example.Id),
			TransitGatewayRouteTableId: pulumi.String(aws_ec2_transit_gateway_route_table.Example.Id),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetRouteTableAssociation

func GetRouteTableAssociation(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *RouteTableAssociationState, opts ...pulumi.ResourceOption) (*RouteTableAssociation, error)

GetRouteTableAssociation gets an existing RouteTableAssociation resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewRouteTableAssociation

func NewRouteTableAssociation(ctx *pulumi.Context,
	name string, args *RouteTableAssociationArgs, opts ...pulumi.ResourceOption) (*RouteTableAssociation, error)

NewRouteTableAssociation registers a new resource with the given unique name, arguments, and options.

type RouteTableAssociationArgs

type RouteTableAssociationArgs struct {
	// Identifier of EC2 Transit Gateway Attachment.
	TransitGatewayAttachmentId pulumi.StringInput
	// Identifier of EC2 Transit Gateway Route Table.
	TransitGatewayRouteTableId pulumi.StringInput
}

The set of arguments for constructing a RouteTableAssociation resource.

func (RouteTableAssociationArgs) ElementType

func (RouteTableAssociationArgs) ElementType() reflect.Type

type RouteTableAssociationState

type RouteTableAssociationState struct {
	// Identifier of the resource
	ResourceId pulumi.StringPtrInput
	// Type of the resource
	ResourceType pulumi.StringPtrInput
	// Identifier of EC2 Transit Gateway Attachment.
	TransitGatewayAttachmentId pulumi.StringPtrInput
	// Identifier of EC2 Transit Gateway Route Table.
	TransitGatewayRouteTableId pulumi.StringPtrInput
}

func (RouteTableAssociationState) ElementType

func (RouteTableAssociationState) ElementType() reflect.Type

type RouteTablePropagation

type RouteTablePropagation struct {
	pulumi.CustomResourceState

	// Identifier of the resource
	ResourceId pulumi.StringOutput `pulumi:"resourceId"`
	// Type of the resource
	ResourceType pulumi.StringOutput `pulumi:"resourceType"`
	// Identifier of EC2 Transit Gateway Attachment.
	TransitGatewayAttachmentId pulumi.StringOutput `pulumi:"transitGatewayAttachmentId"`
	// Identifier of EC2 Transit Gateway Route Table.
	TransitGatewayRouteTableId pulumi.StringOutput `pulumi:"transitGatewayRouteTableId"`
}

Manages an EC2 Transit Gateway Route Table propagation.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v2/go/aws/ec2transitgateway"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2transitgateway.NewRouteTablePropagation(ctx, "example", &ec2transitgateway.RouteTablePropagationArgs{
			TransitGatewayAttachmentId: pulumi.String(aws_ec2_transit_gateway_vpc_attachment.Example.Id),
			TransitGatewayRouteTableId: pulumi.String(aws_ec2_transit_gateway_route_table.Example.Id),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetRouteTablePropagation

func GetRouteTablePropagation(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *RouteTablePropagationState, opts ...pulumi.ResourceOption) (*RouteTablePropagation, error)

GetRouteTablePropagation gets an existing RouteTablePropagation resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewRouteTablePropagation

func NewRouteTablePropagation(ctx *pulumi.Context,
	name string, args *RouteTablePropagationArgs, opts ...pulumi.ResourceOption) (*RouteTablePropagation, error)

NewRouteTablePropagation registers a new resource with the given unique name, arguments, and options.

type RouteTablePropagationArgs

type RouteTablePropagationArgs struct {
	// Identifier of EC2 Transit Gateway Attachment.
	TransitGatewayAttachmentId pulumi.StringInput
	// Identifier of EC2 Transit Gateway Route Table.
	TransitGatewayRouteTableId pulumi.StringInput
}

The set of arguments for constructing a RouteTablePropagation resource.

func (RouteTablePropagationArgs) ElementType

func (RouteTablePropagationArgs) ElementType() reflect.Type

type RouteTablePropagationState

type RouteTablePropagationState struct {
	// Identifier of the resource
	ResourceId pulumi.StringPtrInput
	// Type of the resource
	ResourceType pulumi.StringPtrInput
	// Identifier of EC2 Transit Gateway Attachment.
	TransitGatewayAttachmentId pulumi.StringPtrInput
	// Identifier of EC2 Transit Gateway Route Table.
	TransitGatewayRouteTableId pulumi.StringPtrInput
}

func (RouteTablePropagationState) ElementType

func (RouteTablePropagationState) ElementType() reflect.Type

type RouteTableState

type RouteTableState struct {
	// Boolean whether this is the default association route table for the EC2 Transit Gateway.
	DefaultAssociationRouteTable pulumi.BoolPtrInput
	// Boolean whether this is the default propagation route table for the EC2 Transit Gateway.
	DefaultPropagationRouteTable pulumi.BoolPtrInput
	// Key-value tags for the EC2 Transit Gateway Route Table.
	Tags pulumi.StringMapInput
	// Identifier of EC2 Transit Gateway.
	TransitGatewayId pulumi.StringPtrInput
}

func (RouteTableState) ElementType

func (RouteTableState) ElementType() reflect.Type

type TransitGateway

type TransitGateway struct {
	pulumi.CustomResourceState

	// Private Autonomous System Number (ASN) for the Amazon side of a BGP session. The range is `64512` to `65534` for 16-bit ASNs and `4200000000` to `4294967294` for 32-bit ASNs. Default value: `64512`.
	AmazonSideAsn pulumi.IntPtrOutput `pulumi:"amazonSideAsn"`
	// EC2 Transit Gateway Amazon Resource Name (ARN)
	Arn pulumi.StringOutput `pulumi:"arn"`
	// Identifier of the default association route table
	AssociationDefaultRouteTableId pulumi.StringOutput `pulumi:"associationDefaultRouteTableId"`
	// Whether resource attachment requests are automatically accepted. Valid values: `disable`, `enable`. Default value: `disable`.
	AutoAcceptSharedAttachments pulumi.StringPtrOutput `pulumi:"autoAcceptSharedAttachments"`
	// Whether resource attachments are automatically associated with the default association route table. Valid values: `disable`, `enable`. Default value: `enable`.
	DefaultRouteTableAssociation pulumi.StringPtrOutput `pulumi:"defaultRouteTableAssociation"`
	// Whether resource attachments automatically propagate routes to the default propagation route table. Valid values: `disable`, `enable`. Default value: `enable`.
	DefaultRouteTablePropagation pulumi.StringPtrOutput `pulumi:"defaultRouteTablePropagation"`
	// Description of the EC2 Transit Gateway.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// Whether DNS support is enabled. Valid values: `disable`, `enable`. Default value: `enable`.
	DnsSupport pulumi.StringPtrOutput `pulumi:"dnsSupport"`
	// Identifier of the AWS account that owns the EC2 Transit Gateway
	OwnerId pulumi.StringOutput `pulumi:"ownerId"`
	// Identifier of the default propagation route table
	PropagationDefaultRouteTableId pulumi.StringOutput `pulumi:"propagationDefaultRouteTableId"`
	// Key-value tags for the EC2 Transit Gateway.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// Whether VPN Equal Cost Multipath Protocol support is enabled. Valid values: `disable`, `enable`. Default value: `enable`.
	VpnEcmpSupport pulumi.StringPtrOutput `pulumi:"vpnEcmpSupport"`
}

Manages an EC2 Transit Gateway.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v2/go/aws/ec2transitgateway"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2transitgateway.NewTransitGateway(ctx, "example", &ec2transitgateway.TransitGatewayArgs{
			Description: pulumi.String("example"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetTransitGateway

func GetTransitGateway(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *TransitGatewayState, opts ...pulumi.ResourceOption) (*TransitGateway, error)

GetTransitGateway gets an existing TransitGateway resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewTransitGateway

func NewTransitGateway(ctx *pulumi.Context,
	name string, args *TransitGatewayArgs, opts ...pulumi.ResourceOption) (*TransitGateway, error)

NewTransitGateway registers a new resource with the given unique name, arguments, and options.

type TransitGatewayArgs

type TransitGatewayArgs struct {
	// Private Autonomous System Number (ASN) for the Amazon side of a BGP session. The range is `64512` to `65534` for 16-bit ASNs and `4200000000` to `4294967294` for 32-bit ASNs. Default value: `64512`.
	AmazonSideAsn pulumi.IntPtrInput
	// Whether resource attachment requests are automatically accepted. Valid values: `disable`, `enable`. Default value: `disable`.
	AutoAcceptSharedAttachments pulumi.StringPtrInput
	// Whether resource attachments are automatically associated with the default association route table. Valid values: `disable`, `enable`. Default value: `enable`.
	DefaultRouteTableAssociation pulumi.StringPtrInput
	// Whether resource attachments automatically propagate routes to the default propagation route table. Valid values: `disable`, `enable`. Default value: `enable`.
	DefaultRouteTablePropagation pulumi.StringPtrInput
	// Description of the EC2 Transit Gateway.
	Description pulumi.StringPtrInput
	// Whether DNS support is enabled. Valid values: `disable`, `enable`. Default value: `enable`.
	DnsSupport pulumi.StringPtrInput
	// Key-value tags for the EC2 Transit Gateway.
	Tags pulumi.StringMapInput
	// Whether VPN Equal Cost Multipath Protocol support is enabled. Valid values: `disable`, `enable`. Default value: `enable`.
	VpnEcmpSupport pulumi.StringPtrInput
}

The set of arguments for constructing a TransitGateway resource.

func (TransitGatewayArgs) ElementType

func (TransitGatewayArgs) ElementType() reflect.Type

type TransitGatewayState

type TransitGatewayState struct {
	// Private Autonomous System Number (ASN) for the Amazon side of a BGP session. The range is `64512` to `65534` for 16-bit ASNs and `4200000000` to `4294967294` for 32-bit ASNs. Default value: `64512`.
	AmazonSideAsn pulumi.IntPtrInput
	// EC2 Transit Gateway Amazon Resource Name (ARN)
	Arn pulumi.StringPtrInput
	// Identifier of the default association route table
	AssociationDefaultRouteTableId pulumi.StringPtrInput
	// Whether resource attachment requests are automatically accepted. Valid values: `disable`, `enable`. Default value: `disable`.
	AutoAcceptSharedAttachments pulumi.StringPtrInput
	// Whether resource attachments are automatically associated with the default association route table. Valid values: `disable`, `enable`. Default value: `enable`.
	DefaultRouteTableAssociation pulumi.StringPtrInput
	// Whether resource attachments automatically propagate routes to the default propagation route table. Valid values: `disable`, `enable`. Default value: `enable`.
	DefaultRouteTablePropagation pulumi.StringPtrInput
	// Description of the EC2 Transit Gateway.
	Description pulumi.StringPtrInput
	// Whether DNS support is enabled. Valid values: `disable`, `enable`. Default value: `enable`.
	DnsSupport pulumi.StringPtrInput
	// Identifier of the AWS account that owns the EC2 Transit Gateway
	OwnerId pulumi.StringPtrInput
	// Identifier of the default propagation route table
	PropagationDefaultRouteTableId pulumi.StringPtrInput
	// Key-value tags for the EC2 Transit Gateway.
	Tags pulumi.StringMapInput
	// Whether VPN Equal Cost Multipath Protocol support is enabled. Valid values: `disable`, `enable`. Default value: `enable`.
	VpnEcmpSupport pulumi.StringPtrInput
}

func (TransitGatewayState) ElementType

func (TransitGatewayState) ElementType() reflect.Type

type VpcAttachment

type VpcAttachment struct {
	pulumi.CustomResourceState

	// Whether DNS support is enabled. Valid values: `disable`, `enable`. Default value: `enable`.
	DnsSupport pulumi.StringPtrOutput `pulumi:"dnsSupport"`
	// Whether IPv6 support is enabled. Valid values: `disable`, `enable`. Default value: `disable`.
	Ipv6Support pulumi.StringPtrOutput `pulumi:"ipv6Support"`
	// Identifiers of EC2 Subnets.
	SubnetIds pulumi.StringArrayOutput `pulumi:"subnetIds"`
	// Key-value tags for the EC2 Transit Gateway VPC Attachment.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// Boolean whether the VPC Attachment should be associated with the EC2 Transit Gateway association default route table. This cannot be configured or perform drift detection with Resource Access Manager shared EC2 Transit Gateways. Default value: `true`.
	TransitGatewayDefaultRouteTableAssociation pulumi.BoolPtrOutput `pulumi:"transitGatewayDefaultRouteTableAssociation"`
	// Boolean whether the VPC Attachment should propagate routes with the EC2 Transit Gateway propagation default route table. This cannot be configured or perform drift detection with Resource Access Manager shared EC2 Transit Gateways. Default value: `true`.
	TransitGatewayDefaultRouteTablePropagation pulumi.BoolPtrOutput `pulumi:"transitGatewayDefaultRouteTablePropagation"`
	// Identifier of EC2 Transit Gateway.
	TransitGatewayId pulumi.StringOutput `pulumi:"transitGatewayId"`
	// Identifier of EC2 VPC.
	VpcId pulumi.StringOutput `pulumi:"vpcId"`
	// Identifier of the AWS account that owns the EC2 VPC.
	VpcOwnerId pulumi.StringOutput `pulumi:"vpcOwnerId"`
}

Manages an EC2 Transit Gateway VPC Attachment. For examples of custom route table association and propagation, see the EC2 Transit Gateway Networking Examples Guide.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v2/go/aws/ec2transitgateway"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2transitgateway.NewVpcAttachment(ctx, "example", &ec2transitgateway.VpcAttachmentArgs{
			SubnetIds: pulumi.StringArray{
				pulumi.String(aws_subnet.Example.Id),
			},
			TransitGatewayId: pulumi.String(aws_ec2_transit_gateway.Example.Id),
			VpcId:            pulumi.String(aws_vpc.Example.Id),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

A full example of how to create a Transit Gateway in one AWS account, share it with a second AWS account, and attach a VPC in the second account to the Transit Gateway via the `ec2transitgateway.VpcAttachment` and `ec2transitgateway.VpcAttachmentAccepter` resources can be found in [the `./examples/transit-gateway-cross-account-vpc-attachment` directory within the Github Repository](https://github.com/providers/provider-aws/tree/master/examples/transit-gateway-cross-account-vpc-attachment).

func GetVpcAttachment

func GetVpcAttachment(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *VpcAttachmentState, opts ...pulumi.ResourceOption) (*VpcAttachment, error)

GetVpcAttachment gets an existing VpcAttachment resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewVpcAttachment

func NewVpcAttachment(ctx *pulumi.Context,
	name string, args *VpcAttachmentArgs, opts ...pulumi.ResourceOption) (*VpcAttachment, error)

NewVpcAttachment registers a new resource with the given unique name, arguments, and options.

type VpcAttachmentAccepter

type VpcAttachmentAccepter struct {
	pulumi.CustomResourceState

	// Whether DNS support is enabled. Valid values: `disable`, `enable`.
	DnsSupport pulumi.StringOutput `pulumi:"dnsSupport"`
	// Whether IPv6 support is enabled. Valid values: `disable`, `enable`.
	Ipv6Support pulumi.StringOutput `pulumi:"ipv6Support"`
	// Identifiers of EC2 Subnets.
	SubnetIds pulumi.StringArrayOutput `pulumi:"subnetIds"`
	// Key-value tags for the EC2 Transit Gateway VPC Attachment.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// The ID of the EC2 Transit Gateway Attachment to manage.
	TransitGatewayAttachmentId pulumi.StringOutput `pulumi:"transitGatewayAttachmentId"`
	// Boolean whether the VPC Attachment should be associated with the EC2 Transit Gateway association default route table. Default value: `true`.
	TransitGatewayDefaultRouteTableAssociation pulumi.BoolPtrOutput `pulumi:"transitGatewayDefaultRouteTableAssociation"`
	// Boolean whether the VPC Attachment should propagate routes with the EC2 Transit Gateway propagation default route table. Default value: `true`.
	TransitGatewayDefaultRouteTablePropagation pulumi.BoolPtrOutput `pulumi:"transitGatewayDefaultRouteTablePropagation"`
	// Identifier of EC2 Transit Gateway.
	TransitGatewayId pulumi.StringOutput `pulumi:"transitGatewayId"`
	// Identifier of EC2 VPC.
	VpcId pulumi.StringOutput `pulumi:"vpcId"`
	// Identifier of the AWS account that owns the EC2 VPC.
	VpcOwnerId pulumi.StringOutput `pulumi:"vpcOwnerId"`
}

Manages the accepter's side of an EC2 Transit Gateway VPC Attachment.

When a cross-account (requester's AWS account differs from the accepter's AWS account) EC2 Transit Gateway VPC Attachment is created, an EC2 Transit Gateway VPC Attachment resource is automatically created in the accepter's account. The requester can use the `ec2transitgateway.VpcAttachment` resource to manage its side of the connection and the accepter can use the `ec2transitgateway.VpcAttachmentAccepter` resource to "adopt" its side of the connection into management.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v2/go/aws/ec2transitgateway"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2transitgateway.NewVpcAttachmentAccepter(ctx, "example", &ec2transitgateway.VpcAttachmentAccepterArgs{
			Tags: pulumi.StringMap{
				"Name": pulumi.String("Example cross-account attachment"),
			},
			TransitGatewayAttachmentId: pulumi.String(aws_ec2_transit_gateway_vpc_attachment.Example.Id),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

A full example of how to how to create a Transit Gateway in one AWS account, share it with a second AWS account, and attach a VPC in the second account to the Transit Gateway via the `ec2transitgateway.VpcAttachment` and `ec2transitgateway.VpcAttachmentAccepter` resources can be found in [the `./examples/transit-gateway-cross-account-vpc-attachment` directory within the Github Repository](https://github.com/providers/provider-aws/tree/master/examples/transit-gateway-cross-account-vpc-attachment).

func GetVpcAttachmentAccepter

func GetVpcAttachmentAccepter(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *VpcAttachmentAccepterState, opts ...pulumi.ResourceOption) (*VpcAttachmentAccepter, error)

GetVpcAttachmentAccepter gets an existing VpcAttachmentAccepter resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewVpcAttachmentAccepter

func NewVpcAttachmentAccepter(ctx *pulumi.Context,
	name string, args *VpcAttachmentAccepterArgs, opts ...pulumi.ResourceOption) (*VpcAttachmentAccepter, error)

NewVpcAttachmentAccepter registers a new resource with the given unique name, arguments, and options.

type VpcAttachmentAccepterArgs

type VpcAttachmentAccepterArgs struct {
	// Key-value tags for the EC2 Transit Gateway VPC Attachment.
	Tags pulumi.StringMapInput
	// The ID of the EC2 Transit Gateway Attachment to manage.
	TransitGatewayAttachmentId pulumi.StringInput
	// Boolean whether the VPC Attachment should be associated with the EC2 Transit Gateway association default route table. Default value: `true`.
	TransitGatewayDefaultRouteTableAssociation pulumi.BoolPtrInput
	// Boolean whether the VPC Attachment should propagate routes with the EC2 Transit Gateway propagation default route table. Default value: `true`.
	TransitGatewayDefaultRouteTablePropagation pulumi.BoolPtrInput
}

The set of arguments for constructing a VpcAttachmentAccepter resource.

func (VpcAttachmentAccepterArgs) ElementType

func (VpcAttachmentAccepterArgs) ElementType() reflect.Type

type VpcAttachmentAccepterState

type VpcAttachmentAccepterState struct {
	// Whether DNS support is enabled. Valid values: `disable`, `enable`.
	DnsSupport pulumi.StringPtrInput
	// Whether IPv6 support is enabled. Valid values: `disable`, `enable`.
	Ipv6Support pulumi.StringPtrInput
	// Identifiers of EC2 Subnets.
	SubnetIds pulumi.StringArrayInput
	// Key-value tags for the EC2 Transit Gateway VPC Attachment.
	Tags pulumi.StringMapInput
	// The ID of the EC2 Transit Gateway Attachment to manage.
	TransitGatewayAttachmentId pulumi.StringPtrInput
	// Boolean whether the VPC Attachment should be associated with the EC2 Transit Gateway association default route table. Default value: `true`.
	TransitGatewayDefaultRouteTableAssociation pulumi.BoolPtrInput
	// Boolean whether the VPC Attachment should propagate routes with the EC2 Transit Gateway propagation default route table. Default value: `true`.
	TransitGatewayDefaultRouteTablePropagation pulumi.BoolPtrInput
	// Identifier of EC2 Transit Gateway.
	TransitGatewayId pulumi.StringPtrInput
	// Identifier of EC2 VPC.
	VpcId pulumi.StringPtrInput
	// Identifier of the AWS account that owns the EC2 VPC.
	VpcOwnerId pulumi.StringPtrInput
}

func (VpcAttachmentAccepterState) ElementType

func (VpcAttachmentAccepterState) ElementType() reflect.Type

type VpcAttachmentArgs

type VpcAttachmentArgs struct {
	// Whether DNS support is enabled. Valid values: `disable`, `enable`. Default value: `enable`.
	DnsSupport pulumi.StringPtrInput
	// Whether IPv6 support is enabled. Valid values: `disable`, `enable`. Default value: `disable`.
	Ipv6Support pulumi.StringPtrInput
	// Identifiers of EC2 Subnets.
	SubnetIds pulumi.StringArrayInput
	// Key-value tags for the EC2 Transit Gateway VPC Attachment.
	Tags pulumi.StringMapInput
	// Boolean whether the VPC Attachment should be associated with the EC2 Transit Gateway association default route table. This cannot be configured or perform drift detection with Resource Access Manager shared EC2 Transit Gateways. Default value: `true`.
	TransitGatewayDefaultRouteTableAssociation pulumi.BoolPtrInput
	// Boolean whether the VPC Attachment should propagate routes with the EC2 Transit Gateway propagation default route table. This cannot be configured or perform drift detection with Resource Access Manager shared EC2 Transit Gateways. Default value: `true`.
	TransitGatewayDefaultRouteTablePropagation pulumi.BoolPtrInput
	// Identifier of EC2 Transit Gateway.
	TransitGatewayId pulumi.StringInput
	// Identifier of EC2 VPC.
	VpcId pulumi.StringInput
}

The set of arguments for constructing a VpcAttachment resource.

func (VpcAttachmentArgs) ElementType

func (VpcAttachmentArgs) ElementType() reflect.Type

type VpcAttachmentState

type VpcAttachmentState struct {
	// Whether DNS support is enabled. Valid values: `disable`, `enable`. Default value: `enable`.
	DnsSupport pulumi.StringPtrInput
	// Whether IPv6 support is enabled. Valid values: `disable`, `enable`. Default value: `disable`.
	Ipv6Support pulumi.StringPtrInput
	// Identifiers of EC2 Subnets.
	SubnetIds pulumi.StringArrayInput
	// Key-value tags for the EC2 Transit Gateway VPC Attachment.
	Tags pulumi.StringMapInput
	// Boolean whether the VPC Attachment should be associated with the EC2 Transit Gateway association default route table. This cannot be configured or perform drift detection with Resource Access Manager shared EC2 Transit Gateways. Default value: `true`.
	TransitGatewayDefaultRouteTableAssociation pulumi.BoolPtrInput
	// Boolean whether the VPC Attachment should propagate routes with the EC2 Transit Gateway propagation default route table. This cannot be configured or perform drift detection with Resource Access Manager shared EC2 Transit Gateways. Default value: `true`.
	TransitGatewayDefaultRouteTablePropagation pulumi.BoolPtrInput
	// Identifier of EC2 Transit Gateway.
	TransitGatewayId pulumi.StringPtrInput
	// Identifier of EC2 VPC.
	VpcId pulumi.StringPtrInput
	// Identifier of the AWS account that owns the EC2 VPC.
	VpcOwnerId pulumi.StringPtrInput
}

func (VpcAttachmentState) ElementType

func (VpcAttachmentState) ElementType() reflect.Type

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL