ConnectAttachmentArgs

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",
},
});
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",
})
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",
},
});
});
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
}
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());
}
}

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,
});
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)
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,
});
});
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
}
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());
}
}

Import

Using pulumi import, import aws_networkmanager_connect_attachment using the attachment ID. For example:

$ pulumi import aws:networkmanager/connectAttachment:ConnectAttachment example attachment-0f8fa60d2238d1bd8

Constructors

Link copied to clipboard
constructor(coreNetworkId: Output<String>? = null, edgeLocation: Output<String>? = null, options: Output<ConnectAttachmentOptionsArgs>? = null, tags: Output<Map<String, String>>? = null, transportAttachmentId: Output<String>? = null)

Properties

Link copied to clipboard
val coreNetworkId: Output<String>? = null

The ID of a core network where you want to create the attachment.

Link copied to clipboard
val edgeLocation: Output<String>? = null

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
val tags: Output<Map<String, String>>? = null

Key-value tags for the attachment. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.

Link copied to clipboard
val transportAttachmentId: Output<String>? = null

The ID of the attachment between the two connections.

Functions

Link copied to clipboard
open override fun toJava(): ConnectAttachmentArgs