networkmanager

package
v7.1.0 Latest Latest
Warning

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

Go to latest
Published: Jul 21, 2025 License: Apache-2.0 Imports: 7 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AttachmentAccepter

type AttachmentAccepter struct {
	pulumi.CustomResourceState

	// ID of the attachment.
	AttachmentId pulumi.StringOutput `pulumi:"attachmentId"`
	// Policy rule number associated with the attachment.
	AttachmentPolicyRuleNumber pulumi.IntOutput `pulumi:"attachmentPolicyRuleNumber"`
	// Type of attachment. Valid values: `CONNECT`, `DIRECT_CONNECT_GATEWAY`, `SITE_TO_SITE_VPN`, `TRANSIT_GATEWAY_ROUTE_TABLE`, `VPC`.
	AttachmentType pulumi.StringOutput `pulumi:"attachmentType"`
	// ARN of the core network.
	CoreNetworkArn pulumi.StringOutput `pulumi:"coreNetworkArn"`
	// ID of the core network.
	CoreNetworkId pulumi.StringOutput `pulumi:"coreNetworkId"`
	// Region where the edge is located. This is returned for all attachment types except Direct Connect gateway attachments, which instead return `edgeLocations`.
	EdgeLocation pulumi.StringOutput `pulumi:"edgeLocation"`
	// Edge locations that the Direct Connect gateway is associated with. This is returned only for Direct Connect gateway attachments. All other attachment types return `edgeLocation`.
	EdgeLocations pulumi.StringArrayOutput `pulumi:"edgeLocations"`
	// ID of the attachment account owner.
	OwnerAccountId pulumi.StringOutput `pulumi:"ownerAccountId"`
	// Attachment resource ARN.
	ResourceArn pulumi.StringOutput `pulumi:"resourceArn"`
	// Name of the segment attachment.
	SegmentName pulumi.StringOutput `pulumi:"segmentName"`
	// State of the attachment.
	State pulumi.StringOutput `pulumi:"state"`
}

Manages an AWS Network Manager Attachment Accepter.

Use this resource to accept cross-account attachments in AWS Network Manager. When an attachment is created in one account and needs to be accepted by another account that owns the core network, this resource handles the acceptance process.

## Example Usage

### VPC Attachment

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v7/go/aws/networkmanager"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := networkmanager.NewAttachmentAccepter(ctx, "example", &networkmanager.AttachmentAccepterArgs{
			AttachmentId:   pulumi.Any(exampleAwsNetworkmanagerVpcAttachment.Id),
			AttachmentType: pulumi.Any(exampleAwsNetworkmanagerVpcAttachment.AttachmentType),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

### Site-to-Site VPN Attachment

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v7/go/aws/networkmanager"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := networkmanager.NewAttachmentAccepter(ctx, "example", &networkmanager.AttachmentAccepterArgs{
			AttachmentId:   pulumi.Any(exampleAwsNetworkmanagerSiteToSiteVpnAttachment.Id),
			AttachmentType: pulumi.Any(exampleAwsNetworkmanagerSiteToSiteVpnAttachment.AttachmentType),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

### Connect Attachment

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v7/go/aws/networkmanager"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := networkmanager.NewAttachmentAccepter(ctx, "example", &networkmanager.AttachmentAccepterArgs{
			AttachmentId:   pulumi.Any(exampleAwsNetworkmanagerConnectAttachment.Id),
			AttachmentType: pulumi.Any(exampleAwsNetworkmanagerConnectAttachment.AttachmentType),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

### Transit Gateway Route Table Attachment

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v7/go/aws/networkmanager"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := networkmanager.NewAttachmentAccepter(ctx, "example", &networkmanager.AttachmentAccepterArgs{
			AttachmentId:   pulumi.Any(exampleAwsNetworkmanagerTransitGatewayRouteTableAttachment.Id),
			AttachmentType: pulumi.Any(exampleAwsNetworkmanagerTransitGatewayRouteTableAttachment.AttachmentType),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

### Direct Connect Gateway Attachment

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v7/go/aws/networkmanager"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := networkmanager.NewAttachmentAccepter(ctx, "example", &networkmanager.AttachmentAccepterArgs{
			AttachmentId:   pulumi.Any(exampleAwsNetworkmanagerDxGatewayAttachment.Id),
			AttachmentType: pulumi.Any(exampleAwsNetworkmanagerDxGatewayAttachment.AttachmentType),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetAttachmentAccepter

func GetAttachmentAccepter(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AttachmentAccepterState, opts ...pulumi.ResourceOption) (*AttachmentAccepter, error)

GetAttachmentAccepter gets an existing AttachmentAccepter 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 NewAttachmentAccepter

func NewAttachmentAccepter(ctx *pulumi.Context,
	name string, args *AttachmentAccepterArgs, opts ...pulumi.ResourceOption) (*AttachmentAccepter, error)

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

func (*AttachmentAccepter) ElementType

func (*AttachmentAccepter) ElementType() reflect.Type

func (*AttachmentAccepter) ToAttachmentAccepterOutput

func (i *AttachmentAccepter) ToAttachmentAccepterOutput() AttachmentAccepterOutput

func (*AttachmentAccepter) ToAttachmentAccepterOutputWithContext

func (i *AttachmentAccepter) ToAttachmentAccepterOutputWithContext(ctx context.Context) AttachmentAccepterOutput

type AttachmentAccepterArgs

type AttachmentAccepterArgs struct {
	// ID of the attachment.
	AttachmentId pulumi.StringInput
	// Type of attachment. Valid values: `CONNECT`, `DIRECT_CONNECT_GATEWAY`, `SITE_TO_SITE_VPN`, `TRANSIT_GATEWAY_ROUTE_TABLE`, `VPC`.
	AttachmentType pulumi.StringInput
}

The set of arguments for constructing a AttachmentAccepter resource.

func (AttachmentAccepterArgs) ElementType

func (AttachmentAccepterArgs) ElementType() reflect.Type

type AttachmentAccepterArray

type AttachmentAccepterArray []AttachmentAccepterInput

func (AttachmentAccepterArray) ElementType

func (AttachmentAccepterArray) ElementType() reflect.Type

func (AttachmentAccepterArray) ToAttachmentAccepterArrayOutput

func (i AttachmentAccepterArray) ToAttachmentAccepterArrayOutput() AttachmentAccepterArrayOutput

func (AttachmentAccepterArray) ToAttachmentAccepterArrayOutputWithContext

func (i AttachmentAccepterArray) ToAttachmentAccepterArrayOutputWithContext(ctx context.Context) AttachmentAccepterArrayOutput

type AttachmentAccepterArrayInput

type AttachmentAccepterArrayInput interface {
	pulumi.Input

	ToAttachmentAccepterArrayOutput() AttachmentAccepterArrayOutput
	ToAttachmentAccepterArrayOutputWithContext(context.Context) AttachmentAccepterArrayOutput
}

AttachmentAccepterArrayInput is an input type that accepts AttachmentAccepterArray and AttachmentAccepterArrayOutput values. You can construct a concrete instance of `AttachmentAccepterArrayInput` via:

AttachmentAccepterArray{ AttachmentAccepterArgs{...} }

type AttachmentAccepterArrayOutput

type AttachmentAccepterArrayOutput struct{ *pulumi.OutputState }

func (AttachmentAccepterArrayOutput) ElementType

func (AttachmentAccepterArrayOutput) Index

func (AttachmentAccepterArrayOutput) ToAttachmentAccepterArrayOutput

func (o AttachmentAccepterArrayOutput) ToAttachmentAccepterArrayOutput() AttachmentAccepterArrayOutput

func (AttachmentAccepterArrayOutput) ToAttachmentAccepterArrayOutputWithContext

func (o AttachmentAccepterArrayOutput) ToAttachmentAccepterArrayOutputWithContext(ctx context.Context) AttachmentAccepterArrayOutput

type AttachmentAccepterInput

type AttachmentAccepterInput interface {
	pulumi.Input

	ToAttachmentAccepterOutput() AttachmentAccepterOutput
	ToAttachmentAccepterOutputWithContext(ctx context.Context) AttachmentAccepterOutput
}

type AttachmentAccepterMap

type AttachmentAccepterMap map[string]AttachmentAccepterInput

func (AttachmentAccepterMap) ElementType

func (AttachmentAccepterMap) ElementType() reflect.Type

func (AttachmentAccepterMap) ToAttachmentAccepterMapOutput

func (i AttachmentAccepterMap) ToAttachmentAccepterMapOutput() AttachmentAccepterMapOutput

func (AttachmentAccepterMap) ToAttachmentAccepterMapOutputWithContext

func (i AttachmentAccepterMap) ToAttachmentAccepterMapOutputWithContext(ctx context.Context) AttachmentAccepterMapOutput

type AttachmentAccepterMapInput

type AttachmentAccepterMapInput interface {
	pulumi.Input

	ToAttachmentAccepterMapOutput() AttachmentAccepterMapOutput
	ToAttachmentAccepterMapOutputWithContext(context.Context) AttachmentAccepterMapOutput
}

AttachmentAccepterMapInput is an input type that accepts AttachmentAccepterMap and AttachmentAccepterMapOutput values. You can construct a concrete instance of `AttachmentAccepterMapInput` via:

AttachmentAccepterMap{ "key": AttachmentAccepterArgs{...} }

type AttachmentAccepterMapOutput

type AttachmentAccepterMapOutput struct{ *pulumi.OutputState }

func (AttachmentAccepterMapOutput) ElementType

func (AttachmentAccepterMapOutput) MapIndex

func (AttachmentAccepterMapOutput) ToAttachmentAccepterMapOutput

func (o AttachmentAccepterMapOutput) ToAttachmentAccepterMapOutput() AttachmentAccepterMapOutput

func (AttachmentAccepterMapOutput) ToAttachmentAccepterMapOutputWithContext

func (o AttachmentAccepterMapOutput) ToAttachmentAccepterMapOutputWithContext(ctx context.Context) AttachmentAccepterMapOutput

type AttachmentAccepterOutput

type AttachmentAccepterOutput struct{ *pulumi.OutputState }

func (AttachmentAccepterOutput) AttachmentId

func (o AttachmentAccepterOutput) AttachmentId() pulumi.StringOutput

ID of the attachment.

func (AttachmentAccepterOutput) AttachmentPolicyRuleNumber

func (o AttachmentAccepterOutput) AttachmentPolicyRuleNumber() pulumi.IntOutput

Policy rule number associated with the attachment.

func (AttachmentAccepterOutput) AttachmentType

func (o AttachmentAccepterOutput) AttachmentType() pulumi.StringOutput

Type of attachment. Valid values: `CONNECT`, `DIRECT_CONNECT_GATEWAY`, `SITE_TO_SITE_VPN`, `TRANSIT_GATEWAY_ROUTE_TABLE`, `VPC`.

func (AttachmentAccepterOutput) CoreNetworkArn

func (o AttachmentAccepterOutput) CoreNetworkArn() pulumi.StringOutput

ARN of the core network.

func (AttachmentAccepterOutput) CoreNetworkId

func (o AttachmentAccepterOutput) CoreNetworkId() pulumi.StringOutput

ID of the core network.

func (AttachmentAccepterOutput) EdgeLocation

func (o AttachmentAccepterOutput) EdgeLocation() pulumi.StringOutput

Region where the edge is located. This is returned for all attachment types except Direct Connect gateway attachments, which instead return `edgeLocations`.

func (AttachmentAccepterOutput) EdgeLocations

Edge locations that the Direct Connect gateway is associated with. This is returned only for Direct Connect gateway attachments. All other attachment types return `edgeLocation`.

func (AttachmentAccepterOutput) ElementType

func (AttachmentAccepterOutput) ElementType() reflect.Type

func (AttachmentAccepterOutput) OwnerAccountId

func (o AttachmentAccepterOutput) OwnerAccountId() pulumi.StringOutput

ID of the attachment account owner.

func (AttachmentAccepterOutput) ResourceArn

Attachment resource ARN.

func (AttachmentAccepterOutput) SegmentName

Name of the segment attachment.

func (AttachmentAccepterOutput) State

State of the attachment.

func (AttachmentAccepterOutput) ToAttachmentAccepterOutput

func (o AttachmentAccepterOutput) ToAttachmentAccepterOutput() AttachmentAccepterOutput

func (AttachmentAccepterOutput) ToAttachmentAccepterOutputWithContext

func (o AttachmentAccepterOutput) ToAttachmentAccepterOutputWithContext(ctx context.Context) AttachmentAccepterOutput

type AttachmentAccepterState

type AttachmentAccepterState struct {
	// ID of the attachment.
	AttachmentId pulumi.StringPtrInput
	// Policy rule number associated with the attachment.
	AttachmentPolicyRuleNumber pulumi.IntPtrInput
	// Type of attachment. Valid values: `CONNECT`, `DIRECT_CONNECT_GATEWAY`, `SITE_TO_SITE_VPN`, `TRANSIT_GATEWAY_ROUTE_TABLE`, `VPC`.
	AttachmentType pulumi.StringPtrInput
	// ARN of the core network.
	CoreNetworkArn pulumi.StringPtrInput
	// ID of the core network.
	CoreNetworkId pulumi.StringPtrInput
	// Region where the edge is located. This is returned for all attachment types except Direct Connect gateway attachments, which instead return `edgeLocations`.
	EdgeLocation pulumi.StringPtrInput
	// Edge locations that the Direct Connect gateway is associated with. This is returned only for Direct Connect gateway attachments. All other attachment types return `edgeLocation`.
	EdgeLocations pulumi.StringArrayInput
	// ID of the attachment account owner.
	OwnerAccountId pulumi.StringPtrInput
	// Attachment resource ARN.
	ResourceArn pulumi.StringPtrInput
	// Name of the segment attachment.
	SegmentName pulumi.StringPtrInput
	// State of the attachment.
	State pulumi.StringPtrInput
}

func (AttachmentAccepterState) ElementType

func (AttachmentAccepterState) ElementType() reflect.Type

type ConnectAttachment

type ConnectAttachment struct {
	pulumi.CustomResourceState

	// ARN of the attachment.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// ID of the attachment.
	AttachmentId pulumi.StringOutput `pulumi:"attachmentId"`
	// Policy rule number associated with the attachment.
	AttachmentPolicyRuleNumber pulumi.IntOutput `pulumi:"attachmentPolicyRuleNumber"`
	// Type of attachment.
	AttachmentType pulumi.StringOutput `pulumi:"attachmentType"`
	// ARN of a core network.
	CoreNetworkArn pulumi.StringOutput `pulumi:"coreNetworkArn"`
	// ID of a core network where you want to create the attachment.
	CoreNetworkId pulumi.StringOutput `pulumi:"coreNetworkId"`
	// Region where the edge is located.
	EdgeLocation pulumi.StringOutput `pulumi:"edgeLocation"`
	// Options block. See options for more information.
	Options ConnectAttachmentOptionsOutput `pulumi:"options"`
	// ID of the attachment account owner.
	OwnerAccountId pulumi.StringOutput `pulumi:"ownerAccountId"`
	// Attachment resource ARN.
	ResourceArn pulumi.StringOutput `pulumi:"resourceArn"`
	// Name of the segment attachment.
	SegmentName pulumi.StringOutput `pulumi:"segmentName"`
	// State of the attachment.
	State pulumi.StringOutput `pulumi:"state"`
	// Key-value tags for the attachment. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
	// ID of the attachment between the two connections.
	//
	// The following arguments are optional:
	TransportAttachmentId pulumi.StringOutput `pulumi:"transportAttachmentId"`
}

Manages an AWS Network Manager Connect Attachment.

Use this resource to create a Connect attachment in AWS Network Manager. Connect attachments enable you to connect your on-premises networks to your core network through a VPC or Transit Gateway attachment.

## Example Usage

### Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v7/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 } ```

### Usage with attachment accepter

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v7/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 } exampleAttachmentAccepter, 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{ exampleAttachmentAccepter, })) 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 } ```

## Import

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

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

func GetConnectAttachment

func GetConnectAttachment(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ConnectAttachmentState, opts ...pulumi.ResourceOption) (*ConnectAttachment, error)

GetConnectAttachment gets an existing ConnectAttachment 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 NewConnectAttachment

func NewConnectAttachment(ctx *pulumi.Context,
	name string, args *ConnectAttachmentArgs, opts ...pulumi.ResourceOption) (*ConnectAttachment, error)

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

func (*ConnectAttachment) ElementType

func (*ConnectAttachment) ElementType() reflect.Type

func (*ConnectAttachment) ToConnectAttachmentOutput

func (i *ConnectAttachment) ToConnectAttachmentOutput() ConnectAttachmentOutput

func (*ConnectAttachment) ToConnectAttachmentOutputWithContext

func (i *ConnectAttachment) ToConnectAttachmentOutputWithContext(ctx context.Context) ConnectAttachmentOutput

type ConnectAttachmentArgs

type ConnectAttachmentArgs struct {
	// ID of a core network where you want to create the attachment.
	CoreNetworkId pulumi.StringInput
	// Region where the edge is located.
	EdgeLocation pulumi.StringInput
	// Options block. See options for more information.
	Options ConnectAttachmentOptionsInput
	// Key-value tags for the attachment. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// ID of the attachment between the two connections.
	//
	// The following arguments are optional:
	TransportAttachmentId pulumi.StringInput
}

The set of arguments for constructing a ConnectAttachment resource.

func (ConnectAttachmentArgs) ElementType

func (ConnectAttachmentArgs) ElementType() reflect.Type

type ConnectAttachmentArray

type ConnectAttachmentArray []ConnectAttachmentInput

func (ConnectAttachmentArray) ElementType

func (ConnectAttachmentArray) ElementType() reflect.Type

func (ConnectAttachmentArray) ToConnectAttachmentArrayOutput

func (i ConnectAttachmentArray) ToConnectAttachmentArrayOutput() ConnectAttachmentArrayOutput

func (ConnectAttachmentArray) ToConnectAttachmentArrayOutputWithContext

func (i ConnectAttachmentArray) ToConnectAttachmentArrayOutputWithContext(ctx context.Context) ConnectAttachmentArrayOutput

type ConnectAttachmentArrayInput

type ConnectAttachmentArrayInput interface {
	pulumi.Input

	ToConnectAttachmentArrayOutput() ConnectAttachmentArrayOutput
	ToConnectAttachmentArrayOutputWithContext(context.Context) ConnectAttachmentArrayOutput
}

ConnectAttachmentArrayInput is an input type that accepts ConnectAttachmentArray and ConnectAttachmentArrayOutput values. You can construct a concrete instance of `ConnectAttachmentArrayInput` via:

ConnectAttachmentArray{ ConnectAttachmentArgs{...} }

type ConnectAttachmentArrayOutput

type ConnectAttachmentArrayOutput struct{ *pulumi.OutputState }

func (ConnectAttachmentArrayOutput) ElementType

func (ConnectAttachmentArrayOutput) Index

func (ConnectAttachmentArrayOutput) ToConnectAttachmentArrayOutput

func (o ConnectAttachmentArrayOutput) ToConnectAttachmentArrayOutput() ConnectAttachmentArrayOutput

func (ConnectAttachmentArrayOutput) ToConnectAttachmentArrayOutputWithContext

func (o ConnectAttachmentArrayOutput) ToConnectAttachmentArrayOutputWithContext(ctx context.Context) ConnectAttachmentArrayOutput

type ConnectAttachmentInput

type ConnectAttachmentInput interface {
	pulumi.Input

	ToConnectAttachmentOutput() ConnectAttachmentOutput
	ToConnectAttachmentOutputWithContext(ctx context.Context) ConnectAttachmentOutput
}

type ConnectAttachmentMap

type ConnectAttachmentMap map[string]ConnectAttachmentInput

func (ConnectAttachmentMap) ElementType

func (ConnectAttachmentMap) ElementType() reflect.Type

func (ConnectAttachmentMap) ToConnectAttachmentMapOutput

func (i ConnectAttachmentMap) ToConnectAttachmentMapOutput() ConnectAttachmentMapOutput

func (ConnectAttachmentMap) ToConnectAttachmentMapOutputWithContext

func (i ConnectAttachmentMap) ToConnectAttachmentMapOutputWithContext(ctx context.Context) ConnectAttachmentMapOutput

type ConnectAttachmentMapInput

type ConnectAttachmentMapInput interface {
	pulumi.Input

	ToConnectAttachmentMapOutput() ConnectAttachmentMapOutput
	ToConnectAttachmentMapOutputWithContext(context.Context) ConnectAttachmentMapOutput
}

ConnectAttachmentMapInput is an input type that accepts ConnectAttachmentMap and ConnectAttachmentMapOutput values. You can construct a concrete instance of `ConnectAttachmentMapInput` via:

ConnectAttachmentMap{ "key": ConnectAttachmentArgs{...} }

type ConnectAttachmentMapOutput

type ConnectAttachmentMapOutput struct{ *pulumi.OutputState }

func (ConnectAttachmentMapOutput) ElementType

func (ConnectAttachmentMapOutput) ElementType() reflect.Type

func (ConnectAttachmentMapOutput) MapIndex

func (ConnectAttachmentMapOutput) ToConnectAttachmentMapOutput

func (o ConnectAttachmentMapOutput) ToConnectAttachmentMapOutput() ConnectAttachmentMapOutput

func (ConnectAttachmentMapOutput) ToConnectAttachmentMapOutputWithContext

func (o ConnectAttachmentMapOutput) ToConnectAttachmentMapOutputWithContext(ctx context.Context) ConnectAttachmentMapOutput

type ConnectAttachmentOptions

type ConnectAttachmentOptions struct {
	// Protocol used for the attachment connection. Valid values: `GRE`, `NO_ENCAP`.
	Protocol *string `pulumi:"protocol"`
}

type ConnectAttachmentOptionsArgs

type ConnectAttachmentOptionsArgs struct {
	// Protocol used for the attachment connection. Valid values: `GRE`, `NO_ENCAP`.
	Protocol pulumi.StringPtrInput `pulumi:"protocol"`
}

func (ConnectAttachmentOptionsArgs) ElementType

func (ConnectAttachmentOptionsArgs) ToConnectAttachmentOptionsOutput

func (i ConnectAttachmentOptionsArgs) ToConnectAttachmentOptionsOutput() ConnectAttachmentOptionsOutput

func (ConnectAttachmentOptionsArgs) ToConnectAttachmentOptionsOutputWithContext

func (i ConnectAttachmentOptionsArgs) ToConnectAttachmentOptionsOutputWithContext(ctx context.Context) ConnectAttachmentOptionsOutput

func (ConnectAttachmentOptionsArgs) ToConnectAttachmentOptionsPtrOutput

func (i ConnectAttachmentOptionsArgs) ToConnectAttachmentOptionsPtrOutput() ConnectAttachmentOptionsPtrOutput

func (ConnectAttachmentOptionsArgs) ToConnectAttachmentOptionsPtrOutputWithContext

func (i ConnectAttachmentOptionsArgs) ToConnectAttachmentOptionsPtrOutputWithContext(ctx context.Context) ConnectAttachmentOptionsPtrOutput

type ConnectAttachmentOptionsInput

type ConnectAttachmentOptionsInput interface {
	pulumi.Input

	ToConnectAttachmentOptionsOutput() ConnectAttachmentOptionsOutput
	ToConnectAttachmentOptionsOutputWithContext(context.Context) ConnectAttachmentOptionsOutput
}

ConnectAttachmentOptionsInput is an input type that accepts ConnectAttachmentOptionsArgs and ConnectAttachmentOptionsOutput values. You can construct a concrete instance of `ConnectAttachmentOptionsInput` via:

ConnectAttachmentOptionsArgs{...}

type ConnectAttachmentOptionsOutput

type ConnectAttachmentOptionsOutput struct{ *pulumi.OutputState }

func (ConnectAttachmentOptionsOutput) ElementType

func (ConnectAttachmentOptionsOutput) Protocol

Protocol used for the attachment connection. Valid values: `GRE`, `NO_ENCAP`.

func (ConnectAttachmentOptionsOutput) ToConnectAttachmentOptionsOutput

func (o ConnectAttachmentOptionsOutput) ToConnectAttachmentOptionsOutput() ConnectAttachmentOptionsOutput

func (ConnectAttachmentOptionsOutput) ToConnectAttachmentOptionsOutputWithContext

func (o ConnectAttachmentOptionsOutput) ToConnectAttachmentOptionsOutputWithContext(ctx context.Context) ConnectAttachmentOptionsOutput

func (ConnectAttachmentOptionsOutput) ToConnectAttachmentOptionsPtrOutput

func (o ConnectAttachmentOptionsOutput) ToConnectAttachmentOptionsPtrOutput() ConnectAttachmentOptionsPtrOutput

func (ConnectAttachmentOptionsOutput) ToConnectAttachmentOptionsPtrOutputWithContext

func (o ConnectAttachmentOptionsOutput) ToConnectAttachmentOptionsPtrOutputWithContext(ctx context.Context) ConnectAttachmentOptionsPtrOutput

type ConnectAttachmentOptionsPtrInput

type ConnectAttachmentOptionsPtrInput interface {
	pulumi.Input

	ToConnectAttachmentOptionsPtrOutput() ConnectAttachmentOptionsPtrOutput
	ToConnectAttachmentOptionsPtrOutputWithContext(context.Context) ConnectAttachmentOptionsPtrOutput
}

ConnectAttachmentOptionsPtrInput is an input type that accepts ConnectAttachmentOptionsArgs, ConnectAttachmentOptionsPtr and ConnectAttachmentOptionsPtrOutput values. You can construct a concrete instance of `ConnectAttachmentOptionsPtrInput` via:

        ConnectAttachmentOptionsArgs{...}

or:

        nil

type ConnectAttachmentOptionsPtrOutput

type ConnectAttachmentOptionsPtrOutput struct{ *pulumi.OutputState }

func (ConnectAttachmentOptionsPtrOutput) Elem

func (ConnectAttachmentOptionsPtrOutput) ElementType

func (ConnectAttachmentOptionsPtrOutput) Protocol

Protocol used for the attachment connection. Valid values: `GRE`, `NO_ENCAP`.

func (ConnectAttachmentOptionsPtrOutput) ToConnectAttachmentOptionsPtrOutput

func (o ConnectAttachmentOptionsPtrOutput) ToConnectAttachmentOptionsPtrOutput() ConnectAttachmentOptionsPtrOutput

func (ConnectAttachmentOptionsPtrOutput) ToConnectAttachmentOptionsPtrOutputWithContext

func (o ConnectAttachmentOptionsPtrOutput) ToConnectAttachmentOptionsPtrOutputWithContext(ctx context.Context) ConnectAttachmentOptionsPtrOutput

type ConnectAttachmentOutput

type ConnectAttachmentOutput struct{ *pulumi.OutputState }

func (ConnectAttachmentOutput) Arn

ARN of the attachment.

func (ConnectAttachmentOutput) AttachmentId

func (o ConnectAttachmentOutput) AttachmentId() pulumi.StringOutput

ID of the attachment.

func (ConnectAttachmentOutput) AttachmentPolicyRuleNumber

func (o ConnectAttachmentOutput) AttachmentPolicyRuleNumber() pulumi.IntOutput

Policy rule number associated with the attachment.

func (ConnectAttachmentOutput) AttachmentType

func (o ConnectAttachmentOutput) AttachmentType() pulumi.StringOutput

Type of attachment.

func (ConnectAttachmentOutput) CoreNetworkArn

func (o ConnectAttachmentOutput) CoreNetworkArn() pulumi.StringOutput

ARN of a core network.

func (ConnectAttachmentOutput) CoreNetworkId

func (o ConnectAttachmentOutput) CoreNetworkId() pulumi.StringOutput

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

func (ConnectAttachmentOutput) EdgeLocation

func (o ConnectAttachmentOutput) EdgeLocation() pulumi.StringOutput

Region where the edge is located.

func (ConnectAttachmentOutput) ElementType

func (ConnectAttachmentOutput) ElementType() reflect.Type

func (ConnectAttachmentOutput) Options

Options block. See options for more information.

func (ConnectAttachmentOutput) OwnerAccountId

func (o ConnectAttachmentOutput) OwnerAccountId() pulumi.StringOutput

ID of the attachment account owner.

func (ConnectAttachmentOutput) ResourceArn

Attachment resource ARN.

func (ConnectAttachmentOutput) SegmentName

Name of the segment attachment.

func (ConnectAttachmentOutput) State

State of the attachment.

func (ConnectAttachmentOutput) Tags

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

func (ConnectAttachmentOutput) TagsAll

Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.

func (ConnectAttachmentOutput) ToConnectAttachmentOutput

func (o ConnectAttachmentOutput) ToConnectAttachmentOutput() ConnectAttachmentOutput

func (ConnectAttachmentOutput) ToConnectAttachmentOutputWithContext

func (o ConnectAttachmentOutput) ToConnectAttachmentOutputWithContext(ctx context.Context) ConnectAttachmentOutput

func (ConnectAttachmentOutput) TransportAttachmentId

func (o ConnectAttachmentOutput) TransportAttachmentId() pulumi.StringOutput

ID of the attachment between the two connections.

The following arguments are optional:

type ConnectAttachmentState

type ConnectAttachmentState struct {
	// ARN of the attachment.
	Arn pulumi.StringPtrInput
	// ID of the attachment.
	AttachmentId pulumi.StringPtrInput
	// Policy rule number associated with the attachment.
	AttachmentPolicyRuleNumber pulumi.IntPtrInput
	// Type of attachment.
	AttachmentType pulumi.StringPtrInput
	// ARN of a core network.
	CoreNetworkArn pulumi.StringPtrInput
	// ID of a core network where you want to create the attachment.
	CoreNetworkId pulumi.StringPtrInput
	// Region where the edge is located.
	EdgeLocation pulumi.StringPtrInput
	// Options block. See options for more information.
	Options ConnectAttachmentOptionsPtrInput
	// ID of the attachment account owner.
	OwnerAccountId pulumi.StringPtrInput
	// Attachment resource ARN.
	ResourceArn pulumi.StringPtrInput
	// Name of the segment attachment.
	SegmentName pulumi.StringPtrInput
	// State of the attachment.
	State pulumi.StringPtrInput
	// Key-value tags for the attachment. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	TagsAll pulumi.StringMapInput
	// ID of the attachment between the two connections.
	//
	// The following arguments are optional:
	TransportAttachmentId pulumi.StringPtrInput
}

func (ConnectAttachmentState) ElementType

func (ConnectAttachmentState) ElementType() reflect.Type

type ConnectPeer

type ConnectPeer struct {
	pulumi.CustomResourceState

	// ARN of the Connect peer.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// Connect peer BGP options. See bgpOptions for more information.
	BgpOptions ConnectPeerBgpOptionsPtrOutput `pulumi:"bgpOptions"`
	// Configuration of the Connect peer.
	Configurations ConnectPeerConfigurationArrayOutput `pulumi:"configurations"`
	// ID of the connection attachment.
	ConnectAttachmentId pulumi.StringOutput `pulumi:"connectAttachmentId"`
	// ID of the Connect peer.
	ConnectPeerId pulumi.StringOutput `pulumi:"connectPeerId"`
	// Connect peer core network address.
	CoreNetworkAddress pulumi.StringPtrOutput `pulumi:"coreNetworkAddress"`
	// ID of a core network.
	CoreNetworkId pulumi.StringOutput `pulumi:"coreNetworkId"`
	// Timestamp when the Connect peer was created.
	CreatedAt pulumi.StringOutput `pulumi:"createdAt"`
	// Region where the peer is located.
	EdgeLocation pulumi.StringOutput `pulumi:"edgeLocation"`
	// Inside IP addresses used for BGP peering. Required when the Connect attachment protocol is `GRE`. See `networkmanager.ConnectAttachment` for details.
	InsideCidrBlocks pulumi.StringArrayOutput `pulumi:"insideCidrBlocks"`
	// Connect peer address.
	//
	// The following arguments are optional:
	PeerAddress pulumi.StringOutput `pulumi:"peerAddress"`
	// State of the Connect peer.
	State pulumi.StringOutput `pulumi:"state"`
	// Subnet ARN for the Connect peer. Required when the Connect attachment protocol is `NO_ENCAP`. See `networkmanager.ConnectAttachment` for details.
	SubnetArn pulumi.StringPtrOutput `pulumi:"subnetArn"`
	// Key-value tags for the attachment. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
}

Manages an AWS Network Manager Connect Peer.

Use this resource to create a Connect peer in AWS Network Manager. Connect peers establish BGP sessions with your on-premises networks through Connect attachments, enabling dynamic routing between your core network and external networks.

## Example Usage

### Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v7/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 } 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"), }, }) if err != nil { return err } _, err = networkmanager.NewConnectPeer(ctx, "example", &networkmanager.ConnectPeerArgs{ ConnectAttachmentId: exampleConnectAttachment.ID(), PeerAddress: pulumi.String("127.0.0.1"), BgpOptions: &networkmanager.ConnectPeerBgpOptionsArgs{ PeerAsn: pulumi.Int(65000), }, InsideCidrBlocks: pulumi.StringArray{ pulumi.String("172.16.0.0/16"), }, }) 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 } ```

### Usage with attachment accepter

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v7/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 } exampleAttachmentAccepter, 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{ exampleAttachmentAccepter, })) if err != nil { return err } example2, err := networkmanager.NewAttachmentAccepter(ctx, "example2", &networkmanager.AttachmentAccepterArgs{ AttachmentId: exampleConnectAttachment.ID(), AttachmentType: exampleConnectAttachment.AttachmentType, }) if err != nil { return err } _, err = networkmanager.NewConnectPeer(ctx, "example", &networkmanager.ConnectPeerArgs{ ConnectAttachmentId: exampleConnectAttachment.ID(), PeerAddress: pulumi.String("127.0.0.1"), BgpOptions: &networkmanager.ConnectPeerBgpOptionsArgs{ PeerAsn: pulumi.Int(65500), }, InsideCidrBlocks: pulumi.StringArray{ pulumi.String("172.16.0.0/16"), }, }, pulumi.DependsOn([]pulumi.Resource{ example2, })) 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 } ```

### Usage with a Tunnel-less Connect attachment

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v7/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 } 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("NO_ENCAP"), }, }) if err != nil { return err } _, err = networkmanager.NewConnectPeer(ctx, "example", &networkmanager.ConnectPeerArgs{ ConnectAttachmentId: exampleConnectAttachment.ID(), PeerAddress: pulumi.String("127.0.0.1"), BgpOptions: &networkmanager.ConnectPeerBgpOptionsArgs{ PeerAsn: pulumi.Int(65000), }, SubnetArn: pulumi.Any(example2.Arn), }) 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 } ```

## Import

Using `pulumi import`, import `aws_networkmanager_connect_peer` using the connect peer ID. For example:

```sh $ pulumi import aws:networkmanager/connectPeer:ConnectPeer example connect-peer-061f3e96275db1acc ```

func GetConnectPeer

func GetConnectPeer(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ConnectPeerState, opts ...pulumi.ResourceOption) (*ConnectPeer, error)

GetConnectPeer gets an existing ConnectPeer 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 NewConnectPeer

func NewConnectPeer(ctx *pulumi.Context,
	name string, args *ConnectPeerArgs, opts ...pulumi.ResourceOption) (*ConnectPeer, error)

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

func (*ConnectPeer) ElementType

func (*ConnectPeer) ElementType() reflect.Type

func (*ConnectPeer) ToConnectPeerOutput

func (i *ConnectPeer) ToConnectPeerOutput() ConnectPeerOutput

func (*ConnectPeer) ToConnectPeerOutputWithContext

func (i *ConnectPeer) ToConnectPeerOutputWithContext(ctx context.Context) ConnectPeerOutput

type ConnectPeerArgs

type ConnectPeerArgs struct {
	// Connect peer BGP options. See bgpOptions for more information.
	BgpOptions ConnectPeerBgpOptionsPtrInput
	// ID of the connection attachment.
	ConnectAttachmentId pulumi.StringInput
	// Connect peer core network address.
	CoreNetworkAddress pulumi.StringPtrInput
	// Inside IP addresses used for BGP peering. Required when the Connect attachment protocol is `GRE`. See `networkmanager.ConnectAttachment` for details.
	InsideCidrBlocks pulumi.StringArrayInput
	// Connect peer address.
	//
	// The following arguments are optional:
	PeerAddress pulumi.StringInput
	// Subnet ARN for the Connect peer. Required when the Connect attachment protocol is `NO_ENCAP`. See `networkmanager.ConnectAttachment` for details.
	SubnetArn pulumi.StringPtrInput
	// Key-value tags for the attachment. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
}

The set of arguments for constructing a ConnectPeer resource.

func (ConnectPeerArgs) ElementType

func (ConnectPeerArgs) ElementType() reflect.Type

type ConnectPeerArray

type ConnectPeerArray []ConnectPeerInput

func (ConnectPeerArray) ElementType

func (ConnectPeerArray) ElementType() reflect.Type

func (ConnectPeerArray) ToConnectPeerArrayOutput

func (i ConnectPeerArray) ToConnectPeerArrayOutput() ConnectPeerArrayOutput

func (ConnectPeerArray) ToConnectPeerArrayOutputWithContext

func (i ConnectPeerArray) ToConnectPeerArrayOutputWithContext(ctx context.Context) ConnectPeerArrayOutput

type ConnectPeerArrayInput

type ConnectPeerArrayInput interface {
	pulumi.Input

	ToConnectPeerArrayOutput() ConnectPeerArrayOutput
	ToConnectPeerArrayOutputWithContext(context.Context) ConnectPeerArrayOutput
}

ConnectPeerArrayInput is an input type that accepts ConnectPeerArray and ConnectPeerArrayOutput values. You can construct a concrete instance of `ConnectPeerArrayInput` via:

ConnectPeerArray{ ConnectPeerArgs{...} }

type ConnectPeerArrayOutput

type ConnectPeerArrayOutput struct{ *pulumi.OutputState }

func (ConnectPeerArrayOutput) ElementType

func (ConnectPeerArrayOutput) ElementType() reflect.Type

func (ConnectPeerArrayOutput) Index

func (ConnectPeerArrayOutput) ToConnectPeerArrayOutput

func (o ConnectPeerArrayOutput) ToConnectPeerArrayOutput() ConnectPeerArrayOutput

func (ConnectPeerArrayOutput) ToConnectPeerArrayOutputWithContext

func (o ConnectPeerArrayOutput) ToConnectPeerArrayOutputWithContext(ctx context.Context) ConnectPeerArrayOutput

type ConnectPeerBgpOptions

type ConnectPeerBgpOptions struct {
	// Peer ASN.
	PeerAsn *int `pulumi:"peerAsn"`
}

type ConnectPeerBgpOptionsArgs

type ConnectPeerBgpOptionsArgs struct {
	// Peer ASN.
	PeerAsn pulumi.IntPtrInput `pulumi:"peerAsn"`
}

func (ConnectPeerBgpOptionsArgs) ElementType

func (ConnectPeerBgpOptionsArgs) ElementType() reflect.Type

func (ConnectPeerBgpOptionsArgs) ToConnectPeerBgpOptionsOutput

func (i ConnectPeerBgpOptionsArgs) ToConnectPeerBgpOptionsOutput() ConnectPeerBgpOptionsOutput

func (ConnectPeerBgpOptionsArgs) ToConnectPeerBgpOptionsOutputWithContext

func (i ConnectPeerBgpOptionsArgs) ToConnectPeerBgpOptionsOutputWithContext(ctx context.Context) ConnectPeerBgpOptionsOutput

func (ConnectPeerBgpOptionsArgs) ToConnectPeerBgpOptionsPtrOutput

func (i ConnectPeerBgpOptionsArgs) ToConnectPeerBgpOptionsPtrOutput() ConnectPeerBgpOptionsPtrOutput

func (ConnectPeerBgpOptionsArgs) ToConnectPeerBgpOptionsPtrOutputWithContext

func (i ConnectPeerBgpOptionsArgs) ToConnectPeerBgpOptionsPtrOutputWithContext(ctx context.Context) ConnectPeerBgpOptionsPtrOutput

type ConnectPeerBgpOptionsInput

type ConnectPeerBgpOptionsInput interface {
	pulumi.Input

	ToConnectPeerBgpOptionsOutput() ConnectPeerBgpOptionsOutput
	ToConnectPeerBgpOptionsOutputWithContext(context.Context) ConnectPeerBgpOptionsOutput
}

ConnectPeerBgpOptionsInput is an input type that accepts ConnectPeerBgpOptionsArgs and ConnectPeerBgpOptionsOutput values. You can construct a concrete instance of `ConnectPeerBgpOptionsInput` via:

ConnectPeerBgpOptionsArgs{...}

type ConnectPeerBgpOptionsOutput

type ConnectPeerBgpOptionsOutput struct{ *pulumi.OutputState }

func (ConnectPeerBgpOptionsOutput) ElementType

func (ConnectPeerBgpOptionsOutput) PeerAsn

Peer ASN.

func (ConnectPeerBgpOptionsOutput) ToConnectPeerBgpOptionsOutput

func (o ConnectPeerBgpOptionsOutput) ToConnectPeerBgpOptionsOutput() ConnectPeerBgpOptionsOutput

func (ConnectPeerBgpOptionsOutput) ToConnectPeerBgpOptionsOutputWithContext

func (o ConnectPeerBgpOptionsOutput) ToConnectPeerBgpOptionsOutputWithContext(ctx context.Context) ConnectPeerBgpOptionsOutput

func (ConnectPeerBgpOptionsOutput) ToConnectPeerBgpOptionsPtrOutput

func (o ConnectPeerBgpOptionsOutput) ToConnectPeerBgpOptionsPtrOutput() ConnectPeerBgpOptionsPtrOutput

func (ConnectPeerBgpOptionsOutput) ToConnectPeerBgpOptionsPtrOutputWithContext

func (o ConnectPeerBgpOptionsOutput) ToConnectPeerBgpOptionsPtrOutputWithContext(ctx context.Context) ConnectPeerBgpOptionsPtrOutput

type ConnectPeerBgpOptionsPtrInput

type ConnectPeerBgpOptionsPtrInput interface {
	pulumi.Input

	ToConnectPeerBgpOptionsPtrOutput() ConnectPeerBgpOptionsPtrOutput
	ToConnectPeerBgpOptionsPtrOutputWithContext(context.Context) ConnectPeerBgpOptionsPtrOutput
}

ConnectPeerBgpOptionsPtrInput is an input type that accepts ConnectPeerBgpOptionsArgs, ConnectPeerBgpOptionsPtr and ConnectPeerBgpOptionsPtrOutput values. You can construct a concrete instance of `ConnectPeerBgpOptionsPtrInput` via:

        ConnectPeerBgpOptionsArgs{...}

or:

        nil

type ConnectPeerBgpOptionsPtrOutput

type ConnectPeerBgpOptionsPtrOutput struct{ *pulumi.OutputState }

func (ConnectPeerBgpOptionsPtrOutput) Elem

func (ConnectPeerBgpOptionsPtrOutput) ElementType

func (ConnectPeerBgpOptionsPtrOutput) PeerAsn

Peer ASN.

func (ConnectPeerBgpOptionsPtrOutput) ToConnectPeerBgpOptionsPtrOutput

func (o ConnectPeerBgpOptionsPtrOutput) ToConnectPeerBgpOptionsPtrOutput() ConnectPeerBgpOptionsPtrOutput

func (ConnectPeerBgpOptionsPtrOutput) ToConnectPeerBgpOptionsPtrOutputWithContext

func (o ConnectPeerBgpOptionsPtrOutput) ToConnectPeerBgpOptionsPtrOutputWithContext(ctx context.Context) ConnectPeerBgpOptionsPtrOutput

type ConnectPeerConfiguration

type ConnectPeerConfiguration struct {
	BgpConfigurations []ConnectPeerConfigurationBgpConfiguration `pulumi:"bgpConfigurations"`
	// Connect peer core network address.
	CoreNetworkAddress *string `pulumi:"coreNetworkAddress"`
	// Inside IP addresses used for BGP peering. Required when the Connect attachment protocol is `GRE`. See `networkmanager.ConnectAttachment` for details.
	InsideCidrBlocks []string `pulumi:"insideCidrBlocks"`
	// Connect peer address.
	//
	// The following arguments are optional:
	PeerAddress *string `pulumi:"peerAddress"`
	Protocol    *string `pulumi:"protocol"`
}

type ConnectPeerConfigurationArgs

type ConnectPeerConfigurationArgs struct {
	BgpConfigurations ConnectPeerConfigurationBgpConfigurationArrayInput `pulumi:"bgpConfigurations"`
	// Connect peer core network address.
	CoreNetworkAddress pulumi.StringPtrInput `pulumi:"coreNetworkAddress"`
	// Inside IP addresses used for BGP peering. Required when the Connect attachment protocol is `GRE`. See `networkmanager.ConnectAttachment` for details.
	InsideCidrBlocks pulumi.StringArrayInput `pulumi:"insideCidrBlocks"`
	// Connect peer address.
	//
	// The following arguments are optional:
	PeerAddress pulumi.StringPtrInput `pulumi:"peerAddress"`
	Protocol    pulumi.StringPtrInput `pulumi:"protocol"`
}

func (ConnectPeerConfigurationArgs) ElementType

func (ConnectPeerConfigurationArgs) ToConnectPeerConfigurationOutput

func (i ConnectPeerConfigurationArgs) ToConnectPeerConfigurationOutput() ConnectPeerConfigurationOutput

func (ConnectPeerConfigurationArgs) ToConnectPeerConfigurationOutputWithContext

func (i ConnectPeerConfigurationArgs) ToConnectPeerConfigurationOutputWithContext(ctx context.Context) ConnectPeerConfigurationOutput

type ConnectPeerConfigurationArray

type ConnectPeerConfigurationArray []ConnectPeerConfigurationInput

func (ConnectPeerConfigurationArray) ElementType

func (ConnectPeerConfigurationArray) ToConnectPeerConfigurationArrayOutput

func (i ConnectPeerConfigurationArray) ToConnectPeerConfigurationArrayOutput() ConnectPeerConfigurationArrayOutput

func (ConnectPeerConfigurationArray) ToConnectPeerConfigurationArrayOutputWithContext

func (i ConnectPeerConfigurationArray) ToConnectPeerConfigurationArrayOutputWithContext(ctx context.Context) ConnectPeerConfigurationArrayOutput

type ConnectPeerConfigurationArrayInput

type ConnectPeerConfigurationArrayInput interface {
	pulumi.Input

	ToConnectPeerConfigurationArrayOutput() ConnectPeerConfigurationArrayOutput
	ToConnectPeerConfigurationArrayOutputWithContext(context.Context) ConnectPeerConfigurationArrayOutput
}

ConnectPeerConfigurationArrayInput is an input type that accepts ConnectPeerConfigurationArray and ConnectPeerConfigurationArrayOutput values. You can construct a concrete instance of `ConnectPeerConfigurationArrayInput` via:

ConnectPeerConfigurationArray{ ConnectPeerConfigurationArgs{...} }

type ConnectPeerConfigurationArrayOutput

type ConnectPeerConfigurationArrayOutput struct{ *pulumi.OutputState }

func (ConnectPeerConfigurationArrayOutput) ElementType

func (ConnectPeerConfigurationArrayOutput) Index

func (ConnectPeerConfigurationArrayOutput) ToConnectPeerConfigurationArrayOutput

func (o ConnectPeerConfigurationArrayOutput) ToConnectPeerConfigurationArrayOutput() ConnectPeerConfigurationArrayOutput

func (ConnectPeerConfigurationArrayOutput) ToConnectPeerConfigurationArrayOutputWithContext

func (o ConnectPeerConfigurationArrayOutput) ToConnectPeerConfigurationArrayOutputWithContext(ctx context.Context) ConnectPeerConfigurationArrayOutput

type ConnectPeerConfigurationBgpConfiguration

type ConnectPeerConfigurationBgpConfiguration struct {
	// Connect peer core network address.
	CoreNetworkAddress *string `pulumi:"coreNetworkAddress"`
	CoreNetworkAsn     *int    `pulumi:"coreNetworkAsn"`
	// Connect peer address.
	//
	// The following arguments are optional:
	PeerAddress *string `pulumi:"peerAddress"`
	// Peer ASN.
	PeerAsn *int `pulumi:"peerAsn"`
}

type ConnectPeerConfigurationBgpConfigurationArgs

type ConnectPeerConfigurationBgpConfigurationArgs struct {
	// Connect peer core network address.
	CoreNetworkAddress pulumi.StringPtrInput `pulumi:"coreNetworkAddress"`
	CoreNetworkAsn     pulumi.IntPtrInput    `pulumi:"coreNetworkAsn"`
	// Connect peer address.
	//
	// The following arguments are optional:
	PeerAddress pulumi.StringPtrInput `pulumi:"peerAddress"`
	// Peer ASN.
	PeerAsn pulumi.IntPtrInput `pulumi:"peerAsn"`
}

func (ConnectPeerConfigurationBgpConfigurationArgs) ElementType

func (ConnectPeerConfigurationBgpConfigurationArgs) ToConnectPeerConfigurationBgpConfigurationOutput

func (i ConnectPeerConfigurationBgpConfigurationArgs) ToConnectPeerConfigurationBgpConfigurationOutput() ConnectPeerConfigurationBgpConfigurationOutput

func (ConnectPeerConfigurationBgpConfigurationArgs) ToConnectPeerConfigurationBgpConfigurationOutputWithContext

func (i ConnectPeerConfigurationBgpConfigurationArgs) ToConnectPeerConfigurationBgpConfigurationOutputWithContext(ctx context.Context) ConnectPeerConfigurationBgpConfigurationOutput

type ConnectPeerConfigurationBgpConfigurationArray

type ConnectPeerConfigurationBgpConfigurationArray []ConnectPeerConfigurationBgpConfigurationInput

func (ConnectPeerConfigurationBgpConfigurationArray) ElementType

func (ConnectPeerConfigurationBgpConfigurationArray) ToConnectPeerConfigurationBgpConfigurationArrayOutput

func (i ConnectPeerConfigurationBgpConfigurationArray) ToConnectPeerConfigurationBgpConfigurationArrayOutput() ConnectPeerConfigurationBgpConfigurationArrayOutput

func (ConnectPeerConfigurationBgpConfigurationArray) ToConnectPeerConfigurationBgpConfigurationArrayOutputWithContext

func (i ConnectPeerConfigurationBgpConfigurationArray) ToConnectPeerConfigurationBgpConfigurationArrayOutputWithContext(ctx context.Context) ConnectPeerConfigurationBgpConfigurationArrayOutput

type ConnectPeerConfigurationBgpConfigurationArrayInput

type ConnectPeerConfigurationBgpConfigurationArrayInput interface {
	pulumi.Input

	ToConnectPeerConfigurationBgpConfigurationArrayOutput() ConnectPeerConfigurationBgpConfigurationArrayOutput
	ToConnectPeerConfigurationBgpConfigurationArrayOutputWithContext(context.Context) ConnectPeerConfigurationBgpConfigurationArrayOutput
}

ConnectPeerConfigurationBgpConfigurationArrayInput is an input type that accepts ConnectPeerConfigurationBgpConfigurationArray and ConnectPeerConfigurationBgpConfigurationArrayOutput values. You can construct a concrete instance of `ConnectPeerConfigurationBgpConfigurationArrayInput` via:

ConnectPeerConfigurationBgpConfigurationArray{ ConnectPeerConfigurationBgpConfigurationArgs{...} }

type ConnectPeerConfigurationBgpConfigurationArrayOutput

type ConnectPeerConfigurationBgpConfigurationArrayOutput struct{ *pulumi.OutputState }

func (ConnectPeerConfigurationBgpConfigurationArrayOutput) ElementType

func (ConnectPeerConfigurationBgpConfigurationArrayOutput) Index

func (ConnectPeerConfigurationBgpConfigurationArrayOutput) ToConnectPeerConfigurationBgpConfigurationArrayOutput

func (o ConnectPeerConfigurationBgpConfigurationArrayOutput) ToConnectPeerConfigurationBgpConfigurationArrayOutput() ConnectPeerConfigurationBgpConfigurationArrayOutput

func (ConnectPeerConfigurationBgpConfigurationArrayOutput) ToConnectPeerConfigurationBgpConfigurationArrayOutputWithContext

func (o ConnectPeerConfigurationBgpConfigurationArrayOutput) ToConnectPeerConfigurationBgpConfigurationArrayOutputWithContext(ctx context.Context) ConnectPeerConfigurationBgpConfigurationArrayOutput

type ConnectPeerConfigurationBgpConfigurationInput

type ConnectPeerConfigurationBgpConfigurationInput interface {
	pulumi.Input

	ToConnectPeerConfigurationBgpConfigurationOutput() ConnectPeerConfigurationBgpConfigurationOutput
	ToConnectPeerConfigurationBgpConfigurationOutputWithContext(context.Context) ConnectPeerConfigurationBgpConfigurationOutput
}

ConnectPeerConfigurationBgpConfigurationInput is an input type that accepts ConnectPeerConfigurationBgpConfigurationArgs and ConnectPeerConfigurationBgpConfigurationOutput values. You can construct a concrete instance of `ConnectPeerConfigurationBgpConfigurationInput` via:

ConnectPeerConfigurationBgpConfigurationArgs{...}

type ConnectPeerConfigurationBgpConfigurationOutput

type ConnectPeerConfigurationBgpConfigurationOutput struct{ *pulumi.OutputState }

func (ConnectPeerConfigurationBgpConfigurationOutput) CoreNetworkAddress

Connect peer core network address.

func (ConnectPeerConfigurationBgpConfigurationOutput) CoreNetworkAsn

func (ConnectPeerConfigurationBgpConfigurationOutput) ElementType

func (ConnectPeerConfigurationBgpConfigurationOutput) PeerAddress

Connect peer address.

The following arguments are optional:

func (ConnectPeerConfigurationBgpConfigurationOutput) PeerAsn

Peer ASN.

func (ConnectPeerConfigurationBgpConfigurationOutput) ToConnectPeerConfigurationBgpConfigurationOutput

func (o ConnectPeerConfigurationBgpConfigurationOutput) ToConnectPeerConfigurationBgpConfigurationOutput() ConnectPeerConfigurationBgpConfigurationOutput

func (ConnectPeerConfigurationBgpConfigurationOutput) ToConnectPeerConfigurationBgpConfigurationOutputWithContext

func (o ConnectPeerConfigurationBgpConfigurationOutput) ToConnectPeerConfigurationBgpConfigurationOutputWithContext(ctx context.Context) ConnectPeerConfigurationBgpConfigurationOutput

type ConnectPeerConfigurationInput

type ConnectPeerConfigurationInput interface {
	pulumi.Input

	ToConnectPeerConfigurationOutput() ConnectPeerConfigurationOutput
	ToConnectPeerConfigurationOutputWithContext(context.Context) ConnectPeerConfigurationOutput
}

ConnectPeerConfigurationInput is an input type that accepts ConnectPeerConfigurationArgs and ConnectPeerConfigurationOutput values. You can construct a concrete instance of `ConnectPeerConfigurationInput` via:

ConnectPeerConfigurationArgs{...}

type ConnectPeerConfigurationOutput

type ConnectPeerConfigurationOutput struct{ *pulumi.OutputState }

func (ConnectPeerConfigurationOutput) BgpConfigurations

func (ConnectPeerConfigurationOutput) CoreNetworkAddress

func (o ConnectPeerConfigurationOutput) CoreNetworkAddress() pulumi.StringPtrOutput

Connect peer core network address.

func (ConnectPeerConfigurationOutput) ElementType

func (ConnectPeerConfigurationOutput) InsideCidrBlocks

Inside IP addresses used for BGP peering. Required when the Connect attachment protocol is `GRE`. See `networkmanager.ConnectAttachment` for details.

func (ConnectPeerConfigurationOutput) PeerAddress

Connect peer address.

The following arguments are optional:

func (ConnectPeerConfigurationOutput) Protocol

func (ConnectPeerConfigurationOutput) ToConnectPeerConfigurationOutput

func (o ConnectPeerConfigurationOutput) ToConnectPeerConfigurationOutput() ConnectPeerConfigurationOutput

func (ConnectPeerConfigurationOutput) ToConnectPeerConfigurationOutputWithContext

func (o ConnectPeerConfigurationOutput) ToConnectPeerConfigurationOutputWithContext(ctx context.Context) ConnectPeerConfigurationOutput

type ConnectPeerInput

type ConnectPeerInput interface {
	pulumi.Input

	ToConnectPeerOutput() ConnectPeerOutput
	ToConnectPeerOutputWithContext(ctx context.Context) ConnectPeerOutput
}

type ConnectPeerMap

type ConnectPeerMap map[string]ConnectPeerInput

func (ConnectPeerMap) ElementType

func (ConnectPeerMap) ElementType() reflect.Type

func (ConnectPeerMap) ToConnectPeerMapOutput

func (i ConnectPeerMap) ToConnectPeerMapOutput() ConnectPeerMapOutput

func (ConnectPeerMap) ToConnectPeerMapOutputWithContext

func (i ConnectPeerMap) ToConnectPeerMapOutputWithContext(ctx context.Context) ConnectPeerMapOutput

type ConnectPeerMapInput

type ConnectPeerMapInput interface {
	pulumi.Input

	ToConnectPeerMapOutput() ConnectPeerMapOutput
	ToConnectPeerMapOutputWithContext(context.Context) ConnectPeerMapOutput
}

ConnectPeerMapInput is an input type that accepts ConnectPeerMap and ConnectPeerMapOutput values. You can construct a concrete instance of `ConnectPeerMapInput` via:

ConnectPeerMap{ "key": ConnectPeerArgs{...} }

type ConnectPeerMapOutput

type ConnectPeerMapOutput struct{ *pulumi.OutputState }

func (ConnectPeerMapOutput) ElementType

func (ConnectPeerMapOutput) ElementType() reflect.Type

func (ConnectPeerMapOutput) MapIndex

func (ConnectPeerMapOutput) ToConnectPeerMapOutput

func (o ConnectPeerMapOutput) ToConnectPeerMapOutput() ConnectPeerMapOutput

func (ConnectPeerMapOutput) ToConnectPeerMapOutputWithContext

func (o ConnectPeerMapOutput) ToConnectPeerMapOutputWithContext(ctx context.Context) ConnectPeerMapOutput

type ConnectPeerOutput

type ConnectPeerOutput struct{ *pulumi.OutputState }

func (ConnectPeerOutput) Arn

ARN of the Connect peer.

func (ConnectPeerOutput) BgpOptions

Connect peer BGP options. See bgpOptions for more information.

func (ConnectPeerOutput) Configurations

Configuration of the Connect peer.

func (ConnectPeerOutput) ConnectAttachmentId

func (o ConnectPeerOutput) ConnectAttachmentId() pulumi.StringOutput

ID of the connection attachment.

func (ConnectPeerOutput) ConnectPeerId

func (o ConnectPeerOutput) ConnectPeerId() pulumi.StringOutput

ID of the Connect peer.

func (ConnectPeerOutput) CoreNetworkAddress

func (o ConnectPeerOutput) CoreNetworkAddress() pulumi.StringPtrOutput

Connect peer core network address.

func (ConnectPeerOutput) CoreNetworkId

func (o ConnectPeerOutput) CoreNetworkId() pulumi.StringOutput

ID of a core network.

func (ConnectPeerOutput) CreatedAt

func (o ConnectPeerOutput) CreatedAt() pulumi.StringOutput

Timestamp when the Connect peer was created.

func (ConnectPeerOutput) EdgeLocation

func (o ConnectPeerOutput) EdgeLocation() pulumi.StringOutput

Region where the peer is located.

func (ConnectPeerOutput) ElementType

func (ConnectPeerOutput) ElementType() reflect.Type

func (ConnectPeerOutput) InsideCidrBlocks

func (o ConnectPeerOutput) InsideCidrBlocks() pulumi.StringArrayOutput

Inside IP addresses used for BGP peering. Required when the Connect attachment protocol is `GRE`. See `networkmanager.ConnectAttachment` for details.

func (ConnectPeerOutput) PeerAddress

func (o ConnectPeerOutput) PeerAddress() pulumi.StringOutput

Connect peer address.

The following arguments are optional:

func (ConnectPeerOutput) State

State of the Connect peer.

func (ConnectPeerOutput) SubnetArn

Subnet ARN for the Connect peer. Required when the Connect attachment protocol is `NO_ENCAP`. See `networkmanager.ConnectAttachment` for details.

func (ConnectPeerOutput) Tags

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

func (ConnectPeerOutput) TagsAll

Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.

func (ConnectPeerOutput) ToConnectPeerOutput

func (o ConnectPeerOutput) ToConnectPeerOutput() ConnectPeerOutput

func (ConnectPeerOutput) ToConnectPeerOutputWithContext

func (o ConnectPeerOutput) ToConnectPeerOutputWithContext(ctx context.Context) ConnectPeerOutput

type ConnectPeerState

type ConnectPeerState struct {
	// ARN of the Connect peer.
	Arn pulumi.StringPtrInput
	// Connect peer BGP options. See bgpOptions for more information.
	BgpOptions ConnectPeerBgpOptionsPtrInput
	// Configuration of the Connect peer.
	Configurations ConnectPeerConfigurationArrayInput
	// ID of the connection attachment.
	ConnectAttachmentId pulumi.StringPtrInput
	// ID of the Connect peer.
	ConnectPeerId pulumi.StringPtrInput
	// Connect peer core network address.
	CoreNetworkAddress pulumi.StringPtrInput
	// ID of a core network.
	CoreNetworkId pulumi.StringPtrInput
	// Timestamp when the Connect peer was created.
	CreatedAt pulumi.StringPtrInput
	// Region where the peer is located.
	EdgeLocation pulumi.StringPtrInput
	// Inside IP addresses used for BGP peering. Required when the Connect attachment protocol is `GRE`. See `networkmanager.ConnectAttachment` for details.
	InsideCidrBlocks pulumi.StringArrayInput
	// Connect peer address.
	//
	// The following arguments are optional:
	PeerAddress pulumi.StringPtrInput
	// State of the Connect peer.
	State pulumi.StringPtrInput
	// Subnet ARN for the Connect peer. Required when the Connect attachment protocol is `NO_ENCAP`. See `networkmanager.ConnectAttachment` for details.
	SubnetArn pulumi.StringPtrInput
	// Key-value tags for the attachment. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	TagsAll pulumi.StringMapInput
}

func (ConnectPeerState) ElementType

func (ConnectPeerState) ElementType() reflect.Type

type Connection

type Connection struct {
	pulumi.CustomResourceState

	// ARN of the connection.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// ID of the second device in the connection.
	ConnectedDeviceId pulumi.StringOutput `pulumi:"connectedDeviceId"`
	// ID of the link for the second device.
	ConnectedLinkId pulumi.StringPtrOutput `pulumi:"connectedLinkId"`
	// Description of the connection.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// ID of the first device in the connection.
	DeviceId pulumi.StringOutput `pulumi:"deviceId"`
	// ID of the global network.
	//
	// The following arguments are optional:
	GlobalNetworkId pulumi.StringOutput `pulumi:"globalNetworkId"`
	// ID of the link for the first device.
	LinkId pulumi.StringPtrOutput `pulumi:"linkId"`
	// Key-value tags for the connection. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
}

Manages a Network Manager Connection.

Use this resource to create a connection between two devices in your global network.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v7/go/aws/networkmanager"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := networkmanager.NewConnection(ctx, "example", &networkmanager.ConnectionArgs{
			GlobalNetworkId:   pulumi.Any(exampleAwsNetworkmanagerGlobalNetwork.Id),
			DeviceId:          pulumi.Any(example1.Id),
			ConnectedDeviceId: pulumi.Any(example2.Id),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Using `pulumi import`, import `aws_networkmanager_connection` using the connection ARN. For example:

```sh $ pulumi import aws:networkmanager/connection:Connection example arn:aws:networkmanager::123456789012:device/global-network-0d47f6t230mz46dy4/connection-07f6fd08867abc123 ```

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

func (*Connection) ElementType() reflect.Type

func (*Connection) ToConnectionOutput

func (i *Connection) ToConnectionOutput() ConnectionOutput

func (*Connection) ToConnectionOutputWithContext

func (i *Connection) ToConnectionOutputWithContext(ctx context.Context) ConnectionOutput

type ConnectionArgs

type ConnectionArgs struct {
	// ID of the second device in the connection.
	ConnectedDeviceId pulumi.StringInput
	// ID of the link for the second device.
	ConnectedLinkId pulumi.StringPtrInput
	// Description of the connection.
	Description pulumi.StringPtrInput
	// ID of the first device in the connection.
	DeviceId pulumi.StringInput
	// ID of the global network.
	//
	// The following arguments are optional:
	GlobalNetworkId pulumi.StringInput
	// ID of the link for the first device.
	LinkId pulumi.StringPtrInput
	// Key-value tags for the connection. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
}

The set of arguments for constructing a Connection resource.

func (ConnectionArgs) ElementType

func (ConnectionArgs) ElementType() reflect.Type

type ConnectionArray

type ConnectionArray []ConnectionInput

func (ConnectionArray) ElementType

func (ConnectionArray) ElementType() reflect.Type

func (ConnectionArray) ToConnectionArrayOutput

func (i ConnectionArray) ToConnectionArrayOutput() ConnectionArrayOutput

func (ConnectionArray) ToConnectionArrayOutputWithContext

func (i ConnectionArray) ToConnectionArrayOutputWithContext(ctx context.Context) ConnectionArrayOutput

type ConnectionArrayInput

type ConnectionArrayInput interface {
	pulumi.Input

	ToConnectionArrayOutput() ConnectionArrayOutput
	ToConnectionArrayOutputWithContext(context.Context) ConnectionArrayOutput
}

ConnectionArrayInput is an input type that accepts ConnectionArray and ConnectionArrayOutput values. You can construct a concrete instance of `ConnectionArrayInput` via:

ConnectionArray{ ConnectionArgs{...} }

type ConnectionArrayOutput

type ConnectionArrayOutput struct{ *pulumi.OutputState }

func (ConnectionArrayOutput) ElementType

func (ConnectionArrayOutput) ElementType() reflect.Type

func (ConnectionArrayOutput) Index

func (ConnectionArrayOutput) ToConnectionArrayOutput

func (o ConnectionArrayOutput) ToConnectionArrayOutput() ConnectionArrayOutput

func (ConnectionArrayOutput) ToConnectionArrayOutputWithContext

func (o ConnectionArrayOutput) ToConnectionArrayOutputWithContext(ctx context.Context) ConnectionArrayOutput

type ConnectionInput

type ConnectionInput interface {
	pulumi.Input

	ToConnectionOutput() ConnectionOutput
	ToConnectionOutputWithContext(ctx context.Context) ConnectionOutput
}

type ConnectionMap

type ConnectionMap map[string]ConnectionInput

func (ConnectionMap) ElementType

func (ConnectionMap) ElementType() reflect.Type

func (ConnectionMap) ToConnectionMapOutput

func (i ConnectionMap) ToConnectionMapOutput() ConnectionMapOutput

func (ConnectionMap) ToConnectionMapOutputWithContext

func (i ConnectionMap) ToConnectionMapOutputWithContext(ctx context.Context) ConnectionMapOutput

type ConnectionMapInput

type ConnectionMapInput interface {
	pulumi.Input

	ToConnectionMapOutput() ConnectionMapOutput
	ToConnectionMapOutputWithContext(context.Context) ConnectionMapOutput
}

ConnectionMapInput is an input type that accepts ConnectionMap and ConnectionMapOutput values. You can construct a concrete instance of `ConnectionMapInput` via:

ConnectionMap{ "key": ConnectionArgs{...} }

type ConnectionMapOutput

type ConnectionMapOutput struct{ *pulumi.OutputState }

func (ConnectionMapOutput) ElementType

func (ConnectionMapOutput) ElementType() reflect.Type

func (ConnectionMapOutput) MapIndex

func (ConnectionMapOutput) ToConnectionMapOutput

func (o ConnectionMapOutput) ToConnectionMapOutput() ConnectionMapOutput

func (ConnectionMapOutput) ToConnectionMapOutputWithContext

func (o ConnectionMapOutput) ToConnectionMapOutputWithContext(ctx context.Context) ConnectionMapOutput

type ConnectionOutput

type ConnectionOutput struct{ *pulumi.OutputState }

func (ConnectionOutput) Arn

ARN of the connection.

func (ConnectionOutput) ConnectedDeviceId

func (o ConnectionOutput) ConnectedDeviceId() pulumi.StringOutput

ID of the second device in the connection.

func (ConnectionOutput) ConnectedLinkId

func (o ConnectionOutput) ConnectedLinkId() pulumi.StringPtrOutput

ID of the link for the second device.

func (ConnectionOutput) Description

func (o ConnectionOutput) Description() pulumi.StringPtrOutput

Description of the connection.

func (ConnectionOutput) DeviceId

func (o ConnectionOutput) DeviceId() pulumi.StringOutput

ID of the first device in the connection.

func (ConnectionOutput) ElementType

func (ConnectionOutput) ElementType() reflect.Type

func (ConnectionOutput) GlobalNetworkId

func (o ConnectionOutput) GlobalNetworkId() pulumi.StringOutput

ID of the global network.

The following arguments are optional:

func (ConnectionOutput) LinkId

ID of the link for the first device.

func (ConnectionOutput) Tags

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

func (ConnectionOutput) TagsAll

Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.

func (ConnectionOutput) ToConnectionOutput

func (o ConnectionOutput) ToConnectionOutput() ConnectionOutput

func (ConnectionOutput) ToConnectionOutputWithContext

func (o ConnectionOutput) ToConnectionOutputWithContext(ctx context.Context) ConnectionOutput

type ConnectionState

type ConnectionState struct {
	// ARN of the connection.
	Arn pulumi.StringPtrInput
	// ID of the second device in the connection.
	ConnectedDeviceId pulumi.StringPtrInput
	// ID of the link for the second device.
	ConnectedLinkId pulumi.StringPtrInput
	// Description of the connection.
	Description pulumi.StringPtrInput
	// ID of the first device in the connection.
	DeviceId pulumi.StringPtrInput
	// ID of the global network.
	//
	// The following arguments are optional:
	GlobalNetworkId pulumi.StringPtrInput
	// ID of the link for the first device.
	LinkId pulumi.StringPtrInput
	// Key-value tags for the connection. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	TagsAll pulumi.StringMapInput
}

func (ConnectionState) ElementType

func (ConnectionState) ElementType() reflect.Type

type CoreNetwork

type CoreNetwork struct {
	pulumi.CustomResourceState

	// Core Network ARN.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// Sets the base policy document for the core network. Refer to the [Core network policies documentation](https://docs.aws.amazon.com/network-manager/latest/cloudwan/cloudwan-policy-change-sets.html) for more information.
	BasePolicyDocument pulumi.StringPtrOutput `pulumi:"basePolicyDocument"`
	// List of regions to add to the base policy. The base policy created by setting the `createBasePolicy` argument to `true` requires one or more regions to be set in the `edge-locations`, `location` key. If `basePolicyRegions` is not specified, the region used in the base policy defaults to the region specified in the `provider` block.
	BasePolicyRegions pulumi.StringArrayOutput `pulumi:"basePolicyRegions"`
	// Whether to create a base policy when a core network is created or updated. A base policy is created and set to `LIVE` to allow attachments to the core network (e.g. VPC Attachments) before applying a policy document provided using the `networkmanager.CoreNetworkPolicyAttachment` resource. This base policy is needed if your core network does not have any `LIVE` policies and your policy document has static routes pointing to VPC attachments and you want to attach your VPCs to the core network before applying the desired policy document. Valid values are `true` or `false`. An example of this Pulumi snippet can be found above for VPC Attachment in a single region and for VPC Attachment multi-region. An example base policy is shown below. This base policy is overridden with the policy that you specify in the `networkmanager.CoreNetworkPolicyAttachment` resource.
	CreateBasePolicy pulumi.BoolPtrOutput `pulumi:"createBasePolicy"`
	// Timestamp when a core network was created.
	CreatedAt pulumi.StringOutput `pulumi:"createdAt"`
	// Description of the Core Network.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// One or more blocks detailing the edges within a core network. Detailed below.
	Edges CoreNetworkEdgeArrayOutput `pulumi:"edges"`
	// ID of the global network that a core network will be a part of.
	//
	// The following arguments are optional:
	GlobalNetworkId pulumi.StringOutput `pulumi:"globalNetworkId"`
	// One or more blocks detailing the segments within a core network. Detailed below.
	Segments CoreNetworkSegmentArrayOutput `pulumi:"segments"`
	// Current state of a core network.
	State pulumi.StringOutput `pulumi:"state"`
	// Key-value tags for the Core Network. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
}

Manages a Network Manager Core Network.

Use this resource to create and manage a core network within a global network.

## Example Usage

### Basic

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v7/go/aws/networkmanager"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := networkmanager.NewCoreNetwork(ctx, "example", &networkmanager.CoreNetworkArgs{
			GlobalNetworkId: pulumi.Any(exampleAwsNetworkmanagerGlobalNetwork.Id),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

### With description

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v7/go/aws/networkmanager"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := networkmanager.NewCoreNetwork(ctx, "example", &networkmanager.CoreNetworkArgs{
			GlobalNetworkId: pulumi.Any(exampleAwsNetworkmanagerGlobalNetwork.Id),
			Description:     pulumi.String("example"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

### With tags

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v7/go/aws/networkmanager"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := networkmanager.NewCoreNetwork(ctx, "example", &networkmanager.CoreNetworkArgs{
			GlobalNetworkId: pulumi.Any(exampleAwsNetworkmanagerGlobalNetwork.Id),
			Tags: pulumi.StringMap{
				"hello": pulumi.String("world"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

### With VPC Attachment (Single Region)

The example below illustrates the scenario where your policy document has static routes pointing to VPC attachments and you want to attach your VPCs to the core network before applying the desired policy document. Set the `createBasePolicy` argument to `true` if your core network does not currently have any `LIVE` policies (e.g. this is the first `pulumi up` with the core network resource), since a `LIVE` policy is required before VPCs can be attached to the core network. Otherwise, if your core network already has a `LIVE` policy, you may exclude the `createBasePolicy` argument. There are 2 options to implement this:

- Option 1: Use the `basePolicyDocument` argument that allows the most customizations to a base policy. Use this to customize the `edgeLocations` `asn`. In the example below, `us-west-2` and ASN `65500` are used in the base policy. - Option 2: Use the `createBasePolicy` argument only. This creates a base policy in the region specified in the `provider` block.

### Option 1 - using basePolicyDocument

If you require a custom ASN for the edge location, please use the `basePolicyDocument` argument to pass a specific ASN. For example:

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v7/go/aws/networkmanager"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

) func main() { pulumi.Run(func(ctx *pulumi.Context) error { exampleGlobalNetwork, err := networkmanager.NewGlobalNetwork(ctx, "example", nil) if err != nil { return err } base, err := networkmanager.GetCoreNetworkPolicyDocument(ctx, &networkmanager.GetCoreNetworkPolicyDocumentArgs{ CoreNetworkConfigurations: []networkmanager.GetCoreNetworkPolicyDocumentCoreNetworkConfiguration{ { AsnRanges: []string{ "65022-65534", }, EdgeLocations: []networkmanager.GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocation{ { Location: "us-west-2", Asn: pulumi.StringRef("65500"), }, }, }, }, Segments: []networkmanager.GetCoreNetworkPolicyDocumentSegment{ { Name: "segment", }, }, }, nil); if err != nil { return err } exampleCoreNetwork, err := networkmanager.NewCoreNetwork(ctx, "example", &networkmanager.CoreNetworkArgs{ GlobalNetworkId: exampleGlobalNetwork.ID(), BasePolicyDocument: pulumi.String(base.Json), CreateBasePolicy: pulumi.Bool(true), }) if err != nil { return err } var splat0 []interface{} for _, val0 := range exampleAwsSubnet { splat0 = append(splat0, val0.Arn) } exampleVpcAttachment, err := networkmanager.NewVpcAttachment(ctx, "example", &networkmanager.VpcAttachmentArgs{ CoreNetworkId: exampleCoreNetwork.ID(), SubnetArns: toPulumiArray(splat0), VpcArn: pulumi.Any(exampleAwsVpc.Arn), }) if err != nil { return err } example := networkmanager.GetCoreNetworkPolicyDocumentOutput(ctx, networkmanager.GetCoreNetworkPolicyDocumentOutputArgs{ CoreNetworkConfigurations: networkmanager.GetCoreNetworkPolicyDocumentCoreNetworkConfigurationArray{ &networkmanager.GetCoreNetworkPolicyDocumentCoreNetworkConfigurationArgs{ AsnRanges: pulumi.StringArray{ pulumi.String("65022-65534"), }, EdgeLocations: networkmanager.GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationArray{ &networkmanager.GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationArgs{ Location: pulumi.String("us-west-2"), Asn: pulumi.String("65500"), }, }, }, }, Segments: networkmanager.GetCoreNetworkPolicyDocumentSegmentArray{ &networkmanager.GetCoreNetworkPolicyDocumentSegmentArgs{ Name: pulumi.String("segment"), }, }, SegmentActions: networkmanager.GetCoreNetworkPolicyDocumentSegmentActionArray{ &networkmanager.GetCoreNetworkPolicyDocumentSegmentActionArgs{ Action: pulumi.String("create-route"), Segment: pulumi.String("segment"), DestinationCidrBlocks: pulumi.StringArray{ pulumi.String("0.0.0.0/0"), }, Destinations: pulumi.StringArray{ exampleVpcAttachment.ID(), }, }, }, }, nil); _, err = networkmanager.NewCoreNetworkPolicyAttachment(ctx, "example", &networkmanager.CoreNetworkPolicyAttachmentArgs{ CoreNetworkId: exampleCoreNetwork.ID(), PolicyDocument: pulumi.String(example.ApplyT(func(example networkmanager.GetCoreNetworkPolicyDocumentResult) (*string, error) { return &example.Json, nil }).(pulumi.StringPtrOutput)), }) 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 } ```

### Option 2 - createBasePolicy only

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v7/go/aws/networkmanager"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

) func main() { pulumi.Run(func(ctx *pulumi.Context) error { exampleGlobalNetwork, err := networkmanager.NewGlobalNetwork(ctx, "example", nil) if err != nil { return err } exampleCoreNetwork, err := networkmanager.NewCoreNetwork(ctx, "example", &networkmanager.CoreNetworkArgs{ GlobalNetworkId: exampleGlobalNetwork.ID(), CreateBasePolicy: pulumi.Bool(true), }) if err != nil { return err } var splat0 []interface{} for _, val0 := range exampleAwsSubnet { splat0 = append(splat0, val0.Arn) } exampleVpcAttachment, err := networkmanager.NewVpcAttachment(ctx, "example", &networkmanager.VpcAttachmentArgs{ CoreNetworkId: exampleCoreNetwork.ID(), SubnetArns: toPulumiArray(splat0), VpcArn: pulumi.Any(exampleAwsVpc.Arn), }) if err != nil { return err } example := networkmanager.GetCoreNetworkPolicyDocumentOutput(ctx, networkmanager.GetCoreNetworkPolicyDocumentOutputArgs{ CoreNetworkConfigurations: networkmanager.GetCoreNetworkPolicyDocumentCoreNetworkConfigurationArray{ &networkmanager.GetCoreNetworkPolicyDocumentCoreNetworkConfigurationArgs{ AsnRanges: pulumi.StringArray{ pulumi.String("65022-65534"), }, EdgeLocations: networkmanager.GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationArray{ &networkmanager.GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationArgs{ Location: pulumi.String("us-west-2"), }, }, }, }, Segments: networkmanager.GetCoreNetworkPolicyDocumentSegmentArray{ &networkmanager.GetCoreNetworkPolicyDocumentSegmentArgs{ Name: pulumi.String("segment"), }, }, SegmentActions: networkmanager.GetCoreNetworkPolicyDocumentSegmentActionArray{ &networkmanager.GetCoreNetworkPolicyDocumentSegmentActionArgs{ Action: pulumi.String("create-route"), Segment: pulumi.String("segment"), DestinationCidrBlocks: pulumi.StringArray{ pulumi.String("0.0.0.0/0"), }, Destinations: pulumi.StringArray{ exampleVpcAttachment.ID(), }, }, }, }, nil); _, err = networkmanager.NewCoreNetworkPolicyAttachment(ctx, "example", &networkmanager.CoreNetworkPolicyAttachmentArgs{ CoreNetworkId: exampleCoreNetwork.ID(), PolicyDocument: pulumi.String(example.ApplyT(func(example networkmanager.GetCoreNetworkPolicyDocumentResult) (*string, error) { return &example.Json, nil }).(pulumi.StringPtrOutput)), }) 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 } ```

### With VPC Attachment (Multi-Region)

The example below illustrates the scenario where your policy document has static routes pointing to VPC attachments and you want to attach your VPCs to the core network before applying the desired policy document. Set the `createBasePolicy` argument of the `networkmanager.CoreNetwork` resource to `true` if your core network does not currently have any `LIVE` policies (e.g. this is the first `pulumi up` with the core network resource), since a `LIVE` policy is required before VPCs can be attached to the core network. Otherwise, if your core network already has a `LIVE` policy, you may exclude the `createBasePolicy` argument. For multi-region in a core network that does not yet have a `LIVE` policy, there are 2 options:

- Option 1: Use the `basePolicyDocument` argument that allows the most customizations to a base policy. Use this to customize the `edgeLocations` `asn`. In the example below, `us-west-2`, `us-east-1` and specific ASNs are used in the base policy. - Option 2: Pass a list of regions to the `networkmanager.CoreNetwork` `basePolicyRegions` argument. In the example below, `us-west-2` and `us-east-1` are specified in the base policy.

### Option 1 - using basePolicyDocument

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v7/go/aws/networkmanager"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

) func main() { pulumi.Run(func(ctx *pulumi.Context) error { exampleGlobalNetwork, err := networkmanager.NewGlobalNetwork(ctx, "example", nil) if err != nil { return err } base, err := networkmanager.GetCoreNetworkPolicyDocument(ctx, &networkmanager.GetCoreNetworkPolicyDocumentArgs{ CoreNetworkConfigurations: []networkmanager.GetCoreNetworkPolicyDocumentCoreNetworkConfiguration{ { AsnRanges: []string{ "65022-65534", }, EdgeLocations: []networkmanager.GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocation{ { Location: "us-west-2", Asn: pulumi.StringRef("65500"), }, { Location: "us-east-1", Asn: pulumi.StringRef("65501"), }, }, }, }, Segments: []networkmanager.GetCoreNetworkPolicyDocumentSegment{ { Name: "segment", }, }, }, nil); if err != nil { return err } exampleCoreNetwork, err := networkmanager.NewCoreNetwork(ctx, "example", &networkmanager.CoreNetworkArgs{ GlobalNetworkId: exampleGlobalNetwork.ID(), BasePolicyDocument: pulumi.String(base.Json), CreateBasePolicy: pulumi.Bool(true), }) if err != nil { return err } var splat0 []interface{} for _, val0 := range exampleUsWest2AwsSubnet { splat0 = append(splat0, val0.Arn) } exampleUsWest2, err := networkmanager.NewVpcAttachment(ctx, "example_us_west_2", &networkmanager.VpcAttachmentArgs{ CoreNetworkId: exampleCoreNetwork.ID(), SubnetArns: toPulumiArray(splat0), VpcArn: pulumi.Any(exampleUsWest2AwsVpc.Arn), }) if err != nil { return err } var splat1 []interface{} for _, val0 := range exampleUsEast1AwsSubnet { splat1 = append(splat1, val0.Arn) } exampleUsEast1, err := networkmanager.NewVpcAttachment(ctx, "example_us_east_1", &networkmanager.VpcAttachmentArgs{ CoreNetworkId: exampleCoreNetwork.ID(), SubnetArns: toPulumiArray(splat1), VpcArn: pulumi.Any(exampleUsEast1AwsVpc.Arn), }) if err != nil { return err } example := networkmanager.GetCoreNetworkPolicyDocumentOutput(ctx, networkmanager.GetCoreNetworkPolicyDocumentOutputArgs{ CoreNetworkConfigurations: networkmanager.GetCoreNetworkPolicyDocumentCoreNetworkConfigurationArray{ &networkmanager.GetCoreNetworkPolicyDocumentCoreNetworkConfigurationArgs{ AsnRanges: pulumi.StringArray{ pulumi.String("65022-65534"), }, EdgeLocations: networkmanager.GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationArray{ &networkmanager.GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationArgs{ Location: pulumi.String("us-west-2"), Asn: pulumi.String("65500"), }, &networkmanager.GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationArgs{ Location: pulumi.String("us-east-1"), Asn: pulumi.String("65501"), }, }, }, }, Segments: networkmanager.GetCoreNetworkPolicyDocumentSegmentArray{ &networkmanager.GetCoreNetworkPolicyDocumentSegmentArgs{ Name: pulumi.String("segment"), }, &networkmanager.GetCoreNetworkPolicyDocumentSegmentArgs{ Name: pulumi.String("segment2"), }, }, SegmentActions: networkmanager.GetCoreNetworkPolicyDocumentSegmentActionArray{ &networkmanager.GetCoreNetworkPolicyDocumentSegmentActionArgs{ Action: pulumi.String("create-route"), Segment: pulumi.String("segment"), DestinationCidrBlocks: pulumi.StringArray{ pulumi.String("10.0.0.0/16"), }, Destinations: pulumi.StringArray{ exampleUsWest2.ID(), }, }, &networkmanager.GetCoreNetworkPolicyDocumentSegmentActionArgs{ Action: pulumi.String("create-route"), Segment: pulumi.String("segment"), DestinationCidrBlocks: pulumi.StringArray{ pulumi.String("10.1.0.0/16"), }, Destinations: pulumi.StringArray{ exampleUsEast1.ID(), }, }, }, }, nil); _, err = networkmanager.NewCoreNetworkPolicyAttachment(ctx, "example", &networkmanager.CoreNetworkPolicyAttachmentArgs{ CoreNetworkId: exampleCoreNetwork.ID(), PolicyDocument: pulumi.String(example.ApplyT(func(example networkmanager.GetCoreNetworkPolicyDocumentResult) (*string, error) { return &example.Json, nil }).(pulumi.StringPtrOutput)), }) 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 } ```

### Option 2 - using basePolicyRegions

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v7/go/aws/networkmanager"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

) func main() { pulumi.Run(func(ctx *pulumi.Context) error { exampleGlobalNetwork, err := networkmanager.NewGlobalNetwork(ctx, "example", nil) if err != nil { return err } exampleCoreNetwork, err := networkmanager.NewCoreNetwork(ctx, "example", &networkmanager.CoreNetworkArgs{ GlobalNetworkId: exampleGlobalNetwork.ID(), BasePolicyRegions: pulumi.StringArray{ pulumi.String("us-west-2"), pulumi.String("us-east-1"), }, CreateBasePolicy: pulumi.Bool(true), }) if err != nil { return err } var splat0 []interface{} for _, val0 := range exampleUsWest2AwsSubnet { splat0 = append(splat0, val0.Arn) } exampleUsWest2, err := networkmanager.NewVpcAttachment(ctx, "example_us_west_2", &networkmanager.VpcAttachmentArgs{ CoreNetworkId: exampleCoreNetwork.ID(), SubnetArns: toPulumiArray(splat0), VpcArn: pulumi.Any(exampleUsWest2AwsVpc.Arn), }) if err != nil { return err } var splat1 []interface{} for _, val0 := range exampleUsEast1AwsSubnet { splat1 = append(splat1, val0.Arn) } exampleUsEast1, err := networkmanager.NewVpcAttachment(ctx, "example_us_east_1", &networkmanager.VpcAttachmentArgs{ CoreNetworkId: exampleCoreNetwork.ID(), SubnetArns: toPulumiArray(splat1), VpcArn: pulumi.Any(exampleUsEast1AwsVpc.Arn), }) if err != nil { return err } example := networkmanager.GetCoreNetworkPolicyDocumentOutput(ctx, networkmanager.GetCoreNetworkPolicyDocumentOutputArgs{ CoreNetworkConfigurations: networkmanager.GetCoreNetworkPolicyDocumentCoreNetworkConfigurationArray{ &networkmanager.GetCoreNetworkPolicyDocumentCoreNetworkConfigurationArgs{ AsnRanges: pulumi.StringArray{ pulumi.String("65022-65534"), }, EdgeLocations: networkmanager.GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationArray{ &networkmanager.GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationArgs{ Location: pulumi.String("us-west-2"), }, &networkmanager.GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationArgs{ Location: pulumi.String("us-east-1"), }, }, }, }, Segments: networkmanager.GetCoreNetworkPolicyDocumentSegmentArray{ &networkmanager.GetCoreNetworkPolicyDocumentSegmentArgs{ Name: pulumi.String("segment"), }, &networkmanager.GetCoreNetworkPolicyDocumentSegmentArgs{ Name: pulumi.String("segment2"), }, }, SegmentActions: networkmanager.GetCoreNetworkPolicyDocumentSegmentActionArray{ &networkmanager.GetCoreNetworkPolicyDocumentSegmentActionArgs{ Action: pulumi.String("create-route"), Segment: pulumi.String("segment"), DestinationCidrBlocks: pulumi.StringArray{ pulumi.String("10.0.0.0/16"), }, Destinations: pulumi.StringArray{ exampleUsWest2.ID(), }, }, &networkmanager.GetCoreNetworkPolicyDocumentSegmentActionArgs{ Action: pulumi.String("create-route"), Segment: pulumi.String("segment"), DestinationCidrBlocks: pulumi.StringArray{ pulumi.String("10.1.0.0/16"), }, Destinations: pulumi.StringArray{ exampleUsEast1.ID(), }, }, }, }, nil); _, err = networkmanager.NewCoreNetworkPolicyAttachment(ctx, "example", &networkmanager.CoreNetworkPolicyAttachmentArgs{ CoreNetworkId: exampleCoreNetwork.ID(), PolicyDocument: pulumi.String(example.ApplyT(func(example networkmanager.GetCoreNetworkPolicyDocumentResult) (*string, error) { return &example.Json, nil }).(pulumi.StringPtrOutput)), }) 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 } ```

## Import

Using `pulumi import`, import `aws_networkmanager_core_network` using the core network ID. For example:

```sh $ pulumi import aws:networkmanager/coreNetwork:CoreNetwork example core-network-0d47f6t230mz46dy4 ```

func GetCoreNetwork

func GetCoreNetwork(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *CoreNetworkState, opts ...pulumi.ResourceOption) (*CoreNetwork, error)

GetCoreNetwork gets an existing CoreNetwork 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 NewCoreNetwork

func NewCoreNetwork(ctx *pulumi.Context,
	name string, args *CoreNetworkArgs, opts ...pulumi.ResourceOption) (*CoreNetwork, error)

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

func (*CoreNetwork) ElementType

func (*CoreNetwork) ElementType() reflect.Type

func (*CoreNetwork) ToCoreNetworkOutput

func (i *CoreNetwork) ToCoreNetworkOutput() CoreNetworkOutput

func (*CoreNetwork) ToCoreNetworkOutputWithContext

func (i *CoreNetwork) ToCoreNetworkOutputWithContext(ctx context.Context) CoreNetworkOutput

type CoreNetworkArgs

type CoreNetworkArgs struct {
	// Sets the base policy document for the core network. Refer to the [Core network policies documentation](https://docs.aws.amazon.com/network-manager/latest/cloudwan/cloudwan-policy-change-sets.html) for more information.
	BasePolicyDocument pulumi.StringPtrInput
	// List of regions to add to the base policy. The base policy created by setting the `createBasePolicy` argument to `true` requires one or more regions to be set in the `edge-locations`, `location` key. If `basePolicyRegions` is not specified, the region used in the base policy defaults to the region specified in the `provider` block.
	BasePolicyRegions pulumi.StringArrayInput
	// Whether to create a base policy when a core network is created or updated. A base policy is created and set to `LIVE` to allow attachments to the core network (e.g. VPC Attachments) before applying a policy document provided using the `networkmanager.CoreNetworkPolicyAttachment` resource. This base policy is needed if your core network does not have any `LIVE` policies and your policy document has static routes pointing to VPC attachments and you want to attach your VPCs to the core network before applying the desired policy document. Valid values are `true` or `false`. An example of this Pulumi snippet can be found above for VPC Attachment in a single region and for VPC Attachment multi-region. An example base policy is shown below. This base policy is overridden with the policy that you specify in the `networkmanager.CoreNetworkPolicyAttachment` resource.
	CreateBasePolicy pulumi.BoolPtrInput
	// Description of the Core Network.
	Description pulumi.StringPtrInput
	// ID of the global network that a core network will be a part of.
	//
	// The following arguments are optional:
	GlobalNetworkId pulumi.StringInput
	// Key-value tags for the Core Network. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
}

The set of arguments for constructing a CoreNetwork resource.

func (CoreNetworkArgs) ElementType

func (CoreNetworkArgs) ElementType() reflect.Type

type CoreNetworkArray

type CoreNetworkArray []CoreNetworkInput

func (CoreNetworkArray) ElementType

func (CoreNetworkArray) ElementType() reflect.Type

func (CoreNetworkArray) ToCoreNetworkArrayOutput

func (i CoreNetworkArray) ToCoreNetworkArrayOutput() CoreNetworkArrayOutput

func (CoreNetworkArray) ToCoreNetworkArrayOutputWithContext

func (i CoreNetworkArray) ToCoreNetworkArrayOutputWithContext(ctx context.Context) CoreNetworkArrayOutput

type CoreNetworkArrayInput

type CoreNetworkArrayInput interface {
	pulumi.Input

	ToCoreNetworkArrayOutput() CoreNetworkArrayOutput
	ToCoreNetworkArrayOutputWithContext(context.Context) CoreNetworkArrayOutput
}

CoreNetworkArrayInput is an input type that accepts CoreNetworkArray and CoreNetworkArrayOutput values. You can construct a concrete instance of `CoreNetworkArrayInput` via:

CoreNetworkArray{ CoreNetworkArgs{...} }

type CoreNetworkArrayOutput

type CoreNetworkArrayOutput struct{ *pulumi.OutputState }

func (CoreNetworkArrayOutput) ElementType

func (CoreNetworkArrayOutput) ElementType() reflect.Type

func (CoreNetworkArrayOutput) Index

func (CoreNetworkArrayOutput) ToCoreNetworkArrayOutput

func (o CoreNetworkArrayOutput) ToCoreNetworkArrayOutput() CoreNetworkArrayOutput

func (CoreNetworkArrayOutput) ToCoreNetworkArrayOutputWithContext

func (o CoreNetworkArrayOutput) ToCoreNetworkArrayOutputWithContext(ctx context.Context) CoreNetworkArrayOutput

type CoreNetworkEdge

type CoreNetworkEdge struct {
	// ASN of a core network edge.
	Asn *int `pulumi:"asn"`
	// Region where a core network edge is located.
	EdgeLocation *string `pulumi:"edgeLocation"`
	// Inside IP addresses used for core network edges.
	InsideCidrBlocks []string `pulumi:"insideCidrBlocks"`
}

type CoreNetworkEdgeArgs

type CoreNetworkEdgeArgs struct {
	// ASN of a core network edge.
	Asn pulumi.IntPtrInput `pulumi:"asn"`
	// Region where a core network edge is located.
	EdgeLocation pulumi.StringPtrInput `pulumi:"edgeLocation"`
	// Inside IP addresses used for core network edges.
	InsideCidrBlocks pulumi.StringArrayInput `pulumi:"insideCidrBlocks"`
}

func (CoreNetworkEdgeArgs) ElementType

func (CoreNetworkEdgeArgs) ElementType() reflect.Type

func (CoreNetworkEdgeArgs) ToCoreNetworkEdgeOutput

func (i CoreNetworkEdgeArgs) ToCoreNetworkEdgeOutput() CoreNetworkEdgeOutput

func (CoreNetworkEdgeArgs) ToCoreNetworkEdgeOutputWithContext

func (i CoreNetworkEdgeArgs) ToCoreNetworkEdgeOutputWithContext(ctx context.Context) CoreNetworkEdgeOutput

type CoreNetworkEdgeArray

type CoreNetworkEdgeArray []CoreNetworkEdgeInput

func (CoreNetworkEdgeArray) ElementType

func (CoreNetworkEdgeArray) ElementType() reflect.Type

func (CoreNetworkEdgeArray) ToCoreNetworkEdgeArrayOutput

func (i CoreNetworkEdgeArray) ToCoreNetworkEdgeArrayOutput() CoreNetworkEdgeArrayOutput

func (CoreNetworkEdgeArray) ToCoreNetworkEdgeArrayOutputWithContext

func (i CoreNetworkEdgeArray) ToCoreNetworkEdgeArrayOutputWithContext(ctx context.Context) CoreNetworkEdgeArrayOutput

type CoreNetworkEdgeArrayInput

type CoreNetworkEdgeArrayInput interface {
	pulumi.Input

	ToCoreNetworkEdgeArrayOutput() CoreNetworkEdgeArrayOutput
	ToCoreNetworkEdgeArrayOutputWithContext(context.Context) CoreNetworkEdgeArrayOutput
}

CoreNetworkEdgeArrayInput is an input type that accepts CoreNetworkEdgeArray and CoreNetworkEdgeArrayOutput values. You can construct a concrete instance of `CoreNetworkEdgeArrayInput` via:

CoreNetworkEdgeArray{ CoreNetworkEdgeArgs{...} }

type CoreNetworkEdgeArrayOutput

type CoreNetworkEdgeArrayOutput struct{ *pulumi.OutputState }

func (CoreNetworkEdgeArrayOutput) ElementType

func (CoreNetworkEdgeArrayOutput) ElementType() reflect.Type

func (CoreNetworkEdgeArrayOutput) Index

func (CoreNetworkEdgeArrayOutput) ToCoreNetworkEdgeArrayOutput

func (o CoreNetworkEdgeArrayOutput) ToCoreNetworkEdgeArrayOutput() CoreNetworkEdgeArrayOutput

func (CoreNetworkEdgeArrayOutput) ToCoreNetworkEdgeArrayOutputWithContext

func (o CoreNetworkEdgeArrayOutput) ToCoreNetworkEdgeArrayOutputWithContext(ctx context.Context) CoreNetworkEdgeArrayOutput

type CoreNetworkEdgeInput

type CoreNetworkEdgeInput interface {
	pulumi.Input

	ToCoreNetworkEdgeOutput() CoreNetworkEdgeOutput
	ToCoreNetworkEdgeOutputWithContext(context.Context) CoreNetworkEdgeOutput
}

CoreNetworkEdgeInput is an input type that accepts CoreNetworkEdgeArgs and CoreNetworkEdgeOutput values. You can construct a concrete instance of `CoreNetworkEdgeInput` via:

CoreNetworkEdgeArgs{...}

type CoreNetworkEdgeOutput

type CoreNetworkEdgeOutput struct{ *pulumi.OutputState }

func (CoreNetworkEdgeOutput) Asn

ASN of a core network edge.

func (CoreNetworkEdgeOutput) EdgeLocation

func (o CoreNetworkEdgeOutput) EdgeLocation() pulumi.StringPtrOutput

Region where a core network edge is located.

func (CoreNetworkEdgeOutput) ElementType

func (CoreNetworkEdgeOutput) ElementType() reflect.Type

func (CoreNetworkEdgeOutput) InsideCidrBlocks

func (o CoreNetworkEdgeOutput) InsideCidrBlocks() pulumi.StringArrayOutput

Inside IP addresses used for core network edges.

func (CoreNetworkEdgeOutput) ToCoreNetworkEdgeOutput

func (o CoreNetworkEdgeOutput) ToCoreNetworkEdgeOutput() CoreNetworkEdgeOutput

func (CoreNetworkEdgeOutput) ToCoreNetworkEdgeOutputWithContext

func (o CoreNetworkEdgeOutput) ToCoreNetworkEdgeOutputWithContext(ctx context.Context) CoreNetworkEdgeOutput

type CoreNetworkInput

type CoreNetworkInput interface {
	pulumi.Input

	ToCoreNetworkOutput() CoreNetworkOutput
	ToCoreNetworkOutputWithContext(ctx context.Context) CoreNetworkOutput
}

type CoreNetworkMap

type CoreNetworkMap map[string]CoreNetworkInput

func (CoreNetworkMap) ElementType

func (CoreNetworkMap) ElementType() reflect.Type

func (CoreNetworkMap) ToCoreNetworkMapOutput

func (i CoreNetworkMap) ToCoreNetworkMapOutput() CoreNetworkMapOutput

func (CoreNetworkMap) ToCoreNetworkMapOutputWithContext

func (i CoreNetworkMap) ToCoreNetworkMapOutputWithContext(ctx context.Context) CoreNetworkMapOutput

type CoreNetworkMapInput

type CoreNetworkMapInput interface {
	pulumi.Input

	ToCoreNetworkMapOutput() CoreNetworkMapOutput
	ToCoreNetworkMapOutputWithContext(context.Context) CoreNetworkMapOutput
}

CoreNetworkMapInput is an input type that accepts CoreNetworkMap and CoreNetworkMapOutput values. You can construct a concrete instance of `CoreNetworkMapInput` via:

CoreNetworkMap{ "key": CoreNetworkArgs{...} }

type CoreNetworkMapOutput

type CoreNetworkMapOutput struct{ *pulumi.OutputState }

func (CoreNetworkMapOutput) ElementType

func (CoreNetworkMapOutput) ElementType() reflect.Type

func (CoreNetworkMapOutput) MapIndex

func (CoreNetworkMapOutput) ToCoreNetworkMapOutput

func (o CoreNetworkMapOutput) ToCoreNetworkMapOutput() CoreNetworkMapOutput

func (CoreNetworkMapOutput) ToCoreNetworkMapOutputWithContext

func (o CoreNetworkMapOutput) ToCoreNetworkMapOutputWithContext(ctx context.Context) CoreNetworkMapOutput

type CoreNetworkOutput

type CoreNetworkOutput struct{ *pulumi.OutputState }

func (CoreNetworkOutput) Arn

Core Network ARN.

func (CoreNetworkOutput) BasePolicyDocument

func (o CoreNetworkOutput) BasePolicyDocument() pulumi.StringPtrOutput

Sets the base policy document for the core network. Refer to the [Core network policies documentation](https://docs.aws.amazon.com/network-manager/latest/cloudwan/cloudwan-policy-change-sets.html) for more information.

func (CoreNetworkOutput) BasePolicyRegions

func (o CoreNetworkOutput) BasePolicyRegions() pulumi.StringArrayOutput

List of regions to add to the base policy. The base policy created by setting the `createBasePolicy` argument to `true` requires one or more regions to be set in the `edge-locations`, `location` key. If `basePolicyRegions` is not specified, the region used in the base policy defaults to the region specified in the `provider` block.

func (CoreNetworkOutput) CreateBasePolicy

func (o CoreNetworkOutput) CreateBasePolicy() pulumi.BoolPtrOutput

Whether to create a base policy when a core network is created or updated. A base policy is created and set to `LIVE` to allow attachments to the core network (e.g. VPC Attachments) before applying a policy document provided using the `networkmanager.CoreNetworkPolicyAttachment` resource. This base policy is needed if your core network does not have any `LIVE` policies and your policy document has static routes pointing to VPC attachments and you want to attach your VPCs to the core network before applying the desired policy document. Valid values are `true` or `false`. An example of this Pulumi snippet can be found above for VPC Attachment in a single region and for VPC Attachment multi-region. An example base policy is shown below. This base policy is overridden with the policy that you specify in the `networkmanager.CoreNetworkPolicyAttachment` resource.

func (CoreNetworkOutput) CreatedAt

func (o CoreNetworkOutput) CreatedAt() pulumi.StringOutput

Timestamp when a core network was created.

func (CoreNetworkOutput) Description

func (o CoreNetworkOutput) Description() pulumi.StringPtrOutput

Description of the Core Network.

func (CoreNetworkOutput) Edges

One or more blocks detailing the edges within a core network. Detailed below.

func (CoreNetworkOutput) ElementType

func (CoreNetworkOutput) ElementType() reflect.Type

func (CoreNetworkOutput) GlobalNetworkId

func (o CoreNetworkOutput) GlobalNetworkId() pulumi.StringOutput

ID of the global network that a core network will be a part of.

The following arguments are optional:

func (CoreNetworkOutput) Segments

One or more blocks detailing the segments within a core network. Detailed below.

func (CoreNetworkOutput) State

Current state of a core network.

func (CoreNetworkOutput) Tags

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

func (CoreNetworkOutput) TagsAll

Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.

func (CoreNetworkOutput) ToCoreNetworkOutput

func (o CoreNetworkOutput) ToCoreNetworkOutput() CoreNetworkOutput

func (CoreNetworkOutput) ToCoreNetworkOutputWithContext

func (o CoreNetworkOutput) ToCoreNetworkOutputWithContext(ctx context.Context) CoreNetworkOutput

type CoreNetworkPolicyAttachment

type CoreNetworkPolicyAttachment struct {
	pulumi.CustomResourceState

	// ID of the core network that a policy will be attached to and made `LIVE`.
	CoreNetworkId pulumi.StringOutput `pulumi:"coreNetworkId"`
	// Policy document for creating a core network. Note that updating this argument will result in the new policy document version being set as the `LATEST` and `LIVE` policy document. Refer to the [Core network policies documentation](https://docs.aws.amazon.com/network-manager/latest/cloudwan/cloudwan-policy-change-sets.html) for more information.
	PolicyDocument pulumi.StringOutput `pulumi:"policyDocument"`
	// Current state of a core network.
	State pulumi.StringOutput `pulumi:"state"`
}

Manages a Network Manager Core Network Policy Attachment.

Use this resource to attach a Core Network Policy to an existing Core Network and execute the change set, which deploys changes globally based on the policy submitted (sets the policy to `LIVE`).

> **NOTE:** Deleting this resource will not delete the current policy defined in this resource. Deleting this resource will also not revert the current `LIVE` policy to the previous version.

## Example Usage

### Basic

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v7/go/aws/networkmanager"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := networkmanager.NewCoreNetwork(ctx, "example", &networkmanager.CoreNetworkArgs{
			GlobalNetworkId: pulumi.Any(exampleAwsNetworkmanagerGlobalNetwork.Id),
		})
		if err != nil {
			return err
		}
		_, err = networkmanager.NewCoreNetworkPolicyAttachment(ctx, "example", &networkmanager.CoreNetworkPolicyAttachmentArgs{
			CoreNetworkId:  example.ID(),
			PolicyDocument: pulumi.Any(exampleAwsNetworkmanagerCoreNetworkPolicyDocument.Json),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

### With VPC Attachment (Single Region)

The example below illustrates the scenario where your policy document has static routes pointing to VPC attachments and you want to attach your VPCs to the core network before applying the desired policy document. Set the `createBasePolicy` argument of the `networkmanager.CoreNetwork` resource to `true` if your core network does not currently have any `LIVE` policies (e.g. this is the first `pulumi up` with the core network resource), since a `LIVE` policy is required before VPCs can be attached to the core network. Otherwise, if your core network already has a `LIVE` policy, you may exclude the `createBasePolicy` argument. There are 2 options to implement this:

- Option 1: Use the `basePolicyDocument` argument in the `networkmanager.CoreNetwork` resource that allows the most customizations to a base policy. Use this to customize the `edgeLocations` `asn`. In the example below, `us-west-2` and ASN `65500` are used in the base policy. - Option 2: Use the `createBasePolicy` argument only. This creates a base policy in the region specified in the `provider` block.

### Option 1 - using basePolicyDocument

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v7/go/aws/networkmanager"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

) func main() { pulumi.Run(func(ctx *pulumi.Context) error { exampleGlobalNetwork, err := networkmanager.NewGlobalNetwork(ctx, "example", nil) if err != nil { return err } base, err := networkmanager.GetCoreNetworkPolicyDocument(ctx, &networkmanager.GetCoreNetworkPolicyDocumentArgs{ CoreNetworkConfigurations: []networkmanager.GetCoreNetworkPolicyDocumentCoreNetworkConfiguration{ { AsnRanges: []string{ "65022-65534", }, EdgeLocations: []networkmanager.GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocation{ { Location: "us-west-2", Asn: pulumi.StringRef("65500"), }, }, }, }, Segments: []networkmanager.GetCoreNetworkPolicyDocumentSegment{ { Name: "segment", }, }, }, nil); if err != nil { return err } exampleCoreNetwork, err := networkmanager.NewCoreNetwork(ctx, "example", &networkmanager.CoreNetworkArgs{ GlobalNetworkId: exampleGlobalNetwork.ID(), BasePolicyDocument: pulumi.String(base.Json), CreateBasePolicy: pulumi.Bool(true), }) if err != nil { return err } var splat0 []interface{} for _, val0 := range exampleAwsSubnet { splat0 = append(splat0, val0.Arn) } exampleVpcAttachment, err := networkmanager.NewVpcAttachment(ctx, "example", &networkmanager.VpcAttachmentArgs{ CoreNetworkId: exampleCoreNetwork.ID(), SubnetArns: toPulumiArray(splat0), VpcArn: pulumi.Any(exampleAwsVpc.Arn), }) if err != nil { return err } example := networkmanager.GetCoreNetworkPolicyDocumentOutput(ctx, networkmanager.GetCoreNetworkPolicyDocumentOutputArgs{ CoreNetworkConfigurations: networkmanager.GetCoreNetworkPolicyDocumentCoreNetworkConfigurationArray{ &networkmanager.GetCoreNetworkPolicyDocumentCoreNetworkConfigurationArgs{ AsnRanges: pulumi.StringArray{ pulumi.String("65022-65534"), }, EdgeLocations: networkmanager.GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationArray{ &networkmanager.GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationArgs{ Location: pulumi.String("us-west-2"), Asn: pulumi.String("65500"), }, }, }, }, Segments: networkmanager.GetCoreNetworkPolicyDocumentSegmentArray{ &networkmanager.GetCoreNetworkPolicyDocumentSegmentArgs{ Name: pulumi.String("segment"), }, }, SegmentActions: networkmanager.GetCoreNetworkPolicyDocumentSegmentActionArray{ &networkmanager.GetCoreNetworkPolicyDocumentSegmentActionArgs{ Action: pulumi.String("create-route"), Segment: pulumi.String("segment"), DestinationCidrBlocks: pulumi.StringArray{ pulumi.String("0.0.0.0/0"), }, Destinations: pulumi.StringArray{ exampleVpcAttachment.ID(), }, }, }, }, nil); _, err = networkmanager.NewCoreNetworkPolicyAttachment(ctx, "example", &networkmanager.CoreNetworkPolicyAttachmentArgs{ CoreNetworkId: exampleCoreNetwork.ID(), PolicyDocument: pulumi.String(example.ApplyT(func(example networkmanager.GetCoreNetworkPolicyDocumentResult) (*string, error) { return &example.Json, nil }).(pulumi.StringPtrOutput)), }) 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 } ```

### Option 2 - createBasePolicy only

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v7/go/aws/networkmanager"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

) func main() { pulumi.Run(func(ctx *pulumi.Context) error { exampleGlobalNetwork, err := networkmanager.NewGlobalNetwork(ctx, "example", nil) if err != nil { return err } exampleCoreNetwork, err := networkmanager.NewCoreNetwork(ctx, "example", &networkmanager.CoreNetworkArgs{ GlobalNetworkId: exampleGlobalNetwork.ID(), CreateBasePolicy: pulumi.Bool(true), }) if err != nil { return err } var splat0 []interface{} for _, val0 := range exampleAwsSubnet { splat0 = append(splat0, val0.Arn) } exampleVpcAttachment, err := networkmanager.NewVpcAttachment(ctx, "example", &networkmanager.VpcAttachmentArgs{ CoreNetworkId: exampleCoreNetwork.ID(), SubnetArns: toPulumiArray(splat0), VpcArn: pulumi.Any(exampleAwsVpc.Arn), }) if err != nil { return err } example := networkmanager.GetCoreNetworkPolicyDocumentOutput(ctx, networkmanager.GetCoreNetworkPolicyDocumentOutputArgs{ CoreNetworkConfigurations: networkmanager.GetCoreNetworkPolicyDocumentCoreNetworkConfigurationArray{ &networkmanager.GetCoreNetworkPolicyDocumentCoreNetworkConfigurationArgs{ AsnRanges: pulumi.StringArray{ pulumi.String("65022-65534"), }, EdgeLocations: networkmanager.GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationArray{ &networkmanager.GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationArgs{ Location: pulumi.String("us-west-2"), }, }, }, }, Segments: networkmanager.GetCoreNetworkPolicyDocumentSegmentArray{ &networkmanager.GetCoreNetworkPolicyDocumentSegmentArgs{ Name: pulumi.String("segment"), }, }, SegmentActions: networkmanager.GetCoreNetworkPolicyDocumentSegmentActionArray{ &networkmanager.GetCoreNetworkPolicyDocumentSegmentActionArgs{ Action: pulumi.String("create-route"), Segment: pulumi.String("segment"), DestinationCidrBlocks: pulumi.StringArray{ pulumi.String("0.0.0.0/0"), }, Destinations: pulumi.StringArray{ exampleVpcAttachment.ID(), }, }, }, }, nil); _, err = networkmanager.NewCoreNetworkPolicyAttachment(ctx, "example", &networkmanager.CoreNetworkPolicyAttachmentArgs{ CoreNetworkId: exampleCoreNetwork.ID(), PolicyDocument: pulumi.String(example.ApplyT(func(example networkmanager.GetCoreNetworkPolicyDocumentResult) (*string, error) { return &example.Json, nil }).(pulumi.StringPtrOutput)), }) 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 } ```

### With VPC Attachment (Multi-Region)

The example below illustrates the scenario where your policy document has static routes pointing to VPC attachments and you want to attach your VPCs to the core network before applying the desired policy document. Set the `createBasePolicy` argument of the `networkmanager.CoreNetwork` resource to `true` if your core network does not currently have any `LIVE` policies (e.g. this is the first `pulumi up` with the core network resource), since a `LIVE` policy is required before VPCs can be attached to the core network. Otherwise, if your core network already has a `LIVE` policy, you may exclude the `createBasePolicy` argument. For multi-region in a core network that does not yet have a `LIVE` policy, there are 2 options:

- Option 1: Use the `basePolicyDocument` argument that allows the most customizations to a base policy. Use this to customize the `edgeLocations` `asn`. In the example below, `us-west-2`, `us-east-1` and specific ASNs are used in the base policy. - Option 2: Pass a list of regions to the `networkmanager.CoreNetwork` resource `basePolicyRegions` argument. In the example below, `us-west-2` and `us-east-1` are specified in the base policy.

### Option 1 - using basePolicyDocument

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v7/go/aws/networkmanager"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

) func main() { pulumi.Run(func(ctx *pulumi.Context) error { exampleGlobalNetwork, err := networkmanager.NewGlobalNetwork(ctx, "example", nil) if err != nil { return err } base, err := networkmanager.GetCoreNetworkPolicyDocument(ctx, &networkmanager.GetCoreNetworkPolicyDocumentArgs{ CoreNetworkConfigurations: []networkmanager.GetCoreNetworkPolicyDocumentCoreNetworkConfiguration{ { AsnRanges: []string{ "65022-65534", }, EdgeLocations: []networkmanager.GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocation{ { Location: "us-west-2", Asn: pulumi.StringRef("65500"), }, { Location: "us-east-1", Asn: pulumi.StringRef("65501"), }, }, }, }, Segments: []networkmanager.GetCoreNetworkPolicyDocumentSegment{ { Name: "segment", }, }, }, nil); if err != nil { return err } exampleCoreNetwork, err := networkmanager.NewCoreNetwork(ctx, "example", &networkmanager.CoreNetworkArgs{ GlobalNetworkId: exampleGlobalNetwork.ID(), BasePolicyDocument: pulumi.String(base.Json), CreateBasePolicy: pulumi.Bool(true), }) if err != nil { return err } var splat0 []interface{} for _, val0 := range exampleUsWest2AwsSubnet { splat0 = append(splat0, val0.Arn) } exampleUsWest2, err := networkmanager.NewVpcAttachment(ctx, "example_us_west_2", &networkmanager.VpcAttachmentArgs{ CoreNetworkId: exampleCoreNetwork.ID(), SubnetArns: toPulumiArray(splat0), VpcArn: pulumi.Any(exampleUsWest2AwsVpc.Arn), }) if err != nil { return err } var splat1 []interface{} for _, val0 := range exampleUsEast1AwsSubnet { splat1 = append(splat1, val0.Arn) } exampleUsEast1, err := networkmanager.NewVpcAttachment(ctx, "example_us_east_1", &networkmanager.VpcAttachmentArgs{ CoreNetworkId: exampleCoreNetwork.ID(), SubnetArns: toPulumiArray(splat1), VpcArn: pulumi.Any(exampleUsEast1AwsVpc.Arn), }) if err != nil { return err } example := networkmanager.GetCoreNetworkPolicyDocumentOutput(ctx, networkmanager.GetCoreNetworkPolicyDocumentOutputArgs{ CoreNetworkConfigurations: networkmanager.GetCoreNetworkPolicyDocumentCoreNetworkConfigurationArray{ &networkmanager.GetCoreNetworkPolicyDocumentCoreNetworkConfigurationArgs{ AsnRanges: pulumi.StringArray{ pulumi.String("65022-65534"), }, EdgeLocations: networkmanager.GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationArray{ &networkmanager.GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationArgs{ Location: pulumi.String("us-west-2"), Asn: pulumi.String("65500"), }, &networkmanager.GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationArgs{ Location: pulumi.String("us-east-1"), Asn: pulumi.String("65501"), }, }, }, }, Segments: networkmanager.GetCoreNetworkPolicyDocumentSegmentArray{ &networkmanager.GetCoreNetworkPolicyDocumentSegmentArgs{ Name: pulumi.String("segment"), }, &networkmanager.GetCoreNetworkPolicyDocumentSegmentArgs{ Name: pulumi.String("segment2"), }, }, SegmentActions: networkmanager.GetCoreNetworkPolicyDocumentSegmentActionArray{ &networkmanager.GetCoreNetworkPolicyDocumentSegmentActionArgs{ Action: pulumi.String("create-route"), Segment: pulumi.String("segment"), DestinationCidrBlocks: pulumi.StringArray{ pulumi.String("10.0.0.0/16"), }, Destinations: pulumi.StringArray{ exampleUsWest2.ID(), }, }, &networkmanager.GetCoreNetworkPolicyDocumentSegmentActionArgs{ Action: pulumi.String("create-route"), Segment: pulumi.String("segment"), DestinationCidrBlocks: pulumi.StringArray{ pulumi.String("10.1.0.0/16"), }, Destinations: pulumi.StringArray{ exampleUsEast1.ID(), }, }, }, }, nil); _, err = networkmanager.NewCoreNetworkPolicyAttachment(ctx, "example", &networkmanager.CoreNetworkPolicyAttachmentArgs{ CoreNetworkId: exampleCoreNetwork.ID(), PolicyDocument: pulumi.String(example.ApplyT(func(example networkmanager.GetCoreNetworkPolicyDocumentResult) (*string, error) { return &example.Json, nil }).(pulumi.StringPtrOutput)), }) 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 } ```

### Option 2 - using basePolicyRegions

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v7/go/aws/networkmanager"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

) func main() { pulumi.Run(func(ctx *pulumi.Context) error { exampleGlobalNetwork, err := networkmanager.NewGlobalNetwork(ctx, "example", nil) if err != nil { return err } exampleCoreNetwork, err := networkmanager.NewCoreNetwork(ctx, "example", &networkmanager.CoreNetworkArgs{ GlobalNetworkId: exampleGlobalNetwork.ID(), BasePolicyRegions: pulumi.StringArray{ pulumi.String("us-west-2"), pulumi.String("us-east-1"), }, CreateBasePolicy: pulumi.Bool(true), }) if err != nil { return err } var splat0 []interface{} for _, val0 := range exampleUsWest2AwsSubnet { splat0 = append(splat0, val0.Arn) } exampleUsWest2, err := networkmanager.NewVpcAttachment(ctx, "example_us_west_2", &networkmanager.VpcAttachmentArgs{ CoreNetworkId: exampleCoreNetwork.ID(), SubnetArns: toPulumiArray(splat0), VpcArn: pulumi.Any(exampleUsWest2AwsVpc.Arn), }) if err != nil { return err } var splat1 []interface{} for _, val0 := range exampleUsEast1AwsSubnet { splat1 = append(splat1, val0.Arn) } exampleUsEast1, err := networkmanager.NewVpcAttachment(ctx, "example_us_east_1", &networkmanager.VpcAttachmentArgs{ CoreNetworkId: exampleCoreNetwork.ID(), SubnetArns: toPulumiArray(splat1), VpcArn: pulumi.Any(exampleUsEast1AwsVpc.Arn), }) if err != nil { return err } example := networkmanager.GetCoreNetworkPolicyDocumentOutput(ctx, networkmanager.GetCoreNetworkPolicyDocumentOutputArgs{ CoreNetworkConfigurations: networkmanager.GetCoreNetworkPolicyDocumentCoreNetworkConfigurationArray{ &networkmanager.GetCoreNetworkPolicyDocumentCoreNetworkConfigurationArgs{ AsnRanges: pulumi.StringArray{ pulumi.String("65022-65534"), }, EdgeLocations: networkmanager.GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationArray{ &networkmanager.GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationArgs{ Location: pulumi.String("us-west-2"), }, &networkmanager.GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationArgs{ Location: pulumi.String("us-east-1"), }, }, }, }, Segments: networkmanager.GetCoreNetworkPolicyDocumentSegmentArray{ &networkmanager.GetCoreNetworkPolicyDocumentSegmentArgs{ Name: pulumi.String("segment"), }, &networkmanager.GetCoreNetworkPolicyDocumentSegmentArgs{ Name: pulumi.String("segment2"), }, }, SegmentActions: networkmanager.GetCoreNetworkPolicyDocumentSegmentActionArray{ &networkmanager.GetCoreNetworkPolicyDocumentSegmentActionArgs{ Action: pulumi.String("create-route"), Segment: pulumi.String("segment"), DestinationCidrBlocks: pulumi.StringArray{ pulumi.String("10.0.0.0/16"), }, Destinations: pulumi.StringArray{ exampleUsWest2.ID(), }, }, &networkmanager.GetCoreNetworkPolicyDocumentSegmentActionArgs{ Action: pulumi.String("create-route"), Segment: pulumi.String("segment"), DestinationCidrBlocks: pulumi.StringArray{ pulumi.String("10.1.0.0/16"), }, Destinations: pulumi.StringArray{ exampleUsEast1.ID(), }, }, }, }, nil); _, err = networkmanager.NewCoreNetworkPolicyAttachment(ctx, "example", &networkmanager.CoreNetworkPolicyAttachmentArgs{ CoreNetworkId: exampleCoreNetwork.ID(), PolicyDocument: pulumi.String(example.ApplyT(func(example networkmanager.GetCoreNetworkPolicyDocumentResult) (*string, error) { return &example.Json, nil }).(pulumi.StringPtrOutput)), }) 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 } ```

## Import

Using `pulumi import`, import `aws_networkmanager_core_network_policy_attachment` using the core network ID. For example:

```sh $ pulumi import aws:networkmanager/coreNetworkPolicyAttachment:CoreNetworkPolicyAttachment example core-network-0d47f6t230mz46dy4 ```

func GetCoreNetworkPolicyAttachment

func GetCoreNetworkPolicyAttachment(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *CoreNetworkPolicyAttachmentState, opts ...pulumi.ResourceOption) (*CoreNetworkPolicyAttachment, error)

GetCoreNetworkPolicyAttachment gets an existing CoreNetworkPolicyAttachment 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 NewCoreNetworkPolicyAttachment

func NewCoreNetworkPolicyAttachment(ctx *pulumi.Context,
	name string, args *CoreNetworkPolicyAttachmentArgs, opts ...pulumi.ResourceOption) (*CoreNetworkPolicyAttachment, error)

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

func (*CoreNetworkPolicyAttachment) ElementType

func (*CoreNetworkPolicyAttachment) ElementType() reflect.Type

func (*CoreNetworkPolicyAttachment) ToCoreNetworkPolicyAttachmentOutput

func (i *CoreNetworkPolicyAttachment) ToCoreNetworkPolicyAttachmentOutput() CoreNetworkPolicyAttachmentOutput

func (*CoreNetworkPolicyAttachment) ToCoreNetworkPolicyAttachmentOutputWithContext

func (i *CoreNetworkPolicyAttachment) ToCoreNetworkPolicyAttachmentOutputWithContext(ctx context.Context) CoreNetworkPolicyAttachmentOutput

type CoreNetworkPolicyAttachmentArgs

type CoreNetworkPolicyAttachmentArgs struct {
	// ID of the core network that a policy will be attached to and made `LIVE`.
	CoreNetworkId pulumi.StringInput
	// Policy document for creating a core network. Note that updating this argument will result in the new policy document version being set as the `LATEST` and `LIVE` policy document. Refer to the [Core network policies documentation](https://docs.aws.amazon.com/network-manager/latest/cloudwan/cloudwan-policy-change-sets.html) for more information.
	PolicyDocument pulumi.StringInput
}

The set of arguments for constructing a CoreNetworkPolicyAttachment resource.

func (CoreNetworkPolicyAttachmentArgs) ElementType

type CoreNetworkPolicyAttachmentArray

type CoreNetworkPolicyAttachmentArray []CoreNetworkPolicyAttachmentInput

func (CoreNetworkPolicyAttachmentArray) ElementType

func (CoreNetworkPolicyAttachmentArray) ToCoreNetworkPolicyAttachmentArrayOutput

func (i CoreNetworkPolicyAttachmentArray) ToCoreNetworkPolicyAttachmentArrayOutput() CoreNetworkPolicyAttachmentArrayOutput

func (CoreNetworkPolicyAttachmentArray) ToCoreNetworkPolicyAttachmentArrayOutputWithContext

func (i CoreNetworkPolicyAttachmentArray) ToCoreNetworkPolicyAttachmentArrayOutputWithContext(ctx context.Context) CoreNetworkPolicyAttachmentArrayOutput

type CoreNetworkPolicyAttachmentArrayInput

type CoreNetworkPolicyAttachmentArrayInput interface {
	pulumi.Input

	ToCoreNetworkPolicyAttachmentArrayOutput() CoreNetworkPolicyAttachmentArrayOutput
	ToCoreNetworkPolicyAttachmentArrayOutputWithContext(context.Context) CoreNetworkPolicyAttachmentArrayOutput
}

CoreNetworkPolicyAttachmentArrayInput is an input type that accepts CoreNetworkPolicyAttachmentArray and CoreNetworkPolicyAttachmentArrayOutput values. You can construct a concrete instance of `CoreNetworkPolicyAttachmentArrayInput` via:

CoreNetworkPolicyAttachmentArray{ CoreNetworkPolicyAttachmentArgs{...} }

type CoreNetworkPolicyAttachmentArrayOutput

type CoreNetworkPolicyAttachmentArrayOutput struct{ *pulumi.OutputState }

func (CoreNetworkPolicyAttachmentArrayOutput) ElementType

func (CoreNetworkPolicyAttachmentArrayOutput) Index

func (CoreNetworkPolicyAttachmentArrayOutput) ToCoreNetworkPolicyAttachmentArrayOutput

func (o CoreNetworkPolicyAttachmentArrayOutput) ToCoreNetworkPolicyAttachmentArrayOutput() CoreNetworkPolicyAttachmentArrayOutput

func (CoreNetworkPolicyAttachmentArrayOutput) ToCoreNetworkPolicyAttachmentArrayOutputWithContext

func (o CoreNetworkPolicyAttachmentArrayOutput) ToCoreNetworkPolicyAttachmentArrayOutputWithContext(ctx context.Context) CoreNetworkPolicyAttachmentArrayOutput

type CoreNetworkPolicyAttachmentInput

type CoreNetworkPolicyAttachmentInput interface {
	pulumi.Input

	ToCoreNetworkPolicyAttachmentOutput() CoreNetworkPolicyAttachmentOutput
	ToCoreNetworkPolicyAttachmentOutputWithContext(ctx context.Context) CoreNetworkPolicyAttachmentOutput
}

type CoreNetworkPolicyAttachmentMap

type CoreNetworkPolicyAttachmentMap map[string]CoreNetworkPolicyAttachmentInput

func (CoreNetworkPolicyAttachmentMap) ElementType

func (CoreNetworkPolicyAttachmentMap) ToCoreNetworkPolicyAttachmentMapOutput

func (i CoreNetworkPolicyAttachmentMap) ToCoreNetworkPolicyAttachmentMapOutput() CoreNetworkPolicyAttachmentMapOutput

func (CoreNetworkPolicyAttachmentMap) ToCoreNetworkPolicyAttachmentMapOutputWithContext

func (i CoreNetworkPolicyAttachmentMap) ToCoreNetworkPolicyAttachmentMapOutputWithContext(ctx context.Context) CoreNetworkPolicyAttachmentMapOutput

type CoreNetworkPolicyAttachmentMapInput

type CoreNetworkPolicyAttachmentMapInput interface {
	pulumi.Input

	ToCoreNetworkPolicyAttachmentMapOutput() CoreNetworkPolicyAttachmentMapOutput
	ToCoreNetworkPolicyAttachmentMapOutputWithContext(context.Context) CoreNetworkPolicyAttachmentMapOutput
}

CoreNetworkPolicyAttachmentMapInput is an input type that accepts CoreNetworkPolicyAttachmentMap and CoreNetworkPolicyAttachmentMapOutput values. You can construct a concrete instance of `CoreNetworkPolicyAttachmentMapInput` via:

CoreNetworkPolicyAttachmentMap{ "key": CoreNetworkPolicyAttachmentArgs{...} }

type CoreNetworkPolicyAttachmentMapOutput

type CoreNetworkPolicyAttachmentMapOutput struct{ *pulumi.OutputState }

func (CoreNetworkPolicyAttachmentMapOutput) ElementType

func (CoreNetworkPolicyAttachmentMapOutput) MapIndex

func (CoreNetworkPolicyAttachmentMapOutput) ToCoreNetworkPolicyAttachmentMapOutput

func (o CoreNetworkPolicyAttachmentMapOutput) ToCoreNetworkPolicyAttachmentMapOutput() CoreNetworkPolicyAttachmentMapOutput

func (CoreNetworkPolicyAttachmentMapOutput) ToCoreNetworkPolicyAttachmentMapOutputWithContext

func (o CoreNetworkPolicyAttachmentMapOutput) ToCoreNetworkPolicyAttachmentMapOutputWithContext(ctx context.Context) CoreNetworkPolicyAttachmentMapOutput

type CoreNetworkPolicyAttachmentOutput

type CoreNetworkPolicyAttachmentOutput struct{ *pulumi.OutputState }

func (CoreNetworkPolicyAttachmentOutput) CoreNetworkId

ID of the core network that a policy will be attached to and made `LIVE`.

func (CoreNetworkPolicyAttachmentOutput) ElementType

func (CoreNetworkPolicyAttachmentOutput) PolicyDocument

Policy document for creating a core network. Note that updating this argument will result in the new policy document version being set as the `LATEST` and `LIVE` policy document. Refer to the [Core network policies documentation](https://docs.aws.amazon.com/network-manager/latest/cloudwan/cloudwan-policy-change-sets.html) for more information.

func (CoreNetworkPolicyAttachmentOutput) State

Current state of a core network.

func (CoreNetworkPolicyAttachmentOutput) ToCoreNetworkPolicyAttachmentOutput

func (o CoreNetworkPolicyAttachmentOutput) ToCoreNetworkPolicyAttachmentOutput() CoreNetworkPolicyAttachmentOutput

func (CoreNetworkPolicyAttachmentOutput) ToCoreNetworkPolicyAttachmentOutputWithContext

func (o CoreNetworkPolicyAttachmentOutput) ToCoreNetworkPolicyAttachmentOutputWithContext(ctx context.Context) CoreNetworkPolicyAttachmentOutput

type CoreNetworkPolicyAttachmentState

type CoreNetworkPolicyAttachmentState struct {
	// ID of the core network that a policy will be attached to and made `LIVE`.
	CoreNetworkId pulumi.StringPtrInput
	// Policy document for creating a core network. Note that updating this argument will result in the new policy document version being set as the `LATEST` and `LIVE` policy document. Refer to the [Core network policies documentation](https://docs.aws.amazon.com/network-manager/latest/cloudwan/cloudwan-policy-change-sets.html) for more information.
	PolicyDocument pulumi.StringPtrInput
	// Current state of a core network.
	State pulumi.StringPtrInput
}

func (CoreNetworkPolicyAttachmentState) ElementType

type CoreNetworkSegment

type CoreNetworkSegment struct {
	// Regions where the edges are located.
	EdgeLocations []string `pulumi:"edgeLocations"`
	// Name of a core network segment.
	Name *string `pulumi:"name"`
	// Shared segments of a core network.
	SharedSegments []string `pulumi:"sharedSegments"`
}

type CoreNetworkSegmentArgs

type CoreNetworkSegmentArgs struct {
	// Regions where the edges are located.
	EdgeLocations pulumi.StringArrayInput `pulumi:"edgeLocations"`
	// Name of a core network segment.
	Name pulumi.StringPtrInput `pulumi:"name"`
	// Shared segments of a core network.
	SharedSegments pulumi.StringArrayInput `pulumi:"sharedSegments"`
}

func (CoreNetworkSegmentArgs) ElementType

func (CoreNetworkSegmentArgs) ElementType() reflect.Type

func (CoreNetworkSegmentArgs) ToCoreNetworkSegmentOutput

func (i CoreNetworkSegmentArgs) ToCoreNetworkSegmentOutput() CoreNetworkSegmentOutput

func (CoreNetworkSegmentArgs) ToCoreNetworkSegmentOutputWithContext

func (i CoreNetworkSegmentArgs) ToCoreNetworkSegmentOutputWithContext(ctx context.Context) CoreNetworkSegmentOutput

type CoreNetworkSegmentArray

type CoreNetworkSegmentArray []CoreNetworkSegmentInput

func (CoreNetworkSegmentArray) ElementType

func (CoreNetworkSegmentArray) ElementType() reflect.Type

func (CoreNetworkSegmentArray) ToCoreNetworkSegmentArrayOutput

func (i CoreNetworkSegmentArray) ToCoreNetworkSegmentArrayOutput() CoreNetworkSegmentArrayOutput

func (CoreNetworkSegmentArray) ToCoreNetworkSegmentArrayOutputWithContext

func (i CoreNetworkSegmentArray) ToCoreNetworkSegmentArrayOutputWithContext(ctx context.Context) CoreNetworkSegmentArrayOutput

type CoreNetworkSegmentArrayInput

type CoreNetworkSegmentArrayInput interface {
	pulumi.Input

	ToCoreNetworkSegmentArrayOutput() CoreNetworkSegmentArrayOutput
	ToCoreNetworkSegmentArrayOutputWithContext(context.Context) CoreNetworkSegmentArrayOutput
}

CoreNetworkSegmentArrayInput is an input type that accepts CoreNetworkSegmentArray and CoreNetworkSegmentArrayOutput values. You can construct a concrete instance of `CoreNetworkSegmentArrayInput` via:

CoreNetworkSegmentArray{ CoreNetworkSegmentArgs{...} }

type CoreNetworkSegmentArrayOutput

type CoreNetworkSegmentArrayOutput struct{ *pulumi.OutputState }

func (CoreNetworkSegmentArrayOutput) ElementType

func (CoreNetworkSegmentArrayOutput) Index

func (CoreNetworkSegmentArrayOutput) ToCoreNetworkSegmentArrayOutput

func (o CoreNetworkSegmentArrayOutput) ToCoreNetworkSegmentArrayOutput() CoreNetworkSegmentArrayOutput

func (CoreNetworkSegmentArrayOutput) ToCoreNetworkSegmentArrayOutputWithContext

func (o CoreNetworkSegmentArrayOutput) ToCoreNetworkSegmentArrayOutputWithContext(ctx context.Context) CoreNetworkSegmentArrayOutput

type CoreNetworkSegmentInput

type CoreNetworkSegmentInput interface {
	pulumi.Input

	ToCoreNetworkSegmentOutput() CoreNetworkSegmentOutput
	ToCoreNetworkSegmentOutputWithContext(context.Context) CoreNetworkSegmentOutput
}

CoreNetworkSegmentInput is an input type that accepts CoreNetworkSegmentArgs and CoreNetworkSegmentOutput values. You can construct a concrete instance of `CoreNetworkSegmentInput` via:

CoreNetworkSegmentArgs{...}

type CoreNetworkSegmentOutput

type CoreNetworkSegmentOutput struct{ *pulumi.OutputState }

func (CoreNetworkSegmentOutput) EdgeLocations

Regions where the edges are located.

func (CoreNetworkSegmentOutput) ElementType

func (CoreNetworkSegmentOutput) ElementType() reflect.Type

func (CoreNetworkSegmentOutput) Name

Name of a core network segment.

func (CoreNetworkSegmentOutput) SharedSegments

Shared segments of a core network.

func (CoreNetworkSegmentOutput) ToCoreNetworkSegmentOutput

func (o CoreNetworkSegmentOutput) ToCoreNetworkSegmentOutput() CoreNetworkSegmentOutput

func (CoreNetworkSegmentOutput) ToCoreNetworkSegmentOutputWithContext

func (o CoreNetworkSegmentOutput) ToCoreNetworkSegmentOutputWithContext(ctx context.Context) CoreNetworkSegmentOutput

type CoreNetworkState

type CoreNetworkState struct {
	// Core Network ARN.
	Arn pulumi.StringPtrInput
	// Sets the base policy document for the core network. Refer to the [Core network policies documentation](https://docs.aws.amazon.com/network-manager/latest/cloudwan/cloudwan-policy-change-sets.html) for more information.
	BasePolicyDocument pulumi.StringPtrInput
	// List of regions to add to the base policy. The base policy created by setting the `createBasePolicy` argument to `true` requires one or more regions to be set in the `edge-locations`, `location` key. If `basePolicyRegions` is not specified, the region used in the base policy defaults to the region specified in the `provider` block.
	BasePolicyRegions pulumi.StringArrayInput
	// Whether to create a base policy when a core network is created or updated. A base policy is created and set to `LIVE` to allow attachments to the core network (e.g. VPC Attachments) before applying a policy document provided using the `networkmanager.CoreNetworkPolicyAttachment` resource. This base policy is needed if your core network does not have any `LIVE` policies and your policy document has static routes pointing to VPC attachments and you want to attach your VPCs to the core network before applying the desired policy document. Valid values are `true` or `false`. An example of this Pulumi snippet can be found above for VPC Attachment in a single region and for VPC Attachment multi-region. An example base policy is shown below. This base policy is overridden with the policy that you specify in the `networkmanager.CoreNetworkPolicyAttachment` resource.
	CreateBasePolicy pulumi.BoolPtrInput
	// Timestamp when a core network was created.
	CreatedAt pulumi.StringPtrInput
	// Description of the Core Network.
	Description pulumi.StringPtrInput
	// One or more blocks detailing the edges within a core network. Detailed below.
	Edges CoreNetworkEdgeArrayInput
	// ID of the global network that a core network will be a part of.
	//
	// The following arguments are optional:
	GlobalNetworkId pulumi.StringPtrInput
	// One or more blocks detailing the segments within a core network. Detailed below.
	Segments CoreNetworkSegmentArrayInput
	// Current state of a core network.
	State pulumi.StringPtrInput
	// Key-value tags for the Core Network. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	TagsAll pulumi.StringMapInput
}

func (CoreNetworkState) ElementType

func (CoreNetworkState) ElementType() reflect.Type

type CustomerGatewayAssociation

type CustomerGatewayAssociation struct {
	pulumi.CustomResourceState

	// ARN of the customer gateway.
	CustomerGatewayArn pulumi.StringOutput `pulumi:"customerGatewayArn"`
	// ID of the device.
	DeviceId pulumi.StringOutput `pulumi:"deviceId"`
	// ID of the global network.
	//
	// The following arguments are optional:
	GlobalNetworkId pulumi.StringOutput `pulumi:"globalNetworkId"`
	// ID of the link.
	LinkId pulumi.StringPtrOutput `pulumi:"linkId"`
}

Manages a Network Manager Customer Gateway Association.

Use this resource to associate a customer gateway with a device and optionally, with a link. If you specify a link, it must be associated with the specified device.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v7/go/aws/ec2"
"github.com/pulumi/pulumi-aws/sdk/v7/go/aws/ec2transitgateway"
"github.com/pulumi/pulumi-aws/sdk/v7/go/aws/networkmanager"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := networkmanager.NewGlobalNetwork(ctx, "example", &networkmanager.GlobalNetworkArgs{
			Description: pulumi.String("example"),
		})
		if err != nil {
			return err
		}
		exampleSite, err := networkmanager.NewSite(ctx, "example", &networkmanager.SiteArgs{
			GlobalNetworkId: example.ID(),
		})
		if err != nil {
			return err
		}
		exampleDevice, err := networkmanager.NewDevice(ctx, "example", &networkmanager.DeviceArgs{
			GlobalNetworkId: example.ID(),
			SiteId:          exampleSite.ID(),
		})
		if err != nil {
			return err
		}
		exampleCustomerGateway, err := ec2.NewCustomerGateway(ctx, "example", &ec2.CustomerGatewayArgs{
			BgpAsn:    pulumi.String("65000"),
			IpAddress: pulumi.String("172.83.124.10"),
			Type:      pulumi.String("ipsec.1"),
		})
		if err != nil {
			return err
		}
		exampleTransitGateway, err := ec2transitgateway.NewTransitGateway(ctx, "example", nil)
		if err != nil {
			return err
		}
		exampleVpnConnection, err := ec2.NewVpnConnection(ctx, "example", &ec2.VpnConnectionArgs{
			CustomerGatewayId: exampleCustomerGateway.ID(),
			TransitGatewayId:  exampleTransitGateway.ID(),
			Type:              exampleCustomerGateway.Type,
			StaticRoutesOnly:  pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		exampleTransitGatewayRegistration, err := networkmanager.NewTransitGatewayRegistration(ctx, "example", &networkmanager.TransitGatewayRegistrationArgs{
			GlobalNetworkId:   example.ID(),
			TransitGatewayArn: exampleTransitGateway.Arn,
		}, pulumi.DependsOn([]pulumi.Resource{
			exampleVpnConnection,
		}))
		if err != nil {
			return err
		}
		_, err = networkmanager.NewCustomerGatewayAssociation(ctx, "example", &networkmanager.CustomerGatewayAssociationArgs{
			GlobalNetworkId:    example.ID(),
			CustomerGatewayArn: exampleCustomerGateway.Arn,
			DeviceId:           exampleDevice.ID(),
		}, pulumi.DependsOn([]pulumi.Resource{
			exampleTransitGatewayRegistration,
		}))
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Using `pulumi import`, import `aws_networkmanager_customer_gateway_association` using the global network ID and customer gateway ARN. For example:

```sh $ pulumi import aws:networkmanager/customerGatewayAssociation:CustomerGatewayAssociation example global-network-0d47f6t230mz46dy4,arn:aws:ec2:us-west-2:123456789012:customer-gateway/cgw-123abc05e04123abc ```

func GetCustomerGatewayAssociation

func GetCustomerGatewayAssociation(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *CustomerGatewayAssociationState, opts ...pulumi.ResourceOption) (*CustomerGatewayAssociation, error)

GetCustomerGatewayAssociation gets an existing CustomerGatewayAssociation 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 NewCustomerGatewayAssociation

func NewCustomerGatewayAssociation(ctx *pulumi.Context,
	name string, args *CustomerGatewayAssociationArgs, opts ...pulumi.ResourceOption) (*CustomerGatewayAssociation, error)

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

func (*CustomerGatewayAssociation) ElementType

func (*CustomerGatewayAssociation) ElementType() reflect.Type

func (*CustomerGatewayAssociation) ToCustomerGatewayAssociationOutput

func (i *CustomerGatewayAssociation) ToCustomerGatewayAssociationOutput() CustomerGatewayAssociationOutput

func (*CustomerGatewayAssociation) ToCustomerGatewayAssociationOutputWithContext

func (i *CustomerGatewayAssociation) ToCustomerGatewayAssociationOutputWithContext(ctx context.Context) CustomerGatewayAssociationOutput

type CustomerGatewayAssociationArgs

type CustomerGatewayAssociationArgs struct {
	// ARN of the customer gateway.
	CustomerGatewayArn pulumi.StringInput
	// ID of the device.
	DeviceId pulumi.StringInput
	// ID of the global network.
	//
	// The following arguments are optional:
	GlobalNetworkId pulumi.StringInput
	// ID of the link.
	LinkId pulumi.StringPtrInput
}

The set of arguments for constructing a CustomerGatewayAssociation resource.

func (CustomerGatewayAssociationArgs) ElementType

type CustomerGatewayAssociationArray

type CustomerGatewayAssociationArray []CustomerGatewayAssociationInput

func (CustomerGatewayAssociationArray) ElementType

func (CustomerGatewayAssociationArray) ToCustomerGatewayAssociationArrayOutput

func (i CustomerGatewayAssociationArray) ToCustomerGatewayAssociationArrayOutput() CustomerGatewayAssociationArrayOutput

func (CustomerGatewayAssociationArray) ToCustomerGatewayAssociationArrayOutputWithContext

func (i CustomerGatewayAssociationArray) ToCustomerGatewayAssociationArrayOutputWithContext(ctx context.Context) CustomerGatewayAssociationArrayOutput

type CustomerGatewayAssociationArrayInput

type CustomerGatewayAssociationArrayInput interface {
	pulumi.Input

	ToCustomerGatewayAssociationArrayOutput() CustomerGatewayAssociationArrayOutput
	ToCustomerGatewayAssociationArrayOutputWithContext(context.Context) CustomerGatewayAssociationArrayOutput
}

CustomerGatewayAssociationArrayInput is an input type that accepts CustomerGatewayAssociationArray and CustomerGatewayAssociationArrayOutput values. You can construct a concrete instance of `CustomerGatewayAssociationArrayInput` via:

CustomerGatewayAssociationArray{ CustomerGatewayAssociationArgs{...} }

type CustomerGatewayAssociationArrayOutput

type CustomerGatewayAssociationArrayOutput struct{ *pulumi.OutputState }

func (CustomerGatewayAssociationArrayOutput) ElementType

func (CustomerGatewayAssociationArrayOutput) Index

func (CustomerGatewayAssociationArrayOutput) ToCustomerGatewayAssociationArrayOutput

func (o CustomerGatewayAssociationArrayOutput) ToCustomerGatewayAssociationArrayOutput() CustomerGatewayAssociationArrayOutput

func (CustomerGatewayAssociationArrayOutput) ToCustomerGatewayAssociationArrayOutputWithContext

func (o CustomerGatewayAssociationArrayOutput) ToCustomerGatewayAssociationArrayOutputWithContext(ctx context.Context) CustomerGatewayAssociationArrayOutput

type CustomerGatewayAssociationInput

type CustomerGatewayAssociationInput interface {
	pulumi.Input

	ToCustomerGatewayAssociationOutput() CustomerGatewayAssociationOutput
	ToCustomerGatewayAssociationOutputWithContext(ctx context.Context) CustomerGatewayAssociationOutput
}

type CustomerGatewayAssociationMap

type CustomerGatewayAssociationMap map[string]CustomerGatewayAssociationInput

func (CustomerGatewayAssociationMap) ElementType

func (CustomerGatewayAssociationMap) ToCustomerGatewayAssociationMapOutput

func (i CustomerGatewayAssociationMap) ToCustomerGatewayAssociationMapOutput() CustomerGatewayAssociationMapOutput

func (CustomerGatewayAssociationMap) ToCustomerGatewayAssociationMapOutputWithContext

func (i CustomerGatewayAssociationMap) ToCustomerGatewayAssociationMapOutputWithContext(ctx context.Context) CustomerGatewayAssociationMapOutput

type CustomerGatewayAssociationMapInput

type CustomerGatewayAssociationMapInput interface {
	pulumi.Input

	ToCustomerGatewayAssociationMapOutput() CustomerGatewayAssociationMapOutput
	ToCustomerGatewayAssociationMapOutputWithContext(context.Context) CustomerGatewayAssociationMapOutput
}

CustomerGatewayAssociationMapInput is an input type that accepts CustomerGatewayAssociationMap and CustomerGatewayAssociationMapOutput values. You can construct a concrete instance of `CustomerGatewayAssociationMapInput` via:

CustomerGatewayAssociationMap{ "key": CustomerGatewayAssociationArgs{...} }

type CustomerGatewayAssociationMapOutput

type CustomerGatewayAssociationMapOutput struct{ *pulumi.OutputState }

func (CustomerGatewayAssociationMapOutput) ElementType

func (CustomerGatewayAssociationMapOutput) MapIndex

func (CustomerGatewayAssociationMapOutput) ToCustomerGatewayAssociationMapOutput

func (o CustomerGatewayAssociationMapOutput) ToCustomerGatewayAssociationMapOutput() CustomerGatewayAssociationMapOutput

func (CustomerGatewayAssociationMapOutput) ToCustomerGatewayAssociationMapOutputWithContext

func (o CustomerGatewayAssociationMapOutput) ToCustomerGatewayAssociationMapOutputWithContext(ctx context.Context) CustomerGatewayAssociationMapOutput

type CustomerGatewayAssociationOutput

type CustomerGatewayAssociationOutput struct{ *pulumi.OutputState }

func (CustomerGatewayAssociationOutput) CustomerGatewayArn

func (o CustomerGatewayAssociationOutput) CustomerGatewayArn() pulumi.StringOutput

ARN of the customer gateway.

func (CustomerGatewayAssociationOutput) DeviceId

ID of the device.

func (CustomerGatewayAssociationOutput) ElementType

func (CustomerGatewayAssociationOutput) GlobalNetworkId

ID of the global network.

The following arguments are optional:

func (CustomerGatewayAssociationOutput) LinkId

ID of the link.

func (CustomerGatewayAssociationOutput) ToCustomerGatewayAssociationOutput

func (o CustomerGatewayAssociationOutput) ToCustomerGatewayAssociationOutput() CustomerGatewayAssociationOutput

func (CustomerGatewayAssociationOutput) ToCustomerGatewayAssociationOutputWithContext

func (o CustomerGatewayAssociationOutput) ToCustomerGatewayAssociationOutputWithContext(ctx context.Context) CustomerGatewayAssociationOutput

type CustomerGatewayAssociationState

type CustomerGatewayAssociationState struct {
	// ARN of the customer gateway.
	CustomerGatewayArn pulumi.StringPtrInput
	// ID of the device.
	DeviceId pulumi.StringPtrInput
	// ID of the global network.
	//
	// The following arguments are optional:
	GlobalNetworkId pulumi.StringPtrInput
	// ID of the link.
	LinkId pulumi.StringPtrInput
}

func (CustomerGatewayAssociationState) ElementType

type Device

type Device struct {
	pulumi.CustomResourceState

	// ARN of the device.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// AWS location of the device. Documented below.
	AwsLocation DeviceAwsLocationPtrOutput `pulumi:"awsLocation"`
	// Description of the device.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// ID of the global network.
	//
	// The following arguments are optional:
	GlobalNetworkId pulumi.StringOutput `pulumi:"globalNetworkId"`
	// Location of the device. Documented below.
	Location DeviceLocationPtrOutput `pulumi:"location"`
	// Model of device.
	Model pulumi.StringPtrOutput `pulumi:"model"`
	// Serial number of the device.
	SerialNumber pulumi.StringPtrOutput `pulumi:"serialNumber"`
	// ID of the site.
	SiteId pulumi.StringPtrOutput `pulumi:"siteId"`
	// Key-value tags for the device. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
	// Type of device.
	Type pulumi.StringPtrOutput `pulumi:"type"`
	// Vendor of the device.
	Vendor pulumi.StringPtrOutput `pulumi:"vendor"`
}

Manages a Network Manager Device.

Use this resource to create a device in a global network. If you specify both a site ID and a location, the location of the site is used for visualization in the Network Manager console.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v7/go/aws/networkmanager"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := networkmanager.NewDevice(ctx, "example", &networkmanager.DeviceArgs{
			GlobalNetworkId: pulumi.Any(exampleAwsNetworkmanagerGlobalNetwork.Id),
			SiteId:          pulumi.Any(exampleAwsNetworkmanagerSite.Id),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Using `pulumi import`, import `aws_networkmanager_device` using the device ARN. For example:

```sh $ pulumi import aws:networkmanager/device:Device example arn:aws:networkmanager::123456789012:device/global-network-0d47f6t230mz46dy4/device-07f6fd08867abc123 ```

func GetDevice

func GetDevice(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *DeviceState, opts ...pulumi.ResourceOption) (*Device, error)

GetDevice gets an existing Device 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 NewDevice

func NewDevice(ctx *pulumi.Context,
	name string, args *DeviceArgs, opts ...pulumi.ResourceOption) (*Device, error)

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

func (*Device) ElementType

func (*Device) ElementType() reflect.Type

func (*Device) ToDeviceOutput

func (i *Device) ToDeviceOutput() DeviceOutput

func (*Device) ToDeviceOutputWithContext

func (i *Device) ToDeviceOutputWithContext(ctx context.Context) DeviceOutput

type DeviceArgs

type DeviceArgs struct {
	// AWS location of the device. Documented below.
	AwsLocation DeviceAwsLocationPtrInput
	// Description of the device.
	Description pulumi.StringPtrInput
	// ID of the global network.
	//
	// The following arguments are optional:
	GlobalNetworkId pulumi.StringInput
	// Location of the device. Documented below.
	Location DeviceLocationPtrInput
	// Model of device.
	Model pulumi.StringPtrInput
	// Serial number of the device.
	SerialNumber pulumi.StringPtrInput
	// ID of the site.
	SiteId pulumi.StringPtrInput
	// Key-value tags for the device. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// Type of device.
	Type pulumi.StringPtrInput
	// Vendor of the device.
	Vendor pulumi.StringPtrInput
}

The set of arguments for constructing a Device resource.

func (DeviceArgs) ElementType

func (DeviceArgs) ElementType() reflect.Type

type DeviceArray

type DeviceArray []DeviceInput

func (DeviceArray) ElementType

func (DeviceArray) ElementType() reflect.Type

func (DeviceArray) ToDeviceArrayOutput

func (i DeviceArray) ToDeviceArrayOutput() DeviceArrayOutput

func (DeviceArray) ToDeviceArrayOutputWithContext

func (i DeviceArray) ToDeviceArrayOutputWithContext(ctx context.Context) DeviceArrayOutput

type DeviceArrayInput

type DeviceArrayInput interface {
	pulumi.Input

	ToDeviceArrayOutput() DeviceArrayOutput
	ToDeviceArrayOutputWithContext(context.Context) DeviceArrayOutput
}

DeviceArrayInput is an input type that accepts DeviceArray and DeviceArrayOutput values. You can construct a concrete instance of `DeviceArrayInput` via:

DeviceArray{ DeviceArgs{...} }

type DeviceArrayOutput

type DeviceArrayOutput struct{ *pulumi.OutputState }

func (DeviceArrayOutput) ElementType

func (DeviceArrayOutput) ElementType() reflect.Type

func (DeviceArrayOutput) Index

func (DeviceArrayOutput) ToDeviceArrayOutput

func (o DeviceArrayOutput) ToDeviceArrayOutput() DeviceArrayOutput

func (DeviceArrayOutput) ToDeviceArrayOutputWithContext

func (o DeviceArrayOutput) ToDeviceArrayOutputWithContext(ctx context.Context) DeviceArrayOutput

type DeviceAwsLocation

type DeviceAwsLocation struct {
	// ARN of the subnet that the device is located in.
	SubnetArn *string `pulumi:"subnetArn"`
	// Zone that the device is located in. Specify the ID of an Availability Zone, Local Zone, Wavelength Zone, or an Outpost.
	Zone *string `pulumi:"zone"`
}

type DeviceAwsLocationArgs

type DeviceAwsLocationArgs struct {
	// ARN of the subnet that the device is located in.
	SubnetArn pulumi.StringPtrInput `pulumi:"subnetArn"`
	// Zone that the device is located in. Specify the ID of an Availability Zone, Local Zone, Wavelength Zone, or an Outpost.
	Zone pulumi.StringPtrInput `pulumi:"zone"`
}

func (DeviceAwsLocationArgs) ElementType

func (DeviceAwsLocationArgs) ElementType() reflect.Type

func (DeviceAwsLocationArgs) ToDeviceAwsLocationOutput

func (i DeviceAwsLocationArgs) ToDeviceAwsLocationOutput() DeviceAwsLocationOutput

func (DeviceAwsLocationArgs) ToDeviceAwsLocationOutputWithContext

func (i DeviceAwsLocationArgs) ToDeviceAwsLocationOutputWithContext(ctx context.Context) DeviceAwsLocationOutput

func (DeviceAwsLocationArgs) ToDeviceAwsLocationPtrOutput

func (i DeviceAwsLocationArgs) ToDeviceAwsLocationPtrOutput() DeviceAwsLocationPtrOutput

func (DeviceAwsLocationArgs) ToDeviceAwsLocationPtrOutputWithContext

func (i DeviceAwsLocationArgs) ToDeviceAwsLocationPtrOutputWithContext(ctx context.Context) DeviceAwsLocationPtrOutput

type DeviceAwsLocationInput

type DeviceAwsLocationInput interface {
	pulumi.Input

	ToDeviceAwsLocationOutput() DeviceAwsLocationOutput
	ToDeviceAwsLocationOutputWithContext(context.Context) DeviceAwsLocationOutput
}

DeviceAwsLocationInput is an input type that accepts DeviceAwsLocationArgs and DeviceAwsLocationOutput values. You can construct a concrete instance of `DeviceAwsLocationInput` via:

DeviceAwsLocationArgs{...}

type DeviceAwsLocationOutput

type DeviceAwsLocationOutput struct{ *pulumi.OutputState }

func (DeviceAwsLocationOutput) ElementType

func (DeviceAwsLocationOutput) ElementType() reflect.Type

func (DeviceAwsLocationOutput) SubnetArn

ARN of the subnet that the device is located in.

func (DeviceAwsLocationOutput) ToDeviceAwsLocationOutput

func (o DeviceAwsLocationOutput) ToDeviceAwsLocationOutput() DeviceAwsLocationOutput

func (DeviceAwsLocationOutput) ToDeviceAwsLocationOutputWithContext

func (o DeviceAwsLocationOutput) ToDeviceAwsLocationOutputWithContext(ctx context.Context) DeviceAwsLocationOutput

func (DeviceAwsLocationOutput) ToDeviceAwsLocationPtrOutput

func (o DeviceAwsLocationOutput) ToDeviceAwsLocationPtrOutput() DeviceAwsLocationPtrOutput

func (DeviceAwsLocationOutput) ToDeviceAwsLocationPtrOutputWithContext

func (o DeviceAwsLocationOutput) ToDeviceAwsLocationPtrOutputWithContext(ctx context.Context) DeviceAwsLocationPtrOutput

func (DeviceAwsLocationOutput) Zone

Zone that the device is located in. Specify the ID of an Availability Zone, Local Zone, Wavelength Zone, or an Outpost.

type DeviceAwsLocationPtrInput

type DeviceAwsLocationPtrInput interface {
	pulumi.Input

	ToDeviceAwsLocationPtrOutput() DeviceAwsLocationPtrOutput
	ToDeviceAwsLocationPtrOutputWithContext(context.Context) DeviceAwsLocationPtrOutput
}

DeviceAwsLocationPtrInput is an input type that accepts DeviceAwsLocationArgs, DeviceAwsLocationPtr and DeviceAwsLocationPtrOutput values. You can construct a concrete instance of `DeviceAwsLocationPtrInput` via:

        DeviceAwsLocationArgs{...}

or:

        nil

type DeviceAwsLocationPtrOutput

type DeviceAwsLocationPtrOutput struct{ *pulumi.OutputState }

func (DeviceAwsLocationPtrOutput) Elem

func (DeviceAwsLocationPtrOutput) ElementType

func (DeviceAwsLocationPtrOutput) ElementType() reflect.Type

func (DeviceAwsLocationPtrOutput) SubnetArn

ARN of the subnet that the device is located in.

func (DeviceAwsLocationPtrOutput) ToDeviceAwsLocationPtrOutput

func (o DeviceAwsLocationPtrOutput) ToDeviceAwsLocationPtrOutput() DeviceAwsLocationPtrOutput

func (DeviceAwsLocationPtrOutput) ToDeviceAwsLocationPtrOutputWithContext

func (o DeviceAwsLocationPtrOutput) ToDeviceAwsLocationPtrOutputWithContext(ctx context.Context) DeviceAwsLocationPtrOutput

func (DeviceAwsLocationPtrOutput) Zone

Zone that the device is located in. Specify the ID of an Availability Zone, Local Zone, Wavelength Zone, or an Outpost.

type DeviceInput

type DeviceInput interface {
	pulumi.Input

	ToDeviceOutput() DeviceOutput
	ToDeviceOutputWithContext(ctx context.Context) DeviceOutput
}

type DeviceLocation

type DeviceLocation struct {
	// Physical address.
	Address *string `pulumi:"address"`
	// Latitude.
	Latitude *string `pulumi:"latitude"`
	// Longitude.
	Longitude *string `pulumi:"longitude"`
}

type DeviceLocationArgs

type DeviceLocationArgs struct {
	// Physical address.
	Address pulumi.StringPtrInput `pulumi:"address"`
	// Latitude.
	Latitude pulumi.StringPtrInput `pulumi:"latitude"`
	// Longitude.
	Longitude pulumi.StringPtrInput `pulumi:"longitude"`
}

func (DeviceLocationArgs) ElementType

func (DeviceLocationArgs) ElementType() reflect.Type

func (DeviceLocationArgs) ToDeviceLocationOutput

func (i DeviceLocationArgs) ToDeviceLocationOutput() DeviceLocationOutput

func (DeviceLocationArgs) ToDeviceLocationOutputWithContext

func (i DeviceLocationArgs) ToDeviceLocationOutputWithContext(ctx context.Context) DeviceLocationOutput

func (DeviceLocationArgs) ToDeviceLocationPtrOutput

func (i DeviceLocationArgs) ToDeviceLocationPtrOutput() DeviceLocationPtrOutput

func (DeviceLocationArgs) ToDeviceLocationPtrOutputWithContext

func (i DeviceLocationArgs) ToDeviceLocationPtrOutputWithContext(ctx context.Context) DeviceLocationPtrOutput

type DeviceLocationInput

type DeviceLocationInput interface {
	pulumi.Input

	ToDeviceLocationOutput() DeviceLocationOutput
	ToDeviceLocationOutputWithContext(context.Context) DeviceLocationOutput
}

DeviceLocationInput is an input type that accepts DeviceLocationArgs and DeviceLocationOutput values. You can construct a concrete instance of `DeviceLocationInput` via:

DeviceLocationArgs{...}

type DeviceLocationOutput

type DeviceLocationOutput struct{ *pulumi.OutputState }

func (DeviceLocationOutput) Address

Physical address.

func (DeviceLocationOutput) ElementType

func (DeviceLocationOutput) ElementType() reflect.Type

func (DeviceLocationOutput) Latitude

Latitude.

func (DeviceLocationOutput) Longitude

Longitude.

func (DeviceLocationOutput) ToDeviceLocationOutput

func (o DeviceLocationOutput) ToDeviceLocationOutput() DeviceLocationOutput

func (DeviceLocationOutput) ToDeviceLocationOutputWithContext

func (o DeviceLocationOutput) ToDeviceLocationOutputWithContext(ctx context.Context) DeviceLocationOutput

func (DeviceLocationOutput) ToDeviceLocationPtrOutput

func (o DeviceLocationOutput) ToDeviceLocationPtrOutput() DeviceLocationPtrOutput

func (DeviceLocationOutput) ToDeviceLocationPtrOutputWithContext

func (o DeviceLocationOutput) ToDeviceLocationPtrOutputWithContext(ctx context.Context) DeviceLocationPtrOutput

type DeviceLocationPtrInput

type DeviceLocationPtrInput interface {
	pulumi.Input

	ToDeviceLocationPtrOutput() DeviceLocationPtrOutput
	ToDeviceLocationPtrOutputWithContext(context.Context) DeviceLocationPtrOutput
}

DeviceLocationPtrInput is an input type that accepts DeviceLocationArgs, DeviceLocationPtr and DeviceLocationPtrOutput values. You can construct a concrete instance of `DeviceLocationPtrInput` via:

        DeviceLocationArgs{...}

or:

        nil

type DeviceLocationPtrOutput

type DeviceLocationPtrOutput struct{ *pulumi.OutputState }

func (DeviceLocationPtrOutput) Address

Physical address.

func (DeviceLocationPtrOutput) Elem

func (DeviceLocationPtrOutput) ElementType

func (DeviceLocationPtrOutput) ElementType() reflect.Type

func (DeviceLocationPtrOutput) Latitude

Latitude.

func (DeviceLocationPtrOutput) Longitude

Longitude.

func (DeviceLocationPtrOutput) ToDeviceLocationPtrOutput

func (o DeviceLocationPtrOutput) ToDeviceLocationPtrOutput() DeviceLocationPtrOutput

func (DeviceLocationPtrOutput) ToDeviceLocationPtrOutputWithContext

func (o DeviceLocationPtrOutput) ToDeviceLocationPtrOutputWithContext(ctx context.Context) DeviceLocationPtrOutput

type DeviceMap

type DeviceMap map[string]DeviceInput

func (DeviceMap) ElementType

func (DeviceMap) ElementType() reflect.Type

func (DeviceMap) ToDeviceMapOutput

func (i DeviceMap) ToDeviceMapOutput() DeviceMapOutput

func (DeviceMap) ToDeviceMapOutputWithContext

func (i DeviceMap) ToDeviceMapOutputWithContext(ctx context.Context) DeviceMapOutput

type DeviceMapInput

type DeviceMapInput interface {
	pulumi.Input

	ToDeviceMapOutput() DeviceMapOutput
	ToDeviceMapOutputWithContext(context.Context) DeviceMapOutput
}

DeviceMapInput is an input type that accepts DeviceMap and DeviceMapOutput values. You can construct a concrete instance of `DeviceMapInput` via:

DeviceMap{ "key": DeviceArgs{...} }

type DeviceMapOutput

type DeviceMapOutput struct{ *pulumi.OutputState }

func (DeviceMapOutput) ElementType

func (DeviceMapOutput) ElementType() reflect.Type

func (DeviceMapOutput) MapIndex

func (DeviceMapOutput) ToDeviceMapOutput

func (o DeviceMapOutput) ToDeviceMapOutput() DeviceMapOutput

func (DeviceMapOutput) ToDeviceMapOutputWithContext

func (o DeviceMapOutput) ToDeviceMapOutputWithContext(ctx context.Context) DeviceMapOutput

type DeviceOutput

type DeviceOutput struct{ *pulumi.OutputState }

func (DeviceOutput) Arn

ARN of the device.

func (DeviceOutput) AwsLocation

func (o DeviceOutput) AwsLocation() DeviceAwsLocationPtrOutput

AWS location of the device. Documented below.

func (DeviceOutput) Description

func (o DeviceOutput) Description() pulumi.StringPtrOutput

Description of the device.

func (DeviceOutput) ElementType

func (DeviceOutput) ElementType() reflect.Type

func (DeviceOutput) GlobalNetworkId

func (o DeviceOutput) GlobalNetworkId() pulumi.StringOutput

ID of the global network.

The following arguments are optional:

func (DeviceOutput) Location

Location of the device. Documented below.

func (DeviceOutput) Model

Model of device.

func (DeviceOutput) SerialNumber

func (o DeviceOutput) SerialNumber() pulumi.StringPtrOutput

Serial number of the device.

func (DeviceOutput) SiteId

func (o DeviceOutput) SiteId() pulumi.StringPtrOutput

ID of the site.

func (DeviceOutput) Tags

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

func (DeviceOutput) TagsAll

func (o DeviceOutput) TagsAll() pulumi.StringMapOutput

Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.

func (DeviceOutput) ToDeviceOutput

func (o DeviceOutput) ToDeviceOutput() DeviceOutput

func (DeviceOutput) ToDeviceOutputWithContext

func (o DeviceOutput) ToDeviceOutputWithContext(ctx context.Context) DeviceOutput

func (DeviceOutput) Type

Type of device.

func (DeviceOutput) Vendor

func (o DeviceOutput) Vendor() pulumi.StringPtrOutput

Vendor of the device.

type DeviceState

type DeviceState struct {
	// ARN of the device.
	Arn pulumi.StringPtrInput
	// AWS location of the device. Documented below.
	AwsLocation DeviceAwsLocationPtrInput
	// Description of the device.
	Description pulumi.StringPtrInput
	// ID of the global network.
	//
	// The following arguments are optional:
	GlobalNetworkId pulumi.StringPtrInput
	// Location of the device. Documented below.
	Location DeviceLocationPtrInput
	// Model of device.
	Model pulumi.StringPtrInput
	// Serial number of the device.
	SerialNumber pulumi.StringPtrInput
	// ID of the site.
	SiteId pulumi.StringPtrInput
	// Key-value tags for the device. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	TagsAll pulumi.StringMapInput
	// Type of device.
	Type pulumi.StringPtrInput
	// Vendor of the device.
	Vendor pulumi.StringPtrInput
}

func (DeviceState) ElementType

func (DeviceState) ElementType() reflect.Type

type DxGatewayAttachment

type DxGatewayAttachment struct {
	pulumi.CustomResourceState

	// ARN of the attachment.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// Policy rule number associated with the attachment.
	AttachmentPolicyRuleNumber pulumi.IntOutput `pulumi:"attachmentPolicyRuleNumber"`
	// Type of attachment.
	AttachmentType pulumi.StringOutput `pulumi:"attachmentType"`
	// ARN of the core network for the attachment.
	CoreNetworkArn pulumi.StringOutput `pulumi:"coreNetworkArn"`
	// ID of the Cloud WAN core network to which the Direct Connect gateway attachment should be attached.
	CoreNetworkId pulumi.StringOutput `pulumi:"coreNetworkId"`
	// ARN of the Direct Connect gateway attachment.
	DirectConnectGatewayArn pulumi.StringOutput `pulumi:"directConnectGatewayArn"`
	// One or more core network edge locations to associate with the Direct Connect gateway attachment.
	//
	// The following arguments are optional:
	EdgeLocations pulumi.StringArrayOutput `pulumi:"edgeLocations"`
	// ID of the attachment account owner.
	OwnerAccountId pulumi.StringOutput `pulumi:"ownerAccountId"`
	// Name of the segment attachment.
	SegmentName pulumi.StringOutput `pulumi:"segmentName"`
	// State of the attachment.
	State pulumi.StringOutput `pulumi:"state"`
	// Key-value tags for the attachment. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	TagsAll  pulumi.StringMapOutput               `pulumi:"tagsAll"`
	Timeouts DxGatewayAttachmentTimeoutsPtrOutput `pulumi:"timeouts"`
}

Manages a Network Manager Direct Connect Gateway Attachment.

Use this resource to create and manage a Direct Connect Gateway attachment to a Cloud WAN core network.

## Example Usage

### Basic Usage

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-aws/sdk/v7/go/aws/networkmanager"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := networkmanager.NewDxGatewayAttachment(ctx, "test", &networkmanager.DxGatewayAttachmentArgs{
			CoreNetworkId:           pulumi.Any(testAwsNetworkmanagerCoreNetworkPolicyAttachment.CoreNetworkId),
			DirectConnectGatewayArn: pulumi.Sprintf("arn:aws:directconnect::%v:dx-gateway/%v", current.AccountId, testAwsDxGateway.Id),
			EdgeLocations: pulumi.StringArray{
				currentAwsRegion.Region,
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Using `pulumi import`, import Network Manager DX Gateway Attachment using the `id`. For example:

```sh $ pulumi import aws:networkmanager/dxGatewayAttachment:DxGatewayAttachment example attachment-1a2b3c4d5e6f7g ```

func GetDxGatewayAttachment

func GetDxGatewayAttachment(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *DxGatewayAttachmentState, opts ...pulumi.ResourceOption) (*DxGatewayAttachment, error)

GetDxGatewayAttachment gets an existing DxGatewayAttachment 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 NewDxGatewayAttachment

func NewDxGatewayAttachment(ctx *pulumi.Context,
	name string, args *DxGatewayAttachmentArgs, opts ...pulumi.ResourceOption) (*DxGatewayAttachment, error)

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

func (*DxGatewayAttachment) ElementType

func (*DxGatewayAttachment) ElementType() reflect.Type

func (*DxGatewayAttachment) ToDxGatewayAttachmentOutput

func (i *DxGatewayAttachment) ToDxGatewayAttachmentOutput() DxGatewayAttachmentOutput

func (*DxGatewayAttachment) ToDxGatewayAttachmentOutputWithContext

func (i *DxGatewayAttachment) ToDxGatewayAttachmentOutputWithContext(ctx context.Context) DxGatewayAttachmentOutput

type DxGatewayAttachmentArgs

type DxGatewayAttachmentArgs struct {
	// ID of the Cloud WAN core network to which the Direct Connect gateway attachment should be attached.
	CoreNetworkId pulumi.StringInput
	// ARN of the Direct Connect gateway attachment.
	DirectConnectGatewayArn pulumi.StringInput
	// One or more core network edge locations to associate with the Direct Connect gateway attachment.
	//
	// The following arguments are optional:
	EdgeLocations pulumi.StringArrayInput
	// Key-value tags for the attachment. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags     pulumi.StringMapInput
	Timeouts DxGatewayAttachmentTimeoutsPtrInput
}

The set of arguments for constructing a DxGatewayAttachment resource.

func (DxGatewayAttachmentArgs) ElementType

func (DxGatewayAttachmentArgs) ElementType() reflect.Type

type DxGatewayAttachmentArray

type DxGatewayAttachmentArray []DxGatewayAttachmentInput

func (DxGatewayAttachmentArray) ElementType

func (DxGatewayAttachmentArray) ElementType() reflect.Type

func (DxGatewayAttachmentArray) ToDxGatewayAttachmentArrayOutput

func (i DxGatewayAttachmentArray) ToDxGatewayAttachmentArrayOutput() DxGatewayAttachmentArrayOutput

func (DxGatewayAttachmentArray) ToDxGatewayAttachmentArrayOutputWithContext

func (i DxGatewayAttachmentArray) ToDxGatewayAttachmentArrayOutputWithContext(ctx context.Context) DxGatewayAttachmentArrayOutput

type DxGatewayAttachmentArrayInput

type DxGatewayAttachmentArrayInput interface {
	pulumi.Input

	ToDxGatewayAttachmentArrayOutput() DxGatewayAttachmentArrayOutput
	ToDxGatewayAttachmentArrayOutputWithContext(context.Context) DxGatewayAttachmentArrayOutput
}

DxGatewayAttachmentArrayInput is an input type that accepts DxGatewayAttachmentArray and DxGatewayAttachmentArrayOutput values. You can construct a concrete instance of `DxGatewayAttachmentArrayInput` via:

DxGatewayAttachmentArray{ DxGatewayAttachmentArgs{...} }

type DxGatewayAttachmentArrayOutput

type DxGatewayAttachmentArrayOutput struct{ *pulumi.OutputState }

func (DxGatewayAttachmentArrayOutput) ElementType

func (DxGatewayAttachmentArrayOutput) Index

func (DxGatewayAttachmentArrayOutput) ToDxGatewayAttachmentArrayOutput

func (o DxGatewayAttachmentArrayOutput) ToDxGatewayAttachmentArrayOutput() DxGatewayAttachmentArrayOutput

func (DxGatewayAttachmentArrayOutput) ToDxGatewayAttachmentArrayOutputWithContext

func (o DxGatewayAttachmentArrayOutput) ToDxGatewayAttachmentArrayOutputWithContext(ctx context.Context) DxGatewayAttachmentArrayOutput

type DxGatewayAttachmentInput

type DxGatewayAttachmentInput interface {
	pulumi.Input

	ToDxGatewayAttachmentOutput() DxGatewayAttachmentOutput
	ToDxGatewayAttachmentOutputWithContext(ctx context.Context) DxGatewayAttachmentOutput
}

type DxGatewayAttachmentMap

type DxGatewayAttachmentMap map[string]DxGatewayAttachmentInput

func (DxGatewayAttachmentMap) ElementType

func (DxGatewayAttachmentMap) ElementType() reflect.Type

func (DxGatewayAttachmentMap) ToDxGatewayAttachmentMapOutput

func (i DxGatewayAttachmentMap) ToDxGatewayAttachmentMapOutput() DxGatewayAttachmentMapOutput

func (DxGatewayAttachmentMap) ToDxGatewayAttachmentMapOutputWithContext

func (i DxGatewayAttachmentMap) ToDxGatewayAttachmentMapOutputWithContext(ctx context.Context) DxGatewayAttachmentMapOutput

type DxGatewayAttachmentMapInput

type DxGatewayAttachmentMapInput interface {
	pulumi.Input

	ToDxGatewayAttachmentMapOutput() DxGatewayAttachmentMapOutput
	ToDxGatewayAttachmentMapOutputWithContext(context.Context) DxGatewayAttachmentMapOutput
}

DxGatewayAttachmentMapInput is an input type that accepts DxGatewayAttachmentMap and DxGatewayAttachmentMapOutput values. You can construct a concrete instance of `DxGatewayAttachmentMapInput` via:

DxGatewayAttachmentMap{ "key": DxGatewayAttachmentArgs{...} }

type DxGatewayAttachmentMapOutput

type DxGatewayAttachmentMapOutput struct{ *pulumi.OutputState }

func (DxGatewayAttachmentMapOutput) ElementType

func (DxGatewayAttachmentMapOutput) MapIndex

func (DxGatewayAttachmentMapOutput) ToDxGatewayAttachmentMapOutput

func (o DxGatewayAttachmentMapOutput) ToDxGatewayAttachmentMapOutput() DxGatewayAttachmentMapOutput

func (DxGatewayAttachmentMapOutput) ToDxGatewayAttachmentMapOutputWithContext

func (o DxGatewayAttachmentMapOutput) ToDxGatewayAttachmentMapOutputWithContext(ctx context.Context) DxGatewayAttachmentMapOutput

type DxGatewayAttachmentOutput

type DxGatewayAttachmentOutput struct{ *pulumi.OutputState }

func (DxGatewayAttachmentOutput) Arn

ARN of the attachment.

func (DxGatewayAttachmentOutput) AttachmentPolicyRuleNumber

func (o DxGatewayAttachmentOutput) AttachmentPolicyRuleNumber() pulumi.IntOutput

Policy rule number associated with the attachment.

func (DxGatewayAttachmentOutput) AttachmentType

func (o DxGatewayAttachmentOutput) AttachmentType() pulumi.StringOutput

Type of attachment.

func (DxGatewayAttachmentOutput) CoreNetworkArn

func (o DxGatewayAttachmentOutput) CoreNetworkArn() pulumi.StringOutput

ARN of the core network for the attachment.

func (DxGatewayAttachmentOutput) CoreNetworkId

func (o DxGatewayAttachmentOutput) CoreNetworkId() pulumi.StringOutput

ID of the Cloud WAN core network to which the Direct Connect gateway attachment should be attached.

func (DxGatewayAttachmentOutput) DirectConnectGatewayArn

func (o DxGatewayAttachmentOutput) DirectConnectGatewayArn() pulumi.StringOutput

ARN of the Direct Connect gateway attachment.

func (DxGatewayAttachmentOutput) EdgeLocations

One or more core network edge locations to associate with the Direct Connect gateway attachment.

The following arguments are optional:

func (DxGatewayAttachmentOutput) ElementType

func (DxGatewayAttachmentOutput) ElementType() reflect.Type

func (DxGatewayAttachmentOutput) OwnerAccountId

func (o DxGatewayAttachmentOutput) OwnerAccountId() pulumi.StringOutput

ID of the attachment account owner.

func (DxGatewayAttachmentOutput) SegmentName

Name of the segment attachment.

func (DxGatewayAttachmentOutput) State

State of the attachment.

func (DxGatewayAttachmentOutput) Tags

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

func (DxGatewayAttachmentOutput) TagsAll

Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.

func (DxGatewayAttachmentOutput) Timeouts

func (DxGatewayAttachmentOutput) ToDxGatewayAttachmentOutput

func (o DxGatewayAttachmentOutput) ToDxGatewayAttachmentOutput() DxGatewayAttachmentOutput

func (DxGatewayAttachmentOutput) ToDxGatewayAttachmentOutputWithContext

func (o DxGatewayAttachmentOutput) ToDxGatewayAttachmentOutputWithContext(ctx context.Context) DxGatewayAttachmentOutput

type DxGatewayAttachmentState

type DxGatewayAttachmentState struct {
	// ARN of the attachment.
	Arn pulumi.StringPtrInput
	// Policy rule number associated with the attachment.
	AttachmentPolicyRuleNumber pulumi.IntPtrInput
	// Type of attachment.
	AttachmentType pulumi.StringPtrInput
	// ARN of the core network for the attachment.
	CoreNetworkArn pulumi.StringPtrInput
	// ID of the Cloud WAN core network to which the Direct Connect gateway attachment should be attached.
	CoreNetworkId pulumi.StringPtrInput
	// ARN of the Direct Connect gateway attachment.
	DirectConnectGatewayArn pulumi.StringPtrInput
	// One or more core network edge locations to associate with the Direct Connect gateway attachment.
	//
	// The following arguments are optional:
	EdgeLocations pulumi.StringArrayInput
	// ID of the attachment account owner.
	OwnerAccountId pulumi.StringPtrInput
	// Name of the segment attachment.
	SegmentName pulumi.StringPtrInput
	// State of the attachment.
	State pulumi.StringPtrInput
	// Key-value tags for the attachment. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	TagsAll  pulumi.StringMapInput
	Timeouts DxGatewayAttachmentTimeoutsPtrInput
}

func (DxGatewayAttachmentState) ElementType

func (DxGatewayAttachmentState) ElementType() reflect.Type

type DxGatewayAttachmentTimeouts

type DxGatewayAttachmentTimeouts struct {
	// A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).
	Create *string `pulumi:"create"`
	// A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs.
	Delete *string `pulumi:"delete"`
	// A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).
	Update *string `pulumi:"update"`
}

type DxGatewayAttachmentTimeoutsArgs

type DxGatewayAttachmentTimeoutsArgs struct {
	// A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).
	Create pulumi.StringPtrInput `pulumi:"create"`
	// A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs.
	Delete pulumi.StringPtrInput `pulumi:"delete"`
	// A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).
	Update pulumi.StringPtrInput `pulumi:"update"`
}

func (DxGatewayAttachmentTimeoutsArgs) ElementType

func (DxGatewayAttachmentTimeoutsArgs) ToDxGatewayAttachmentTimeoutsOutput

func (i DxGatewayAttachmentTimeoutsArgs) ToDxGatewayAttachmentTimeoutsOutput() DxGatewayAttachmentTimeoutsOutput

func (DxGatewayAttachmentTimeoutsArgs) ToDxGatewayAttachmentTimeoutsOutputWithContext

func (i DxGatewayAttachmentTimeoutsArgs) ToDxGatewayAttachmentTimeoutsOutputWithContext(ctx context.Context) DxGatewayAttachmentTimeoutsOutput

func (DxGatewayAttachmentTimeoutsArgs) ToDxGatewayAttachmentTimeoutsPtrOutput

func (i DxGatewayAttachmentTimeoutsArgs) ToDxGatewayAttachmentTimeoutsPtrOutput() DxGatewayAttachmentTimeoutsPtrOutput

func (DxGatewayAttachmentTimeoutsArgs) ToDxGatewayAttachmentTimeoutsPtrOutputWithContext

func (i DxGatewayAttachmentTimeoutsArgs) ToDxGatewayAttachmentTimeoutsPtrOutputWithContext(ctx context.Context) DxGatewayAttachmentTimeoutsPtrOutput

type DxGatewayAttachmentTimeoutsInput

type DxGatewayAttachmentTimeoutsInput interface {
	pulumi.Input

	ToDxGatewayAttachmentTimeoutsOutput() DxGatewayAttachmentTimeoutsOutput
	ToDxGatewayAttachmentTimeoutsOutputWithContext(context.Context) DxGatewayAttachmentTimeoutsOutput
}

DxGatewayAttachmentTimeoutsInput is an input type that accepts DxGatewayAttachmentTimeoutsArgs and DxGatewayAttachmentTimeoutsOutput values. You can construct a concrete instance of `DxGatewayAttachmentTimeoutsInput` via:

DxGatewayAttachmentTimeoutsArgs{...}

type DxGatewayAttachmentTimeoutsOutput

type DxGatewayAttachmentTimeoutsOutput struct{ *pulumi.OutputState }

func (DxGatewayAttachmentTimeoutsOutput) Create

A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).

func (DxGatewayAttachmentTimeoutsOutput) Delete

A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs.

func (DxGatewayAttachmentTimeoutsOutput) ElementType

func (DxGatewayAttachmentTimeoutsOutput) ToDxGatewayAttachmentTimeoutsOutput

func (o DxGatewayAttachmentTimeoutsOutput) ToDxGatewayAttachmentTimeoutsOutput() DxGatewayAttachmentTimeoutsOutput

func (DxGatewayAttachmentTimeoutsOutput) ToDxGatewayAttachmentTimeoutsOutputWithContext

func (o DxGatewayAttachmentTimeoutsOutput) ToDxGatewayAttachmentTimeoutsOutputWithContext(ctx context.Context) DxGatewayAttachmentTimeoutsOutput

func (DxGatewayAttachmentTimeoutsOutput) ToDxGatewayAttachmentTimeoutsPtrOutput

func (o DxGatewayAttachmentTimeoutsOutput) ToDxGatewayAttachmentTimeoutsPtrOutput() DxGatewayAttachmentTimeoutsPtrOutput

func (DxGatewayAttachmentTimeoutsOutput) ToDxGatewayAttachmentTimeoutsPtrOutputWithContext

func (o DxGatewayAttachmentTimeoutsOutput) ToDxGatewayAttachmentTimeoutsPtrOutputWithContext(ctx context.Context) DxGatewayAttachmentTimeoutsPtrOutput

func (DxGatewayAttachmentTimeoutsOutput) Update

A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).

type DxGatewayAttachmentTimeoutsPtrInput

type DxGatewayAttachmentTimeoutsPtrInput interface {
	pulumi.Input

	ToDxGatewayAttachmentTimeoutsPtrOutput() DxGatewayAttachmentTimeoutsPtrOutput
	ToDxGatewayAttachmentTimeoutsPtrOutputWithContext(context.Context) DxGatewayAttachmentTimeoutsPtrOutput
}

DxGatewayAttachmentTimeoutsPtrInput is an input type that accepts DxGatewayAttachmentTimeoutsArgs, DxGatewayAttachmentTimeoutsPtr and DxGatewayAttachmentTimeoutsPtrOutput values. You can construct a concrete instance of `DxGatewayAttachmentTimeoutsPtrInput` via:

        DxGatewayAttachmentTimeoutsArgs{...}

or:

        nil

type DxGatewayAttachmentTimeoutsPtrOutput

type DxGatewayAttachmentTimeoutsPtrOutput struct{ *pulumi.OutputState }

func (DxGatewayAttachmentTimeoutsPtrOutput) Create

A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).

func (DxGatewayAttachmentTimeoutsPtrOutput) Delete

A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs.

func (DxGatewayAttachmentTimeoutsPtrOutput) Elem

func (DxGatewayAttachmentTimeoutsPtrOutput) ElementType

func (DxGatewayAttachmentTimeoutsPtrOutput) ToDxGatewayAttachmentTimeoutsPtrOutput

func (o DxGatewayAttachmentTimeoutsPtrOutput) ToDxGatewayAttachmentTimeoutsPtrOutput() DxGatewayAttachmentTimeoutsPtrOutput

func (DxGatewayAttachmentTimeoutsPtrOutput) ToDxGatewayAttachmentTimeoutsPtrOutputWithContext

func (o DxGatewayAttachmentTimeoutsPtrOutput) ToDxGatewayAttachmentTimeoutsPtrOutputWithContext(ctx context.Context) DxGatewayAttachmentTimeoutsPtrOutput

func (DxGatewayAttachmentTimeoutsPtrOutput) Update

A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).

type GetConnectionsArgs

type GetConnectionsArgs struct {
	// ID of the device of the connections to retrieve.
	DeviceId *string `pulumi:"deviceId"`
	// ID of the Global Network of the connections to retrieve.
	GlobalNetworkId string `pulumi:"globalNetworkId"`
	// Restricts the list to the connections with these tags.
	Tags map[string]string `pulumi:"tags"`
}

A collection of arguments for invoking getConnections.

type GetConnectionsOutputArgs

type GetConnectionsOutputArgs struct {
	// ID of the device of the connections to retrieve.
	DeviceId pulumi.StringPtrInput `pulumi:"deviceId"`
	// ID of the Global Network of the connections to retrieve.
	GlobalNetworkId pulumi.StringInput `pulumi:"globalNetworkId"`
	// Restricts the list to the connections with these tags.
	Tags pulumi.StringMapInput `pulumi:"tags"`
}

A collection of arguments for invoking getConnections.

func (GetConnectionsOutputArgs) ElementType

func (GetConnectionsOutputArgs) ElementType() reflect.Type

type GetConnectionsResult

type GetConnectionsResult struct {
	DeviceId        *string `pulumi:"deviceId"`
	GlobalNetworkId string  `pulumi:"globalNetworkId"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// IDs of the connections.
	Ids  []string          `pulumi:"ids"`
	Tags map[string]string `pulumi:"tags"`
}

A collection of values returned by getConnections.

func GetConnections

func GetConnections(ctx *pulumi.Context, args *GetConnectionsArgs, opts ...pulumi.InvokeOption) (*GetConnectionsResult, error)

Provides details about existing Network Manager connections.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v7/go/aws/networkmanager"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := networkmanager.GetConnections(ctx, &networkmanager.GetConnectionsArgs{
			GlobalNetworkId: globalNetworkId,
			Tags: map[string]interface{}{
				"Env": "test",
			},
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetConnectionsResultOutput

type GetConnectionsResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getConnections.

func (GetConnectionsResultOutput) DeviceId

func (GetConnectionsResultOutput) ElementType

func (GetConnectionsResultOutput) ElementType() reflect.Type

func (GetConnectionsResultOutput) GlobalNetworkId

func (o GetConnectionsResultOutput) GlobalNetworkId() pulumi.StringOutput

func (GetConnectionsResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetConnectionsResultOutput) Ids

IDs of the connections.

func (GetConnectionsResultOutput) Tags

func (GetConnectionsResultOutput) ToGetConnectionsResultOutput

func (o GetConnectionsResultOutput) ToGetConnectionsResultOutput() GetConnectionsResultOutput

func (GetConnectionsResultOutput) ToGetConnectionsResultOutputWithContext

func (o GetConnectionsResultOutput) ToGetConnectionsResultOutputWithContext(ctx context.Context) GetConnectionsResultOutput

type GetCoreNetworkPolicyDocumentArgs

type GetCoreNetworkPolicyDocumentArgs struct {
	// In a core network, all attachments use the block argument `attachmentPolicies` section to map an attachment to a segment. Instead of manually associating a segment to each attachment, attachments use tags, and then the tags are used to associate the attachment to the specified segment. Detailed below.
	AttachmentPolicies []GetCoreNetworkPolicyDocumentAttachmentPolicy `pulumi:"attachmentPolicies"`
	// The core network configuration section defines the Regions where a core network should operate. For AWS Regions that are defined in the policy, the core network creates a Core Network Edge where you can connect attachments. After it's created, each Core Network Edge is peered with every other defined Region and is configured with consistent segment and routing across all Regions. Regions cannot be removed until the associated attachments are deleted. Detailed below.
	CoreNetworkConfigurations []GetCoreNetworkPolicyDocumentCoreNetworkConfiguration `pulumi:"coreNetworkConfigurations"`
	// Block argument that defines the service insertion actions you want to include. Detailed below.
	NetworkFunctionGroups []GetCoreNetworkPolicyDocumentNetworkFunctionGroup `pulumi:"networkFunctionGroups"`
	// A block argument, `segmentActions` define how routing works between segments. By default, attachments can only communicate with other attachments in the same segment. Detailed below.
	SegmentActions []GetCoreNetworkPolicyDocumentSegmentAction `pulumi:"segmentActions"`
	// Block argument that defines the different segments in the network. Here you can provide descriptions, change defaults, and provide explicit Regional operational and route filters. The names defined for each segment are used in the `segmentActions` and `attachmentPolicies` section. Each segment is created, and operates, as a completely separated routing domain. By default, attachments can only communicate with other attachments in the same segment. Detailed below.
	Segments []GetCoreNetworkPolicyDocumentSegment `pulumi:"segments"`
	Version  *string                               `pulumi:"version"`
}

A collection of arguments for invoking getCoreNetworkPolicyDocument.

type GetCoreNetworkPolicyDocumentAttachmentPolicy

type GetCoreNetworkPolicyDocumentAttachmentPolicy struct {
	// Action to take when a condition is true. Detailed Below.
	Action GetCoreNetworkPolicyDocumentAttachmentPolicyAction `pulumi:"action"`
	// Valid values include `and` or `or`. This is a mandatory parameter only if you have more than one condition. The `conditionLogic` apply to all of the conditions for a rule, which also means nested conditions of `and` or `or` are not supported. Use `or` if you want to associate the attachment with the segment by either the segment name or attachment tag value, or by the chosen conditions. Use `and` if you want to associate the attachment with the segment by either the segment name or attachment tag value and by the chosen conditions. Detailed Below.
	ConditionLogic *string `pulumi:"conditionLogic"`
	// A block argument. Detailed Below.
	Conditions []GetCoreNetworkPolicyDocumentAttachmentPolicyCondition `pulumi:"conditions"`
	// A user-defined description that further helps identify the rule.
	Description *string `pulumi:"description"`
	// An integer from `1` to `65535` indicating the rule's order number. Rules are processed in order from the lowest numbered rule to the highest. Rules stop processing when a rule is matched. It's important to make sure that you number your rules in the exact order that you want them processed.
	RuleNumber int `pulumi:"ruleNumber"`
}

type GetCoreNetworkPolicyDocumentAttachmentPolicyAction

type GetCoreNetworkPolicyDocumentAttachmentPolicyAction struct {
	// The name of the network function group to attach to the attachment policy.
	AddToNetworkFunctionGroup *string `pulumi:"addToNetworkFunctionGroup"`
	// Defines how a segment is mapped. Values can be `constant` or `tag`. `constant` statically defines the segment to associate the attachment to. `tag` uses the value of a tag to dynamically try to map to a segment.reference_policies_elements_condition_operators.html) to evaluate.
	AssociationMethod *string `pulumi:"associationMethod"`
	// Determines if this mapping should override the segment value for `requireAttachmentAcceptance`. You can only set this to `true`, indicating that this setting applies only to segments that have `requireAttachmentAcceptance` set to `false`. If the segment already has the default `requireAttachmentAcceptance`, you can set this to inherit segment’s acceptance value.
	RequireAcceptance *bool `pulumi:"requireAcceptance"`
	// Name of the `segment` to share as defined in the `segments` section. This is used only when the `associationMethod` is `constant`.
	Segment *string `pulumi:"segment"`
	// Maps the attachment to the value of a known key. This is used with the `associationMethod` is `tag`. For example a `tag` of `stage = “test”`, will map to a segment named `test`. The value must exactly match the name of a segment. This allows you to have many segments, but use only a single rule without having to define multiple nearly identical conditions. This prevents creating many similar conditions that all use the same keys to map to segments.
	TagValueOfKey *string `pulumi:"tagValueOfKey"`
}

type GetCoreNetworkPolicyDocumentAttachmentPolicyActionArgs

type GetCoreNetworkPolicyDocumentAttachmentPolicyActionArgs struct {
	// The name of the network function group to attach to the attachment policy.
	AddToNetworkFunctionGroup pulumi.StringPtrInput `pulumi:"addToNetworkFunctionGroup"`
	// Defines how a segment is mapped. Values can be `constant` or `tag`. `constant` statically defines the segment to associate the attachment to. `tag` uses the value of a tag to dynamically try to map to a segment.reference_policies_elements_condition_operators.html) to evaluate.
	AssociationMethod pulumi.StringPtrInput `pulumi:"associationMethod"`
	// Determines if this mapping should override the segment value for `requireAttachmentAcceptance`. You can only set this to `true`, indicating that this setting applies only to segments that have `requireAttachmentAcceptance` set to `false`. If the segment already has the default `requireAttachmentAcceptance`, you can set this to inherit segment’s acceptance value.
	RequireAcceptance pulumi.BoolPtrInput `pulumi:"requireAcceptance"`
	// Name of the `segment` to share as defined in the `segments` section. This is used only when the `associationMethod` is `constant`.
	Segment pulumi.StringPtrInput `pulumi:"segment"`
	// Maps the attachment to the value of a known key. This is used with the `associationMethod` is `tag`. For example a `tag` of `stage = “test”`, will map to a segment named `test`. The value must exactly match the name of a segment. This allows you to have many segments, but use only a single rule without having to define multiple nearly identical conditions. This prevents creating many similar conditions that all use the same keys to map to segments.
	TagValueOfKey pulumi.StringPtrInput `pulumi:"tagValueOfKey"`
}

func (GetCoreNetworkPolicyDocumentAttachmentPolicyActionArgs) ElementType

func (GetCoreNetworkPolicyDocumentAttachmentPolicyActionArgs) ToGetCoreNetworkPolicyDocumentAttachmentPolicyActionOutput

func (GetCoreNetworkPolicyDocumentAttachmentPolicyActionArgs) ToGetCoreNetworkPolicyDocumentAttachmentPolicyActionOutputWithContext

func (i GetCoreNetworkPolicyDocumentAttachmentPolicyActionArgs) ToGetCoreNetworkPolicyDocumentAttachmentPolicyActionOutputWithContext(ctx context.Context) GetCoreNetworkPolicyDocumentAttachmentPolicyActionOutput

type GetCoreNetworkPolicyDocumentAttachmentPolicyActionInput

type GetCoreNetworkPolicyDocumentAttachmentPolicyActionInput interface {
	pulumi.Input

	ToGetCoreNetworkPolicyDocumentAttachmentPolicyActionOutput() GetCoreNetworkPolicyDocumentAttachmentPolicyActionOutput
	ToGetCoreNetworkPolicyDocumentAttachmentPolicyActionOutputWithContext(context.Context) GetCoreNetworkPolicyDocumentAttachmentPolicyActionOutput
}

GetCoreNetworkPolicyDocumentAttachmentPolicyActionInput is an input type that accepts GetCoreNetworkPolicyDocumentAttachmentPolicyActionArgs and GetCoreNetworkPolicyDocumentAttachmentPolicyActionOutput values. You can construct a concrete instance of `GetCoreNetworkPolicyDocumentAttachmentPolicyActionInput` via:

GetCoreNetworkPolicyDocumentAttachmentPolicyActionArgs{...}

type GetCoreNetworkPolicyDocumentAttachmentPolicyActionOutput

type GetCoreNetworkPolicyDocumentAttachmentPolicyActionOutput struct{ *pulumi.OutputState }

func (GetCoreNetworkPolicyDocumentAttachmentPolicyActionOutput) AddToNetworkFunctionGroup

The name of the network function group to attach to the attachment policy.

func (GetCoreNetworkPolicyDocumentAttachmentPolicyActionOutput) AssociationMethod

Defines how a segment is mapped. Values can be `constant` or `tag`. `constant` statically defines the segment to associate the attachment to. `tag` uses the value of a tag to dynamically try to map to a segment.reference_policies_elements_condition_operators.html) to evaluate.

func (GetCoreNetworkPolicyDocumentAttachmentPolicyActionOutput) ElementType

func (GetCoreNetworkPolicyDocumentAttachmentPolicyActionOutput) RequireAcceptance

Determines if this mapping should override the segment value for `requireAttachmentAcceptance`. You can only set this to `true`, indicating that this setting applies only to segments that have `requireAttachmentAcceptance` set to `false`. If the segment already has the default `requireAttachmentAcceptance`, you can set this to inherit segment’s acceptance value.

func (GetCoreNetworkPolicyDocumentAttachmentPolicyActionOutput) Segment

Name of the `segment` to share as defined in the `segments` section. This is used only when the `associationMethod` is `constant`.

func (GetCoreNetworkPolicyDocumentAttachmentPolicyActionOutput) TagValueOfKey

Maps the attachment to the value of a known key. This is used with the `associationMethod` is `tag`. For example a `tag` of `stage = “test”`, will map to a segment named `test`. The value must exactly match the name of a segment. This allows you to have many segments, but use only a single rule without having to define multiple nearly identical conditions. This prevents creating many similar conditions that all use the same keys to map to segments.

func (GetCoreNetworkPolicyDocumentAttachmentPolicyActionOutput) ToGetCoreNetworkPolicyDocumentAttachmentPolicyActionOutput

func (GetCoreNetworkPolicyDocumentAttachmentPolicyActionOutput) ToGetCoreNetworkPolicyDocumentAttachmentPolicyActionOutputWithContext

func (o GetCoreNetworkPolicyDocumentAttachmentPolicyActionOutput) ToGetCoreNetworkPolicyDocumentAttachmentPolicyActionOutputWithContext(ctx context.Context) GetCoreNetworkPolicyDocumentAttachmentPolicyActionOutput

type GetCoreNetworkPolicyDocumentAttachmentPolicyArgs

type GetCoreNetworkPolicyDocumentAttachmentPolicyArgs struct {
	// Action to take when a condition is true. Detailed Below.
	Action GetCoreNetworkPolicyDocumentAttachmentPolicyActionInput `pulumi:"action"`
	// Valid values include `and` or `or`. This is a mandatory parameter only if you have more than one condition. The `conditionLogic` apply to all of the conditions for a rule, which also means nested conditions of `and` or `or` are not supported. Use `or` if you want to associate the attachment with the segment by either the segment name or attachment tag value, or by the chosen conditions. Use `and` if you want to associate the attachment with the segment by either the segment name or attachment tag value and by the chosen conditions. Detailed Below.
	ConditionLogic pulumi.StringPtrInput `pulumi:"conditionLogic"`
	// A block argument. Detailed Below.
	Conditions GetCoreNetworkPolicyDocumentAttachmentPolicyConditionArrayInput `pulumi:"conditions"`
	// A user-defined description that further helps identify the rule.
	Description pulumi.StringPtrInput `pulumi:"description"`
	// An integer from `1` to `65535` indicating the rule's order number. Rules are processed in order from the lowest numbered rule to the highest. Rules stop processing when a rule is matched. It's important to make sure that you number your rules in the exact order that you want them processed.
	RuleNumber pulumi.IntInput `pulumi:"ruleNumber"`
}

func (GetCoreNetworkPolicyDocumentAttachmentPolicyArgs) ElementType

func (GetCoreNetworkPolicyDocumentAttachmentPolicyArgs) ToGetCoreNetworkPolicyDocumentAttachmentPolicyOutput

func (i GetCoreNetworkPolicyDocumentAttachmentPolicyArgs) ToGetCoreNetworkPolicyDocumentAttachmentPolicyOutput() GetCoreNetworkPolicyDocumentAttachmentPolicyOutput

func (GetCoreNetworkPolicyDocumentAttachmentPolicyArgs) ToGetCoreNetworkPolicyDocumentAttachmentPolicyOutputWithContext

func (i GetCoreNetworkPolicyDocumentAttachmentPolicyArgs) ToGetCoreNetworkPolicyDocumentAttachmentPolicyOutputWithContext(ctx context.Context) GetCoreNetworkPolicyDocumentAttachmentPolicyOutput

type GetCoreNetworkPolicyDocumentAttachmentPolicyArray

type GetCoreNetworkPolicyDocumentAttachmentPolicyArray []GetCoreNetworkPolicyDocumentAttachmentPolicyInput

func (GetCoreNetworkPolicyDocumentAttachmentPolicyArray) ElementType

func (GetCoreNetworkPolicyDocumentAttachmentPolicyArray) ToGetCoreNetworkPolicyDocumentAttachmentPolicyArrayOutput

func (i GetCoreNetworkPolicyDocumentAttachmentPolicyArray) ToGetCoreNetworkPolicyDocumentAttachmentPolicyArrayOutput() GetCoreNetworkPolicyDocumentAttachmentPolicyArrayOutput

func (GetCoreNetworkPolicyDocumentAttachmentPolicyArray) ToGetCoreNetworkPolicyDocumentAttachmentPolicyArrayOutputWithContext

func (i GetCoreNetworkPolicyDocumentAttachmentPolicyArray) ToGetCoreNetworkPolicyDocumentAttachmentPolicyArrayOutputWithContext(ctx context.Context) GetCoreNetworkPolicyDocumentAttachmentPolicyArrayOutput

type GetCoreNetworkPolicyDocumentAttachmentPolicyArrayInput

type GetCoreNetworkPolicyDocumentAttachmentPolicyArrayInput interface {
	pulumi.Input

	ToGetCoreNetworkPolicyDocumentAttachmentPolicyArrayOutput() GetCoreNetworkPolicyDocumentAttachmentPolicyArrayOutput
	ToGetCoreNetworkPolicyDocumentAttachmentPolicyArrayOutputWithContext(context.Context) GetCoreNetworkPolicyDocumentAttachmentPolicyArrayOutput
}

GetCoreNetworkPolicyDocumentAttachmentPolicyArrayInput is an input type that accepts GetCoreNetworkPolicyDocumentAttachmentPolicyArray and GetCoreNetworkPolicyDocumentAttachmentPolicyArrayOutput values. You can construct a concrete instance of `GetCoreNetworkPolicyDocumentAttachmentPolicyArrayInput` via:

GetCoreNetworkPolicyDocumentAttachmentPolicyArray{ GetCoreNetworkPolicyDocumentAttachmentPolicyArgs{...} }

type GetCoreNetworkPolicyDocumentAttachmentPolicyArrayOutput

type GetCoreNetworkPolicyDocumentAttachmentPolicyArrayOutput struct{ *pulumi.OutputState }

func (GetCoreNetworkPolicyDocumentAttachmentPolicyArrayOutput) ElementType

func (GetCoreNetworkPolicyDocumentAttachmentPolicyArrayOutput) Index

func (GetCoreNetworkPolicyDocumentAttachmentPolicyArrayOutput) ToGetCoreNetworkPolicyDocumentAttachmentPolicyArrayOutput

func (GetCoreNetworkPolicyDocumentAttachmentPolicyArrayOutput) ToGetCoreNetworkPolicyDocumentAttachmentPolicyArrayOutputWithContext

func (o GetCoreNetworkPolicyDocumentAttachmentPolicyArrayOutput) ToGetCoreNetworkPolicyDocumentAttachmentPolicyArrayOutputWithContext(ctx context.Context) GetCoreNetworkPolicyDocumentAttachmentPolicyArrayOutput

type GetCoreNetworkPolicyDocumentAttachmentPolicyCondition

type GetCoreNetworkPolicyDocumentAttachmentPolicyCondition struct {
	// string value
	Key *string `pulumi:"key"`
	// Valid values include: `equals`, `not-equals`, `contains`, `begins-with`.
	Operator *string `pulumi:"operator"`
	// Valid values include: `account-id`, `any`, `tag-value`, `tag-exists`, `resource-id`, `region`, `attachment-type`.
	Type string `pulumi:"type"`
	// string value
	Value *string `pulumi:"value"`
}

type GetCoreNetworkPolicyDocumentAttachmentPolicyConditionArgs

type GetCoreNetworkPolicyDocumentAttachmentPolicyConditionArgs struct {
	// string value
	Key pulumi.StringPtrInput `pulumi:"key"`
	// Valid values include: `equals`, `not-equals`, `contains`, `begins-with`.
	Operator pulumi.StringPtrInput `pulumi:"operator"`
	// Valid values include: `account-id`, `any`, `tag-value`, `tag-exists`, `resource-id`, `region`, `attachment-type`.
	Type pulumi.StringInput `pulumi:"type"`
	// string value
	Value pulumi.StringPtrInput `pulumi:"value"`
}

func (GetCoreNetworkPolicyDocumentAttachmentPolicyConditionArgs) ElementType

func (GetCoreNetworkPolicyDocumentAttachmentPolicyConditionArgs) ToGetCoreNetworkPolicyDocumentAttachmentPolicyConditionOutput

func (GetCoreNetworkPolicyDocumentAttachmentPolicyConditionArgs) ToGetCoreNetworkPolicyDocumentAttachmentPolicyConditionOutputWithContext

func (i GetCoreNetworkPolicyDocumentAttachmentPolicyConditionArgs) ToGetCoreNetworkPolicyDocumentAttachmentPolicyConditionOutputWithContext(ctx context.Context) GetCoreNetworkPolicyDocumentAttachmentPolicyConditionOutput

type GetCoreNetworkPolicyDocumentAttachmentPolicyConditionArray

type GetCoreNetworkPolicyDocumentAttachmentPolicyConditionArray []GetCoreNetworkPolicyDocumentAttachmentPolicyConditionInput

func (GetCoreNetworkPolicyDocumentAttachmentPolicyConditionArray) ElementType

func (GetCoreNetworkPolicyDocumentAttachmentPolicyConditionArray) ToGetCoreNetworkPolicyDocumentAttachmentPolicyConditionArrayOutput

func (GetCoreNetworkPolicyDocumentAttachmentPolicyConditionArray) ToGetCoreNetworkPolicyDocumentAttachmentPolicyConditionArrayOutputWithContext

func (i GetCoreNetworkPolicyDocumentAttachmentPolicyConditionArray) ToGetCoreNetworkPolicyDocumentAttachmentPolicyConditionArrayOutputWithContext(ctx context.Context) GetCoreNetworkPolicyDocumentAttachmentPolicyConditionArrayOutput

type GetCoreNetworkPolicyDocumentAttachmentPolicyConditionArrayInput

type GetCoreNetworkPolicyDocumentAttachmentPolicyConditionArrayInput interface {
	pulumi.Input

	ToGetCoreNetworkPolicyDocumentAttachmentPolicyConditionArrayOutput() GetCoreNetworkPolicyDocumentAttachmentPolicyConditionArrayOutput
	ToGetCoreNetworkPolicyDocumentAttachmentPolicyConditionArrayOutputWithContext(context.Context) GetCoreNetworkPolicyDocumentAttachmentPolicyConditionArrayOutput
}

GetCoreNetworkPolicyDocumentAttachmentPolicyConditionArrayInput is an input type that accepts GetCoreNetworkPolicyDocumentAttachmentPolicyConditionArray and GetCoreNetworkPolicyDocumentAttachmentPolicyConditionArrayOutput values. You can construct a concrete instance of `GetCoreNetworkPolicyDocumentAttachmentPolicyConditionArrayInput` via:

GetCoreNetworkPolicyDocumentAttachmentPolicyConditionArray{ GetCoreNetworkPolicyDocumentAttachmentPolicyConditionArgs{...} }

type GetCoreNetworkPolicyDocumentAttachmentPolicyConditionArrayOutput

type GetCoreNetworkPolicyDocumentAttachmentPolicyConditionArrayOutput struct{ *pulumi.OutputState }

func (GetCoreNetworkPolicyDocumentAttachmentPolicyConditionArrayOutput) ElementType

func (GetCoreNetworkPolicyDocumentAttachmentPolicyConditionArrayOutput) Index

func (GetCoreNetworkPolicyDocumentAttachmentPolicyConditionArrayOutput) ToGetCoreNetworkPolicyDocumentAttachmentPolicyConditionArrayOutput

func (GetCoreNetworkPolicyDocumentAttachmentPolicyConditionArrayOutput) ToGetCoreNetworkPolicyDocumentAttachmentPolicyConditionArrayOutputWithContext

func (o GetCoreNetworkPolicyDocumentAttachmentPolicyConditionArrayOutput) ToGetCoreNetworkPolicyDocumentAttachmentPolicyConditionArrayOutputWithContext(ctx context.Context) GetCoreNetworkPolicyDocumentAttachmentPolicyConditionArrayOutput

type GetCoreNetworkPolicyDocumentAttachmentPolicyConditionInput

type GetCoreNetworkPolicyDocumentAttachmentPolicyConditionInput interface {
	pulumi.Input

	ToGetCoreNetworkPolicyDocumentAttachmentPolicyConditionOutput() GetCoreNetworkPolicyDocumentAttachmentPolicyConditionOutput
	ToGetCoreNetworkPolicyDocumentAttachmentPolicyConditionOutputWithContext(context.Context) GetCoreNetworkPolicyDocumentAttachmentPolicyConditionOutput
}

GetCoreNetworkPolicyDocumentAttachmentPolicyConditionInput is an input type that accepts GetCoreNetworkPolicyDocumentAttachmentPolicyConditionArgs and GetCoreNetworkPolicyDocumentAttachmentPolicyConditionOutput values. You can construct a concrete instance of `GetCoreNetworkPolicyDocumentAttachmentPolicyConditionInput` via:

GetCoreNetworkPolicyDocumentAttachmentPolicyConditionArgs{...}

type GetCoreNetworkPolicyDocumentAttachmentPolicyConditionOutput

type GetCoreNetworkPolicyDocumentAttachmentPolicyConditionOutput struct{ *pulumi.OutputState }

func (GetCoreNetworkPolicyDocumentAttachmentPolicyConditionOutput) ElementType

func (GetCoreNetworkPolicyDocumentAttachmentPolicyConditionOutput) Key

string value

func (GetCoreNetworkPolicyDocumentAttachmentPolicyConditionOutput) Operator

Valid values include: `equals`, `not-equals`, `contains`, `begins-with`.

func (GetCoreNetworkPolicyDocumentAttachmentPolicyConditionOutput) ToGetCoreNetworkPolicyDocumentAttachmentPolicyConditionOutput

func (GetCoreNetworkPolicyDocumentAttachmentPolicyConditionOutput) ToGetCoreNetworkPolicyDocumentAttachmentPolicyConditionOutputWithContext

func (o GetCoreNetworkPolicyDocumentAttachmentPolicyConditionOutput) ToGetCoreNetworkPolicyDocumentAttachmentPolicyConditionOutputWithContext(ctx context.Context) GetCoreNetworkPolicyDocumentAttachmentPolicyConditionOutput

func (GetCoreNetworkPolicyDocumentAttachmentPolicyConditionOutput) Type

Valid values include: `account-id`, `any`, `tag-value`, `tag-exists`, `resource-id`, `region`, `attachment-type`.

func (GetCoreNetworkPolicyDocumentAttachmentPolicyConditionOutput) Value

string value

type GetCoreNetworkPolicyDocumentAttachmentPolicyInput

type GetCoreNetworkPolicyDocumentAttachmentPolicyInput interface {
	pulumi.Input

	ToGetCoreNetworkPolicyDocumentAttachmentPolicyOutput() GetCoreNetworkPolicyDocumentAttachmentPolicyOutput
	ToGetCoreNetworkPolicyDocumentAttachmentPolicyOutputWithContext(context.Context) GetCoreNetworkPolicyDocumentAttachmentPolicyOutput
}

GetCoreNetworkPolicyDocumentAttachmentPolicyInput is an input type that accepts GetCoreNetworkPolicyDocumentAttachmentPolicyArgs and GetCoreNetworkPolicyDocumentAttachmentPolicyOutput values. You can construct a concrete instance of `GetCoreNetworkPolicyDocumentAttachmentPolicyInput` via:

GetCoreNetworkPolicyDocumentAttachmentPolicyArgs{...}

type GetCoreNetworkPolicyDocumentAttachmentPolicyOutput

type GetCoreNetworkPolicyDocumentAttachmentPolicyOutput struct{ *pulumi.OutputState }

func (GetCoreNetworkPolicyDocumentAttachmentPolicyOutput) Action

Action to take when a condition is true. Detailed Below.

func (GetCoreNetworkPolicyDocumentAttachmentPolicyOutput) ConditionLogic

Valid values include `and` or `or`. This is a mandatory parameter only if you have more than one condition. The `conditionLogic` apply to all of the conditions for a rule, which also means nested conditions of `and` or `or` are not supported. Use `or` if you want to associate the attachment with the segment by either the segment name or attachment tag value, or by the chosen conditions. Use `and` if you want to associate the attachment with the segment by either the segment name or attachment tag value and by the chosen conditions. Detailed Below.

func (GetCoreNetworkPolicyDocumentAttachmentPolicyOutput) Conditions

A block argument. Detailed Below.

func (GetCoreNetworkPolicyDocumentAttachmentPolicyOutput) Description

A user-defined description that further helps identify the rule.

func (GetCoreNetworkPolicyDocumentAttachmentPolicyOutput) ElementType

func (GetCoreNetworkPolicyDocumentAttachmentPolicyOutput) RuleNumber

An integer from `1` to `65535` indicating the rule's order number. Rules are processed in order from the lowest numbered rule to the highest. Rules stop processing when a rule is matched. It's important to make sure that you number your rules in the exact order that you want them processed.

func (GetCoreNetworkPolicyDocumentAttachmentPolicyOutput) ToGetCoreNetworkPolicyDocumentAttachmentPolicyOutput

func (o GetCoreNetworkPolicyDocumentAttachmentPolicyOutput) ToGetCoreNetworkPolicyDocumentAttachmentPolicyOutput() GetCoreNetworkPolicyDocumentAttachmentPolicyOutput

func (GetCoreNetworkPolicyDocumentAttachmentPolicyOutput) ToGetCoreNetworkPolicyDocumentAttachmentPolicyOutputWithContext

func (o GetCoreNetworkPolicyDocumentAttachmentPolicyOutput) ToGetCoreNetworkPolicyDocumentAttachmentPolicyOutputWithContext(ctx context.Context) GetCoreNetworkPolicyDocumentAttachmentPolicyOutput

type GetCoreNetworkPolicyDocumentCoreNetworkConfiguration

type GetCoreNetworkPolicyDocumentCoreNetworkConfiguration struct {
	// List of strings containing Autonomous System Numbers (ASNs) to assign to Core Network Edges. By default, the core network automatically assigns an ASN for each Core Network Edge but you can optionally define the ASN in the edge-locations for each Region. The ASN uses an array of integer ranges only from `64512` to `65534` and `4200000000` to `4294967294` expressed as a string like `"64512-65534"`. No other ASN ranges can be used.
	AsnRanges []string `pulumi:"asnRanges"`
	// Indicates whether DNS resolution is enabled for the core network. The value can be either `true` or `false`. When set to `true`, DNS resolution is enabled for VPCs attached to the core network, allowing resources in different VPCs to resolve each other's domain names. The default is `true`.
	DnsSupport *bool `pulumi:"dnsSupport"`
	// A block value of AWS Region locations where you're creating Core Network Edges. Detailed below.
	EdgeLocations []GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocation `pulumi:"edgeLocations"`
	// The Classless Inter-Domain Routing (CIDR) block range used to create tunnels for AWS Transit Gateway Connect. The format is standard AWS CIDR range (for example, `10.0.1.0/24`). You can optionally define the inside CIDR in the Core Network Edges section per Region. The minimum is a `/24` for IPv4 or `/64` for IPv6. You can provide multiple `/24` subnets or a larger CIDR range. If you define a larger CIDR range, new Core Network Edges will be automatically assigned `/24` and `/64` subnets from the larger CIDR. an Inside CIDR block is required for attaching Connect attachments to a Core Network Edge.
	InsideCidrBlocks []string `pulumi:"insideCidrBlocks"`
	// — (Optional) Indicates whether security group referencing is enabled for the core network. The value can be either `true` or `false`. When set to `true`, security groups in one VPC can reference security groups in another VPC attached to the core network, enabling more flexible security configurations across your network. The default is `false`.
	SecurityGroupReferencingSupport *bool `pulumi:"securityGroupReferencingSupport"`
	// Indicates whether the core network forwards traffic over multiple equal-cost routes using VPN. The value can be either `true` or `false`. The default is `true`.
	VpnEcmpSupport *bool `pulumi:"vpnEcmpSupport"`
}

type GetCoreNetworkPolicyDocumentCoreNetworkConfigurationArgs

type GetCoreNetworkPolicyDocumentCoreNetworkConfigurationArgs struct {
	// List of strings containing Autonomous System Numbers (ASNs) to assign to Core Network Edges. By default, the core network automatically assigns an ASN for each Core Network Edge but you can optionally define the ASN in the edge-locations for each Region. The ASN uses an array of integer ranges only from `64512` to `65534` and `4200000000` to `4294967294` expressed as a string like `"64512-65534"`. No other ASN ranges can be used.
	AsnRanges pulumi.StringArrayInput `pulumi:"asnRanges"`
	// Indicates whether DNS resolution is enabled for the core network. The value can be either `true` or `false`. When set to `true`, DNS resolution is enabled for VPCs attached to the core network, allowing resources in different VPCs to resolve each other's domain names. The default is `true`.
	DnsSupport pulumi.BoolPtrInput `pulumi:"dnsSupport"`
	// A block value of AWS Region locations where you're creating Core Network Edges. Detailed below.
	EdgeLocations GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationArrayInput `pulumi:"edgeLocations"`
	// The Classless Inter-Domain Routing (CIDR) block range used to create tunnels for AWS Transit Gateway Connect. The format is standard AWS CIDR range (for example, `10.0.1.0/24`). You can optionally define the inside CIDR in the Core Network Edges section per Region. The minimum is a `/24` for IPv4 or `/64` for IPv6. You can provide multiple `/24` subnets or a larger CIDR range. If you define a larger CIDR range, new Core Network Edges will be automatically assigned `/24` and `/64` subnets from the larger CIDR. an Inside CIDR block is required for attaching Connect attachments to a Core Network Edge.
	InsideCidrBlocks pulumi.StringArrayInput `pulumi:"insideCidrBlocks"`
	// — (Optional) Indicates whether security group referencing is enabled for the core network. The value can be either `true` or `false`. When set to `true`, security groups in one VPC can reference security groups in another VPC attached to the core network, enabling more flexible security configurations across your network. The default is `false`.
	SecurityGroupReferencingSupport pulumi.BoolPtrInput `pulumi:"securityGroupReferencingSupport"`
	// Indicates whether the core network forwards traffic over multiple equal-cost routes using VPN. The value can be either `true` or `false`. The default is `true`.
	VpnEcmpSupport pulumi.BoolPtrInput `pulumi:"vpnEcmpSupport"`
}

func (GetCoreNetworkPolicyDocumentCoreNetworkConfigurationArgs) ElementType

func (GetCoreNetworkPolicyDocumentCoreNetworkConfigurationArgs) ToGetCoreNetworkPolicyDocumentCoreNetworkConfigurationOutput

func (GetCoreNetworkPolicyDocumentCoreNetworkConfigurationArgs) ToGetCoreNetworkPolicyDocumentCoreNetworkConfigurationOutputWithContext

func (i GetCoreNetworkPolicyDocumentCoreNetworkConfigurationArgs) ToGetCoreNetworkPolicyDocumentCoreNetworkConfigurationOutputWithContext(ctx context.Context) GetCoreNetworkPolicyDocumentCoreNetworkConfigurationOutput

type GetCoreNetworkPolicyDocumentCoreNetworkConfigurationArray

type GetCoreNetworkPolicyDocumentCoreNetworkConfigurationArray []GetCoreNetworkPolicyDocumentCoreNetworkConfigurationInput

func (GetCoreNetworkPolicyDocumentCoreNetworkConfigurationArray) ElementType

func (GetCoreNetworkPolicyDocumentCoreNetworkConfigurationArray) ToGetCoreNetworkPolicyDocumentCoreNetworkConfigurationArrayOutput

func (i GetCoreNetworkPolicyDocumentCoreNetworkConfigurationArray) ToGetCoreNetworkPolicyDocumentCoreNetworkConfigurationArrayOutput() GetCoreNetworkPolicyDocumentCoreNetworkConfigurationArrayOutput

func (GetCoreNetworkPolicyDocumentCoreNetworkConfigurationArray) ToGetCoreNetworkPolicyDocumentCoreNetworkConfigurationArrayOutputWithContext

func (i GetCoreNetworkPolicyDocumentCoreNetworkConfigurationArray) ToGetCoreNetworkPolicyDocumentCoreNetworkConfigurationArrayOutputWithContext(ctx context.Context) GetCoreNetworkPolicyDocumentCoreNetworkConfigurationArrayOutput

type GetCoreNetworkPolicyDocumentCoreNetworkConfigurationArrayInput

type GetCoreNetworkPolicyDocumentCoreNetworkConfigurationArrayInput interface {
	pulumi.Input

	ToGetCoreNetworkPolicyDocumentCoreNetworkConfigurationArrayOutput() GetCoreNetworkPolicyDocumentCoreNetworkConfigurationArrayOutput
	ToGetCoreNetworkPolicyDocumentCoreNetworkConfigurationArrayOutputWithContext(context.Context) GetCoreNetworkPolicyDocumentCoreNetworkConfigurationArrayOutput
}

GetCoreNetworkPolicyDocumentCoreNetworkConfigurationArrayInput is an input type that accepts GetCoreNetworkPolicyDocumentCoreNetworkConfigurationArray and GetCoreNetworkPolicyDocumentCoreNetworkConfigurationArrayOutput values. You can construct a concrete instance of `GetCoreNetworkPolicyDocumentCoreNetworkConfigurationArrayInput` via:

GetCoreNetworkPolicyDocumentCoreNetworkConfigurationArray{ GetCoreNetworkPolicyDocumentCoreNetworkConfigurationArgs{...} }

type GetCoreNetworkPolicyDocumentCoreNetworkConfigurationArrayOutput

type GetCoreNetworkPolicyDocumentCoreNetworkConfigurationArrayOutput struct{ *pulumi.OutputState }

func (GetCoreNetworkPolicyDocumentCoreNetworkConfigurationArrayOutput) ElementType

func (GetCoreNetworkPolicyDocumentCoreNetworkConfigurationArrayOutput) Index

func (GetCoreNetworkPolicyDocumentCoreNetworkConfigurationArrayOutput) ToGetCoreNetworkPolicyDocumentCoreNetworkConfigurationArrayOutput

func (GetCoreNetworkPolicyDocumentCoreNetworkConfigurationArrayOutput) ToGetCoreNetworkPolicyDocumentCoreNetworkConfigurationArrayOutputWithContext

func (o GetCoreNetworkPolicyDocumentCoreNetworkConfigurationArrayOutput) ToGetCoreNetworkPolicyDocumentCoreNetworkConfigurationArrayOutputWithContext(ctx context.Context) GetCoreNetworkPolicyDocumentCoreNetworkConfigurationArrayOutput

type GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocation

type GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocation struct {
	// ASN of the Core Network Edge in an AWS Region. By default, the ASN will be a single integer automatically assigned from `asnRanges`
	Asn *string `pulumi:"asn"`
	// The local CIDR blocks for this Core Network Edge for AWS Transit Gateway Connect attachments. By default, this CIDR block will be one or more optional IPv4 and IPv6 CIDR prefixes auto-assigned from `insideCidrBlocks`.
	InsideCidrBlocks []string `pulumi:"insideCidrBlocks"`
	Location         string   `pulumi:"location"`
}

type GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationArgs

type GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationArgs struct {
	// ASN of the Core Network Edge in an AWS Region. By default, the ASN will be a single integer automatically assigned from `asnRanges`
	Asn pulumi.StringPtrInput `pulumi:"asn"`
	// The local CIDR blocks for this Core Network Edge for AWS Transit Gateway Connect attachments. By default, this CIDR block will be one or more optional IPv4 and IPv6 CIDR prefixes auto-assigned from `insideCidrBlocks`.
	InsideCidrBlocks pulumi.StringArrayInput `pulumi:"insideCidrBlocks"`
	Location         pulumi.StringInput      `pulumi:"location"`
}

func (GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationArgs) ElementType

func (GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationArgs) ToGetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationOutput

func (GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationArgs) ToGetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationOutputWithContext

func (i GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationArgs) ToGetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationOutputWithContext(ctx context.Context) GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationOutput

type GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationArray

type GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationArray []GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationInput

func (GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationArray) ElementType

func (GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationArray) ToGetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationArrayOutput

func (GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationArray) ToGetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationArrayOutputWithContext

func (i GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationArray) ToGetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationArrayOutputWithContext(ctx context.Context) GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationArrayOutput

type GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationArrayInput

type GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationArrayInput interface {
	pulumi.Input

	ToGetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationArrayOutput() GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationArrayOutput
	ToGetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationArrayOutputWithContext(context.Context) GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationArrayOutput
}

GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationArrayInput is an input type that accepts GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationArray and GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationArrayOutput values. You can construct a concrete instance of `GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationArrayInput` via:

GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationArray{ GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationArgs{...} }

type GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationArrayOutput

type GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationArrayOutput struct{ *pulumi.OutputState }

func (GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationArrayOutput) ElementType

func (GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationArrayOutput) ToGetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationArrayOutput

func (GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationArrayOutput) ToGetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationArrayOutputWithContext

type GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationInput

type GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationInput interface {
	pulumi.Input

	ToGetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationOutput() GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationOutput
	ToGetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationOutputWithContext(context.Context) GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationOutput
}

GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationInput is an input type that accepts GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationArgs and GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationOutput values. You can construct a concrete instance of `GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationInput` via:

GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationArgs{...}

type GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationOutput

type GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationOutput struct{ *pulumi.OutputState }

func (GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationOutput) Asn

ASN of the Core Network Edge in an AWS Region. By default, the ASN will be a single integer automatically assigned from `asnRanges`

func (GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationOutput) ElementType

func (GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationOutput) InsideCidrBlocks

The local CIDR blocks for this Core Network Edge for AWS Transit Gateway Connect attachments. By default, this CIDR block will be one or more optional IPv4 and IPv6 CIDR prefixes auto-assigned from `insideCidrBlocks`.

func (GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationOutput) Location

func (GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationOutput) ToGetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationOutput

func (GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationOutput) ToGetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationOutputWithContext

func (o GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationOutput) ToGetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationOutputWithContext(ctx context.Context) GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationOutput

type GetCoreNetworkPolicyDocumentCoreNetworkConfigurationInput

type GetCoreNetworkPolicyDocumentCoreNetworkConfigurationInput interface {
	pulumi.Input

	ToGetCoreNetworkPolicyDocumentCoreNetworkConfigurationOutput() GetCoreNetworkPolicyDocumentCoreNetworkConfigurationOutput
	ToGetCoreNetworkPolicyDocumentCoreNetworkConfigurationOutputWithContext(context.Context) GetCoreNetworkPolicyDocumentCoreNetworkConfigurationOutput
}

GetCoreNetworkPolicyDocumentCoreNetworkConfigurationInput is an input type that accepts GetCoreNetworkPolicyDocumentCoreNetworkConfigurationArgs and GetCoreNetworkPolicyDocumentCoreNetworkConfigurationOutput values. You can construct a concrete instance of `GetCoreNetworkPolicyDocumentCoreNetworkConfigurationInput` via:

GetCoreNetworkPolicyDocumentCoreNetworkConfigurationArgs{...}

type GetCoreNetworkPolicyDocumentCoreNetworkConfigurationOutput

type GetCoreNetworkPolicyDocumentCoreNetworkConfigurationOutput struct{ *pulumi.OutputState }

func (GetCoreNetworkPolicyDocumentCoreNetworkConfigurationOutput) AsnRanges

List of strings containing Autonomous System Numbers (ASNs) to assign to Core Network Edges. By default, the core network automatically assigns an ASN for each Core Network Edge but you can optionally define the ASN in the edge-locations for each Region. The ASN uses an array of integer ranges only from `64512` to `65534` and `4200000000` to `4294967294` expressed as a string like `"64512-65534"`. No other ASN ranges can be used.

func (GetCoreNetworkPolicyDocumentCoreNetworkConfigurationOutput) DnsSupport

Indicates whether DNS resolution is enabled for the core network. The value can be either `true` or `false`. When set to `true`, DNS resolution is enabled for VPCs attached to the core network, allowing resources in different VPCs to resolve each other's domain names. The default is `true`.

func (GetCoreNetworkPolicyDocumentCoreNetworkConfigurationOutput) EdgeLocations

A block value of AWS Region locations where you're creating Core Network Edges. Detailed below.

func (GetCoreNetworkPolicyDocumentCoreNetworkConfigurationOutput) ElementType

func (GetCoreNetworkPolicyDocumentCoreNetworkConfigurationOutput) InsideCidrBlocks

The Classless Inter-Domain Routing (CIDR) block range used to create tunnels for AWS Transit Gateway Connect. The format is standard AWS CIDR range (for example, `10.0.1.0/24`). You can optionally define the inside CIDR in the Core Network Edges section per Region. The minimum is a `/24` for IPv4 or `/64` for IPv6. You can provide multiple `/24` subnets or a larger CIDR range. If you define a larger CIDR range, new Core Network Edges will be automatically assigned `/24` and `/64` subnets from the larger CIDR. an Inside CIDR block is required for attaching Connect attachments to a Core Network Edge.

func (GetCoreNetworkPolicyDocumentCoreNetworkConfigurationOutput) SecurityGroupReferencingSupport

— (Optional) Indicates whether security group referencing is enabled for the core network. The value can be either `true` or `false`. When set to `true`, security groups in one VPC can reference security groups in another VPC attached to the core network, enabling more flexible security configurations across your network. The default is `false`.

func (GetCoreNetworkPolicyDocumentCoreNetworkConfigurationOutput) ToGetCoreNetworkPolicyDocumentCoreNetworkConfigurationOutput

func (GetCoreNetworkPolicyDocumentCoreNetworkConfigurationOutput) ToGetCoreNetworkPolicyDocumentCoreNetworkConfigurationOutputWithContext

func (o GetCoreNetworkPolicyDocumentCoreNetworkConfigurationOutput) ToGetCoreNetworkPolicyDocumentCoreNetworkConfigurationOutputWithContext(ctx context.Context) GetCoreNetworkPolicyDocumentCoreNetworkConfigurationOutput

func (GetCoreNetworkPolicyDocumentCoreNetworkConfigurationOutput) VpnEcmpSupport

Indicates whether the core network forwards traffic over multiple equal-cost routes using VPN. The value can be either `true` or `false`. The default is `true`.

type GetCoreNetworkPolicyDocumentNetworkFunctionGroup

type GetCoreNetworkPolicyDocumentNetworkFunctionGroup struct {
	// Optional description of the network function group.
	Description *string `pulumi:"description"`
	// This identifies the network function group container.
	Name string `pulumi:"name"`
	// This will be either `true`, that attachment acceptance is required, or `false`, that it is not required.
	RequireAttachmentAcceptance bool `pulumi:"requireAttachmentAcceptance"`
}

type GetCoreNetworkPolicyDocumentNetworkFunctionGroupArgs

type GetCoreNetworkPolicyDocumentNetworkFunctionGroupArgs struct {
	// Optional description of the network function group.
	Description pulumi.StringPtrInput `pulumi:"description"`
	// This identifies the network function group container.
	Name pulumi.StringInput `pulumi:"name"`
	// This will be either `true`, that attachment acceptance is required, or `false`, that it is not required.
	RequireAttachmentAcceptance pulumi.BoolInput `pulumi:"requireAttachmentAcceptance"`
}

func (GetCoreNetworkPolicyDocumentNetworkFunctionGroupArgs) ElementType

func (GetCoreNetworkPolicyDocumentNetworkFunctionGroupArgs) ToGetCoreNetworkPolicyDocumentNetworkFunctionGroupOutput

func (i GetCoreNetworkPolicyDocumentNetworkFunctionGroupArgs) ToGetCoreNetworkPolicyDocumentNetworkFunctionGroupOutput() GetCoreNetworkPolicyDocumentNetworkFunctionGroupOutput

func (GetCoreNetworkPolicyDocumentNetworkFunctionGroupArgs) ToGetCoreNetworkPolicyDocumentNetworkFunctionGroupOutputWithContext

func (i GetCoreNetworkPolicyDocumentNetworkFunctionGroupArgs) ToGetCoreNetworkPolicyDocumentNetworkFunctionGroupOutputWithContext(ctx context.Context) GetCoreNetworkPolicyDocumentNetworkFunctionGroupOutput

type GetCoreNetworkPolicyDocumentNetworkFunctionGroupArray

type GetCoreNetworkPolicyDocumentNetworkFunctionGroupArray []GetCoreNetworkPolicyDocumentNetworkFunctionGroupInput

func (GetCoreNetworkPolicyDocumentNetworkFunctionGroupArray) ElementType

func (GetCoreNetworkPolicyDocumentNetworkFunctionGroupArray) ToGetCoreNetworkPolicyDocumentNetworkFunctionGroupArrayOutput

func (i GetCoreNetworkPolicyDocumentNetworkFunctionGroupArray) ToGetCoreNetworkPolicyDocumentNetworkFunctionGroupArrayOutput() GetCoreNetworkPolicyDocumentNetworkFunctionGroupArrayOutput

func (GetCoreNetworkPolicyDocumentNetworkFunctionGroupArray) ToGetCoreNetworkPolicyDocumentNetworkFunctionGroupArrayOutputWithContext

func (i GetCoreNetworkPolicyDocumentNetworkFunctionGroupArray) ToGetCoreNetworkPolicyDocumentNetworkFunctionGroupArrayOutputWithContext(ctx context.Context) GetCoreNetworkPolicyDocumentNetworkFunctionGroupArrayOutput

type GetCoreNetworkPolicyDocumentNetworkFunctionGroupArrayInput

type GetCoreNetworkPolicyDocumentNetworkFunctionGroupArrayInput interface {
	pulumi.Input

	ToGetCoreNetworkPolicyDocumentNetworkFunctionGroupArrayOutput() GetCoreNetworkPolicyDocumentNetworkFunctionGroupArrayOutput
	ToGetCoreNetworkPolicyDocumentNetworkFunctionGroupArrayOutputWithContext(context.Context) GetCoreNetworkPolicyDocumentNetworkFunctionGroupArrayOutput
}

GetCoreNetworkPolicyDocumentNetworkFunctionGroupArrayInput is an input type that accepts GetCoreNetworkPolicyDocumentNetworkFunctionGroupArray and GetCoreNetworkPolicyDocumentNetworkFunctionGroupArrayOutput values. You can construct a concrete instance of `GetCoreNetworkPolicyDocumentNetworkFunctionGroupArrayInput` via:

GetCoreNetworkPolicyDocumentNetworkFunctionGroupArray{ GetCoreNetworkPolicyDocumentNetworkFunctionGroupArgs{...} }

type GetCoreNetworkPolicyDocumentNetworkFunctionGroupArrayOutput

type GetCoreNetworkPolicyDocumentNetworkFunctionGroupArrayOutput struct{ *pulumi.OutputState }

func (GetCoreNetworkPolicyDocumentNetworkFunctionGroupArrayOutput) ElementType

func (GetCoreNetworkPolicyDocumentNetworkFunctionGroupArrayOutput) Index

func (GetCoreNetworkPolicyDocumentNetworkFunctionGroupArrayOutput) ToGetCoreNetworkPolicyDocumentNetworkFunctionGroupArrayOutput

func (GetCoreNetworkPolicyDocumentNetworkFunctionGroupArrayOutput) ToGetCoreNetworkPolicyDocumentNetworkFunctionGroupArrayOutputWithContext

func (o GetCoreNetworkPolicyDocumentNetworkFunctionGroupArrayOutput) ToGetCoreNetworkPolicyDocumentNetworkFunctionGroupArrayOutputWithContext(ctx context.Context) GetCoreNetworkPolicyDocumentNetworkFunctionGroupArrayOutput

type GetCoreNetworkPolicyDocumentNetworkFunctionGroupInput

type GetCoreNetworkPolicyDocumentNetworkFunctionGroupInput interface {
	pulumi.Input

	ToGetCoreNetworkPolicyDocumentNetworkFunctionGroupOutput() GetCoreNetworkPolicyDocumentNetworkFunctionGroupOutput
	ToGetCoreNetworkPolicyDocumentNetworkFunctionGroupOutputWithContext(context.Context) GetCoreNetworkPolicyDocumentNetworkFunctionGroupOutput
}

GetCoreNetworkPolicyDocumentNetworkFunctionGroupInput is an input type that accepts GetCoreNetworkPolicyDocumentNetworkFunctionGroupArgs and GetCoreNetworkPolicyDocumentNetworkFunctionGroupOutput values. You can construct a concrete instance of `GetCoreNetworkPolicyDocumentNetworkFunctionGroupInput` via:

GetCoreNetworkPolicyDocumentNetworkFunctionGroupArgs{...}

type GetCoreNetworkPolicyDocumentNetworkFunctionGroupOutput

type GetCoreNetworkPolicyDocumentNetworkFunctionGroupOutput struct{ *pulumi.OutputState }

func (GetCoreNetworkPolicyDocumentNetworkFunctionGroupOutput) Description

Optional description of the network function group.

func (GetCoreNetworkPolicyDocumentNetworkFunctionGroupOutput) ElementType

func (GetCoreNetworkPolicyDocumentNetworkFunctionGroupOutput) Name

This identifies the network function group container.

func (GetCoreNetworkPolicyDocumentNetworkFunctionGroupOutput) RequireAttachmentAcceptance

This will be either `true`, that attachment acceptance is required, or `false`, that it is not required.

func (GetCoreNetworkPolicyDocumentNetworkFunctionGroupOutput) ToGetCoreNetworkPolicyDocumentNetworkFunctionGroupOutput

func (GetCoreNetworkPolicyDocumentNetworkFunctionGroupOutput) ToGetCoreNetworkPolicyDocumentNetworkFunctionGroupOutputWithContext

func (o GetCoreNetworkPolicyDocumentNetworkFunctionGroupOutput) ToGetCoreNetworkPolicyDocumentNetworkFunctionGroupOutputWithContext(ctx context.Context) GetCoreNetworkPolicyDocumentNetworkFunctionGroupOutput

type GetCoreNetworkPolicyDocumentOutputArgs

type GetCoreNetworkPolicyDocumentOutputArgs struct {
	// In a core network, all attachments use the block argument `attachmentPolicies` section to map an attachment to a segment. Instead of manually associating a segment to each attachment, attachments use tags, and then the tags are used to associate the attachment to the specified segment. Detailed below.
	AttachmentPolicies GetCoreNetworkPolicyDocumentAttachmentPolicyArrayInput `pulumi:"attachmentPolicies"`
	// The core network configuration section defines the Regions where a core network should operate. For AWS Regions that are defined in the policy, the core network creates a Core Network Edge where you can connect attachments. After it's created, each Core Network Edge is peered with every other defined Region and is configured with consistent segment and routing across all Regions. Regions cannot be removed until the associated attachments are deleted. Detailed below.
	CoreNetworkConfigurations GetCoreNetworkPolicyDocumentCoreNetworkConfigurationArrayInput `pulumi:"coreNetworkConfigurations"`
	// Block argument that defines the service insertion actions you want to include. Detailed below.
	NetworkFunctionGroups GetCoreNetworkPolicyDocumentNetworkFunctionGroupArrayInput `pulumi:"networkFunctionGroups"`
	// A block argument, `segmentActions` define how routing works between segments. By default, attachments can only communicate with other attachments in the same segment. Detailed below.
	SegmentActions GetCoreNetworkPolicyDocumentSegmentActionArrayInput `pulumi:"segmentActions"`
	// Block argument that defines the different segments in the network. Here you can provide descriptions, change defaults, and provide explicit Regional operational and route filters. The names defined for each segment are used in the `segmentActions` and `attachmentPolicies` section. Each segment is created, and operates, as a completely separated routing domain. By default, attachments can only communicate with other attachments in the same segment. Detailed below.
	Segments GetCoreNetworkPolicyDocumentSegmentArrayInput `pulumi:"segments"`
	Version  pulumi.StringPtrInput                         `pulumi:"version"`
}

A collection of arguments for invoking getCoreNetworkPolicyDocument.

func (GetCoreNetworkPolicyDocumentOutputArgs) ElementType

type GetCoreNetworkPolicyDocumentResult

type GetCoreNetworkPolicyDocumentResult struct {
	AttachmentPolicies        []GetCoreNetworkPolicyDocumentAttachmentPolicy         `pulumi:"attachmentPolicies"`
	CoreNetworkConfigurations []GetCoreNetworkPolicyDocumentCoreNetworkConfiguration `pulumi:"coreNetworkConfigurations"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// Standard JSON policy document rendered based on the arguments above.
	Json                  string                                             `pulumi:"json"`
	NetworkFunctionGroups []GetCoreNetworkPolicyDocumentNetworkFunctionGroup `pulumi:"networkFunctionGroups"`
	SegmentActions        []GetCoreNetworkPolicyDocumentSegmentAction        `pulumi:"segmentActions"`
	Segments              []GetCoreNetworkPolicyDocumentSegment              `pulumi:"segments"`
	Version               *string                                            `pulumi:"version"`
}

A collection of values returned by getCoreNetworkPolicyDocument.

func GetCoreNetworkPolicyDocument

func GetCoreNetworkPolicyDocument(ctx *pulumi.Context, args *GetCoreNetworkPolicyDocumentArgs, opts ...pulumi.InvokeOption) (*GetCoreNetworkPolicyDocumentResult, error)

Generates a Core Network policy document in JSON format for use with resources that expect core network policy documents such as `awsccNetworkmanagerCoreNetwork`. It follows the API definition from the [core-network-policy documentation](https://docs.aws.amazon.com/vpc/latest/cloudwan/cloudwan-policies-json.html).

Using this data source to generate policy documents is *optional*. It is also valid to use literal JSON strings in your configuration or to use the `file` interpolation function to read a raw JSON policy document from a file.

## Example Usage

### Basic Example

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v7/go/aws/networkmanager"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := networkmanager.GetCoreNetworkPolicyDocument(ctx, &networkmanager.GetCoreNetworkPolicyDocumentArgs{
			CoreNetworkConfigurations: []networkmanager.GetCoreNetworkPolicyDocumentCoreNetworkConfiguration{
				{
					VpnEcmpSupport: pulumi.BoolRef(false),
					AsnRanges: []string{
						"64512-64555",
					},
					EdgeLocations: []networkmanager.GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocation{
						{
							Location: "us-east-1",
							Asn:      pulumi.StringRef("64512"),
						},
						{
							Location: "eu-central-1",
							Asn:      pulumi.StringRef("64513"),
						},
					},
				},
			},
			Segments: []networkmanager.GetCoreNetworkPolicyDocumentSegment{
				{
					Name:                        "shared",
					Description:                 pulumi.StringRef("Segment for shared services"),
					RequireAttachmentAcceptance: pulumi.BoolRef(true),
				},
				{
					Name:                        "prod",
					Description:                 pulumi.StringRef("Segment for prod services"),
					RequireAttachmentAcceptance: pulumi.BoolRef(true),
				},
			},
			SegmentActions: []networkmanager.GetCoreNetworkPolicyDocumentSegmentAction{
				{
					Action:  "share",
					Mode:    pulumi.StringRef("attachment-route"),
					Segment: "shared",
					ShareWiths: []string{
						"*",
					},
				},
			},
			AttachmentPolicies: []networkmanager.GetCoreNetworkPolicyDocumentAttachmentPolicy{
				{
					RuleNumber:     100,
					ConditionLogic: pulumi.StringRef("or"),
					Conditions: []networkmanager.GetCoreNetworkPolicyDocumentAttachmentPolicyCondition{
						{
							Type:     "tag-value",
							Operator: pulumi.StringRef("equals"),
							Key:      pulumi.StringRef("segment"),
							Value:    pulumi.StringRef("shared"),
						},
					},
					Action: {
						AssociationMethod: pulumi.StringRef("constant"),
						Segment:           pulumi.StringRef("shared"),
					},
				},
				{
					RuleNumber:     200,
					ConditionLogic: pulumi.StringRef("or"),
					Conditions: []networkmanager.GetCoreNetworkPolicyDocumentAttachmentPolicyCondition{
						{
							Type:     "tag-value",
							Operator: pulumi.StringRef("equals"),
							Key:      pulumi.StringRef("segment"),
							Value:    pulumi.StringRef("prod"),
						},
					},
					Action: {
						AssociationMethod: pulumi.StringRef("constant"),
						Segment:           pulumi.StringRef("prod"),
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

`data.aws_networkmanager_core_network_policy_document.test.json` will evaluate to:

type GetCoreNetworkPolicyDocumentResultOutput

type GetCoreNetworkPolicyDocumentResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getCoreNetworkPolicyDocument.

func (GetCoreNetworkPolicyDocumentResultOutput) AttachmentPolicies

func (GetCoreNetworkPolicyDocumentResultOutput) CoreNetworkConfigurations

func (GetCoreNetworkPolicyDocumentResultOutput) ElementType

func (GetCoreNetworkPolicyDocumentResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetCoreNetworkPolicyDocumentResultOutput) Json

Standard JSON policy document rendered based on the arguments above.

func (GetCoreNetworkPolicyDocumentResultOutput) NetworkFunctionGroups

func (GetCoreNetworkPolicyDocumentResultOutput) SegmentActions

func (GetCoreNetworkPolicyDocumentResultOutput) Segments

func (GetCoreNetworkPolicyDocumentResultOutput) ToGetCoreNetworkPolicyDocumentResultOutput

func (o GetCoreNetworkPolicyDocumentResultOutput) ToGetCoreNetworkPolicyDocumentResultOutput() GetCoreNetworkPolicyDocumentResultOutput

func (GetCoreNetworkPolicyDocumentResultOutput) ToGetCoreNetworkPolicyDocumentResultOutputWithContext

func (o GetCoreNetworkPolicyDocumentResultOutput) ToGetCoreNetworkPolicyDocumentResultOutputWithContext(ctx context.Context) GetCoreNetworkPolicyDocumentResultOutput

func (GetCoreNetworkPolicyDocumentResultOutput) Version

type GetCoreNetworkPolicyDocumentSegment

type GetCoreNetworkPolicyDocumentSegment struct {
	// List of strings of segment names that explicitly allows only routes from the segments that are listed in the array. Use the `allowFilter` setting if a segment has a well-defined group of other segments that connectivity should be restricted to. It is applied after routes have been shared in `segmentActions`. If a segment is listed in `allowFilter`, attachments between the two segments will have routes if they are also shared in the segment-actions area. For example, you might have a segment named "video-producer" that should only ever share routes with a "video-distributor" segment, no matter how many other share statements are created.
	AllowFilters []string `pulumi:"allowFilters"`
	// An array of segments that disallows routes from the segments listed in the array. It is applied only after routes have been shared in `segmentActions`. If a segment is listed in the `denyFilter`, attachments between the two segments will never have routes shared across them. For example, you might have a "financial" payment segment that should never share routes with a "development" segment, regardless of how many other share statements are created. Adding the payments segment to the deny-filter parameter prevents any shared routes from being created with other segments.
	DenyFilters []string `pulumi:"denyFilters"`
	// A user-defined string describing the segment.
	Description *string `pulumi:"description"`
	// A list of strings of AWS Region names. Allows you to define a more restrictive set of Regions for a segment. The edge location must be a subset of the locations that are defined for `edgeLocations` in the `coreNetworkConfiguration`.
	EdgeLocations []string `pulumi:"edgeLocations"`
	// This Boolean setting determines whether attachments on the same segment can communicate with each other. If set to `true`, the only routes available will be either shared routes through the share actions, which are attachments in other segments, or static routes. The default value is `false`. For example, you might have a segment dedicated to "development" that should never allow VPCs to talk to each other, even if they’re on the same segment. In this example, you would keep the default parameter of `false`.
	IsolateAttachments *bool `pulumi:"isolateAttachments"`
	// Unique name for a segment. The name is a string used in other parts of the policy document, as well as in the console for metrics and other reference points. Valid characters are a–z, and 0–9.
	Name string `pulumi:"name"`
	// This Boolean setting determines whether attachment requests are automatically approved or require acceptance. The default is `true`, indicating that attachment requests require acceptance. For example, you might use this setting to allow a "sandbox" segment to allow any attachment request so that a core network or attachment administrator does not need to review and approve attachment requests. In this example, `requireAttachmentAcceptance` is set to `false`.
	RequireAttachmentAcceptance *bool `pulumi:"requireAttachmentAcceptance"`
}

type GetCoreNetworkPolicyDocumentSegmentAction

type GetCoreNetworkPolicyDocumentSegmentAction struct {
	// Action to take for the chosen segment. Valid values: `create-route`, `share`, `send-via` and `send-to`.
	Action string `pulumi:"action"`
	// A user-defined string describing the segment action.
	Description *string `pulumi:"description"`
	// List of strings containing CIDRs. You can define the IPv4 and IPv6 CIDR notation for each AWS Region. For example, `10.1.0.0/16` or `2001:db8::/56`. This is an array of CIDR notation strings.
	DestinationCidrBlocks []string `pulumi:"destinationCidrBlocks"`
	// A list of strings. Valid values include `["blackhole"]` or a list of attachment ids.
	Destinations []string `pulumi:"destinations"`
	// String. When `action` is `share`, a `mode` value of `attachment-route` places the attachment and return routes in each of the `shareWith` segments. When `action` is `send-via`, indicates the mode used for packets. Valid values: `attachment-route`, `single-hop`, `dual-hop`.
	Mode *string `pulumi:"mode"`
	// Name of the segment.
	Segment string `pulumi:"segment"`
	// A set subtraction of segments to not share with.
	ShareWithExcepts []string `pulumi:"shareWithExcepts"`
	// A list of strings to share with. Must be a substring is all segments. Valid values include: `["*"]` or `["<segment-names>"]`.
	ShareWiths []string `pulumi:"shareWiths"`
	// The network function groups and any edge overrides associated with the action.
	Via *GetCoreNetworkPolicyDocumentSegmentActionVia `pulumi:"via"`
	// The destination segments for the `send-via` or `send-to` `action`.
	WhenSentTo *GetCoreNetworkPolicyDocumentSegmentActionWhenSentTo `pulumi:"whenSentTo"`
}

type GetCoreNetworkPolicyDocumentSegmentActionArgs

type GetCoreNetworkPolicyDocumentSegmentActionArgs struct {
	// Action to take for the chosen segment. Valid values: `create-route`, `share`, `send-via` and `send-to`.
	Action pulumi.StringInput `pulumi:"action"`
	// A user-defined string describing the segment action.
	Description pulumi.StringPtrInput `pulumi:"description"`
	// List of strings containing CIDRs. You can define the IPv4 and IPv6 CIDR notation for each AWS Region. For example, `10.1.0.0/16` or `2001:db8::/56`. This is an array of CIDR notation strings.
	DestinationCidrBlocks pulumi.StringArrayInput `pulumi:"destinationCidrBlocks"`
	// A list of strings. Valid values include `["blackhole"]` or a list of attachment ids.
	Destinations pulumi.StringArrayInput `pulumi:"destinations"`
	// String. When `action` is `share`, a `mode` value of `attachment-route` places the attachment and return routes in each of the `shareWith` segments. When `action` is `send-via`, indicates the mode used for packets. Valid values: `attachment-route`, `single-hop`, `dual-hop`.
	Mode pulumi.StringPtrInput `pulumi:"mode"`
	// Name of the segment.
	Segment pulumi.StringInput `pulumi:"segment"`
	// A set subtraction of segments to not share with.
	ShareWithExcepts pulumi.StringArrayInput `pulumi:"shareWithExcepts"`
	// A list of strings to share with. Must be a substring is all segments. Valid values include: `["*"]` or `["<segment-names>"]`.
	ShareWiths pulumi.StringArrayInput `pulumi:"shareWiths"`
	// The network function groups and any edge overrides associated with the action.
	Via GetCoreNetworkPolicyDocumentSegmentActionViaPtrInput `pulumi:"via"`
	// The destination segments for the `send-via` or `send-to` `action`.
	WhenSentTo GetCoreNetworkPolicyDocumentSegmentActionWhenSentToPtrInput `pulumi:"whenSentTo"`
}

func (GetCoreNetworkPolicyDocumentSegmentActionArgs) ElementType

func (GetCoreNetworkPolicyDocumentSegmentActionArgs) ToGetCoreNetworkPolicyDocumentSegmentActionOutput

func (i GetCoreNetworkPolicyDocumentSegmentActionArgs) ToGetCoreNetworkPolicyDocumentSegmentActionOutput() GetCoreNetworkPolicyDocumentSegmentActionOutput

func (GetCoreNetworkPolicyDocumentSegmentActionArgs) ToGetCoreNetworkPolicyDocumentSegmentActionOutputWithContext

func (i GetCoreNetworkPolicyDocumentSegmentActionArgs) ToGetCoreNetworkPolicyDocumentSegmentActionOutputWithContext(ctx context.Context) GetCoreNetworkPolicyDocumentSegmentActionOutput

type GetCoreNetworkPolicyDocumentSegmentActionArray

type GetCoreNetworkPolicyDocumentSegmentActionArray []GetCoreNetworkPolicyDocumentSegmentActionInput

func (GetCoreNetworkPolicyDocumentSegmentActionArray) ElementType

func (GetCoreNetworkPolicyDocumentSegmentActionArray) ToGetCoreNetworkPolicyDocumentSegmentActionArrayOutput

func (i GetCoreNetworkPolicyDocumentSegmentActionArray) ToGetCoreNetworkPolicyDocumentSegmentActionArrayOutput() GetCoreNetworkPolicyDocumentSegmentActionArrayOutput

func (GetCoreNetworkPolicyDocumentSegmentActionArray) ToGetCoreNetworkPolicyDocumentSegmentActionArrayOutputWithContext

func (i GetCoreNetworkPolicyDocumentSegmentActionArray) ToGetCoreNetworkPolicyDocumentSegmentActionArrayOutputWithContext(ctx context.Context) GetCoreNetworkPolicyDocumentSegmentActionArrayOutput

type GetCoreNetworkPolicyDocumentSegmentActionArrayInput

type GetCoreNetworkPolicyDocumentSegmentActionArrayInput interface {
	pulumi.Input

	ToGetCoreNetworkPolicyDocumentSegmentActionArrayOutput() GetCoreNetworkPolicyDocumentSegmentActionArrayOutput
	ToGetCoreNetworkPolicyDocumentSegmentActionArrayOutputWithContext(context.Context) GetCoreNetworkPolicyDocumentSegmentActionArrayOutput
}

GetCoreNetworkPolicyDocumentSegmentActionArrayInput is an input type that accepts GetCoreNetworkPolicyDocumentSegmentActionArray and GetCoreNetworkPolicyDocumentSegmentActionArrayOutput values. You can construct a concrete instance of `GetCoreNetworkPolicyDocumentSegmentActionArrayInput` via:

GetCoreNetworkPolicyDocumentSegmentActionArray{ GetCoreNetworkPolicyDocumentSegmentActionArgs{...} }

type GetCoreNetworkPolicyDocumentSegmentActionArrayOutput

type GetCoreNetworkPolicyDocumentSegmentActionArrayOutput struct{ *pulumi.OutputState }

func (GetCoreNetworkPolicyDocumentSegmentActionArrayOutput) ElementType

func (GetCoreNetworkPolicyDocumentSegmentActionArrayOutput) Index

func (GetCoreNetworkPolicyDocumentSegmentActionArrayOutput) ToGetCoreNetworkPolicyDocumentSegmentActionArrayOutput

func (GetCoreNetworkPolicyDocumentSegmentActionArrayOutput) ToGetCoreNetworkPolicyDocumentSegmentActionArrayOutputWithContext

func (o GetCoreNetworkPolicyDocumentSegmentActionArrayOutput) ToGetCoreNetworkPolicyDocumentSegmentActionArrayOutputWithContext(ctx context.Context) GetCoreNetworkPolicyDocumentSegmentActionArrayOutput

type GetCoreNetworkPolicyDocumentSegmentActionInput

type GetCoreNetworkPolicyDocumentSegmentActionInput interface {
	pulumi.Input

	ToGetCoreNetworkPolicyDocumentSegmentActionOutput() GetCoreNetworkPolicyDocumentSegmentActionOutput
	ToGetCoreNetworkPolicyDocumentSegmentActionOutputWithContext(context.Context) GetCoreNetworkPolicyDocumentSegmentActionOutput
}

GetCoreNetworkPolicyDocumentSegmentActionInput is an input type that accepts GetCoreNetworkPolicyDocumentSegmentActionArgs and GetCoreNetworkPolicyDocumentSegmentActionOutput values. You can construct a concrete instance of `GetCoreNetworkPolicyDocumentSegmentActionInput` via:

GetCoreNetworkPolicyDocumentSegmentActionArgs{...}

type GetCoreNetworkPolicyDocumentSegmentActionOutput

type GetCoreNetworkPolicyDocumentSegmentActionOutput struct{ *pulumi.OutputState }

func (GetCoreNetworkPolicyDocumentSegmentActionOutput) Action

Action to take for the chosen segment. Valid values: `create-route`, `share`, `send-via` and `send-to`.

func (GetCoreNetworkPolicyDocumentSegmentActionOutput) Description

A user-defined string describing the segment action.

func (GetCoreNetworkPolicyDocumentSegmentActionOutput) DestinationCidrBlocks

List of strings containing CIDRs. You can define the IPv4 and IPv6 CIDR notation for each AWS Region. For example, `10.1.0.0/16` or `2001:db8::/56`. This is an array of CIDR notation strings.

func (GetCoreNetworkPolicyDocumentSegmentActionOutput) Destinations

A list of strings. Valid values include `["blackhole"]` or a list of attachment ids.

func (GetCoreNetworkPolicyDocumentSegmentActionOutput) ElementType

func (GetCoreNetworkPolicyDocumentSegmentActionOutput) Mode

String. When `action` is `share`, a `mode` value of `attachment-route` places the attachment and return routes in each of the `shareWith` segments. When `action` is `send-via`, indicates the mode used for packets. Valid values: `attachment-route`, `single-hop`, `dual-hop`.

func (GetCoreNetworkPolicyDocumentSegmentActionOutput) Segment

Name of the segment.

func (GetCoreNetworkPolicyDocumentSegmentActionOutput) ShareWithExcepts

A set subtraction of segments to not share with.

func (GetCoreNetworkPolicyDocumentSegmentActionOutput) ShareWiths

A list of strings to share with. Must be a substring is all segments. Valid values include: `["*"]` or `["<segment-names>"]`.

func (GetCoreNetworkPolicyDocumentSegmentActionOutput) ToGetCoreNetworkPolicyDocumentSegmentActionOutput

func (o GetCoreNetworkPolicyDocumentSegmentActionOutput) ToGetCoreNetworkPolicyDocumentSegmentActionOutput() GetCoreNetworkPolicyDocumentSegmentActionOutput

func (GetCoreNetworkPolicyDocumentSegmentActionOutput) ToGetCoreNetworkPolicyDocumentSegmentActionOutputWithContext

func (o GetCoreNetworkPolicyDocumentSegmentActionOutput) ToGetCoreNetworkPolicyDocumentSegmentActionOutputWithContext(ctx context.Context) GetCoreNetworkPolicyDocumentSegmentActionOutput

func (GetCoreNetworkPolicyDocumentSegmentActionOutput) Via

The network function groups and any edge overrides associated with the action.

func (GetCoreNetworkPolicyDocumentSegmentActionOutput) WhenSentTo

The destination segments for the `send-via` or `send-to` `action`.

type GetCoreNetworkPolicyDocumentSegmentActionVia

type GetCoreNetworkPolicyDocumentSegmentActionVia struct {
	// A list of strings. The network function group to use for the service insertion action.
	NetworkFunctionGroups []string `pulumi:"networkFunctionGroups"`
	// Any edge overrides and the preferred edge to use.
	WithEdgeOverrides []GetCoreNetworkPolicyDocumentSegmentActionViaWithEdgeOverride `pulumi:"withEdgeOverrides"`
}

type GetCoreNetworkPolicyDocumentSegmentActionViaArgs

type GetCoreNetworkPolicyDocumentSegmentActionViaArgs struct {
	// A list of strings. The network function group to use for the service insertion action.
	NetworkFunctionGroups pulumi.StringArrayInput `pulumi:"networkFunctionGroups"`
	// Any edge overrides and the preferred edge to use.
	WithEdgeOverrides GetCoreNetworkPolicyDocumentSegmentActionViaWithEdgeOverrideArrayInput `pulumi:"withEdgeOverrides"`
}

func (GetCoreNetworkPolicyDocumentSegmentActionViaArgs) ElementType

func (GetCoreNetworkPolicyDocumentSegmentActionViaArgs) ToGetCoreNetworkPolicyDocumentSegmentActionViaOutput

func (i GetCoreNetworkPolicyDocumentSegmentActionViaArgs) ToGetCoreNetworkPolicyDocumentSegmentActionViaOutput() GetCoreNetworkPolicyDocumentSegmentActionViaOutput

func (GetCoreNetworkPolicyDocumentSegmentActionViaArgs) ToGetCoreNetworkPolicyDocumentSegmentActionViaOutputWithContext

func (i GetCoreNetworkPolicyDocumentSegmentActionViaArgs) ToGetCoreNetworkPolicyDocumentSegmentActionViaOutputWithContext(ctx context.Context) GetCoreNetworkPolicyDocumentSegmentActionViaOutput

func (GetCoreNetworkPolicyDocumentSegmentActionViaArgs) ToGetCoreNetworkPolicyDocumentSegmentActionViaPtrOutput

func (i GetCoreNetworkPolicyDocumentSegmentActionViaArgs) ToGetCoreNetworkPolicyDocumentSegmentActionViaPtrOutput() GetCoreNetworkPolicyDocumentSegmentActionViaPtrOutput

func (GetCoreNetworkPolicyDocumentSegmentActionViaArgs) ToGetCoreNetworkPolicyDocumentSegmentActionViaPtrOutputWithContext

func (i GetCoreNetworkPolicyDocumentSegmentActionViaArgs) ToGetCoreNetworkPolicyDocumentSegmentActionViaPtrOutputWithContext(ctx context.Context) GetCoreNetworkPolicyDocumentSegmentActionViaPtrOutput

type GetCoreNetworkPolicyDocumentSegmentActionViaInput

type GetCoreNetworkPolicyDocumentSegmentActionViaInput interface {
	pulumi.Input

	ToGetCoreNetworkPolicyDocumentSegmentActionViaOutput() GetCoreNetworkPolicyDocumentSegmentActionViaOutput
	ToGetCoreNetworkPolicyDocumentSegmentActionViaOutputWithContext(context.Context) GetCoreNetworkPolicyDocumentSegmentActionViaOutput
}

GetCoreNetworkPolicyDocumentSegmentActionViaInput is an input type that accepts GetCoreNetworkPolicyDocumentSegmentActionViaArgs and GetCoreNetworkPolicyDocumentSegmentActionViaOutput values. You can construct a concrete instance of `GetCoreNetworkPolicyDocumentSegmentActionViaInput` via:

GetCoreNetworkPolicyDocumentSegmentActionViaArgs{...}

type GetCoreNetworkPolicyDocumentSegmentActionViaOutput

type GetCoreNetworkPolicyDocumentSegmentActionViaOutput struct{ *pulumi.OutputState }

func (GetCoreNetworkPolicyDocumentSegmentActionViaOutput) ElementType

func (GetCoreNetworkPolicyDocumentSegmentActionViaOutput) NetworkFunctionGroups

A list of strings. The network function group to use for the service insertion action.

func (GetCoreNetworkPolicyDocumentSegmentActionViaOutput) ToGetCoreNetworkPolicyDocumentSegmentActionViaOutput

func (o GetCoreNetworkPolicyDocumentSegmentActionViaOutput) ToGetCoreNetworkPolicyDocumentSegmentActionViaOutput() GetCoreNetworkPolicyDocumentSegmentActionViaOutput

func (GetCoreNetworkPolicyDocumentSegmentActionViaOutput) ToGetCoreNetworkPolicyDocumentSegmentActionViaOutputWithContext

func (o GetCoreNetworkPolicyDocumentSegmentActionViaOutput) ToGetCoreNetworkPolicyDocumentSegmentActionViaOutputWithContext(ctx context.Context) GetCoreNetworkPolicyDocumentSegmentActionViaOutput

func (GetCoreNetworkPolicyDocumentSegmentActionViaOutput) ToGetCoreNetworkPolicyDocumentSegmentActionViaPtrOutput

func (o GetCoreNetworkPolicyDocumentSegmentActionViaOutput) ToGetCoreNetworkPolicyDocumentSegmentActionViaPtrOutput() GetCoreNetworkPolicyDocumentSegmentActionViaPtrOutput

func (GetCoreNetworkPolicyDocumentSegmentActionViaOutput) ToGetCoreNetworkPolicyDocumentSegmentActionViaPtrOutputWithContext

func (o GetCoreNetworkPolicyDocumentSegmentActionViaOutput) ToGetCoreNetworkPolicyDocumentSegmentActionViaPtrOutputWithContext(ctx context.Context) GetCoreNetworkPolicyDocumentSegmentActionViaPtrOutput

func (GetCoreNetworkPolicyDocumentSegmentActionViaOutput) WithEdgeOverrides

Any edge overrides and the preferred edge to use.

type GetCoreNetworkPolicyDocumentSegmentActionViaPtrInput

type GetCoreNetworkPolicyDocumentSegmentActionViaPtrInput interface {
	pulumi.Input

	ToGetCoreNetworkPolicyDocumentSegmentActionViaPtrOutput() GetCoreNetworkPolicyDocumentSegmentActionViaPtrOutput
	ToGetCoreNetworkPolicyDocumentSegmentActionViaPtrOutputWithContext(context.Context) GetCoreNetworkPolicyDocumentSegmentActionViaPtrOutput
}

GetCoreNetworkPolicyDocumentSegmentActionViaPtrInput is an input type that accepts GetCoreNetworkPolicyDocumentSegmentActionViaArgs, GetCoreNetworkPolicyDocumentSegmentActionViaPtr and GetCoreNetworkPolicyDocumentSegmentActionViaPtrOutput values. You can construct a concrete instance of `GetCoreNetworkPolicyDocumentSegmentActionViaPtrInput` via:

        GetCoreNetworkPolicyDocumentSegmentActionViaArgs{...}

or:

        nil

type GetCoreNetworkPolicyDocumentSegmentActionViaPtrOutput

type GetCoreNetworkPolicyDocumentSegmentActionViaPtrOutput struct{ *pulumi.OutputState }

func (GetCoreNetworkPolicyDocumentSegmentActionViaPtrOutput) Elem

func (GetCoreNetworkPolicyDocumentSegmentActionViaPtrOutput) ElementType

func (GetCoreNetworkPolicyDocumentSegmentActionViaPtrOutput) NetworkFunctionGroups

A list of strings. The network function group to use for the service insertion action.

func (GetCoreNetworkPolicyDocumentSegmentActionViaPtrOutput) ToGetCoreNetworkPolicyDocumentSegmentActionViaPtrOutput

func (GetCoreNetworkPolicyDocumentSegmentActionViaPtrOutput) ToGetCoreNetworkPolicyDocumentSegmentActionViaPtrOutputWithContext

func (o GetCoreNetworkPolicyDocumentSegmentActionViaPtrOutput) ToGetCoreNetworkPolicyDocumentSegmentActionViaPtrOutputWithContext(ctx context.Context) GetCoreNetworkPolicyDocumentSegmentActionViaPtrOutput

func (GetCoreNetworkPolicyDocumentSegmentActionViaPtrOutput) WithEdgeOverrides

Any edge overrides and the preferred edge to use.

type GetCoreNetworkPolicyDocumentSegmentActionViaWithEdgeOverride

type GetCoreNetworkPolicyDocumentSegmentActionViaWithEdgeOverride struct {
	// A list of a list of strings. The list of edges associated with the network function group.
	EdgeSets [][]string `pulumi:"edgeSets"`
	// The preferred edge to use.
	//
	// Deprecated: use_edge is deprecated. Use useEdgeLocation instead.
	UseEdge *string `pulumi:"useEdge"`
	// The preferred edge to use.
	UseEdgeLocation *string `pulumi:"useEdgeLocation"`
}

type GetCoreNetworkPolicyDocumentSegmentActionViaWithEdgeOverrideArgs

type GetCoreNetworkPolicyDocumentSegmentActionViaWithEdgeOverrideArgs struct {
	// A list of a list of strings. The list of edges associated with the network function group.
	EdgeSets pulumi.StringArrayArrayInput `pulumi:"edgeSets"`
	// The preferred edge to use.
	//
	// Deprecated: use_edge is deprecated. Use useEdgeLocation instead.
	UseEdge pulumi.StringPtrInput `pulumi:"useEdge"`
	// The preferred edge to use.
	UseEdgeLocation pulumi.StringPtrInput `pulumi:"useEdgeLocation"`
}

func (GetCoreNetworkPolicyDocumentSegmentActionViaWithEdgeOverrideArgs) ElementType

func (GetCoreNetworkPolicyDocumentSegmentActionViaWithEdgeOverrideArgs) ToGetCoreNetworkPolicyDocumentSegmentActionViaWithEdgeOverrideOutput

func (GetCoreNetworkPolicyDocumentSegmentActionViaWithEdgeOverrideArgs) ToGetCoreNetworkPolicyDocumentSegmentActionViaWithEdgeOverrideOutputWithContext

func (i GetCoreNetworkPolicyDocumentSegmentActionViaWithEdgeOverrideArgs) ToGetCoreNetworkPolicyDocumentSegmentActionViaWithEdgeOverrideOutputWithContext(ctx context.Context) GetCoreNetworkPolicyDocumentSegmentActionViaWithEdgeOverrideOutput

type GetCoreNetworkPolicyDocumentSegmentActionViaWithEdgeOverrideArray

type GetCoreNetworkPolicyDocumentSegmentActionViaWithEdgeOverrideArray []GetCoreNetworkPolicyDocumentSegmentActionViaWithEdgeOverrideInput

func (GetCoreNetworkPolicyDocumentSegmentActionViaWithEdgeOverrideArray) ElementType

func (GetCoreNetworkPolicyDocumentSegmentActionViaWithEdgeOverrideArray) ToGetCoreNetworkPolicyDocumentSegmentActionViaWithEdgeOverrideArrayOutput

func (GetCoreNetworkPolicyDocumentSegmentActionViaWithEdgeOverrideArray) ToGetCoreNetworkPolicyDocumentSegmentActionViaWithEdgeOverrideArrayOutputWithContext

func (i GetCoreNetworkPolicyDocumentSegmentActionViaWithEdgeOverrideArray) ToGetCoreNetworkPolicyDocumentSegmentActionViaWithEdgeOverrideArrayOutputWithContext(ctx context.Context) GetCoreNetworkPolicyDocumentSegmentActionViaWithEdgeOverrideArrayOutput

type GetCoreNetworkPolicyDocumentSegmentActionViaWithEdgeOverrideArrayInput

type GetCoreNetworkPolicyDocumentSegmentActionViaWithEdgeOverrideArrayInput interface {
	pulumi.Input

	ToGetCoreNetworkPolicyDocumentSegmentActionViaWithEdgeOverrideArrayOutput() GetCoreNetworkPolicyDocumentSegmentActionViaWithEdgeOverrideArrayOutput
	ToGetCoreNetworkPolicyDocumentSegmentActionViaWithEdgeOverrideArrayOutputWithContext(context.Context) GetCoreNetworkPolicyDocumentSegmentActionViaWithEdgeOverrideArrayOutput
}

GetCoreNetworkPolicyDocumentSegmentActionViaWithEdgeOverrideArrayInput is an input type that accepts GetCoreNetworkPolicyDocumentSegmentActionViaWithEdgeOverrideArray and GetCoreNetworkPolicyDocumentSegmentActionViaWithEdgeOverrideArrayOutput values. You can construct a concrete instance of `GetCoreNetworkPolicyDocumentSegmentActionViaWithEdgeOverrideArrayInput` via:

GetCoreNetworkPolicyDocumentSegmentActionViaWithEdgeOverrideArray{ GetCoreNetworkPolicyDocumentSegmentActionViaWithEdgeOverrideArgs{...} }

type GetCoreNetworkPolicyDocumentSegmentActionViaWithEdgeOverrideArrayOutput

type GetCoreNetworkPolicyDocumentSegmentActionViaWithEdgeOverrideArrayOutput struct{ *pulumi.OutputState }

func (GetCoreNetworkPolicyDocumentSegmentActionViaWithEdgeOverrideArrayOutput) ElementType

func (GetCoreNetworkPolicyDocumentSegmentActionViaWithEdgeOverrideArrayOutput) ToGetCoreNetworkPolicyDocumentSegmentActionViaWithEdgeOverrideArrayOutput

func (GetCoreNetworkPolicyDocumentSegmentActionViaWithEdgeOverrideArrayOutput) ToGetCoreNetworkPolicyDocumentSegmentActionViaWithEdgeOverrideArrayOutputWithContext

func (o GetCoreNetworkPolicyDocumentSegmentActionViaWithEdgeOverrideArrayOutput) ToGetCoreNetworkPolicyDocumentSegmentActionViaWithEdgeOverrideArrayOutputWithContext(ctx context.Context) GetCoreNetworkPolicyDocumentSegmentActionViaWithEdgeOverrideArrayOutput

type GetCoreNetworkPolicyDocumentSegmentActionViaWithEdgeOverrideInput

type GetCoreNetworkPolicyDocumentSegmentActionViaWithEdgeOverrideInput interface {
	pulumi.Input

	ToGetCoreNetworkPolicyDocumentSegmentActionViaWithEdgeOverrideOutput() GetCoreNetworkPolicyDocumentSegmentActionViaWithEdgeOverrideOutput
	ToGetCoreNetworkPolicyDocumentSegmentActionViaWithEdgeOverrideOutputWithContext(context.Context) GetCoreNetworkPolicyDocumentSegmentActionViaWithEdgeOverrideOutput
}

GetCoreNetworkPolicyDocumentSegmentActionViaWithEdgeOverrideInput is an input type that accepts GetCoreNetworkPolicyDocumentSegmentActionViaWithEdgeOverrideArgs and GetCoreNetworkPolicyDocumentSegmentActionViaWithEdgeOverrideOutput values. You can construct a concrete instance of `GetCoreNetworkPolicyDocumentSegmentActionViaWithEdgeOverrideInput` via:

GetCoreNetworkPolicyDocumentSegmentActionViaWithEdgeOverrideArgs{...}

type GetCoreNetworkPolicyDocumentSegmentActionViaWithEdgeOverrideOutput

type GetCoreNetworkPolicyDocumentSegmentActionViaWithEdgeOverrideOutput struct{ *pulumi.OutputState }

func (GetCoreNetworkPolicyDocumentSegmentActionViaWithEdgeOverrideOutput) EdgeSets

A list of a list of strings. The list of edges associated with the network function group.

func (GetCoreNetworkPolicyDocumentSegmentActionViaWithEdgeOverrideOutput) ElementType

func (GetCoreNetworkPolicyDocumentSegmentActionViaWithEdgeOverrideOutput) ToGetCoreNetworkPolicyDocumentSegmentActionViaWithEdgeOverrideOutput

func (GetCoreNetworkPolicyDocumentSegmentActionViaWithEdgeOverrideOutput) ToGetCoreNetworkPolicyDocumentSegmentActionViaWithEdgeOverrideOutputWithContext

func (o GetCoreNetworkPolicyDocumentSegmentActionViaWithEdgeOverrideOutput) ToGetCoreNetworkPolicyDocumentSegmentActionViaWithEdgeOverrideOutputWithContext(ctx context.Context) GetCoreNetworkPolicyDocumentSegmentActionViaWithEdgeOverrideOutput

func (GetCoreNetworkPolicyDocumentSegmentActionViaWithEdgeOverrideOutput) UseEdge deprecated

The preferred edge to use.

Deprecated: use_edge is deprecated. Use useEdgeLocation instead.

func (GetCoreNetworkPolicyDocumentSegmentActionViaWithEdgeOverrideOutput) UseEdgeLocation

The preferred edge to use.

type GetCoreNetworkPolicyDocumentSegmentActionWhenSentTo

type GetCoreNetworkPolicyDocumentSegmentActionWhenSentTo struct {
	// A list of strings. The list of segments that the `send-via` `action` uses.
	Segments []string `pulumi:"segments"`
}

type GetCoreNetworkPolicyDocumentSegmentActionWhenSentToArgs

type GetCoreNetworkPolicyDocumentSegmentActionWhenSentToArgs struct {
	// A list of strings. The list of segments that the `send-via` `action` uses.
	Segments pulumi.StringArrayInput `pulumi:"segments"`
}

func (GetCoreNetworkPolicyDocumentSegmentActionWhenSentToArgs) ElementType

func (GetCoreNetworkPolicyDocumentSegmentActionWhenSentToArgs) ToGetCoreNetworkPolicyDocumentSegmentActionWhenSentToOutput

func (GetCoreNetworkPolicyDocumentSegmentActionWhenSentToArgs) ToGetCoreNetworkPolicyDocumentSegmentActionWhenSentToOutputWithContext

func (i GetCoreNetworkPolicyDocumentSegmentActionWhenSentToArgs) ToGetCoreNetworkPolicyDocumentSegmentActionWhenSentToOutputWithContext(ctx context.Context) GetCoreNetworkPolicyDocumentSegmentActionWhenSentToOutput

func (GetCoreNetworkPolicyDocumentSegmentActionWhenSentToArgs) ToGetCoreNetworkPolicyDocumentSegmentActionWhenSentToPtrOutput

func (i GetCoreNetworkPolicyDocumentSegmentActionWhenSentToArgs) ToGetCoreNetworkPolicyDocumentSegmentActionWhenSentToPtrOutput() GetCoreNetworkPolicyDocumentSegmentActionWhenSentToPtrOutput

func (GetCoreNetworkPolicyDocumentSegmentActionWhenSentToArgs) ToGetCoreNetworkPolicyDocumentSegmentActionWhenSentToPtrOutputWithContext

func (i GetCoreNetworkPolicyDocumentSegmentActionWhenSentToArgs) ToGetCoreNetworkPolicyDocumentSegmentActionWhenSentToPtrOutputWithContext(ctx context.Context) GetCoreNetworkPolicyDocumentSegmentActionWhenSentToPtrOutput

type GetCoreNetworkPolicyDocumentSegmentActionWhenSentToInput

type GetCoreNetworkPolicyDocumentSegmentActionWhenSentToInput interface {
	pulumi.Input

	ToGetCoreNetworkPolicyDocumentSegmentActionWhenSentToOutput() GetCoreNetworkPolicyDocumentSegmentActionWhenSentToOutput
	ToGetCoreNetworkPolicyDocumentSegmentActionWhenSentToOutputWithContext(context.Context) GetCoreNetworkPolicyDocumentSegmentActionWhenSentToOutput
}

GetCoreNetworkPolicyDocumentSegmentActionWhenSentToInput is an input type that accepts GetCoreNetworkPolicyDocumentSegmentActionWhenSentToArgs and GetCoreNetworkPolicyDocumentSegmentActionWhenSentToOutput values. You can construct a concrete instance of `GetCoreNetworkPolicyDocumentSegmentActionWhenSentToInput` via:

GetCoreNetworkPolicyDocumentSegmentActionWhenSentToArgs{...}

type GetCoreNetworkPolicyDocumentSegmentActionWhenSentToOutput

type GetCoreNetworkPolicyDocumentSegmentActionWhenSentToOutput struct{ *pulumi.OutputState }

func (GetCoreNetworkPolicyDocumentSegmentActionWhenSentToOutput) ElementType

func (GetCoreNetworkPolicyDocumentSegmentActionWhenSentToOutput) Segments

A list of strings. The list of segments that the `send-via` `action` uses.

func (GetCoreNetworkPolicyDocumentSegmentActionWhenSentToOutput) ToGetCoreNetworkPolicyDocumentSegmentActionWhenSentToOutput

func (GetCoreNetworkPolicyDocumentSegmentActionWhenSentToOutput) ToGetCoreNetworkPolicyDocumentSegmentActionWhenSentToOutputWithContext

func (o GetCoreNetworkPolicyDocumentSegmentActionWhenSentToOutput) ToGetCoreNetworkPolicyDocumentSegmentActionWhenSentToOutputWithContext(ctx context.Context) GetCoreNetworkPolicyDocumentSegmentActionWhenSentToOutput

func (GetCoreNetworkPolicyDocumentSegmentActionWhenSentToOutput) ToGetCoreNetworkPolicyDocumentSegmentActionWhenSentToPtrOutput

func (GetCoreNetworkPolicyDocumentSegmentActionWhenSentToOutput) ToGetCoreNetworkPolicyDocumentSegmentActionWhenSentToPtrOutputWithContext

func (o GetCoreNetworkPolicyDocumentSegmentActionWhenSentToOutput) ToGetCoreNetworkPolicyDocumentSegmentActionWhenSentToPtrOutputWithContext(ctx context.Context) GetCoreNetworkPolicyDocumentSegmentActionWhenSentToPtrOutput

type GetCoreNetworkPolicyDocumentSegmentActionWhenSentToPtrInput

type GetCoreNetworkPolicyDocumentSegmentActionWhenSentToPtrInput interface {
	pulumi.Input

	ToGetCoreNetworkPolicyDocumentSegmentActionWhenSentToPtrOutput() GetCoreNetworkPolicyDocumentSegmentActionWhenSentToPtrOutput
	ToGetCoreNetworkPolicyDocumentSegmentActionWhenSentToPtrOutputWithContext(context.Context) GetCoreNetworkPolicyDocumentSegmentActionWhenSentToPtrOutput
}

GetCoreNetworkPolicyDocumentSegmentActionWhenSentToPtrInput is an input type that accepts GetCoreNetworkPolicyDocumentSegmentActionWhenSentToArgs, GetCoreNetworkPolicyDocumentSegmentActionWhenSentToPtr and GetCoreNetworkPolicyDocumentSegmentActionWhenSentToPtrOutput values. You can construct a concrete instance of `GetCoreNetworkPolicyDocumentSegmentActionWhenSentToPtrInput` via:

        GetCoreNetworkPolicyDocumentSegmentActionWhenSentToArgs{...}

or:

        nil

type GetCoreNetworkPolicyDocumentSegmentActionWhenSentToPtrOutput

type GetCoreNetworkPolicyDocumentSegmentActionWhenSentToPtrOutput struct{ *pulumi.OutputState }

func (GetCoreNetworkPolicyDocumentSegmentActionWhenSentToPtrOutput) Elem

func (GetCoreNetworkPolicyDocumentSegmentActionWhenSentToPtrOutput) ElementType

func (GetCoreNetworkPolicyDocumentSegmentActionWhenSentToPtrOutput) Segments

A list of strings. The list of segments that the `send-via` `action` uses.

func (GetCoreNetworkPolicyDocumentSegmentActionWhenSentToPtrOutput) ToGetCoreNetworkPolicyDocumentSegmentActionWhenSentToPtrOutput

func (GetCoreNetworkPolicyDocumentSegmentActionWhenSentToPtrOutput) ToGetCoreNetworkPolicyDocumentSegmentActionWhenSentToPtrOutputWithContext

func (o GetCoreNetworkPolicyDocumentSegmentActionWhenSentToPtrOutput) ToGetCoreNetworkPolicyDocumentSegmentActionWhenSentToPtrOutputWithContext(ctx context.Context) GetCoreNetworkPolicyDocumentSegmentActionWhenSentToPtrOutput

type GetCoreNetworkPolicyDocumentSegmentArgs

type GetCoreNetworkPolicyDocumentSegmentArgs struct {
	// List of strings of segment names that explicitly allows only routes from the segments that are listed in the array. Use the `allowFilter` setting if a segment has a well-defined group of other segments that connectivity should be restricted to. It is applied after routes have been shared in `segmentActions`. If a segment is listed in `allowFilter`, attachments between the two segments will have routes if they are also shared in the segment-actions area. For example, you might have a segment named "video-producer" that should only ever share routes with a "video-distributor" segment, no matter how many other share statements are created.
	AllowFilters pulumi.StringArrayInput `pulumi:"allowFilters"`
	// An array of segments that disallows routes from the segments listed in the array. It is applied only after routes have been shared in `segmentActions`. If a segment is listed in the `denyFilter`, attachments between the two segments will never have routes shared across them. For example, you might have a "financial" payment segment that should never share routes with a "development" segment, regardless of how many other share statements are created. Adding the payments segment to the deny-filter parameter prevents any shared routes from being created with other segments.
	DenyFilters pulumi.StringArrayInput `pulumi:"denyFilters"`
	// A user-defined string describing the segment.
	Description pulumi.StringPtrInput `pulumi:"description"`
	// A list of strings of AWS Region names. Allows you to define a more restrictive set of Regions for a segment. The edge location must be a subset of the locations that are defined for `edgeLocations` in the `coreNetworkConfiguration`.
	EdgeLocations pulumi.StringArrayInput `pulumi:"edgeLocations"`
	// This Boolean setting determines whether attachments on the same segment can communicate with each other. If set to `true`, the only routes available will be either shared routes through the share actions, which are attachments in other segments, or static routes. The default value is `false`. For example, you might have a segment dedicated to "development" that should never allow VPCs to talk to each other, even if they’re on the same segment. In this example, you would keep the default parameter of `false`.
	IsolateAttachments pulumi.BoolPtrInput `pulumi:"isolateAttachments"`
	// Unique name for a segment. The name is a string used in other parts of the policy document, as well as in the console for metrics and other reference points. Valid characters are a–z, and 0–9.
	Name pulumi.StringInput `pulumi:"name"`
	// This Boolean setting determines whether attachment requests are automatically approved or require acceptance. The default is `true`, indicating that attachment requests require acceptance. For example, you might use this setting to allow a "sandbox" segment to allow any attachment request so that a core network or attachment administrator does not need to review and approve attachment requests. In this example, `requireAttachmentAcceptance` is set to `false`.
	RequireAttachmentAcceptance pulumi.BoolPtrInput `pulumi:"requireAttachmentAcceptance"`
}

func (GetCoreNetworkPolicyDocumentSegmentArgs) ElementType

func (GetCoreNetworkPolicyDocumentSegmentArgs) ToGetCoreNetworkPolicyDocumentSegmentOutput

func (i GetCoreNetworkPolicyDocumentSegmentArgs) ToGetCoreNetworkPolicyDocumentSegmentOutput() GetCoreNetworkPolicyDocumentSegmentOutput

func (GetCoreNetworkPolicyDocumentSegmentArgs) ToGetCoreNetworkPolicyDocumentSegmentOutputWithContext

func (i GetCoreNetworkPolicyDocumentSegmentArgs) ToGetCoreNetworkPolicyDocumentSegmentOutputWithContext(ctx context.Context) GetCoreNetworkPolicyDocumentSegmentOutput

type GetCoreNetworkPolicyDocumentSegmentArray

type GetCoreNetworkPolicyDocumentSegmentArray []GetCoreNetworkPolicyDocumentSegmentInput

func (GetCoreNetworkPolicyDocumentSegmentArray) ElementType

func (GetCoreNetworkPolicyDocumentSegmentArray) ToGetCoreNetworkPolicyDocumentSegmentArrayOutput

func (i GetCoreNetworkPolicyDocumentSegmentArray) ToGetCoreNetworkPolicyDocumentSegmentArrayOutput() GetCoreNetworkPolicyDocumentSegmentArrayOutput

func (GetCoreNetworkPolicyDocumentSegmentArray) ToGetCoreNetworkPolicyDocumentSegmentArrayOutputWithContext

func (i GetCoreNetworkPolicyDocumentSegmentArray) ToGetCoreNetworkPolicyDocumentSegmentArrayOutputWithContext(ctx context.Context) GetCoreNetworkPolicyDocumentSegmentArrayOutput

type GetCoreNetworkPolicyDocumentSegmentArrayInput

type GetCoreNetworkPolicyDocumentSegmentArrayInput interface {
	pulumi.Input

	ToGetCoreNetworkPolicyDocumentSegmentArrayOutput() GetCoreNetworkPolicyDocumentSegmentArrayOutput
	ToGetCoreNetworkPolicyDocumentSegmentArrayOutputWithContext(context.Context) GetCoreNetworkPolicyDocumentSegmentArrayOutput
}

GetCoreNetworkPolicyDocumentSegmentArrayInput is an input type that accepts GetCoreNetworkPolicyDocumentSegmentArray and GetCoreNetworkPolicyDocumentSegmentArrayOutput values. You can construct a concrete instance of `GetCoreNetworkPolicyDocumentSegmentArrayInput` via:

GetCoreNetworkPolicyDocumentSegmentArray{ GetCoreNetworkPolicyDocumentSegmentArgs{...} }

type GetCoreNetworkPolicyDocumentSegmentArrayOutput

type GetCoreNetworkPolicyDocumentSegmentArrayOutput struct{ *pulumi.OutputState }

func (GetCoreNetworkPolicyDocumentSegmentArrayOutput) ElementType

func (GetCoreNetworkPolicyDocumentSegmentArrayOutput) Index

func (GetCoreNetworkPolicyDocumentSegmentArrayOutput) ToGetCoreNetworkPolicyDocumentSegmentArrayOutput

func (o GetCoreNetworkPolicyDocumentSegmentArrayOutput) ToGetCoreNetworkPolicyDocumentSegmentArrayOutput() GetCoreNetworkPolicyDocumentSegmentArrayOutput

func (GetCoreNetworkPolicyDocumentSegmentArrayOutput) ToGetCoreNetworkPolicyDocumentSegmentArrayOutputWithContext

func (o GetCoreNetworkPolicyDocumentSegmentArrayOutput) ToGetCoreNetworkPolicyDocumentSegmentArrayOutputWithContext(ctx context.Context) GetCoreNetworkPolicyDocumentSegmentArrayOutput

type GetCoreNetworkPolicyDocumentSegmentInput

type GetCoreNetworkPolicyDocumentSegmentInput interface {
	pulumi.Input

	ToGetCoreNetworkPolicyDocumentSegmentOutput() GetCoreNetworkPolicyDocumentSegmentOutput
	ToGetCoreNetworkPolicyDocumentSegmentOutputWithContext(context.Context) GetCoreNetworkPolicyDocumentSegmentOutput
}

GetCoreNetworkPolicyDocumentSegmentInput is an input type that accepts GetCoreNetworkPolicyDocumentSegmentArgs and GetCoreNetworkPolicyDocumentSegmentOutput values. You can construct a concrete instance of `GetCoreNetworkPolicyDocumentSegmentInput` via:

GetCoreNetworkPolicyDocumentSegmentArgs{...}

type GetCoreNetworkPolicyDocumentSegmentOutput

type GetCoreNetworkPolicyDocumentSegmentOutput struct{ *pulumi.OutputState }

func (GetCoreNetworkPolicyDocumentSegmentOutput) AllowFilters

List of strings of segment names that explicitly allows only routes from the segments that are listed in the array. Use the `allowFilter` setting if a segment has a well-defined group of other segments that connectivity should be restricted to. It is applied after routes have been shared in `segmentActions`. If a segment is listed in `allowFilter`, attachments between the two segments will have routes if they are also shared in the segment-actions area. For example, you might have a segment named "video-producer" that should only ever share routes with a "video-distributor" segment, no matter how many other share statements are created.

func (GetCoreNetworkPolicyDocumentSegmentOutput) DenyFilters

An array of segments that disallows routes from the segments listed in the array. It is applied only after routes have been shared in `segmentActions`. If a segment is listed in the `denyFilter`, attachments between the two segments will never have routes shared across them. For example, you might have a "financial" payment segment that should never share routes with a "development" segment, regardless of how many other share statements are created. Adding the payments segment to the deny-filter parameter prevents any shared routes from being created with other segments.

func (GetCoreNetworkPolicyDocumentSegmentOutput) Description

A user-defined string describing the segment.

func (GetCoreNetworkPolicyDocumentSegmentOutput) EdgeLocations

A list of strings of AWS Region names. Allows you to define a more restrictive set of Regions for a segment. The edge location must be a subset of the locations that are defined for `edgeLocations` in the `coreNetworkConfiguration`.

func (GetCoreNetworkPolicyDocumentSegmentOutput) ElementType

func (GetCoreNetworkPolicyDocumentSegmentOutput) IsolateAttachments

This Boolean setting determines whether attachments on the same segment can communicate with each other. If set to `true`, the only routes available will be either shared routes through the share actions, which are attachments in other segments, or static routes. The default value is `false`. For example, you might have a segment dedicated to "development" that should never allow VPCs to talk to each other, even if they’re on the same segment. In this example, you would keep the default parameter of `false`.

func (GetCoreNetworkPolicyDocumentSegmentOutput) Name

Unique name for a segment. The name is a string used in other parts of the policy document, as well as in the console for metrics and other reference points. Valid characters are a–z, and 0–9.

func (GetCoreNetworkPolicyDocumentSegmentOutput) RequireAttachmentAcceptance

func (o GetCoreNetworkPolicyDocumentSegmentOutput) RequireAttachmentAcceptance() pulumi.BoolPtrOutput

This Boolean setting determines whether attachment requests are automatically approved or require acceptance. The default is `true`, indicating that attachment requests require acceptance. For example, you might use this setting to allow a "sandbox" segment to allow any attachment request so that a core network or attachment administrator does not need to review and approve attachment requests. In this example, `requireAttachmentAcceptance` is set to `false`.

func (GetCoreNetworkPolicyDocumentSegmentOutput) ToGetCoreNetworkPolicyDocumentSegmentOutput

func (o GetCoreNetworkPolicyDocumentSegmentOutput) ToGetCoreNetworkPolicyDocumentSegmentOutput() GetCoreNetworkPolicyDocumentSegmentOutput

func (GetCoreNetworkPolicyDocumentSegmentOutput) ToGetCoreNetworkPolicyDocumentSegmentOutputWithContext

func (o GetCoreNetworkPolicyDocumentSegmentOutput) ToGetCoreNetworkPolicyDocumentSegmentOutputWithContext(ctx context.Context) GetCoreNetworkPolicyDocumentSegmentOutput

type GetDeviceAwsLocation

type GetDeviceAwsLocation struct {
	// ARN of the subnet that the device is located in.
	SubnetArn string `pulumi:"subnetArn"`
	// Zone that the device is located in.
	Zone string `pulumi:"zone"`
}

type GetDeviceAwsLocationArgs

type GetDeviceAwsLocationArgs struct {
	// ARN of the subnet that the device is located in.
	SubnetArn pulumi.StringInput `pulumi:"subnetArn"`
	// Zone that the device is located in.
	Zone pulumi.StringInput `pulumi:"zone"`
}

func (GetDeviceAwsLocationArgs) ElementType

func (GetDeviceAwsLocationArgs) ElementType() reflect.Type

func (GetDeviceAwsLocationArgs) ToGetDeviceAwsLocationOutput

func (i GetDeviceAwsLocationArgs) ToGetDeviceAwsLocationOutput() GetDeviceAwsLocationOutput

func (GetDeviceAwsLocationArgs) ToGetDeviceAwsLocationOutputWithContext

func (i GetDeviceAwsLocationArgs) ToGetDeviceAwsLocationOutputWithContext(ctx context.Context) GetDeviceAwsLocationOutput

type GetDeviceAwsLocationArray

type GetDeviceAwsLocationArray []GetDeviceAwsLocationInput

func (GetDeviceAwsLocationArray) ElementType

func (GetDeviceAwsLocationArray) ElementType() reflect.Type

func (GetDeviceAwsLocationArray) ToGetDeviceAwsLocationArrayOutput

func (i GetDeviceAwsLocationArray) ToGetDeviceAwsLocationArrayOutput() GetDeviceAwsLocationArrayOutput

func (GetDeviceAwsLocationArray) ToGetDeviceAwsLocationArrayOutputWithContext

func (i GetDeviceAwsLocationArray) ToGetDeviceAwsLocationArrayOutputWithContext(ctx context.Context) GetDeviceAwsLocationArrayOutput

type GetDeviceAwsLocationArrayInput

type GetDeviceAwsLocationArrayInput interface {
	pulumi.Input

	ToGetDeviceAwsLocationArrayOutput() GetDeviceAwsLocationArrayOutput
	ToGetDeviceAwsLocationArrayOutputWithContext(context.Context) GetDeviceAwsLocationArrayOutput
}

GetDeviceAwsLocationArrayInput is an input type that accepts GetDeviceAwsLocationArray and GetDeviceAwsLocationArrayOutput values. You can construct a concrete instance of `GetDeviceAwsLocationArrayInput` via:

GetDeviceAwsLocationArray{ GetDeviceAwsLocationArgs{...} }

type GetDeviceAwsLocationArrayOutput

type GetDeviceAwsLocationArrayOutput struct{ *pulumi.OutputState }

func (GetDeviceAwsLocationArrayOutput) ElementType

func (GetDeviceAwsLocationArrayOutput) Index

func (GetDeviceAwsLocationArrayOutput) ToGetDeviceAwsLocationArrayOutput

func (o GetDeviceAwsLocationArrayOutput) ToGetDeviceAwsLocationArrayOutput() GetDeviceAwsLocationArrayOutput

func (GetDeviceAwsLocationArrayOutput) ToGetDeviceAwsLocationArrayOutputWithContext

func (o GetDeviceAwsLocationArrayOutput) ToGetDeviceAwsLocationArrayOutputWithContext(ctx context.Context) GetDeviceAwsLocationArrayOutput

type GetDeviceAwsLocationInput

type GetDeviceAwsLocationInput interface {
	pulumi.Input

	ToGetDeviceAwsLocationOutput() GetDeviceAwsLocationOutput
	ToGetDeviceAwsLocationOutputWithContext(context.Context) GetDeviceAwsLocationOutput
}

GetDeviceAwsLocationInput is an input type that accepts GetDeviceAwsLocationArgs and GetDeviceAwsLocationOutput values. You can construct a concrete instance of `GetDeviceAwsLocationInput` via:

GetDeviceAwsLocationArgs{...}

type GetDeviceAwsLocationOutput

type GetDeviceAwsLocationOutput struct{ *pulumi.OutputState }

func (GetDeviceAwsLocationOutput) ElementType

func (GetDeviceAwsLocationOutput) ElementType() reflect.Type

func (GetDeviceAwsLocationOutput) SubnetArn

ARN of the subnet that the device is located in.

func (GetDeviceAwsLocationOutput) ToGetDeviceAwsLocationOutput

func (o GetDeviceAwsLocationOutput) ToGetDeviceAwsLocationOutput() GetDeviceAwsLocationOutput

func (GetDeviceAwsLocationOutput) ToGetDeviceAwsLocationOutputWithContext

func (o GetDeviceAwsLocationOutput) ToGetDeviceAwsLocationOutputWithContext(ctx context.Context) GetDeviceAwsLocationOutput

func (GetDeviceAwsLocationOutput) Zone

Zone that the device is located in.

type GetDeviceLocation

type GetDeviceLocation struct {
	// Physical address.
	Address string `pulumi:"address"`
	// Latitude.
	Latitude string `pulumi:"latitude"`
	// Longitude.
	Longitude string `pulumi:"longitude"`
}

type GetDeviceLocationArgs

type GetDeviceLocationArgs struct {
	// Physical address.
	Address pulumi.StringInput `pulumi:"address"`
	// Latitude.
	Latitude pulumi.StringInput `pulumi:"latitude"`
	// Longitude.
	Longitude pulumi.StringInput `pulumi:"longitude"`
}

func (GetDeviceLocationArgs) ElementType

func (GetDeviceLocationArgs) ElementType() reflect.Type

func (GetDeviceLocationArgs) ToGetDeviceLocationOutput

func (i GetDeviceLocationArgs) ToGetDeviceLocationOutput() GetDeviceLocationOutput

func (GetDeviceLocationArgs) ToGetDeviceLocationOutputWithContext

func (i GetDeviceLocationArgs) ToGetDeviceLocationOutputWithContext(ctx context.Context) GetDeviceLocationOutput

type GetDeviceLocationArray

type GetDeviceLocationArray []GetDeviceLocationInput

func (GetDeviceLocationArray) ElementType

func (GetDeviceLocationArray) ElementType() reflect.Type

func (GetDeviceLocationArray) ToGetDeviceLocationArrayOutput

func (i GetDeviceLocationArray) ToGetDeviceLocationArrayOutput() GetDeviceLocationArrayOutput

func (GetDeviceLocationArray) ToGetDeviceLocationArrayOutputWithContext

func (i GetDeviceLocationArray) ToGetDeviceLocationArrayOutputWithContext(ctx context.Context) GetDeviceLocationArrayOutput

type GetDeviceLocationArrayInput

type GetDeviceLocationArrayInput interface {
	pulumi.Input

	ToGetDeviceLocationArrayOutput() GetDeviceLocationArrayOutput
	ToGetDeviceLocationArrayOutputWithContext(context.Context) GetDeviceLocationArrayOutput
}

GetDeviceLocationArrayInput is an input type that accepts GetDeviceLocationArray and GetDeviceLocationArrayOutput values. You can construct a concrete instance of `GetDeviceLocationArrayInput` via:

GetDeviceLocationArray{ GetDeviceLocationArgs{...} }

type GetDeviceLocationArrayOutput

type GetDeviceLocationArrayOutput struct{ *pulumi.OutputState }

func (GetDeviceLocationArrayOutput) ElementType

func (GetDeviceLocationArrayOutput) Index

func (GetDeviceLocationArrayOutput) ToGetDeviceLocationArrayOutput

func (o GetDeviceLocationArrayOutput) ToGetDeviceLocationArrayOutput() GetDeviceLocationArrayOutput

func (GetDeviceLocationArrayOutput) ToGetDeviceLocationArrayOutputWithContext

func (o GetDeviceLocationArrayOutput) ToGetDeviceLocationArrayOutputWithContext(ctx context.Context) GetDeviceLocationArrayOutput

type GetDeviceLocationInput

type GetDeviceLocationInput interface {
	pulumi.Input

	ToGetDeviceLocationOutput() GetDeviceLocationOutput
	ToGetDeviceLocationOutputWithContext(context.Context) GetDeviceLocationOutput
}

GetDeviceLocationInput is an input type that accepts GetDeviceLocationArgs and GetDeviceLocationOutput values. You can construct a concrete instance of `GetDeviceLocationInput` via:

GetDeviceLocationArgs{...}

type GetDeviceLocationOutput

type GetDeviceLocationOutput struct{ *pulumi.OutputState }

func (GetDeviceLocationOutput) Address

Physical address.

func (GetDeviceLocationOutput) ElementType

func (GetDeviceLocationOutput) ElementType() reflect.Type

func (GetDeviceLocationOutput) Latitude

Latitude.

func (GetDeviceLocationOutput) Longitude

Longitude.

func (GetDeviceLocationOutput) ToGetDeviceLocationOutput

func (o GetDeviceLocationOutput) ToGetDeviceLocationOutput() GetDeviceLocationOutput

func (GetDeviceLocationOutput) ToGetDeviceLocationOutputWithContext

func (o GetDeviceLocationOutput) ToGetDeviceLocationOutputWithContext(ctx context.Context) GetDeviceLocationOutput

type GetDevicesArgs

type GetDevicesArgs struct {
	// ID of the Global Network of the devices to retrieve.
	GlobalNetworkId string `pulumi:"globalNetworkId"`
	// ID of the site of the devices to retrieve.
	SiteId *string `pulumi:"siteId"`
	// Restricts the list to the devices with these tags.
	Tags map[string]string `pulumi:"tags"`
}

A collection of arguments for invoking getDevices.

type GetDevicesOutputArgs

type GetDevicesOutputArgs struct {
	// ID of the Global Network of the devices to retrieve.
	GlobalNetworkId pulumi.StringInput `pulumi:"globalNetworkId"`
	// ID of the site of the devices to retrieve.
	SiteId pulumi.StringPtrInput `pulumi:"siteId"`
	// Restricts the list to the devices with these tags.
	Tags pulumi.StringMapInput `pulumi:"tags"`
}

A collection of arguments for invoking getDevices.

func (GetDevicesOutputArgs) ElementType

func (GetDevicesOutputArgs) ElementType() reflect.Type

type GetDevicesResult

type GetDevicesResult struct {
	GlobalNetworkId string `pulumi:"globalNetworkId"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// IDs of the devices.
	Ids    []string          `pulumi:"ids"`
	SiteId *string           `pulumi:"siteId"`
	Tags   map[string]string `pulumi:"tags"`
}

A collection of values returned by getDevices.

func GetDevices

func GetDevices(ctx *pulumi.Context, args *GetDevicesArgs, opts ...pulumi.InvokeOption) (*GetDevicesResult, error)

Provides details about existing Network Manager devices.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v7/go/aws/networkmanager"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := networkmanager.GetDevices(ctx, &networkmanager.GetDevicesArgs{
			GlobalNetworkId: globalNetworkId,
			Tags: map[string]interface{}{
				"Env": "test",
			},
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetDevicesResultOutput

type GetDevicesResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getDevices.

func (GetDevicesResultOutput) ElementType

func (GetDevicesResultOutput) ElementType() reflect.Type

func (GetDevicesResultOutput) GlobalNetworkId

func (o GetDevicesResultOutput) GlobalNetworkId() pulumi.StringOutput

func (GetDevicesResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetDevicesResultOutput) Ids

IDs of the devices.

func (GetDevicesResultOutput) SiteId

func (GetDevicesResultOutput) Tags

func (GetDevicesResultOutput) ToGetDevicesResultOutput

func (o GetDevicesResultOutput) ToGetDevicesResultOutput() GetDevicesResultOutput

func (GetDevicesResultOutput) ToGetDevicesResultOutputWithContext

func (o GetDevicesResultOutput) ToGetDevicesResultOutputWithContext(ctx context.Context) GetDevicesResultOutput

type GetGlobalNetworksArgs

type GetGlobalNetworksArgs struct {
	// Restricts the list to the global networks with these tags.
	Tags map[string]string `pulumi:"tags"`
}

A collection of arguments for invoking getGlobalNetworks.

type GetGlobalNetworksOutputArgs

type GetGlobalNetworksOutputArgs struct {
	// Restricts the list to the global networks with these tags.
	Tags pulumi.StringMapInput `pulumi:"tags"`
}

A collection of arguments for invoking getGlobalNetworks.

func (GetGlobalNetworksOutputArgs) ElementType

type GetGlobalNetworksResult

type GetGlobalNetworksResult struct {
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// IDs of the global networks.
	Ids  []string          `pulumi:"ids"`
	Tags map[string]string `pulumi:"tags"`
}

A collection of values returned by getGlobalNetworks.

func GetGlobalNetworks

func GetGlobalNetworks(ctx *pulumi.Context, args *GetGlobalNetworksArgs, opts ...pulumi.InvokeOption) (*GetGlobalNetworksResult, error)

Provides details about existing Network Manager global networks.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v7/go/aws/networkmanager"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := networkmanager.GetGlobalNetworks(ctx, &networkmanager.GetGlobalNetworksArgs{
			Tags: map[string]interface{}{
				"Env": "test",
			},
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetGlobalNetworksResultOutput

type GetGlobalNetworksResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getGlobalNetworks.

func (GetGlobalNetworksResultOutput) ElementType

func (GetGlobalNetworksResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetGlobalNetworksResultOutput) Ids

IDs of the global networks.

func (GetGlobalNetworksResultOutput) Tags

func (GetGlobalNetworksResultOutput) ToGetGlobalNetworksResultOutput

func (o GetGlobalNetworksResultOutput) ToGetGlobalNetworksResultOutput() GetGlobalNetworksResultOutput

func (GetGlobalNetworksResultOutput) ToGetGlobalNetworksResultOutputWithContext

func (o GetGlobalNetworksResultOutput) ToGetGlobalNetworksResultOutputWithContext(ctx context.Context) GetGlobalNetworksResultOutput

type GetLinkBandwidth

type GetLinkBandwidth struct {
	// Download speed in Mbps.
	DownloadSpeed int `pulumi:"downloadSpeed"`
	// Upload speed in Mbps.
	UploadSpeed int `pulumi:"uploadSpeed"`
}

type GetLinkBandwidthArgs

type GetLinkBandwidthArgs struct {
	// Download speed in Mbps.
	DownloadSpeed pulumi.IntInput `pulumi:"downloadSpeed"`
	// Upload speed in Mbps.
	UploadSpeed pulumi.IntInput `pulumi:"uploadSpeed"`
}

func (GetLinkBandwidthArgs) ElementType

func (GetLinkBandwidthArgs) ElementType() reflect.Type

func (GetLinkBandwidthArgs) ToGetLinkBandwidthOutput

func (i GetLinkBandwidthArgs) ToGetLinkBandwidthOutput() GetLinkBandwidthOutput

func (GetLinkBandwidthArgs) ToGetLinkBandwidthOutputWithContext

func (i GetLinkBandwidthArgs) ToGetLinkBandwidthOutputWithContext(ctx context.Context) GetLinkBandwidthOutput

type GetLinkBandwidthArray

type GetLinkBandwidthArray []GetLinkBandwidthInput

func (GetLinkBandwidthArray) ElementType

func (GetLinkBandwidthArray) ElementType() reflect.Type

func (GetLinkBandwidthArray) ToGetLinkBandwidthArrayOutput

func (i GetLinkBandwidthArray) ToGetLinkBandwidthArrayOutput() GetLinkBandwidthArrayOutput

func (GetLinkBandwidthArray) ToGetLinkBandwidthArrayOutputWithContext

func (i GetLinkBandwidthArray) ToGetLinkBandwidthArrayOutputWithContext(ctx context.Context) GetLinkBandwidthArrayOutput

type GetLinkBandwidthArrayInput

type GetLinkBandwidthArrayInput interface {
	pulumi.Input

	ToGetLinkBandwidthArrayOutput() GetLinkBandwidthArrayOutput
	ToGetLinkBandwidthArrayOutputWithContext(context.Context) GetLinkBandwidthArrayOutput
}

GetLinkBandwidthArrayInput is an input type that accepts GetLinkBandwidthArray and GetLinkBandwidthArrayOutput values. You can construct a concrete instance of `GetLinkBandwidthArrayInput` via:

GetLinkBandwidthArray{ GetLinkBandwidthArgs{...} }

type GetLinkBandwidthArrayOutput

type GetLinkBandwidthArrayOutput struct{ *pulumi.OutputState }

func (GetLinkBandwidthArrayOutput) ElementType

func (GetLinkBandwidthArrayOutput) Index

func (GetLinkBandwidthArrayOutput) ToGetLinkBandwidthArrayOutput

func (o GetLinkBandwidthArrayOutput) ToGetLinkBandwidthArrayOutput() GetLinkBandwidthArrayOutput

func (GetLinkBandwidthArrayOutput) ToGetLinkBandwidthArrayOutputWithContext

func (o GetLinkBandwidthArrayOutput) ToGetLinkBandwidthArrayOutputWithContext(ctx context.Context) GetLinkBandwidthArrayOutput

type GetLinkBandwidthInput

type GetLinkBandwidthInput interface {
	pulumi.Input

	ToGetLinkBandwidthOutput() GetLinkBandwidthOutput
	ToGetLinkBandwidthOutputWithContext(context.Context) GetLinkBandwidthOutput
}

GetLinkBandwidthInput is an input type that accepts GetLinkBandwidthArgs and GetLinkBandwidthOutput values. You can construct a concrete instance of `GetLinkBandwidthInput` via:

GetLinkBandwidthArgs{...}

type GetLinkBandwidthOutput

type GetLinkBandwidthOutput struct{ *pulumi.OutputState }

func (GetLinkBandwidthOutput) DownloadSpeed

func (o GetLinkBandwidthOutput) DownloadSpeed() pulumi.IntOutput

Download speed in Mbps.

func (GetLinkBandwidthOutput) ElementType

func (GetLinkBandwidthOutput) ElementType() reflect.Type

func (GetLinkBandwidthOutput) ToGetLinkBandwidthOutput

func (o GetLinkBandwidthOutput) ToGetLinkBandwidthOutput() GetLinkBandwidthOutput

func (GetLinkBandwidthOutput) ToGetLinkBandwidthOutputWithContext

func (o GetLinkBandwidthOutput) ToGetLinkBandwidthOutputWithContext(ctx context.Context) GetLinkBandwidthOutput

func (GetLinkBandwidthOutput) UploadSpeed

func (o GetLinkBandwidthOutput) UploadSpeed() pulumi.IntOutput

Upload speed in Mbps.

type GetLinksArgs

type GetLinksArgs struct {
	// ID of the Global Network of the links to retrieve.
	GlobalNetworkId string `pulumi:"globalNetworkId"`
	// Link provider to retrieve.
	ProviderName *string `pulumi:"providerName"`
	// ID of the site of the links to retrieve.
	SiteId *string `pulumi:"siteId"`
	// Restricts the list to the links with these tags.
	Tags map[string]string `pulumi:"tags"`
	// Link type to retrieve.
	Type *string `pulumi:"type"`
}

A collection of arguments for invoking getLinks.

type GetLinksOutputArgs

type GetLinksOutputArgs struct {
	// ID of the Global Network of the links to retrieve.
	GlobalNetworkId pulumi.StringInput `pulumi:"globalNetworkId"`
	// Link provider to retrieve.
	ProviderName pulumi.StringPtrInput `pulumi:"providerName"`
	// ID of the site of the links to retrieve.
	SiteId pulumi.StringPtrInput `pulumi:"siteId"`
	// Restricts the list to the links with these tags.
	Tags pulumi.StringMapInput `pulumi:"tags"`
	// Link type to retrieve.
	Type pulumi.StringPtrInput `pulumi:"type"`
}

A collection of arguments for invoking getLinks.

func (GetLinksOutputArgs) ElementType

func (GetLinksOutputArgs) ElementType() reflect.Type

type GetLinksResult

type GetLinksResult struct {
	GlobalNetworkId string `pulumi:"globalNetworkId"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// IDs of the links.
	Ids          []string          `pulumi:"ids"`
	ProviderName *string           `pulumi:"providerName"`
	SiteId       *string           `pulumi:"siteId"`
	Tags         map[string]string `pulumi:"tags"`
	Type         *string           `pulumi:"type"`
}

A collection of values returned by getLinks.

func GetLinks(ctx *pulumi.Context, args *GetLinksArgs, opts ...pulumi.InvokeOption) (*GetLinksResult, error)

Provides details about existing Network Manager links.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v7/go/aws/networkmanager"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := networkmanager.GetLinks(ctx, &networkmanager.GetLinksArgs{
			GlobalNetworkId: globalNetworkId,
			Tags: map[string]interface{}{
				"Env": "test",
			},
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetLinksResultOutput

type GetLinksResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getLinks.

func (GetLinksResultOutput) ElementType

func (GetLinksResultOutput) ElementType() reflect.Type

func (GetLinksResultOutput) GlobalNetworkId

func (o GetLinksResultOutput) GlobalNetworkId() pulumi.StringOutput

func (GetLinksResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetLinksResultOutput) Ids

IDs of the links.

func (GetLinksResultOutput) ProviderName

func (o GetLinksResultOutput) ProviderName() pulumi.StringPtrOutput

func (GetLinksResultOutput) SiteId

func (GetLinksResultOutput) Tags

func (GetLinksResultOutput) ToGetLinksResultOutput

func (o GetLinksResultOutput) ToGetLinksResultOutput() GetLinksResultOutput

func (GetLinksResultOutput) ToGetLinksResultOutputWithContext

func (o GetLinksResultOutput) ToGetLinksResultOutputWithContext(ctx context.Context) GetLinksResultOutput

func (GetLinksResultOutput) Type

type GetSiteLocation

type GetSiteLocation struct {
	// Address of the location.
	Address string `pulumi:"address"`
	// Latitude of the location.
	Latitude string `pulumi:"latitude"`
	// Longitude of the location.
	Longitude string `pulumi:"longitude"`
}

type GetSiteLocationArgs

type GetSiteLocationArgs struct {
	// Address of the location.
	Address pulumi.StringInput `pulumi:"address"`
	// Latitude of the location.
	Latitude pulumi.StringInput `pulumi:"latitude"`
	// Longitude of the location.
	Longitude pulumi.StringInput `pulumi:"longitude"`
}

func (GetSiteLocationArgs) ElementType

func (GetSiteLocationArgs) ElementType() reflect.Type

func (GetSiteLocationArgs) ToGetSiteLocationOutput

func (i GetSiteLocationArgs) ToGetSiteLocationOutput() GetSiteLocationOutput

func (GetSiteLocationArgs) ToGetSiteLocationOutputWithContext

func (i GetSiteLocationArgs) ToGetSiteLocationOutputWithContext(ctx context.Context) GetSiteLocationOutput

type GetSiteLocationArray

type GetSiteLocationArray []GetSiteLocationInput

func (GetSiteLocationArray) ElementType

func (GetSiteLocationArray) ElementType() reflect.Type

func (GetSiteLocationArray) ToGetSiteLocationArrayOutput

func (i GetSiteLocationArray) ToGetSiteLocationArrayOutput() GetSiteLocationArrayOutput

func (GetSiteLocationArray) ToGetSiteLocationArrayOutputWithContext

func (i GetSiteLocationArray) ToGetSiteLocationArrayOutputWithContext(ctx context.Context) GetSiteLocationArrayOutput

type GetSiteLocationArrayInput

type GetSiteLocationArrayInput interface {
	pulumi.Input

	ToGetSiteLocationArrayOutput() GetSiteLocationArrayOutput
	ToGetSiteLocationArrayOutputWithContext(context.Context) GetSiteLocationArrayOutput
}

GetSiteLocationArrayInput is an input type that accepts GetSiteLocationArray and GetSiteLocationArrayOutput values. You can construct a concrete instance of `GetSiteLocationArrayInput` via:

GetSiteLocationArray{ GetSiteLocationArgs{...} }

type GetSiteLocationArrayOutput

type GetSiteLocationArrayOutput struct{ *pulumi.OutputState }

func (GetSiteLocationArrayOutput) ElementType

func (GetSiteLocationArrayOutput) ElementType() reflect.Type

func (GetSiteLocationArrayOutput) Index

func (GetSiteLocationArrayOutput) ToGetSiteLocationArrayOutput

func (o GetSiteLocationArrayOutput) ToGetSiteLocationArrayOutput() GetSiteLocationArrayOutput

func (GetSiteLocationArrayOutput) ToGetSiteLocationArrayOutputWithContext

func (o GetSiteLocationArrayOutput) ToGetSiteLocationArrayOutputWithContext(ctx context.Context) GetSiteLocationArrayOutput

type GetSiteLocationInput

type GetSiteLocationInput interface {
	pulumi.Input

	ToGetSiteLocationOutput() GetSiteLocationOutput
	ToGetSiteLocationOutputWithContext(context.Context) GetSiteLocationOutput
}

GetSiteLocationInput is an input type that accepts GetSiteLocationArgs and GetSiteLocationOutput values. You can construct a concrete instance of `GetSiteLocationInput` via:

GetSiteLocationArgs{...}

type GetSiteLocationOutput

type GetSiteLocationOutput struct{ *pulumi.OutputState }

func (GetSiteLocationOutput) Address

Address of the location.

func (GetSiteLocationOutput) ElementType

func (GetSiteLocationOutput) ElementType() reflect.Type

func (GetSiteLocationOutput) Latitude

Latitude of the location.

func (GetSiteLocationOutput) Longitude

Longitude of the location.

func (GetSiteLocationOutput) ToGetSiteLocationOutput

func (o GetSiteLocationOutput) ToGetSiteLocationOutput() GetSiteLocationOutput

func (GetSiteLocationOutput) ToGetSiteLocationOutputWithContext

func (o GetSiteLocationOutput) ToGetSiteLocationOutputWithContext(ctx context.Context) GetSiteLocationOutput

type GetSitesArgs

type GetSitesArgs struct {
	// ID of the Global Network of the sites to retrieve.
	GlobalNetworkId string `pulumi:"globalNetworkId"`
	// Restricts the list to the sites with these tags.
	Tags map[string]string `pulumi:"tags"`
}

A collection of arguments for invoking getSites.

type GetSitesOutputArgs

type GetSitesOutputArgs struct {
	// ID of the Global Network of the sites to retrieve.
	GlobalNetworkId pulumi.StringInput `pulumi:"globalNetworkId"`
	// Restricts the list to the sites with these tags.
	Tags pulumi.StringMapInput `pulumi:"tags"`
}

A collection of arguments for invoking getSites.

func (GetSitesOutputArgs) ElementType

func (GetSitesOutputArgs) ElementType() reflect.Type

type GetSitesResult

type GetSitesResult struct {
	GlobalNetworkId string `pulumi:"globalNetworkId"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// IDs of the sites.
	Ids  []string          `pulumi:"ids"`
	Tags map[string]string `pulumi:"tags"`
}

A collection of values returned by getSites.

func GetSites

func GetSites(ctx *pulumi.Context, args *GetSitesArgs, opts ...pulumi.InvokeOption) (*GetSitesResult, error)

Provides details about existing Network Manager sites.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v7/go/aws/networkmanager"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := networkmanager.GetSites(ctx, &networkmanager.GetSitesArgs{
			GlobalNetworkId: globalNetworkId,
			Tags: map[string]interface{}{
				"Env": "test",
			},
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetSitesResultOutput

type GetSitesResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getSites.

func (GetSitesResultOutput) ElementType

func (GetSitesResultOutput) ElementType() reflect.Type

func (GetSitesResultOutput) GlobalNetworkId

func (o GetSitesResultOutput) GlobalNetworkId() pulumi.StringOutput

func (GetSitesResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetSitesResultOutput) Ids

IDs of the sites.

func (GetSitesResultOutput) Tags

func (GetSitesResultOutput) ToGetSitesResultOutput

func (o GetSitesResultOutput) ToGetSitesResultOutput() GetSitesResultOutput

func (GetSitesResultOutput) ToGetSitesResultOutputWithContext

func (o GetSitesResultOutput) ToGetSitesResultOutputWithContext(ctx context.Context) GetSitesResultOutput

type GlobalNetwork

type GlobalNetwork struct {
	pulumi.CustomResourceState

	// Global Network ARN.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// Description of the Global Network.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// Key-value tags for the Global Network. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
}

Manages a Network Manager Global Network.

Use this resource to create and manage a global network, which is a single private network that acts as the high-level container for your network objects.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v7/go/aws/networkmanager"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

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

```

## Import

Using `pulumi import`, import `aws_networkmanager_global_network` using the global network ID. For example:

```sh $ pulumi import aws:networkmanager/globalNetwork:GlobalNetwork example global-network-0d47f6t230mz46dy4 ```

func GetGlobalNetwork

func GetGlobalNetwork(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *GlobalNetworkState, opts ...pulumi.ResourceOption) (*GlobalNetwork, error)

GetGlobalNetwork gets an existing GlobalNetwork 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 NewGlobalNetwork

func NewGlobalNetwork(ctx *pulumi.Context,
	name string, args *GlobalNetworkArgs, opts ...pulumi.ResourceOption) (*GlobalNetwork, error)

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

func (*GlobalNetwork) ElementType

func (*GlobalNetwork) ElementType() reflect.Type

func (*GlobalNetwork) ToGlobalNetworkOutput

func (i *GlobalNetwork) ToGlobalNetworkOutput() GlobalNetworkOutput

func (*GlobalNetwork) ToGlobalNetworkOutputWithContext

func (i *GlobalNetwork) ToGlobalNetworkOutputWithContext(ctx context.Context) GlobalNetworkOutput

type GlobalNetworkArgs

type GlobalNetworkArgs struct {
	// Description of the Global Network.
	Description pulumi.StringPtrInput
	// Key-value tags for the Global Network. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
}

The set of arguments for constructing a GlobalNetwork resource.

func (GlobalNetworkArgs) ElementType

func (GlobalNetworkArgs) ElementType() reflect.Type

type GlobalNetworkArray

type GlobalNetworkArray []GlobalNetworkInput

func (GlobalNetworkArray) ElementType

func (GlobalNetworkArray) ElementType() reflect.Type

func (GlobalNetworkArray) ToGlobalNetworkArrayOutput

func (i GlobalNetworkArray) ToGlobalNetworkArrayOutput() GlobalNetworkArrayOutput

func (GlobalNetworkArray) ToGlobalNetworkArrayOutputWithContext

func (i GlobalNetworkArray) ToGlobalNetworkArrayOutputWithContext(ctx context.Context) GlobalNetworkArrayOutput

type GlobalNetworkArrayInput

type GlobalNetworkArrayInput interface {
	pulumi.Input

	ToGlobalNetworkArrayOutput() GlobalNetworkArrayOutput
	ToGlobalNetworkArrayOutputWithContext(context.Context) GlobalNetworkArrayOutput
}

GlobalNetworkArrayInput is an input type that accepts GlobalNetworkArray and GlobalNetworkArrayOutput values. You can construct a concrete instance of `GlobalNetworkArrayInput` via:

GlobalNetworkArray{ GlobalNetworkArgs{...} }

type GlobalNetworkArrayOutput

type GlobalNetworkArrayOutput struct{ *pulumi.OutputState }

func (GlobalNetworkArrayOutput) ElementType

func (GlobalNetworkArrayOutput) ElementType() reflect.Type

func (GlobalNetworkArrayOutput) Index

func (GlobalNetworkArrayOutput) ToGlobalNetworkArrayOutput

func (o GlobalNetworkArrayOutput) ToGlobalNetworkArrayOutput() GlobalNetworkArrayOutput

func (GlobalNetworkArrayOutput) ToGlobalNetworkArrayOutputWithContext

func (o GlobalNetworkArrayOutput) ToGlobalNetworkArrayOutputWithContext(ctx context.Context) GlobalNetworkArrayOutput

type GlobalNetworkInput

type GlobalNetworkInput interface {
	pulumi.Input

	ToGlobalNetworkOutput() GlobalNetworkOutput
	ToGlobalNetworkOutputWithContext(ctx context.Context) GlobalNetworkOutput
}

type GlobalNetworkMap

type GlobalNetworkMap map[string]GlobalNetworkInput

func (GlobalNetworkMap) ElementType

func (GlobalNetworkMap) ElementType() reflect.Type

func (GlobalNetworkMap) ToGlobalNetworkMapOutput

func (i GlobalNetworkMap) ToGlobalNetworkMapOutput() GlobalNetworkMapOutput

func (GlobalNetworkMap) ToGlobalNetworkMapOutputWithContext

func (i GlobalNetworkMap) ToGlobalNetworkMapOutputWithContext(ctx context.Context) GlobalNetworkMapOutput

type GlobalNetworkMapInput

type GlobalNetworkMapInput interface {
	pulumi.Input

	ToGlobalNetworkMapOutput() GlobalNetworkMapOutput
	ToGlobalNetworkMapOutputWithContext(context.Context) GlobalNetworkMapOutput
}

GlobalNetworkMapInput is an input type that accepts GlobalNetworkMap and GlobalNetworkMapOutput values. You can construct a concrete instance of `GlobalNetworkMapInput` via:

GlobalNetworkMap{ "key": GlobalNetworkArgs{...} }

type GlobalNetworkMapOutput

type GlobalNetworkMapOutput struct{ *pulumi.OutputState }

func (GlobalNetworkMapOutput) ElementType

func (GlobalNetworkMapOutput) ElementType() reflect.Type

func (GlobalNetworkMapOutput) MapIndex

func (GlobalNetworkMapOutput) ToGlobalNetworkMapOutput

func (o GlobalNetworkMapOutput) ToGlobalNetworkMapOutput() GlobalNetworkMapOutput

func (GlobalNetworkMapOutput) ToGlobalNetworkMapOutputWithContext

func (o GlobalNetworkMapOutput) ToGlobalNetworkMapOutputWithContext(ctx context.Context) GlobalNetworkMapOutput

type GlobalNetworkOutput

type GlobalNetworkOutput struct{ *pulumi.OutputState }

func (GlobalNetworkOutput) Arn

Global Network ARN.

func (GlobalNetworkOutput) Description

func (o GlobalNetworkOutput) Description() pulumi.StringPtrOutput

Description of the Global Network.

func (GlobalNetworkOutput) ElementType

func (GlobalNetworkOutput) ElementType() reflect.Type

func (GlobalNetworkOutput) Tags

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

func (GlobalNetworkOutput) TagsAll

Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.

func (GlobalNetworkOutput) ToGlobalNetworkOutput

func (o GlobalNetworkOutput) ToGlobalNetworkOutput() GlobalNetworkOutput

func (GlobalNetworkOutput) ToGlobalNetworkOutputWithContext

func (o GlobalNetworkOutput) ToGlobalNetworkOutputWithContext(ctx context.Context) GlobalNetworkOutput

type GlobalNetworkState

type GlobalNetworkState struct {
	// Global Network ARN.
	Arn pulumi.StringPtrInput
	// Description of the Global Network.
	Description pulumi.StringPtrInput
	// Key-value tags for the Global Network. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	TagsAll pulumi.StringMapInput
}

func (GlobalNetworkState) ElementType

func (GlobalNetworkState) ElementType() reflect.Type
type Link struct {
	pulumi.CustomResourceState

	// Link ARN.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// Upload speed and download speed in Mbps. See below.
	Bandwidth LinkBandwidthOutput `pulumi:"bandwidth"`
	// Description of the link.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// ID of the global network.
	GlobalNetworkId pulumi.StringOutput `pulumi:"globalNetworkId"`
	// Provider of the link.
	ProviderName pulumi.StringPtrOutput `pulumi:"providerName"`
	// ID of the site.
	//
	// The following arguments are optional:
	SiteId pulumi.StringOutput `pulumi:"siteId"`
	// Key-value tags for the link. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
	// Type of the link.
	Type pulumi.StringPtrOutput `pulumi:"type"`
}

Manages a Network Manager link. Use this resource to create a link for a site.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v7/go/aws/networkmanager"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := networkmanager.NewLink(ctx, "example", &networkmanager.LinkArgs{
			GlobalNetworkId: pulumi.Any(exampleAwsNetworkmanagerGlobalNetwork.Id),
			SiteId:          pulumi.Any(exampleAwsNetworkmanagerSite.Id),
			Bandwidth: &networkmanager.LinkBandwidthArgs{
				UploadSpeed:   pulumi.Int(10),
				DownloadSpeed: pulumi.Int(50),
			},
			ProviderName: pulumi.String("MegaCorp"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Using `pulumi import`, import `aws_networkmanager_link` using the link ARN. For example:

```sh $ pulumi import aws:networkmanager/link:Link example arn:aws:networkmanager::123456789012:link/global-network-0d47f6t230mz46dy4/link-444555aaabbb11223 ```

func GetLink(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *LinkState, opts ...pulumi.ResourceOption) (*Link, error)

GetLink gets an existing Link 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 NewLink(ctx *pulumi.Context,
	name string, args *LinkArgs, opts ...pulumi.ResourceOption) (*Link, error)

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

func (*Link) ElementType

func (*Link) ElementType() reflect.Type

func (*Link) ToLinkOutput

func (i *Link) ToLinkOutput() LinkOutput

func (*Link) ToLinkOutputWithContext

func (i *Link) ToLinkOutputWithContext(ctx context.Context) LinkOutput

type LinkArgs

type LinkArgs struct {
	// Upload speed and download speed in Mbps. See below.
	Bandwidth LinkBandwidthInput
	// Description of the link.
	Description pulumi.StringPtrInput
	// ID of the global network.
	GlobalNetworkId pulumi.StringInput
	// Provider of the link.
	ProviderName pulumi.StringPtrInput
	// ID of the site.
	//
	// The following arguments are optional:
	SiteId pulumi.StringInput
	// Key-value tags for the link. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// Type of the link.
	Type pulumi.StringPtrInput
}

The set of arguments for constructing a Link resource.

func (LinkArgs) ElementType

func (LinkArgs) ElementType() reflect.Type

type LinkArray

type LinkArray []LinkInput

func (LinkArray) ElementType

func (LinkArray) ElementType() reflect.Type

func (LinkArray) ToLinkArrayOutput

func (i LinkArray) ToLinkArrayOutput() LinkArrayOutput

func (LinkArray) ToLinkArrayOutputWithContext

func (i LinkArray) ToLinkArrayOutputWithContext(ctx context.Context) LinkArrayOutput

type LinkArrayInput

type LinkArrayInput interface {
	pulumi.Input

	ToLinkArrayOutput() LinkArrayOutput
	ToLinkArrayOutputWithContext(context.Context) LinkArrayOutput
}

LinkArrayInput is an input type that accepts LinkArray and LinkArrayOutput values. You can construct a concrete instance of `LinkArrayInput` via:

LinkArray{ LinkArgs{...} }

type LinkArrayOutput

type LinkArrayOutput struct{ *pulumi.OutputState }

func (LinkArrayOutput) ElementType

func (LinkArrayOutput) ElementType() reflect.Type

func (LinkArrayOutput) Index

func (LinkArrayOutput) ToLinkArrayOutput

func (o LinkArrayOutput) ToLinkArrayOutput() LinkArrayOutput

func (LinkArrayOutput) ToLinkArrayOutputWithContext

func (o LinkArrayOutput) ToLinkArrayOutputWithContext(ctx context.Context) LinkArrayOutput

type LinkAssociation

type LinkAssociation struct {
	pulumi.CustomResourceState

	// ID of the device.
	DeviceId pulumi.StringOutput `pulumi:"deviceId"`
	// ID of the global network.
	GlobalNetworkId pulumi.StringOutput `pulumi:"globalNetworkId"`
	// ID of the link.
	LinkId pulumi.StringOutput `pulumi:"linkId"`
}

Manages a Network Manager link association. Associates a link to a device. A device can be associated to multiple links and a link can be associated to multiple devices. The device and link must be in the same global network and the same site.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v7/go/aws/networkmanager"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := networkmanager.NewLinkAssociation(ctx, "example", &networkmanager.LinkAssociationArgs{
			GlobalNetworkId: pulumi.Any(exampleAwsNetworkmanagerGlobalNetwork.Id),
			LinkId:          pulumi.Any(exampleAwsNetworkmanagerLink.Id),
			DeviceId:        pulumi.Any(exampleAwsNetworkmanagerDevice.Id),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Using `pulumi import`, import `aws_networkmanager_link_association` using the global network ID, link ID and device ID. For example:

```sh $ pulumi import aws:networkmanager/linkAssociation:LinkAssociation example global-network-0d47f6t230mz46dy4,link-444555aaabbb11223,device-07f6fd08867abc123 ```

func GetLinkAssociation

func GetLinkAssociation(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *LinkAssociationState, opts ...pulumi.ResourceOption) (*LinkAssociation, error)

GetLinkAssociation gets an existing LinkAssociation 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 NewLinkAssociation

func NewLinkAssociation(ctx *pulumi.Context,
	name string, args *LinkAssociationArgs, opts ...pulumi.ResourceOption) (*LinkAssociation, error)

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

func (*LinkAssociation) ElementType

func (*LinkAssociation) ElementType() reflect.Type

func (*LinkAssociation) ToLinkAssociationOutput

func (i *LinkAssociation) ToLinkAssociationOutput() LinkAssociationOutput

func (*LinkAssociation) ToLinkAssociationOutputWithContext

func (i *LinkAssociation) ToLinkAssociationOutputWithContext(ctx context.Context) LinkAssociationOutput

type LinkAssociationArgs

type LinkAssociationArgs struct {
	// ID of the device.
	DeviceId pulumi.StringInput
	// ID of the global network.
	GlobalNetworkId pulumi.StringInput
	// ID of the link.
	LinkId pulumi.StringInput
}

The set of arguments for constructing a LinkAssociation resource.

func (LinkAssociationArgs) ElementType

func (LinkAssociationArgs) ElementType() reflect.Type

type LinkAssociationArray

type LinkAssociationArray []LinkAssociationInput

func (LinkAssociationArray) ElementType

func (LinkAssociationArray) ElementType() reflect.Type

func (LinkAssociationArray) ToLinkAssociationArrayOutput

func (i LinkAssociationArray) ToLinkAssociationArrayOutput() LinkAssociationArrayOutput

func (LinkAssociationArray) ToLinkAssociationArrayOutputWithContext

func (i LinkAssociationArray) ToLinkAssociationArrayOutputWithContext(ctx context.Context) LinkAssociationArrayOutput

type LinkAssociationArrayInput

type LinkAssociationArrayInput interface {
	pulumi.Input

	ToLinkAssociationArrayOutput() LinkAssociationArrayOutput
	ToLinkAssociationArrayOutputWithContext(context.Context) LinkAssociationArrayOutput
}

LinkAssociationArrayInput is an input type that accepts LinkAssociationArray and LinkAssociationArrayOutput values. You can construct a concrete instance of `LinkAssociationArrayInput` via:

LinkAssociationArray{ LinkAssociationArgs{...} }

type LinkAssociationArrayOutput

type LinkAssociationArrayOutput struct{ *pulumi.OutputState }

func (LinkAssociationArrayOutput) ElementType

func (LinkAssociationArrayOutput) ElementType() reflect.Type

func (LinkAssociationArrayOutput) Index

func (LinkAssociationArrayOutput) ToLinkAssociationArrayOutput

func (o LinkAssociationArrayOutput) ToLinkAssociationArrayOutput() LinkAssociationArrayOutput

func (LinkAssociationArrayOutput) ToLinkAssociationArrayOutputWithContext

func (o LinkAssociationArrayOutput) ToLinkAssociationArrayOutputWithContext(ctx context.Context) LinkAssociationArrayOutput

type LinkAssociationInput

type LinkAssociationInput interface {
	pulumi.Input

	ToLinkAssociationOutput() LinkAssociationOutput
	ToLinkAssociationOutputWithContext(ctx context.Context) LinkAssociationOutput
}

type LinkAssociationMap

type LinkAssociationMap map[string]LinkAssociationInput

func (LinkAssociationMap) ElementType

func (LinkAssociationMap) ElementType() reflect.Type

func (LinkAssociationMap) ToLinkAssociationMapOutput

func (i LinkAssociationMap) ToLinkAssociationMapOutput() LinkAssociationMapOutput

func (LinkAssociationMap) ToLinkAssociationMapOutputWithContext

func (i LinkAssociationMap) ToLinkAssociationMapOutputWithContext(ctx context.Context) LinkAssociationMapOutput

type LinkAssociationMapInput

type LinkAssociationMapInput interface {
	pulumi.Input

	ToLinkAssociationMapOutput() LinkAssociationMapOutput
	ToLinkAssociationMapOutputWithContext(context.Context) LinkAssociationMapOutput
}

LinkAssociationMapInput is an input type that accepts LinkAssociationMap and LinkAssociationMapOutput values. You can construct a concrete instance of `LinkAssociationMapInput` via:

LinkAssociationMap{ "key": LinkAssociationArgs{...} }

type LinkAssociationMapOutput

type LinkAssociationMapOutput struct{ *pulumi.OutputState }

func (LinkAssociationMapOutput) ElementType

func (LinkAssociationMapOutput) ElementType() reflect.Type

func (LinkAssociationMapOutput) MapIndex

func (LinkAssociationMapOutput) ToLinkAssociationMapOutput

func (o LinkAssociationMapOutput) ToLinkAssociationMapOutput() LinkAssociationMapOutput

func (LinkAssociationMapOutput) ToLinkAssociationMapOutputWithContext

func (o LinkAssociationMapOutput) ToLinkAssociationMapOutputWithContext(ctx context.Context) LinkAssociationMapOutput

type LinkAssociationOutput

type LinkAssociationOutput struct{ *pulumi.OutputState }

func (LinkAssociationOutput) DeviceId

ID of the device.

func (LinkAssociationOutput) ElementType

func (LinkAssociationOutput) ElementType() reflect.Type

func (LinkAssociationOutput) GlobalNetworkId

func (o LinkAssociationOutput) GlobalNetworkId() pulumi.StringOutput

ID of the global network.

func (LinkAssociationOutput) LinkId

ID of the link.

func (LinkAssociationOutput) ToLinkAssociationOutput

func (o LinkAssociationOutput) ToLinkAssociationOutput() LinkAssociationOutput

func (LinkAssociationOutput) ToLinkAssociationOutputWithContext

func (o LinkAssociationOutput) ToLinkAssociationOutputWithContext(ctx context.Context) LinkAssociationOutput

type LinkAssociationState

type LinkAssociationState struct {
	// ID of the device.
	DeviceId pulumi.StringPtrInput
	// ID of the global network.
	GlobalNetworkId pulumi.StringPtrInput
	// ID of the link.
	LinkId pulumi.StringPtrInput
}

func (LinkAssociationState) ElementType

func (LinkAssociationState) ElementType() reflect.Type

type LinkBandwidth

type LinkBandwidth struct {
	// Download speed in Mbps.
	DownloadSpeed *int `pulumi:"downloadSpeed"`
	// Upload speed in Mbps.
	UploadSpeed *int `pulumi:"uploadSpeed"`
}

type LinkBandwidthArgs

type LinkBandwidthArgs struct {
	// Download speed in Mbps.
	DownloadSpeed pulumi.IntPtrInput `pulumi:"downloadSpeed"`
	// Upload speed in Mbps.
	UploadSpeed pulumi.IntPtrInput `pulumi:"uploadSpeed"`
}

func (LinkBandwidthArgs) ElementType

func (LinkBandwidthArgs) ElementType() reflect.Type

func (LinkBandwidthArgs) ToLinkBandwidthOutput

func (i LinkBandwidthArgs) ToLinkBandwidthOutput() LinkBandwidthOutput

func (LinkBandwidthArgs) ToLinkBandwidthOutputWithContext

func (i LinkBandwidthArgs) ToLinkBandwidthOutputWithContext(ctx context.Context) LinkBandwidthOutput

func (LinkBandwidthArgs) ToLinkBandwidthPtrOutput

func (i LinkBandwidthArgs) ToLinkBandwidthPtrOutput() LinkBandwidthPtrOutput

func (LinkBandwidthArgs) ToLinkBandwidthPtrOutputWithContext

func (i LinkBandwidthArgs) ToLinkBandwidthPtrOutputWithContext(ctx context.Context) LinkBandwidthPtrOutput

type LinkBandwidthInput

type LinkBandwidthInput interface {
	pulumi.Input

	ToLinkBandwidthOutput() LinkBandwidthOutput
	ToLinkBandwidthOutputWithContext(context.Context) LinkBandwidthOutput
}

LinkBandwidthInput is an input type that accepts LinkBandwidthArgs and LinkBandwidthOutput values. You can construct a concrete instance of `LinkBandwidthInput` via:

LinkBandwidthArgs{...}

type LinkBandwidthOutput

type LinkBandwidthOutput struct{ *pulumi.OutputState }

func (LinkBandwidthOutput) DownloadSpeed

func (o LinkBandwidthOutput) DownloadSpeed() pulumi.IntPtrOutput

Download speed in Mbps.

func (LinkBandwidthOutput) ElementType

func (LinkBandwidthOutput) ElementType() reflect.Type

func (LinkBandwidthOutput) ToLinkBandwidthOutput

func (o LinkBandwidthOutput) ToLinkBandwidthOutput() LinkBandwidthOutput

func (LinkBandwidthOutput) ToLinkBandwidthOutputWithContext

func (o LinkBandwidthOutput) ToLinkBandwidthOutputWithContext(ctx context.Context) LinkBandwidthOutput

func (LinkBandwidthOutput) ToLinkBandwidthPtrOutput

func (o LinkBandwidthOutput) ToLinkBandwidthPtrOutput() LinkBandwidthPtrOutput

func (LinkBandwidthOutput) ToLinkBandwidthPtrOutputWithContext

func (o LinkBandwidthOutput) ToLinkBandwidthPtrOutputWithContext(ctx context.Context) LinkBandwidthPtrOutput

func (LinkBandwidthOutput) UploadSpeed

func (o LinkBandwidthOutput) UploadSpeed() pulumi.IntPtrOutput

Upload speed in Mbps.

type LinkBandwidthPtrInput

type LinkBandwidthPtrInput interface {
	pulumi.Input

	ToLinkBandwidthPtrOutput() LinkBandwidthPtrOutput
	ToLinkBandwidthPtrOutputWithContext(context.Context) LinkBandwidthPtrOutput
}

LinkBandwidthPtrInput is an input type that accepts LinkBandwidthArgs, LinkBandwidthPtr and LinkBandwidthPtrOutput values. You can construct a concrete instance of `LinkBandwidthPtrInput` via:

        LinkBandwidthArgs{...}

or:

        nil

type LinkBandwidthPtrOutput

type LinkBandwidthPtrOutput struct{ *pulumi.OutputState }

func (LinkBandwidthPtrOutput) DownloadSpeed

func (o LinkBandwidthPtrOutput) DownloadSpeed() pulumi.IntPtrOutput

Download speed in Mbps.

func (LinkBandwidthPtrOutput) Elem

func (LinkBandwidthPtrOutput) ElementType

func (LinkBandwidthPtrOutput) ElementType() reflect.Type

func (LinkBandwidthPtrOutput) ToLinkBandwidthPtrOutput

func (o LinkBandwidthPtrOutput) ToLinkBandwidthPtrOutput() LinkBandwidthPtrOutput

func (LinkBandwidthPtrOutput) ToLinkBandwidthPtrOutputWithContext

func (o LinkBandwidthPtrOutput) ToLinkBandwidthPtrOutputWithContext(ctx context.Context) LinkBandwidthPtrOutput

func (LinkBandwidthPtrOutput) UploadSpeed

func (o LinkBandwidthPtrOutput) UploadSpeed() pulumi.IntPtrOutput

Upload speed in Mbps.

type LinkInput

type LinkInput interface {
	pulumi.Input

	ToLinkOutput() LinkOutput
	ToLinkOutputWithContext(ctx context.Context) LinkOutput
}

type LinkMap

type LinkMap map[string]LinkInput

func (LinkMap) ElementType

func (LinkMap) ElementType() reflect.Type

func (LinkMap) ToLinkMapOutput

func (i LinkMap) ToLinkMapOutput() LinkMapOutput

func (LinkMap) ToLinkMapOutputWithContext

func (i LinkMap) ToLinkMapOutputWithContext(ctx context.Context) LinkMapOutput

type LinkMapInput

type LinkMapInput interface {
	pulumi.Input

	ToLinkMapOutput() LinkMapOutput
	ToLinkMapOutputWithContext(context.Context) LinkMapOutput
}

LinkMapInput is an input type that accepts LinkMap and LinkMapOutput values. You can construct a concrete instance of `LinkMapInput` via:

LinkMap{ "key": LinkArgs{...} }

type LinkMapOutput

type LinkMapOutput struct{ *pulumi.OutputState }

func (LinkMapOutput) ElementType

func (LinkMapOutput) ElementType() reflect.Type

func (LinkMapOutput) MapIndex

func (LinkMapOutput) ToLinkMapOutput

func (o LinkMapOutput) ToLinkMapOutput() LinkMapOutput

func (LinkMapOutput) ToLinkMapOutputWithContext

func (o LinkMapOutput) ToLinkMapOutputWithContext(ctx context.Context) LinkMapOutput

type LinkOutput

type LinkOutput struct{ *pulumi.OutputState }

func (LinkOutput) Arn

func (o LinkOutput) Arn() pulumi.StringOutput

Link ARN.

func (LinkOutput) Bandwidth

func (o LinkOutput) Bandwidth() LinkBandwidthOutput

Upload speed and download speed in Mbps. See below.

func (LinkOutput) Description

func (o LinkOutput) Description() pulumi.StringPtrOutput

Description of the link.

func (LinkOutput) ElementType

func (LinkOutput) ElementType() reflect.Type

func (LinkOutput) GlobalNetworkId

func (o LinkOutput) GlobalNetworkId() pulumi.StringOutput

ID of the global network.

func (LinkOutput) ProviderName

func (o LinkOutput) ProviderName() pulumi.StringPtrOutput

Provider of the link.

func (LinkOutput) SiteId

func (o LinkOutput) SiteId() pulumi.StringOutput

ID of the site.

The following arguments are optional:

func (LinkOutput) Tags

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

func (LinkOutput) TagsAll

func (o LinkOutput) TagsAll() pulumi.StringMapOutput

Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.

func (LinkOutput) ToLinkOutput

func (o LinkOutput) ToLinkOutput() LinkOutput

func (LinkOutput) ToLinkOutputWithContext

func (o LinkOutput) ToLinkOutputWithContext(ctx context.Context) LinkOutput

func (LinkOutput) Type

Type of the link.

type LinkState

type LinkState struct {
	// Link ARN.
	Arn pulumi.StringPtrInput
	// Upload speed and download speed in Mbps. See below.
	Bandwidth LinkBandwidthPtrInput
	// Description of the link.
	Description pulumi.StringPtrInput
	// ID of the global network.
	GlobalNetworkId pulumi.StringPtrInput
	// Provider of the link.
	ProviderName pulumi.StringPtrInput
	// ID of the site.
	//
	// The following arguments are optional:
	SiteId pulumi.StringPtrInput
	// Key-value tags for the link. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	TagsAll pulumi.StringMapInput
	// Type of the link.
	Type pulumi.StringPtrInput
}

func (LinkState) ElementType

func (LinkState) ElementType() reflect.Type

type LookupConnectionArgs

type LookupConnectionArgs struct {
	// ID of the specific connection to retrieve.
	ConnectionId string `pulumi:"connectionId"`
	// ID of the Global Network of the connection to retrieve.
	GlobalNetworkId string `pulumi:"globalNetworkId"`
	// Key-value tags for the connection.
	Tags map[string]string `pulumi:"tags"`
}

A collection of arguments for invoking getConnection.

type LookupConnectionOutputArgs

type LookupConnectionOutputArgs struct {
	// ID of the specific connection to retrieve.
	ConnectionId pulumi.StringInput `pulumi:"connectionId"`
	// ID of the Global Network of the connection to retrieve.
	GlobalNetworkId pulumi.StringInput `pulumi:"globalNetworkId"`
	// Key-value tags for the connection.
	Tags pulumi.StringMapInput `pulumi:"tags"`
}

A collection of arguments for invoking getConnection.

func (LookupConnectionOutputArgs) ElementType

func (LookupConnectionOutputArgs) ElementType() reflect.Type

type LookupConnectionResult

type LookupConnectionResult struct {
	// ARN of the connection.
	Arn string `pulumi:"arn"`
	// ID of the second device in the connection.
	ConnectedDeviceId string `pulumi:"connectedDeviceId"`
	// ID of the link for the second device.
	ConnectedLinkId string `pulumi:"connectedLinkId"`
	ConnectionId    string `pulumi:"connectionId"`
	// Description of the connection.
	Description string `pulumi:"description"`
	// ID of the first device in the connection.
	DeviceId        string `pulumi:"deviceId"`
	GlobalNetworkId string `pulumi:"globalNetworkId"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// ID of the link for the first device.
	LinkId string `pulumi:"linkId"`
	// Key-value tags for the connection.
	Tags map[string]string `pulumi:"tags"`
}

A collection of values returned by getConnection.

func LookupConnection

func LookupConnection(ctx *pulumi.Context, args *LookupConnectionArgs, opts ...pulumi.InvokeOption) (*LookupConnectionResult, error)

Provides details about an existing Network Manager connection.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v7/go/aws/networkmanager"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := networkmanager.LookupConnection(ctx, &networkmanager.LookupConnectionArgs{
			GlobalNetworkId: globalNetworkId,
			ConnectionId:    connectionId,
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupConnectionResultOutput

type LookupConnectionResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getConnection.

func (LookupConnectionResultOutput) Arn

ARN of the connection.

func (LookupConnectionResultOutput) ConnectedDeviceId

func (o LookupConnectionResultOutput) ConnectedDeviceId() pulumi.StringOutput

ID of the second device in the connection.

func (LookupConnectionResultOutput) ConnectedLinkId

func (o LookupConnectionResultOutput) ConnectedLinkId() pulumi.StringOutput

ID of the link for the second device.

func (LookupConnectionResultOutput) ConnectionId

func (LookupConnectionResultOutput) Description

Description of the connection.

func (LookupConnectionResultOutput) DeviceId

ID of the first device in the connection.

func (LookupConnectionResultOutput) ElementType

func (LookupConnectionResultOutput) GlobalNetworkId

func (o LookupConnectionResultOutput) GlobalNetworkId() pulumi.StringOutput

func (LookupConnectionResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (LookupConnectionResultOutput) LinkId

ID of the link for the first device.

func (LookupConnectionResultOutput) Tags

Key-value tags for the connection.

func (LookupConnectionResultOutput) ToLookupConnectionResultOutput

func (o LookupConnectionResultOutput) ToLookupConnectionResultOutput() LookupConnectionResultOutput

func (LookupConnectionResultOutput) ToLookupConnectionResultOutputWithContext

func (o LookupConnectionResultOutput) ToLookupConnectionResultOutputWithContext(ctx context.Context) LookupConnectionResultOutput

type LookupDeviceArgs

type LookupDeviceArgs struct {
	// ID of the device.
	DeviceId string `pulumi:"deviceId"`
	// ID of the global network.
	GlobalNetworkId string `pulumi:"globalNetworkId"`
	// Key-value tags for the device.
	Tags map[string]string `pulumi:"tags"`
}

A collection of arguments for invoking getDevice.

type LookupDeviceOutputArgs

type LookupDeviceOutputArgs struct {
	// ID of the device.
	DeviceId pulumi.StringInput `pulumi:"deviceId"`
	// ID of the global network.
	GlobalNetworkId pulumi.StringInput `pulumi:"globalNetworkId"`
	// Key-value tags for the device.
	Tags pulumi.StringMapInput `pulumi:"tags"`
}

A collection of arguments for invoking getDevice.

func (LookupDeviceOutputArgs) ElementType

func (LookupDeviceOutputArgs) ElementType() reflect.Type

type LookupDeviceResult

type LookupDeviceResult struct {
	// ARN of the device.
	Arn string `pulumi:"arn"`
	// AWS location of the device. Documented below.
	AwsLocations []GetDeviceAwsLocation `pulumi:"awsLocations"`
	// Description of the device.
	Description     string `pulumi:"description"`
	DeviceId        string `pulumi:"deviceId"`
	GlobalNetworkId string `pulumi:"globalNetworkId"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// Location of the device. Documented below.
	Locations []GetDeviceLocation `pulumi:"locations"`
	// Model of device.
	Model string `pulumi:"model"`
	// Serial number of the device.
	SerialNumber string `pulumi:"serialNumber"`
	// ID of the site.
	SiteId string `pulumi:"siteId"`
	// Key-value tags for the device.
	Tags map[string]string `pulumi:"tags"`
	// Type of device.
	Type string `pulumi:"type"`
	// Vendor of the device.
	Vendor string `pulumi:"vendor"`
}

A collection of values returned by getDevice.

func LookupDevice

func LookupDevice(ctx *pulumi.Context, args *LookupDeviceArgs, opts ...pulumi.InvokeOption) (*LookupDeviceResult, error)

Provides details about an existing Network Manager device.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v7/go/aws/networkmanager"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := networkmanager.LookupDevice(ctx, &networkmanager.LookupDeviceArgs{
			GlobalNetworkId: globalNetworkId,
			DeviceId:        deviceId,
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupDeviceResultOutput

type LookupDeviceResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getDevice.

func (LookupDeviceResultOutput) Arn

ARN of the device.

func (LookupDeviceResultOutput) AwsLocations

AWS location of the device. Documented below.

func (LookupDeviceResultOutput) Description

Description of the device.

func (LookupDeviceResultOutput) DeviceId

func (LookupDeviceResultOutput) ElementType

func (LookupDeviceResultOutput) ElementType() reflect.Type

func (LookupDeviceResultOutput) GlobalNetworkId

func (o LookupDeviceResultOutput) GlobalNetworkId() pulumi.StringOutput

func (LookupDeviceResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (LookupDeviceResultOutput) Locations

Location of the device. Documented below.

func (LookupDeviceResultOutput) Model

Model of device.

func (LookupDeviceResultOutput) SerialNumber

func (o LookupDeviceResultOutput) SerialNumber() pulumi.StringOutput

Serial number of the device.

func (LookupDeviceResultOutput) SiteId

ID of the site.

func (LookupDeviceResultOutput) Tags

Key-value tags for the device.

func (LookupDeviceResultOutput) ToLookupDeviceResultOutput

func (o LookupDeviceResultOutput) ToLookupDeviceResultOutput() LookupDeviceResultOutput

func (LookupDeviceResultOutput) ToLookupDeviceResultOutputWithContext

func (o LookupDeviceResultOutput) ToLookupDeviceResultOutputWithContext(ctx context.Context) LookupDeviceResultOutput

func (LookupDeviceResultOutput) Type

Type of device.

func (LookupDeviceResultOutput) Vendor

Vendor of the device.

type LookupGlobalNetworkArgs

type LookupGlobalNetworkArgs struct {
	// ID of the specific global network to retrieve.
	GlobalNetworkId string `pulumi:"globalNetworkId"`
	// Map of resource tags.
	Tags map[string]string `pulumi:"tags"`
}

A collection of arguments for invoking getGlobalNetwork.

type LookupGlobalNetworkOutputArgs

type LookupGlobalNetworkOutputArgs struct {
	// ID of the specific global network to retrieve.
	GlobalNetworkId pulumi.StringInput `pulumi:"globalNetworkId"`
	// Map of resource tags.
	Tags pulumi.StringMapInput `pulumi:"tags"`
}

A collection of arguments for invoking getGlobalNetwork.

func (LookupGlobalNetworkOutputArgs) ElementType

type LookupGlobalNetworkResult

type LookupGlobalNetworkResult struct {
	// ARN of the global network.
	Arn string `pulumi:"arn"`
	// Description of the global network.
	Description     string `pulumi:"description"`
	GlobalNetworkId string `pulumi:"globalNetworkId"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// Map of resource tags.
	Tags map[string]string `pulumi:"tags"`
}

A collection of values returned by getGlobalNetwork.

func LookupGlobalNetwork

func LookupGlobalNetwork(ctx *pulumi.Context, args *LookupGlobalNetworkArgs, opts ...pulumi.InvokeOption) (*LookupGlobalNetworkResult, error)

Provides details about an existing Network Manager global network.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v7/go/aws/networkmanager"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := networkmanager.LookupGlobalNetwork(ctx, &networkmanager.LookupGlobalNetworkArgs{
			GlobalNetworkId: globalNetworkId,
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupGlobalNetworkResultOutput

type LookupGlobalNetworkResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getGlobalNetwork.

func (LookupGlobalNetworkResultOutput) Arn

ARN of the global network.

func (LookupGlobalNetworkResultOutput) Description

Description of the global network.

func (LookupGlobalNetworkResultOutput) ElementType

func (LookupGlobalNetworkResultOutput) GlobalNetworkId

func (LookupGlobalNetworkResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (LookupGlobalNetworkResultOutput) Tags

Map of resource tags.

func (LookupGlobalNetworkResultOutput) ToLookupGlobalNetworkResultOutput

func (o LookupGlobalNetworkResultOutput) ToLookupGlobalNetworkResultOutput() LookupGlobalNetworkResultOutput

func (LookupGlobalNetworkResultOutput) ToLookupGlobalNetworkResultOutputWithContext

func (o LookupGlobalNetworkResultOutput) ToLookupGlobalNetworkResultOutputWithContext(ctx context.Context) LookupGlobalNetworkResultOutput

type LookupLinkArgs

type LookupLinkArgs struct {
	// ID of the Global Network of the link to retrieve.
	GlobalNetworkId string `pulumi:"globalNetworkId"`
	// ID of the specific link to retrieve.
	LinkId string `pulumi:"linkId"`
	// Key-value tags for the link.
	Tags map[string]string `pulumi:"tags"`
}

A collection of arguments for invoking getLink.

type LookupLinkOutputArgs

type LookupLinkOutputArgs struct {
	// ID of the Global Network of the link to retrieve.
	GlobalNetworkId pulumi.StringInput `pulumi:"globalNetworkId"`
	// ID of the specific link to retrieve.
	LinkId pulumi.StringInput `pulumi:"linkId"`
	// Key-value tags for the link.
	Tags pulumi.StringMapInput `pulumi:"tags"`
}

A collection of arguments for invoking getLink.

func (LookupLinkOutputArgs) ElementType

func (LookupLinkOutputArgs) ElementType() reflect.Type

type LookupLinkResult

type LookupLinkResult struct {
	// ARN of the link.
	Arn string `pulumi:"arn"`
	// Upload speed and download speed of the link as documented below
	Bandwidths []GetLinkBandwidth `pulumi:"bandwidths"`
	// Description of the link.
	Description     string `pulumi:"description"`
	GlobalNetworkId string `pulumi:"globalNetworkId"`
	// The provider-assigned unique ID for this managed resource.
	Id     string `pulumi:"id"`
	LinkId string `pulumi:"linkId"`
	// Provider of the link.
	ProviderName string `pulumi:"providerName"`
	// ID of the site.
	SiteId string `pulumi:"siteId"`
	// Key-value tags for the link.
	Tags map[string]string `pulumi:"tags"`
	// Type of the link.
	Type string `pulumi:"type"`
}

A collection of values returned by getLink.

func LookupLink(ctx *pulumi.Context, args *LookupLinkArgs, opts ...pulumi.InvokeOption) (*LookupLinkResult, error)

Provides details about an existing Network Manager link.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v7/go/aws/networkmanager"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := networkmanager.LookupLink(ctx, &networkmanager.LookupLinkArgs{
			GlobalNetworkId: globalNetworkId,
			LinkId:          linkId,
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupLinkResultOutput

type LookupLinkResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getLink.

func (LookupLinkResultOutput) Arn

ARN of the link.

func (LookupLinkResultOutput) Bandwidths

Upload speed and download speed of the link as documented below

func (LookupLinkResultOutput) Description

func (o LookupLinkResultOutput) Description() pulumi.StringOutput

Description of the link.

func (LookupLinkResultOutput) ElementType

func (LookupLinkResultOutput) ElementType() reflect.Type

func (LookupLinkResultOutput) GlobalNetworkId

func (o LookupLinkResultOutput) GlobalNetworkId() pulumi.StringOutput

func (LookupLinkResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (LookupLinkResultOutput) LinkId

func (LookupLinkResultOutput) ProviderName

func (o LookupLinkResultOutput) ProviderName() pulumi.StringOutput

Provider of the link.

func (LookupLinkResultOutput) SiteId

ID of the site.

func (LookupLinkResultOutput) Tags

Key-value tags for the link.

func (LookupLinkResultOutput) ToLookupLinkResultOutput

func (o LookupLinkResultOutput) ToLookupLinkResultOutput() LookupLinkResultOutput

func (LookupLinkResultOutput) ToLookupLinkResultOutputWithContext

func (o LookupLinkResultOutput) ToLookupLinkResultOutputWithContext(ctx context.Context) LookupLinkResultOutput

func (LookupLinkResultOutput) Type

Type of the link.

type LookupSiteArgs

type LookupSiteArgs struct {
	// ID of the Global Network of the site to retrieve.
	GlobalNetworkId string `pulumi:"globalNetworkId"`
	// ID of the specific site to retrieve.
	SiteId string `pulumi:"siteId"`
	// Key-value tags for the Site.
	Tags map[string]string `pulumi:"tags"`
}

A collection of arguments for invoking getSite.

type LookupSiteOutputArgs

type LookupSiteOutputArgs struct {
	// ID of the Global Network of the site to retrieve.
	GlobalNetworkId pulumi.StringInput `pulumi:"globalNetworkId"`
	// ID of the specific site to retrieve.
	SiteId pulumi.StringInput `pulumi:"siteId"`
	// Key-value tags for the Site.
	Tags pulumi.StringMapInput `pulumi:"tags"`
}

A collection of arguments for invoking getSite.

func (LookupSiteOutputArgs) ElementType

func (LookupSiteOutputArgs) ElementType() reflect.Type

type LookupSiteResult

type LookupSiteResult struct {
	// ARN of the site.
	Arn string `pulumi:"arn"`
	// Description of the site.
	Description     string `pulumi:"description"`
	GlobalNetworkId string `pulumi:"globalNetworkId"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// Site location as documented below.
	Locations []GetSiteLocation `pulumi:"locations"`
	SiteId    string            `pulumi:"siteId"`
	// Key-value tags for the Site.
	Tags map[string]string `pulumi:"tags"`
}

A collection of values returned by getSite.

func LookupSite

func LookupSite(ctx *pulumi.Context, args *LookupSiteArgs, opts ...pulumi.InvokeOption) (*LookupSiteResult, error)

Provides details about an existing Network Manager site.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v7/go/aws/networkmanager"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := networkmanager.LookupSite(ctx, &networkmanager.LookupSiteArgs{
			GlobalNetworkId: globalNetworkId,
			SiteId:          siteId,
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupSiteResultOutput

type LookupSiteResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getSite.

func (LookupSiteResultOutput) Arn

ARN of the site.

func (LookupSiteResultOutput) Description

func (o LookupSiteResultOutput) Description() pulumi.StringOutput

Description of the site.

func (LookupSiteResultOutput) ElementType

func (LookupSiteResultOutput) ElementType() reflect.Type

func (LookupSiteResultOutput) GlobalNetworkId

func (o LookupSiteResultOutput) GlobalNetworkId() pulumi.StringOutput

func (LookupSiteResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (LookupSiteResultOutput) Locations

Site location as documented below.

func (LookupSiteResultOutput) SiteId

func (LookupSiteResultOutput) Tags

Key-value tags for the Site.

func (LookupSiteResultOutput) ToLookupSiteResultOutput

func (o LookupSiteResultOutput) ToLookupSiteResultOutput() LookupSiteResultOutput

func (LookupSiteResultOutput) ToLookupSiteResultOutputWithContext

func (o LookupSiteResultOutput) ToLookupSiteResultOutputWithContext(ctx context.Context) LookupSiteResultOutput

type Site

type Site struct {
	pulumi.CustomResourceState

	// Site ARN.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// Description of the Site.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// ID of the Global Network to create the site in.
	//
	// The following arguments are optional:
	GlobalNetworkId pulumi.StringOutput `pulumi:"globalNetworkId"`
	// Site location. See below.
	Location SiteLocationPtrOutput `pulumi:"location"`
	// Key-value tags for the Site. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
}

Manages a Network Manager site. Use this resource to create a site in a global network.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v7/go/aws/networkmanager"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := networkmanager.NewGlobalNetwork(ctx, "example", nil)
		if err != nil {
			return err
		}
		_, err = networkmanager.NewSite(ctx, "example", &networkmanager.SiteArgs{
			GlobalNetworkId: example.ID(),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Using `pulumi import`, import `aws_networkmanager_site` using the site ARN. For example:

```sh $ pulumi import aws:networkmanager/site:Site example arn:aws:networkmanager::123456789012:site/global-network-0d47f6t230mz46dy4/site-444555aaabbb11223 ```

func GetSite

func GetSite(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *SiteState, opts ...pulumi.ResourceOption) (*Site, error)

GetSite gets an existing Site 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 NewSite

func NewSite(ctx *pulumi.Context,
	name string, args *SiteArgs, opts ...pulumi.ResourceOption) (*Site, error)

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

func (*Site) ElementType

func (*Site) ElementType() reflect.Type

func (*Site) ToSiteOutput

func (i *Site) ToSiteOutput() SiteOutput

func (*Site) ToSiteOutputWithContext

func (i *Site) ToSiteOutputWithContext(ctx context.Context) SiteOutput

type SiteArgs

type SiteArgs struct {
	// Description of the Site.
	Description pulumi.StringPtrInput
	// ID of the Global Network to create the site in.
	//
	// The following arguments are optional:
	GlobalNetworkId pulumi.StringInput
	// Site location. See below.
	Location SiteLocationPtrInput
	// Key-value tags for the Site. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
}

The set of arguments for constructing a Site resource.

func (SiteArgs) ElementType

func (SiteArgs) ElementType() reflect.Type

type SiteArray

type SiteArray []SiteInput

func (SiteArray) ElementType

func (SiteArray) ElementType() reflect.Type

func (SiteArray) ToSiteArrayOutput

func (i SiteArray) ToSiteArrayOutput() SiteArrayOutput

func (SiteArray) ToSiteArrayOutputWithContext

func (i SiteArray) ToSiteArrayOutputWithContext(ctx context.Context) SiteArrayOutput

type SiteArrayInput

type SiteArrayInput interface {
	pulumi.Input

	ToSiteArrayOutput() SiteArrayOutput
	ToSiteArrayOutputWithContext(context.Context) SiteArrayOutput
}

SiteArrayInput is an input type that accepts SiteArray and SiteArrayOutput values. You can construct a concrete instance of `SiteArrayInput` via:

SiteArray{ SiteArgs{...} }

type SiteArrayOutput

type SiteArrayOutput struct{ *pulumi.OutputState }

func (SiteArrayOutput) ElementType

func (SiteArrayOutput) ElementType() reflect.Type

func (SiteArrayOutput) Index

func (SiteArrayOutput) ToSiteArrayOutput

func (o SiteArrayOutput) ToSiteArrayOutput() SiteArrayOutput

func (SiteArrayOutput) ToSiteArrayOutputWithContext

func (o SiteArrayOutput) ToSiteArrayOutputWithContext(ctx context.Context) SiteArrayOutput

type SiteInput

type SiteInput interface {
	pulumi.Input

	ToSiteOutput() SiteOutput
	ToSiteOutputWithContext(ctx context.Context) SiteOutput
}

type SiteLocation

type SiteLocation struct {
	// Address of the location.
	Address *string `pulumi:"address"`
	// Latitude of the location.
	Latitude *string `pulumi:"latitude"`
	// Longitude of the location.
	Longitude *string `pulumi:"longitude"`
}

type SiteLocationArgs

type SiteLocationArgs struct {
	// Address of the location.
	Address pulumi.StringPtrInput `pulumi:"address"`
	// Latitude of the location.
	Latitude pulumi.StringPtrInput `pulumi:"latitude"`
	// Longitude of the location.
	Longitude pulumi.StringPtrInput `pulumi:"longitude"`
}

func (SiteLocationArgs) ElementType

func (SiteLocationArgs) ElementType() reflect.Type

func (SiteLocationArgs) ToSiteLocationOutput

func (i SiteLocationArgs) ToSiteLocationOutput() SiteLocationOutput

func (SiteLocationArgs) ToSiteLocationOutputWithContext

func (i SiteLocationArgs) ToSiteLocationOutputWithContext(ctx context.Context) SiteLocationOutput

func (SiteLocationArgs) ToSiteLocationPtrOutput

func (i SiteLocationArgs) ToSiteLocationPtrOutput() SiteLocationPtrOutput

func (SiteLocationArgs) ToSiteLocationPtrOutputWithContext

func (i SiteLocationArgs) ToSiteLocationPtrOutputWithContext(ctx context.Context) SiteLocationPtrOutput

type SiteLocationInput

type SiteLocationInput interface {
	pulumi.Input

	ToSiteLocationOutput() SiteLocationOutput
	ToSiteLocationOutputWithContext(context.Context) SiteLocationOutput
}

SiteLocationInput is an input type that accepts SiteLocationArgs and SiteLocationOutput values. You can construct a concrete instance of `SiteLocationInput` via:

SiteLocationArgs{...}

type SiteLocationOutput

type SiteLocationOutput struct{ *pulumi.OutputState }

func (SiteLocationOutput) Address

Address of the location.

func (SiteLocationOutput) ElementType

func (SiteLocationOutput) ElementType() reflect.Type

func (SiteLocationOutput) Latitude

Latitude of the location.

func (SiteLocationOutput) Longitude

Longitude of the location.

func (SiteLocationOutput) ToSiteLocationOutput

func (o SiteLocationOutput) ToSiteLocationOutput() SiteLocationOutput

func (SiteLocationOutput) ToSiteLocationOutputWithContext

func (o SiteLocationOutput) ToSiteLocationOutputWithContext(ctx context.Context) SiteLocationOutput

func (SiteLocationOutput) ToSiteLocationPtrOutput

func (o SiteLocationOutput) ToSiteLocationPtrOutput() SiteLocationPtrOutput

func (SiteLocationOutput) ToSiteLocationPtrOutputWithContext

func (o SiteLocationOutput) ToSiteLocationPtrOutputWithContext(ctx context.Context) SiteLocationPtrOutput

type SiteLocationPtrInput

type SiteLocationPtrInput interface {
	pulumi.Input

	ToSiteLocationPtrOutput() SiteLocationPtrOutput
	ToSiteLocationPtrOutputWithContext(context.Context) SiteLocationPtrOutput
}

SiteLocationPtrInput is an input type that accepts SiteLocationArgs, SiteLocationPtr and SiteLocationPtrOutput values. You can construct a concrete instance of `SiteLocationPtrInput` via:

        SiteLocationArgs{...}

or:

        nil

type SiteLocationPtrOutput

type SiteLocationPtrOutput struct{ *pulumi.OutputState }

func (SiteLocationPtrOutput) Address

Address of the location.

func (SiteLocationPtrOutput) Elem

func (SiteLocationPtrOutput) ElementType

func (SiteLocationPtrOutput) ElementType() reflect.Type

func (SiteLocationPtrOutput) Latitude

Latitude of the location.

func (SiteLocationPtrOutput) Longitude

Longitude of the location.

func (SiteLocationPtrOutput) ToSiteLocationPtrOutput

func (o SiteLocationPtrOutput) ToSiteLocationPtrOutput() SiteLocationPtrOutput

func (SiteLocationPtrOutput) ToSiteLocationPtrOutputWithContext

func (o SiteLocationPtrOutput) ToSiteLocationPtrOutputWithContext(ctx context.Context) SiteLocationPtrOutput

type SiteMap

type SiteMap map[string]SiteInput

func (SiteMap) ElementType

func (SiteMap) ElementType() reflect.Type

func (SiteMap) ToSiteMapOutput

func (i SiteMap) ToSiteMapOutput() SiteMapOutput

func (SiteMap) ToSiteMapOutputWithContext

func (i SiteMap) ToSiteMapOutputWithContext(ctx context.Context) SiteMapOutput

type SiteMapInput

type SiteMapInput interface {
	pulumi.Input

	ToSiteMapOutput() SiteMapOutput
	ToSiteMapOutputWithContext(context.Context) SiteMapOutput
}

SiteMapInput is an input type that accepts SiteMap and SiteMapOutput values. You can construct a concrete instance of `SiteMapInput` via:

SiteMap{ "key": SiteArgs{...} }

type SiteMapOutput

type SiteMapOutput struct{ *pulumi.OutputState }

func (SiteMapOutput) ElementType

func (SiteMapOutput) ElementType() reflect.Type

func (SiteMapOutput) MapIndex

func (SiteMapOutput) ToSiteMapOutput

func (o SiteMapOutput) ToSiteMapOutput() SiteMapOutput

func (SiteMapOutput) ToSiteMapOutputWithContext

func (o SiteMapOutput) ToSiteMapOutputWithContext(ctx context.Context) SiteMapOutput

type SiteOutput

type SiteOutput struct{ *pulumi.OutputState }

func (SiteOutput) Arn

func (o SiteOutput) Arn() pulumi.StringOutput

Site ARN.

func (SiteOutput) Description

func (o SiteOutput) Description() pulumi.StringPtrOutput

Description of the Site.

func (SiteOutput) ElementType

func (SiteOutput) ElementType() reflect.Type

func (SiteOutput) GlobalNetworkId

func (o SiteOutput) GlobalNetworkId() pulumi.StringOutput

ID of the Global Network to create the site in.

The following arguments are optional:

func (SiteOutput) Location

func (o SiteOutput) Location() SiteLocationPtrOutput

Site location. See below.

func (SiteOutput) Tags

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

func (SiteOutput) TagsAll

func (o SiteOutput) TagsAll() pulumi.StringMapOutput

Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.

func (SiteOutput) ToSiteOutput

func (o SiteOutput) ToSiteOutput() SiteOutput

func (SiteOutput) ToSiteOutputWithContext

func (o SiteOutput) ToSiteOutputWithContext(ctx context.Context) SiteOutput

type SiteState

type SiteState struct {
	// Site ARN.
	Arn pulumi.StringPtrInput
	// Description of the Site.
	Description pulumi.StringPtrInput
	// ID of the Global Network to create the site in.
	//
	// The following arguments are optional:
	GlobalNetworkId pulumi.StringPtrInput
	// Site location. See below.
	Location SiteLocationPtrInput
	// Key-value tags for the Site. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	TagsAll pulumi.StringMapInput
}

func (SiteState) ElementType

func (SiteState) ElementType() reflect.Type

type SiteToSiteVpnAttachment

type SiteToSiteVpnAttachment struct {
	pulumi.CustomResourceState

	// ARN of the attachment.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// Policy rule number associated with the attachment.
	AttachmentPolicyRuleNumber pulumi.IntOutput `pulumi:"attachmentPolicyRuleNumber"`
	// Type of attachment.
	AttachmentType pulumi.StringOutput `pulumi:"attachmentType"`
	// ARN of a core network.
	CoreNetworkArn pulumi.StringOutput `pulumi:"coreNetworkArn"`
	// ID of a core network for the VPN attachment.
	CoreNetworkId pulumi.StringOutput `pulumi:"coreNetworkId"`
	// Region where the edge is located.
	EdgeLocation pulumi.StringOutput `pulumi:"edgeLocation"`
	// ID of the attachment account owner.
	OwnerAccountId pulumi.StringOutput `pulumi:"ownerAccountId"`
	// Attachment resource ARN.
	ResourceArn pulumi.StringOutput `pulumi:"resourceArn"`
	// Name of the segment attachment.
	SegmentName pulumi.StringOutput `pulumi:"segmentName"`
	// State of the attachment.
	State pulumi.StringOutput `pulumi:"state"`
	// Key-value tags for the attachment. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
	// ARN of the site-to-site VPN connection.
	//
	// The following arguments are optional:
	VpnConnectionArn pulumi.StringOutput `pulumi:"vpnConnectionArn"`
}

Manages a Network Manager site-to-site VPN attachment.

## Example Usage

### Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v7/go/aws/networkmanager"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := networkmanager.NewSiteToSiteVpnAttachment(ctx, "example", &networkmanager.SiteToSiteVpnAttachmentArgs{
			CoreNetworkId:    pulumi.Any(exampleAwsccNetworkmanagerCoreNetwork.Id),
			VpnConnectionArn: pulumi.Any(exampleAwsVpnConnection.Arn),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

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

```sh $ pulumi import aws:networkmanager/siteToSiteVpnAttachment:SiteToSiteVpnAttachment example attachment-0f8fa60d2238d1bd8 ```

func GetSiteToSiteVpnAttachment

func GetSiteToSiteVpnAttachment(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *SiteToSiteVpnAttachmentState, opts ...pulumi.ResourceOption) (*SiteToSiteVpnAttachment, error)

GetSiteToSiteVpnAttachment gets an existing SiteToSiteVpnAttachment 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 NewSiteToSiteVpnAttachment

func NewSiteToSiteVpnAttachment(ctx *pulumi.Context,
	name string, args *SiteToSiteVpnAttachmentArgs, opts ...pulumi.ResourceOption) (*SiteToSiteVpnAttachment, error)

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

func (*SiteToSiteVpnAttachment) ElementType

func (*SiteToSiteVpnAttachment) ElementType() reflect.Type

func (*SiteToSiteVpnAttachment) ToSiteToSiteVpnAttachmentOutput

func (i *SiteToSiteVpnAttachment) ToSiteToSiteVpnAttachmentOutput() SiteToSiteVpnAttachmentOutput

func (*SiteToSiteVpnAttachment) ToSiteToSiteVpnAttachmentOutputWithContext

func (i *SiteToSiteVpnAttachment) ToSiteToSiteVpnAttachmentOutputWithContext(ctx context.Context) SiteToSiteVpnAttachmentOutput

type SiteToSiteVpnAttachmentArgs

type SiteToSiteVpnAttachmentArgs struct {
	// ID of a core network for the VPN attachment.
	CoreNetworkId pulumi.StringInput
	// Key-value tags for the attachment. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// ARN of the site-to-site VPN connection.
	//
	// The following arguments are optional:
	VpnConnectionArn pulumi.StringInput
}

The set of arguments for constructing a SiteToSiteVpnAttachment resource.

func (SiteToSiteVpnAttachmentArgs) ElementType

type SiteToSiteVpnAttachmentArray

type SiteToSiteVpnAttachmentArray []SiteToSiteVpnAttachmentInput

func (SiteToSiteVpnAttachmentArray) ElementType

func (SiteToSiteVpnAttachmentArray) ToSiteToSiteVpnAttachmentArrayOutput

func (i SiteToSiteVpnAttachmentArray) ToSiteToSiteVpnAttachmentArrayOutput() SiteToSiteVpnAttachmentArrayOutput

func (SiteToSiteVpnAttachmentArray) ToSiteToSiteVpnAttachmentArrayOutputWithContext

func (i SiteToSiteVpnAttachmentArray) ToSiteToSiteVpnAttachmentArrayOutputWithContext(ctx context.Context) SiteToSiteVpnAttachmentArrayOutput

type SiteToSiteVpnAttachmentArrayInput

type SiteToSiteVpnAttachmentArrayInput interface {
	pulumi.Input

	ToSiteToSiteVpnAttachmentArrayOutput() SiteToSiteVpnAttachmentArrayOutput
	ToSiteToSiteVpnAttachmentArrayOutputWithContext(context.Context) SiteToSiteVpnAttachmentArrayOutput
}

SiteToSiteVpnAttachmentArrayInput is an input type that accepts SiteToSiteVpnAttachmentArray and SiteToSiteVpnAttachmentArrayOutput values. You can construct a concrete instance of `SiteToSiteVpnAttachmentArrayInput` via:

SiteToSiteVpnAttachmentArray{ SiteToSiteVpnAttachmentArgs{...} }

type SiteToSiteVpnAttachmentArrayOutput

type SiteToSiteVpnAttachmentArrayOutput struct{ *pulumi.OutputState }

func (SiteToSiteVpnAttachmentArrayOutput) ElementType

func (SiteToSiteVpnAttachmentArrayOutput) Index

func (SiteToSiteVpnAttachmentArrayOutput) ToSiteToSiteVpnAttachmentArrayOutput

func (o SiteToSiteVpnAttachmentArrayOutput) ToSiteToSiteVpnAttachmentArrayOutput() SiteToSiteVpnAttachmentArrayOutput

func (SiteToSiteVpnAttachmentArrayOutput) ToSiteToSiteVpnAttachmentArrayOutputWithContext

func (o SiteToSiteVpnAttachmentArrayOutput) ToSiteToSiteVpnAttachmentArrayOutputWithContext(ctx context.Context) SiteToSiteVpnAttachmentArrayOutput

type SiteToSiteVpnAttachmentInput

type SiteToSiteVpnAttachmentInput interface {
	pulumi.Input

	ToSiteToSiteVpnAttachmentOutput() SiteToSiteVpnAttachmentOutput
	ToSiteToSiteVpnAttachmentOutputWithContext(ctx context.Context) SiteToSiteVpnAttachmentOutput
}

type SiteToSiteVpnAttachmentMap

type SiteToSiteVpnAttachmentMap map[string]SiteToSiteVpnAttachmentInput

func (SiteToSiteVpnAttachmentMap) ElementType

func (SiteToSiteVpnAttachmentMap) ElementType() reflect.Type

func (SiteToSiteVpnAttachmentMap) ToSiteToSiteVpnAttachmentMapOutput

func (i SiteToSiteVpnAttachmentMap) ToSiteToSiteVpnAttachmentMapOutput() SiteToSiteVpnAttachmentMapOutput

func (SiteToSiteVpnAttachmentMap) ToSiteToSiteVpnAttachmentMapOutputWithContext

func (i SiteToSiteVpnAttachmentMap) ToSiteToSiteVpnAttachmentMapOutputWithContext(ctx context.Context) SiteToSiteVpnAttachmentMapOutput

type SiteToSiteVpnAttachmentMapInput

type SiteToSiteVpnAttachmentMapInput interface {
	pulumi.Input

	ToSiteToSiteVpnAttachmentMapOutput() SiteToSiteVpnAttachmentMapOutput
	ToSiteToSiteVpnAttachmentMapOutputWithContext(context.Context) SiteToSiteVpnAttachmentMapOutput
}

SiteToSiteVpnAttachmentMapInput is an input type that accepts SiteToSiteVpnAttachmentMap and SiteToSiteVpnAttachmentMapOutput values. You can construct a concrete instance of `SiteToSiteVpnAttachmentMapInput` via:

SiteToSiteVpnAttachmentMap{ "key": SiteToSiteVpnAttachmentArgs{...} }

type SiteToSiteVpnAttachmentMapOutput

type SiteToSiteVpnAttachmentMapOutput struct{ *pulumi.OutputState }

func (SiteToSiteVpnAttachmentMapOutput) ElementType

func (SiteToSiteVpnAttachmentMapOutput) MapIndex

func (SiteToSiteVpnAttachmentMapOutput) ToSiteToSiteVpnAttachmentMapOutput

func (o SiteToSiteVpnAttachmentMapOutput) ToSiteToSiteVpnAttachmentMapOutput() SiteToSiteVpnAttachmentMapOutput

func (SiteToSiteVpnAttachmentMapOutput) ToSiteToSiteVpnAttachmentMapOutputWithContext

func (o SiteToSiteVpnAttachmentMapOutput) ToSiteToSiteVpnAttachmentMapOutputWithContext(ctx context.Context) SiteToSiteVpnAttachmentMapOutput

type SiteToSiteVpnAttachmentOutput

type SiteToSiteVpnAttachmentOutput struct{ *pulumi.OutputState }

func (SiteToSiteVpnAttachmentOutput) Arn

ARN of the attachment.

func (SiteToSiteVpnAttachmentOutput) AttachmentPolicyRuleNumber

func (o SiteToSiteVpnAttachmentOutput) AttachmentPolicyRuleNumber() pulumi.IntOutput

Policy rule number associated with the attachment.

func (SiteToSiteVpnAttachmentOutput) AttachmentType

Type of attachment.

func (SiteToSiteVpnAttachmentOutput) CoreNetworkArn

ARN of a core network.

func (SiteToSiteVpnAttachmentOutput) CoreNetworkId

ID of a core network for the VPN attachment.

func (SiteToSiteVpnAttachmentOutput) EdgeLocation

Region where the edge is located.

func (SiteToSiteVpnAttachmentOutput) ElementType

func (SiteToSiteVpnAttachmentOutput) OwnerAccountId

ID of the attachment account owner.

func (SiteToSiteVpnAttachmentOutput) ResourceArn

Attachment resource ARN.

func (SiteToSiteVpnAttachmentOutput) SegmentName

Name of the segment attachment.

func (SiteToSiteVpnAttachmentOutput) State

State of the attachment.

func (SiteToSiteVpnAttachmentOutput) Tags

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

func (SiteToSiteVpnAttachmentOutput) TagsAll

Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.

func (SiteToSiteVpnAttachmentOutput) ToSiteToSiteVpnAttachmentOutput

func (o SiteToSiteVpnAttachmentOutput) ToSiteToSiteVpnAttachmentOutput() SiteToSiteVpnAttachmentOutput

func (SiteToSiteVpnAttachmentOutput) ToSiteToSiteVpnAttachmentOutputWithContext

func (o SiteToSiteVpnAttachmentOutput) ToSiteToSiteVpnAttachmentOutputWithContext(ctx context.Context) SiteToSiteVpnAttachmentOutput

func (SiteToSiteVpnAttachmentOutput) VpnConnectionArn

func (o SiteToSiteVpnAttachmentOutput) VpnConnectionArn() pulumi.StringOutput

ARN of the site-to-site VPN connection.

The following arguments are optional:

type SiteToSiteVpnAttachmentState

type SiteToSiteVpnAttachmentState struct {
	// ARN of the attachment.
	Arn pulumi.StringPtrInput
	// Policy rule number associated with the attachment.
	AttachmentPolicyRuleNumber pulumi.IntPtrInput
	// Type of attachment.
	AttachmentType pulumi.StringPtrInput
	// ARN of a core network.
	CoreNetworkArn pulumi.StringPtrInput
	// ID of a core network for the VPN attachment.
	CoreNetworkId pulumi.StringPtrInput
	// Region where the edge is located.
	EdgeLocation pulumi.StringPtrInput
	// ID of the attachment account owner.
	OwnerAccountId pulumi.StringPtrInput
	// Attachment resource ARN.
	ResourceArn pulumi.StringPtrInput
	// Name of the segment attachment.
	SegmentName pulumi.StringPtrInput
	// State of the attachment.
	State pulumi.StringPtrInput
	// Key-value tags for the attachment. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	TagsAll pulumi.StringMapInput
	// ARN of the site-to-site VPN connection.
	//
	// The following arguments are optional:
	VpnConnectionArn pulumi.StringPtrInput
}

func (SiteToSiteVpnAttachmentState) ElementType

type TransitGatewayConnectPeerAssociation

type TransitGatewayConnectPeerAssociation struct {
	pulumi.CustomResourceState

	// ID of the device.
	DeviceId pulumi.StringOutput `pulumi:"deviceId"`
	// ID of the global network.
	GlobalNetworkId pulumi.StringOutput `pulumi:"globalNetworkId"`
	// ID of the link.
	LinkId pulumi.StringPtrOutput `pulumi:"linkId"`
	// ARN of the Connect peer.
	//
	// The following arguments are optional:
	TransitGatewayConnectPeerArn pulumi.StringOutput `pulumi:"transitGatewayConnectPeerArn"`
}

Manages a Network Manager transit gateway Connect peer association. Associates a transit gateway Connect peer with a device, and optionally, with a link. If you specify a link, it must be associated with the specified device.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v7/go/aws/networkmanager"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := networkmanager.NewTransitGatewayConnectPeerAssociation(ctx, "example", &networkmanager.TransitGatewayConnectPeerAssociationArgs{
			GlobalNetworkId:              pulumi.Any(exampleAwsNetworkmanagerGlobalNetwork.Id),
			DeviceId:                     pulumi.Any(exampleAwsNetworkmanagerDevice.Id),
			TransitGatewayConnectPeerArn: pulumi.Any(exampleAwsEc2TransitGatewayConnectPeer.Arn),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Using `pulumi import`, import `aws_networkmanager_transit_gateway_connect_peer_association` using the global network ID and Connect peer ARN. For example:

```sh $ pulumi import aws:networkmanager/transitGatewayConnectPeerAssociation:TransitGatewayConnectPeerAssociation example global-network-0d47f6t230mz46dy4,arn:aws:ec2:us-west-2:123456789012:transit-gateway-connect-peer/tgw-connect-peer-12345678 ```

func GetTransitGatewayConnectPeerAssociation

func GetTransitGatewayConnectPeerAssociation(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *TransitGatewayConnectPeerAssociationState, opts ...pulumi.ResourceOption) (*TransitGatewayConnectPeerAssociation, error)

GetTransitGatewayConnectPeerAssociation gets an existing TransitGatewayConnectPeerAssociation 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 NewTransitGatewayConnectPeerAssociation

func NewTransitGatewayConnectPeerAssociation(ctx *pulumi.Context,
	name string, args *TransitGatewayConnectPeerAssociationArgs, opts ...pulumi.ResourceOption) (*TransitGatewayConnectPeerAssociation, error)

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

func (*TransitGatewayConnectPeerAssociation) ElementType

func (*TransitGatewayConnectPeerAssociation) ToTransitGatewayConnectPeerAssociationOutput

func (i *TransitGatewayConnectPeerAssociation) ToTransitGatewayConnectPeerAssociationOutput() TransitGatewayConnectPeerAssociationOutput

func (*TransitGatewayConnectPeerAssociation) ToTransitGatewayConnectPeerAssociationOutputWithContext

func (i *TransitGatewayConnectPeerAssociation) ToTransitGatewayConnectPeerAssociationOutputWithContext(ctx context.Context) TransitGatewayConnectPeerAssociationOutput

type TransitGatewayConnectPeerAssociationArgs

type TransitGatewayConnectPeerAssociationArgs struct {
	// ID of the device.
	DeviceId pulumi.StringInput
	// ID of the global network.
	GlobalNetworkId pulumi.StringInput
	// ID of the link.
	LinkId pulumi.StringPtrInput
	// ARN of the Connect peer.
	//
	// The following arguments are optional:
	TransitGatewayConnectPeerArn pulumi.StringInput
}

The set of arguments for constructing a TransitGatewayConnectPeerAssociation resource.

func (TransitGatewayConnectPeerAssociationArgs) ElementType

type TransitGatewayConnectPeerAssociationArray

type TransitGatewayConnectPeerAssociationArray []TransitGatewayConnectPeerAssociationInput

func (TransitGatewayConnectPeerAssociationArray) ElementType

func (TransitGatewayConnectPeerAssociationArray) ToTransitGatewayConnectPeerAssociationArrayOutput

func (i TransitGatewayConnectPeerAssociationArray) ToTransitGatewayConnectPeerAssociationArrayOutput() TransitGatewayConnectPeerAssociationArrayOutput

func (TransitGatewayConnectPeerAssociationArray) ToTransitGatewayConnectPeerAssociationArrayOutputWithContext

func (i TransitGatewayConnectPeerAssociationArray) ToTransitGatewayConnectPeerAssociationArrayOutputWithContext(ctx context.Context) TransitGatewayConnectPeerAssociationArrayOutput

type TransitGatewayConnectPeerAssociationArrayInput

type TransitGatewayConnectPeerAssociationArrayInput interface {
	pulumi.Input

	ToTransitGatewayConnectPeerAssociationArrayOutput() TransitGatewayConnectPeerAssociationArrayOutput
	ToTransitGatewayConnectPeerAssociationArrayOutputWithContext(context.Context) TransitGatewayConnectPeerAssociationArrayOutput
}

TransitGatewayConnectPeerAssociationArrayInput is an input type that accepts TransitGatewayConnectPeerAssociationArray and TransitGatewayConnectPeerAssociationArrayOutput values. You can construct a concrete instance of `TransitGatewayConnectPeerAssociationArrayInput` via:

TransitGatewayConnectPeerAssociationArray{ TransitGatewayConnectPeerAssociationArgs{...} }

type TransitGatewayConnectPeerAssociationArrayOutput

type TransitGatewayConnectPeerAssociationArrayOutput struct{ *pulumi.OutputState }

func (TransitGatewayConnectPeerAssociationArrayOutput) ElementType

func (TransitGatewayConnectPeerAssociationArrayOutput) Index

func (TransitGatewayConnectPeerAssociationArrayOutput) ToTransitGatewayConnectPeerAssociationArrayOutput

func (o TransitGatewayConnectPeerAssociationArrayOutput) ToTransitGatewayConnectPeerAssociationArrayOutput() TransitGatewayConnectPeerAssociationArrayOutput

func (TransitGatewayConnectPeerAssociationArrayOutput) ToTransitGatewayConnectPeerAssociationArrayOutputWithContext

func (o TransitGatewayConnectPeerAssociationArrayOutput) ToTransitGatewayConnectPeerAssociationArrayOutputWithContext(ctx context.Context) TransitGatewayConnectPeerAssociationArrayOutput

type TransitGatewayConnectPeerAssociationInput

type TransitGatewayConnectPeerAssociationInput interface {
	pulumi.Input

	ToTransitGatewayConnectPeerAssociationOutput() TransitGatewayConnectPeerAssociationOutput
	ToTransitGatewayConnectPeerAssociationOutputWithContext(ctx context.Context) TransitGatewayConnectPeerAssociationOutput
}

type TransitGatewayConnectPeerAssociationMap

type TransitGatewayConnectPeerAssociationMap map[string]TransitGatewayConnectPeerAssociationInput

func (TransitGatewayConnectPeerAssociationMap) ElementType

func (TransitGatewayConnectPeerAssociationMap) ToTransitGatewayConnectPeerAssociationMapOutput

func (i TransitGatewayConnectPeerAssociationMap) ToTransitGatewayConnectPeerAssociationMapOutput() TransitGatewayConnectPeerAssociationMapOutput

func (TransitGatewayConnectPeerAssociationMap) ToTransitGatewayConnectPeerAssociationMapOutputWithContext

func (i TransitGatewayConnectPeerAssociationMap) ToTransitGatewayConnectPeerAssociationMapOutputWithContext(ctx context.Context) TransitGatewayConnectPeerAssociationMapOutput

type TransitGatewayConnectPeerAssociationMapInput

type TransitGatewayConnectPeerAssociationMapInput interface {
	pulumi.Input

	ToTransitGatewayConnectPeerAssociationMapOutput() TransitGatewayConnectPeerAssociationMapOutput
	ToTransitGatewayConnectPeerAssociationMapOutputWithContext(context.Context) TransitGatewayConnectPeerAssociationMapOutput
}

TransitGatewayConnectPeerAssociationMapInput is an input type that accepts TransitGatewayConnectPeerAssociationMap and TransitGatewayConnectPeerAssociationMapOutput values. You can construct a concrete instance of `TransitGatewayConnectPeerAssociationMapInput` via:

TransitGatewayConnectPeerAssociationMap{ "key": TransitGatewayConnectPeerAssociationArgs{...} }

type TransitGatewayConnectPeerAssociationMapOutput

type TransitGatewayConnectPeerAssociationMapOutput struct{ *pulumi.OutputState }

func (TransitGatewayConnectPeerAssociationMapOutput) ElementType

func (TransitGatewayConnectPeerAssociationMapOutput) MapIndex

func (TransitGatewayConnectPeerAssociationMapOutput) ToTransitGatewayConnectPeerAssociationMapOutput

func (o TransitGatewayConnectPeerAssociationMapOutput) ToTransitGatewayConnectPeerAssociationMapOutput() TransitGatewayConnectPeerAssociationMapOutput

func (TransitGatewayConnectPeerAssociationMapOutput) ToTransitGatewayConnectPeerAssociationMapOutputWithContext

func (o TransitGatewayConnectPeerAssociationMapOutput) ToTransitGatewayConnectPeerAssociationMapOutputWithContext(ctx context.Context) TransitGatewayConnectPeerAssociationMapOutput

type TransitGatewayConnectPeerAssociationOutput

type TransitGatewayConnectPeerAssociationOutput struct{ *pulumi.OutputState }

func (TransitGatewayConnectPeerAssociationOutput) DeviceId

ID of the device.

func (TransitGatewayConnectPeerAssociationOutput) ElementType

func (TransitGatewayConnectPeerAssociationOutput) GlobalNetworkId

ID of the global network.

func (TransitGatewayConnectPeerAssociationOutput) LinkId

ID of the link.

func (TransitGatewayConnectPeerAssociationOutput) ToTransitGatewayConnectPeerAssociationOutput

func (o TransitGatewayConnectPeerAssociationOutput) ToTransitGatewayConnectPeerAssociationOutput() TransitGatewayConnectPeerAssociationOutput

func (TransitGatewayConnectPeerAssociationOutput) ToTransitGatewayConnectPeerAssociationOutputWithContext

func (o TransitGatewayConnectPeerAssociationOutput) ToTransitGatewayConnectPeerAssociationOutputWithContext(ctx context.Context) TransitGatewayConnectPeerAssociationOutput

func (TransitGatewayConnectPeerAssociationOutput) TransitGatewayConnectPeerArn

func (o TransitGatewayConnectPeerAssociationOutput) TransitGatewayConnectPeerArn() pulumi.StringOutput

ARN of the Connect peer.

The following arguments are optional:

type TransitGatewayConnectPeerAssociationState

type TransitGatewayConnectPeerAssociationState struct {
	// ID of the device.
	DeviceId pulumi.StringPtrInput
	// ID of the global network.
	GlobalNetworkId pulumi.StringPtrInput
	// ID of the link.
	LinkId pulumi.StringPtrInput
	// ARN of the Connect peer.
	//
	// The following arguments are optional:
	TransitGatewayConnectPeerArn pulumi.StringPtrInput
}

func (TransitGatewayConnectPeerAssociationState) ElementType

type TransitGatewayPeering

type TransitGatewayPeering struct {
	pulumi.CustomResourceState

	// Peering ARN.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// ARN of the core network.
	CoreNetworkArn pulumi.StringOutput `pulumi:"coreNetworkArn"`
	// ID of a core network.
	CoreNetworkId pulumi.StringOutput `pulumi:"coreNetworkId"`
	// Edge location for the peer.
	EdgeLocation pulumi.StringOutput `pulumi:"edgeLocation"`
	// ID of the account owner.
	OwnerAccountId pulumi.StringOutput `pulumi:"ownerAccountId"`
	// Type of peering. This will be `TRANSIT_GATEWAY`.
	PeeringType pulumi.StringOutput `pulumi:"peeringType"`
	// Resource ARN of the peer.
	ResourceArn pulumi.StringOutput `pulumi:"resourceArn"`
	// Key-value tags for the peering. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
	// ARN of the transit gateway for the peering request.
	//
	// The following arguments are optional:
	TransitGatewayArn pulumi.StringOutput `pulumi:"transitGatewayArn"`
	// ID of the transit gateway peering attachment.
	TransitGatewayPeeringAttachmentId pulumi.StringOutput `pulumi:"transitGatewayPeeringAttachmentId"`
}

Manages a Network Manager transit gateway peering connection. Creates a peering connection between an AWS Cloud WAN core network and an AWS Transit Gateway.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v7/go/aws/networkmanager"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := networkmanager.NewTransitGatewayPeering(ctx, "example", &networkmanager.TransitGatewayPeeringArgs{
			CoreNetworkId:     pulumi.Any(exampleAwsccNetworkmanagerCoreNetwork.Id),
			TransitGatewayArn: pulumi.Any(exampleAwsEc2TransitGateway.Arn),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Using `pulumi import`, import `aws_networkmanager_transit_gateway_peering` using the peering ID. For example:

```sh $ pulumi import aws:networkmanager/transitGatewayPeering:TransitGatewayPeering example peering-444555aaabbb11223 ```

func GetTransitGatewayPeering

func GetTransitGatewayPeering(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *TransitGatewayPeeringState, opts ...pulumi.ResourceOption) (*TransitGatewayPeering, error)

GetTransitGatewayPeering gets an existing TransitGatewayPeering 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 NewTransitGatewayPeering

func NewTransitGatewayPeering(ctx *pulumi.Context,
	name string, args *TransitGatewayPeeringArgs, opts ...pulumi.ResourceOption) (*TransitGatewayPeering, error)

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

func (*TransitGatewayPeering) ElementType

func (*TransitGatewayPeering) ElementType() reflect.Type

func (*TransitGatewayPeering) ToTransitGatewayPeeringOutput

func (i *TransitGatewayPeering) ToTransitGatewayPeeringOutput() TransitGatewayPeeringOutput

func (*TransitGatewayPeering) ToTransitGatewayPeeringOutputWithContext

func (i *TransitGatewayPeering) ToTransitGatewayPeeringOutputWithContext(ctx context.Context) TransitGatewayPeeringOutput

type TransitGatewayPeeringArgs

type TransitGatewayPeeringArgs struct {
	// ID of a core network.
	CoreNetworkId pulumi.StringInput
	// Key-value tags for the peering. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// ARN of the transit gateway for the peering request.
	//
	// The following arguments are optional:
	TransitGatewayArn pulumi.StringInput
}

The set of arguments for constructing a TransitGatewayPeering resource.

func (TransitGatewayPeeringArgs) ElementType

func (TransitGatewayPeeringArgs) ElementType() reflect.Type

type TransitGatewayPeeringArray

type TransitGatewayPeeringArray []TransitGatewayPeeringInput

func (TransitGatewayPeeringArray) ElementType

func (TransitGatewayPeeringArray) ElementType() reflect.Type

func (TransitGatewayPeeringArray) ToTransitGatewayPeeringArrayOutput

func (i TransitGatewayPeeringArray) ToTransitGatewayPeeringArrayOutput() TransitGatewayPeeringArrayOutput

func (TransitGatewayPeeringArray) ToTransitGatewayPeeringArrayOutputWithContext

func (i TransitGatewayPeeringArray) ToTransitGatewayPeeringArrayOutputWithContext(ctx context.Context) TransitGatewayPeeringArrayOutput

type TransitGatewayPeeringArrayInput

type TransitGatewayPeeringArrayInput interface {
	pulumi.Input

	ToTransitGatewayPeeringArrayOutput() TransitGatewayPeeringArrayOutput
	ToTransitGatewayPeeringArrayOutputWithContext(context.Context) TransitGatewayPeeringArrayOutput
}

TransitGatewayPeeringArrayInput is an input type that accepts TransitGatewayPeeringArray and TransitGatewayPeeringArrayOutput values. You can construct a concrete instance of `TransitGatewayPeeringArrayInput` via:

TransitGatewayPeeringArray{ TransitGatewayPeeringArgs{...} }

type TransitGatewayPeeringArrayOutput

type TransitGatewayPeeringArrayOutput struct{ *pulumi.OutputState }

func (TransitGatewayPeeringArrayOutput) ElementType

func (TransitGatewayPeeringArrayOutput) Index

func (TransitGatewayPeeringArrayOutput) ToTransitGatewayPeeringArrayOutput

func (o TransitGatewayPeeringArrayOutput) ToTransitGatewayPeeringArrayOutput() TransitGatewayPeeringArrayOutput

func (TransitGatewayPeeringArrayOutput) ToTransitGatewayPeeringArrayOutputWithContext

func (o TransitGatewayPeeringArrayOutput) ToTransitGatewayPeeringArrayOutputWithContext(ctx context.Context) TransitGatewayPeeringArrayOutput

type TransitGatewayPeeringInput

type TransitGatewayPeeringInput interface {
	pulumi.Input

	ToTransitGatewayPeeringOutput() TransitGatewayPeeringOutput
	ToTransitGatewayPeeringOutputWithContext(ctx context.Context) TransitGatewayPeeringOutput
}

type TransitGatewayPeeringMap

type TransitGatewayPeeringMap map[string]TransitGatewayPeeringInput

func (TransitGatewayPeeringMap) ElementType

func (TransitGatewayPeeringMap) ElementType() reflect.Type

func (TransitGatewayPeeringMap) ToTransitGatewayPeeringMapOutput

func (i TransitGatewayPeeringMap) ToTransitGatewayPeeringMapOutput() TransitGatewayPeeringMapOutput

func (TransitGatewayPeeringMap) ToTransitGatewayPeeringMapOutputWithContext

func (i TransitGatewayPeeringMap) ToTransitGatewayPeeringMapOutputWithContext(ctx context.Context) TransitGatewayPeeringMapOutput

type TransitGatewayPeeringMapInput

type TransitGatewayPeeringMapInput interface {
	pulumi.Input

	ToTransitGatewayPeeringMapOutput() TransitGatewayPeeringMapOutput
	ToTransitGatewayPeeringMapOutputWithContext(context.Context) TransitGatewayPeeringMapOutput
}

TransitGatewayPeeringMapInput is an input type that accepts TransitGatewayPeeringMap and TransitGatewayPeeringMapOutput values. You can construct a concrete instance of `TransitGatewayPeeringMapInput` via:

TransitGatewayPeeringMap{ "key": TransitGatewayPeeringArgs{...} }

type TransitGatewayPeeringMapOutput

type TransitGatewayPeeringMapOutput struct{ *pulumi.OutputState }

func (TransitGatewayPeeringMapOutput) ElementType

func (TransitGatewayPeeringMapOutput) MapIndex

func (TransitGatewayPeeringMapOutput) ToTransitGatewayPeeringMapOutput

func (o TransitGatewayPeeringMapOutput) ToTransitGatewayPeeringMapOutput() TransitGatewayPeeringMapOutput

func (TransitGatewayPeeringMapOutput) ToTransitGatewayPeeringMapOutputWithContext

func (o TransitGatewayPeeringMapOutput) ToTransitGatewayPeeringMapOutputWithContext(ctx context.Context) TransitGatewayPeeringMapOutput

type TransitGatewayPeeringOutput

type TransitGatewayPeeringOutput struct{ *pulumi.OutputState }

func (TransitGatewayPeeringOutput) Arn

Peering ARN.

func (TransitGatewayPeeringOutput) CoreNetworkArn

func (o TransitGatewayPeeringOutput) CoreNetworkArn() pulumi.StringOutput

ARN of the core network.

func (TransitGatewayPeeringOutput) CoreNetworkId

ID of a core network.

func (TransitGatewayPeeringOutput) EdgeLocation

Edge location for the peer.

func (TransitGatewayPeeringOutput) ElementType

func (TransitGatewayPeeringOutput) OwnerAccountId

func (o TransitGatewayPeeringOutput) OwnerAccountId() pulumi.StringOutput

ID of the account owner.

func (TransitGatewayPeeringOutput) PeeringType

Type of peering. This will be `TRANSIT_GATEWAY`.

func (TransitGatewayPeeringOutput) ResourceArn

Resource ARN of the peer.

func (TransitGatewayPeeringOutput) Tags

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

func (TransitGatewayPeeringOutput) TagsAll

Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.

func (TransitGatewayPeeringOutput) ToTransitGatewayPeeringOutput

func (o TransitGatewayPeeringOutput) ToTransitGatewayPeeringOutput() TransitGatewayPeeringOutput

func (TransitGatewayPeeringOutput) ToTransitGatewayPeeringOutputWithContext

func (o TransitGatewayPeeringOutput) ToTransitGatewayPeeringOutputWithContext(ctx context.Context) TransitGatewayPeeringOutput

func (TransitGatewayPeeringOutput) TransitGatewayArn

func (o TransitGatewayPeeringOutput) TransitGatewayArn() pulumi.StringOutput

ARN of the transit gateway for the peering request.

The following arguments are optional:

func (TransitGatewayPeeringOutput) TransitGatewayPeeringAttachmentId

func (o TransitGatewayPeeringOutput) TransitGatewayPeeringAttachmentId() pulumi.StringOutput

ID of the transit gateway peering attachment.

type TransitGatewayPeeringState

type TransitGatewayPeeringState struct {
	// Peering ARN.
	Arn pulumi.StringPtrInput
	// ARN of the core network.
	CoreNetworkArn pulumi.StringPtrInput
	// ID of a core network.
	CoreNetworkId pulumi.StringPtrInput
	// Edge location for the peer.
	EdgeLocation pulumi.StringPtrInput
	// ID of the account owner.
	OwnerAccountId pulumi.StringPtrInput
	// Type of peering. This will be `TRANSIT_GATEWAY`.
	PeeringType pulumi.StringPtrInput
	// Resource ARN of the peer.
	ResourceArn pulumi.StringPtrInput
	// Key-value tags for the peering. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	TagsAll pulumi.StringMapInput
	// ARN of the transit gateway for the peering request.
	//
	// The following arguments are optional:
	TransitGatewayArn pulumi.StringPtrInput
	// ID of the transit gateway peering attachment.
	TransitGatewayPeeringAttachmentId pulumi.StringPtrInput
}

func (TransitGatewayPeeringState) ElementType

func (TransitGatewayPeeringState) ElementType() reflect.Type

type TransitGatewayRegistration

type TransitGatewayRegistration struct {
	pulumi.CustomResourceState

	// ID of the Global Network to register to.
	GlobalNetworkId pulumi.StringOutput `pulumi:"globalNetworkId"`
	// ARN of the Transit Gateway to register.
	TransitGatewayArn pulumi.StringOutput `pulumi:"transitGatewayArn"`
}

Manages a Network Manager transit gateway registration. Registers a transit gateway to a global network. The transit gateway can be in any AWS Region, but it must be owned by the same AWS account that owns the global network. You cannot register a transit gateway in more than one global network.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v7/go/aws/ec2transitgateway"
"github.com/pulumi/pulumi-aws/sdk/v7/go/aws/networkmanager"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := networkmanager.NewGlobalNetwork(ctx, "example", &networkmanager.GlobalNetworkArgs{
			Description: pulumi.String("example"),
		})
		if err != nil {
			return err
		}
		exampleTransitGateway, err := ec2transitgateway.NewTransitGateway(ctx, "example", nil)
		if err != nil {
			return err
		}
		_, err = networkmanager.NewTransitGatewayRegistration(ctx, "example", &networkmanager.TransitGatewayRegistrationArgs{
			GlobalNetworkId:   example.ID(),
			TransitGatewayArn: exampleTransitGateway.Arn,
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Using `pulumi import`, import `aws_networkmanager_transit_gateway_registration` using the global network ID and transit gateway ARN. For example:

```sh $ pulumi import aws:networkmanager/transitGatewayRegistration:TransitGatewayRegistration example global-network-0d47f6t230mz46dy4,arn:aws:ec2:us-west-2:123456789012:transit-gateway/tgw-123abc05e04123abc ```

func GetTransitGatewayRegistration

func GetTransitGatewayRegistration(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *TransitGatewayRegistrationState, opts ...pulumi.ResourceOption) (*TransitGatewayRegistration, error)

GetTransitGatewayRegistration gets an existing TransitGatewayRegistration 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 NewTransitGatewayRegistration

func NewTransitGatewayRegistration(ctx *pulumi.Context,
	name string, args *TransitGatewayRegistrationArgs, opts ...pulumi.ResourceOption) (*TransitGatewayRegistration, error)

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

func (*TransitGatewayRegistration) ElementType

func (*TransitGatewayRegistration) ElementType() reflect.Type

func (*TransitGatewayRegistration) ToTransitGatewayRegistrationOutput

func (i *TransitGatewayRegistration) ToTransitGatewayRegistrationOutput() TransitGatewayRegistrationOutput

func (*TransitGatewayRegistration) ToTransitGatewayRegistrationOutputWithContext

func (i *TransitGatewayRegistration) ToTransitGatewayRegistrationOutputWithContext(ctx context.Context) TransitGatewayRegistrationOutput

type TransitGatewayRegistrationArgs

type TransitGatewayRegistrationArgs struct {
	// ID of the Global Network to register to.
	GlobalNetworkId pulumi.StringInput
	// ARN of the Transit Gateway to register.
	TransitGatewayArn pulumi.StringInput
}

The set of arguments for constructing a TransitGatewayRegistration resource.

func (TransitGatewayRegistrationArgs) ElementType

type TransitGatewayRegistrationArray

type TransitGatewayRegistrationArray []TransitGatewayRegistrationInput

func (TransitGatewayRegistrationArray) ElementType

func (TransitGatewayRegistrationArray) ToTransitGatewayRegistrationArrayOutput

func (i TransitGatewayRegistrationArray) ToTransitGatewayRegistrationArrayOutput() TransitGatewayRegistrationArrayOutput

func (TransitGatewayRegistrationArray) ToTransitGatewayRegistrationArrayOutputWithContext

func (i TransitGatewayRegistrationArray) ToTransitGatewayRegistrationArrayOutputWithContext(ctx context.Context) TransitGatewayRegistrationArrayOutput

type TransitGatewayRegistrationArrayInput

type TransitGatewayRegistrationArrayInput interface {
	pulumi.Input

	ToTransitGatewayRegistrationArrayOutput() TransitGatewayRegistrationArrayOutput
	ToTransitGatewayRegistrationArrayOutputWithContext(context.Context) TransitGatewayRegistrationArrayOutput
}

TransitGatewayRegistrationArrayInput is an input type that accepts TransitGatewayRegistrationArray and TransitGatewayRegistrationArrayOutput values. You can construct a concrete instance of `TransitGatewayRegistrationArrayInput` via:

TransitGatewayRegistrationArray{ TransitGatewayRegistrationArgs{...} }

type TransitGatewayRegistrationArrayOutput

type TransitGatewayRegistrationArrayOutput struct{ *pulumi.OutputState }

func (TransitGatewayRegistrationArrayOutput) ElementType

func (TransitGatewayRegistrationArrayOutput) Index

func (TransitGatewayRegistrationArrayOutput) ToTransitGatewayRegistrationArrayOutput

func (o TransitGatewayRegistrationArrayOutput) ToTransitGatewayRegistrationArrayOutput() TransitGatewayRegistrationArrayOutput

func (TransitGatewayRegistrationArrayOutput) ToTransitGatewayRegistrationArrayOutputWithContext

func (o TransitGatewayRegistrationArrayOutput) ToTransitGatewayRegistrationArrayOutputWithContext(ctx context.Context) TransitGatewayRegistrationArrayOutput

type TransitGatewayRegistrationInput

type TransitGatewayRegistrationInput interface {
	pulumi.Input

	ToTransitGatewayRegistrationOutput() TransitGatewayRegistrationOutput
	ToTransitGatewayRegistrationOutputWithContext(ctx context.Context) TransitGatewayRegistrationOutput
}

type TransitGatewayRegistrationMap

type TransitGatewayRegistrationMap map[string]TransitGatewayRegistrationInput

func (TransitGatewayRegistrationMap) ElementType

func (TransitGatewayRegistrationMap) ToTransitGatewayRegistrationMapOutput

func (i TransitGatewayRegistrationMap) ToTransitGatewayRegistrationMapOutput() TransitGatewayRegistrationMapOutput

func (TransitGatewayRegistrationMap) ToTransitGatewayRegistrationMapOutputWithContext

func (i TransitGatewayRegistrationMap) ToTransitGatewayRegistrationMapOutputWithContext(ctx context.Context) TransitGatewayRegistrationMapOutput

type TransitGatewayRegistrationMapInput

type TransitGatewayRegistrationMapInput interface {
	pulumi.Input

	ToTransitGatewayRegistrationMapOutput() TransitGatewayRegistrationMapOutput
	ToTransitGatewayRegistrationMapOutputWithContext(context.Context) TransitGatewayRegistrationMapOutput
}

TransitGatewayRegistrationMapInput is an input type that accepts TransitGatewayRegistrationMap and TransitGatewayRegistrationMapOutput values. You can construct a concrete instance of `TransitGatewayRegistrationMapInput` via:

TransitGatewayRegistrationMap{ "key": TransitGatewayRegistrationArgs{...} }

type TransitGatewayRegistrationMapOutput

type TransitGatewayRegistrationMapOutput struct{ *pulumi.OutputState }

func (TransitGatewayRegistrationMapOutput) ElementType

func (TransitGatewayRegistrationMapOutput) MapIndex

func (TransitGatewayRegistrationMapOutput) ToTransitGatewayRegistrationMapOutput

func (o TransitGatewayRegistrationMapOutput) ToTransitGatewayRegistrationMapOutput() TransitGatewayRegistrationMapOutput

func (TransitGatewayRegistrationMapOutput) ToTransitGatewayRegistrationMapOutputWithContext

func (o TransitGatewayRegistrationMapOutput) ToTransitGatewayRegistrationMapOutputWithContext(ctx context.Context) TransitGatewayRegistrationMapOutput

type TransitGatewayRegistrationOutput

type TransitGatewayRegistrationOutput struct{ *pulumi.OutputState }

func (TransitGatewayRegistrationOutput) ElementType

func (TransitGatewayRegistrationOutput) GlobalNetworkId

ID of the Global Network to register to.

func (TransitGatewayRegistrationOutput) ToTransitGatewayRegistrationOutput

func (o TransitGatewayRegistrationOutput) ToTransitGatewayRegistrationOutput() TransitGatewayRegistrationOutput

func (TransitGatewayRegistrationOutput) ToTransitGatewayRegistrationOutputWithContext

func (o TransitGatewayRegistrationOutput) ToTransitGatewayRegistrationOutputWithContext(ctx context.Context) TransitGatewayRegistrationOutput

func (TransitGatewayRegistrationOutput) TransitGatewayArn

ARN of the Transit Gateway to register.

type TransitGatewayRegistrationState

type TransitGatewayRegistrationState struct {
	// ID of the Global Network to register to.
	GlobalNetworkId pulumi.StringPtrInput
	// ARN of the Transit Gateway to register.
	TransitGatewayArn pulumi.StringPtrInput
}

func (TransitGatewayRegistrationState) ElementType

type TransitGatewayRouteTableAttachment

type TransitGatewayRouteTableAttachment struct {
	pulumi.CustomResourceState

	// Attachment ARN.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// Policy rule number associated with the attachment.
	AttachmentPolicyRuleNumber pulumi.IntOutput `pulumi:"attachmentPolicyRuleNumber"`
	// Type of attachment.
	AttachmentType pulumi.StringOutput `pulumi:"attachmentType"`
	// ARN of the core network.
	CoreNetworkArn pulumi.StringOutput `pulumi:"coreNetworkArn"`
	// ID of the core network.
	CoreNetworkId pulumi.StringOutput `pulumi:"coreNetworkId"`
	// Edge location for the peer.
	EdgeLocation pulumi.StringOutput `pulumi:"edgeLocation"`
	// ID of the attachment account owner.
	OwnerAccountId pulumi.StringOutput `pulumi:"ownerAccountId"`
	// ID of the peer for the attachment.
	PeeringId pulumi.StringOutput `pulumi:"peeringId"`
	// Attachment resource ARN.
	ResourceArn pulumi.StringOutput `pulumi:"resourceArn"`
	// Name of the segment attachment.
	SegmentName pulumi.StringOutput `pulumi:"segmentName"`
	// State of the attachment.
	State pulumi.StringOutput `pulumi:"state"`
	// Key-value tags for the attachment. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
	// ARN of the transit gateway route table for the attachment.
	//
	// The following arguments are optional:
	TransitGatewayRouteTableArn pulumi.StringOutput `pulumi:"transitGatewayRouteTableArn"`
}

Manages a Network Manager transit gateway route table attachment.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v7/go/aws/networkmanager"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := networkmanager.NewTransitGatewayRouteTableAttachment(ctx, "example", &networkmanager.TransitGatewayRouteTableAttachmentArgs{
			PeeringId:                   pulumi.Any(exampleAwsNetworkmanagerTransitGatewayPeering.Id),
			TransitGatewayRouteTableArn: pulumi.Any(exampleAwsEc2TransitGatewayRouteTable.Arn),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

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

```sh $ pulumi import aws:networkmanager/transitGatewayRouteTableAttachment:TransitGatewayRouteTableAttachment example attachment-0f8fa60d2238d1bd8 ```

func GetTransitGatewayRouteTableAttachment

func GetTransitGatewayRouteTableAttachment(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *TransitGatewayRouteTableAttachmentState, opts ...pulumi.ResourceOption) (*TransitGatewayRouteTableAttachment, error)

GetTransitGatewayRouteTableAttachment gets an existing TransitGatewayRouteTableAttachment 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 NewTransitGatewayRouteTableAttachment

func NewTransitGatewayRouteTableAttachment(ctx *pulumi.Context,
	name string, args *TransitGatewayRouteTableAttachmentArgs, opts ...pulumi.ResourceOption) (*TransitGatewayRouteTableAttachment, error)

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

func (*TransitGatewayRouteTableAttachment) ElementType

func (*TransitGatewayRouteTableAttachment) ToTransitGatewayRouteTableAttachmentOutput

func (i *TransitGatewayRouteTableAttachment) ToTransitGatewayRouteTableAttachmentOutput() TransitGatewayRouteTableAttachmentOutput

func (*TransitGatewayRouteTableAttachment) ToTransitGatewayRouteTableAttachmentOutputWithContext

func (i *TransitGatewayRouteTableAttachment) ToTransitGatewayRouteTableAttachmentOutputWithContext(ctx context.Context) TransitGatewayRouteTableAttachmentOutput

type TransitGatewayRouteTableAttachmentArgs

type TransitGatewayRouteTableAttachmentArgs struct {
	// ID of the peer for the attachment.
	PeeringId pulumi.StringInput
	// Key-value tags for the attachment. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// ARN of the transit gateway route table for the attachment.
	//
	// The following arguments are optional:
	TransitGatewayRouteTableArn pulumi.StringInput
}

The set of arguments for constructing a TransitGatewayRouteTableAttachment resource.

func (TransitGatewayRouteTableAttachmentArgs) ElementType

type TransitGatewayRouteTableAttachmentArray

type TransitGatewayRouteTableAttachmentArray []TransitGatewayRouteTableAttachmentInput

func (TransitGatewayRouteTableAttachmentArray) ElementType

func (TransitGatewayRouteTableAttachmentArray) ToTransitGatewayRouteTableAttachmentArrayOutput

func (i TransitGatewayRouteTableAttachmentArray) ToTransitGatewayRouteTableAttachmentArrayOutput() TransitGatewayRouteTableAttachmentArrayOutput

func (TransitGatewayRouteTableAttachmentArray) ToTransitGatewayRouteTableAttachmentArrayOutputWithContext

func (i TransitGatewayRouteTableAttachmentArray) ToTransitGatewayRouteTableAttachmentArrayOutputWithContext(ctx context.Context) TransitGatewayRouteTableAttachmentArrayOutput

type TransitGatewayRouteTableAttachmentArrayInput

type TransitGatewayRouteTableAttachmentArrayInput interface {
	pulumi.Input

	ToTransitGatewayRouteTableAttachmentArrayOutput() TransitGatewayRouteTableAttachmentArrayOutput
	ToTransitGatewayRouteTableAttachmentArrayOutputWithContext(context.Context) TransitGatewayRouteTableAttachmentArrayOutput
}

TransitGatewayRouteTableAttachmentArrayInput is an input type that accepts TransitGatewayRouteTableAttachmentArray and TransitGatewayRouteTableAttachmentArrayOutput values. You can construct a concrete instance of `TransitGatewayRouteTableAttachmentArrayInput` via:

TransitGatewayRouteTableAttachmentArray{ TransitGatewayRouteTableAttachmentArgs{...} }

type TransitGatewayRouteTableAttachmentArrayOutput

type TransitGatewayRouteTableAttachmentArrayOutput struct{ *pulumi.OutputState }

func (TransitGatewayRouteTableAttachmentArrayOutput) ElementType

func (TransitGatewayRouteTableAttachmentArrayOutput) Index

func (TransitGatewayRouteTableAttachmentArrayOutput) ToTransitGatewayRouteTableAttachmentArrayOutput

func (o TransitGatewayRouteTableAttachmentArrayOutput) ToTransitGatewayRouteTableAttachmentArrayOutput() TransitGatewayRouteTableAttachmentArrayOutput

func (TransitGatewayRouteTableAttachmentArrayOutput) ToTransitGatewayRouteTableAttachmentArrayOutputWithContext

func (o TransitGatewayRouteTableAttachmentArrayOutput) ToTransitGatewayRouteTableAttachmentArrayOutputWithContext(ctx context.Context) TransitGatewayRouteTableAttachmentArrayOutput

type TransitGatewayRouteTableAttachmentInput

type TransitGatewayRouteTableAttachmentInput interface {
	pulumi.Input

	ToTransitGatewayRouteTableAttachmentOutput() TransitGatewayRouteTableAttachmentOutput
	ToTransitGatewayRouteTableAttachmentOutputWithContext(ctx context.Context) TransitGatewayRouteTableAttachmentOutput
}

type TransitGatewayRouteTableAttachmentMap

type TransitGatewayRouteTableAttachmentMap map[string]TransitGatewayRouteTableAttachmentInput

func (TransitGatewayRouteTableAttachmentMap) ElementType

func (TransitGatewayRouteTableAttachmentMap) ToTransitGatewayRouteTableAttachmentMapOutput

func (i TransitGatewayRouteTableAttachmentMap) ToTransitGatewayRouteTableAttachmentMapOutput() TransitGatewayRouteTableAttachmentMapOutput

func (TransitGatewayRouteTableAttachmentMap) ToTransitGatewayRouteTableAttachmentMapOutputWithContext

func (i TransitGatewayRouteTableAttachmentMap) ToTransitGatewayRouteTableAttachmentMapOutputWithContext(ctx context.Context) TransitGatewayRouteTableAttachmentMapOutput

type TransitGatewayRouteTableAttachmentMapInput

type TransitGatewayRouteTableAttachmentMapInput interface {
	pulumi.Input

	ToTransitGatewayRouteTableAttachmentMapOutput() TransitGatewayRouteTableAttachmentMapOutput
	ToTransitGatewayRouteTableAttachmentMapOutputWithContext(context.Context) TransitGatewayRouteTableAttachmentMapOutput
}

TransitGatewayRouteTableAttachmentMapInput is an input type that accepts TransitGatewayRouteTableAttachmentMap and TransitGatewayRouteTableAttachmentMapOutput values. You can construct a concrete instance of `TransitGatewayRouteTableAttachmentMapInput` via:

TransitGatewayRouteTableAttachmentMap{ "key": TransitGatewayRouteTableAttachmentArgs{...} }

type TransitGatewayRouteTableAttachmentMapOutput

type TransitGatewayRouteTableAttachmentMapOutput struct{ *pulumi.OutputState }

func (TransitGatewayRouteTableAttachmentMapOutput) ElementType

func (TransitGatewayRouteTableAttachmentMapOutput) MapIndex

func (TransitGatewayRouteTableAttachmentMapOutput) ToTransitGatewayRouteTableAttachmentMapOutput

func (o TransitGatewayRouteTableAttachmentMapOutput) ToTransitGatewayRouteTableAttachmentMapOutput() TransitGatewayRouteTableAttachmentMapOutput

func (TransitGatewayRouteTableAttachmentMapOutput) ToTransitGatewayRouteTableAttachmentMapOutputWithContext

func (o TransitGatewayRouteTableAttachmentMapOutput) ToTransitGatewayRouteTableAttachmentMapOutputWithContext(ctx context.Context) TransitGatewayRouteTableAttachmentMapOutput

type TransitGatewayRouteTableAttachmentOutput

type TransitGatewayRouteTableAttachmentOutput struct{ *pulumi.OutputState }

func (TransitGatewayRouteTableAttachmentOutput) Arn

Attachment ARN.

func (TransitGatewayRouteTableAttachmentOutput) AttachmentPolicyRuleNumber

func (o TransitGatewayRouteTableAttachmentOutput) AttachmentPolicyRuleNumber() pulumi.IntOutput

Policy rule number associated with the attachment.

func (TransitGatewayRouteTableAttachmentOutput) AttachmentType

Type of attachment.

func (TransitGatewayRouteTableAttachmentOutput) CoreNetworkArn

ARN of the core network.

func (TransitGatewayRouteTableAttachmentOutput) CoreNetworkId

ID of the core network.

func (TransitGatewayRouteTableAttachmentOutput) EdgeLocation

Edge location for the peer.

func (TransitGatewayRouteTableAttachmentOutput) ElementType

func (TransitGatewayRouteTableAttachmentOutput) OwnerAccountId

ID of the attachment account owner.

func (TransitGatewayRouteTableAttachmentOutput) PeeringId

ID of the peer for the attachment.

func (TransitGatewayRouteTableAttachmentOutput) ResourceArn

Attachment resource ARN.

func (TransitGatewayRouteTableAttachmentOutput) SegmentName

Name of the segment attachment.

func (TransitGatewayRouteTableAttachmentOutput) State

State of the attachment.

func (TransitGatewayRouteTableAttachmentOutput) Tags

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

func (TransitGatewayRouteTableAttachmentOutput) TagsAll

Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.

func (TransitGatewayRouteTableAttachmentOutput) ToTransitGatewayRouteTableAttachmentOutput

func (o TransitGatewayRouteTableAttachmentOutput) ToTransitGatewayRouteTableAttachmentOutput() TransitGatewayRouteTableAttachmentOutput

func (TransitGatewayRouteTableAttachmentOutput) ToTransitGatewayRouteTableAttachmentOutputWithContext

func (o TransitGatewayRouteTableAttachmentOutput) ToTransitGatewayRouteTableAttachmentOutputWithContext(ctx context.Context) TransitGatewayRouteTableAttachmentOutput

func (TransitGatewayRouteTableAttachmentOutput) TransitGatewayRouteTableArn

func (o TransitGatewayRouteTableAttachmentOutput) TransitGatewayRouteTableArn() pulumi.StringOutput

ARN of the transit gateway route table for the attachment.

The following arguments are optional:

type TransitGatewayRouteTableAttachmentState

type TransitGatewayRouteTableAttachmentState struct {
	// Attachment ARN.
	Arn pulumi.StringPtrInput
	// Policy rule number associated with the attachment.
	AttachmentPolicyRuleNumber pulumi.IntPtrInput
	// Type of attachment.
	AttachmentType pulumi.StringPtrInput
	// ARN of the core network.
	CoreNetworkArn pulumi.StringPtrInput
	// ID of the core network.
	CoreNetworkId pulumi.StringPtrInput
	// Edge location for the peer.
	EdgeLocation pulumi.StringPtrInput
	// ID of the attachment account owner.
	OwnerAccountId pulumi.StringPtrInput
	// ID of the peer for the attachment.
	PeeringId pulumi.StringPtrInput
	// Attachment resource ARN.
	ResourceArn pulumi.StringPtrInput
	// Name of the segment attachment.
	SegmentName pulumi.StringPtrInput
	// State of the attachment.
	State pulumi.StringPtrInput
	// Key-value tags for the attachment. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	TagsAll pulumi.StringMapInput
	// ARN of the transit gateway route table for the attachment.
	//
	// The following arguments are optional:
	TransitGatewayRouteTableArn pulumi.StringPtrInput
}

func (TransitGatewayRouteTableAttachmentState) ElementType

type VpcAttachment

type VpcAttachment struct {
	pulumi.CustomResourceState

	// ARN of the attachment.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// Policy rule number associated with the attachment.
	AttachmentPolicyRuleNumber pulumi.IntOutput `pulumi:"attachmentPolicyRuleNumber"`
	// Type of attachment.
	AttachmentType pulumi.StringOutput `pulumi:"attachmentType"`
	// ARN of a core network.
	CoreNetworkArn pulumi.StringOutput `pulumi:"coreNetworkArn"`
	// ID of a core network for the VPC attachment.
	CoreNetworkId pulumi.StringOutput `pulumi:"coreNetworkId"`
	// Region where the edge is located.
	EdgeLocation pulumi.StringOutput `pulumi:"edgeLocation"`
	// Options for the VPC attachment. See below.
	Options VpcAttachmentOptionsPtrOutput `pulumi:"options"`
	// ID of the attachment account owner.
	OwnerAccountId pulumi.StringOutput `pulumi:"ownerAccountId"`
	// Attachment resource ARN.
	ResourceArn pulumi.StringOutput `pulumi:"resourceArn"`
	// Name of the segment attachment.
	SegmentName pulumi.StringOutput `pulumi:"segmentName"`
	// State of the attachment.
	State pulumi.StringOutput `pulumi:"state"`
	// Subnet ARNs of the VPC attachment.
	SubnetArns pulumi.StringArrayOutput `pulumi:"subnetArns"`
	// Key-value tags for the attachment. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
	// ARN of the VPC.
	//
	// The following arguments are optional:
	VpcArn pulumi.StringOutput `pulumi:"vpcArn"`
}

Manages a Network Manager VPC attachment.

## Example Usage

### Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v7/go/aws/networkmanager"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := networkmanager.NewVpcAttachment(ctx, "example", &networkmanager.VpcAttachmentArgs{
			SubnetArns: pulumi.StringArray{
				exampleAwsSubnet.Arn,
			},
			CoreNetworkId: pulumi.Any(exampleAwsccNetworkmanagerCoreNetwork.Id),
			VpcArn:        pulumi.Any(exampleAwsVpc.Arn),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

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

```sh $ pulumi import aws:networkmanager/vpcAttachment:VpcAttachment example attachment-0f8fa60d2238d1bd8 ```

func GetVpcAttachment

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

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

func NewVpcAttachment

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

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

func (*VpcAttachment) ElementType

func (*VpcAttachment) ElementType() reflect.Type

func (*VpcAttachment) ToVpcAttachmentOutput

func (i *VpcAttachment) ToVpcAttachmentOutput() VpcAttachmentOutput

func (*VpcAttachment) ToVpcAttachmentOutputWithContext

func (i *VpcAttachment) ToVpcAttachmentOutputWithContext(ctx context.Context) VpcAttachmentOutput

type VpcAttachmentArgs

type VpcAttachmentArgs struct {
	// ID of a core network for the VPC attachment.
	CoreNetworkId pulumi.StringInput
	// Options for the VPC attachment. See below.
	Options VpcAttachmentOptionsPtrInput
	// Subnet ARNs of the VPC attachment.
	SubnetArns pulumi.StringArrayInput
	// Key-value tags for the attachment. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// ARN of the VPC.
	//
	// The following arguments are optional:
	VpcArn pulumi.StringInput
}

The set of arguments for constructing a VpcAttachment resource.

func (VpcAttachmentArgs) ElementType

func (VpcAttachmentArgs) ElementType() reflect.Type

type VpcAttachmentArray

type VpcAttachmentArray []VpcAttachmentInput

func (VpcAttachmentArray) ElementType

func (VpcAttachmentArray) ElementType() reflect.Type

func (VpcAttachmentArray) ToVpcAttachmentArrayOutput

func (i VpcAttachmentArray) ToVpcAttachmentArrayOutput() VpcAttachmentArrayOutput

func (VpcAttachmentArray) ToVpcAttachmentArrayOutputWithContext

func (i VpcAttachmentArray) ToVpcAttachmentArrayOutputWithContext(ctx context.Context) VpcAttachmentArrayOutput

type VpcAttachmentArrayInput

type VpcAttachmentArrayInput interface {
	pulumi.Input

	ToVpcAttachmentArrayOutput() VpcAttachmentArrayOutput
	ToVpcAttachmentArrayOutputWithContext(context.Context) VpcAttachmentArrayOutput
}

VpcAttachmentArrayInput is an input type that accepts VpcAttachmentArray and VpcAttachmentArrayOutput values. You can construct a concrete instance of `VpcAttachmentArrayInput` via:

VpcAttachmentArray{ VpcAttachmentArgs{...} }

type VpcAttachmentArrayOutput

type VpcAttachmentArrayOutput struct{ *pulumi.OutputState }

func (VpcAttachmentArrayOutput) ElementType

func (VpcAttachmentArrayOutput) ElementType() reflect.Type

func (VpcAttachmentArrayOutput) Index

func (VpcAttachmentArrayOutput) ToVpcAttachmentArrayOutput

func (o VpcAttachmentArrayOutput) ToVpcAttachmentArrayOutput() VpcAttachmentArrayOutput

func (VpcAttachmentArrayOutput) ToVpcAttachmentArrayOutputWithContext

func (o VpcAttachmentArrayOutput) ToVpcAttachmentArrayOutputWithContext(ctx context.Context) VpcAttachmentArrayOutput

type VpcAttachmentInput

type VpcAttachmentInput interface {
	pulumi.Input

	ToVpcAttachmentOutput() VpcAttachmentOutput
	ToVpcAttachmentOutputWithContext(ctx context.Context) VpcAttachmentOutput
}

type VpcAttachmentMap

type VpcAttachmentMap map[string]VpcAttachmentInput

func (VpcAttachmentMap) ElementType

func (VpcAttachmentMap) ElementType() reflect.Type

func (VpcAttachmentMap) ToVpcAttachmentMapOutput

func (i VpcAttachmentMap) ToVpcAttachmentMapOutput() VpcAttachmentMapOutput

func (VpcAttachmentMap) ToVpcAttachmentMapOutputWithContext

func (i VpcAttachmentMap) ToVpcAttachmentMapOutputWithContext(ctx context.Context) VpcAttachmentMapOutput

type VpcAttachmentMapInput

type VpcAttachmentMapInput interface {
	pulumi.Input

	ToVpcAttachmentMapOutput() VpcAttachmentMapOutput
	ToVpcAttachmentMapOutputWithContext(context.Context) VpcAttachmentMapOutput
}

VpcAttachmentMapInput is an input type that accepts VpcAttachmentMap and VpcAttachmentMapOutput values. You can construct a concrete instance of `VpcAttachmentMapInput` via:

VpcAttachmentMap{ "key": VpcAttachmentArgs{...} }

type VpcAttachmentMapOutput

type VpcAttachmentMapOutput struct{ *pulumi.OutputState }

func (VpcAttachmentMapOutput) ElementType

func (VpcAttachmentMapOutput) ElementType() reflect.Type

func (VpcAttachmentMapOutput) MapIndex

func (VpcAttachmentMapOutput) ToVpcAttachmentMapOutput

func (o VpcAttachmentMapOutput) ToVpcAttachmentMapOutput() VpcAttachmentMapOutput

func (VpcAttachmentMapOutput) ToVpcAttachmentMapOutputWithContext

func (o VpcAttachmentMapOutput) ToVpcAttachmentMapOutputWithContext(ctx context.Context) VpcAttachmentMapOutput

type VpcAttachmentOptions

type VpcAttachmentOptions struct {
	// Whether to enable appliance mode support. If enabled, traffic flow between a source and destination use the same Availability Zone for the VPC attachment for the lifetime of that flow. If the VPC attachment is pending acceptance, changing this value will recreate the resource.
	ApplianceModeSupport *bool `pulumi:"applianceModeSupport"`
	// Whether to enable IPv6 support. If the VPC attachment is pending acceptance, changing this value will recreate the resource.
	Ipv6Support *bool `pulumi:"ipv6Support"`
}

type VpcAttachmentOptionsArgs

type VpcAttachmentOptionsArgs struct {
	// Whether to enable appliance mode support. If enabled, traffic flow between a source and destination use the same Availability Zone for the VPC attachment for the lifetime of that flow. If the VPC attachment is pending acceptance, changing this value will recreate the resource.
	ApplianceModeSupport pulumi.BoolPtrInput `pulumi:"applianceModeSupport"`
	// Whether to enable IPv6 support. If the VPC attachment is pending acceptance, changing this value will recreate the resource.
	Ipv6Support pulumi.BoolPtrInput `pulumi:"ipv6Support"`
}

func (VpcAttachmentOptionsArgs) ElementType

func (VpcAttachmentOptionsArgs) ElementType() reflect.Type

func (VpcAttachmentOptionsArgs) ToVpcAttachmentOptionsOutput

func (i VpcAttachmentOptionsArgs) ToVpcAttachmentOptionsOutput() VpcAttachmentOptionsOutput

func (VpcAttachmentOptionsArgs) ToVpcAttachmentOptionsOutputWithContext

func (i VpcAttachmentOptionsArgs) ToVpcAttachmentOptionsOutputWithContext(ctx context.Context) VpcAttachmentOptionsOutput

func (VpcAttachmentOptionsArgs) ToVpcAttachmentOptionsPtrOutput

func (i VpcAttachmentOptionsArgs) ToVpcAttachmentOptionsPtrOutput() VpcAttachmentOptionsPtrOutput

func (VpcAttachmentOptionsArgs) ToVpcAttachmentOptionsPtrOutputWithContext

func (i VpcAttachmentOptionsArgs) ToVpcAttachmentOptionsPtrOutputWithContext(ctx context.Context) VpcAttachmentOptionsPtrOutput

type VpcAttachmentOptionsInput

type VpcAttachmentOptionsInput interface {
	pulumi.Input

	ToVpcAttachmentOptionsOutput() VpcAttachmentOptionsOutput
	ToVpcAttachmentOptionsOutputWithContext(context.Context) VpcAttachmentOptionsOutput
}

VpcAttachmentOptionsInput is an input type that accepts VpcAttachmentOptionsArgs and VpcAttachmentOptionsOutput values. You can construct a concrete instance of `VpcAttachmentOptionsInput` via:

VpcAttachmentOptionsArgs{...}

type VpcAttachmentOptionsOutput

type VpcAttachmentOptionsOutput struct{ *pulumi.OutputState }

func (VpcAttachmentOptionsOutput) ApplianceModeSupport

func (o VpcAttachmentOptionsOutput) ApplianceModeSupport() pulumi.BoolPtrOutput

Whether to enable appliance mode support. If enabled, traffic flow between a source and destination use the same Availability Zone for the VPC attachment for the lifetime of that flow. If the VPC attachment is pending acceptance, changing this value will recreate the resource.

func (VpcAttachmentOptionsOutput) ElementType

func (VpcAttachmentOptionsOutput) ElementType() reflect.Type

func (VpcAttachmentOptionsOutput) Ipv6Support

Whether to enable IPv6 support. If the VPC attachment is pending acceptance, changing this value will recreate the resource.

func (VpcAttachmentOptionsOutput) ToVpcAttachmentOptionsOutput

func (o VpcAttachmentOptionsOutput) ToVpcAttachmentOptionsOutput() VpcAttachmentOptionsOutput

func (VpcAttachmentOptionsOutput) ToVpcAttachmentOptionsOutputWithContext

func (o VpcAttachmentOptionsOutput) ToVpcAttachmentOptionsOutputWithContext(ctx context.Context) VpcAttachmentOptionsOutput

func (VpcAttachmentOptionsOutput) ToVpcAttachmentOptionsPtrOutput

func (o VpcAttachmentOptionsOutput) ToVpcAttachmentOptionsPtrOutput() VpcAttachmentOptionsPtrOutput

func (VpcAttachmentOptionsOutput) ToVpcAttachmentOptionsPtrOutputWithContext

func (o VpcAttachmentOptionsOutput) ToVpcAttachmentOptionsPtrOutputWithContext(ctx context.Context) VpcAttachmentOptionsPtrOutput

type VpcAttachmentOptionsPtrInput

type VpcAttachmentOptionsPtrInput interface {
	pulumi.Input

	ToVpcAttachmentOptionsPtrOutput() VpcAttachmentOptionsPtrOutput
	ToVpcAttachmentOptionsPtrOutputWithContext(context.Context) VpcAttachmentOptionsPtrOutput
}

VpcAttachmentOptionsPtrInput is an input type that accepts VpcAttachmentOptionsArgs, VpcAttachmentOptionsPtr and VpcAttachmentOptionsPtrOutput values. You can construct a concrete instance of `VpcAttachmentOptionsPtrInput` via:

        VpcAttachmentOptionsArgs{...}

or:

        nil

type VpcAttachmentOptionsPtrOutput

type VpcAttachmentOptionsPtrOutput struct{ *pulumi.OutputState }

func (VpcAttachmentOptionsPtrOutput) ApplianceModeSupport

func (o VpcAttachmentOptionsPtrOutput) ApplianceModeSupport() pulumi.BoolPtrOutput

Whether to enable appliance mode support. If enabled, traffic flow between a source and destination use the same Availability Zone for the VPC attachment for the lifetime of that flow. If the VPC attachment is pending acceptance, changing this value will recreate the resource.

func (VpcAttachmentOptionsPtrOutput) Elem

func (VpcAttachmentOptionsPtrOutput) ElementType

func (VpcAttachmentOptionsPtrOutput) Ipv6Support

Whether to enable IPv6 support. If the VPC attachment is pending acceptance, changing this value will recreate the resource.

func (VpcAttachmentOptionsPtrOutput) ToVpcAttachmentOptionsPtrOutput

func (o VpcAttachmentOptionsPtrOutput) ToVpcAttachmentOptionsPtrOutput() VpcAttachmentOptionsPtrOutput

func (VpcAttachmentOptionsPtrOutput) ToVpcAttachmentOptionsPtrOutputWithContext

func (o VpcAttachmentOptionsPtrOutput) ToVpcAttachmentOptionsPtrOutputWithContext(ctx context.Context) VpcAttachmentOptionsPtrOutput

type VpcAttachmentOutput

type VpcAttachmentOutput struct{ *pulumi.OutputState }

func (VpcAttachmentOutput) Arn

ARN of the attachment.

func (VpcAttachmentOutput) AttachmentPolicyRuleNumber

func (o VpcAttachmentOutput) AttachmentPolicyRuleNumber() pulumi.IntOutput

Policy rule number associated with the attachment.

func (VpcAttachmentOutput) AttachmentType

func (o VpcAttachmentOutput) AttachmentType() pulumi.StringOutput

Type of attachment.

func (VpcAttachmentOutput) CoreNetworkArn

func (o VpcAttachmentOutput) CoreNetworkArn() pulumi.StringOutput

ARN of a core network.

func (VpcAttachmentOutput) CoreNetworkId

func (o VpcAttachmentOutput) CoreNetworkId() pulumi.StringOutput

ID of a core network for the VPC attachment.

func (VpcAttachmentOutput) EdgeLocation

func (o VpcAttachmentOutput) EdgeLocation() pulumi.StringOutput

Region where the edge is located.

func (VpcAttachmentOutput) ElementType

func (VpcAttachmentOutput) ElementType() reflect.Type

func (VpcAttachmentOutput) Options

Options for the VPC attachment. See below.

func (VpcAttachmentOutput) OwnerAccountId

func (o VpcAttachmentOutput) OwnerAccountId() pulumi.StringOutput

ID of the attachment account owner.

func (VpcAttachmentOutput) ResourceArn

func (o VpcAttachmentOutput) ResourceArn() pulumi.StringOutput

Attachment resource ARN.

func (VpcAttachmentOutput) SegmentName

func (o VpcAttachmentOutput) SegmentName() pulumi.StringOutput

Name of the segment attachment.

func (VpcAttachmentOutput) State

State of the attachment.

func (VpcAttachmentOutput) SubnetArns

Subnet ARNs of the VPC attachment.

func (VpcAttachmentOutput) Tags

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

func (VpcAttachmentOutput) TagsAll

Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.

func (VpcAttachmentOutput) ToVpcAttachmentOutput

func (o VpcAttachmentOutput) ToVpcAttachmentOutput() VpcAttachmentOutput

func (VpcAttachmentOutput) ToVpcAttachmentOutputWithContext

func (o VpcAttachmentOutput) ToVpcAttachmentOutputWithContext(ctx context.Context) VpcAttachmentOutput

func (VpcAttachmentOutput) VpcArn

ARN of the VPC.

The following arguments are optional:

type VpcAttachmentState

type VpcAttachmentState struct {
	// ARN of the attachment.
	Arn pulumi.StringPtrInput
	// Policy rule number associated with the attachment.
	AttachmentPolicyRuleNumber pulumi.IntPtrInput
	// Type of attachment.
	AttachmentType pulumi.StringPtrInput
	// ARN of a core network.
	CoreNetworkArn pulumi.StringPtrInput
	// ID of a core network for the VPC attachment.
	CoreNetworkId pulumi.StringPtrInput
	// Region where the edge is located.
	EdgeLocation pulumi.StringPtrInput
	// Options for the VPC attachment. See below.
	Options VpcAttachmentOptionsPtrInput
	// ID of the attachment account owner.
	OwnerAccountId pulumi.StringPtrInput
	// Attachment resource ARN.
	ResourceArn pulumi.StringPtrInput
	// Name of the segment attachment.
	SegmentName pulumi.StringPtrInput
	// State of the attachment.
	State pulumi.StringPtrInput
	// Subnet ARNs of the VPC attachment.
	SubnetArns pulumi.StringArrayInput
	// Key-value tags for the attachment. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	TagsAll pulumi.StringMapInput
	// ARN of the VPC.
	//
	// The following arguments are optional:
	VpcArn pulumi.StringPtrInput
}

func (VpcAttachmentState) ElementType

func (VpcAttachmentState) ElementType() reflect.Type

Jump to

Keyboard shortcuts

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