Connect Attachment Args
data class ConnectAttachmentArgs(val coreNetworkId: Output<String>? = null, val edgeLocation: Output<String>? = null, val options: Output<ConnectAttachmentOptionsArgs>? = null, val tags: Output<Map<String, String>>? = null, val transportAttachmentId: Output<String>? = null) : ConvertibleToJava<ConnectAttachmentArgs>
Resource for managing an AWS Network Manager ConnectAttachment.
Example Usage
Basic Usage
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const example = new aws.networkmanager.VpcAttachment("example", {
subnetArns: exampleAwsSubnet.map(__item => __item.arn),
coreNetworkId: exampleAwsccNetworkmanagerCoreNetwork.id,
vpcArn: exampleAwsVpc.arn,
});
const exampleConnectAttachment = new aws.networkmanager.ConnectAttachment("example", {
coreNetworkId: exampleAwsccNetworkmanagerCoreNetwork.id,
transportAttachmentId: example.id,
edgeLocation: example.edgeLocation,
options: {
protocol: "GRE",
},
});
Content copied to clipboard
import pulumi
import pulumi_aws as aws
example = aws.networkmanager.VpcAttachment("example",
subnet_arns=[__item["arn"] for __item in example_aws_subnet],
core_network_id=example_awscc_networkmanager_core_network["id"],
vpc_arn=example_aws_vpc["arn"])
example_connect_attachment = aws.networkmanager.ConnectAttachment("example",
core_network_id=example_awscc_networkmanager_core_network["id"],
transport_attachment_id=example.id,
edge_location=example.edge_location,
options={
"protocol": "GRE",
})
Content copied to clipboard
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var example = new Aws.NetworkManager.VpcAttachment("example", new()
{
SubnetArns = exampleAwsSubnet.Select(__item => __item.Arn).ToList(),
CoreNetworkId = exampleAwsccNetworkmanagerCoreNetwork.Id,
VpcArn = exampleAwsVpc.Arn,
});
var exampleConnectAttachment = new Aws.NetworkManager.ConnectAttachment("example", new()
{
CoreNetworkId = exampleAwsccNetworkmanagerCoreNetwork.Id,
TransportAttachmentId = example.Id,
EdgeLocation = example.EdgeLocation,
Options = new Aws.NetworkManager.Inputs.ConnectAttachmentOptionsArgs
{
Protocol = "GRE",
},
});
});
Content copied to clipboard
package main
import (
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/networkmanager"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
var splat0 []interface{}
for _, val0 := range exampleAwsSubnet {
splat0 = append(splat0, val0.Arn)
}
example, err := networkmanager.NewVpcAttachment(ctx, "example", &networkmanager.VpcAttachmentArgs{
SubnetArns: toPulumiArray(splat0),
CoreNetworkId: pulumi.Any(exampleAwsccNetworkmanagerCoreNetwork.Id),
VpcArn: pulumi.Any(exampleAwsVpc.Arn),
})
if err != nil {
return err
}
_, err = networkmanager.NewConnectAttachment(ctx, "example", &networkmanager.ConnectAttachmentArgs{
CoreNetworkId: pulumi.Any(exampleAwsccNetworkmanagerCoreNetwork.Id),
TransportAttachmentId: example.ID(),
EdgeLocation: example.EdgeLocation,
Options: &networkmanager.ConnectAttachmentOptionsArgs{
Protocol: pulumi.String("GRE"),
},
})
if err != nil {
return err
}
return nil
})
}
func toPulumiArray(arr []) pulumi.Array {
var pulumiArr pulumi.Array
for _, v := range arr {
pulumiArr = append(pulumiArr, pulumi.(v))
}
return pulumiArr
}
Content copied to clipboard
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.networkmanager.VpcAttachment;
import com.pulumi.aws.networkmanager.VpcAttachmentArgs;
import com.pulumi.aws.networkmanager.ConnectAttachment;
import com.pulumi.aws.networkmanager.ConnectAttachmentArgs;
import com.pulumi.aws.networkmanager.inputs.ConnectAttachmentOptionsArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var example = new VpcAttachment("example", VpcAttachmentArgs.builder()
.subnetArns(exampleAwsSubnet.stream().map(element -> element.arn()).collect(toList()))
.coreNetworkId(exampleAwsccNetworkmanagerCoreNetwork.id())
.vpcArn(exampleAwsVpc.arn())
.build());
var exampleConnectAttachment = new ConnectAttachment("exampleConnectAttachment", ConnectAttachmentArgs.builder()
.coreNetworkId(exampleAwsccNetworkmanagerCoreNetwork.id())
.transportAttachmentId(example.id())
.edgeLocation(example.edgeLocation())
.options(ConnectAttachmentOptionsArgs.builder()
.protocol("GRE")
.build())
.build());
}
}
Content copied to clipboard
Usage with attachment accepter
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const example = new aws.networkmanager.VpcAttachment("example", {
subnetArns: exampleAwsSubnet.map(__item => __item.arn),
coreNetworkId: exampleAwsccNetworkmanagerCoreNetwork.id,
vpcArn: exampleAwsVpc.arn,
});
const exampleAttachmentAccepter = new aws.networkmanager.AttachmentAccepter("example", {
attachmentId: example.id,
attachmentType: example.attachmentType,
});
const exampleConnectAttachment = new aws.networkmanager.ConnectAttachment("example", {
coreNetworkId: exampleAwsccNetworkmanagerCoreNetwork.id,
transportAttachmentId: example.id,
edgeLocation: example.edgeLocation,
options: {
protocol: "GRE",
},
}, {
dependsOn: [test],
});
const example2 = new aws.networkmanager.AttachmentAccepter("example2", {
attachmentId: exampleConnectAttachment.id,
attachmentType: exampleConnectAttachment.attachmentType,
});
Content copied to clipboard
import pulumi
import pulumi_aws as aws
example = aws.networkmanager.VpcAttachment("example",
subnet_arns=[__item["arn"] for __item in example_aws_subnet],
core_network_id=example_awscc_networkmanager_core_network["id"],
vpc_arn=example_aws_vpc["arn"])
example_attachment_accepter = aws.networkmanager.AttachmentAccepter("example",
attachment_id=example.id,
attachment_type=example.attachment_type)
example_connect_attachment = aws.networkmanager.ConnectAttachment("example",
core_network_id=example_awscc_networkmanager_core_network["id"],
transport_attachment_id=example.id,
edge_location=example.edge_location,
options={
"protocol": "GRE",
},
opts = pulumi.ResourceOptions(depends_on=[test]))
example2 = aws.networkmanager.AttachmentAccepter("example2",
attachment_id=example_connect_attachment.id,
attachment_type=example_connect_attachment.attachment_type)
Content copied to clipboard
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var example = new Aws.NetworkManager.VpcAttachment("example", new()
{
SubnetArns = exampleAwsSubnet.Select(__item => __item.Arn).ToList(),
CoreNetworkId = exampleAwsccNetworkmanagerCoreNetwork.Id,
VpcArn = exampleAwsVpc.Arn,
});
var exampleAttachmentAccepter = new Aws.NetworkManager.AttachmentAccepter("example", new()
{
AttachmentId = example.Id,
AttachmentType = example.AttachmentType,
});
var exampleConnectAttachment = new Aws.NetworkManager.ConnectAttachment("example", new()
{
CoreNetworkId = exampleAwsccNetworkmanagerCoreNetwork.Id,
TransportAttachmentId = example.Id,
EdgeLocation = example.EdgeLocation,
Options = new Aws.NetworkManager.Inputs.ConnectAttachmentOptionsArgs
{
Protocol = "GRE",
},
}, new CustomResourceOptions
{
DependsOn =
{
test,
},
});
var example2 = new Aws.NetworkManager.AttachmentAccepter("example2", new()
{
AttachmentId = exampleConnectAttachment.Id,
AttachmentType = exampleConnectAttachment.AttachmentType,
});
});
Content copied to clipboard
package main
import (
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/networkmanager"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
var splat0 []interface{}
for _, val0 := range exampleAwsSubnet {
splat0 = append(splat0, val0.Arn)
}
example, err := networkmanager.NewVpcAttachment(ctx, "example", &networkmanager.VpcAttachmentArgs{
SubnetArns: toPulumiArray(splat0),
CoreNetworkId: pulumi.Any(exampleAwsccNetworkmanagerCoreNetwork.Id),
VpcArn: pulumi.Any(exampleAwsVpc.Arn),
})
if err != nil {
return err
}
_, err = networkmanager.NewAttachmentAccepter(ctx, "example", &networkmanager.AttachmentAccepterArgs{
AttachmentId: example.ID(),
AttachmentType: example.AttachmentType,
})
if err != nil {
return err
}
exampleConnectAttachment, err := networkmanager.NewConnectAttachment(ctx, "example", &networkmanager.ConnectAttachmentArgs{
CoreNetworkId: pulumi.Any(exampleAwsccNetworkmanagerCoreNetwork.Id),
TransportAttachmentId: example.ID(),
EdgeLocation: example.EdgeLocation,
Options: &networkmanager.ConnectAttachmentOptionsArgs{
Protocol: pulumi.String("GRE"),
},
}, pulumi.DependsOn([]pulumi.Resource{
test,
}))
if err != nil {
return err
}
_, err = networkmanager.NewAttachmentAccepter(ctx, "example2", &networkmanager.AttachmentAccepterArgs{
AttachmentId: exampleConnectAttachment.ID(),
AttachmentType: exampleConnectAttachment.AttachmentType,
})
if err != nil {
return err
}
return nil
})
}
func toPulumiArray(arr []) pulumi.Array {
var pulumiArr pulumi.Array
for _, v := range arr {
pulumiArr = append(pulumiArr, pulumi.(v))
}
return pulumiArr
}
Content copied to clipboard
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.networkmanager.VpcAttachment;
import com.pulumi.aws.networkmanager.VpcAttachmentArgs;
import com.pulumi.aws.networkmanager.AttachmentAccepter;
import com.pulumi.aws.networkmanager.AttachmentAccepterArgs;
import com.pulumi.aws.networkmanager.ConnectAttachment;
import com.pulumi.aws.networkmanager.ConnectAttachmentArgs;
import com.pulumi.aws.networkmanager.inputs.ConnectAttachmentOptionsArgs;
import com.pulumi.resources.CustomResourceOptions;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var example = new VpcAttachment("example", VpcAttachmentArgs.builder()
.subnetArns(exampleAwsSubnet.stream().map(element -> element.arn()).collect(toList()))
.coreNetworkId(exampleAwsccNetworkmanagerCoreNetwork.id())
.vpcArn(exampleAwsVpc.arn())
.build());
var exampleAttachmentAccepter = new AttachmentAccepter("exampleAttachmentAccepter", AttachmentAccepterArgs.builder()
.attachmentId(example.id())
.attachmentType(example.attachmentType())
.build());
var exampleConnectAttachment = new ConnectAttachment("exampleConnectAttachment", ConnectAttachmentArgs.builder()
.coreNetworkId(exampleAwsccNetworkmanagerCoreNetwork.id())
.transportAttachmentId(example.id())
.edgeLocation(example.edgeLocation())
.options(ConnectAttachmentOptionsArgs.builder()
.protocol("GRE")
.build())
.build(), CustomResourceOptions.builder()
.dependsOn(test)
.build());
var example2 = new AttachmentAccepter("example2", AttachmentAccepterArgs.builder()
.attachmentId(exampleConnectAttachment.id())
.attachmentType(exampleConnectAttachment.attachmentType())
.build());
}
}
Content copied to clipboard
Import
Using pulumi import
, import aws_networkmanager_connect_attachment
using the attachment ID. For example:
$ pulumi import aws:networkmanager/connectAttachment:ConnectAttachment example attachment-0f8fa60d2238d1bd8
Content copied to clipboard
Properties
Link copied to clipboard
The ID of a core network where you want to create the attachment.
Link copied to clipboard
The Region where the edge is located.
Link copied to clipboard
Options block. See options for more information. The following arguments are optional:
Link copied to clipboard
The ID of the attachment between the two connections.