Namespace Pulumi.Aws.Ec2TransitGateway
Classes
GetDirectConnectGatewayAttachment
GetDirectConnectGatewayAttachmentArgs
GetDirectConnectGatewayAttachmentResult
GetPeeringAttachment
GetPeeringAttachmentArgs
GetPeeringAttachmentResult
GetRouteTable
GetRouteTableArgs
GetRouteTableResult
GetTransitGateway
GetTransitGatewayArgs
GetTransitGatewayResult
GetVpcAttachment
GetVpcAttachmentArgs
GetVpcAttachmentResult
GetVpnAttachment
GetVpnAttachmentArgs
GetVpnAttachmentResult
PeeringAttachment
Manages an EC2 Transit Gateway Peering Attachment. For examples of custom route table association and propagation, see the EC2 Transit Gateway Networking Examples Guide.
Example Usage
using Pulumi;
using Aws = Pulumi.Aws;
class MyStack : Stack
{
public MyStack()
{
var local = new Aws.Provider("local", new Aws.ProviderArgs
{
Region = "us-east-1",
});
var peer = new Aws.Provider("peer", new Aws.ProviderArgs
{
Region = "us-west-2",
});
var peerRegion = Output.Create(Aws.GetRegion.InvokeAsync());
var localTransitGateway = new Aws.Ec2TransitGateway.TransitGateway("localTransitGateway", new Aws.Ec2TransitGateway.TransitGatewayArgs
{
Tags =
{
{ "Name", "Local TGW" },
},
});
var peerTransitGateway = new Aws.Ec2TransitGateway.TransitGateway("peerTransitGateway", new Aws.Ec2TransitGateway.TransitGatewayArgs
{
Tags =
{
{ "Name", "Peer TGW" },
},
});
var example = new Aws.Ec2TransitGateway.PeeringAttachment("example", new Aws.Ec2TransitGateway.PeeringAttachmentArgs
{
PeerAccountId = peerTransitGateway.OwnerId,
PeerRegion = peerRegion.Apply(peerRegion => peerRegion.Name),
PeerTransitGatewayId = peerTransitGateway.Id,
TransitGatewayId = localTransitGateway.Id,
Tags =
{
{ "Name", "TGW Peering Requestor" },
},
});
}
}
PeeringAttachmentArgs
PeeringAttachmentState
Route
Manages an EC2 Transit Gateway Route.
Example Usage
Standard usage
using Pulumi;
using Aws = Pulumi.Aws;
class MyStack : Stack
{
public MyStack()
{
var example = new Aws.Ec2TransitGateway.Route("example", new Aws.Ec2TransitGateway.RouteArgs
{
DestinationCidrBlock = "0.0.0.0/0",
TransitGatewayAttachmentId = aws_ec2_transit_gateway_vpc_attachment.Example.Id,
TransitGatewayRouteTableId = aws_ec2_transit_gateway.Example.Association_default_route_table_id,
});
}
}
Blackhole route
using Pulumi;
using Aws = Pulumi.Aws;
class MyStack : Stack
{
public MyStack()
{
var example = new Aws.Ec2TransitGateway.Route("example", new Aws.Ec2TransitGateway.RouteArgs
{
Blackhole = true,
DestinationCidrBlock = "0.0.0.0/0",
TransitGatewayRouteTableId = aws_ec2_transit_gateway.Example.Association_default_route_table_id,
});
}
}
RouteArgs
RouteState
RouteTable
Manages an EC2 Transit Gateway Route Table.
Example Usage
using Pulumi;
using Aws = Pulumi.Aws;
class MyStack : Stack
{
public MyStack()
{
var example = new Aws.Ec2TransitGateway.RouteTable("example", new Aws.Ec2TransitGateway.RouteTableArgs
{
TransitGatewayId = aws_ec2_transit_gateway.Example.Id,
});
}
}
RouteTableArgs
RouteTableAssociation
Manages an EC2 Transit Gateway Route Table association.
Example Usage
using Pulumi;
using Aws = Pulumi.Aws;
class MyStack : Stack
{
public MyStack()
{
var example = new Aws.Ec2TransitGateway.RouteTableAssociation("example", new Aws.Ec2TransitGateway.RouteTableAssociationArgs
{
TransitGatewayAttachmentId = aws_ec2_transit_gateway_vpc_attachment.Example.Id,
TransitGatewayRouteTableId = aws_ec2_transit_gateway_route_table.Example.Id,
});
}
}
RouteTableAssociationArgs
RouteTableAssociationState
RouteTablePropagation
Manages an EC2 Transit Gateway Route Table propagation.
Example Usage
using Pulumi;
using Aws = Pulumi.Aws;
class MyStack : Stack
{
public MyStack()
{
var example = new Aws.Ec2TransitGateway.RouteTablePropagation("example", new Aws.Ec2TransitGateway.RouteTablePropagationArgs
{
TransitGatewayAttachmentId = aws_ec2_transit_gateway_vpc_attachment.Example.Id,
TransitGatewayRouteTableId = aws_ec2_transit_gateway_route_table.Example.Id,
});
}
}
RouteTablePropagationArgs
RouteTablePropagationState
RouteTableState
TransitGateway
Manages an EC2 Transit Gateway.
Example Usage
using Pulumi;
using Aws = Pulumi.Aws;
class MyStack : Stack
{
public MyStack()
{
var example = new Aws.Ec2TransitGateway.TransitGateway("example", new Aws.Ec2TransitGateway.TransitGatewayArgs
{
Description = "example",
});
}
}
TransitGatewayArgs
TransitGatewayState
VpcAttachment
Manages an EC2 Transit Gateway VPC Attachment. For examples of custom route table association and propagation, see the EC2 Transit Gateway Networking Examples Guide.
Example Usage
using Pulumi;
using Aws = Pulumi.Aws;
class MyStack : Stack
{
public MyStack()
{
var example = new Aws.Ec2TransitGateway.VpcAttachment("example", new Aws.Ec2TransitGateway.VpcAttachmentArgs
{
SubnetIds =
{
aws_subnet.Example.Id,
},
TransitGatewayId = aws_ec2_transit_gateway.Example.Id,
VpcId = aws_vpc.Example.Id,
});
}
}
VpcAttachmentAccepter
Manages the accepter's side of an EC2 Transit Gateway VPC Attachment.
When a cross-account (requester's AWS account differs from the accepter's AWS account) EC2 Transit Gateway VPC Attachment
is created, an EC2 Transit Gateway VPC Attachment resource is automatically created in the accepter's account.
The requester can use the aws.ec2transitgateway.VpcAttachment resource to manage its side of the connection
and the accepter can use the aws.ec2transitgateway.VpcAttachmentAccepter resource to "adopt" its side of the
connection into management.
Example Usage
using Pulumi;
using Aws = Pulumi.Aws;
class MyStack : Stack
{
public MyStack()
{
var example = new Aws.Ec2TransitGateway.VpcAttachmentAccepter("example", new Aws.Ec2TransitGateway.VpcAttachmentAccepterArgs
{
Tags =
{
{ "Name", "Example cross-account attachment" },
},
TransitGatewayAttachmentId = aws_ec2_transit_gateway_vpc_attachment.Example.Id,
});
}
}