Documentation ¶
Index ¶
- type BgpPeer
- type BgpPeerArgs
- type BgpPeerInput
- type BgpPeerOutput
- type BgpPeerState
- type Connection
- type ConnectionArgs
- type ConnectionAssociation
- type ConnectionAssociationArgs
- type ConnectionAssociationInput
- type ConnectionAssociationOutput
- type ConnectionAssociationState
- type ConnectionInput
- type ConnectionOutput
- type ConnectionState
- type Gateway
- type GatewayArgs
- type GatewayAssociation
- type GatewayAssociationArgs
- type GatewayAssociationInput
- type GatewayAssociationOutput
- type GatewayAssociationProposal
- func (GatewayAssociationProposal) ElementType() reflect.Type
- func (i GatewayAssociationProposal) ToGatewayAssociationProposalOutput() GatewayAssociationProposalOutput
- func (i GatewayAssociationProposal) ToGatewayAssociationProposalOutputWithContext(ctx context.Context) GatewayAssociationProposalOutput
- type GatewayAssociationProposalArgs
- type GatewayAssociationProposalInput
- type GatewayAssociationProposalOutput
- func (GatewayAssociationProposalOutput) ElementType() reflect.Type
- func (o GatewayAssociationProposalOutput) ToGatewayAssociationProposalOutput() GatewayAssociationProposalOutput
- func (o GatewayAssociationProposalOutput) ToGatewayAssociationProposalOutputWithContext(ctx context.Context) GatewayAssociationProposalOutput
- type GatewayAssociationProposalState
- type GatewayAssociationState
- type GatewayInput
- type GatewayOutput
- type GatewayState
- type HostedPrivateVirtualInterface
- func (HostedPrivateVirtualInterface) ElementType() reflect.Type
- func (i HostedPrivateVirtualInterface) ToHostedPrivateVirtualInterfaceOutput() HostedPrivateVirtualInterfaceOutput
- func (i HostedPrivateVirtualInterface) ToHostedPrivateVirtualInterfaceOutputWithContext(ctx context.Context) HostedPrivateVirtualInterfaceOutput
- type HostedPrivateVirtualInterfaceAccepter
- func (HostedPrivateVirtualInterfaceAccepter) ElementType() reflect.Type
- func (i HostedPrivateVirtualInterfaceAccepter) ToHostedPrivateVirtualInterfaceAccepterOutput() HostedPrivateVirtualInterfaceAccepterOutput
- func (i HostedPrivateVirtualInterfaceAccepter) ToHostedPrivateVirtualInterfaceAccepterOutputWithContext(ctx context.Context) HostedPrivateVirtualInterfaceAccepterOutput
- type HostedPrivateVirtualInterfaceAccepterArgs
- type HostedPrivateVirtualInterfaceAccepterInput
- type HostedPrivateVirtualInterfaceAccepterOutput
- func (HostedPrivateVirtualInterfaceAccepterOutput) ElementType() reflect.Type
- func (o HostedPrivateVirtualInterfaceAccepterOutput) ToHostedPrivateVirtualInterfaceAccepterOutput() HostedPrivateVirtualInterfaceAccepterOutput
- func (o HostedPrivateVirtualInterfaceAccepterOutput) ToHostedPrivateVirtualInterfaceAccepterOutputWithContext(ctx context.Context) HostedPrivateVirtualInterfaceAccepterOutput
- type HostedPrivateVirtualInterfaceAccepterState
- type HostedPrivateVirtualInterfaceArgs
- type HostedPrivateVirtualInterfaceInput
- type HostedPrivateVirtualInterfaceOutput
- func (HostedPrivateVirtualInterfaceOutput) ElementType() reflect.Type
- func (o HostedPrivateVirtualInterfaceOutput) ToHostedPrivateVirtualInterfaceOutput() HostedPrivateVirtualInterfaceOutput
- func (o HostedPrivateVirtualInterfaceOutput) ToHostedPrivateVirtualInterfaceOutputWithContext(ctx context.Context) HostedPrivateVirtualInterfaceOutput
- type HostedPrivateVirtualInterfaceState
- type HostedPublicVirtualInterface
- func (HostedPublicVirtualInterface) ElementType() reflect.Type
- func (i HostedPublicVirtualInterface) ToHostedPublicVirtualInterfaceOutput() HostedPublicVirtualInterfaceOutput
- func (i HostedPublicVirtualInterface) ToHostedPublicVirtualInterfaceOutputWithContext(ctx context.Context) HostedPublicVirtualInterfaceOutput
- type HostedPublicVirtualInterfaceAccepter
- func (HostedPublicVirtualInterfaceAccepter) ElementType() reflect.Type
- func (i HostedPublicVirtualInterfaceAccepter) ToHostedPublicVirtualInterfaceAccepterOutput() HostedPublicVirtualInterfaceAccepterOutput
- func (i HostedPublicVirtualInterfaceAccepter) ToHostedPublicVirtualInterfaceAccepterOutputWithContext(ctx context.Context) HostedPublicVirtualInterfaceAccepterOutput
- type HostedPublicVirtualInterfaceAccepterArgs
- type HostedPublicVirtualInterfaceAccepterInput
- type HostedPublicVirtualInterfaceAccepterOutput
- func (HostedPublicVirtualInterfaceAccepterOutput) ElementType() reflect.Type
- func (o HostedPublicVirtualInterfaceAccepterOutput) ToHostedPublicVirtualInterfaceAccepterOutput() HostedPublicVirtualInterfaceAccepterOutput
- func (o HostedPublicVirtualInterfaceAccepterOutput) ToHostedPublicVirtualInterfaceAccepterOutputWithContext(ctx context.Context) HostedPublicVirtualInterfaceAccepterOutput
- type HostedPublicVirtualInterfaceAccepterState
- type HostedPublicVirtualInterfaceArgs
- type HostedPublicVirtualInterfaceInput
- type HostedPublicVirtualInterfaceOutput
- func (HostedPublicVirtualInterfaceOutput) ElementType() reflect.Type
- func (o HostedPublicVirtualInterfaceOutput) ToHostedPublicVirtualInterfaceOutput() HostedPublicVirtualInterfaceOutput
- func (o HostedPublicVirtualInterfaceOutput) ToHostedPublicVirtualInterfaceOutputWithContext(ctx context.Context) HostedPublicVirtualInterfaceOutput
- type HostedPublicVirtualInterfaceState
- type HostedTransitVirtualInterface
- func (HostedTransitVirtualInterface) ElementType() reflect.Type
- func (i HostedTransitVirtualInterface) ToHostedTransitVirtualInterfaceOutput() HostedTransitVirtualInterfaceOutput
- func (i HostedTransitVirtualInterface) ToHostedTransitVirtualInterfaceOutputWithContext(ctx context.Context) HostedTransitVirtualInterfaceOutput
- type HostedTransitVirtualInterfaceAcceptor
- func (HostedTransitVirtualInterfaceAcceptor) ElementType() reflect.Type
- func (i HostedTransitVirtualInterfaceAcceptor) ToHostedTransitVirtualInterfaceAcceptorOutput() HostedTransitVirtualInterfaceAcceptorOutput
- func (i HostedTransitVirtualInterfaceAcceptor) ToHostedTransitVirtualInterfaceAcceptorOutputWithContext(ctx context.Context) HostedTransitVirtualInterfaceAcceptorOutput
- type HostedTransitVirtualInterfaceAcceptorArgs
- type HostedTransitVirtualInterfaceAcceptorInput
- type HostedTransitVirtualInterfaceAcceptorOutput
- func (HostedTransitVirtualInterfaceAcceptorOutput) ElementType() reflect.Type
- func (o HostedTransitVirtualInterfaceAcceptorOutput) ToHostedTransitVirtualInterfaceAcceptorOutput() HostedTransitVirtualInterfaceAcceptorOutput
- func (o HostedTransitVirtualInterfaceAcceptorOutput) ToHostedTransitVirtualInterfaceAcceptorOutputWithContext(ctx context.Context) HostedTransitVirtualInterfaceAcceptorOutput
- type HostedTransitVirtualInterfaceAcceptorState
- type HostedTransitVirtualInterfaceArgs
- type HostedTransitVirtualInterfaceInput
- type HostedTransitVirtualInterfaceOutput
- func (HostedTransitVirtualInterfaceOutput) ElementType() reflect.Type
- func (o HostedTransitVirtualInterfaceOutput) ToHostedTransitVirtualInterfaceOutput() HostedTransitVirtualInterfaceOutput
- func (o HostedTransitVirtualInterfaceOutput) ToHostedTransitVirtualInterfaceOutputWithContext(ctx context.Context) HostedTransitVirtualInterfaceOutput
- type HostedTransitVirtualInterfaceState
- type LinkAggregationGroup
- type LinkAggregationGroupArgs
- type LinkAggregationGroupInput
- type LinkAggregationGroupOutput
- type LinkAggregationGroupState
- type LookupGatewayArgs
- type LookupGatewayResult
- type PrivateVirtualInterface
- type PrivateVirtualInterfaceArgs
- type PrivateVirtualInterfaceInput
- type PrivateVirtualInterfaceOutput
- type PrivateVirtualInterfaceState
- type PublicVirtualInterface
- type PublicVirtualInterfaceArgs
- type PublicVirtualInterfaceInput
- type PublicVirtualInterfaceOutput
- type PublicVirtualInterfaceState
- type TransitVirtualInterface
- type TransitVirtualInterfaceArgs
- type TransitVirtualInterfaceInput
- type TransitVirtualInterfaceOutput
- type TransitVirtualInterfaceState
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type BgpPeer ¶
type BgpPeer struct { pulumi.CustomResourceState // The address family for the BGP peer. ` ipv4 ` or `ipv6`. AddressFamily pulumi.StringOutput `pulumi:"addressFamily"` // The IPv4 CIDR address to use to send traffic to Amazon. // Required for IPv4 BGP peers on public virtual interfaces. AmazonAddress pulumi.StringOutput `pulumi:"amazonAddress"` // The Direct Connect endpoint on which the BGP peer terminates. AwsDevice pulumi.StringOutput `pulumi:"awsDevice"` // The autonomous system (AS) number for Border Gateway Protocol (BGP) configuration. BgpAsn pulumi.IntOutput `pulumi:"bgpAsn"` // The authentication key for BGP configuration. BgpAuthKey pulumi.StringOutput `pulumi:"bgpAuthKey"` // The ID of the BGP peer. BgpPeerId pulumi.StringOutput `pulumi:"bgpPeerId"` // The Up/Down state of the BGP peer. BgpStatus pulumi.StringOutput `pulumi:"bgpStatus"` // The IPv4 CIDR destination address to which Amazon should send traffic. // Required for IPv4 BGP peers on public virtual interfaces. CustomerAddress pulumi.StringOutput `pulumi:"customerAddress"` // The ID of the Direct Connect virtual interface on which to create the BGP peer. VirtualInterfaceId pulumi.StringOutput `pulumi:"virtualInterfaceId"` }
Provides a Direct Connect BGP peer resource.
## Example Usage
```go package main
import (
"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/directconnect" "github.com/pulumi/pulumi/sdk/v2/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := directconnect.NewBgpPeer(ctx, "peer", &directconnect.BgpPeerArgs{ VirtualInterfaceId: pulumi.Any(aws_dx_private_virtual_interface.Foo.Id), AddressFamily: pulumi.String("ipv6"), BgpAsn: pulumi.Int(65351), }) if err != nil { return err } return nil }) }
```
func GetBgpPeer ¶
func GetBgpPeer(ctx *pulumi.Context, name string, id pulumi.IDInput, state *BgpPeerState, opts ...pulumi.ResourceOption) (*BgpPeer, error)
GetBgpPeer gets an existing BgpPeer 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 NewBgpPeer ¶
func NewBgpPeer(ctx *pulumi.Context, name string, args *BgpPeerArgs, opts ...pulumi.ResourceOption) (*BgpPeer, error)
NewBgpPeer registers a new resource with the given unique name, arguments, and options.
func (BgpPeer) ElementType ¶ added in v3.13.0
func (BgpPeer) ToBgpPeerOutput ¶ added in v3.13.0
func (i BgpPeer) ToBgpPeerOutput() BgpPeerOutput
func (BgpPeer) ToBgpPeerOutputWithContext ¶ added in v3.13.0
func (i BgpPeer) ToBgpPeerOutputWithContext(ctx context.Context) BgpPeerOutput
type BgpPeerArgs ¶
type BgpPeerArgs struct { // The address family for the BGP peer. ` ipv4 ` or `ipv6`. AddressFamily pulumi.StringInput // The IPv4 CIDR address to use to send traffic to Amazon. // Required for IPv4 BGP peers on public virtual interfaces. AmazonAddress pulumi.StringPtrInput // The autonomous system (AS) number for Border Gateway Protocol (BGP) configuration. BgpAsn pulumi.IntInput // The authentication key for BGP configuration. BgpAuthKey pulumi.StringPtrInput // The IPv4 CIDR destination address to which Amazon should send traffic. // Required for IPv4 BGP peers on public virtual interfaces. CustomerAddress pulumi.StringPtrInput // The ID of the Direct Connect virtual interface on which to create the BGP peer. VirtualInterfaceId pulumi.StringInput }
The set of arguments for constructing a BgpPeer resource.
func (BgpPeerArgs) ElementType ¶
func (BgpPeerArgs) ElementType() reflect.Type
type BgpPeerInput ¶ added in v3.13.0
type BgpPeerInput interface { pulumi.Input ToBgpPeerOutput() BgpPeerOutput ToBgpPeerOutputWithContext(ctx context.Context) BgpPeerOutput }
type BgpPeerOutput ¶ added in v3.13.0
type BgpPeerOutput struct {
*pulumi.OutputState
}
func (BgpPeerOutput) ElementType ¶ added in v3.13.0
func (BgpPeerOutput) ElementType() reflect.Type
func (BgpPeerOutput) ToBgpPeerOutput ¶ added in v3.13.0
func (o BgpPeerOutput) ToBgpPeerOutput() BgpPeerOutput
func (BgpPeerOutput) ToBgpPeerOutputWithContext ¶ added in v3.13.0
func (o BgpPeerOutput) ToBgpPeerOutputWithContext(ctx context.Context) BgpPeerOutput
type BgpPeerState ¶
type BgpPeerState struct { // The address family for the BGP peer. ` ipv4 ` or `ipv6`. AddressFamily pulumi.StringPtrInput // The IPv4 CIDR address to use to send traffic to Amazon. // Required for IPv4 BGP peers on public virtual interfaces. AmazonAddress pulumi.StringPtrInput // The Direct Connect endpoint on which the BGP peer terminates. AwsDevice pulumi.StringPtrInput // The autonomous system (AS) number for Border Gateway Protocol (BGP) configuration. BgpAsn pulumi.IntPtrInput // The authentication key for BGP configuration. BgpAuthKey pulumi.StringPtrInput // The ID of the BGP peer. BgpPeerId pulumi.StringPtrInput // The Up/Down state of the BGP peer. BgpStatus pulumi.StringPtrInput // The IPv4 CIDR destination address to which Amazon should send traffic. // Required for IPv4 BGP peers on public virtual interfaces. CustomerAddress pulumi.StringPtrInput // The ID of the Direct Connect virtual interface on which to create the BGP peer. VirtualInterfaceId pulumi.StringPtrInput }
func (BgpPeerState) ElementType ¶
func (BgpPeerState) ElementType() reflect.Type
type Connection ¶
type Connection struct { pulumi.CustomResourceState // The ARN of the connection. Arn pulumi.StringOutput `pulumi:"arn"` // The Direct Connect endpoint on which the physical connection terminates. AwsDevice pulumi.StringOutput `pulumi:"awsDevice"` // The bandwidth of the connection. Valid values for dedicated connections: 1Gbps, 10Gbps. Valid values for hosted connections: 50Mbps, 100Mbps, 200Mbps, 300Mbps, 400Mbps, 500Mbps, 1Gbps, 2Gbps, 5Gbps and 10Gbps. Case sensitive. Bandwidth pulumi.StringOutput `pulumi:"bandwidth"` // Indicates whether the connection supports a secondary BGP peer in the same address family (IPv4/IPv6). HasLogicalRedundancy pulumi.StringOutput `pulumi:"hasLogicalRedundancy"` // Boolean value representing if jumbo frames have been enabled for this connection. JumboFrameCapable pulumi.BoolOutput `pulumi:"jumboFrameCapable"` // The AWS Direct Connect location where the connection is located. See [DescribeLocations](https://docs.aws.amazon.com/directconnect/latest/APIReference/API_DescribeLocations.html) for the list of AWS Direct Connect locations. Use `locationCode`. Location pulumi.StringOutput `pulumi:"location"` // The name of the connection. Name pulumi.StringOutput `pulumi:"name"` // A map of tags to assign to the resource. Tags pulumi.StringMapOutput `pulumi:"tags"` }
Provides a Connection of Direct Connect.
## Example Usage
```go package main
import (
"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/directconnect" "github.com/pulumi/pulumi/sdk/v2/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := directconnect.NewConnection(ctx, "hoge", &directconnect.ConnectionArgs{ Bandwidth: pulumi.String("1Gbps"), Location: pulumi.String("EqDC2"), }) if err != nil { return err } return nil }) }
```
## Import
Direct Connect connections can be imported using the `connection id`, e.g.
```sh
$ pulumi import aws:directconnect/connection:Connection test_connection dxcon-ffre0ec3
```
func GetConnection ¶
func GetConnection(ctx *pulumi.Context, name string, id pulumi.IDInput, state *ConnectionState, opts ...pulumi.ResourceOption) (*Connection, error)
GetConnection gets an existing Connection 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 NewConnection ¶
func NewConnection(ctx *pulumi.Context, name string, args *ConnectionArgs, opts ...pulumi.ResourceOption) (*Connection, error)
NewConnection registers a new resource with the given unique name, arguments, and options.
func (Connection) ElementType ¶ added in v3.13.0
func (Connection) ElementType() reflect.Type
func (Connection) ToConnectionOutput ¶ added in v3.13.0
func (i Connection) ToConnectionOutput() ConnectionOutput
func (Connection) ToConnectionOutputWithContext ¶ added in v3.13.0
func (i Connection) ToConnectionOutputWithContext(ctx context.Context) ConnectionOutput
type ConnectionArgs ¶
type ConnectionArgs struct { // The bandwidth of the connection. Valid values for dedicated connections: 1Gbps, 10Gbps. Valid values for hosted connections: 50Mbps, 100Mbps, 200Mbps, 300Mbps, 400Mbps, 500Mbps, 1Gbps, 2Gbps, 5Gbps and 10Gbps. Case sensitive. Bandwidth pulumi.StringInput // The AWS Direct Connect location where the connection is located. See [DescribeLocations](https://docs.aws.amazon.com/directconnect/latest/APIReference/API_DescribeLocations.html) for the list of AWS Direct Connect locations. Use `locationCode`. Location pulumi.StringInput // The name of the connection. Name pulumi.StringPtrInput // A map of tags to assign to the resource. Tags pulumi.StringMapInput }
The set of arguments for constructing a Connection resource.
func (ConnectionArgs) ElementType ¶
func (ConnectionArgs) ElementType() reflect.Type
type ConnectionAssociation ¶
type ConnectionAssociation struct { pulumi.CustomResourceState // The ID of the connection. ConnectionId pulumi.StringOutput `pulumi:"connectionId"` // The ID of the LAG with which to associate the connection. LagId pulumi.StringOutput `pulumi:"lagId"` }
Associates a Direct Connect Connection with a LAG.
## Example Usage
```go package main
import (
"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/directconnect" "github.com/pulumi/pulumi/sdk/v2/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { exampleConnection, err := directconnect.NewConnection(ctx, "exampleConnection", &directconnect.ConnectionArgs{ Bandwidth: pulumi.String("1Gbps"), Location: pulumi.String("EqSe2-EQ"), }) if err != nil { return err } exampleLinkAggregationGroup, err := directconnect.NewLinkAggregationGroup(ctx, "exampleLinkAggregationGroup", &directconnect.LinkAggregationGroupArgs{ ConnectionsBandwidth: pulumi.String("1Gbps"), Location: pulumi.String("EqSe2-EQ"), }) if err != nil { return err } _, err = directconnect.NewConnectionAssociation(ctx, "exampleConnectionAssociation", &directconnect.ConnectionAssociationArgs{ ConnectionId: exampleConnection.ID(), LagId: exampleLinkAggregationGroup.ID(), }) if err != nil { return err } return nil }) }
```
func GetConnectionAssociation ¶
func GetConnectionAssociation(ctx *pulumi.Context, name string, id pulumi.IDInput, state *ConnectionAssociationState, opts ...pulumi.ResourceOption) (*ConnectionAssociation, error)
GetConnectionAssociation gets an existing ConnectionAssociation 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 NewConnectionAssociation ¶
func NewConnectionAssociation(ctx *pulumi.Context, name string, args *ConnectionAssociationArgs, opts ...pulumi.ResourceOption) (*ConnectionAssociation, error)
NewConnectionAssociation registers a new resource with the given unique name, arguments, and options.
func (ConnectionAssociation) ElementType ¶ added in v3.13.0
func (ConnectionAssociation) ElementType() reflect.Type
func (ConnectionAssociation) ToConnectionAssociationOutput ¶ added in v3.13.0
func (i ConnectionAssociation) ToConnectionAssociationOutput() ConnectionAssociationOutput
func (ConnectionAssociation) ToConnectionAssociationOutputWithContext ¶ added in v3.13.0
func (i ConnectionAssociation) ToConnectionAssociationOutputWithContext(ctx context.Context) ConnectionAssociationOutput
type ConnectionAssociationArgs ¶
type ConnectionAssociationArgs struct { // The ID of the connection. ConnectionId pulumi.StringInput // The ID of the LAG with which to associate the connection. LagId pulumi.StringInput }
The set of arguments for constructing a ConnectionAssociation resource.
func (ConnectionAssociationArgs) ElementType ¶
func (ConnectionAssociationArgs) ElementType() reflect.Type
type ConnectionAssociationInput ¶ added in v3.13.0
type ConnectionAssociationInput interface { pulumi.Input ToConnectionAssociationOutput() ConnectionAssociationOutput ToConnectionAssociationOutputWithContext(ctx context.Context) ConnectionAssociationOutput }
type ConnectionAssociationOutput ¶ added in v3.13.0
type ConnectionAssociationOutput struct {
*pulumi.OutputState
}
func (ConnectionAssociationOutput) ElementType ¶ added in v3.13.0
func (ConnectionAssociationOutput) ElementType() reflect.Type
func (ConnectionAssociationOutput) ToConnectionAssociationOutput ¶ added in v3.13.0
func (o ConnectionAssociationOutput) ToConnectionAssociationOutput() ConnectionAssociationOutput
func (ConnectionAssociationOutput) ToConnectionAssociationOutputWithContext ¶ added in v3.13.0
func (o ConnectionAssociationOutput) ToConnectionAssociationOutputWithContext(ctx context.Context) ConnectionAssociationOutput
type ConnectionAssociationState ¶
type ConnectionAssociationState struct { // The ID of the connection. ConnectionId pulumi.StringPtrInput // The ID of the LAG with which to associate the connection. LagId pulumi.StringPtrInput }
func (ConnectionAssociationState) ElementType ¶
func (ConnectionAssociationState) ElementType() reflect.Type
type ConnectionInput ¶ added in v3.13.0
type ConnectionInput interface { pulumi.Input ToConnectionOutput() ConnectionOutput ToConnectionOutputWithContext(ctx context.Context) ConnectionOutput }
type ConnectionOutput ¶ added in v3.13.0
type ConnectionOutput struct {
*pulumi.OutputState
}
func (ConnectionOutput) ElementType ¶ added in v3.13.0
func (ConnectionOutput) ElementType() reflect.Type
func (ConnectionOutput) ToConnectionOutput ¶ added in v3.13.0
func (o ConnectionOutput) ToConnectionOutput() ConnectionOutput
func (ConnectionOutput) ToConnectionOutputWithContext ¶ added in v3.13.0
func (o ConnectionOutput) ToConnectionOutputWithContext(ctx context.Context) ConnectionOutput
type ConnectionState ¶
type ConnectionState struct { // The ARN of the connection. Arn pulumi.StringPtrInput // The Direct Connect endpoint on which the physical connection terminates. AwsDevice pulumi.StringPtrInput // The bandwidth of the connection. Valid values for dedicated connections: 1Gbps, 10Gbps. Valid values for hosted connections: 50Mbps, 100Mbps, 200Mbps, 300Mbps, 400Mbps, 500Mbps, 1Gbps, 2Gbps, 5Gbps and 10Gbps. Case sensitive. Bandwidth pulumi.StringPtrInput // Indicates whether the connection supports a secondary BGP peer in the same address family (IPv4/IPv6). HasLogicalRedundancy pulumi.StringPtrInput // Boolean value representing if jumbo frames have been enabled for this connection. JumboFrameCapable pulumi.BoolPtrInput // The AWS Direct Connect location where the connection is located. See [DescribeLocations](https://docs.aws.amazon.com/directconnect/latest/APIReference/API_DescribeLocations.html) for the list of AWS Direct Connect locations. Use `locationCode`. Location pulumi.StringPtrInput // The name of the connection. Name pulumi.StringPtrInput // A map of tags to assign to the resource. Tags pulumi.StringMapInput }
func (ConnectionState) ElementType ¶
func (ConnectionState) ElementType() reflect.Type
type Gateway ¶
type Gateway struct { pulumi.CustomResourceState // The ASN to be configured on the Amazon side of the connection. The ASN must be in the private range of 64,512 to 65,534 or 4,200,000,000 to 4,294,967,294. AmazonSideAsn pulumi.StringOutput `pulumi:"amazonSideAsn"` // The name of the connection. Name pulumi.StringOutput `pulumi:"name"` // AWS Account ID of the gateway. OwnerAccountId pulumi.StringOutput `pulumi:"ownerAccountId"` }
Provides a Direct Connect Gateway.
## Example Usage
```go package main
import (
"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/directconnect" "github.com/pulumi/pulumi/sdk/v2/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := directconnect.NewGateway(ctx, "example", &directconnect.GatewayArgs{ AmazonSideAsn: pulumi.String("64512"), }) if err != nil { return err } return nil }) }
```
## Import
Direct Connect Gateways can be imported using the `gateway id`, e.g.
```sh
$ pulumi import aws:directconnect/gateway:Gateway test abcd1234-dcba-5678-be23-cdef9876ab45
```
func GetGateway ¶
func GetGateway(ctx *pulumi.Context, name string, id pulumi.IDInput, state *GatewayState, opts ...pulumi.ResourceOption) (*Gateway, error)
GetGateway gets an existing Gateway 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 NewGateway ¶
func NewGateway(ctx *pulumi.Context, name string, args *GatewayArgs, opts ...pulumi.ResourceOption) (*Gateway, error)
NewGateway registers a new resource with the given unique name, arguments, and options.
func (Gateway) ElementType ¶ added in v3.13.0
func (Gateway) ToGatewayOutput ¶ added in v3.13.0
func (i Gateway) ToGatewayOutput() GatewayOutput
func (Gateway) ToGatewayOutputWithContext ¶ added in v3.13.0
func (i Gateway) ToGatewayOutputWithContext(ctx context.Context) GatewayOutput
type GatewayArgs ¶
type GatewayArgs struct { // The ASN to be configured on the Amazon side of the connection. The ASN must be in the private range of 64,512 to 65,534 or 4,200,000,000 to 4,294,967,294. AmazonSideAsn pulumi.StringInput // The name of the connection. Name pulumi.StringPtrInput }
The set of arguments for constructing a Gateway resource.
func (GatewayArgs) ElementType ¶
func (GatewayArgs) ElementType() reflect.Type
type GatewayAssociation ¶
type GatewayAssociation struct { pulumi.CustomResourceState // VPC prefixes (CIDRs) to advertise to the Direct Connect gateway. Defaults to the CIDR block of the VPC associated with the Virtual Gateway. To enable drift detection, must be configured. AllowedPrefixes pulumi.StringArrayOutput `pulumi:"allowedPrefixes"` // The ID of the VGW or transit gateway with which to associate the Direct Connect gateway. // Used for single account Direct Connect gateway associations. AssociatedGatewayId pulumi.StringOutput `pulumi:"associatedGatewayId"` // The ID of the AWS account that owns the VGW or transit gateway with which to associate the Direct Connect gateway. // Used for cross-account Direct Connect gateway associations. AssociatedGatewayOwnerAccountId pulumi.StringOutput `pulumi:"associatedGatewayOwnerAccountId"` // The type of the associated gateway, `transitGateway` or `virtualPrivateGateway`. AssociatedGatewayType pulumi.StringOutput `pulumi:"associatedGatewayType"` // The ID of the Direct Connect gateway association. DxGatewayAssociationId pulumi.StringOutput `pulumi:"dxGatewayAssociationId"` // The ID of the Direct Connect gateway. DxGatewayId pulumi.StringOutput `pulumi:"dxGatewayId"` // The ID of the AWS account that owns the Direct Connect gateway. DxGatewayOwnerAccountId pulumi.StringOutput `pulumi:"dxGatewayOwnerAccountId"` // The ID of the Direct Connect gateway association proposal. // Used for cross-account Direct Connect gateway associations. ProposalId pulumi.StringPtrOutput `pulumi:"proposalId"` }
Associates a Direct Connect Gateway with a VGW or transit gateway.
To create a cross-account association, create an `directconnect.GatewayAssociationProposal` resource in the AWS account that owns the VGW or transit gateway and then accept the proposal in the AWS account that owns the Direct Connect Gateway by creating an `directconnect.GatewayAssociation` resource with the `proposalId` and `associatedGatewayOwnerAccountId` attributes set.
## Example Usage ### VPN Gateway Association
```go package main
import (
"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/directconnect" "github.com/pulumi/pulumi-aws/sdk/v3/go/aws/ec2" "github.com/pulumi/pulumi/sdk/v2/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { exampleGateway, err := directconnect.NewGateway(ctx, "exampleGateway", &directconnect.GatewayArgs{ AmazonSideAsn: pulumi.String("64512"), }) if err != nil { return err } exampleVpc, err := ec2.NewVpc(ctx, "exampleVpc", &ec2.VpcArgs{ CidrBlock: pulumi.String("10.255.255.0/28"), }) if err != nil { return err } exampleVpnGateway, err := ec2.NewVpnGateway(ctx, "exampleVpnGateway", &ec2.VpnGatewayArgs{ VpcId: exampleVpc.ID(), }) if err != nil { return err } _, err = directconnect.NewGatewayAssociation(ctx, "exampleGatewayAssociation", &directconnect.GatewayAssociationArgs{ DxGatewayId: exampleGateway.ID(), AssociatedGatewayId: exampleVpnGateway.ID(), }) if err != nil { return err } return nil }) }
``` ### Transit Gateway Association
```go package main
import (
"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/directconnect" "github.com/pulumi/pulumi-aws/sdk/v3/go/aws/ec2transitgateway" "github.com/pulumi/pulumi/sdk/v2/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { exampleGateway, err := directconnect.NewGateway(ctx, "exampleGateway", &directconnect.GatewayArgs{ AmazonSideAsn: pulumi.String("64512"), }) if err != nil { return err } exampleTransitGateway, err := ec2transitgateway.NewTransitGateway(ctx, "exampleTransitGateway", nil) if err != nil { return err } _, err = directconnect.NewGatewayAssociation(ctx, "exampleGatewayAssociation", &directconnect.GatewayAssociationArgs{ DxGatewayId: exampleGateway.ID(), AssociatedGatewayId: exampleTransitGateway.ID(), AllowedPrefixes: pulumi.StringArray{ pulumi.String("10.255.255.0/30"), pulumi.String("10.255.255.8/30"), }, }) if err != nil { return err } return nil }) }
``` ### Allowed Prefixes
```go package main
import (
"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/directconnect" "github.com/pulumi/pulumi-aws/sdk/v3/go/aws/ec2" "github.com/pulumi/pulumi/sdk/v2/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { exampleGateway, err := directconnect.NewGateway(ctx, "exampleGateway", &directconnect.GatewayArgs{ AmazonSideAsn: pulumi.String("64512"), }) if err != nil { return err } exampleVpc, err := ec2.NewVpc(ctx, "exampleVpc", &ec2.VpcArgs{ CidrBlock: pulumi.String("10.255.255.0/28"), }) if err != nil { return err } exampleVpnGateway, err := ec2.NewVpnGateway(ctx, "exampleVpnGateway", &ec2.VpnGatewayArgs{ VpcId: exampleVpc.ID(), }) if err != nil { return err } _, err = directconnect.NewGatewayAssociation(ctx, "exampleGatewayAssociation", &directconnect.GatewayAssociationArgs{ DxGatewayId: exampleGateway.ID(), AssociatedGatewayId: exampleVpnGateway.ID(), AllowedPrefixes: pulumi.StringArray{ pulumi.String("210.52.109.0/24"), pulumi.String("175.45.176.0/22"), }, }) if err != nil { return err } return nil }) }
```
## Import
Direct Connect gateway associations can be imported using `dx_gateway_id` together with `associated_gateway_id`, e.g.
```sh
$ pulumi import aws:directconnect/gatewayAssociation:GatewayAssociation example dxgw-12345678/vgw-98765432
```
func GetGatewayAssociation ¶
func GetGatewayAssociation(ctx *pulumi.Context, name string, id pulumi.IDInput, state *GatewayAssociationState, opts ...pulumi.ResourceOption) (*GatewayAssociation, error)
GetGatewayAssociation gets an existing GatewayAssociation 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 NewGatewayAssociation ¶
func NewGatewayAssociation(ctx *pulumi.Context, name string, args *GatewayAssociationArgs, opts ...pulumi.ResourceOption) (*GatewayAssociation, error)
NewGatewayAssociation registers a new resource with the given unique name, arguments, and options.
func (GatewayAssociation) ElementType ¶ added in v3.13.0
func (GatewayAssociation) ElementType() reflect.Type
func (GatewayAssociation) ToGatewayAssociationOutput ¶ added in v3.13.0
func (i GatewayAssociation) ToGatewayAssociationOutput() GatewayAssociationOutput
func (GatewayAssociation) ToGatewayAssociationOutputWithContext ¶ added in v3.13.0
func (i GatewayAssociation) ToGatewayAssociationOutputWithContext(ctx context.Context) GatewayAssociationOutput
type GatewayAssociationArgs ¶
type GatewayAssociationArgs struct { // VPC prefixes (CIDRs) to advertise to the Direct Connect gateway. Defaults to the CIDR block of the VPC associated with the Virtual Gateway. To enable drift detection, must be configured. AllowedPrefixes pulumi.StringArrayInput // The ID of the VGW or transit gateway with which to associate the Direct Connect gateway. // Used for single account Direct Connect gateway associations. AssociatedGatewayId pulumi.StringPtrInput // The ID of the AWS account that owns the VGW or transit gateway with which to associate the Direct Connect gateway. // Used for cross-account Direct Connect gateway associations. AssociatedGatewayOwnerAccountId pulumi.StringPtrInput // The ID of the Direct Connect gateway. DxGatewayId pulumi.StringInput // The ID of the Direct Connect gateway association proposal. // Used for cross-account Direct Connect gateway associations. ProposalId pulumi.StringPtrInput }
The set of arguments for constructing a GatewayAssociation resource.
func (GatewayAssociationArgs) ElementType ¶
func (GatewayAssociationArgs) ElementType() reflect.Type
type GatewayAssociationInput ¶ added in v3.13.0
type GatewayAssociationInput interface { pulumi.Input ToGatewayAssociationOutput() GatewayAssociationOutput ToGatewayAssociationOutputWithContext(ctx context.Context) GatewayAssociationOutput }
type GatewayAssociationOutput ¶ added in v3.13.0
type GatewayAssociationOutput struct {
*pulumi.OutputState
}
func (GatewayAssociationOutput) ElementType ¶ added in v3.13.0
func (GatewayAssociationOutput) ElementType() reflect.Type
func (GatewayAssociationOutput) ToGatewayAssociationOutput ¶ added in v3.13.0
func (o GatewayAssociationOutput) ToGatewayAssociationOutput() GatewayAssociationOutput
func (GatewayAssociationOutput) ToGatewayAssociationOutputWithContext ¶ added in v3.13.0
func (o GatewayAssociationOutput) ToGatewayAssociationOutputWithContext(ctx context.Context) GatewayAssociationOutput
type GatewayAssociationProposal ¶
type GatewayAssociationProposal struct { pulumi.CustomResourceState // VPC prefixes (CIDRs) to advertise to the Direct Connect gateway. Defaults to the CIDR block of the VPC associated with the Virtual Gateway. To enable drift detection, must be configured. AllowedPrefixes pulumi.StringArrayOutput `pulumi:"allowedPrefixes"` // The ID of the VGW or transit gateway with which to associate the Direct Connect gateway. AssociatedGatewayId pulumi.StringOutput `pulumi:"associatedGatewayId"` // The ID of the AWS account that owns the VGW or transit gateway with which to associate the Direct Connect gateway. AssociatedGatewayOwnerAccountId pulumi.StringOutput `pulumi:"associatedGatewayOwnerAccountId"` // The type of the associated gateway, `transitGateway` or `virtualPrivateGateway`. AssociatedGatewayType pulumi.StringOutput `pulumi:"associatedGatewayType"` // Direct Connect Gateway identifier. DxGatewayId pulumi.StringOutput `pulumi:"dxGatewayId"` // AWS Account identifier of the Direct Connect Gateway's owner. DxGatewayOwnerAccountId pulumi.StringOutput `pulumi:"dxGatewayOwnerAccountId"` }
Manages a Direct Connect Gateway Association Proposal, typically for enabling cross-account associations. For single account associations, see the `directconnect.GatewayAssociation` resource.
## Example Usage
```go package main
import (
"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/directconnect" "github.com/pulumi/pulumi/sdk/v2/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := directconnect.NewGatewayAssociationProposal(ctx, "example", &directconnect.GatewayAssociationProposalArgs{ DxGatewayId: pulumi.Any(aws_dx_gateway.Example.Id), DxGatewayOwnerAccountId: pulumi.Any(aws_dx_gateway.Example.Owner_account_id), AssociatedGatewayId: pulumi.Any(aws_vpn_gateway.Example.Id), }) if err != nil { return err } return nil }) }
```
## Import
Direct Connect Gateway Association Proposals can be imported using the proposal ID, e.g.
```sh
$ pulumi import aws:directconnect/gatewayAssociationProposal:GatewayAssociationProposal example ac90e981-b718-4364-872d-65478c84fafe
```
func GetGatewayAssociationProposal ¶
func GetGatewayAssociationProposal(ctx *pulumi.Context, name string, id pulumi.IDInput, state *GatewayAssociationProposalState, opts ...pulumi.ResourceOption) (*GatewayAssociationProposal, error)
GetGatewayAssociationProposal gets an existing GatewayAssociationProposal 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 NewGatewayAssociationProposal ¶
func NewGatewayAssociationProposal(ctx *pulumi.Context, name string, args *GatewayAssociationProposalArgs, opts ...pulumi.ResourceOption) (*GatewayAssociationProposal, error)
NewGatewayAssociationProposal registers a new resource with the given unique name, arguments, and options.
func (GatewayAssociationProposal) ElementType ¶ added in v3.13.0
func (GatewayAssociationProposal) ElementType() reflect.Type
func (GatewayAssociationProposal) ToGatewayAssociationProposalOutput ¶ added in v3.13.0
func (i GatewayAssociationProposal) ToGatewayAssociationProposalOutput() GatewayAssociationProposalOutput
func (GatewayAssociationProposal) ToGatewayAssociationProposalOutputWithContext ¶ added in v3.13.0
func (i GatewayAssociationProposal) ToGatewayAssociationProposalOutputWithContext(ctx context.Context) GatewayAssociationProposalOutput
type GatewayAssociationProposalArgs ¶
type GatewayAssociationProposalArgs struct { // VPC prefixes (CIDRs) to advertise to the Direct Connect gateway. Defaults to the CIDR block of the VPC associated with the Virtual Gateway. To enable drift detection, must be configured. AllowedPrefixes pulumi.StringArrayInput // The ID of the VGW or transit gateway with which to associate the Direct Connect gateway. AssociatedGatewayId pulumi.StringInput // Direct Connect Gateway identifier. DxGatewayId pulumi.StringInput // AWS Account identifier of the Direct Connect Gateway's owner. DxGatewayOwnerAccountId pulumi.StringInput }
The set of arguments for constructing a GatewayAssociationProposal resource.
func (GatewayAssociationProposalArgs) ElementType ¶
func (GatewayAssociationProposalArgs) ElementType() reflect.Type
type GatewayAssociationProposalInput ¶ added in v3.13.0
type GatewayAssociationProposalInput interface { pulumi.Input ToGatewayAssociationProposalOutput() GatewayAssociationProposalOutput ToGatewayAssociationProposalOutputWithContext(ctx context.Context) GatewayAssociationProposalOutput }
type GatewayAssociationProposalOutput ¶ added in v3.13.0
type GatewayAssociationProposalOutput struct {
*pulumi.OutputState
}
func (GatewayAssociationProposalOutput) ElementType ¶ added in v3.13.0
func (GatewayAssociationProposalOutput) ElementType() reflect.Type
func (GatewayAssociationProposalOutput) ToGatewayAssociationProposalOutput ¶ added in v3.13.0
func (o GatewayAssociationProposalOutput) ToGatewayAssociationProposalOutput() GatewayAssociationProposalOutput
func (GatewayAssociationProposalOutput) ToGatewayAssociationProposalOutputWithContext ¶ added in v3.13.0
func (o GatewayAssociationProposalOutput) ToGatewayAssociationProposalOutputWithContext(ctx context.Context) GatewayAssociationProposalOutput
type GatewayAssociationProposalState ¶
type GatewayAssociationProposalState struct { // VPC prefixes (CIDRs) to advertise to the Direct Connect gateway. Defaults to the CIDR block of the VPC associated with the Virtual Gateway. To enable drift detection, must be configured. AllowedPrefixes pulumi.StringArrayInput // The ID of the VGW or transit gateway with which to associate the Direct Connect gateway. AssociatedGatewayId pulumi.StringPtrInput // The ID of the AWS account that owns the VGW or transit gateway with which to associate the Direct Connect gateway. AssociatedGatewayOwnerAccountId pulumi.StringPtrInput // The type of the associated gateway, `transitGateway` or `virtualPrivateGateway`. AssociatedGatewayType pulumi.StringPtrInput // Direct Connect Gateway identifier. DxGatewayId pulumi.StringPtrInput // AWS Account identifier of the Direct Connect Gateway's owner. DxGatewayOwnerAccountId pulumi.StringPtrInput }
func (GatewayAssociationProposalState) ElementType ¶
func (GatewayAssociationProposalState) ElementType() reflect.Type
type GatewayAssociationState ¶
type GatewayAssociationState struct { // VPC prefixes (CIDRs) to advertise to the Direct Connect gateway. Defaults to the CIDR block of the VPC associated with the Virtual Gateway. To enable drift detection, must be configured. AllowedPrefixes pulumi.StringArrayInput // The ID of the VGW or transit gateway with which to associate the Direct Connect gateway. // Used for single account Direct Connect gateway associations. AssociatedGatewayId pulumi.StringPtrInput // The ID of the AWS account that owns the VGW or transit gateway with which to associate the Direct Connect gateway. // Used for cross-account Direct Connect gateway associations. AssociatedGatewayOwnerAccountId pulumi.StringPtrInput // The type of the associated gateway, `transitGateway` or `virtualPrivateGateway`. AssociatedGatewayType pulumi.StringPtrInput // The ID of the Direct Connect gateway association. DxGatewayAssociationId pulumi.StringPtrInput // The ID of the Direct Connect gateway. DxGatewayId pulumi.StringPtrInput // The ID of the AWS account that owns the Direct Connect gateway. DxGatewayOwnerAccountId pulumi.StringPtrInput // The ID of the Direct Connect gateway association proposal. // Used for cross-account Direct Connect gateway associations. ProposalId pulumi.StringPtrInput }
func (GatewayAssociationState) ElementType ¶
func (GatewayAssociationState) ElementType() reflect.Type
type GatewayInput ¶ added in v3.13.0
type GatewayInput interface { pulumi.Input ToGatewayOutput() GatewayOutput ToGatewayOutputWithContext(ctx context.Context) GatewayOutput }
type GatewayOutput ¶ added in v3.13.0
type GatewayOutput struct {
*pulumi.OutputState
}
func (GatewayOutput) ElementType ¶ added in v3.13.0
func (GatewayOutput) ElementType() reflect.Type
func (GatewayOutput) ToGatewayOutput ¶ added in v3.13.0
func (o GatewayOutput) ToGatewayOutput() GatewayOutput
func (GatewayOutput) ToGatewayOutputWithContext ¶ added in v3.13.0
func (o GatewayOutput) ToGatewayOutputWithContext(ctx context.Context) GatewayOutput
type GatewayState ¶
type GatewayState struct { // The ASN to be configured on the Amazon side of the connection. The ASN must be in the private range of 64,512 to 65,534 or 4,200,000,000 to 4,294,967,294. AmazonSideAsn pulumi.StringPtrInput // The name of the connection. Name pulumi.StringPtrInput // AWS Account ID of the gateway. OwnerAccountId pulumi.StringPtrInput }
func (GatewayState) ElementType ¶
func (GatewayState) ElementType() reflect.Type
type HostedPrivateVirtualInterface ¶
type HostedPrivateVirtualInterface struct { pulumi.CustomResourceState // The address family for the BGP peer. ` ipv4 ` or `ipv6`. AddressFamily pulumi.StringOutput `pulumi:"addressFamily"` // The IPv4 CIDR address to use to send traffic to Amazon. Required for IPv4 BGP peers. AmazonAddress pulumi.StringOutput `pulumi:"amazonAddress"` AmazonSideAsn pulumi.StringOutput `pulumi:"amazonSideAsn"` // The ARN of the virtual interface. Arn pulumi.StringOutput `pulumi:"arn"` // The Direct Connect endpoint on which the virtual interface terminates. AwsDevice pulumi.StringOutput `pulumi:"awsDevice"` // The autonomous system (AS) number for Border Gateway Protocol (BGP) configuration. BgpAsn pulumi.IntOutput `pulumi:"bgpAsn"` // The authentication key for BGP configuration. BgpAuthKey pulumi.StringOutput `pulumi:"bgpAuthKey"` // The ID of the Direct Connect connection (or LAG) on which to create the virtual interface. ConnectionId pulumi.StringOutput `pulumi:"connectionId"` // The IPv4 CIDR destination address to which Amazon should send traffic. Required for IPv4 BGP peers. CustomerAddress pulumi.StringOutput `pulumi:"customerAddress"` // Indicates whether jumbo frames (9001 MTU) are supported. JumboFrameCapable pulumi.BoolOutput `pulumi:"jumboFrameCapable"` // The maximum transmission unit (MTU) is the size, in bytes, of the largest permissible packet that can be passed over the connection. The MTU of a virtual private interface can be either `1500` or `9001` (jumbo frames). Default is `1500`. Mtu pulumi.IntPtrOutput `pulumi:"mtu"` // The name for the virtual interface. Name pulumi.StringOutput `pulumi:"name"` // The AWS account that will own the new virtual interface. OwnerAccountId pulumi.StringOutput `pulumi:"ownerAccountId"` // The VLAN ID. Vlan pulumi.IntOutput `pulumi:"vlan"` }
Provides a Direct Connect hosted private virtual interface resource. This resource represents the allocator's side of the hosted virtual interface. A hosted virtual interface is a virtual interface that is owned by another AWS account.
## Example Usage
```go package main
import (
"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/directconnect" "github.com/pulumi/pulumi/sdk/v2/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := directconnect.NewHostedPrivateVirtualInterface(ctx, "foo", &directconnect.HostedPrivateVirtualInterfaceArgs{ AddressFamily: pulumi.String("ipv4"), BgpAsn: pulumi.Int(65352), ConnectionId: pulumi.String("dxcon-zzzzzzzz"), Vlan: pulumi.Int(4094), }) if err != nil { return err } return nil }) }
```
## Import
Direct Connect hosted private virtual interfaces can be imported using the `vif id`, e.g.
```sh
$ pulumi import aws:directconnect/hostedPrivateVirtualInterface:HostedPrivateVirtualInterface test dxvif-33cc44dd
```
func GetHostedPrivateVirtualInterface ¶
func GetHostedPrivateVirtualInterface(ctx *pulumi.Context, name string, id pulumi.IDInput, state *HostedPrivateVirtualInterfaceState, opts ...pulumi.ResourceOption) (*HostedPrivateVirtualInterface, error)
GetHostedPrivateVirtualInterface gets an existing HostedPrivateVirtualInterface 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 NewHostedPrivateVirtualInterface ¶
func NewHostedPrivateVirtualInterface(ctx *pulumi.Context, name string, args *HostedPrivateVirtualInterfaceArgs, opts ...pulumi.ResourceOption) (*HostedPrivateVirtualInterface, error)
NewHostedPrivateVirtualInterface registers a new resource with the given unique name, arguments, and options.
func (HostedPrivateVirtualInterface) ElementType ¶ added in v3.13.0
func (HostedPrivateVirtualInterface) ElementType() reflect.Type
func (HostedPrivateVirtualInterface) ToHostedPrivateVirtualInterfaceOutput ¶ added in v3.13.0
func (i HostedPrivateVirtualInterface) ToHostedPrivateVirtualInterfaceOutput() HostedPrivateVirtualInterfaceOutput
func (HostedPrivateVirtualInterface) ToHostedPrivateVirtualInterfaceOutputWithContext ¶ added in v3.13.0
func (i HostedPrivateVirtualInterface) ToHostedPrivateVirtualInterfaceOutputWithContext(ctx context.Context) HostedPrivateVirtualInterfaceOutput
type HostedPrivateVirtualInterfaceAccepter ¶
type HostedPrivateVirtualInterfaceAccepter struct { pulumi.CustomResourceState // The ARN of the virtual interface. Arn pulumi.StringOutput `pulumi:"arn"` // The ID of the Direct Connect gateway to which to connect the virtual interface. DxGatewayId pulumi.StringPtrOutput `pulumi:"dxGatewayId"` // A map of tags to assign to the resource. Tags pulumi.StringMapOutput `pulumi:"tags"` // The ID of the Direct Connect virtual interface to accept. VirtualInterfaceId pulumi.StringOutput `pulumi:"virtualInterfaceId"` // The ID of the virtual private gateway to which to connect the virtual interface. VpnGatewayId pulumi.StringPtrOutput `pulumi:"vpnGatewayId"` }
Provides a resource to manage the accepter's side of a Direct Connect hosted private virtual interface. This resource accepts ownership of a private virtual interface created by another AWS account.
## Example Usage
```go package main
import (
"github.com/pulumi/pulumi-aws/sdk/v3/go/aws" "github.com/pulumi/pulumi-aws/sdk/v3/go/aws/directconnect" "github.com/pulumi/pulumi-aws/sdk/v3/go/aws/ec2" "github.com/pulumi/pulumi-aws/sdk/v3/go/aws/providers" "github.com/pulumi/pulumi/sdk/v2/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := providers.Newaws(ctx, "accepter", nil) if err != nil { return err } accepterCallerIdentity, err := aws.GetCallerIdentity(ctx, nil, nil) if err != nil { return err } vpnGw, err := ec2.NewVpnGateway(ctx, "vpnGw", nil, pulumi.Provider(aws.Accepter)) if err != nil { return err } creator, err := directconnect.NewHostedPrivateVirtualInterface(ctx, "creator", &directconnect.HostedPrivateVirtualInterfaceArgs{ ConnectionId: pulumi.String("dxcon-zzzzzzzz"), OwnerAccountId: pulumi.String(accepterCallerIdentity.AccountId), Vlan: pulumi.Int(4094), AddressFamily: pulumi.String("ipv4"), BgpAsn: pulumi.Int(65352), }, pulumi.DependsOn([]pulumi.Resource{ vpnGw, })) if err != nil { return err } _, err = directconnect.NewHostedPrivateVirtualInterfaceAccepter(ctx, "accepterHostedPrivateVirtualInterfaceAccepter", &directconnect.HostedPrivateVirtualInterfaceAccepterArgs{ VirtualInterfaceId: creator.ID(), VpnGatewayId: vpnGw.ID(), Tags: pulumi.StringMap{ "Side": pulumi.String("Accepter"), }, }, pulumi.Provider(aws.Accepter)) if err != nil { return err } return nil }) }
```
## Import
Direct Connect hosted private virtual interfaces can be imported using the `vif id`, e.g.
```sh
$ pulumi import aws:directconnect/hostedPrivateVirtualInterfaceAccepter:HostedPrivateVirtualInterfaceAccepter test dxvif-33cc44dd
```
func GetHostedPrivateVirtualInterfaceAccepter ¶
func GetHostedPrivateVirtualInterfaceAccepter(ctx *pulumi.Context, name string, id pulumi.IDInput, state *HostedPrivateVirtualInterfaceAccepterState, opts ...pulumi.ResourceOption) (*HostedPrivateVirtualInterfaceAccepter, error)
GetHostedPrivateVirtualInterfaceAccepter gets an existing HostedPrivateVirtualInterfaceAccepter 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 NewHostedPrivateVirtualInterfaceAccepter ¶
func NewHostedPrivateVirtualInterfaceAccepter(ctx *pulumi.Context, name string, args *HostedPrivateVirtualInterfaceAccepterArgs, opts ...pulumi.ResourceOption) (*HostedPrivateVirtualInterfaceAccepter, error)
NewHostedPrivateVirtualInterfaceAccepter registers a new resource with the given unique name, arguments, and options.
func (HostedPrivateVirtualInterfaceAccepter) ElementType ¶ added in v3.13.0
func (HostedPrivateVirtualInterfaceAccepter) ElementType() reflect.Type
func (HostedPrivateVirtualInterfaceAccepter) ToHostedPrivateVirtualInterfaceAccepterOutput ¶ added in v3.13.0
func (i HostedPrivateVirtualInterfaceAccepter) ToHostedPrivateVirtualInterfaceAccepterOutput() HostedPrivateVirtualInterfaceAccepterOutput
func (HostedPrivateVirtualInterfaceAccepter) ToHostedPrivateVirtualInterfaceAccepterOutputWithContext ¶ added in v3.13.0
func (i HostedPrivateVirtualInterfaceAccepter) ToHostedPrivateVirtualInterfaceAccepterOutputWithContext(ctx context.Context) HostedPrivateVirtualInterfaceAccepterOutput
type HostedPrivateVirtualInterfaceAccepterArgs ¶
type HostedPrivateVirtualInterfaceAccepterArgs struct { // The ID of the Direct Connect gateway to which to connect the virtual interface. DxGatewayId pulumi.StringPtrInput // A map of tags to assign to the resource. Tags pulumi.StringMapInput // The ID of the Direct Connect virtual interface to accept. VirtualInterfaceId pulumi.StringInput // The ID of the virtual private gateway to which to connect the virtual interface. VpnGatewayId pulumi.StringPtrInput }
The set of arguments for constructing a HostedPrivateVirtualInterfaceAccepter resource.
func (HostedPrivateVirtualInterfaceAccepterArgs) ElementType ¶
func (HostedPrivateVirtualInterfaceAccepterArgs) ElementType() reflect.Type
type HostedPrivateVirtualInterfaceAccepterInput ¶ added in v3.13.0
type HostedPrivateVirtualInterfaceAccepterInput interface { pulumi.Input ToHostedPrivateVirtualInterfaceAccepterOutput() HostedPrivateVirtualInterfaceAccepterOutput ToHostedPrivateVirtualInterfaceAccepterOutputWithContext(ctx context.Context) HostedPrivateVirtualInterfaceAccepterOutput }
type HostedPrivateVirtualInterfaceAccepterOutput ¶ added in v3.13.0
type HostedPrivateVirtualInterfaceAccepterOutput struct {
*pulumi.OutputState
}
func (HostedPrivateVirtualInterfaceAccepterOutput) ElementType ¶ added in v3.13.0
func (HostedPrivateVirtualInterfaceAccepterOutput) ElementType() reflect.Type
func (HostedPrivateVirtualInterfaceAccepterOutput) ToHostedPrivateVirtualInterfaceAccepterOutput ¶ added in v3.13.0
func (o HostedPrivateVirtualInterfaceAccepterOutput) ToHostedPrivateVirtualInterfaceAccepterOutput() HostedPrivateVirtualInterfaceAccepterOutput
func (HostedPrivateVirtualInterfaceAccepterOutput) ToHostedPrivateVirtualInterfaceAccepterOutputWithContext ¶ added in v3.13.0
func (o HostedPrivateVirtualInterfaceAccepterOutput) ToHostedPrivateVirtualInterfaceAccepterOutputWithContext(ctx context.Context) HostedPrivateVirtualInterfaceAccepterOutput
type HostedPrivateVirtualInterfaceAccepterState ¶
type HostedPrivateVirtualInterfaceAccepterState struct { // The ARN of the virtual interface. Arn pulumi.StringPtrInput // The ID of the Direct Connect gateway to which to connect the virtual interface. DxGatewayId pulumi.StringPtrInput // A map of tags to assign to the resource. Tags pulumi.StringMapInput // The ID of the Direct Connect virtual interface to accept. VirtualInterfaceId pulumi.StringPtrInput // The ID of the virtual private gateway to which to connect the virtual interface. VpnGatewayId pulumi.StringPtrInput }
func (HostedPrivateVirtualInterfaceAccepterState) ElementType ¶
func (HostedPrivateVirtualInterfaceAccepterState) ElementType() reflect.Type
type HostedPrivateVirtualInterfaceArgs ¶
type HostedPrivateVirtualInterfaceArgs struct { // The address family for the BGP peer. ` ipv4 ` or `ipv6`. AddressFamily pulumi.StringInput // The IPv4 CIDR address to use to send traffic to Amazon. Required for IPv4 BGP peers. AmazonAddress pulumi.StringPtrInput // The autonomous system (AS) number for Border Gateway Protocol (BGP) configuration. BgpAsn pulumi.IntInput // The authentication key for BGP configuration. BgpAuthKey pulumi.StringPtrInput // The ID of the Direct Connect connection (or LAG) on which to create the virtual interface. ConnectionId pulumi.StringInput // The IPv4 CIDR destination address to which Amazon should send traffic. Required for IPv4 BGP peers. CustomerAddress pulumi.StringPtrInput // The maximum transmission unit (MTU) is the size, in bytes, of the largest permissible packet that can be passed over the connection. The MTU of a virtual private interface can be either `1500` or `9001` (jumbo frames). Default is `1500`. Mtu pulumi.IntPtrInput // The name for the virtual interface. Name pulumi.StringPtrInput // The AWS account that will own the new virtual interface. OwnerAccountId pulumi.StringInput // The VLAN ID. Vlan pulumi.IntInput }
The set of arguments for constructing a HostedPrivateVirtualInterface resource.
func (HostedPrivateVirtualInterfaceArgs) ElementType ¶
func (HostedPrivateVirtualInterfaceArgs) ElementType() reflect.Type
type HostedPrivateVirtualInterfaceInput ¶ added in v3.13.0
type HostedPrivateVirtualInterfaceInput interface { pulumi.Input ToHostedPrivateVirtualInterfaceOutput() HostedPrivateVirtualInterfaceOutput ToHostedPrivateVirtualInterfaceOutputWithContext(ctx context.Context) HostedPrivateVirtualInterfaceOutput }
type HostedPrivateVirtualInterfaceOutput ¶ added in v3.13.0
type HostedPrivateVirtualInterfaceOutput struct {
*pulumi.OutputState
}
func (HostedPrivateVirtualInterfaceOutput) ElementType ¶ added in v3.13.0
func (HostedPrivateVirtualInterfaceOutput) ElementType() reflect.Type
func (HostedPrivateVirtualInterfaceOutput) ToHostedPrivateVirtualInterfaceOutput ¶ added in v3.13.0
func (o HostedPrivateVirtualInterfaceOutput) ToHostedPrivateVirtualInterfaceOutput() HostedPrivateVirtualInterfaceOutput
func (HostedPrivateVirtualInterfaceOutput) ToHostedPrivateVirtualInterfaceOutputWithContext ¶ added in v3.13.0
func (o HostedPrivateVirtualInterfaceOutput) ToHostedPrivateVirtualInterfaceOutputWithContext(ctx context.Context) HostedPrivateVirtualInterfaceOutput
type HostedPrivateVirtualInterfaceState ¶
type HostedPrivateVirtualInterfaceState struct { // The address family for the BGP peer. ` ipv4 ` or `ipv6`. AddressFamily pulumi.StringPtrInput // The IPv4 CIDR address to use to send traffic to Amazon. Required for IPv4 BGP peers. AmazonAddress pulumi.StringPtrInput AmazonSideAsn pulumi.StringPtrInput // The ARN of the virtual interface. Arn pulumi.StringPtrInput // The Direct Connect endpoint on which the virtual interface terminates. AwsDevice pulumi.StringPtrInput // The autonomous system (AS) number for Border Gateway Protocol (BGP) configuration. BgpAsn pulumi.IntPtrInput // The authentication key for BGP configuration. BgpAuthKey pulumi.StringPtrInput // The ID of the Direct Connect connection (or LAG) on which to create the virtual interface. ConnectionId pulumi.StringPtrInput // The IPv4 CIDR destination address to which Amazon should send traffic. Required for IPv4 BGP peers. CustomerAddress pulumi.StringPtrInput // Indicates whether jumbo frames (9001 MTU) are supported. JumboFrameCapable pulumi.BoolPtrInput // The maximum transmission unit (MTU) is the size, in bytes, of the largest permissible packet that can be passed over the connection. The MTU of a virtual private interface can be either `1500` or `9001` (jumbo frames). Default is `1500`. Mtu pulumi.IntPtrInput // The name for the virtual interface. Name pulumi.StringPtrInput // The AWS account that will own the new virtual interface. OwnerAccountId pulumi.StringPtrInput // The VLAN ID. Vlan pulumi.IntPtrInput }
func (HostedPrivateVirtualInterfaceState) ElementType ¶
func (HostedPrivateVirtualInterfaceState) ElementType() reflect.Type
type HostedPublicVirtualInterface ¶
type HostedPublicVirtualInterface struct { pulumi.CustomResourceState // The address family for the BGP peer. ` ipv4 ` or `ipv6`. AddressFamily pulumi.StringOutput `pulumi:"addressFamily"` // The IPv4 CIDR address to use to send traffic to Amazon. Required for IPv4 BGP peers. AmazonAddress pulumi.StringOutput `pulumi:"amazonAddress"` AmazonSideAsn pulumi.StringOutput `pulumi:"amazonSideAsn"` // The ARN of the virtual interface. Arn pulumi.StringOutput `pulumi:"arn"` // The Direct Connect endpoint on which the virtual interface terminates. AwsDevice pulumi.StringOutput `pulumi:"awsDevice"` // The autonomous system (AS) number for Border Gateway Protocol (BGP) configuration. BgpAsn pulumi.IntOutput `pulumi:"bgpAsn"` // The authentication key for BGP configuration. BgpAuthKey pulumi.StringOutput `pulumi:"bgpAuthKey"` // The ID of the Direct Connect connection (or LAG) on which to create the virtual interface. ConnectionId pulumi.StringOutput `pulumi:"connectionId"` // The IPv4 CIDR destination address to which Amazon should send traffic. Required for IPv4 BGP peers. CustomerAddress pulumi.StringOutput `pulumi:"customerAddress"` // The name for the virtual interface. Name pulumi.StringOutput `pulumi:"name"` // The AWS account that will own the new virtual interface. OwnerAccountId pulumi.StringOutput `pulumi:"ownerAccountId"` // A list of routes to be advertised to the AWS network in this region. RouteFilterPrefixes pulumi.StringArrayOutput `pulumi:"routeFilterPrefixes"` // The VLAN ID. Vlan pulumi.IntOutput `pulumi:"vlan"` }
Provides a Direct Connect hosted public virtual interface resource. This resource represents the allocator's side of the hosted virtual interface. A hosted virtual interface is a virtual interface that is owned by another AWS account.
## Example Usage
```go package main
import (
"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/directconnect" "github.com/pulumi/pulumi/sdk/v2/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := directconnect.NewHostedPublicVirtualInterface(ctx, "foo", &directconnect.HostedPublicVirtualInterfaceArgs{ AddressFamily: pulumi.String("ipv4"), AmazonAddress: pulumi.String("175.45.176.2/30"), BgpAsn: pulumi.Int(65352), ConnectionId: pulumi.String("dxcon-zzzzzzzz"), CustomerAddress: pulumi.String("175.45.176.1/30"), RouteFilterPrefixes: pulumi.StringArray{ pulumi.String("210.52.109.0/24"), pulumi.String("175.45.176.0/22"), }, Vlan: pulumi.Int(4094), }) if err != nil { return err } return nil }) }
```
## Import
Direct Connect hosted public virtual interfaces can be imported using the `vif id`, e.g.
```sh
$ pulumi import aws:directconnect/hostedPublicVirtualInterface:HostedPublicVirtualInterface test dxvif-33cc44dd
```
func GetHostedPublicVirtualInterface ¶
func GetHostedPublicVirtualInterface(ctx *pulumi.Context, name string, id pulumi.IDInput, state *HostedPublicVirtualInterfaceState, opts ...pulumi.ResourceOption) (*HostedPublicVirtualInterface, error)
GetHostedPublicVirtualInterface gets an existing HostedPublicVirtualInterface 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 NewHostedPublicVirtualInterface ¶
func NewHostedPublicVirtualInterface(ctx *pulumi.Context, name string, args *HostedPublicVirtualInterfaceArgs, opts ...pulumi.ResourceOption) (*HostedPublicVirtualInterface, error)
NewHostedPublicVirtualInterface registers a new resource with the given unique name, arguments, and options.
func (HostedPublicVirtualInterface) ElementType ¶ added in v3.13.0
func (HostedPublicVirtualInterface) ElementType() reflect.Type
func (HostedPublicVirtualInterface) ToHostedPublicVirtualInterfaceOutput ¶ added in v3.13.0
func (i HostedPublicVirtualInterface) ToHostedPublicVirtualInterfaceOutput() HostedPublicVirtualInterfaceOutput
func (HostedPublicVirtualInterface) ToHostedPublicVirtualInterfaceOutputWithContext ¶ added in v3.13.0
func (i HostedPublicVirtualInterface) ToHostedPublicVirtualInterfaceOutputWithContext(ctx context.Context) HostedPublicVirtualInterfaceOutput
type HostedPublicVirtualInterfaceAccepter ¶
type HostedPublicVirtualInterfaceAccepter struct { pulumi.CustomResourceState // The ARN of the virtual interface. Arn pulumi.StringOutput `pulumi:"arn"` // A map of tags to assign to the resource. Tags pulumi.StringMapOutput `pulumi:"tags"` // The ID of the Direct Connect virtual interface to accept. VirtualInterfaceId pulumi.StringOutput `pulumi:"virtualInterfaceId"` }
Provides a resource to manage the accepter's side of a Direct Connect hosted public virtual interface. This resource accepts ownership of a public virtual interface created by another AWS account.
## Example Usage
```go package main
import (
"github.com/pulumi/pulumi-aws/sdk/v3/go/aws" "github.com/pulumi/pulumi-aws/sdk/v3/go/aws/directconnect" "github.com/pulumi/pulumi-aws/sdk/v3/go/aws/providers" "github.com/pulumi/pulumi/sdk/v2/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := providers.Newaws(ctx, "accepter", nil) if err != nil { return err } accepterCallerIdentity, err := aws.GetCallerIdentity(ctx, nil, nil) if err != nil { return err } creator, err := directconnect.NewHostedPublicVirtualInterface(ctx, "creator", &directconnect.HostedPublicVirtualInterfaceArgs{ ConnectionId: pulumi.String("dxcon-zzzzzzzz"), OwnerAccountId: pulumi.String(accepterCallerIdentity.AccountId), Vlan: pulumi.Int(4094), AddressFamily: pulumi.String("ipv4"), BgpAsn: pulumi.Int(65352), CustomerAddress: pulumi.String("175.45.176.1/30"), AmazonAddress: pulumi.String("175.45.176.2/30"), RouteFilterPrefixes: pulumi.StringArray{ pulumi.String("210.52.109.0/24"), pulumi.String("175.45.176.0/22"), }, }) if err != nil { return err } _, err = directconnect.NewHostedPublicVirtualInterfaceAccepter(ctx, "accepterHostedPublicVirtualInterfaceAccepter", &directconnect.HostedPublicVirtualInterfaceAccepterArgs{ VirtualInterfaceId: creator.ID(), Tags: pulumi.StringMap{ "Side": pulumi.String("Accepter"), }, }, pulumi.Provider(aws.Accepter)) if err != nil { return err } return nil }) }
```
## Import
Direct Connect hosted public virtual interfaces can be imported using the `vif id`, e.g.
```sh
$ pulumi import aws:directconnect/hostedPublicVirtualInterfaceAccepter:HostedPublicVirtualInterfaceAccepter test dxvif-33cc44dd
```
func GetHostedPublicVirtualInterfaceAccepter ¶
func GetHostedPublicVirtualInterfaceAccepter(ctx *pulumi.Context, name string, id pulumi.IDInput, state *HostedPublicVirtualInterfaceAccepterState, opts ...pulumi.ResourceOption) (*HostedPublicVirtualInterfaceAccepter, error)
GetHostedPublicVirtualInterfaceAccepter gets an existing HostedPublicVirtualInterfaceAccepter 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 NewHostedPublicVirtualInterfaceAccepter ¶
func NewHostedPublicVirtualInterfaceAccepter(ctx *pulumi.Context, name string, args *HostedPublicVirtualInterfaceAccepterArgs, opts ...pulumi.ResourceOption) (*HostedPublicVirtualInterfaceAccepter, error)
NewHostedPublicVirtualInterfaceAccepter registers a new resource with the given unique name, arguments, and options.
func (HostedPublicVirtualInterfaceAccepter) ElementType ¶ added in v3.13.0
func (HostedPublicVirtualInterfaceAccepter) ElementType() reflect.Type
func (HostedPublicVirtualInterfaceAccepter) ToHostedPublicVirtualInterfaceAccepterOutput ¶ added in v3.13.0
func (i HostedPublicVirtualInterfaceAccepter) ToHostedPublicVirtualInterfaceAccepterOutput() HostedPublicVirtualInterfaceAccepterOutput
func (HostedPublicVirtualInterfaceAccepter) ToHostedPublicVirtualInterfaceAccepterOutputWithContext ¶ added in v3.13.0
func (i HostedPublicVirtualInterfaceAccepter) ToHostedPublicVirtualInterfaceAccepterOutputWithContext(ctx context.Context) HostedPublicVirtualInterfaceAccepterOutput
type HostedPublicVirtualInterfaceAccepterArgs ¶
type HostedPublicVirtualInterfaceAccepterArgs struct { // A map of tags to assign to the resource. Tags pulumi.StringMapInput // The ID of the Direct Connect virtual interface to accept. VirtualInterfaceId pulumi.StringInput }
The set of arguments for constructing a HostedPublicVirtualInterfaceAccepter resource.
func (HostedPublicVirtualInterfaceAccepterArgs) ElementType ¶
func (HostedPublicVirtualInterfaceAccepterArgs) ElementType() reflect.Type
type HostedPublicVirtualInterfaceAccepterInput ¶ added in v3.13.0
type HostedPublicVirtualInterfaceAccepterInput interface { pulumi.Input ToHostedPublicVirtualInterfaceAccepterOutput() HostedPublicVirtualInterfaceAccepterOutput ToHostedPublicVirtualInterfaceAccepterOutputWithContext(ctx context.Context) HostedPublicVirtualInterfaceAccepterOutput }
type HostedPublicVirtualInterfaceAccepterOutput ¶ added in v3.13.0
type HostedPublicVirtualInterfaceAccepterOutput struct {
*pulumi.OutputState
}
func (HostedPublicVirtualInterfaceAccepterOutput) ElementType ¶ added in v3.13.0
func (HostedPublicVirtualInterfaceAccepterOutput) ElementType() reflect.Type
func (HostedPublicVirtualInterfaceAccepterOutput) ToHostedPublicVirtualInterfaceAccepterOutput ¶ added in v3.13.0
func (o HostedPublicVirtualInterfaceAccepterOutput) ToHostedPublicVirtualInterfaceAccepterOutput() HostedPublicVirtualInterfaceAccepterOutput
func (HostedPublicVirtualInterfaceAccepterOutput) ToHostedPublicVirtualInterfaceAccepterOutputWithContext ¶ added in v3.13.0
func (o HostedPublicVirtualInterfaceAccepterOutput) ToHostedPublicVirtualInterfaceAccepterOutputWithContext(ctx context.Context) HostedPublicVirtualInterfaceAccepterOutput
type HostedPublicVirtualInterfaceAccepterState ¶
type HostedPublicVirtualInterfaceAccepterState struct { // The ARN of the virtual interface. Arn pulumi.StringPtrInput // A map of tags to assign to the resource. Tags pulumi.StringMapInput // The ID of the Direct Connect virtual interface to accept. VirtualInterfaceId pulumi.StringPtrInput }
func (HostedPublicVirtualInterfaceAccepterState) ElementType ¶
func (HostedPublicVirtualInterfaceAccepterState) ElementType() reflect.Type
type HostedPublicVirtualInterfaceArgs ¶
type HostedPublicVirtualInterfaceArgs struct { // The address family for the BGP peer. ` ipv4 ` or `ipv6`. AddressFamily pulumi.StringInput // The IPv4 CIDR address to use to send traffic to Amazon. Required for IPv4 BGP peers. AmazonAddress pulumi.StringPtrInput // The autonomous system (AS) number for Border Gateway Protocol (BGP) configuration. BgpAsn pulumi.IntInput // The authentication key for BGP configuration. BgpAuthKey pulumi.StringPtrInput // The ID of the Direct Connect connection (or LAG) on which to create the virtual interface. ConnectionId pulumi.StringInput // The IPv4 CIDR destination address to which Amazon should send traffic. Required for IPv4 BGP peers. CustomerAddress pulumi.StringPtrInput // The name for the virtual interface. Name pulumi.StringPtrInput // The AWS account that will own the new virtual interface. OwnerAccountId pulumi.StringInput // A list of routes to be advertised to the AWS network in this region. RouteFilterPrefixes pulumi.StringArrayInput // The VLAN ID. Vlan pulumi.IntInput }
The set of arguments for constructing a HostedPublicVirtualInterface resource.
func (HostedPublicVirtualInterfaceArgs) ElementType ¶
func (HostedPublicVirtualInterfaceArgs) ElementType() reflect.Type
type HostedPublicVirtualInterfaceInput ¶ added in v3.13.0
type HostedPublicVirtualInterfaceInput interface { pulumi.Input ToHostedPublicVirtualInterfaceOutput() HostedPublicVirtualInterfaceOutput ToHostedPublicVirtualInterfaceOutputWithContext(ctx context.Context) HostedPublicVirtualInterfaceOutput }
type HostedPublicVirtualInterfaceOutput ¶ added in v3.13.0
type HostedPublicVirtualInterfaceOutput struct {
*pulumi.OutputState
}
func (HostedPublicVirtualInterfaceOutput) ElementType ¶ added in v3.13.0
func (HostedPublicVirtualInterfaceOutput) ElementType() reflect.Type
func (HostedPublicVirtualInterfaceOutput) ToHostedPublicVirtualInterfaceOutput ¶ added in v3.13.0
func (o HostedPublicVirtualInterfaceOutput) ToHostedPublicVirtualInterfaceOutput() HostedPublicVirtualInterfaceOutput
func (HostedPublicVirtualInterfaceOutput) ToHostedPublicVirtualInterfaceOutputWithContext ¶ added in v3.13.0
func (o HostedPublicVirtualInterfaceOutput) ToHostedPublicVirtualInterfaceOutputWithContext(ctx context.Context) HostedPublicVirtualInterfaceOutput
type HostedPublicVirtualInterfaceState ¶
type HostedPublicVirtualInterfaceState struct { // The address family for the BGP peer. ` ipv4 ` or `ipv6`. AddressFamily pulumi.StringPtrInput // The IPv4 CIDR address to use to send traffic to Amazon. Required for IPv4 BGP peers. AmazonAddress pulumi.StringPtrInput AmazonSideAsn pulumi.StringPtrInput // The ARN of the virtual interface. Arn pulumi.StringPtrInput // The Direct Connect endpoint on which the virtual interface terminates. AwsDevice pulumi.StringPtrInput // The autonomous system (AS) number for Border Gateway Protocol (BGP) configuration. BgpAsn pulumi.IntPtrInput // The authentication key for BGP configuration. BgpAuthKey pulumi.StringPtrInput // The ID of the Direct Connect connection (or LAG) on which to create the virtual interface. ConnectionId pulumi.StringPtrInput // The IPv4 CIDR destination address to which Amazon should send traffic. Required for IPv4 BGP peers. CustomerAddress pulumi.StringPtrInput // The name for the virtual interface. Name pulumi.StringPtrInput // The AWS account that will own the new virtual interface. OwnerAccountId pulumi.StringPtrInput // A list of routes to be advertised to the AWS network in this region. RouteFilterPrefixes pulumi.StringArrayInput // The VLAN ID. Vlan pulumi.IntPtrInput }
func (HostedPublicVirtualInterfaceState) ElementType ¶
func (HostedPublicVirtualInterfaceState) ElementType() reflect.Type
type HostedTransitVirtualInterface ¶
type HostedTransitVirtualInterface struct { pulumi.CustomResourceState // The address family for the BGP peer. ` ipv4 ` or `ipv6`. AddressFamily pulumi.StringOutput `pulumi:"addressFamily"` // The IPv4 CIDR address to use to send traffic to Amazon. Required for IPv4 BGP peers. AmazonAddress pulumi.StringOutput `pulumi:"amazonAddress"` AmazonSideAsn pulumi.StringOutput `pulumi:"amazonSideAsn"` // The ARN of the virtual interface. Arn pulumi.StringOutput `pulumi:"arn"` // The Direct Connect endpoint on which the virtual interface terminates. AwsDevice pulumi.StringOutput `pulumi:"awsDevice"` // The autonomous system (AS) number for Border Gateway Protocol (BGP) configuration. BgpAsn pulumi.IntOutput `pulumi:"bgpAsn"` // The authentication key for BGP configuration. BgpAuthKey pulumi.StringOutput `pulumi:"bgpAuthKey"` // The ID of the Direct Connect connection (or LAG) on which to create the virtual interface. ConnectionId pulumi.StringOutput `pulumi:"connectionId"` // The IPv4 CIDR destination address to which Amazon should send traffic. Required for IPv4 BGP peers. CustomerAddress pulumi.StringOutput `pulumi:"customerAddress"` // Indicates whether jumbo frames (8500 MTU) are supported. JumboFrameCapable pulumi.BoolOutput `pulumi:"jumboFrameCapable"` // The maximum transmission unit (MTU) is the size, in bytes, of the largest permissible packet that can be passed over the connection. The MTU of a virtual transit interface can be either `1500` or `8500` (jumbo frames). Default is `1500`. Mtu pulumi.IntPtrOutput `pulumi:"mtu"` // The name for the virtual interface. Name pulumi.StringOutput `pulumi:"name"` // The AWS account that will own the new virtual interface. OwnerAccountId pulumi.StringOutput `pulumi:"ownerAccountId"` // The VLAN ID. Vlan pulumi.IntOutput `pulumi:"vlan"` }
Provides a Direct Connect hosted transit virtual interface resource. This resource represents the allocator's side of the hosted virtual interface. A hosted virtual interface is a virtual interface that is owned by another AWS account.
## Example Usage
```go package main
import (
"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/directconnect" "github.com/pulumi/pulumi/sdk/v2/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := directconnect.NewHostedTransitVirtualInterface(ctx, "example", &directconnect.HostedTransitVirtualInterfaceArgs{ ConnectionId: pulumi.Any(aws_dx_connection.Example.Id), Vlan: pulumi.Int(4094), AddressFamily: pulumi.String("ipv4"), BgpAsn: pulumi.Int(65352), }) if err != nil { return err } return nil }) }
```
## Import
Direct Connect hosted transit virtual interfaces can be imported using the `vif id`, e.g.
```sh
$ pulumi import aws:directconnect/hostedTransitVirtualInterface:HostedTransitVirtualInterface test dxvif-33cc44dd
```
func GetHostedTransitVirtualInterface ¶
func GetHostedTransitVirtualInterface(ctx *pulumi.Context, name string, id pulumi.IDInput, state *HostedTransitVirtualInterfaceState, opts ...pulumi.ResourceOption) (*HostedTransitVirtualInterface, error)
GetHostedTransitVirtualInterface gets an existing HostedTransitVirtualInterface 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 NewHostedTransitVirtualInterface ¶
func NewHostedTransitVirtualInterface(ctx *pulumi.Context, name string, args *HostedTransitVirtualInterfaceArgs, opts ...pulumi.ResourceOption) (*HostedTransitVirtualInterface, error)
NewHostedTransitVirtualInterface registers a new resource with the given unique name, arguments, and options.
func (HostedTransitVirtualInterface) ElementType ¶ added in v3.13.0
func (HostedTransitVirtualInterface) ElementType() reflect.Type
func (HostedTransitVirtualInterface) ToHostedTransitVirtualInterfaceOutput ¶ added in v3.13.0
func (i HostedTransitVirtualInterface) ToHostedTransitVirtualInterfaceOutput() HostedTransitVirtualInterfaceOutput
func (HostedTransitVirtualInterface) ToHostedTransitVirtualInterfaceOutputWithContext ¶ added in v3.13.0
func (i HostedTransitVirtualInterface) ToHostedTransitVirtualInterfaceOutputWithContext(ctx context.Context) HostedTransitVirtualInterfaceOutput
type HostedTransitVirtualInterfaceAcceptor ¶
type HostedTransitVirtualInterfaceAcceptor struct { pulumi.CustomResourceState // The ARN of the virtual interface. Arn pulumi.StringOutput `pulumi:"arn"` // The ID of the Direct Connect gateway to which to connect the virtual interface. DxGatewayId pulumi.StringOutput `pulumi:"dxGatewayId"` // A map of tags to assign to the resource. Tags pulumi.StringMapOutput `pulumi:"tags"` // The ID of the Direct Connect virtual interface to accept. VirtualInterfaceId pulumi.StringOutput `pulumi:"virtualInterfaceId"` }
Provides a resource to manage the accepter's side of a Direct Connect hosted transit virtual interface. This resource accepts ownership of a transit virtual interface created by another AWS account.
> **NOTE:** AWS allows a Direct Connect hosted transit virtual interface to be deleted from either the allocator's or accepter's side. However, this provider only allows the Direct Connect hosted transit virtual interface to be deleted from the allocator's side by removing the corresponding `directconnect.HostedTransitVirtualInterface` resource from your configuration. Removing a `directconnect.HostedTransitVirtualInterfaceAcceptor` resource from your configuration will remove it from your statefile and management, **but will not delete the Direct Connect virtual interface.**
## Example Usage
```go package main
import (
"github.com/pulumi/pulumi-aws/sdk/v3/go/aws" "github.com/pulumi/pulumi-aws/sdk/v3/go/aws/directconnect" "github.com/pulumi/pulumi-aws/sdk/v3/go/aws/providers" "github.com/pulumi/pulumi/sdk/v2/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := providers.Newaws(ctx, "accepter", nil) if err != nil { return err } accepterCallerIdentity, err := aws.GetCallerIdentity(ctx, nil, nil) if err != nil { return err } example, err := directconnect.NewGateway(ctx, "example", &directconnect.GatewayArgs{ AmazonSideAsn: pulumi.String("64512"), }, pulumi.Provider(aws.Accepter)) if err != nil { return err } creator, err := directconnect.NewHostedTransitVirtualInterface(ctx, "creator", &directconnect.HostedTransitVirtualInterfaceArgs{ ConnectionId: pulumi.String("dxcon-zzzzzzzz"), OwnerAccountId: pulumi.String(accepterCallerIdentity.AccountId), Vlan: pulumi.Int(4094), AddressFamily: pulumi.String("ipv4"), BgpAsn: pulumi.Int(65352), }, pulumi.DependsOn([]pulumi.Resource{ example, })) if err != nil { return err } _, err = directconnect.NewHostedTransitVirtualInterfaceAcceptor(ctx, "accepterHostedTransitVirtualInterfaceAcceptor", &directconnect.HostedTransitVirtualInterfaceAcceptorArgs{ VirtualInterfaceId: creator.ID(), DxGatewayId: example.ID(), Tags: pulumi.StringMap{ "Side": pulumi.String("Accepter"), }, }, pulumi.Provider(aws.Accepter)) if err != nil { return err } return nil }) }
```
## Import
Direct Connect hosted transit virtual interfaces can be imported using the `vif id`, e.g.
```sh
$ pulumi import aws:directconnect/hostedTransitVirtualInterfaceAcceptor:HostedTransitVirtualInterfaceAcceptor test dxvif-33cc44dd
```
func GetHostedTransitVirtualInterfaceAcceptor ¶
func GetHostedTransitVirtualInterfaceAcceptor(ctx *pulumi.Context, name string, id pulumi.IDInput, state *HostedTransitVirtualInterfaceAcceptorState, opts ...pulumi.ResourceOption) (*HostedTransitVirtualInterfaceAcceptor, error)
GetHostedTransitVirtualInterfaceAcceptor gets an existing HostedTransitVirtualInterfaceAcceptor 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 NewHostedTransitVirtualInterfaceAcceptor ¶
func NewHostedTransitVirtualInterfaceAcceptor(ctx *pulumi.Context, name string, args *HostedTransitVirtualInterfaceAcceptorArgs, opts ...pulumi.ResourceOption) (*HostedTransitVirtualInterfaceAcceptor, error)
NewHostedTransitVirtualInterfaceAcceptor registers a new resource with the given unique name, arguments, and options.
func (HostedTransitVirtualInterfaceAcceptor) ElementType ¶ added in v3.13.0
func (HostedTransitVirtualInterfaceAcceptor) ElementType() reflect.Type
func (HostedTransitVirtualInterfaceAcceptor) ToHostedTransitVirtualInterfaceAcceptorOutput ¶ added in v3.13.0
func (i HostedTransitVirtualInterfaceAcceptor) ToHostedTransitVirtualInterfaceAcceptorOutput() HostedTransitVirtualInterfaceAcceptorOutput
func (HostedTransitVirtualInterfaceAcceptor) ToHostedTransitVirtualInterfaceAcceptorOutputWithContext ¶ added in v3.13.0
func (i HostedTransitVirtualInterfaceAcceptor) ToHostedTransitVirtualInterfaceAcceptorOutputWithContext(ctx context.Context) HostedTransitVirtualInterfaceAcceptorOutput
type HostedTransitVirtualInterfaceAcceptorArgs ¶
type HostedTransitVirtualInterfaceAcceptorArgs struct { // The ID of the Direct Connect gateway to which to connect the virtual interface. DxGatewayId pulumi.StringInput // A map of tags to assign to the resource. Tags pulumi.StringMapInput // The ID of the Direct Connect virtual interface to accept. VirtualInterfaceId pulumi.StringInput }
The set of arguments for constructing a HostedTransitVirtualInterfaceAcceptor resource.
func (HostedTransitVirtualInterfaceAcceptorArgs) ElementType ¶
func (HostedTransitVirtualInterfaceAcceptorArgs) ElementType() reflect.Type
type HostedTransitVirtualInterfaceAcceptorInput ¶ added in v3.13.0
type HostedTransitVirtualInterfaceAcceptorInput interface { pulumi.Input ToHostedTransitVirtualInterfaceAcceptorOutput() HostedTransitVirtualInterfaceAcceptorOutput ToHostedTransitVirtualInterfaceAcceptorOutputWithContext(ctx context.Context) HostedTransitVirtualInterfaceAcceptorOutput }
type HostedTransitVirtualInterfaceAcceptorOutput ¶ added in v3.13.0
type HostedTransitVirtualInterfaceAcceptorOutput struct {
*pulumi.OutputState
}
func (HostedTransitVirtualInterfaceAcceptorOutput) ElementType ¶ added in v3.13.0
func (HostedTransitVirtualInterfaceAcceptorOutput) ElementType() reflect.Type
func (HostedTransitVirtualInterfaceAcceptorOutput) ToHostedTransitVirtualInterfaceAcceptorOutput ¶ added in v3.13.0
func (o HostedTransitVirtualInterfaceAcceptorOutput) ToHostedTransitVirtualInterfaceAcceptorOutput() HostedTransitVirtualInterfaceAcceptorOutput
func (HostedTransitVirtualInterfaceAcceptorOutput) ToHostedTransitVirtualInterfaceAcceptorOutputWithContext ¶ added in v3.13.0
func (o HostedTransitVirtualInterfaceAcceptorOutput) ToHostedTransitVirtualInterfaceAcceptorOutputWithContext(ctx context.Context) HostedTransitVirtualInterfaceAcceptorOutput
type HostedTransitVirtualInterfaceAcceptorState ¶
type HostedTransitVirtualInterfaceAcceptorState struct { // The ARN of the virtual interface. Arn pulumi.StringPtrInput // The ID of the Direct Connect gateway to which to connect the virtual interface. DxGatewayId pulumi.StringPtrInput // A map of tags to assign to the resource. Tags pulumi.StringMapInput // The ID of the Direct Connect virtual interface to accept. VirtualInterfaceId pulumi.StringPtrInput }
func (HostedTransitVirtualInterfaceAcceptorState) ElementType ¶
func (HostedTransitVirtualInterfaceAcceptorState) ElementType() reflect.Type
type HostedTransitVirtualInterfaceArgs ¶
type HostedTransitVirtualInterfaceArgs struct { // The address family for the BGP peer. ` ipv4 ` or `ipv6`. AddressFamily pulumi.StringInput // The IPv4 CIDR address to use to send traffic to Amazon. Required for IPv4 BGP peers. AmazonAddress pulumi.StringPtrInput // The autonomous system (AS) number for Border Gateway Protocol (BGP) configuration. BgpAsn pulumi.IntInput // The authentication key for BGP configuration. BgpAuthKey pulumi.StringPtrInput // The ID of the Direct Connect connection (or LAG) on which to create the virtual interface. ConnectionId pulumi.StringInput // The IPv4 CIDR destination address to which Amazon should send traffic. Required for IPv4 BGP peers. CustomerAddress pulumi.StringPtrInput // The maximum transmission unit (MTU) is the size, in bytes, of the largest permissible packet that can be passed over the connection. The MTU of a virtual transit interface can be either `1500` or `8500` (jumbo frames). Default is `1500`. Mtu pulumi.IntPtrInput // The name for the virtual interface. Name pulumi.StringPtrInput // The AWS account that will own the new virtual interface. OwnerAccountId pulumi.StringInput // The VLAN ID. Vlan pulumi.IntInput }
The set of arguments for constructing a HostedTransitVirtualInterface resource.
func (HostedTransitVirtualInterfaceArgs) ElementType ¶
func (HostedTransitVirtualInterfaceArgs) ElementType() reflect.Type
type HostedTransitVirtualInterfaceInput ¶ added in v3.13.0
type HostedTransitVirtualInterfaceInput interface { pulumi.Input ToHostedTransitVirtualInterfaceOutput() HostedTransitVirtualInterfaceOutput ToHostedTransitVirtualInterfaceOutputWithContext(ctx context.Context) HostedTransitVirtualInterfaceOutput }
type HostedTransitVirtualInterfaceOutput ¶ added in v3.13.0
type HostedTransitVirtualInterfaceOutput struct {
*pulumi.OutputState
}
func (HostedTransitVirtualInterfaceOutput) ElementType ¶ added in v3.13.0
func (HostedTransitVirtualInterfaceOutput) ElementType() reflect.Type
func (HostedTransitVirtualInterfaceOutput) ToHostedTransitVirtualInterfaceOutput ¶ added in v3.13.0
func (o HostedTransitVirtualInterfaceOutput) ToHostedTransitVirtualInterfaceOutput() HostedTransitVirtualInterfaceOutput
func (HostedTransitVirtualInterfaceOutput) ToHostedTransitVirtualInterfaceOutputWithContext ¶ added in v3.13.0
func (o HostedTransitVirtualInterfaceOutput) ToHostedTransitVirtualInterfaceOutputWithContext(ctx context.Context) HostedTransitVirtualInterfaceOutput
type HostedTransitVirtualInterfaceState ¶
type HostedTransitVirtualInterfaceState struct { // The address family for the BGP peer. ` ipv4 ` or `ipv6`. AddressFamily pulumi.StringPtrInput // The IPv4 CIDR address to use to send traffic to Amazon. Required for IPv4 BGP peers. AmazonAddress pulumi.StringPtrInput AmazonSideAsn pulumi.StringPtrInput // The ARN of the virtual interface. Arn pulumi.StringPtrInput // The Direct Connect endpoint on which the virtual interface terminates. AwsDevice pulumi.StringPtrInput // The autonomous system (AS) number for Border Gateway Protocol (BGP) configuration. BgpAsn pulumi.IntPtrInput // The authentication key for BGP configuration. BgpAuthKey pulumi.StringPtrInput // The ID of the Direct Connect connection (or LAG) on which to create the virtual interface. ConnectionId pulumi.StringPtrInput // The IPv4 CIDR destination address to which Amazon should send traffic. Required for IPv4 BGP peers. CustomerAddress pulumi.StringPtrInput // Indicates whether jumbo frames (8500 MTU) are supported. JumboFrameCapable pulumi.BoolPtrInput // The maximum transmission unit (MTU) is the size, in bytes, of the largest permissible packet that can be passed over the connection. The MTU of a virtual transit interface can be either `1500` or `8500` (jumbo frames). Default is `1500`. Mtu pulumi.IntPtrInput // The name for the virtual interface. Name pulumi.StringPtrInput // The AWS account that will own the new virtual interface. OwnerAccountId pulumi.StringPtrInput // The VLAN ID. Vlan pulumi.IntPtrInput }
func (HostedTransitVirtualInterfaceState) ElementType ¶
func (HostedTransitVirtualInterfaceState) ElementType() reflect.Type
type LinkAggregationGroup ¶
type LinkAggregationGroup struct { pulumi.CustomResourceState // The ARN of the LAG. // * `jumboFrameCapable` -Indicates whether jumbo frames (9001 MTU) are supported. Arn pulumi.StringOutput `pulumi:"arn"` // The bandwidth of the individual physical connections bundled by the LAG. Valid values: 50Mbps, 100Mbps, 200Mbps, 300Mbps, 400Mbps, 500Mbps, 1Gbps, 2Gbps, 5Gbps and 10Gbps. Case sensitive. ConnectionsBandwidth pulumi.StringOutput `pulumi:"connectionsBandwidth"` // A boolean that indicates all connections associated with the LAG should be deleted so that the LAG can be destroyed without error. These objects are *not* recoverable. ForceDestroy pulumi.BoolPtrOutput `pulumi:"forceDestroy"` // Indicates whether the LAG supports a secondary BGP peer in the same address family (IPv4/IPv6). HasLogicalRedundancy pulumi.StringOutput `pulumi:"hasLogicalRedundancy"` JumboFrameCapable pulumi.BoolOutput `pulumi:"jumboFrameCapable"` // The AWS Direct Connect location in which the LAG should be allocated. See [DescribeLocations](https://docs.aws.amazon.com/directconnect/latest/APIReference/API_DescribeLocations.html) for the list of AWS Direct Connect locations. Use `locationCode`. Location pulumi.StringOutput `pulumi:"location"` // The name of the LAG. Name pulumi.StringOutput `pulumi:"name"` // A map of tags to assign to the resource. Tags pulumi.StringMapOutput `pulumi:"tags"` }
Provides a Direct Connect LAG. Connections can be added to the LAG via the `directconnect.Connection` and `directconnect.ConnectionAssociation` resources.
> *NOTE:* When creating a LAG, Direct Connect requires creating a Connection. This provider will remove this unmanaged connection during resource creation.
## Example Usage
```go package main
import (
"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/directconnect" "github.com/pulumi/pulumi/sdk/v2/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := directconnect.NewLinkAggregationGroup(ctx, "hoge", &directconnect.LinkAggregationGroupArgs{ ConnectionsBandwidth: pulumi.String("1Gbps"), ForceDestroy: pulumi.Bool(true), Location: pulumi.String("EqDC2"), }) if err != nil { return err } return nil }) }
```
## Import
Direct Connect LAGs can be imported using the `lag id`, e.g.
```sh
$ pulumi import aws:directconnect/linkAggregationGroup:LinkAggregationGroup test_lag dxlag-fgnsp5rq
```
func GetLinkAggregationGroup ¶
func GetLinkAggregationGroup(ctx *pulumi.Context, name string, id pulumi.IDInput, state *LinkAggregationGroupState, opts ...pulumi.ResourceOption) (*LinkAggregationGroup, error)
GetLinkAggregationGroup gets an existing LinkAggregationGroup 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 NewLinkAggregationGroup ¶
func NewLinkAggregationGroup(ctx *pulumi.Context, name string, args *LinkAggregationGroupArgs, opts ...pulumi.ResourceOption) (*LinkAggregationGroup, error)
NewLinkAggregationGroup registers a new resource with the given unique name, arguments, and options.
func (LinkAggregationGroup) ElementType ¶ added in v3.13.0
func (LinkAggregationGroup) ElementType() reflect.Type
func (LinkAggregationGroup) ToLinkAggregationGroupOutput ¶ added in v3.13.0
func (i LinkAggregationGroup) ToLinkAggregationGroupOutput() LinkAggregationGroupOutput
func (LinkAggregationGroup) ToLinkAggregationGroupOutputWithContext ¶ added in v3.13.0
func (i LinkAggregationGroup) ToLinkAggregationGroupOutputWithContext(ctx context.Context) LinkAggregationGroupOutput
type LinkAggregationGroupArgs ¶
type LinkAggregationGroupArgs struct { // The bandwidth of the individual physical connections bundled by the LAG. Valid values: 50Mbps, 100Mbps, 200Mbps, 300Mbps, 400Mbps, 500Mbps, 1Gbps, 2Gbps, 5Gbps and 10Gbps. Case sensitive. ConnectionsBandwidth pulumi.StringInput // A boolean that indicates all connections associated with the LAG should be deleted so that the LAG can be destroyed without error. These objects are *not* recoverable. ForceDestroy pulumi.BoolPtrInput // The AWS Direct Connect location in which the LAG should be allocated. See [DescribeLocations](https://docs.aws.amazon.com/directconnect/latest/APIReference/API_DescribeLocations.html) for the list of AWS Direct Connect locations. Use `locationCode`. Location pulumi.StringInput // The name of the LAG. Name pulumi.StringPtrInput // A map of tags to assign to the resource. Tags pulumi.StringMapInput }
The set of arguments for constructing a LinkAggregationGroup resource.
func (LinkAggregationGroupArgs) ElementType ¶
func (LinkAggregationGroupArgs) ElementType() reflect.Type
type LinkAggregationGroupInput ¶ added in v3.13.0
type LinkAggregationGroupInput interface { pulumi.Input ToLinkAggregationGroupOutput() LinkAggregationGroupOutput ToLinkAggregationGroupOutputWithContext(ctx context.Context) LinkAggregationGroupOutput }
type LinkAggregationGroupOutput ¶ added in v3.13.0
type LinkAggregationGroupOutput struct {
*pulumi.OutputState
}
func (LinkAggregationGroupOutput) ElementType ¶ added in v3.13.0
func (LinkAggregationGroupOutput) ElementType() reflect.Type
func (LinkAggregationGroupOutput) ToLinkAggregationGroupOutput ¶ added in v3.13.0
func (o LinkAggregationGroupOutput) ToLinkAggregationGroupOutput() LinkAggregationGroupOutput
func (LinkAggregationGroupOutput) ToLinkAggregationGroupOutputWithContext ¶ added in v3.13.0
func (o LinkAggregationGroupOutput) ToLinkAggregationGroupOutputWithContext(ctx context.Context) LinkAggregationGroupOutput
type LinkAggregationGroupState ¶
type LinkAggregationGroupState struct { // The ARN of the LAG. // * `jumboFrameCapable` -Indicates whether jumbo frames (9001 MTU) are supported. Arn pulumi.StringPtrInput // The bandwidth of the individual physical connections bundled by the LAG. Valid values: 50Mbps, 100Mbps, 200Mbps, 300Mbps, 400Mbps, 500Mbps, 1Gbps, 2Gbps, 5Gbps and 10Gbps. Case sensitive. ConnectionsBandwidth pulumi.StringPtrInput // A boolean that indicates all connections associated with the LAG should be deleted so that the LAG can be destroyed without error. These objects are *not* recoverable. ForceDestroy pulumi.BoolPtrInput // Indicates whether the LAG supports a secondary BGP peer in the same address family (IPv4/IPv6). HasLogicalRedundancy pulumi.StringPtrInput JumboFrameCapable pulumi.BoolPtrInput // The AWS Direct Connect location in which the LAG should be allocated. See [DescribeLocations](https://docs.aws.amazon.com/directconnect/latest/APIReference/API_DescribeLocations.html) for the list of AWS Direct Connect locations. Use `locationCode`. Location pulumi.StringPtrInput // The name of the LAG. Name pulumi.StringPtrInput // A map of tags to assign to the resource. Tags pulumi.StringMapInput }
func (LinkAggregationGroupState) ElementType ¶
func (LinkAggregationGroupState) ElementType() reflect.Type
type LookupGatewayArgs ¶
type LookupGatewayArgs struct { // The name of the gateway to retrieve. Name string `pulumi:"name"` }
A collection of arguments for invoking getGateway.
type LookupGatewayResult ¶
type LookupGatewayResult struct { // The ASN on the Amazon side of the connection. AmazonSideAsn string `pulumi:"amazonSideAsn"` // The provider-assigned unique ID for this managed resource. Id string `pulumi:"id"` Name string `pulumi:"name"` // AWS Account ID of the gateway. OwnerAccountId string `pulumi:"ownerAccountId"` }
A collection of values returned by getGateway.
func LookupGateway ¶
func LookupGateway(ctx *pulumi.Context, args *LookupGatewayArgs, opts ...pulumi.InvokeOption) (*LookupGatewayResult, error)
Retrieve information about a Direct Connect Gateway.
## Example Usage
```go package main
import (
"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/directconnect" "github.com/pulumi/pulumi/sdk/v2/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := directconnect.LookupGateway(ctx, &directconnect.LookupGatewayArgs{ Name: "example", }, nil) if err != nil { return err } return nil }) }
```
type PrivateVirtualInterface ¶
type PrivateVirtualInterface struct { pulumi.CustomResourceState // The address family for the BGP peer. ` ipv4 ` or `ipv6`. AddressFamily pulumi.StringOutput `pulumi:"addressFamily"` // The IPv4 CIDR address to use to send traffic to Amazon. Required for IPv4 BGP peers. AmazonAddress pulumi.StringOutput `pulumi:"amazonAddress"` AmazonSideAsn pulumi.StringOutput `pulumi:"amazonSideAsn"` // The ARN of the virtual interface. Arn pulumi.StringOutput `pulumi:"arn"` // The Direct Connect endpoint on which the virtual interface terminates. AwsDevice pulumi.StringOutput `pulumi:"awsDevice"` // The autonomous system (AS) number for Border Gateway Protocol (BGP) configuration. BgpAsn pulumi.IntOutput `pulumi:"bgpAsn"` // The authentication key for BGP configuration. BgpAuthKey pulumi.StringOutput `pulumi:"bgpAuthKey"` // The ID of the Direct Connect connection (or LAG) on which to create the virtual interface. ConnectionId pulumi.StringOutput `pulumi:"connectionId"` // The IPv4 CIDR destination address to which Amazon should send traffic. Required for IPv4 BGP peers. CustomerAddress pulumi.StringOutput `pulumi:"customerAddress"` // The ID of the Direct Connect gateway to which to connect the virtual interface. DxGatewayId pulumi.StringPtrOutput `pulumi:"dxGatewayId"` // Indicates whether jumbo frames (9001 MTU) are supported. JumboFrameCapable pulumi.BoolOutput `pulumi:"jumboFrameCapable"` // The maximum transmission unit (MTU) is the size, in bytes, of the largest permissible packet that can be passed over the connection. // The MTU of a virtual private interface can be either `1500` or `9001` (jumbo frames). Default is `1500`. Mtu pulumi.IntPtrOutput `pulumi:"mtu"` // The name for the virtual interface. Name pulumi.StringOutput `pulumi:"name"` // A map of tags to assign to the resource. Tags pulumi.StringMapOutput `pulumi:"tags"` // The VLAN ID. Vlan pulumi.IntOutput `pulumi:"vlan"` // The ID of the virtual private gateway to which to connect the virtual interface. VpnGatewayId pulumi.StringPtrOutput `pulumi:"vpnGatewayId"` }
Provides a Direct Connect private virtual interface resource.
## Example Usage
```go package main
import (
"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/directconnect" "github.com/pulumi/pulumi/sdk/v2/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := directconnect.NewPrivateVirtualInterface(ctx, "foo", &directconnect.PrivateVirtualInterfaceArgs{ AddressFamily: pulumi.String("ipv4"), BgpAsn: pulumi.Int(65352), ConnectionId: pulumi.String("dxcon-zzzzzzzz"), Vlan: pulumi.Int(4094), }) if err != nil { return err } return nil }) }
```
## Import
Direct Connect private virtual interfaces can be imported using the `vif id`, e.g.
```sh
$ pulumi import aws:directconnect/privateVirtualInterface:PrivateVirtualInterface test dxvif-33cc44dd
```
func GetPrivateVirtualInterface ¶
func GetPrivateVirtualInterface(ctx *pulumi.Context, name string, id pulumi.IDInput, state *PrivateVirtualInterfaceState, opts ...pulumi.ResourceOption) (*PrivateVirtualInterface, error)
GetPrivateVirtualInterface gets an existing PrivateVirtualInterface 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 NewPrivateVirtualInterface ¶
func NewPrivateVirtualInterface(ctx *pulumi.Context, name string, args *PrivateVirtualInterfaceArgs, opts ...pulumi.ResourceOption) (*PrivateVirtualInterface, error)
NewPrivateVirtualInterface registers a new resource with the given unique name, arguments, and options.
func (PrivateVirtualInterface) ElementType ¶ added in v3.13.0
func (PrivateVirtualInterface) ElementType() reflect.Type
func (PrivateVirtualInterface) ToPrivateVirtualInterfaceOutput ¶ added in v3.13.0
func (i PrivateVirtualInterface) ToPrivateVirtualInterfaceOutput() PrivateVirtualInterfaceOutput
func (PrivateVirtualInterface) ToPrivateVirtualInterfaceOutputWithContext ¶ added in v3.13.0
func (i PrivateVirtualInterface) ToPrivateVirtualInterfaceOutputWithContext(ctx context.Context) PrivateVirtualInterfaceOutput
type PrivateVirtualInterfaceArgs ¶
type PrivateVirtualInterfaceArgs struct { // The address family for the BGP peer. ` ipv4 ` or `ipv6`. AddressFamily pulumi.StringInput // The IPv4 CIDR address to use to send traffic to Amazon. Required for IPv4 BGP peers. AmazonAddress pulumi.StringPtrInput // The autonomous system (AS) number for Border Gateway Protocol (BGP) configuration. BgpAsn pulumi.IntInput // The authentication key for BGP configuration. BgpAuthKey pulumi.StringPtrInput // The ID of the Direct Connect connection (or LAG) on which to create the virtual interface. ConnectionId pulumi.StringInput // The IPv4 CIDR destination address to which Amazon should send traffic. Required for IPv4 BGP peers. CustomerAddress pulumi.StringPtrInput // The ID of the Direct Connect gateway to which to connect the virtual interface. DxGatewayId pulumi.StringPtrInput // The maximum transmission unit (MTU) is the size, in bytes, of the largest permissible packet that can be passed over the connection. // The MTU of a virtual private interface can be either `1500` or `9001` (jumbo frames). Default is `1500`. Mtu pulumi.IntPtrInput // The name for the virtual interface. Name pulumi.StringPtrInput // A map of tags to assign to the resource. Tags pulumi.StringMapInput // The VLAN ID. Vlan pulumi.IntInput // The ID of the virtual private gateway to which to connect the virtual interface. VpnGatewayId pulumi.StringPtrInput }
The set of arguments for constructing a PrivateVirtualInterface resource.
func (PrivateVirtualInterfaceArgs) ElementType ¶
func (PrivateVirtualInterfaceArgs) ElementType() reflect.Type
type PrivateVirtualInterfaceInput ¶ added in v3.13.0
type PrivateVirtualInterfaceInput interface { pulumi.Input ToPrivateVirtualInterfaceOutput() PrivateVirtualInterfaceOutput ToPrivateVirtualInterfaceOutputWithContext(ctx context.Context) PrivateVirtualInterfaceOutput }
type PrivateVirtualInterfaceOutput ¶ added in v3.13.0
type PrivateVirtualInterfaceOutput struct {
*pulumi.OutputState
}
func (PrivateVirtualInterfaceOutput) ElementType ¶ added in v3.13.0
func (PrivateVirtualInterfaceOutput) ElementType() reflect.Type
func (PrivateVirtualInterfaceOutput) ToPrivateVirtualInterfaceOutput ¶ added in v3.13.0
func (o PrivateVirtualInterfaceOutput) ToPrivateVirtualInterfaceOutput() PrivateVirtualInterfaceOutput
func (PrivateVirtualInterfaceOutput) ToPrivateVirtualInterfaceOutputWithContext ¶ added in v3.13.0
func (o PrivateVirtualInterfaceOutput) ToPrivateVirtualInterfaceOutputWithContext(ctx context.Context) PrivateVirtualInterfaceOutput
type PrivateVirtualInterfaceState ¶
type PrivateVirtualInterfaceState struct { // The address family for the BGP peer. ` ipv4 ` or `ipv6`. AddressFamily pulumi.StringPtrInput // The IPv4 CIDR address to use to send traffic to Amazon. Required for IPv4 BGP peers. AmazonAddress pulumi.StringPtrInput AmazonSideAsn pulumi.StringPtrInput // The ARN of the virtual interface. Arn pulumi.StringPtrInput // The Direct Connect endpoint on which the virtual interface terminates. AwsDevice pulumi.StringPtrInput // The autonomous system (AS) number for Border Gateway Protocol (BGP) configuration. BgpAsn pulumi.IntPtrInput // The authentication key for BGP configuration. BgpAuthKey pulumi.StringPtrInput // The ID of the Direct Connect connection (or LAG) on which to create the virtual interface. ConnectionId pulumi.StringPtrInput // The IPv4 CIDR destination address to which Amazon should send traffic. Required for IPv4 BGP peers. CustomerAddress pulumi.StringPtrInput // The ID of the Direct Connect gateway to which to connect the virtual interface. DxGatewayId pulumi.StringPtrInput // Indicates whether jumbo frames (9001 MTU) are supported. JumboFrameCapable pulumi.BoolPtrInput // The maximum transmission unit (MTU) is the size, in bytes, of the largest permissible packet that can be passed over the connection. // The MTU of a virtual private interface can be either `1500` or `9001` (jumbo frames). Default is `1500`. Mtu pulumi.IntPtrInput // The name for the virtual interface. Name pulumi.StringPtrInput // A map of tags to assign to the resource. Tags pulumi.StringMapInput // The VLAN ID. Vlan pulumi.IntPtrInput // The ID of the virtual private gateway to which to connect the virtual interface. VpnGatewayId pulumi.StringPtrInput }
func (PrivateVirtualInterfaceState) ElementType ¶
func (PrivateVirtualInterfaceState) ElementType() reflect.Type
type PublicVirtualInterface ¶
type PublicVirtualInterface struct { pulumi.CustomResourceState // The address family for the BGP peer. ` ipv4 ` or `ipv6`. AddressFamily pulumi.StringOutput `pulumi:"addressFamily"` // The IPv4 CIDR address to use to send traffic to Amazon. Required for IPv4 BGP peers. AmazonAddress pulumi.StringOutput `pulumi:"amazonAddress"` AmazonSideAsn pulumi.StringOutput `pulumi:"amazonSideAsn"` // The ARN of the virtual interface. Arn pulumi.StringOutput `pulumi:"arn"` // The Direct Connect endpoint on which the virtual interface terminates. AwsDevice pulumi.StringOutput `pulumi:"awsDevice"` // The autonomous system (AS) number for Border Gateway Protocol (BGP) configuration. BgpAsn pulumi.IntOutput `pulumi:"bgpAsn"` // The authentication key for BGP configuration. BgpAuthKey pulumi.StringOutput `pulumi:"bgpAuthKey"` // The ID of the Direct Connect connection (or LAG) on which to create the virtual interface. ConnectionId pulumi.StringOutput `pulumi:"connectionId"` // The IPv4 CIDR destination address to which Amazon should send traffic. Required for IPv4 BGP peers. CustomerAddress pulumi.StringOutput `pulumi:"customerAddress"` // The name for the virtual interface. Name pulumi.StringOutput `pulumi:"name"` // A list of routes to be advertised to the AWS network in this region. RouteFilterPrefixes pulumi.StringArrayOutput `pulumi:"routeFilterPrefixes"` // A map of tags to assign to the resource. Tags pulumi.StringMapOutput `pulumi:"tags"` // The VLAN ID. Vlan pulumi.IntOutput `pulumi:"vlan"` }
Provides a Direct Connect public virtual interface resource.
## Example Usage
```go package main
import (
"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/directconnect" "github.com/pulumi/pulumi/sdk/v2/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := directconnect.NewPublicVirtualInterface(ctx, "foo", &directconnect.PublicVirtualInterfaceArgs{ AddressFamily: pulumi.String("ipv4"), AmazonAddress: pulumi.String("175.45.176.2/30"), BgpAsn: pulumi.Int(65352), ConnectionId: pulumi.String("dxcon-zzzzzzzz"), CustomerAddress: pulumi.String("175.45.176.1/30"), RouteFilterPrefixes: pulumi.StringArray{ pulumi.String("210.52.109.0/24"), pulumi.String("175.45.176.0/22"), }, Vlan: pulumi.Int(4094), }) if err != nil { return err } return nil }) }
```
## Import
Direct Connect public virtual interfaces can be imported using the `vif id`, e.g.
```sh
$ pulumi import aws:directconnect/publicVirtualInterface:PublicVirtualInterface test dxvif-33cc44dd
```
func GetPublicVirtualInterface ¶
func GetPublicVirtualInterface(ctx *pulumi.Context, name string, id pulumi.IDInput, state *PublicVirtualInterfaceState, opts ...pulumi.ResourceOption) (*PublicVirtualInterface, error)
GetPublicVirtualInterface gets an existing PublicVirtualInterface 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 NewPublicVirtualInterface ¶
func NewPublicVirtualInterface(ctx *pulumi.Context, name string, args *PublicVirtualInterfaceArgs, opts ...pulumi.ResourceOption) (*PublicVirtualInterface, error)
NewPublicVirtualInterface registers a new resource with the given unique name, arguments, and options.
func (PublicVirtualInterface) ElementType ¶ added in v3.13.0
func (PublicVirtualInterface) ElementType() reflect.Type
func (PublicVirtualInterface) ToPublicVirtualInterfaceOutput ¶ added in v3.13.0
func (i PublicVirtualInterface) ToPublicVirtualInterfaceOutput() PublicVirtualInterfaceOutput
func (PublicVirtualInterface) ToPublicVirtualInterfaceOutputWithContext ¶ added in v3.13.0
func (i PublicVirtualInterface) ToPublicVirtualInterfaceOutputWithContext(ctx context.Context) PublicVirtualInterfaceOutput
type PublicVirtualInterfaceArgs ¶
type PublicVirtualInterfaceArgs struct { // The address family for the BGP peer. ` ipv4 ` or `ipv6`. AddressFamily pulumi.StringInput // The IPv4 CIDR address to use to send traffic to Amazon. Required for IPv4 BGP peers. AmazonAddress pulumi.StringPtrInput // The autonomous system (AS) number for Border Gateway Protocol (BGP) configuration. BgpAsn pulumi.IntInput // The authentication key for BGP configuration. BgpAuthKey pulumi.StringPtrInput // The ID of the Direct Connect connection (or LAG) on which to create the virtual interface. ConnectionId pulumi.StringInput // The IPv4 CIDR destination address to which Amazon should send traffic. Required for IPv4 BGP peers. CustomerAddress pulumi.StringPtrInput // The name for the virtual interface. Name pulumi.StringPtrInput // A list of routes to be advertised to the AWS network in this region. RouteFilterPrefixes pulumi.StringArrayInput // A map of tags to assign to the resource. Tags pulumi.StringMapInput // The VLAN ID. Vlan pulumi.IntInput }
The set of arguments for constructing a PublicVirtualInterface resource.
func (PublicVirtualInterfaceArgs) ElementType ¶
func (PublicVirtualInterfaceArgs) ElementType() reflect.Type
type PublicVirtualInterfaceInput ¶ added in v3.13.0
type PublicVirtualInterfaceInput interface { pulumi.Input ToPublicVirtualInterfaceOutput() PublicVirtualInterfaceOutput ToPublicVirtualInterfaceOutputWithContext(ctx context.Context) PublicVirtualInterfaceOutput }
type PublicVirtualInterfaceOutput ¶ added in v3.13.0
type PublicVirtualInterfaceOutput struct {
*pulumi.OutputState
}
func (PublicVirtualInterfaceOutput) ElementType ¶ added in v3.13.0
func (PublicVirtualInterfaceOutput) ElementType() reflect.Type
func (PublicVirtualInterfaceOutput) ToPublicVirtualInterfaceOutput ¶ added in v3.13.0
func (o PublicVirtualInterfaceOutput) ToPublicVirtualInterfaceOutput() PublicVirtualInterfaceOutput
func (PublicVirtualInterfaceOutput) ToPublicVirtualInterfaceOutputWithContext ¶ added in v3.13.0
func (o PublicVirtualInterfaceOutput) ToPublicVirtualInterfaceOutputWithContext(ctx context.Context) PublicVirtualInterfaceOutput
type PublicVirtualInterfaceState ¶
type PublicVirtualInterfaceState struct { // The address family for the BGP peer. ` ipv4 ` or `ipv6`. AddressFamily pulumi.StringPtrInput // The IPv4 CIDR address to use to send traffic to Amazon. Required for IPv4 BGP peers. AmazonAddress pulumi.StringPtrInput AmazonSideAsn pulumi.StringPtrInput // The ARN of the virtual interface. Arn pulumi.StringPtrInput // The Direct Connect endpoint on which the virtual interface terminates. AwsDevice pulumi.StringPtrInput // The autonomous system (AS) number for Border Gateway Protocol (BGP) configuration. BgpAsn pulumi.IntPtrInput // The authentication key for BGP configuration. BgpAuthKey pulumi.StringPtrInput // The ID of the Direct Connect connection (or LAG) on which to create the virtual interface. ConnectionId pulumi.StringPtrInput // The IPv4 CIDR destination address to which Amazon should send traffic. Required for IPv4 BGP peers. CustomerAddress pulumi.StringPtrInput // The name for the virtual interface. Name pulumi.StringPtrInput // A list of routes to be advertised to the AWS network in this region. RouteFilterPrefixes pulumi.StringArrayInput // A map of tags to assign to the resource. Tags pulumi.StringMapInput // The VLAN ID. Vlan pulumi.IntPtrInput }
func (PublicVirtualInterfaceState) ElementType ¶
func (PublicVirtualInterfaceState) ElementType() reflect.Type
type TransitVirtualInterface ¶
type TransitVirtualInterface struct { pulumi.CustomResourceState // The address family for the BGP peer. ` ipv4 ` or `ipv6`. AddressFamily pulumi.StringOutput `pulumi:"addressFamily"` // The IPv4 CIDR address to use to send traffic to Amazon. Required for IPv4 BGP peers. AmazonAddress pulumi.StringOutput `pulumi:"amazonAddress"` AmazonSideAsn pulumi.StringOutput `pulumi:"amazonSideAsn"` // The ARN of the virtual interface. Arn pulumi.StringOutput `pulumi:"arn"` // The Direct Connect endpoint on which the virtual interface terminates. AwsDevice pulumi.StringOutput `pulumi:"awsDevice"` // The autonomous system (AS) number for Border Gateway Protocol (BGP) configuration. BgpAsn pulumi.IntOutput `pulumi:"bgpAsn"` // The authentication key for BGP configuration. BgpAuthKey pulumi.StringOutput `pulumi:"bgpAuthKey"` // The ID of the Direct Connect connection (or LAG) on which to create the virtual interface. ConnectionId pulumi.StringOutput `pulumi:"connectionId"` // The IPv4 CIDR destination address to which Amazon should send traffic. Required for IPv4 BGP peers. CustomerAddress pulumi.StringOutput `pulumi:"customerAddress"` // The ID of the Direct Connect gateway to which to connect the virtual interface. DxGatewayId pulumi.StringOutput `pulumi:"dxGatewayId"` // Indicates whether jumbo frames (8500 MTU) are supported. JumboFrameCapable pulumi.BoolOutput `pulumi:"jumboFrameCapable"` // The maximum transmission unit (MTU) is the size, in bytes, of the largest permissible packet that can be passed over the connection. // The MTU of a virtual transit interface can be either `1500` or `8500` (jumbo frames). Default is `1500`. Mtu pulumi.IntPtrOutput `pulumi:"mtu"` // The name for the virtual interface. Name pulumi.StringOutput `pulumi:"name"` // A map of tags to assign to the resource. Tags pulumi.StringMapOutput `pulumi:"tags"` // The VLAN ID. Vlan pulumi.IntOutput `pulumi:"vlan"` }
Provides a Direct Connect transit virtual interface resource. A transit virtual interface is a VLAN that transports traffic from a Direct Connect gateway to one or more transit gateways.
## Example Usage
```go package main
import (
"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/directconnect" "github.com/pulumi/pulumi/sdk/v2/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { exampleGateway, err := directconnect.NewGateway(ctx, "exampleGateway", &directconnect.GatewayArgs{ AmazonSideAsn: pulumi.String("64512"), }) if err != nil { return err } _, err = directconnect.NewTransitVirtualInterface(ctx, "exampleTransitVirtualInterface", &directconnect.TransitVirtualInterfaceArgs{ ConnectionId: pulumi.Any(aws_dx_connection.Example.Id), DxGatewayId: exampleGateway.ID(), Vlan: pulumi.Int(4094), AddressFamily: pulumi.String("ipv4"), BgpAsn: pulumi.Int(65352), }) if err != nil { return err } return nil }) }
```
## Import
Direct Connect transit virtual interfaces can be imported using the `vif id`, e.g.
```sh
$ pulumi import aws:directconnect/transitVirtualInterface:TransitVirtualInterface test dxvif-33cc44dd
```
func GetTransitVirtualInterface ¶
func GetTransitVirtualInterface(ctx *pulumi.Context, name string, id pulumi.IDInput, state *TransitVirtualInterfaceState, opts ...pulumi.ResourceOption) (*TransitVirtualInterface, error)
GetTransitVirtualInterface gets an existing TransitVirtualInterface 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 NewTransitVirtualInterface ¶
func NewTransitVirtualInterface(ctx *pulumi.Context, name string, args *TransitVirtualInterfaceArgs, opts ...pulumi.ResourceOption) (*TransitVirtualInterface, error)
NewTransitVirtualInterface registers a new resource with the given unique name, arguments, and options.
func (TransitVirtualInterface) ElementType ¶ added in v3.13.0
func (TransitVirtualInterface) ElementType() reflect.Type
func (TransitVirtualInterface) ToTransitVirtualInterfaceOutput ¶ added in v3.13.0
func (i TransitVirtualInterface) ToTransitVirtualInterfaceOutput() TransitVirtualInterfaceOutput
func (TransitVirtualInterface) ToTransitVirtualInterfaceOutputWithContext ¶ added in v3.13.0
func (i TransitVirtualInterface) ToTransitVirtualInterfaceOutputWithContext(ctx context.Context) TransitVirtualInterfaceOutput
type TransitVirtualInterfaceArgs ¶
type TransitVirtualInterfaceArgs struct { // The address family for the BGP peer. ` ipv4 ` or `ipv6`. AddressFamily pulumi.StringInput // The IPv4 CIDR address to use to send traffic to Amazon. Required for IPv4 BGP peers. AmazonAddress pulumi.StringPtrInput // The autonomous system (AS) number for Border Gateway Protocol (BGP) configuration. BgpAsn pulumi.IntInput // The authentication key for BGP configuration. BgpAuthKey pulumi.StringPtrInput // The ID of the Direct Connect connection (or LAG) on which to create the virtual interface. ConnectionId pulumi.StringInput // The IPv4 CIDR destination address to which Amazon should send traffic. Required for IPv4 BGP peers. CustomerAddress pulumi.StringPtrInput // The ID of the Direct Connect gateway to which to connect the virtual interface. DxGatewayId pulumi.StringInput // The maximum transmission unit (MTU) is the size, in bytes, of the largest permissible packet that can be passed over the connection. // The MTU of a virtual transit interface can be either `1500` or `8500` (jumbo frames). Default is `1500`. Mtu pulumi.IntPtrInput // The name for the virtual interface. Name pulumi.StringPtrInput // A map of tags to assign to the resource. Tags pulumi.StringMapInput // The VLAN ID. Vlan pulumi.IntInput }
The set of arguments for constructing a TransitVirtualInterface resource.
func (TransitVirtualInterfaceArgs) ElementType ¶
func (TransitVirtualInterfaceArgs) ElementType() reflect.Type
type TransitVirtualInterfaceInput ¶ added in v3.13.0
type TransitVirtualInterfaceInput interface { pulumi.Input ToTransitVirtualInterfaceOutput() TransitVirtualInterfaceOutput ToTransitVirtualInterfaceOutputWithContext(ctx context.Context) TransitVirtualInterfaceOutput }
type TransitVirtualInterfaceOutput ¶ added in v3.13.0
type TransitVirtualInterfaceOutput struct {
*pulumi.OutputState
}
func (TransitVirtualInterfaceOutput) ElementType ¶ added in v3.13.0
func (TransitVirtualInterfaceOutput) ElementType() reflect.Type
func (TransitVirtualInterfaceOutput) ToTransitVirtualInterfaceOutput ¶ added in v3.13.0
func (o TransitVirtualInterfaceOutput) ToTransitVirtualInterfaceOutput() TransitVirtualInterfaceOutput
func (TransitVirtualInterfaceOutput) ToTransitVirtualInterfaceOutputWithContext ¶ added in v3.13.0
func (o TransitVirtualInterfaceOutput) ToTransitVirtualInterfaceOutputWithContext(ctx context.Context) TransitVirtualInterfaceOutput
type TransitVirtualInterfaceState ¶
type TransitVirtualInterfaceState struct { // The address family for the BGP peer. ` ipv4 ` or `ipv6`. AddressFamily pulumi.StringPtrInput // The IPv4 CIDR address to use to send traffic to Amazon. Required for IPv4 BGP peers. AmazonAddress pulumi.StringPtrInput AmazonSideAsn pulumi.StringPtrInput // The ARN of the virtual interface. Arn pulumi.StringPtrInput // The Direct Connect endpoint on which the virtual interface terminates. AwsDevice pulumi.StringPtrInput // The autonomous system (AS) number for Border Gateway Protocol (BGP) configuration. BgpAsn pulumi.IntPtrInput // The authentication key for BGP configuration. BgpAuthKey pulumi.StringPtrInput // The ID of the Direct Connect connection (or LAG) on which to create the virtual interface. ConnectionId pulumi.StringPtrInput // The IPv4 CIDR destination address to which Amazon should send traffic. Required for IPv4 BGP peers. CustomerAddress pulumi.StringPtrInput // The ID of the Direct Connect gateway to which to connect the virtual interface. DxGatewayId pulumi.StringPtrInput // Indicates whether jumbo frames (8500 MTU) are supported. JumboFrameCapable pulumi.BoolPtrInput // The maximum transmission unit (MTU) is the size, in bytes, of the largest permissible packet that can be passed over the connection. // The MTU of a virtual transit interface can be either `1500` or `8500` (jumbo frames). Default is `1500`. Mtu pulumi.IntPtrInput // The name for the virtual interface. Name pulumi.StringPtrInput // A map of tags to assign to the resource. Tags pulumi.StringMapInput // The VLAN ID. Vlan pulumi.IntPtrInput }
func (TransitVirtualInterfaceState) ElementType ¶
func (TransitVirtualInterfaceState) ElementType() reflect.Type
Source Files ¶
- bgpPeer.go
- connection.go
- connectionAssociation.go
- gateway.go
- gatewayAssociation.go
- gatewayAssociationProposal.go
- getGateway.go
- hostedPrivateVirtualInterface.go
- hostedPrivateVirtualInterfaceAccepter.go
- hostedPublicVirtualInterface.go
- hostedPublicVirtualInterfaceAccepter.go
- hostedTransitVirtualInterface.go
- hostedTransitVirtualInterfaceAcceptor.go
- linkAggregationGroup.go
- privateVirtualInterface.go
- publicVirtualInterface.go
- transitVirtualInterface.go