vpc

package
v6.83.2 Latest Latest
Warning

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

Go to latest
Published: Nov 11, 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 EndpointPrivateDns added in v6.38.0

type EndpointPrivateDns struct {
	pulumi.CustomResourceState

	// Indicates whether a private hosted zone is associated with the VPC. Only applicable for `Interface` endpoints.
	PrivateDnsEnabled pulumi.BoolOutput `pulumi:"privateDnsEnabled"`
	// VPC endpoint identifier.
	VpcEndpointId pulumi.StringOutput `pulumi:"vpcEndpointId"`
}

Resource for enabling private DNS on an AWS VPC (Virtual Private Cloud) Endpoint.

> When using this resource, the `privateDnsEnabled` argument should be omitted on the parent `ec2.VpcEndpoint` resource. Setting the value both places can lead to unintended behavior and persistent differences.

## Example Usage

### Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/vpc"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := vpc.NewEndpointPrivateDns(ctx, "example", &vpc.EndpointPrivateDnsArgs{
			VpcEndpointId:     pulumi.Any(exampleAwsVpcEndpoint.Id),
			PrivateDnsEnabled: pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Using `pulumi import`, import a VPC (Virtual Private Cloud) Endpoint Private DNS using the `vpc_endpoint_id`. For example:

```sh $ pulumi import aws:vpc/endpointPrivateDns:EndpointPrivateDns example vpce-abcd-1234 ```

func GetEndpointPrivateDns added in v6.38.0

func GetEndpointPrivateDns(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *EndpointPrivateDnsState, opts ...pulumi.ResourceOption) (*EndpointPrivateDns, error)

GetEndpointPrivateDns gets an existing EndpointPrivateDns 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 NewEndpointPrivateDns added in v6.38.0

func NewEndpointPrivateDns(ctx *pulumi.Context,
	name string, args *EndpointPrivateDnsArgs, opts ...pulumi.ResourceOption) (*EndpointPrivateDns, error)

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

func (*EndpointPrivateDns) ElementType added in v6.38.0

func (*EndpointPrivateDns) ElementType() reflect.Type

func (*EndpointPrivateDns) ToEndpointPrivateDnsOutput added in v6.38.0

func (i *EndpointPrivateDns) ToEndpointPrivateDnsOutput() EndpointPrivateDnsOutput

func (*EndpointPrivateDns) ToEndpointPrivateDnsOutputWithContext added in v6.38.0

func (i *EndpointPrivateDns) ToEndpointPrivateDnsOutputWithContext(ctx context.Context) EndpointPrivateDnsOutput

type EndpointPrivateDnsArgs added in v6.38.0

type EndpointPrivateDnsArgs struct {
	// Indicates whether a private hosted zone is associated with the VPC. Only applicable for `Interface` endpoints.
	PrivateDnsEnabled pulumi.BoolInput
	// VPC endpoint identifier.
	VpcEndpointId pulumi.StringInput
}

The set of arguments for constructing a EndpointPrivateDns resource.

func (EndpointPrivateDnsArgs) ElementType added in v6.38.0

func (EndpointPrivateDnsArgs) ElementType() reflect.Type

type EndpointPrivateDnsArray added in v6.38.0

type EndpointPrivateDnsArray []EndpointPrivateDnsInput

func (EndpointPrivateDnsArray) ElementType added in v6.38.0

func (EndpointPrivateDnsArray) ElementType() reflect.Type

func (EndpointPrivateDnsArray) ToEndpointPrivateDnsArrayOutput added in v6.38.0

func (i EndpointPrivateDnsArray) ToEndpointPrivateDnsArrayOutput() EndpointPrivateDnsArrayOutput

func (EndpointPrivateDnsArray) ToEndpointPrivateDnsArrayOutputWithContext added in v6.38.0

func (i EndpointPrivateDnsArray) ToEndpointPrivateDnsArrayOutputWithContext(ctx context.Context) EndpointPrivateDnsArrayOutput

type EndpointPrivateDnsArrayInput added in v6.38.0

type EndpointPrivateDnsArrayInput interface {
	pulumi.Input

	ToEndpointPrivateDnsArrayOutput() EndpointPrivateDnsArrayOutput
	ToEndpointPrivateDnsArrayOutputWithContext(context.Context) EndpointPrivateDnsArrayOutput
}

EndpointPrivateDnsArrayInput is an input type that accepts EndpointPrivateDnsArray and EndpointPrivateDnsArrayOutput values. You can construct a concrete instance of `EndpointPrivateDnsArrayInput` via:

EndpointPrivateDnsArray{ EndpointPrivateDnsArgs{...} }

type EndpointPrivateDnsArrayOutput added in v6.38.0

type EndpointPrivateDnsArrayOutput struct{ *pulumi.OutputState }

func (EndpointPrivateDnsArrayOutput) ElementType added in v6.38.0

func (EndpointPrivateDnsArrayOutput) Index added in v6.38.0

func (EndpointPrivateDnsArrayOutput) ToEndpointPrivateDnsArrayOutput added in v6.38.0

func (o EndpointPrivateDnsArrayOutput) ToEndpointPrivateDnsArrayOutput() EndpointPrivateDnsArrayOutput

func (EndpointPrivateDnsArrayOutput) ToEndpointPrivateDnsArrayOutputWithContext added in v6.38.0

func (o EndpointPrivateDnsArrayOutput) ToEndpointPrivateDnsArrayOutputWithContext(ctx context.Context) EndpointPrivateDnsArrayOutput

type EndpointPrivateDnsInput added in v6.38.0

type EndpointPrivateDnsInput interface {
	pulumi.Input

	ToEndpointPrivateDnsOutput() EndpointPrivateDnsOutput
	ToEndpointPrivateDnsOutputWithContext(ctx context.Context) EndpointPrivateDnsOutput
}

type EndpointPrivateDnsMap added in v6.38.0

type EndpointPrivateDnsMap map[string]EndpointPrivateDnsInput

func (EndpointPrivateDnsMap) ElementType added in v6.38.0

func (EndpointPrivateDnsMap) ElementType() reflect.Type

func (EndpointPrivateDnsMap) ToEndpointPrivateDnsMapOutput added in v6.38.0

func (i EndpointPrivateDnsMap) ToEndpointPrivateDnsMapOutput() EndpointPrivateDnsMapOutput

func (EndpointPrivateDnsMap) ToEndpointPrivateDnsMapOutputWithContext added in v6.38.0

func (i EndpointPrivateDnsMap) ToEndpointPrivateDnsMapOutputWithContext(ctx context.Context) EndpointPrivateDnsMapOutput

type EndpointPrivateDnsMapInput added in v6.38.0

type EndpointPrivateDnsMapInput interface {
	pulumi.Input

	ToEndpointPrivateDnsMapOutput() EndpointPrivateDnsMapOutput
	ToEndpointPrivateDnsMapOutputWithContext(context.Context) EndpointPrivateDnsMapOutput
}

EndpointPrivateDnsMapInput is an input type that accepts EndpointPrivateDnsMap and EndpointPrivateDnsMapOutput values. You can construct a concrete instance of `EndpointPrivateDnsMapInput` via:

EndpointPrivateDnsMap{ "key": EndpointPrivateDnsArgs{...} }

type EndpointPrivateDnsMapOutput added in v6.38.0

type EndpointPrivateDnsMapOutput struct{ *pulumi.OutputState }

func (EndpointPrivateDnsMapOutput) ElementType added in v6.38.0

func (EndpointPrivateDnsMapOutput) MapIndex added in v6.38.0

func (EndpointPrivateDnsMapOutput) ToEndpointPrivateDnsMapOutput added in v6.38.0

func (o EndpointPrivateDnsMapOutput) ToEndpointPrivateDnsMapOutput() EndpointPrivateDnsMapOutput

func (EndpointPrivateDnsMapOutput) ToEndpointPrivateDnsMapOutputWithContext added in v6.38.0

func (o EndpointPrivateDnsMapOutput) ToEndpointPrivateDnsMapOutputWithContext(ctx context.Context) EndpointPrivateDnsMapOutput

type EndpointPrivateDnsOutput added in v6.38.0

type EndpointPrivateDnsOutput struct{ *pulumi.OutputState }

func (EndpointPrivateDnsOutput) ElementType added in v6.38.0

func (EndpointPrivateDnsOutput) ElementType() reflect.Type

func (EndpointPrivateDnsOutput) PrivateDnsEnabled added in v6.38.0

func (o EndpointPrivateDnsOutput) PrivateDnsEnabled() pulumi.BoolOutput

Indicates whether a private hosted zone is associated with the VPC. Only applicable for `Interface` endpoints.

func (EndpointPrivateDnsOutput) ToEndpointPrivateDnsOutput added in v6.38.0

func (o EndpointPrivateDnsOutput) ToEndpointPrivateDnsOutput() EndpointPrivateDnsOutput

func (EndpointPrivateDnsOutput) ToEndpointPrivateDnsOutputWithContext added in v6.38.0

func (o EndpointPrivateDnsOutput) ToEndpointPrivateDnsOutputWithContext(ctx context.Context) EndpointPrivateDnsOutput

func (EndpointPrivateDnsOutput) VpcEndpointId added in v6.38.0

func (o EndpointPrivateDnsOutput) VpcEndpointId() pulumi.StringOutput

VPC endpoint identifier.

type EndpointPrivateDnsState added in v6.38.0

type EndpointPrivateDnsState struct {
	// Indicates whether a private hosted zone is associated with the VPC. Only applicable for `Interface` endpoints.
	PrivateDnsEnabled pulumi.BoolPtrInput
	// VPC endpoint identifier.
	VpcEndpointId pulumi.StringPtrInput
}

func (EndpointPrivateDnsState) ElementType added in v6.38.0

func (EndpointPrivateDnsState) ElementType() reflect.Type

type EndpointServicePrivateDnsVerification added in v6.38.0

type EndpointServicePrivateDnsVerification struct {
	pulumi.CustomResourceState

	// ID of the endpoint service.
	//
	// The following arguments are optional:
	ServiceId pulumi.StringOutput                                    `pulumi:"serviceId"`
	Timeouts  EndpointServicePrivateDnsVerificationTimeoutsPtrOutput `pulumi:"timeouts"`
	// Whether to wait until the endpoint service returns a `Verified` status for the configured private DNS name.
	WaitForVerification pulumi.BoolPtrOutput `pulumi:"waitForVerification"`
}

Resource for managing an AWS VPC (Virtual Private Cloud) Endpoint Service Private DNS Verification. This resource begins the verification process by calling the [`StartVpcEndpointServicePrivateDnsVerification`](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_StartVpcEndpointServicePrivateDnsVerification.html) API. The service provider should add a record to the DNS server _before_ creating this resource.

For additional details, refer to the AWS documentation on [managing VPC endpoint service DNS names](https://docs.aws.amazon.com/vpc/latest/privatelink/manage-dns-names.html).

> Destruction of this resource will not stop the verification process, only remove the resource from state.

## Example Usage

### Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/vpc"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := vpc.NewEndpointServicePrivateDnsVerification(ctx, "example", &vpc.EndpointServicePrivateDnsVerificationArgs{
			ServiceId: pulumi.Any(exampleAwsVpcEndpointService.Id),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

You cannot import this resource.

func GetEndpointServicePrivateDnsVerification added in v6.38.0

func GetEndpointServicePrivateDnsVerification(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *EndpointServicePrivateDnsVerificationState, opts ...pulumi.ResourceOption) (*EndpointServicePrivateDnsVerification, error)

GetEndpointServicePrivateDnsVerification gets an existing EndpointServicePrivateDnsVerification 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 NewEndpointServicePrivateDnsVerification added in v6.38.0

func NewEndpointServicePrivateDnsVerification(ctx *pulumi.Context,
	name string, args *EndpointServicePrivateDnsVerificationArgs, opts ...pulumi.ResourceOption) (*EndpointServicePrivateDnsVerification, error)

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

func (*EndpointServicePrivateDnsVerification) ElementType added in v6.38.0

func (*EndpointServicePrivateDnsVerification) ToEndpointServicePrivateDnsVerificationOutput added in v6.38.0

func (i *EndpointServicePrivateDnsVerification) ToEndpointServicePrivateDnsVerificationOutput() EndpointServicePrivateDnsVerificationOutput

func (*EndpointServicePrivateDnsVerification) ToEndpointServicePrivateDnsVerificationOutputWithContext added in v6.38.0

func (i *EndpointServicePrivateDnsVerification) ToEndpointServicePrivateDnsVerificationOutputWithContext(ctx context.Context) EndpointServicePrivateDnsVerificationOutput

type EndpointServicePrivateDnsVerificationArgs added in v6.38.0

type EndpointServicePrivateDnsVerificationArgs struct {
	// ID of the endpoint service.
	//
	// The following arguments are optional:
	ServiceId pulumi.StringInput
	Timeouts  EndpointServicePrivateDnsVerificationTimeoutsPtrInput
	// Whether to wait until the endpoint service returns a `Verified` status for the configured private DNS name.
	WaitForVerification pulumi.BoolPtrInput
}

The set of arguments for constructing a EndpointServicePrivateDnsVerification resource.

func (EndpointServicePrivateDnsVerificationArgs) ElementType added in v6.38.0

type EndpointServicePrivateDnsVerificationArray added in v6.38.0

type EndpointServicePrivateDnsVerificationArray []EndpointServicePrivateDnsVerificationInput

func (EndpointServicePrivateDnsVerificationArray) ElementType added in v6.38.0

func (EndpointServicePrivateDnsVerificationArray) ToEndpointServicePrivateDnsVerificationArrayOutput added in v6.38.0

func (i EndpointServicePrivateDnsVerificationArray) ToEndpointServicePrivateDnsVerificationArrayOutput() EndpointServicePrivateDnsVerificationArrayOutput

func (EndpointServicePrivateDnsVerificationArray) ToEndpointServicePrivateDnsVerificationArrayOutputWithContext added in v6.38.0

func (i EndpointServicePrivateDnsVerificationArray) ToEndpointServicePrivateDnsVerificationArrayOutputWithContext(ctx context.Context) EndpointServicePrivateDnsVerificationArrayOutput

type EndpointServicePrivateDnsVerificationArrayInput added in v6.38.0

type EndpointServicePrivateDnsVerificationArrayInput interface {
	pulumi.Input

	ToEndpointServicePrivateDnsVerificationArrayOutput() EndpointServicePrivateDnsVerificationArrayOutput
	ToEndpointServicePrivateDnsVerificationArrayOutputWithContext(context.Context) EndpointServicePrivateDnsVerificationArrayOutput
}

EndpointServicePrivateDnsVerificationArrayInput is an input type that accepts EndpointServicePrivateDnsVerificationArray and EndpointServicePrivateDnsVerificationArrayOutput values. You can construct a concrete instance of `EndpointServicePrivateDnsVerificationArrayInput` via:

EndpointServicePrivateDnsVerificationArray{ EndpointServicePrivateDnsVerificationArgs{...} }

type EndpointServicePrivateDnsVerificationArrayOutput added in v6.38.0

type EndpointServicePrivateDnsVerificationArrayOutput struct{ *pulumi.OutputState }

func (EndpointServicePrivateDnsVerificationArrayOutput) ElementType added in v6.38.0

func (EndpointServicePrivateDnsVerificationArrayOutput) Index added in v6.38.0

func (EndpointServicePrivateDnsVerificationArrayOutput) ToEndpointServicePrivateDnsVerificationArrayOutput added in v6.38.0

func (o EndpointServicePrivateDnsVerificationArrayOutput) ToEndpointServicePrivateDnsVerificationArrayOutput() EndpointServicePrivateDnsVerificationArrayOutput

func (EndpointServicePrivateDnsVerificationArrayOutput) ToEndpointServicePrivateDnsVerificationArrayOutputWithContext added in v6.38.0

func (o EndpointServicePrivateDnsVerificationArrayOutput) ToEndpointServicePrivateDnsVerificationArrayOutputWithContext(ctx context.Context) EndpointServicePrivateDnsVerificationArrayOutput

type EndpointServicePrivateDnsVerificationInput added in v6.38.0

type EndpointServicePrivateDnsVerificationInput interface {
	pulumi.Input

	ToEndpointServicePrivateDnsVerificationOutput() EndpointServicePrivateDnsVerificationOutput
	ToEndpointServicePrivateDnsVerificationOutputWithContext(ctx context.Context) EndpointServicePrivateDnsVerificationOutput
}

type EndpointServicePrivateDnsVerificationMap added in v6.38.0

type EndpointServicePrivateDnsVerificationMap map[string]EndpointServicePrivateDnsVerificationInput

func (EndpointServicePrivateDnsVerificationMap) ElementType added in v6.38.0

func (EndpointServicePrivateDnsVerificationMap) ToEndpointServicePrivateDnsVerificationMapOutput added in v6.38.0

func (i EndpointServicePrivateDnsVerificationMap) ToEndpointServicePrivateDnsVerificationMapOutput() EndpointServicePrivateDnsVerificationMapOutput

func (EndpointServicePrivateDnsVerificationMap) ToEndpointServicePrivateDnsVerificationMapOutputWithContext added in v6.38.0

func (i EndpointServicePrivateDnsVerificationMap) ToEndpointServicePrivateDnsVerificationMapOutputWithContext(ctx context.Context) EndpointServicePrivateDnsVerificationMapOutput

type EndpointServicePrivateDnsVerificationMapInput added in v6.38.0

type EndpointServicePrivateDnsVerificationMapInput interface {
	pulumi.Input

	ToEndpointServicePrivateDnsVerificationMapOutput() EndpointServicePrivateDnsVerificationMapOutput
	ToEndpointServicePrivateDnsVerificationMapOutputWithContext(context.Context) EndpointServicePrivateDnsVerificationMapOutput
}

EndpointServicePrivateDnsVerificationMapInput is an input type that accepts EndpointServicePrivateDnsVerificationMap and EndpointServicePrivateDnsVerificationMapOutput values. You can construct a concrete instance of `EndpointServicePrivateDnsVerificationMapInput` via:

EndpointServicePrivateDnsVerificationMap{ "key": EndpointServicePrivateDnsVerificationArgs{...} }

type EndpointServicePrivateDnsVerificationMapOutput added in v6.38.0

type EndpointServicePrivateDnsVerificationMapOutput struct{ *pulumi.OutputState }

func (EndpointServicePrivateDnsVerificationMapOutput) ElementType added in v6.38.0

func (EndpointServicePrivateDnsVerificationMapOutput) MapIndex added in v6.38.0

func (EndpointServicePrivateDnsVerificationMapOutput) ToEndpointServicePrivateDnsVerificationMapOutput added in v6.38.0

func (o EndpointServicePrivateDnsVerificationMapOutput) ToEndpointServicePrivateDnsVerificationMapOutput() EndpointServicePrivateDnsVerificationMapOutput

func (EndpointServicePrivateDnsVerificationMapOutput) ToEndpointServicePrivateDnsVerificationMapOutputWithContext added in v6.38.0

func (o EndpointServicePrivateDnsVerificationMapOutput) ToEndpointServicePrivateDnsVerificationMapOutputWithContext(ctx context.Context) EndpointServicePrivateDnsVerificationMapOutput

type EndpointServicePrivateDnsVerificationOutput added in v6.38.0

type EndpointServicePrivateDnsVerificationOutput struct{ *pulumi.OutputState }

func (EndpointServicePrivateDnsVerificationOutput) ElementType added in v6.38.0

func (EndpointServicePrivateDnsVerificationOutput) ServiceId added in v6.38.0

ID of the endpoint service.

The following arguments are optional:

func (EndpointServicePrivateDnsVerificationOutput) Timeouts added in v6.38.0

func (EndpointServicePrivateDnsVerificationOutput) ToEndpointServicePrivateDnsVerificationOutput added in v6.38.0

func (o EndpointServicePrivateDnsVerificationOutput) ToEndpointServicePrivateDnsVerificationOutput() EndpointServicePrivateDnsVerificationOutput

func (EndpointServicePrivateDnsVerificationOutput) ToEndpointServicePrivateDnsVerificationOutputWithContext added in v6.38.0

func (o EndpointServicePrivateDnsVerificationOutput) ToEndpointServicePrivateDnsVerificationOutputWithContext(ctx context.Context) EndpointServicePrivateDnsVerificationOutput

func (EndpointServicePrivateDnsVerificationOutput) WaitForVerification added in v6.38.0

Whether to wait until the endpoint service returns a `Verified` status for the configured private DNS name.

type EndpointServicePrivateDnsVerificationState added in v6.38.0

type EndpointServicePrivateDnsVerificationState struct {
	// ID of the endpoint service.
	//
	// The following arguments are optional:
	ServiceId pulumi.StringPtrInput
	Timeouts  EndpointServicePrivateDnsVerificationTimeoutsPtrInput
	// Whether to wait until the endpoint service returns a `Verified` status for the configured private DNS name.
	WaitForVerification pulumi.BoolPtrInput
}

func (EndpointServicePrivateDnsVerificationState) ElementType added in v6.38.0

type EndpointServicePrivateDnsVerificationTimeouts added in v6.38.0

type EndpointServicePrivateDnsVerificationTimeouts 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"`
}

type EndpointServicePrivateDnsVerificationTimeoutsArgs added in v6.38.0

type EndpointServicePrivateDnsVerificationTimeoutsArgs 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"`
}

func (EndpointServicePrivateDnsVerificationTimeoutsArgs) ElementType added in v6.38.0

func (EndpointServicePrivateDnsVerificationTimeoutsArgs) ToEndpointServicePrivateDnsVerificationTimeoutsOutput added in v6.38.0

func (i EndpointServicePrivateDnsVerificationTimeoutsArgs) ToEndpointServicePrivateDnsVerificationTimeoutsOutput() EndpointServicePrivateDnsVerificationTimeoutsOutput

func (EndpointServicePrivateDnsVerificationTimeoutsArgs) ToEndpointServicePrivateDnsVerificationTimeoutsOutputWithContext added in v6.38.0

func (i EndpointServicePrivateDnsVerificationTimeoutsArgs) ToEndpointServicePrivateDnsVerificationTimeoutsOutputWithContext(ctx context.Context) EndpointServicePrivateDnsVerificationTimeoutsOutput

func (EndpointServicePrivateDnsVerificationTimeoutsArgs) ToEndpointServicePrivateDnsVerificationTimeoutsPtrOutput added in v6.38.0

func (i EndpointServicePrivateDnsVerificationTimeoutsArgs) ToEndpointServicePrivateDnsVerificationTimeoutsPtrOutput() EndpointServicePrivateDnsVerificationTimeoutsPtrOutput

func (EndpointServicePrivateDnsVerificationTimeoutsArgs) ToEndpointServicePrivateDnsVerificationTimeoutsPtrOutputWithContext added in v6.38.0

func (i EndpointServicePrivateDnsVerificationTimeoutsArgs) ToEndpointServicePrivateDnsVerificationTimeoutsPtrOutputWithContext(ctx context.Context) EndpointServicePrivateDnsVerificationTimeoutsPtrOutput

type EndpointServicePrivateDnsVerificationTimeoutsInput added in v6.38.0

type EndpointServicePrivateDnsVerificationTimeoutsInput interface {
	pulumi.Input

	ToEndpointServicePrivateDnsVerificationTimeoutsOutput() EndpointServicePrivateDnsVerificationTimeoutsOutput
	ToEndpointServicePrivateDnsVerificationTimeoutsOutputWithContext(context.Context) EndpointServicePrivateDnsVerificationTimeoutsOutput
}

EndpointServicePrivateDnsVerificationTimeoutsInput is an input type that accepts EndpointServicePrivateDnsVerificationTimeoutsArgs and EndpointServicePrivateDnsVerificationTimeoutsOutput values. You can construct a concrete instance of `EndpointServicePrivateDnsVerificationTimeoutsInput` via:

EndpointServicePrivateDnsVerificationTimeoutsArgs{...}

type EndpointServicePrivateDnsVerificationTimeoutsOutput added in v6.38.0

type EndpointServicePrivateDnsVerificationTimeoutsOutput struct{ *pulumi.OutputState }

func (EndpointServicePrivateDnsVerificationTimeoutsOutput) Create added in v6.38.0

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 (EndpointServicePrivateDnsVerificationTimeoutsOutput) ElementType added in v6.38.0

func (EndpointServicePrivateDnsVerificationTimeoutsOutput) ToEndpointServicePrivateDnsVerificationTimeoutsOutput added in v6.38.0

func (o EndpointServicePrivateDnsVerificationTimeoutsOutput) ToEndpointServicePrivateDnsVerificationTimeoutsOutput() EndpointServicePrivateDnsVerificationTimeoutsOutput

func (EndpointServicePrivateDnsVerificationTimeoutsOutput) ToEndpointServicePrivateDnsVerificationTimeoutsOutputWithContext added in v6.38.0

func (o EndpointServicePrivateDnsVerificationTimeoutsOutput) ToEndpointServicePrivateDnsVerificationTimeoutsOutputWithContext(ctx context.Context) EndpointServicePrivateDnsVerificationTimeoutsOutput

func (EndpointServicePrivateDnsVerificationTimeoutsOutput) ToEndpointServicePrivateDnsVerificationTimeoutsPtrOutput added in v6.38.0

func (o EndpointServicePrivateDnsVerificationTimeoutsOutput) ToEndpointServicePrivateDnsVerificationTimeoutsPtrOutput() EndpointServicePrivateDnsVerificationTimeoutsPtrOutput

func (EndpointServicePrivateDnsVerificationTimeoutsOutput) ToEndpointServicePrivateDnsVerificationTimeoutsPtrOutputWithContext added in v6.38.0

func (o EndpointServicePrivateDnsVerificationTimeoutsOutput) ToEndpointServicePrivateDnsVerificationTimeoutsPtrOutputWithContext(ctx context.Context) EndpointServicePrivateDnsVerificationTimeoutsPtrOutput

type EndpointServicePrivateDnsVerificationTimeoutsPtrInput added in v6.38.0

type EndpointServicePrivateDnsVerificationTimeoutsPtrInput interface {
	pulumi.Input

	ToEndpointServicePrivateDnsVerificationTimeoutsPtrOutput() EndpointServicePrivateDnsVerificationTimeoutsPtrOutput
	ToEndpointServicePrivateDnsVerificationTimeoutsPtrOutputWithContext(context.Context) EndpointServicePrivateDnsVerificationTimeoutsPtrOutput
}

EndpointServicePrivateDnsVerificationTimeoutsPtrInput is an input type that accepts EndpointServicePrivateDnsVerificationTimeoutsArgs, EndpointServicePrivateDnsVerificationTimeoutsPtr and EndpointServicePrivateDnsVerificationTimeoutsPtrOutput values. You can construct a concrete instance of `EndpointServicePrivateDnsVerificationTimeoutsPtrInput` via:

        EndpointServicePrivateDnsVerificationTimeoutsArgs{...}

or:

        nil

type EndpointServicePrivateDnsVerificationTimeoutsPtrOutput added in v6.38.0

type EndpointServicePrivateDnsVerificationTimeoutsPtrOutput struct{ *pulumi.OutputState }

func (EndpointServicePrivateDnsVerificationTimeoutsPtrOutput) Create added in v6.38.0

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 (EndpointServicePrivateDnsVerificationTimeoutsPtrOutput) Elem added in v6.38.0

func (EndpointServicePrivateDnsVerificationTimeoutsPtrOutput) ElementType added in v6.38.0

func (EndpointServicePrivateDnsVerificationTimeoutsPtrOutput) ToEndpointServicePrivateDnsVerificationTimeoutsPtrOutput added in v6.38.0

func (EndpointServicePrivateDnsVerificationTimeoutsPtrOutput) ToEndpointServicePrivateDnsVerificationTimeoutsPtrOutputWithContext added in v6.38.0

func (o EndpointServicePrivateDnsVerificationTimeoutsPtrOutput) ToEndpointServicePrivateDnsVerificationTimeoutsPtrOutputWithContext(ctx context.Context) EndpointServicePrivateDnsVerificationTimeoutsPtrOutput

type GetSecurityGroupRuleArgs

type GetSecurityGroupRuleArgs struct {
	// Configuration block(s) for filtering. Detailed below.
	//
	// The arguments of this data source act as filters for querying the available
	// security group rules. The given filters must match exactly one security group rule
	// whose data will be exported as attributes.
	Filters []GetSecurityGroupRuleFilter `pulumi:"filters"`
	// ID of the security group rule to select.
	SecurityGroupRuleId *string `pulumi:"securityGroupRuleId"`
}

A collection of arguments for invoking getSecurityGroupRule.

type GetSecurityGroupRuleFilter

type GetSecurityGroupRuleFilter struct {
	// Name of the filter field. Valid values can be found in the EC2 [`DescribeSecurityGroupRules`](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeSecurityGroupRules.html) API Reference.
	Name string `pulumi:"name"`
	// Set of values that are accepted for the given filter field. Results will be selected if any given value matches.
	Values []string `pulumi:"values"`
}

type GetSecurityGroupRuleFilterArgs

type GetSecurityGroupRuleFilterArgs struct {
	// Name of the filter field. Valid values can be found in the EC2 [`DescribeSecurityGroupRules`](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeSecurityGroupRules.html) API Reference.
	Name pulumi.StringInput `pulumi:"name"`
	// Set of values that are accepted for the given filter field. Results will be selected if any given value matches.
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (GetSecurityGroupRuleFilterArgs) ElementType

func (GetSecurityGroupRuleFilterArgs) ToGetSecurityGroupRuleFilterOutput

func (i GetSecurityGroupRuleFilterArgs) ToGetSecurityGroupRuleFilterOutput() GetSecurityGroupRuleFilterOutput

func (GetSecurityGroupRuleFilterArgs) ToGetSecurityGroupRuleFilterOutputWithContext

func (i GetSecurityGroupRuleFilterArgs) ToGetSecurityGroupRuleFilterOutputWithContext(ctx context.Context) GetSecurityGroupRuleFilterOutput

type GetSecurityGroupRuleFilterArray

type GetSecurityGroupRuleFilterArray []GetSecurityGroupRuleFilterInput

func (GetSecurityGroupRuleFilterArray) ElementType

func (GetSecurityGroupRuleFilterArray) ToGetSecurityGroupRuleFilterArrayOutput

func (i GetSecurityGroupRuleFilterArray) ToGetSecurityGroupRuleFilterArrayOutput() GetSecurityGroupRuleFilterArrayOutput

func (GetSecurityGroupRuleFilterArray) ToGetSecurityGroupRuleFilterArrayOutputWithContext

func (i GetSecurityGroupRuleFilterArray) ToGetSecurityGroupRuleFilterArrayOutputWithContext(ctx context.Context) GetSecurityGroupRuleFilterArrayOutput

type GetSecurityGroupRuleFilterArrayInput

type GetSecurityGroupRuleFilterArrayInput interface {
	pulumi.Input

	ToGetSecurityGroupRuleFilterArrayOutput() GetSecurityGroupRuleFilterArrayOutput
	ToGetSecurityGroupRuleFilterArrayOutputWithContext(context.Context) GetSecurityGroupRuleFilterArrayOutput
}

GetSecurityGroupRuleFilterArrayInput is an input type that accepts GetSecurityGroupRuleFilterArray and GetSecurityGroupRuleFilterArrayOutput values. You can construct a concrete instance of `GetSecurityGroupRuleFilterArrayInput` via:

GetSecurityGroupRuleFilterArray{ GetSecurityGroupRuleFilterArgs{...} }

type GetSecurityGroupRuleFilterArrayOutput

type GetSecurityGroupRuleFilterArrayOutput struct{ *pulumi.OutputState }

func (GetSecurityGroupRuleFilterArrayOutput) ElementType

func (GetSecurityGroupRuleFilterArrayOutput) Index

func (GetSecurityGroupRuleFilterArrayOutput) ToGetSecurityGroupRuleFilterArrayOutput

func (o GetSecurityGroupRuleFilterArrayOutput) ToGetSecurityGroupRuleFilterArrayOutput() GetSecurityGroupRuleFilterArrayOutput

func (GetSecurityGroupRuleFilterArrayOutput) ToGetSecurityGroupRuleFilterArrayOutputWithContext

func (o GetSecurityGroupRuleFilterArrayOutput) ToGetSecurityGroupRuleFilterArrayOutputWithContext(ctx context.Context) GetSecurityGroupRuleFilterArrayOutput

type GetSecurityGroupRuleFilterInput

type GetSecurityGroupRuleFilterInput interface {
	pulumi.Input

	ToGetSecurityGroupRuleFilterOutput() GetSecurityGroupRuleFilterOutput
	ToGetSecurityGroupRuleFilterOutputWithContext(context.Context) GetSecurityGroupRuleFilterOutput
}

GetSecurityGroupRuleFilterInput is an input type that accepts GetSecurityGroupRuleFilterArgs and GetSecurityGroupRuleFilterOutput values. You can construct a concrete instance of `GetSecurityGroupRuleFilterInput` via:

GetSecurityGroupRuleFilterArgs{...}

type GetSecurityGroupRuleFilterOutput

type GetSecurityGroupRuleFilterOutput struct{ *pulumi.OutputState }

func (GetSecurityGroupRuleFilterOutput) ElementType

func (GetSecurityGroupRuleFilterOutput) Name

Name of the filter field. Valid values can be found in the EC2 [`DescribeSecurityGroupRules`](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeSecurityGroupRules.html) API Reference.

func (GetSecurityGroupRuleFilterOutput) ToGetSecurityGroupRuleFilterOutput

func (o GetSecurityGroupRuleFilterOutput) ToGetSecurityGroupRuleFilterOutput() GetSecurityGroupRuleFilterOutput

func (GetSecurityGroupRuleFilterOutput) ToGetSecurityGroupRuleFilterOutputWithContext

func (o GetSecurityGroupRuleFilterOutput) ToGetSecurityGroupRuleFilterOutputWithContext(ctx context.Context) GetSecurityGroupRuleFilterOutput

func (GetSecurityGroupRuleFilterOutput) Values

Set of values that are accepted for the given filter field. Results will be selected if any given value matches.

type GetSecurityGroupRuleOutputArgs

type GetSecurityGroupRuleOutputArgs struct {
	// Configuration block(s) for filtering. Detailed below.
	//
	// The arguments of this data source act as filters for querying the available
	// security group rules. The given filters must match exactly one security group rule
	// whose data will be exported as attributes.
	Filters GetSecurityGroupRuleFilterArrayInput `pulumi:"filters"`
	// ID of the security group rule to select.
	SecurityGroupRuleId pulumi.StringPtrInput `pulumi:"securityGroupRuleId"`
}

A collection of arguments for invoking getSecurityGroupRule.

func (GetSecurityGroupRuleOutputArgs) ElementType

type GetSecurityGroupRuleResult

type GetSecurityGroupRuleResult struct {
	// The Amazon Resource Name (ARN) of the security group rule.
	Arn string `pulumi:"arn"`
	// The destination IPv4 CIDR range.
	CidrIpv4 string `pulumi:"cidrIpv4"`
	// The destination IPv6 CIDR range.
	CidrIpv6 string `pulumi:"cidrIpv6"`
	// The security group rule description.
	Description string                       `pulumi:"description"`
	Filters     []GetSecurityGroupRuleFilter `pulumi:"filters"`
	// The start of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 type.
	FromPort int    `pulumi:"fromPort"`
	Id       string `pulumi:"id"`
	// The IP protocol name or number. Use `-1` to specify all protocols.
	IpProtocol string `pulumi:"ipProtocol"`
	// Indicates whether the security group rule is an outbound rule.
	IsEgress bool `pulumi:"isEgress"`
	// The ID of the destination prefix list.
	PrefixListId string `pulumi:"prefixListId"`
	// The destination security group that is referenced in the rule.
	ReferencedSecurityGroupId string `pulumi:"referencedSecurityGroupId"`
	// The ID of the security group.
	SecurityGroupId     string `pulumi:"securityGroupId"`
	SecurityGroupRuleId string `pulumi:"securityGroupRuleId"`
	// A map of tags assigned to the resource.
	Tags map[string]string `pulumi:"tags"`
	// (Optional) The end of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 code.
	ToPort int `pulumi:"toPort"`
}

A collection of values returned by getSecurityGroupRule.

func GetSecurityGroupRule

func GetSecurityGroupRule(ctx *pulumi.Context, args *GetSecurityGroupRuleArgs, opts ...pulumi.InvokeOption) (*GetSecurityGroupRuleResult, error)

`vpc.getSecurityGroupRule` provides details about a specific security group rule.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/vpc"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := vpc.GetSecurityGroupRule(ctx, &vpc.GetSecurityGroupRuleArgs{
			SecurityGroupRuleId: pulumi.StringRef(securityGroupRuleId),
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetSecurityGroupRuleResultOutput

type GetSecurityGroupRuleResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getSecurityGroupRule.

func (GetSecurityGroupRuleResultOutput) Arn

The Amazon Resource Name (ARN) of the security group rule.

func (GetSecurityGroupRuleResultOutput) CidrIpv4

The destination IPv4 CIDR range.

func (GetSecurityGroupRuleResultOutput) CidrIpv6

The destination IPv6 CIDR range.

func (GetSecurityGroupRuleResultOutput) Description

The security group rule description.

func (GetSecurityGroupRuleResultOutput) ElementType

func (GetSecurityGroupRuleResultOutput) Filters

func (GetSecurityGroupRuleResultOutput) FromPort

The start of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 type.

func (GetSecurityGroupRuleResultOutput) Id

func (GetSecurityGroupRuleResultOutput) IpProtocol

The IP protocol name or number. Use `-1` to specify all protocols.

func (GetSecurityGroupRuleResultOutput) IsEgress

Indicates whether the security group rule is an outbound rule.

func (GetSecurityGroupRuleResultOutput) PrefixListId

The ID of the destination prefix list.

func (GetSecurityGroupRuleResultOutput) ReferencedSecurityGroupId

func (o GetSecurityGroupRuleResultOutput) ReferencedSecurityGroupId() pulumi.StringOutput

The destination security group that is referenced in the rule.

func (GetSecurityGroupRuleResultOutput) SecurityGroupId

The ID of the security group.

func (GetSecurityGroupRuleResultOutput) SecurityGroupRuleId

func (o GetSecurityGroupRuleResultOutput) SecurityGroupRuleId() pulumi.StringOutput

func (GetSecurityGroupRuleResultOutput) Tags

A map of tags assigned to the resource.

func (GetSecurityGroupRuleResultOutput) ToGetSecurityGroupRuleResultOutput

func (o GetSecurityGroupRuleResultOutput) ToGetSecurityGroupRuleResultOutput() GetSecurityGroupRuleResultOutput

func (GetSecurityGroupRuleResultOutput) ToGetSecurityGroupRuleResultOutputWithContext

func (o GetSecurityGroupRuleResultOutput) ToGetSecurityGroupRuleResultOutputWithContext(ctx context.Context) GetSecurityGroupRuleResultOutput

func (GetSecurityGroupRuleResultOutput) ToPort

(Optional) The end of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 code.

type GetSecurityGroupRulesArgs

type GetSecurityGroupRulesArgs struct {
	// Custom filter block as described below.
	Filters []GetSecurityGroupRulesFilter `pulumi:"filters"`
	// Map of tags, each pair of which must exactly match
	// a pair on the desired security group rule.
	Tags map[string]string `pulumi:"tags"`
}

A collection of arguments for invoking getSecurityGroupRules.

type GetSecurityGroupRulesFilter

type GetSecurityGroupRulesFilter struct {
	// Name of the field to filter by, as defined by
	// [the underlying AWS API](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeSecurityGroupRules.html).
	Name string `pulumi:"name"`
	// Set of values that are accepted for the given field.
	//
	// Security group rule IDs will be selected if any one of the given values match.
	Values []string `pulumi:"values"`
}

type GetSecurityGroupRulesFilterArgs

type GetSecurityGroupRulesFilterArgs struct {
	// Name of the field to filter by, as defined by
	// [the underlying AWS API](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeSecurityGroupRules.html).
	Name pulumi.StringInput `pulumi:"name"`
	// Set of values that are accepted for the given field.
	//
	// Security group rule IDs will be selected if any one of the given values match.
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (GetSecurityGroupRulesFilterArgs) ElementType

func (GetSecurityGroupRulesFilterArgs) ToGetSecurityGroupRulesFilterOutput

func (i GetSecurityGroupRulesFilterArgs) ToGetSecurityGroupRulesFilterOutput() GetSecurityGroupRulesFilterOutput

func (GetSecurityGroupRulesFilterArgs) ToGetSecurityGroupRulesFilterOutputWithContext

func (i GetSecurityGroupRulesFilterArgs) ToGetSecurityGroupRulesFilterOutputWithContext(ctx context.Context) GetSecurityGroupRulesFilterOutput

type GetSecurityGroupRulesFilterArray

type GetSecurityGroupRulesFilterArray []GetSecurityGroupRulesFilterInput

func (GetSecurityGroupRulesFilterArray) ElementType

func (GetSecurityGroupRulesFilterArray) ToGetSecurityGroupRulesFilterArrayOutput

func (i GetSecurityGroupRulesFilterArray) ToGetSecurityGroupRulesFilterArrayOutput() GetSecurityGroupRulesFilterArrayOutput

func (GetSecurityGroupRulesFilterArray) ToGetSecurityGroupRulesFilterArrayOutputWithContext

func (i GetSecurityGroupRulesFilterArray) ToGetSecurityGroupRulesFilterArrayOutputWithContext(ctx context.Context) GetSecurityGroupRulesFilterArrayOutput

type GetSecurityGroupRulesFilterArrayInput

type GetSecurityGroupRulesFilterArrayInput interface {
	pulumi.Input

	ToGetSecurityGroupRulesFilterArrayOutput() GetSecurityGroupRulesFilterArrayOutput
	ToGetSecurityGroupRulesFilterArrayOutputWithContext(context.Context) GetSecurityGroupRulesFilterArrayOutput
}

GetSecurityGroupRulesFilterArrayInput is an input type that accepts GetSecurityGroupRulesFilterArray and GetSecurityGroupRulesFilterArrayOutput values. You can construct a concrete instance of `GetSecurityGroupRulesFilterArrayInput` via:

GetSecurityGroupRulesFilterArray{ GetSecurityGroupRulesFilterArgs{...} }

type GetSecurityGroupRulesFilterArrayOutput

type GetSecurityGroupRulesFilterArrayOutput struct{ *pulumi.OutputState }

func (GetSecurityGroupRulesFilterArrayOutput) ElementType

func (GetSecurityGroupRulesFilterArrayOutput) Index

func (GetSecurityGroupRulesFilterArrayOutput) ToGetSecurityGroupRulesFilterArrayOutput

func (o GetSecurityGroupRulesFilterArrayOutput) ToGetSecurityGroupRulesFilterArrayOutput() GetSecurityGroupRulesFilterArrayOutput

func (GetSecurityGroupRulesFilterArrayOutput) ToGetSecurityGroupRulesFilterArrayOutputWithContext

func (o GetSecurityGroupRulesFilterArrayOutput) ToGetSecurityGroupRulesFilterArrayOutputWithContext(ctx context.Context) GetSecurityGroupRulesFilterArrayOutput

type GetSecurityGroupRulesFilterInput

type GetSecurityGroupRulesFilterInput interface {
	pulumi.Input

	ToGetSecurityGroupRulesFilterOutput() GetSecurityGroupRulesFilterOutput
	ToGetSecurityGroupRulesFilterOutputWithContext(context.Context) GetSecurityGroupRulesFilterOutput
}

GetSecurityGroupRulesFilterInput is an input type that accepts GetSecurityGroupRulesFilterArgs and GetSecurityGroupRulesFilterOutput values. You can construct a concrete instance of `GetSecurityGroupRulesFilterInput` via:

GetSecurityGroupRulesFilterArgs{...}

type GetSecurityGroupRulesFilterOutput

type GetSecurityGroupRulesFilterOutput struct{ *pulumi.OutputState }

func (GetSecurityGroupRulesFilterOutput) ElementType

func (GetSecurityGroupRulesFilterOutput) Name

Name of the field to filter by, as defined by [the underlying AWS API](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeSecurityGroupRules.html).

func (GetSecurityGroupRulesFilterOutput) ToGetSecurityGroupRulesFilterOutput

func (o GetSecurityGroupRulesFilterOutput) ToGetSecurityGroupRulesFilterOutput() GetSecurityGroupRulesFilterOutput

func (GetSecurityGroupRulesFilterOutput) ToGetSecurityGroupRulesFilterOutputWithContext

func (o GetSecurityGroupRulesFilterOutput) ToGetSecurityGroupRulesFilterOutputWithContext(ctx context.Context) GetSecurityGroupRulesFilterOutput

func (GetSecurityGroupRulesFilterOutput) Values

Set of values that are accepted for the given field.

Security group rule IDs will be selected if any one of the given values match.

type GetSecurityGroupRulesOutputArgs

type GetSecurityGroupRulesOutputArgs struct {
	// Custom filter block as described below.
	Filters GetSecurityGroupRulesFilterArrayInput `pulumi:"filters"`
	// Map of tags, each pair of which must exactly match
	// a pair on the desired security group rule.
	Tags pulumi.StringMapInput `pulumi:"tags"`
}

A collection of arguments for invoking getSecurityGroupRules.

func (GetSecurityGroupRulesOutputArgs) ElementType

type GetSecurityGroupRulesResult

type GetSecurityGroupRulesResult struct {
	Filters []GetSecurityGroupRulesFilter `pulumi:"filters"`
	Id      string                        `pulumi:"id"`
	// List of all the security group rule IDs found.
	Ids  []string          `pulumi:"ids"`
	Tags map[string]string `pulumi:"tags"`
}

A collection of values returned by getSecurityGroupRules.

func GetSecurityGroupRules

func GetSecurityGroupRules(ctx *pulumi.Context, args *GetSecurityGroupRulesArgs, opts ...pulumi.InvokeOption) (*GetSecurityGroupRulesResult, error)

This resource can be useful for getting back a set of security group rule IDs.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/vpc"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

) func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := vpc.GetSecurityGroupRules(ctx, &vpc.GetSecurityGroupRulesArgs{ Filters: []vpc.GetSecurityGroupRulesFilter{ { Name: "group-id", Values: interface{}{ securityGroupId, }, }, }, }, nil); if err != nil { return err } return nil }) } ```

type GetSecurityGroupRulesResultOutput

type GetSecurityGroupRulesResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getSecurityGroupRules.

func (GetSecurityGroupRulesResultOutput) ElementType

func (GetSecurityGroupRulesResultOutput) Filters

func (GetSecurityGroupRulesResultOutput) Id

func (GetSecurityGroupRulesResultOutput) Ids

List of all the security group rule IDs found.

func (GetSecurityGroupRulesResultOutput) Tags

func (GetSecurityGroupRulesResultOutput) ToGetSecurityGroupRulesResultOutput

func (o GetSecurityGroupRulesResultOutput) ToGetSecurityGroupRulesResultOutput() GetSecurityGroupRulesResultOutput

func (GetSecurityGroupRulesResultOutput) ToGetSecurityGroupRulesResultOutputWithContext

func (o GetSecurityGroupRulesResultOutput) ToGetSecurityGroupRulesResultOutputWithContext(ctx context.Context) GetSecurityGroupRulesResultOutput

type GetVpcEndpointAssociationsArgs added in v6.79.0

type GetVpcEndpointAssociationsArgs struct {
	// ID of the specific VPC Endpoint to retrieve.
	VpcEndpointId string `pulumi:"vpcEndpointId"`
}

A collection of arguments for invoking getVpcEndpointAssociations.

type GetVpcEndpointAssociationsAssociation added in v6.79.0

type GetVpcEndpointAssociationsAssociation struct {
	// Accessibility of the resource.
	AssociatedResourceAccessibility string `pulumi:"associatedResourceAccessibility"`
	// ARN of the resource for this association.
	AssociatedResourceArn string `pulumi:"associatedResourceArn"`
	// DNS entries for the Association. DNS entry blocks are documented below.
	DnsEntries []GetVpcEndpointAssociationsAssociationDnsEntry `pulumi:"dnsEntries"`
	Id         string                                          `pulumi:"id"`
	// DNS entries for the Association. Private DNS entry blocks are documented below.
	PrivateDnsEntries []GetVpcEndpointAssociationsAssociationPrivateDnsEntry `pulumi:"privateDnsEntries"`
	// ARN of the Resource Group if the Resource is a member of a group.
	ResourceConfigurationGroupArn string `pulumi:"resourceConfigurationGroupArn"`
	// Service Network ARN. Applicable for endpoints of type `ServiceNetwork`.
	ServiceNetworkArn string `pulumi:"serviceNetworkArn"`
	// Service Network Name. Applicable for endpoints of type `ServiceNetwork`.
	ServiceNetworkName string `pulumi:"serviceNetworkName"`
	// Tags of the association.
	Tags map[string]string `pulumi:"tags"`
}

type GetVpcEndpointAssociationsAssociationArgs added in v6.79.0

type GetVpcEndpointAssociationsAssociationArgs struct {
	// Accessibility of the resource.
	AssociatedResourceAccessibility pulumi.StringInput `pulumi:"associatedResourceAccessibility"`
	// ARN of the resource for this association.
	AssociatedResourceArn pulumi.StringInput `pulumi:"associatedResourceArn"`
	// DNS entries for the Association. DNS entry blocks are documented below.
	DnsEntries GetVpcEndpointAssociationsAssociationDnsEntryArrayInput `pulumi:"dnsEntries"`
	Id         pulumi.StringInput                                      `pulumi:"id"`
	// DNS entries for the Association. Private DNS entry blocks are documented below.
	PrivateDnsEntries GetVpcEndpointAssociationsAssociationPrivateDnsEntryArrayInput `pulumi:"privateDnsEntries"`
	// ARN of the Resource Group if the Resource is a member of a group.
	ResourceConfigurationGroupArn pulumi.StringInput `pulumi:"resourceConfigurationGroupArn"`
	// Service Network ARN. Applicable for endpoints of type `ServiceNetwork`.
	ServiceNetworkArn pulumi.StringInput `pulumi:"serviceNetworkArn"`
	// Service Network Name. Applicable for endpoints of type `ServiceNetwork`.
	ServiceNetworkName pulumi.StringInput `pulumi:"serviceNetworkName"`
	// Tags of the association.
	Tags pulumi.StringMapInput `pulumi:"tags"`
}

func (GetVpcEndpointAssociationsAssociationArgs) ElementType added in v6.79.0

func (GetVpcEndpointAssociationsAssociationArgs) ToGetVpcEndpointAssociationsAssociationOutput added in v6.79.0

func (i GetVpcEndpointAssociationsAssociationArgs) ToGetVpcEndpointAssociationsAssociationOutput() GetVpcEndpointAssociationsAssociationOutput

func (GetVpcEndpointAssociationsAssociationArgs) ToGetVpcEndpointAssociationsAssociationOutputWithContext added in v6.79.0

func (i GetVpcEndpointAssociationsAssociationArgs) ToGetVpcEndpointAssociationsAssociationOutputWithContext(ctx context.Context) GetVpcEndpointAssociationsAssociationOutput

type GetVpcEndpointAssociationsAssociationArray added in v6.79.0

type GetVpcEndpointAssociationsAssociationArray []GetVpcEndpointAssociationsAssociationInput

func (GetVpcEndpointAssociationsAssociationArray) ElementType added in v6.79.0

func (GetVpcEndpointAssociationsAssociationArray) ToGetVpcEndpointAssociationsAssociationArrayOutput added in v6.79.0

func (i GetVpcEndpointAssociationsAssociationArray) ToGetVpcEndpointAssociationsAssociationArrayOutput() GetVpcEndpointAssociationsAssociationArrayOutput

func (GetVpcEndpointAssociationsAssociationArray) ToGetVpcEndpointAssociationsAssociationArrayOutputWithContext added in v6.79.0

func (i GetVpcEndpointAssociationsAssociationArray) ToGetVpcEndpointAssociationsAssociationArrayOutputWithContext(ctx context.Context) GetVpcEndpointAssociationsAssociationArrayOutput

type GetVpcEndpointAssociationsAssociationArrayInput added in v6.79.0

type GetVpcEndpointAssociationsAssociationArrayInput interface {
	pulumi.Input

	ToGetVpcEndpointAssociationsAssociationArrayOutput() GetVpcEndpointAssociationsAssociationArrayOutput
	ToGetVpcEndpointAssociationsAssociationArrayOutputWithContext(context.Context) GetVpcEndpointAssociationsAssociationArrayOutput
}

GetVpcEndpointAssociationsAssociationArrayInput is an input type that accepts GetVpcEndpointAssociationsAssociationArray and GetVpcEndpointAssociationsAssociationArrayOutput values. You can construct a concrete instance of `GetVpcEndpointAssociationsAssociationArrayInput` via:

GetVpcEndpointAssociationsAssociationArray{ GetVpcEndpointAssociationsAssociationArgs{...} }

type GetVpcEndpointAssociationsAssociationArrayOutput added in v6.79.0

type GetVpcEndpointAssociationsAssociationArrayOutput struct{ *pulumi.OutputState }

func (GetVpcEndpointAssociationsAssociationArrayOutput) ElementType added in v6.79.0

func (GetVpcEndpointAssociationsAssociationArrayOutput) Index added in v6.79.0

func (GetVpcEndpointAssociationsAssociationArrayOutput) ToGetVpcEndpointAssociationsAssociationArrayOutput added in v6.79.0

func (o GetVpcEndpointAssociationsAssociationArrayOutput) ToGetVpcEndpointAssociationsAssociationArrayOutput() GetVpcEndpointAssociationsAssociationArrayOutput

func (GetVpcEndpointAssociationsAssociationArrayOutput) ToGetVpcEndpointAssociationsAssociationArrayOutputWithContext added in v6.79.0

func (o GetVpcEndpointAssociationsAssociationArrayOutput) ToGetVpcEndpointAssociationsAssociationArrayOutputWithContext(ctx context.Context) GetVpcEndpointAssociationsAssociationArrayOutput

type GetVpcEndpointAssociationsAssociationDnsEntry added in v6.79.0

type GetVpcEndpointAssociationsAssociationDnsEntry struct {
	// DNS name.
	DnsName string `pulumi:"dnsName"`
	// ID of the private hosted zone.
	HostedZoneId string `pulumi:"hostedZoneId"`
}

type GetVpcEndpointAssociationsAssociationDnsEntryArgs added in v6.79.0

type GetVpcEndpointAssociationsAssociationDnsEntryArgs struct {
	// DNS name.
	DnsName pulumi.StringInput `pulumi:"dnsName"`
	// ID of the private hosted zone.
	HostedZoneId pulumi.StringInput `pulumi:"hostedZoneId"`
}

func (GetVpcEndpointAssociationsAssociationDnsEntryArgs) ElementType added in v6.79.0

func (GetVpcEndpointAssociationsAssociationDnsEntryArgs) ToGetVpcEndpointAssociationsAssociationDnsEntryOutput added in v6.79.0

func (i GetVpcEndpointAssociationsAssociationDnsEntryArgs) ToGetVpcEndpointAssociationsAssociationDnsEntryOutput() GetVpcEndpointAssociationsAssociationDnsEntryOutput

func (GetVpcEndpointAssociationsAssociationDnsEntryArgs) ToGetVpcEndpointAssociationsAssociationDnsEntryOutputWithContext added in v6.79.0

func (i GetVpcEndpointAssociationsAssociationDnsEntryArgs) ToGetVpcEndpointAssociationsAssociationDnsEntryOutputWithContext(ctx context.Context) GetVpcEndpointAssociationsAssociationDnsEntryOutput

type GetVpcEndpointAssociationsAssociationDnsEntryArray added in v6.79.0

type GetVpcEndpointAssociationsAssociationDnsEntryArray []GetVpcEndpointAssociationsAssociationDnsEntryInput

func (GetVpcEndpointAssociationsAssociationDnsEntryArray) ElementType added in v6.79.0

func (GetVpcEndpointAssociationsAssociationDnsEntryArray) ToGetVpcEndpointAssociationsAssociationDnsEntryArrayOutput added in v6.79.0

func (i GetVpcEndpointAssociationsAssociationDnsEntryArray) ToGetVpcEndpointAssociationsAssociationDnsEntryArrayOutput() GetVpcEndpointAssociationsAssociationDnsEntryArrayOutput

func (GetVpcEndpointAssociationsAssociationDnsEntryArray) ToGetVpcEndpointAssociationsAssociationDnsEntryArrayOutputWithContext added in v6.79.0

func (i GetVpcEndpointAssociationsAssociationDnsEntryArray) ToGetVpcEndpointAssociationsAssociationDnsEntryArrayOutputWithContext(ctx context.Context) GetVpcEndpointAssociationsAssociationDnsEntryArrayOutput

type GetVpcEndpointAssociationsAssociationDnsEntryArrayInput added in v6.79.0

type GetVpcEndpointAssociationsAssociationDnsEntryArrayInput interface {
	pulumi.Input

	ToGetVpcEndpointAssociationsAssociationDnsEntryArrayOutput() GetVpcEndpointAssociationsAssociationDnsEntryArrayOutput
	ToGetVpcEndpointAssociationsAssociationDnsEntryArrayOutputWithContext(context.Context) GetVpcEndpointAssociationsAssociationDnsEntryArrayOutput
}

GetVpcEndpointAssociationsAssociationDnsEntryArrayInput is an input type that accepts GetVpcEndpointAssociationsAssociationDnsEntryArray and GetVpcEndpointAssociationsAssociationDnsEntryArrayOutput values. You can construct a concrete instance of `GetVpcEndpointAssociationsAssociationDnsEntryArrayInput` via:

GetVpcEndpointAssociationsAssociationDnsEntryArray{ GetVpcEndpointAssociationsAssociationDnsEntryArgs{...} }

type GetVpcEndpointAssociationsAssociationDnsEntryArrayOutput added in v6.79.0

type GetVpcEndpointAssociationsAssociationDnsEntryArrayOutput struct{ *pulumi.OutputState }

func (GetVpcEndpointAssociationsAssociationDnsEntryArrayOutput) ElementType added in v6.79.0

func (GetVpcEndpointAssociationsAssociationDnsEntryArrayOutput) Index added in v6.79.0

func (GetVpcEndpointAssociationsAssociationDnsEntryArrayOutput) ToGetVpcEndpointAssociationsAssociationDnsEntryArrayOutput added in v6.79.0

func (GetVpcEndpointAssociationsAssociationDnsEntryArrayOutput) ToGetVpcEndpointAssociationsAssociationDnsEntryArrayOutputWithContext added in v6.79.0

func (o GetVpcEndpointAssociationsAssociationDnsEntryArrayOutput) ToGetVpcEndpointAssociationsAssociationDnsEntryArrayOutputWithContext(ctx context.Context) GetVpcEndpointAssociationsAssociationDnsEntryArrayOutput

type GetVpcEndpointAssociationsAssociationDnsEntryInput added in v6.79.0

type GetVpcEndpointAssociationsAssociationDnsEntryInput interface {
	pulumi.Input

	ToGetVpcEndpointAssociationsAssociationDnsEntryOutput() GetVpcEndpointAssociationsAssociationDnsEntryOutput
	ToGetVpcEndpointAssociationsAssociationDnsEntryOutputWithContext(context.Context) GetVpcEndpointAssociationsAssociationDnsEntryOutput
}

GetVpcEndpointAssociationsAssociationDnsEntryInput is an input type that accepts GetVpcEndpointAssociationsAssociationDnsEntryArgs and GetVpcEndpointAssociationsAssociationDnsEntryOutput values. You can construct a concrete instance of `GetVpcEndpointAssociationsAssociationDnsEntryInput` via:

GetVpcEndpointAssociationsAssociationDnsEntryArgs{...}

type GetVpcEndpointAssociationsAssociationDnsEntryOutput added in v6.79.0

type GetVpcEndpointAssociationsAssociationDnsEntryOutput struct{ *pulumi.OutputState }

func (GetVpcEndpointAssociationsAssociationDnsEntryOutput) DnsName added in v6.79.0

DNS name.

func (GetVpcEndpointAssociationsAssociationDnsEntryOutput) ElementType added in v6.79.0

func (GetVpcEndpointAssociationsAssociationDnsEntryOutput) HostedZoneId added in v6.79.0

ID of the private hosted zone.

func (GetVpcEndpointAssociationsAssociationDnsEntryOutput) ToGetVpcEndpointAssociationsAssociationDnsEntryOutput added in v6.79.0

func (o GetVpcEndpointAssociationsAssociationDnsEntryOutput) ToGetVpcEndpointAssociationsAssociationDnsEntryOutput() GetVpcEndpointAssociationsAssociationDnsEntryOutput

func (GetVpcEndpointAssociationsAssociationDnsEntryOutput) ToGetVpcEndpointAssociationsAssociationDnsEntryOutputWithContext added in v6.79.0

func (o GetVpcEndpointAssociationsAssociationDnsEntryOutput) ToGetVpcEndpointAssociationsAssociationDnsEntryOutputWithContext(ctx context.Context) GetVpcEndpointAssociationsAssociationDnsEntryOutput

type GetVpcEndpointAssociationsAssociationInput added in v6.79.0

type GetVpcEndpointAssociationsAssociationInput interface {
	pulumi.Input

	ToGetVpcEndpointAssociationsAssociationOutput() GetVpcEndpointAssociationsAssociationOutput
	ToGetVpcEndpointAssociationsAssociationOutputWithContext(context.Context) GetVpcEndpointAssociationsAssociationOutput
}

GetVpcEndpointAssociationsAssociationInput is an input type that accepts GetVpcEndpointAssociationsAssociationArgs and GetVpcEndpointAssociationsAssociationOutput values. You can construct a concrete instance of `GetVpcEndpointAssociationsAssociationInput` via:

GetVpcEndpointAssociationsAssociationArgs{...}

type GetVpcEndpointAssociationsAssociationOutput added in v6.79.0

type GetVpcEndpointAssociationsAssociationOutput struct{ *pulumi.OutputState }

func (GetVpcEndpointAssociationsAssociationOutput) AssociatedResourceAccessibility added in v6.79.0

func (o GetVpcEndpointAssociationsAssociationOutput) AssociatedResourceAccessibility() pulumi.StringOutput

Accessibility of the resource.

func (GetVpcEndpointAssociationsAssociationOutput) AssociatedResourceArn added in v6.79.0

ARN of the resource for this association.

func (GetVpcEndpointAssociationsAssociationOutput) DnsEntries added in v6.79.0

DNS entries for the Association. DNS entry blocks are documented below.

func (GetVpcEndpointAssociationsAssociationOutput) ElementType added in v6.79.0

func (GetVpcEndpointAssociationsAssociationOutput) Id added in v6.79.0

func (GetVpcEndpointAssociationsAssociationOutput) PrivateDnsEntries added in v6.79.0

DNS entries for the Association. Private DNS entry blocks are documented below.

func (GetVpcEndpointAssociationsAssociationOutput) ResourceConfigurationGroupArn added in v6.79.0

func (o GetVpcEndpointAssociationsAssociationOutput) ResourceConfigurationGroupArn() pulumi.StringOutput

ARN of the Resource Group if the Resource is a member of a group.

func (GetVpcEndpointAssociationsAssociationOutput) ServiceNetworkArn added in v6.79.0

Service Network ARN. Applicable for endpoints of type `ServiceNetwork`.

func (GetVpcEndpointAssociationsAssociationOutput) ServiceNetworkName added in v6.79.0

Service Network Name. Applicable for endpoints of type `ServiceNetwork`.

func (GetVpcEndpointAssociationsAssociationOutput) Tags added in v6.79.0

Tags of the association.

func (GetVpcEndpointAssociationsAssociationOutput) ToGetVpcEndpointAssociationsAssociationOutput added in v6.79.0

func (o GetVpcEndpointAssociationsAssociationOutput) ToGetVpcEndpointAssociationsAssociationOutput() GetVpcEndpointAssociationsAssociationOutput

func (GetVpcEndpointAssociationsAssociationOutput) ToGetVpcEndpointAssociationsAssociationOutputWithContext added in v6.79.0

func (o GetVpcEndpointAssociationsAssociationOutput) ToGetVpcEndpointAssociationsAssociationOutputWithContext(ctx context.Context) GetVpcEndpointAssociationsAssociationOutput

type GetVpcEndpointAssociationsAssociationPrivateDnsEntry added in v6.79.0

type GetVpcEndpointAssociationsAssociationPrivateDnsEntry struct {
	// DNS name.
	DnsName string `pulumi:"dnsName"`
	// ID of the private hosted zone.
	HostedZoneId string `pulumi:"hostedZoneId"`
}

type GetVpcEndpointAssociationsAssociationPrivateDnsEntryArgs added in v6.79.0

type GetVpcEndpointAssociationsAssociationPrivateDnsEntryArgs struct {
	// DNS name.
	DnsName pulumi.StringInput `pulumi:"dnsName"`
	// ID of the private hosted zone.
	HostedZoneId pulumi.StringInput `pulumi:"hostedZoneId"`
}

func (GetVpcEndpointAssociationsAssociationPrivateDnsEntryArgs) ElementType added in v6.79.0

func (GetVpcEndpointAssociationsAssociationPrivateDnsEntryArgs) ToGetVpcEndpointAssociationsAssociationPrivateDnsEntryOutput added in v6.79.0

func (GetVpcEndpointAssociationsAssociationPrivateDnsEntryArgs) ToGetVpcEndpointAssociationsAssociationPrivateDnsEntryOutputWithContext added in v6.79.0

func (i GetVpcEndpointAssociationsAssociationPrivateDnsEntryArgs) ToGetVpcEndpointAssociationsAssociationPrivateDnsEntryOutputWithContext(ctx context.Context) GetVpcEndpointAssociationsAssociationPrivateDnsEntryOutput

type GetVpcEndpointAssociationsAssociationPrivateDnsEntryArray added in v6.79.0

type GetVpcEndpointAssociationsAssociationPrivateDnsEntryArray []GetVpcEndpointAssociationsAssociationPrivateDnsEntryInput

func (GetVpcEndpointAssociationsAssociationPrivateDnsEntryArray) ElementType added in v6.79.0

func (GetVpcEndpointAssociationsAssociationPrivateDnsEntryArray) ToGetVpcEndpointAssociationsAssociationPrivateDnsEntryArrayOutput added in v6.79.0

func (i GetVpcEndpointAssociationsAssociationPrivateDnsEntryArray) ToGetVpcEndpointAssociationsAssociationPrivateDnsEntryArrayOutput() GetVpcEndpointAssociationsAssociationPrivateDnsEntryArrayOutput

func (GetVpcEndpointAssociationsAssociationPrivateDnsEntryArray) ToGetVpcEndpointAssociationsAssociationPrivateDnsEntryArrayOutputWithContext added in v6.79.0

func (i GetVpcEndpointAssociationsAssociationPrivateDnsEntryArray) ToGetVpcEndpointAssociationsAssociationPrivateDnsEntryArrayOutputWithContext(ctx context.Context) GetVpcEndpointAssociationsAssociationPrivateDnsEntryArrayOutput

type GetVpcEndpointAssociationsAssociationPrivateDnsEntryArrayInput added in v6.79.0

type GetVpcEndpointAssociationsAssociationPrivateDnsEntryArrayInput interface {
	pulumi.Input

	ToGetVpcEndpointAssociationsAssociationPrivateDnsEntryArrayOutput() GetVpcEndpointAssociationsAssociationPrivateDnsEntryArrayOutput
	ToGetVpcEndpointAssociationsAssociationPrivateDnsEntryArrayOutputWithContext(context.Context) GetVpcEndpointAssociationsAssociationPrivateDnsEntryArrayOutput
}

GetVpcEndpointAssociationsAssociationPrivateDnsEntryArrayInput is an input type that accepts GetVpcEndpointAssociationsAssociationPrivateDnsEntryArray and GetVpcEndpointAssociationsAssociationPrivateDnsEntryArrayOutput values. You can construct a concrete instance of `GetVpcEndpointAssociationsAssociationPrivateDnsEntryArrayInput` via:

GetVpcEndpointAssociationsAssociationPrivateDnsEntryArray{ GetVpcEndpointAssociationsAssociationPrivateDnsEntryArgs{...} }

type GetVpcEndpointAssociationsAssociationPrivateDnsEntryArrayOutput added in v6.79.0

type GetVpcEndpointAssociationsAssociationPrivateDnsEntryArrayOutput struct{ *pulumi.OutputState }

func (GetVpcEndpointAssociationsAssociationPrivateDnsEntryArrayOutput) ElementType added in v6.79.0

func (GetVpcEndpointAssociationsAssociationPrivateDnsEntryArrayOutput) Index added in v6.79.0

func (GetVpcEndpointAssociationsAssociationPrivateDnsEntryArrayOutput) ToGetVpcEndpointAssociationsAssociationPrivateDnsEntryArrayOutput added in v6.79.0

func (GetVpcEndpointAssociationsAssociationPrivateDnsEntryArrayOutput) ToGetVpcEndpointAssociationsAssociationPrivateDnsEntryArrayOutputWithContext added in v6.79.0

func (o GetVpcEndpointAssociationsAssociationPrivateDnsEntryArrayOutput) ToGetVpcEndpointAssociationsAssociationPrivateDnsEntryArrayOutputWithContext(ctx context.Context) GetVpcEndpointAssociationsAssociationPrivateDnsEntryArrayOutput

type GetVpcEndpointAssociationsAssociationPrivateDnsEntryInput added in v6.79.0

type GetVpcEndpointAssociationsAssociationPrivateDnsEntryInput interface {
	pulumi.Input

	ToGetVpcEndpointAssociationsAssociationPrivateDnsEntryOutput() GetVpcEndpointAssociationsAssociationPrivateDnsEntryOutput
	ToGetVpcEndpointAssociationsAssociationPrivateDnsEntryOutputWithContext(context.Context) GetVpcEndpointAssociationsAssociationPrivateDnsEntryOutput
}

GetVpcEndpointAssociationsAssociationPrivateDnsEntryInput is an input type that accepts GetVpcEndpointAssociationsAssociationPrivateDnsEntryArgs and GetVpcEndpointAssociationsAssociationPrivateDnsEntryOutput values. You can construct a concrete instance of `GetVpcEndpointAssociationsAssociationPrivateDnsEntryInput` via:

GetVpcEndpointAssociationsAssociationPrivateDnsEntryArgs{...}

type GetVpcEndpointAssociationsAssociationPrivateDnsEntryOutput added in v6.79.0

type GetVpcEndpointAssociationsAssociationPrivateDnsEntryOutput struct{ *pulumi.OutputState }

func (GetVpcEndpointAssociationsAssociationPrivateDnsEntryOutput) DnsName added in v6.79.0

DNS name.

func (GetVpcEndpointAssociationsAssociationPrivateDnsEntryOutput) ElementType added in v6.79.0

func (GetVpcEndpointAssociationsAssociationPrivateDnsEntryOutput) HostedZoneId added in v6.79.0

ID of the private hosted zone.

func (GetVpcEndpointAssociationsAssociationPrivateDnsEntryOutput) ToGetVpcEndpointAssociationsAssociationPrivateDnsEntryOutput added in v6.79.0

func (GetVpcEndpointAssociationsAssociationPrivateDnsEntryOutput) ToGetVpcEndpointAssociationsAssociationPrivateDnsEntryOutputWithContext added in v6.79.0

func (o GetVpcEndpointAssociationsAssociationPrivateDnsEntryOutput) ToGetVpcEndpointAssociationsAssociationPrivateDnsEntryOutputWithContext(ctx context.Context) GetVpcEndpointAssociationsAssociationPrivateDnsEntryOutput

type GetVpcEndpointAssociationsOutputArgs added in v6.79.0

type GetVpcEndpointAssociationsOutputArgs struct {
	// ID of the specific VPC Endpoint to retrieve.
	VpcEndpointId pulumi.StringInput `pulumi:"vpcEndpointId"`
}

A collection of arguments for invoking getVpcEndpointAssociations.

func (GetVpcEndpointAssociationsOutputArgs) ElementType added in v6.79.0

type GetVpcEndpointAssociationsResult added in v6.79.0

type GetVpcEndpointAssociationsResult struct {
	// Associations for the VPC Endpoint. Association blocks are documented below.
	Associations []GetVpcEndpointAssociationsAssociation `pulumi:"associations"`
	// The provider-assigned unique ID for this managed resource.
	Id            string `pulumi:"id"`
	VpcEndpointId string `pulumi:"vpcEndpointId"`
}

A collection of values returned by getVpcEndpointAssociations.

func GetVpcEndpointAssociations added in v6.79.0

func GetVpcEndpointAssociations(ctx *pulumi.Context, args *GetVpcEndpointAssociationsArgs, opts ...pulumi.InvokeOption) (*GetVpcEndpointAssociationsResult, error)

Data source for managing an AWS EC2 (Elastic Compute Cloud) Vpc Endpoint Associations.

## Example Usage

### Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/vpc"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := vpc.GetVpcEndpointAssociations(ctx, &vpc.GetVpcEndpointAssociationsArgs{
			VpcEndpointId: exampleAwsVpcEndpoint.Id,
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetVpcEndpointAssociationsResultOutput added in v6.79.0

type GetVpcEndpointAssociationsResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getVpcEndpointAssociations.

func (GetVpcEndpointAssociationsResultOutput) Associations added in v6.79.0

Associations for the VPC Endpoint. Association blocks are documented below.

func (GetVpcEndpointAssociationsResultOutput) ElementType added in v6.79.0

func (GetVpcEndpointAssociationsResultOutput) Id added in v6.79.0

The provider-assigned unique ID for this managed resource.

func (GetVpcEndpointAssociationsResultOutput) ToGetVpcEndpointAssociationsResultOutput added in v6.79.0

func (o GetVpcEndpointAssociationsResultOutput) ToGetVpcEndpointAssociationsResultOutput() GetVpcEndpointAssociationsResultOutput

func (GetVpcEndpointAssociationsResultOutput) ToGetVpcEndpointAssociationsResultOutputWithContext added in v6.79.0

func (o GetVpcEndpointAssociationsResultOutput) ToGetVpcEndpointAssociationsResultOutputWithContext(ctx context.Context) GetVpcEndpointAssociationsResultOutput

func (GetVpcEndpointAssociationsResultOutput) VpcEndpointId added in v6.79.0

type RouteServer added in v6.83.0

type RouteServer struct {
	pulumi.CustomResourceState

	// The Border Gateway Protocol (BGP) Autonomous System Number (ASN) for the appliance. Valid values are from 1 to 4294967295.
	//
	// The following arguments are optional:
	AmazonSideAsn pulumi.IntOutput `pulumi:"amazonSideAsn"`
	// The ARN of the route server.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// Indicates whether routes should be persisted after all BGP sessions are terminated. Valid values are `enable`, `disable`, `reset`
	PersistRoutes pulumi.StringOutput `pulumi:"persistRoutes"`
	// The number of minutes a route server will wait after BGP is re-established to unpersist the routes in the FIB and RIB. Value must be in the range of 1-5. Required if `persistRoutes` is enabled.
	PersistRoutesDuration pulumi.IntPtrOutput `pulumi:"persistRoutesDuration"`
	// The unique identifier of the route server.
	RouteServerId pulumi.StringOutput `pulumi:"routeServerId"`
	// Indicates whether SNS notifications should be enabled for route server events. Enabling SNS notifications persists BGP status changes to an SNS topic provisioned by AWS`.
	SnsNotificationsEnabled pulumi.BoolOutput `pulumi:"snsNotificationsEnabled"`
	// The ARN of the SNS topic where notifications are published.
	SnsTopicArn pulumi.StringOutput `pulumi:"snsTopicArn"`
	// A map of tags to assign to the resource. 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"`
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	//
	// Deprecated: Please use `tags` instead.
	TagsAll  pulumi.StringMapOutput       `pulumi:"tagsAll"`
	Timeouts RouteServerTimeoutsPtrOutput `pulumi:"timeouts"`
}

Provides a resource for managing a VPC (Virtual Private Cloud) Route Server.

## Example Usage

### Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/vpc"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := vpc.NewRouteServer(ctx, "test", &vpc.RouteServerArgs{
			AmazonSideAsn: pulumi.Int(65534),
			Tags: pulumi.StringMap{
				"Name": pulumi.String("Test"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

### Persist Route and SNS Notification

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/vpc"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := vpc.NewRouteServer(ctx, "test", &vpc.RouteServerArgs{
			AmazonSideAsn:           pulumi.Int(65534),
			PersistRoutes:           pulumi.String("enable"),
			PersistRoutesDuration:   pulumi.Int(2),
			SnsNotificationsEnabled: pulumi.Bool(true),
			Tags: pulumi.StringMap{
				"Name": pulumi.String("Main Route Server"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Using `pulumi import`, import VPC (Virtual Private Cloud) Route Server using the `route_server_id`. For example:

```sh $ pulumi import aws:vpc/routeServer:RouteServer example rs-12345678 ```

func GetRouteServer added in v6.83.0

func GetRouteServer(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *RouteServerState, opts ...pulumi.ResourceOption) (*RouteServer, error)

GetRouteServer gets an existing RouteServer 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 NewRouteServer added in v6.83.0

func NewRouteServer(ctx *pulumi.Context,
	name string, args *RouteServerArgs, opts ...pulumi.ResourceOption) (*RouteServer, error)

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

func (*RouteServer) ElementType added in v6.83.0

func (*RouteServer) ElementType() reflect.Type

func (*RouteServer) ToRouteServerOutput added in v6.83.0

func (i *RouteServer) ToRouteServerOutput() RouteServerOutput

func (*RouteServer) ToRouteServerOutputWithContext added in v6.83.0

func (i *RouteServer) ToRouteServerOutputWithContext(ctx context.Context) RouteServerOutput

type RouteServerArgs added in v6.83.0

type RouteServerArgs struct {
	// The Border Gateway Protocol (BGP) Autonomous System Number (ASN) for the appliance. Valid values are from 1 to 4294967295.
	//
	// The following arguments are optional:
	AmazonSideAsn pulumi.IntInput
	// Indicates whether routes should be persisted after all BGP sessions are terminated. Valid values are `enable`, `disable`, `reset`
	PersistRoutes pulumi.StringPtrInput
	// The number of minutes a route server will wait after BGP is re-established to unpersist the routes in the FIB and RIB. Value must be in the range of 1-5. Required if `persistRoutes` is enabled.
	PersistRoutesDuration pulumi.IntPtrInput
	// Indicates whether SNS notifications should be enabled for route server events. Enabling SNS notifications persists BGP status changes to an SNS topic provisioned by AWS`.
	SnsNotificationsEnabled pulumi.BoolPtrInput
	// A map of tags to assign to the resource. 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 RouteServerTimeoutsPtrInput
}

The set of arguments for constructing a RouteServer resource.

func (RouteServerArgs) ElementType added in v6.83.0

func (RouteServerArgs) ElementType() reflect.Type

type RouteServerArray added in v6.83.0

type RouteServerArray []RouteServerInput

func (RouteServerArray) ElementType added in v6.83.0

func (RouteServerArray) ElementType() reflect.Type

func (RouteServerArray) ToRouteServerArrayOutput added in v6.83.0

func (i RouteServerArray) ToRouteServerArrayOutput() RouteServerArrayOutput

func (RouteServerArray) ToRouteServerArrayOutputWithContext added in v6.83.0

func (i RouteServerArray) ToRouteServerArrayOutputWithContext(ctx context.Context) RouteServerArrayOutput

type RouteServerArrayInput added in v6.83.0

type RouteServerArrayInput interface {
	pulumi.Input

	ToRouteServerArrayOutput() RouteServerArrayOutput
	ToRouteServerArrayOutputWithContext(context.Context) RouteServerArrayOutput
}

RouteServerArrayInput is an input type that accepts RouteServerArray and RouteServerArrayOutput values. You can construct a concrete instance of `RouteServerArrayInput` via:

RouteServerArray{ RouteServerArgs{...} }

type RouteServerArrayOutput added in v6.83.0

type RouteServerArrayOutput struct{ *pulumi.OutputState }

func (RouteServerArrayOutput) ElementType added in v6.83.0

func (RouteServerArrayOutput) ElementType() reflect.Type

func (RouteServerArrayOutput) Index added in v6.83.0

func (RouteServerArrayOutput) ToRouteServerArrayOutput added in v6.83.0

func (o RouteServerArrayOutput) ToRouteServerArrayOutput() RouteServerArrayOutput

func (RouteServerArrayOutput) ToRouteServerArrayOutputWithContext added in v6.83.0

func (o RouteServerArrayOutput) ToRouteServerArrayOutputWithContext(ctx context.Context) RouteServerArrayOutput

type RouteServerEndpoint added in v6.83.0

type RouteServerEndpoint struct {
	pulumi.CustomResourceState

	// The ARN of the route server endpoint.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// The IP address of the Elastic network interface for the endpoint.
	EniAddress pulumi.StringOutput `pulumi:"eniAddress"`
	// The ID of the Elastic network interface for the endpoint.
	EniId pulumi.StringOutput `pulumi:"eniId"`
	// The unique identifier of the route server endpoint.
	RouteServerEndpointId pulumi.StringOutput `pulumi:"routeServerEndpointId"`
	// The ID of the route server for which to create an endpoint.
	RouteServerId pulumi.StringOutput `pulumi:"routeServerId"`
	// The ID of the subnet in which to create the route server endpoint.
	//
	// The following arguments are optional:
	SubnetId pulumi.StringOutput `pulumi:"subnetId"`
	// A map of tags to assign to the resource. 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"`
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	//
	// Deprecated: Please use `tags` instead.
	TagsAll  pulumi.StringMapOutput               `pulumi:"tagsAll"`
	Timeouts RouteServerEndpointTimeoutsPtrOutput `pulumi:"timeouts"`
	// The ID of the VPC containing the endpoint.
	VpcId pulumi.StringOutput `pulumi:"vpcId"`
}

Provides a resource for managing a VPC (Virtual Private Cloud) Route Server Endpoint.

## Example Usage

### Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/vpc"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := vpc.NewRouteServerEndpoint(ctx, "test", &vpc.RouteServerEndpointArgs{
			RouteServerId: pulumi.Any(example.RouteServerId),
			SubnetId:      pulumi.Any(main.Id),
			Tags: pulumi.StringMap{
				"Name": pulumi.String("Endpoint A"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Using `pulumi import`, import VPC (Virtual Private Cloud) Route Server Endpoint using the `route_server_endpoint_id`. For example:

```sh $ pulumi import aws:vpc/routeServerEndpoint:RouteServerEndpoint example rse-12345678 ```

func GetRouteServerEndpoint added in v6.83.0

func GetRouteServerEndpoint(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *RouteServerEndpointState, opts ...pulumi.ResourceOption) (*RouteServerEndpoint, error)

GetRouteServerEndpoint gets an existing RouteServerEndpoint 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 NewRouteServerEndpoint added in v6.83.0

func NewRouteServerEndpoint(ctx *pulumi.Context,
	name string, args *RouteServerEndpointArgs, opts ...pulumi.ResourceOption) (*RouteServerEndpoint, error)

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

func (*RouteServerEndpoint) ElementType added in v6.83.0

func (*RouteServerEndpoint) ElementType() reflect.Type

func (*RouteServerEndpoint) ToRouteServerEndpointOutput added in v6.83.0

func (i *RouteServerEndpoint) ToRouteServerEndpointOutput() RouteServerEndpointOutput

func (*RouteServerEndpoint) ToRouteServerEndpointOutputWithContext added in v6.83.0

func (i *RouteServerEndpoint) ToRouteServerEndpointOutputWithContext(ctx context.Context) RouteServerEndpointOutput

type RouteServerEndpointArgs added in v6.83.0

type RouteServerEndpointArgs struct {
	// The ID of the route server for which to create an endpoint.
	RouteServerId pulumi.StringInput
	// The ID of the subnet in which to create the route server endpoint.
	//
	// The following arguments are optional:
	SubnetId pulumi.StringInput
	// A map of tags to assign to the resource. 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 RouteServerEndpointTimeoutsPtrInput
}

The set of arguments for constructing a RouteServerEndpoint resource.

func (RouteServerEndpointArgs) ElementType added in v6.83.0

func (RouteServerEndpointArgs) ElementType() reflect.Type

type RouteServerEndpointArray added in v6.83.0

type RouteServerEndpointArray []RouteServerEndpointInput

func (RouteServerEndpointArray) ElementType added in v6.83.0

func (RouteServerEndpointArray) ElementType() reflect.Type

func (RouteServerEndpointArray) ToRouteServerEndpointArrayOutput added in v6.83.0

func (i RouteServerEndpointArray) ToRouteServerEndpointArrayOutput() RouteServerEndpointArrayOutput

func (RouteServerEndpointArray) ToRouteServerEndpointArrayOutputWithContext added in v6.83.0

func (i RouteServerEndpointArray) ToRouteServerEndpointArrayOutputWithContext(ctx context.Context) RouteServerEndpointArrayOutput

type RouteServerEndpointArrayInput added in v6.83.0

type RouteServerEndpointArrayInput interface {
	pulumi.Input

	ToRouteServerEndpointArrayOutput() RouteServerEndpointArrayOutput
	ToRouteServerEndpointArrayOutputWithContext(context.Context) RouteServerEndpointArrayOutput
}

RouteServerEndpointArrayInput is an input type that accepts RouteServerEndpointArray and RouteServerEndpointArrayOutput values. You can construct a concrete instance of `RouteServerEndpointArrayInput` via:

RouteServerEndpointArray{ RouteServerEndpointArgs{...} }

type RouteServerEndpointArrayOutput added in v6.83.0

type RouteServerEndpointArrayOutput struct{ *pulumi.OutputState }

func (RouteServerEndpointArrayOutput) ElementType added in v6.83.0

func (RouteServerEndpointArrayOutput) Index added in v6.83.0

func (RouteServerEndpointArrayOutput) ToRouteServerEndpointArrayOutput added in v6.83.0

func (o RouteServerEndpointArrayOutput) ToRouteServerEndpointArrayOutput() RouteServerEndpointArrayOutput

func (RouteServerEndpointArrayOutput) ToRouteServerEndpointArrayOutputWithContext added in v6.83.0

func (o RouteServerEndpointArrayOutput) ToRouteServerEndpointArrayOutputWithContext(ctx context.Context) RouteServerEndpointArrayOutput

type RouteServerEndpointInput added in v6.83.0

type RouteServerEndpointInput interface {
	pulumi.Input

	ToRouteServerEndpointOutput() RouteServerEndpointOutput
	ToRouteServerEndpointOutputWithContext(ctx context.Context) RouteServerEndpointOutput
}

type RouteServerEndpointMap added in v6.83.0

type RouteServerEndpointMap map[string]RouteServerEndpointInput

func (RouteServerEndpointMap) ElementType added in v6.83.0

func (RouteServerEndpointMap) ElementType() reflect.Type

func (RouteServerEndpointMap) ToRouteServerEndpointMapOutput added in v6.83.0

func (i RouteServerEndpointMap) ToRouteServerEndpointMapOutput() RouteServerEndpointMapOutput

func (RouteServerEndpointMap) ToRouteServerEndpointMapOutputWithContext added in v6.83.0

func (i RouteServerEndpointMap) ToRouteServerEndpointMapOutputWithContext(ctx context.Context) RouteServerEndpointMapOutput

type RouteServerEndpointMapInput added in v6.83.0

type RouteServerEndpointMapInput interface {
	pulumi.Input

	ToRouteServerEndpointMapOutput() RouteServerEndpointMapOutput
	ToRouteServerEndpointMapOutputWithContext(context.Context) RouteServerEndpointMapOutput
}

RouteServerEndpointMapInput is an input type that accepts RouteServerEndpointMap and RouteServerEndpointMapOutput values. You can construct a concrete instance of `RouteServerEndpointMapInput` via:

RouteServerEndpointMap{ "key": RouteServerEndpointArgs{...} }

type RouteServerEndpointMapOutput added in v6.83.0

type RouteServerEndpointMapOutput struct{ *pulumi.OutputState }

func (RouteServerEndpointMapOutput) ElementType added in v6.83.0

func (RouteServerEndpointMapOutput) MapIndex added in v6.83.0

func (RouteServerEndpointMapOutput) ToRouteServerEndpointMapOutput added in v6.83.0

func (o RouteServerEndpointMapOutput) ToRouteServerEndpointMapOutput() RouteServerEndpointMapOutput

func (RouteServerEndpointMapOutput) ToRouteServerEndpointMapOutputWithContext added in v6.83.0

func (o RouteServerEndpointMapOutput) ToRouteServerEndpointMapOutputWithContext(ctx context.Context) RouteServerEndpointMapOutput

type RouteServerEndpointOutput added in v6.83.0

type RouteServerEndpointOutput struct{ *pulumi.OutputState }

func (RouteServerEndpointOutput) Arn added in v6.83.0

The ARN of the route server endpoint.

func (RouteServerEndpointOutput) ElementType added in v6.83.0

func (RouteServerEndpointOutput) ElementType() reflect.Type

func (RouteServerEndpointOutput) EniAddress added in v6.83.0

The IP address of the Elastic network interface for the endpoint.

func (RouteServerEndpointOutput) EniId added in v6.83.0

The ID of the Elastic network interface for the endpoint.

func (RouteServerEndpointOutput) RouteServerEndpointId added in v6.83.0

func (o RouteServerEndpointOutput) RouteServerEndpointId() pulumi.StringOutput

The unique identifier of the route server endpoint.

func (RouteServerEndpointOutput) RouteServerId added in v6.83.0

func (o RouteServerEndpointOutput) RouteServerId() pulumi.StringOutput

The ID of the route server for which to create an endpoint.

func (RouteServerEndpointOutput) SubnetId added in v6.83.0

The ID of the subnet in which to create the route server endpoint.

The following arguments are optional:

func (RouteServerEndpointOutput) Tags added in v6.83.0

A map of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.

func (RouteServerEndpointOutput) TagsAll deprecated added in v6.83.0

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

Deprecated: Please use `tags` instead.

func (RouteServerEndpointOutput) Timeouts added in v6.83.0

func (RouteServerEndpointOutput) ToRouteServerEndpointOutput added in v6.83.0

func (o RouteServerEndpointOutput) ToRouteServerEndpointOutput() RouteServerEndpointOutput

func (RouteServerEndpointOutput) ToRouteServerEndpointOutputWithContext added in v6.83.0

func (o RouteServerEndpointOutput) ToRouteServerEndpointOutputWithContext(ctx context.Context) RouteServerEndpointOutput

func (RouteServerEndpointOutput) VpcId added in v6.83.0

The ID of the VPC containing the endpoint.

type RouteServerEndpointState added in v6.83.0

type RouteServerEndpointState struct {
	// The ARN of the route server endpoint.
	Arn pulumi.StringPtrInput
	// The IP address of the Elastic network interface for the endpoint.
	EniAddress pulumi.StringPtrInput
	// The ID of the Elastic network interface for the endpoint.
	EniId pulumi.StringPtrInput
	// The unique identifier of the route server endpoint.
	RouteServerEndpointId pulumi.StringPtrInput
	// The ID of the route server for which to create an endpoint.
	RouteServerId pulumi.StringPtrInput
	// The ID of the subnet in which to create the route server endpoint.
	//
	// The following arguments are optional:
	SubnetId pulumi.StringPtrInput
	// A map of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	//
	// Deprecated: Please use `tags` instead.
	TagsAll  pulumi.StringMapInput
	Timeouts RouteServerEndpointTimeoutsPtrInput
	// The ID of the VPC containing the endpoint.
	VpcId pulumi.StringPtrInput
}

func (RouteServerEndpointState) ElementType added in v6.83.0

func (RouteServerEndpointState) ElementType() reflect.Type

type RouteServerEndpointTimeouts added in v6.83.0

type RouteServerEndpointTimeouts 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"`
}

type RouteServerEndpointTimeoutsArgs added in v6.83.0

type RouteServerEndpointTimeoutsArgs 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"`
}

func (RouteServerEndpointTimeoutsArgs) ElementType added in v6.83.0

func (RouteServerEndpointTimeoutsArgs) ToRouteServerEndpointTimeoutsOutput added in v6.83.0

func (i RouteServerEndpointTimeoutsArgs) ToRouteServerEndpointTimeoutsOutput() RouteServerEndpointTimeoutsOutput

func (RouteServerEndpointTimeoutsArgs) ToRouteServerEndpointTimeoutsOutputWithContext added in v6.83.0

func (i RouteServerEndpointTimeoutsArgs) ToRouteServerEndpointTimeoutsOutputWithContext(ctx context.Context) RouteServerEndpointTimeoutsOutput

func (RouteServerEndpointTimeoutsArgs) ToRouteServerEndpointTimeoutsPtrOutput added in v6.83.0

func (i RouteServerEndpointTimeoutsArgs) ToRouteServerEndpointTimeoutsPtrOutput() RouteServerEndpointTimeoutsPtrOutput

func (RouteServerEndpointTimeoutsArgs) ToRouteServerEndpointTimeoutsPtrOutputWithContext added in v6.83.0

func (i RouteServerEndpointTimeoutsArgs) ToRouteServerEndpointTimeoutsPtrOutputWithContext(ctx context.Context) RouteServerEndpointTimeoutsPtrOutput

type RouteServerEndpointTimeoutsInput added in v6.83.0

type RouteServerEndpointTimeoutsInput interface {
	pulumi.Input

	ToRouteServerEndpointTimeoutsOutput() RouteServerEndpointTimeoutsOutput
	ToRouteServerEndpointTimeoutsOutputWithContext(context.Context) RouteServerEndpointTimeoutsOutput
}

RouteServerEndpointTimeoutsInput is an input type that accepts RouteServerEndpointTimeoutsArgs and RouteServerEndpointTimeoutsOutput values. You can construct a concrete instance of `RouteServerEndpointTimeoutsInput` via:

RouteServerEndpointTimeoutsArgs{...}

type RouteServerEndpointTimeoutsOutput added in v6.83.0

type RouteServerEndpointTimeoutsOutput struct{ *pulumi.OutputState }

func (RouteServerEndpointTimeoutsOutput) Create added in v6.83.0

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 (RouteServerEndpointTimeoutsOutput) Delete added in v6.83.0

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 (RouteServerEndpointTimeoutsOutput) ElementType added in v6.83.0

func (RouteServerEndpointTimeoutsOutput) ToRouteServerEndpointTimeoutsOutput added in v6.83.0

func (o RouteServerEndpointTimeoutsOutput) ToRouteServerEndpointTimeoutsOutput() RouteServerEndpointTimeoutsOutput

func (RouteServerEndpointTimeoutsOutput) ToRouteServerEndpointTimeoutsOutputWithContext added in v6.83.0

func (o RouteServerEndpointTimeoutsOutput) ToRouteServerEndpointTimeoutsOutputWithContext(ctx context.Context) RouteServerEndpointTimeoutsOutput

func (RouteServerEndpointTimeoutsOutput) ToRouteServerEndpointTimeoutsPtrOutput added in v6.83.0

func (o RouteServerEndpointTimeoutsOutput) ToRouteServerEndpointTimeoutsPtrOutput() RouteServerEndpointTimeoutsPtrOutput

func (RouteServerEndpointTimeoutsOutput) ToRouteServerEndpointTimeoutsPtrOutputWithContext added in v6.83.0

func (o RouteServerEndpointTimeoutsOutput) ToRouteServerEndpointTimeoutsPtrOutputWithContext(ctx context.Context) RouteServerEndpointTimeoutsPtrOutput

type RouteServerEndpointTimeoutsPtrInput added in v6.83.0

type RouteServerEndpointTimeoutsPtrInput interface {
	pulumi.Input

	ToRouteServerEndpointTimeoutsPtrOutput() RouteServerEndpointTimeoutsPtrOutput
	ToRouteServerEndpointTimeoutsPtrOutputWithContext(context.Context) RouteServerEndpointTimeoutsPtrOutput
}

RouteServerEndpointTimeoutsPtrInput is an input type that accepts RouteServerEndpointTimeoutsArgs, RouteServerEndpointTimeoutsPtr and RouteServerEndpointTimeoutsPtrOutput values. You can construct a concrete instance of `RouteServerEndpointTimeoutsPtrInput` via:

        RouteServerEndpointTimeoutsArgs{...}

or:

        nil

func RouteServerEndpointTimeoutsPtr added in v6.83.0

type RouteServerEndpointTimeoutsPtrOutput added in v6.83.0

type RouteServerEndpointTimeoutsPtrOutput struct{ *pulumi.OutputState }

func (RouteServerEndpointTimeoutsPtrOutput) Create added in v6.83.0

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 (RouteServerEndpointTimeoutsPtrOutput) Delete added in v6.83.0

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 (RouteServerEndpointTimeoutsPtrOutput) Elem added in v6.83.0

func (RouteServerEndpointTimeoutsPtrOutput) ElementType added in v6.83.0

func (RouteServerEndpointTimeoutsPtrOutput) ToRouteServerEndpointTimeoutsPtrOutput added in v6.83.0

func (o RouteServerEndpointTimeoutsPtrOutput) ToRouteServerEndpointTimeoutsPtrOutput() RouteServerEndpointTimeoutsPtrOutput

func (RouteServerEndpointTimeoutsPtrOutput) ToRouteServerEndpointTimeoutsPtrOutputWithContext added in v6.83.0

func (o RouteServerEndpointTimeoutsPtrOutput) ToRouteServerEndpointTimeoutsPtrOutputWithContext(ctx context.Context) RouteServerEndpointTimeoutsPtrOutput

type RouteServerInput added in v6.83.0

type RouteServerInput interface {
	pulumi.Input

	ToRouteServerOutput() RouteServerOutput
	ToRouteServerOutputWithContext(ctx context.Context) RouteServerOutput
}

type RouteServerMap added in v6.83.0

type RouteServerMap map[string]RouteServerInput

func (RouteServerMap) ElementType added in v6.83.0

func (RouteServerMap) ElementType() reflect.Type

func (RouteServerMap) ToRouteServerMapOutput added in v6.83.0

func (i RouteServerMap) ToRouteServerMapOutput() RouteServerMapOutput

func (RouteServerMap) ToRouteServerMapOutputWithContext added in v6.83.0

func (i RouteServerMap) ToRouteServerMapOutputWithContext(ctx context.Context) RouteServerMapOutput

type RouteServerMapInput added in v6.83.0

type RouteServerMapInput interface {
	pulumi.Input

	ToRouteServerMapOutput() RouteServerMapOutput
	ToRouteServerMapOutputWithContext(context.Context) RouteServerMapOutput
}

RouteServerMapInput is an input type that accepts RouteServerMap and RouteServerMapOutput values. You can construct a concrete instance of `RouteServerMapInput` via:

RouteServerMap{ "key": RouteServerArgs{...} }

type RouteServerMapOutput added in v6.83.0

type RouteServerMapOutput struct{ *pulumi.OutputState }

func (RouteServerMapOutput) ElementType added in v6.83.0

func (RouteServerMapOutput) ElementType() reflect.Type

func (RouteServerMapOutput) MapIndex added in v6.83.0

func (RouteServerMapOutput) ToRouteServerMapOutput added in v6.83.0

func (o RouteServerMapOutput) ToRouteServerMapOutput() RouteServerMapOutput

func (RouteServerMapOutput) ToRouteServerMapOutputWithContext added in v6.83.0

func (o RouteServerMapOutput) ToRouteServerMapOutputWithContext(ctx context.Context) RouteServerMapOutput

type RouteServerOutput added in v6.83.0

type RouteServerOutput struct{ *pulumi.OutputState }

func (RouteServerOutput) AmazonSideAsn added in v6.83.0

func (o RouteServerOutput) AmazonSideAsn() pulumi.IntOutput

The Border Gateway Protocol (BGP) Autonomous System Number (ASN) for the appliance. Valid values are from 1 to 4294967295.

The following arguments are optional:

func (RouteServerOutput) Arn added in v6.83.0

The ARN of the route server.

func (RouteServerOutput) ElementType added in v6.83.0

func (RouteServerOutput) ElementType() reflect.Type

func (RouteServerOutput) PersistRoutes added in v6.83.0

func (o RouteServerOutput) PersistRoutes() pulumi.StringOutput

Indicates whether routes should be persisted after all BGP sessions are terminated. Valid values are `enable`, `disable`, `reset`

func (RouteServerOutput) PersistRoutesDuration added in v6.83.0

func (o RouteServerOutput) PersistRoutesDuration() pulumi.IntPtrOutput

The number of minutes a route server will wait after BGP is re-established to unpersist the routes in the FIB and RIB. Value must be in the range of 1-5. Required if `persistRoutes` is enabled.

func (RouteServerOutput) RouteServerId added in v6.83.0

func (o RouteServerOutput) RouteServerId() pulumi.StringOutput

The unique identifier of the route server.

func (RouteServerOutput) SnsNotificationsEnabled added in v6.83.0

func (o RouteServerOutput) SnsNotificationsEnabled() pulumi.BoolOutput

Indicates whether SNS notifications should be enabled for route server events. Enabling SNS notifications persists BGP status changes to an SNS topic provisioned by AWS`.

func (RouteServerOutput) SnsTopicArn added in v6.83.0

func (o RouteServerOutput) SnsTopicArn() pulumi.StringOutput

The ARN of the SNS topic where notifications are published.

func (RouteServerOutput) Tags added in v6.83.0

A map of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.

func (RouteServerOutput) TagsAll deprecated added in v6.83.0

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

Deprecated: Please use `tags` instead.

func (RouteServerOutput) Timeouts added in v6.83.0

func (RouteServerOutput) ToRouteServerOutput added in v6.83.0

func (o RouteServerOutput) ToRouteServerOutput() RouteServerOutput

func (RouteServerOutput) ToRouteServerOutputWithContext added in v6.83.0

func (o RouteServerOutput) ToRouteServerOutputWithContext(ctx context.Context) RouteServerOutput

type RouteServerPeer added in v6.83.0

type RouteServerPeer struct {
	pulumi.CustomResourceState

	// The ARN of the route server peer.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// The BGP options for the peer, including ASN (Autonomous System Number) and BFD (Bidrectional Forwarding Detection) settings. Configuration block with BGP Options configuration Detailed below
	BgpOptions RouteServerPeerBgpOptionsPtrOutput `pulumi:"bgpOptions"`
	// The IP address of the Elastic network interface for the route server endpoint.
	EndpointEniAddress pulumi.StringOutput `pulumi:"endpointEniAddress"`
	// The ID of the Elastic network interface for the route server endpoint.
	EndpointEniId pulumi.StringOutput `pulumi:"endpointEniId"`
	// The IPv4 address of the peer device.
	PeerAddress pulumi.StringOutput `pulumi:"peerAddress"`
	// The ID of the route server endpoint for which to create a peer.
	RouteServerEndpointId pulumi.StringOutput `pulumi:"routeServerEndpointId"`
	// The ID of the route server associated with this peer.
	RouteServerId pulumi.StringOutput `pulumi:"routeServerId"`
	// The unique identifier of the route server peer.
	RouteServerPeerId pulumi.StringOutput `pulumi:"routeServerPeerId"`
	// The ID of the subnet containing the route server peer.
	SubnetId pulumi.StringOutput    `pulumi:"subnetId"`
	Tags     pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	//
	// Deprecated: Please use `tags` instead.
	TagsAll  pulumi.StringMapOutput           `pulumi:"tagsAll"`
	Timeouts RouteServerPeerTimeoutsPtrOutput `pulumi:"timeouts"`
	// The ID of the VPC containing the route server peer.
	VpcId pulumi.StringOutput `pulumi:"vpcId"`
}

Provides a resource for managing a VPC (Virtual Private Cloud) Route Server Peer.

## Example Usage

### Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/vpc"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := vpc.NewRouteServerPeer(ctx, "test", &vpc.RouteServerPeerArgs{
			RouteServerEndpointId: pulumi.Any(example.RouteServerEndpointId),
			PeerAddress:           pulumi.String("10.0.1.250"),
			BgpOptions: &vpc.RouteServerPeerBgpOptionsArgs{
				PeerAsn: pulumi.Int(65200),
			},
			Tags: pulumi.StringMap{
				"Name": pulumi.String("Appliance 1"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

### Complete Configuration

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws"
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/vpc"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		test, err := vpc.NewRouteServer(ctx, "test", &vpc.RouteServerArgs{
			AmazonSideAsn: pulumi.Int(4294967294),
			Tags: pulumi.StringMap{
				"Name": pulumi.String("Test"),
			},
		})
		if err != nil {
			return err
		}
		testVpcRouteServerAssociation, err := aws.NewVpcRouteServerAssociation(ctx, "test", &aws.VpcRouteServerAssociationArgs{
			RouteServerId: test.RouteServerId,
			VpcId:         testAwsVpc.Id,
		})
		if err != nil {
			return err
		}
		testRouteServerEndpoint, err := vpc.NewRouteServerEndpoint(ctx, "test", &vpc.RouteServerEndpointArgs{
			RouteServerId: test.RouteServerId,
			SubnetId:      pulumi.Any(testAwsSubnet.Id),
			Tags: pulumi.StringMap{
				"Name": pulumi.String("Test Endpoint"),
			},
		}, pulumi.DependsOn([]pulumi.Resource{
			testVpcRouteServerAssociation,
		}))
		if err != nil {
			return err
		}
		_, err = vpc.NewRouteServerPropagation(ctx, "test", &vpc.RouteServerPropagationArgs{
			RouteServerId: test.RouteServerId,
			RouteTableId:  pulumi.Any(testAwsRouteTable.Id),
		}, pulumi.DependsOn([]pulumi.Resource{
			testVpcRouteServerAssociation,
		}))
		if err != nil {
			return err
		}
		_, err = vpc.NewRouteServerPeer(ctx, "test", &vpc.RouteServerPeerArgs{
			RouteServerEndpointId: testRouteServerEndpoint.RouteServerEndpointId,
			PeerAddress:           pulumi.String("10.0.1.250"),
			BgpOptions: &vpc.RouteServerPeerBgpOptionsArgs{
				PeerAsn:               pulumi.Int(65000),
				PeerLivenessDetection: pulumi.String("bgp-keepalive"),
			},
			Tags: pulumi.StringMap{
				"Name": pulumi.String("Test Appliance"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Using `pulumi import`, import VPC (Virtual Private Cloud) Route Server using the `route_server_peer_id`. For example:

```sh $ pulumi import aws:vpc/routeServerPeer:RouteServerPeer example rsp-12345678 ```

func GetRouteServerPeer added in v6.83.0

func GetRouteServerPeer(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *RouteServerPeerState, opts ...pulumi.ResourceOption) (*RouteServerPeer, error)

GetRouteServerPeer gets an existing RouteServerPeer 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 NewRouteServerPeer added in v6.83.0

func NewRouteServerPeer(ctx *pulumi.Context,
	name string, args *RouteServerPeerArgs, opts ...pulumi.ResourceOption) (*RouteServerPeer, error)

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

func (*RouteServerPeer) ElementType added in v6.83.0

func (*RouteServerPeer) ElementType() reflect.Type

func (*RouteServerPeer) ToRouteServerPeerOutput added in v6.83.0

func (i *RouteServerPeer) ToRouteServerPeerOutput() RouteServerPeerOutput

func (*RouteServerPeer) ToRouteServerPeerOutputWithContext added in v6.83.0

func (i *RouteServerPeer) ToRouteServerPeerOutputWithContext(ctx context.Context) RouteServerPeerOutput

type RouteServerPeerArgs added in v6.83.0

type RouteServerPeerArgs struct {
	// The BGP options for the peer, including ASN (Autonomous System Number) and BFD (Bidrectional Forwarding Detection) settings. Configuration block with BGP Options configuration Detailed below
	BgpOptions RouteServerPeerBgpOptionsPtrInput
	// The IPv4 address of the peer device.
	PeerAddress pulumi.StringInput
	// The ID of the route server endpoint for which to create a peer.
	RouteServerEndpointId pulumi.StringInput
	Tags                  pulumi.StringMapInput
	Timeouts              RouteServerPeerTimeoutsPtrInput
}

The set of arguments for constructing a RouteServerPeer resource.

func (RouteServerPeerArgs) ElementType added in v6.83.0

func (RouteServerPeerArgs) ElementType() reflect.Type

type RouteServerPeerArray added in v6.83.0

type RouteServerPeerArray []RouteServerPeerInput

func (RouteServerPeerArray) ElementType added in v6.83.0

func (RouteServerPeerArray) ElementType() reflect.Type

func (RouteServerPeerArray) ToRouteServerPeerArrayOutput added in v6.83.0

func (i RouteServerPeerArray) ToRouteServerPeerArrayOutput() RouteServerPeerArrayOutput

func (RouteServerPeerArray) ToRouteServerPeerArrayOutputWithContext added in v6.83.0

func (i RouteServerPeerArray) ToRouteServerPeerArrayOutputWithContext(ctx context.Context) RouteServerPeerArrayOutput

type RouteServerPeerArrayInput added in v6.83.0

type RouteServerPeerArrayInput interface {
	pulumi.Input

	ToRouteServerPeerArrayOutput() RouteServerPeerArrayOutput
	ToRouteServerPeerArrayOutputWithContext(context.Context) RouteServerPeerArrayOutput
}

RouteServerPeerArrayInput is an input type that accepts RouteServerPeerArray and RouteServerPeerArrayOutput values. You can construct a concrete instance of `RouteServerPeerArrayInput` via:

RouteServerPeerArray{ RouteServerPeerArgs{...} }

type RouteServerPeerArrayOutput added in v6.83.0

type RouteServerPeerArrayOutput struct{ *pulumi.OutputState }

func (RouteServerPeerArrayOutput) ElementType added in v6.83.0

func (RouteServerPeerArrayOutput) ElementType() reflect.Type

func (RouteServerPeerArrayOutput) Index added in v6.83.0

func (RouteServerPeerArrayOutput) ToRouteServerPeerArrayOutput added in v6.83.0

func (o RouteServerPeerArrayOutput) ToRouteServerPeerArrayOutput() RouteServerPeerArrayOutput

func (RouteServerPeerArrayOutput) ToRouteServerPeerArrayOutputWithContext added in v6.83.0

func (o RouteServerPeerArrayOutput) ToRouteServerPeerArrayOutputWithContext(ctx context.Context) RouteServerPeerArrayOutput

type RouteServerPeerBgpOptions added in v6.83.0

type RouteServerPeerBgpOptions struct {
	// The Border Gateway Protocol (BGP) Autonomous System Number (ASN) for the appliance. Valid values are from 1 to 4294967295. We recommend using a private ASN in the 64512–65534 (16-bit ASN) or 4200000000–4294967294 (32-bit ASN) range.
	PeerAsn int `pulumi:"peerAsn"`
	// The requested liveness detection protocol for the BGP peer. Valid values are `bgp-keepalive` and `bfd`. Default value is `bgp-keepalive`.
	//
	// The following arguments are optional:
	PeerLivenessDetection *string `pulumi:"peerLivenessDetection"`
}

type RouteServerPeerBgpOptionsArgs added in v6.83.0

type RouteServerPeerBgpOptionsArgs struct {
	// The Border Gateway Protocol (BGP) Autonomous System Number (ASN) for the appliance. Valid values are from 1 to 4294967295. We recommend using a private ASN in the 64512–65534 (16-bit ASN) or 4200000000–4294967294 (32-bit ASN) range.
	PeerAsn pulumi.IntInput `pulumi:"peerAsn"`
	// The requested liveness detection protocol for the BGP peer. Valid values are `bgp-keepalive` and `bfd`. Default value is `bgp-keepalive`.
	//
	// The following arguments are optional:
	PeerLivenessDetection pulumi.StringPtrInput `pulumi:"peerLivenessDetection"`
}

func (RouteServerPeerBgpOptionsArgs) ElementType added in v6.83.0

func (RouteServerPeerBgpOptionsArgs) ToRouteServerPeerBgpOptionsOutput added in v6.83.0

func (i RouteServerPeerBgpOptionsArgs) ToRouteServerPeerBgpOptionsOutput() RouteServerPeerBgpOptionsOutput

func (RouteServerPeerBgpOptionsArgs) ToRouteServerPeerBgpOptionsOutputWithContext added in v6.83.0

func (i RouteServerPeerBgpOptionsArgs) ToRouteServerPeerBgpOptionsOutputWithContext(ctx context.Context) RouteServerPeerBgpOptionsOutput

func (RouteServerPeerBgpOptionsArgs) ToRouteServerPeerBgpOptionsPtrOutput added in v6.83.0

func (i RouteServerPeerBgpOptionsArgs) ToRouteServerPeerBgpOptionsPtrOutput() RouteServerPeerBgpOptionsPtrOutput

func (RouteServerPeerBgpOptionsArgs) ToRouteServerPeerBgpOptionsPtrOutputWithContext added in v6.83.0

func (i RouteServerPeerBgpOptionsArgs) ToRouteServerPeerBgpOptionsPtrOutputWithContext(ctx context.Context) RouteServerPeerBgpOptionsPtrOutput

type RouteServerPeerBgpOptionsInput added in v6.83.0

type RouteServerPeerBgpOptionsInput interface {
	pulumi.Input

	ToRouteServerPeerBgpOptionsOutput() RouteServerPeerBgpOptionsOutput
	ToRouteServerPeerBgpOptionsOutputWithContext(context.Context) RouteServerPeerBgpOptionsOutput
}

RouteServerPeerBgpOptionsInput is an input type that accepts RouteServerPeerBgpOptionsArgs and RouteServerPeerBgpOptionsOutput values. You can construct a concrete instance of `RouteServerPeerBgpOptionsInput` via:

RouteServerPeerBgpOptionsArgs{...}

type RouteServerPeerBgpOptionsOutput added in v6.83.0

type RouteServerPeerBgpOptionsOutput struct{ *pulumi.OutputState }

func (RouteServerPeerBgpOptionsOutput) ElementType added in v6.83.0

func (RouteServerPeerBgpOptionsOutput) PeerAsn added in v6.83.0

The Border Gateway Protocol (BGP) Autonomous System Number (ASN) for the appliance. Valid values are from 1 to 4294967295. We recommend using a private ASN in the 64512–65534 (16-bit ASN) or 4200000000–4294967294 (32-bit ASN) range.

func (RouteServerPeerBgpOptionsOutput) PeerLivenessDetection added in v6.83.0

func (o RouteServerPeerBgpOptionsOutput) PeerLivenessDetection() pulumi.StringPtrOutput

The requested liveness detection protocol for the BGP peer. Valid values are `bgp-keepalive` and `bfd`. Default value is `bgp-keepalive`.

The following arguments are optional:

func (RouteServerPeerBgpOptionsOutput) ToRouteServerPeerBgpOptionsOutput added in v6.83.0

func (o RouteServerPeerBgpOptionsOutput) ToRouteServerPeerBgpOptionsOutput() RouteServerPeerBgpOptionsOutput

func (RouteServerPeerBgpOptionsOutput) ToRouteServerPeerBgpOptionsOutputWithContext added in v6.83.0

func (o RouteServerPeerBgpOptionsOutput) ToRouteServerPeerBgpOptionsOutputWithContext(ctx context.Context) RouteServerPeerBgpOptionsOutput

func (RouteServerPeerBgpOptionsOutput) ToRouteServerPeerBgpOptionsPtrOutput added in v6.83.0

func (o RouteServerPeerBgpOptionsOutput) ToRouteServerPeerBgpOptionsPtrOutput() RouteServerPeerBgpOptionsPtrOutput

func (RouteServerPeerBgpOptionsOutput) ToRouteServerPeerBgpOptionsPtrOutputWithContext added in v6.83.0

func (o RouteServerPeerBgpOptionsOutput) ToRouteServerPeerBgpOptionsPtrOutputWithContext(ctx context.Context) RouteServerPeerBgpOptionsPtrOutput

type RouteServerPeerBgpOptionsPtrInput added in v6.83.0

type RouteServerPeerBgpOptionsPtrInput interface {
	pulumi.Input

	ToRouteServerPeerBgpOptionsPtrOutput() RouteServerPeerBgpOptionsPtrOutput
	ToRouteServerPeerBgpOptionsPtrOutputWithContext(context.Context) RouteServerPeerBgpOptionsPtrOutput
}

RouteServerPeerBgpOptionsPtrInput is an input type that accepts RouteServerPeerBgpOptionsArgs, RouteServerPeerBgpOptionsPtr and RouteServerPeerBgpOptionsPtrOutput values. You can construct a concrete instance of `RouteServerPeerBgpOptionsPtrInput` via:

        RouteServerPeerBgpOptionsArgs{...}

or:

        nil

func RouteServerPeerBgpOptionsPtr added in v6.83.0

type RouteServerPeerBgpOptionsPtrOutput added in v6.83.0

type RouteServerPeerBgpOptionsPtrOutput struct{ *pulumi.OutputState }

func (RouteServerPeerBgpOptionsPtrOutput) Elem added in v6.83.0

func (RouteServerPeerBgpOptionsPtrOutput) ElementType added in v6.83.0

func (RouteServerPeerBgpOptionsPtrOutput) PeerAsn added in v6.83.0

The Border Gateway Protocol (BGP) Autonomous System Number (ASN) for the appliance. Valid values are from 1 to 4294967295. We recommend using a private ASN in the 64512–65534 (16-bit ASN) or 4200000000–4294967294 (32-bit ASN) range.

func (RouteServerPeerBgpOptionsPtrOutput) PeerLivenessDetection added in v6.83.0

func (o RouteServerPeerBgpOptionsPtrOutput) PeerLivenessDetection() pulumi.StringPtrOutput

The requested liveness detection protocol for the BGP peer. Valid values are `bgp-keepalive` and `bfd`. Default value is `bgp-keepalive`.

The following arguments are optional:

func (RouteServerPeerBgpOptionsPtrOutput) ToRouteServerPeerBgpOptionsPtrOutput added in v6.83.0

func (o RouteServerPeerBgpOptionsPtrOutput) ToRouteServerPeerBgpOptionsPtrOutput() RouteServerPeerBgpOptionsPtrOutput

func (RouteServerPeerBgpOptionsPtrOutput) ToRouteServerPeerBgpOptionsPtrOutputWithContext added in v6.83.0

func (o RouteServerPeerBgpOptionsPtrOutput) ToRouteServerPeerBgpOptionsPtrOutputWithContext(ctx context.Context) RouteServerPeerBgpOptionsPtrOutput

type RouteServerPeerInput added in v6.83.0

type RouteServerPeerInput interface {
	pulumi.Input

	ToRouteServerPeerOutput() RouteServerPeerOutput
	ToRouteServerPeerOutputWithContext(ctx context.Context) RouteServerPeerOutput
}

type RouteServerPeerMap added in v6.83.0

type RouteServerPeerMap map[string]RouteServerPeerInput

func (RouteServerPeerMap) ElementType added in v6.83.0

func (RouteServerPeerMap) ElementType() reflect.Type

func (RouteServerPeerMap) ToRouteServerPeerMapOutput added in v6.83.0

func (i RouteServerPeerMap) ToRouteServerPeerMapOutput() RouteServerPeerMapOutput

func (RouteServerPeerMap) ToRouteServerPeerMapOutputWithContext added in v6.83.0

func (i RouteServerPeerMap) ToRouteServerPeerMapOutputWithContext(ctx context.Context) RouteServerPeerMapOutput

type RouteServerPeerMapInput added in v6.83.0

type RouteServerPeerMapInput interface {
	pulumi.Input

	ToRouteServerPeerMapOutput() RouteServerPeerMapOutput
	ToRouteServerPeerMapOutputWithContext(context.Context) RouteServerPeerMapOutput
}

RouteServerPeerMapInput is an input type that accepts RouteServerPeerMap and RouteServerPeerMapOutput values. You can construct a concrete instance of `RouteServerPeerMapInput` via:

RouteServerPeerMap{ "key": RouteServerPeerArgs{...} }

type RouteServerPeerMapOutput added in v6.83.0

type RouteServerPeerMapOutput struct{ *pulumi.OutputState }

func (RouteServerPeerMapOutput) ElementType added in v6.83.0

func (RouteServerPeerMapOutput) ElementType() reflect.Type

func (RouteServerPeerMapOutput) MapIndex added in v6.83.0

func (RouteServerPeerMapOutput) ToRouteServerPeerMapOutput added in v6.83.0

func (o RouteServerPeerMapOutput) ToRouteServerPeerMapOutput() RouteServerPeerMapOutput

func (RouteServerPeerMapOutput) ToRouteServerPeerMapOutputWithContext added in v6.83.0

func (o RouteServerPeerMapOutput) ToRouteServerPeerMapOutputWithContext(ctx context.Context) RouteServerPeerMapOutput

type RouteServerPeerOutput added in v6.83.0

type RouteServerPeerOutput struct{ *pulumi.OutputState }

func (RouteServerPeerOutput) Arn added in v6.83.0

The ARN of the route server peer.

func (RouteServerPeerOutput) BgpOptions added in v6.83.0

The BGP options for the peer, including ASN (Autonomous System Number) and BFD (Bidrectional Forwarding Detection) settings. Configuration block with BGP Options configuration Detailed below

func (RouteServerPeerOutput) ElementType added in v6.83.0

func (RouteServerPeerOutput) ElementType() reflect.Type

func (RouteServerPeerOutput) EndpointEniAddress added in v6.83.0

func (o RouteServerPeerOutput) EndpointEniAddress() pulumi.StringOutput

The IP address of the Elastic network interface for the route server endpoint.

func (RouteServerPeerOutput) EndpointEniId added in v6.83.0

func (o RouteServerPeerOutput) EndpointEniId() pulumi.StringOutput

The ID of the Elastic network interface for the route server endpoint.

func (RouteServerPeerOutput) PeerAddress added in v6.83.0

func (o RouteServerPeerOutput) PeerAddress() pulumi.StringOutput

The IPv4 address of the peer device.

func (RouteServerPeerOutput) RouteServerEndpointId added in v6.83.0

func (o RouteServerPeerOutput) RouteServerEndpointId() pulumi.StringOutput

The ID of the route server endpoint for which to create a peer.

func (RouteServerPeerOutput) RouteServerId added in v6.83.0

func (o RouteServerPeerOutput) RouteServerId() pulumi.StringOutput

The ID of the route server associated with this peer.

func (RouteServerPeerOutput) RouteServerPeerId added in v6.83.0

func (o RouteServerPeerOutput) RouteServerPeerId() pulumi.StringOutput

The unique identifier of the route server peer.

func (RouteServerPeerOutput) SubnetId added in v6.83.0

The ID of the subnet containing the route server peer.

func (RouteServerPeerOutput) Tags added in v6.83.0

func (RouteServerPeerOutput) TagsAll deprecated added in v6.83.0

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

Deprecated: Please use `tags` instead.

func (RouteServerPeerOutput) Timeouts added in v6.83.0

func (RouteServerPeerOutput) ToRouteServerPeerOutput added in v6.83.0

func (o RouteServerPeerOutput) ToRouteServerPeerOutput() RouteServerPeerOutput

func (RouteServerPeerOutput) ToRouteServerPeerOutputWithContext added in v6.83.0

func (o RouteServerPeerOutput) ToRouteServerPeerOutputWithContext(ctx context.Context) RouteServerPeerOutput

func (RouteServerPeerOutput) VpcId added in v6.83.0

The ID of the VPC containing the route server peer.

type RouteServerPeerState added in v6.83.0

type RouteServerPeerState struct {
	// The ARN of the route server peer.
	Arn pulumi.StringPtrInput
	// The BGP options for the peer, including ASN (Autonomous System Number) and BFD (Bidrectional Forwarding Detection) settings. Configuration block with BGP Options configuration Detailed below
	BgpOptions RouteServerPeerBgpOptionsPtrInput
	// The IP address of the Elastic network interface for the route server endpoint.
	EndpointEniAddress pulumi.StringPtrInput
	// The ID of the Elastic network interface for the route server endpoint.
	EndpointEniId pulumi.StringPtrInput
	// The IPv4 address of the peer device.
	PeerAddress pulumi.StringPtrInput
	// The ID of the route server endpoint for which to create a peer.
	RouteServerEndpointId pulumi.StringPtrInput
	// The ID of the route server associated with this peer.
	RouteServerId pulumi.StringPtrInput
	// The unique identifier of the route server peer.
	RouteServerPeerId pulumi.StringPtrInput
	// The ID of the subnet containing the route server peer.
	SubnetId pulumi.StringPtrInput
	Tags     pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	//
	// Deprecated: Please use `tags` instead.
	TagsAll  pulumi.StringMapInput
	Timeouts RouteServerPeerTimeoutsPtrInput
	// The ID of the VPC containing the route server peer.
	VpcId pulumi.StringPtrInput
}

func (RouteServerPeerState) ElementType added in v6.83.0

func (RouteServerPeerState) ElementType() reflect.Type

type RouteServerPeerTimeouts added in v6.83.0

type RouteServerPeerTimeouts 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"`
}

type RouteServerPeerTimeoutsArgs added in v6.83.0

type RouteServerPeerTimeoutsArgs 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"`
}

func (RouteServerPeerTimeoutsArgs) ElementType added in v6.83.0

func (RouteServerPeerTimeoutsArgs) ToRouteServerPeerTimeoutsOutput added in v6.83.0

func (i RouteServerPeerTimeoutsArgs) ToRouteServerPeerTimeoutsOutput() RouteServerPeerTimeoutsOutput

func (RouteServerPeerTimeoutsArgs) ToRouteServerPeerTimeoutsOutputWithContext added in v6.83.0

func (i RouteServerPeerTimeoutsArgs) ToRouteServerPeerTimeoutsOutputWithContext(ctx context.Context) RouteServerPeerTimeoutsOutput

func (RouteServerPeerTimeoutsArgs) ToRouteServerPeerTimeoutsPtrOutput added in v6.83.0

func (i RouteServerPeerTimeoutsArgs) ToRouteServerPeerTimeoutsPtrOutput() RouteServerPeerTimeoutsPtrOutput

func (RouteServerPeerTimeoutsArgs) ToRouteServerPeerTimeoutsPtrOutputWithContext added in v6.83.0

func (i RouteServerPeerTimeoutsArgs) ToRouteServerPeerTimeoutsPtrOutputWithContext(ctx context.Context) RouteServerPeerTimeoutsPtrOutput

type RouteServerPeerTimeoutsInput added in v6.83.0

type RouteServerPeerTimeoutsInput interface {
	pulumi.Input

	ToRouteServerPeerTimeoutsOutput() RouteServerPeerTimeoutsOutput
	ToRouteServerPeerTimeoutsOutputWithContext(context.Context) RouteServerPeerTimeoutsOutput
}

RouteServerPeerTimeoutsInput is an input type that accepts RouteServerPeerTimeoutsArgs and RouteServerPeerTimeoutsOutput values. You can construct a concrete instance of `RouteServerPeerTimeoutsInput` via:

RouteServerPeerTimeoutsArgs{...}

type RouteServerPeerTimeoutsOutput added in v6.83.0

type RouteServerPeerTimeoutsOutput struct{ *pulumi.OutputState }

func (RouteServerPeerTimeoutsOutput) Create added in v6.83.0

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 (RouteServerPeerTimeoutsOutput) Delete added in v6.83.0

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 (RouteServerPeerTimeoutsOutput) ElementType added in v6.83.0

func (RouteServerPeerTimeoutsOutput) ToRouteServerPeerTimeoutsOutput added in v6.83.0

func (o RouteServerPeerTimeoutsOutput) ToRouteServerPeerTimeoutsOutput() RouteServerPeerTimeoutsOutput

func (RouteServerPeerTimeoutsOutput) ToRouteServerPeerTimeoutsOutputWithContext added in v6.83.0

func (o RouteServerPeerTimeoutsOutput) ToRouteServerPeerTimeoutsOutputWithContext(ctx context.Context) RouteServerPeerTimeoutsOutput

func (RouteServerPeerTimeoutsOutput) ToRouteServerPeerTimeoutsPtrOutput added in v6.83.0

func (o RouteServerPeerTimeoutsOutput) ToRouteServerPeerTimeoutsPtrOutput() RouteServerPeerTimeoutsPtrOutput

func (RouteServerPeerTimeoutsOutput) ToRouteServerPeerTimeoutsPtrOutputWithContext added in v6.83.0

func (o RouteServerPeerTimeoutsOutput) ToRouteServerPeerTimeoutsPtrOutputWithContext(ctx context.Context) RouteServerPeerTimeoutsPtrOutput

type RouteServerPeerTimeoutsPtrInput added in v6.83.0

type RouteServerPeerTimeoutsPtrInput interface {
	pulumi.Input

	ToRouteServerPeerTimeoutsPtrOutput() RouteServerPeerTimeoutsPtrOutput
	ToRouteServerPeerTimeoutsPtrOutputWithContext(context.Context) RouteServerPeerTimeoutsPtrOutput
}

RouteServerPeerTimeoutsPtrInput is an input type that accepts RouteServerPeerTimeoutsArgs, RouteServerPeerTimeoutsPtr and RouteServerPeerTimeoutsPtrOutput values. You can construct a concrete instance of `RouteServerPeerTimeoutsPtrInput` via:

        RouteServerPeerTimeoutsArgs{...}

or:

        nil

func RouteServerPeerTimeoutsPtr added in v6.83.0

func RouteServerPeerTimeoutsPtr(v *RouteServerPeerTimeoutsArgs) RouteServerPeerTimeoutsPtrInput

type RouteServerPeerTimeoutsPtrOutput added in v6.83.0

type RouteServerPeerTimeoutsPtrOutput struct{ *pulumi.OutputState }

func (RouteServerPeerTimeoutsPtrOutput) Create added in v6.83.0

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 (RouteServerPeerTimeoutsPtrOutput) Delete added in v6.83.0

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 (RouteServerPeerTimeoutsPtrOutput) Elem added in v6.83.0

func (RouteServerPeerTimeoutsPtrOutput) ElementType added in v6.83.0

func (RouteServerPeerTimeoutsPtrOutput) ToRouteServerPeerTimeoutsPtrOutput added in v6.83.0

func (o RouteServerPeerTimeoutsPtrOutput) ToRouteServerPeerTimeoutsPtrOutput() RouteServerPeerTimeoutsPtrOutput

func (RouteServerPeerTimeoutsPtrOutput) ToRouteServerPeerTimeoutsPtrOutputWithContext added in v6.83.0

func (o RouteServerPeerTimeoutsPtrOutput) ToRouteServerPeerTimeoutsPtrOutputWithContext(ctx context.Context) RouteServerPeerTimeoutsPtrOutput

type RouteServerPropagation added in v6.83.0

type RouteServerPropagation struct {
	pulumi.CustomResourceState

	// The unique identifier for the route server to be associated.
	RouteServerId pulumi.StringOutput `pulumi:"routeServerId"`
	// The ID of the route table to which route server will propagate routes.
	RouteTableId pulumi.StringOutput                     `pulumi:"routeTableId"`
	Timeouts     RouteServerPropagationTimeoutsPtrOutput `pulumi:"timeouts"`
}

Provides a resource for managing propagation between VPC (Virtual Private Cloud) route server and a route table.

## Example Usage

### Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/vpc"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := vpc.NewRouteServerPropagation(ctx, "example", &vpc.RouteServerPropagationArgs{
			RouteServerId: pulumi.Any(exampleAwsVpcRouteServer.RouteServerId),
			RouteTableId:  pulumi.Any(exampleAwsRouteTable.Id),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Using `pulumi import`, to to import VPC (Virtual Private Cloud) Route Server Propagation using the associated resource ID and route table ID separated by a comma (,). For example:

```sh $ pulumi import aws:vpc/routeServerPropagation:RouteServerPropagation example rs-12345678,rtb-656c65616e6f72 ```

func GetRouteServerPropagation added in v6.83.0

func GetRouteServerPropagation(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *RouteServerPropagationState, opts ...pulumi.ResourceOption) (*RouteServerPropagation, error)

GetRouteServerPropagation gets an existing RouteServerPropagation 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 NewRouteServerPropagation added in v6.83.0

func NewRouteServerPropagation(ctx *pulumi.Context,
	name string, args *RouteServerPropagationArgs, opts ...pulumi.ResourceOption) (*RouteServerPropagation, error)

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

func (*RouteServerPropagation) ElementType added in v6.83.0

func (*RouteServerPropagation) ElementType() reflect.Type

func (*RouteServerPropagation) ToRouteServerPropagationOutput added in v6.83.0

func (i *RouteServerPropagation) ToRouteServerPropagationOutput() RouteServerPropagationOutput

func (*RouteServerPropagation) ToRouteServerPropagationOutputWithContext added in v6.83.0

func (i *RouteServerPropagation) ToRouteServerPropagationOutputWithContext(ctx context.Context) RouteServerPropagationOutput

type RouteServerPropagationArgs added in v6.83.0

type RouteServerPropagationArgs struct {
	// The unique identifier for the route server to be associated.
	RouteServerId pulumi.StringInput
	// The ID of the route table to which route server will propagate routes.
	RouteTableId pulumi.StringInput
	Timeouts     RouteServerPropagationTimeoutsPtrInput
}

The set of arguments for constructing a RouteServerPropagation resource.

func (RouteServerPropagationArgs) ElementType added in v6.83.0

func (RouteServerPropagationArgs) ElementType() reflect.Type

type RouteServerPropagationArray added in v6.83.0

type RouteServerPropagationArray []RouteServerPropagationInput

func (RouteServerPropagationArray) ElementType added in v6.83.0

func (RouteServerPropagationArray) ToRouteServerPropagationArrayOutput added in v6.83.0

func (i RouteServerPropagationArray) ToRouteServerPropagationArrayOutput() RouteServerPropagationArrayOutput

func (RouteServerPropagationArray) ToRouteServerPropagationArrayOutputWithContext added in v6.83.0

func (i RouteServerPropagationArray) ToRouteServerPropagationArrayOutputWithContext(ctx context.Context) RouteServerPropagationArrayOutput

type RouteServerPropagationArrayInput added in v6.83.0

type RouteServerPropagationArrayInput interface {
	pulumi.Input

	ToRouteServerPropagationArrayOutput() RouteServerPropagationArrayOutput
	ToRouteServerPropagationArrayOutputWithContext(context.Context) RouteServerPropagationArrayOutput
}

RouteServerPropagationArrayInput is an input type that accepts RouteServerPropagationArray and RouteServerPropagationArrayOutput values. You can construct a concrete instance of `RouteServerPropagationArrayInput` via:

RouteServerPropagationArray{ RouteServerPropagationArgs{...} }

type RouteServerPropagationArrayOutput added in v6.83.0

type RouteServerPropagationArrayOutput struct{ *pulumi.OutputState }

func (RouteServerPropagationArrayOutput) ElementType added in v6.83.0

func (RouteServerPropagationArrayOutput) Index added in v6.83.0

func (RouteServerPropagationArrayOutput) ToRouteServerPropagationArrayOutput added in v6.83.0

func (o RouteServerPropagationArrayOutput) ToRouteServerPropagationArrayOutput() RouteServerPropagationArrayOutput

func (RouteServerPropagationArrayOutput) ToRouteServerPropagationArrayOutputWithContext added in v6.83.0

func (o RouteServerPropagationArrayOutput) ToRouteServerPropagationArrayOutputWithContext(ctx context.Context) RouteServerPropagationArrayOutput

type RouteServerPropagationInput added in v6.83.0

type RouteServerPropagationInput interface {
	pulumi.Input

	ToRouteServerPropagationOutput() RouteServerPropagationOutput
	ToRouteServerPropagationOutputWithContext(ctx context.Context) RouteServerPropagationOutput
}

type RouteServerPropagationMap added in v6.83.0

type RouteServerPropagationMap map[string]RouteServerPropagationInput

func (RouteServerPropagationMap) ElementType added in v6.83.0

func (RouteServerPropagationMap) ElementType() reflect.Type

func (RouteServerPropagationMap) ToRouteServerPropagationMapOutput added in v6.83.0

func (i RouteServerPropagationMap) ToRouteServerPropagationMapOutput() RouteServerPropagationMapOutput

func (RouteServerPropagationMap) ToRouteServerPropagationMapOutputWithContext added in v6.83.0

func (i RouteServerPropagationMap) ToRouteServerPropagationMapOutputWithContext(ctx context.Context) RouteServerPropagationMapOutput

type RouteServerPropagationMapInput added in v6.83.0

type RouteServerPropagationMapInput interface {
	pulumi.Input

	ToRouteServerPropagationMapOutput() RouteServerPropagationMapOutput
	ToRouteServerPropagationMapOutputWithContext(context.Context) RouteServerPropagationMapOutput
}

RouteServerPropagationMapInput is an input type that accepts RouteServerPropagationMap and RouteServerPropagationMapOutput values. You can construct a concrete instance of `RouteServerPropagationMapInput` via:

RouteServerPropagationMap{ "key": RouteServerPropagationArgs{...} }

type RouteServerPropagationMapOutput added in v6.83.0

type RouteServerPropagationMapOutput struct{ *pulumi.OutputState }

func (RouteServerPropagationMapOutput) ElementType added in v6.83.0

func (RouteServerPropagationMapOutput) MapIndex added in v6.83.0

func (RouteServerPropagationMapOutput) ToRouteServerPropagationMapOutput added in v6.83.0

func (o RouteServerPropagationMapOutput) ToRouteServerPropagationMapOutput() RouteServerPropagationMapOutput

func (RouteServerPropagationMapOutput) ToRouteServerPropagationMapOutputWithContext added in v6.83.0

func (o RouteServerPropagationMapOutput) ToRouteServerPropagationMapOutputWithContext(ctx context.Context) RouteServerPropagationMapOutput

type RouteServerPropagationOutput added in v6.83.0

type RouteServerPropagationOutput struct{ *pulumi.OutputState }

func (RouteServerPropagationOutput) ElementType added in v6.83.0

func (RouteServerPropagationOutput) RouteServerId added in v6.83.0

The unique identifier for the route server to be associated.

func (RouteServerPropagationOutput) RouteTableId added in v6.83.0

The ID of the route table to which route server will propagate routes.

func (RouteServerPropagationOutput) Timeouts added in v6.83.0

func (RouteServerPropagationOutput) ToRouteServerPropagationOutput added in v6.83.0

func (o RouteServerPropagationOutput) ToRouteServerPropagationOutput() RouteServerPropagationOutput

func (RouteServerPropagationOutput) ToRouteServerPropagationOutputWithContext added in v6.83.0

func (o RouteServerPropagationOutput) ToRouteServerPropagationOutputWithContext(ctx context.Context) RouteServerPropagationOutput

type RouteServerPropagationState added in v6.83.0

type RouteServerPropagationState struct {
	// The unique identifier for the route server to be associated.
	RouteServerId pulumi.StringPtrInput
	// The ID of the route table to which route server will propagate routes.
	RouteTableId pulumi.StringPtrInput
	Timeouts     RouteServerPropagationTimeoutsPtrInput
}

func (RouteServerPropagationState) ElementType added in v6.83.0

type RouteServerPropagationTimeouts added in v6.83.0

type RouteServerPropagationTimeouts 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"`
}

type RouteServerPropagationTimeoutsArgs added in v6.83.0

type RouteServerPropagationTimeoutsArgs 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"`
}

func (RouteServerPropagationTimeoutsArgs) ElementType added in v6.83.0

func (RouteServerPropagationTimeoutsArgs) ToRouteServerPropagationTimeoutsOutput added in v6.83.0

func (i RouteServerPropagationTimeoutsArgs) ToRouteServerPropagationTimeoutsOutput() RouteServerPropagationTimeoutsOutput

func (RouteServerPropagationTimeoutsArgs) ToRouteServerPropagationTimeoutsOutputWithContext added in v6.83.0

func (i RouteServerPropagationTimeoutsArgs) ToRouteServerPropagationTimeoutsOutputWithContext(ctx context.Context) RouteServerPropagationTimeoutsOutput

func (RouteServerPropagationTimeoutsArgs) ToRouteServerPropagationTimeoutsPtrOutput added in v6.83.0

func (i RouteServerPropagationTimeoutsArgs) ToRouteServerPropagationTimeoutsPtrOutput() RouteServerPropagationTimeoutsPtrOutput

func (RouteServerPropagationTimeoutsArgs) ToRouteServerPropagationTimeoutsPtrOutputWithContext added in v6.83.0

func (i RouteServerPropagationTimeoutsArgs) ToRouteServerPropagationTimeoutsPtrOutputWithContext(ctx context.Context) RouteServerPropagationTimeoutsPtrOutput

type RouteServerPropagationTimeoutsInput added in v6.83.0

type RouteServerPropagationTimeoutsInput interface {
	pulumi.Input

	ToRouteServerPropagationTimeoutsOutput() RouteServerPropagationTimeoutsOutput
	ToRouteServerPropagationTimeoutsOutputWithContext(context.Context) RouteServerPropagationTimeoutsOutput
}

RouteServerPropagationTimeoutsInput is an input type that accepts RouteServerPropagationTimeoutsArgs and RouteServerPropagationTimeoutsOutput values. You can construct a concrete instance of `RouteServerPropagationTimeoutsInput` via:

RouteServerPropagationTimeoutsArgs{...}

type RouteServerPropagationTimeoutsOutput added in v6.83.0

type RouteServerPropagationTimeoutsOutput struct{ *pulumi.OutputState }

func (RouteServerPropagationTimeoutsOutput) Create added in v6.83.0

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 (RouteServerPropagationTimeoutsOutput) Delete added in v6.83.0

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 (RouteServerPropagationTimeoutsOutput) ElementType added in v6.83.0

func (RouteServerPropagationTimeoutsOutput) ToRouteServerPropagationTimeoutsOutput added in v6.83.0

func (o RouteServerPropagationTimeoutsOutput) ToRouteServerPropagationTimeoutsOutput() RouteServerPropagationTimeoutsOutput

func (RouteServerPropagationTimeoutsOutput) ToRouteServerPropagationTimeoutsOutputWithContext added in v6.83.0

func (o RouteServerPropagationTimeoutsOutput) ToRouteServerPropagationTimeoutsOutputWithContext(ctx context.Context) RouteServerPropagationTimeoutsOutput

func (RouteServerPropagationTimeoutsOutput) ToRouteServerPropagationTimeoutsPtrOutput added in v6.83.0

func (o RouteServerPropagationTimeoutsOutput) ToRouteServerPropagationTimeoutsPtrOutput() RouteServerPropagationTimeoutsPtrOutput

func (RouteServerPropagationTimeoutsOutput) ToRouteServerPropagationTimeoutsPtrOutputWithContext added in v6.83.0

func (o RouteServerPropagationTimeoutsOutput) ToRouteServerPropagationTimeoutsPtrOutputWithContext(ctx context.Context) RouteServerPropagationTimeoutsPtrOutput

type RouteServerPropagationTimeoutsPtrInput added in v6.83.0

type RouteServerPropagationTimeoutsPtrInput interface {
	pulumi.Input

	ToRouteServerPropagationTimeoutsPtrOutput() RouteServerPropagationTimeoutsPtrOutput
	ToRouteServerPropagationTimeoutsPtrOutputWithContext(context.Context) RouteServerPropagationTimeoutsPtrOutput
}

RouteServerPropagationTimeoutsPtrInput is an input type that accepts RouteServerPropagationTimeoutsArgs, RouteServerPropagationTimeoutsPtr and RouteServerPropagationTimeoutsPtrOutput values. You can construct a concrete instance of `RouteServerPropagationTimeoutsPtrInput` via:

        RouteServerPropagationTimeoutsArgs{...}

or:

        nil

type RouteServerPropagationTimeoutsPtrOutput added in v6.83.0

type RouteServerPropagationTimeoutsPtrOutput struct{ *pulumi.OutputState }

func (RouteServerPropagationTimeoutsPtrOutput) Create added in v6.83.0

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 (RouteServerPropagationTimeoutsPtrOutput) Delete added in v6.83.0

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 (RouteServerPropagationTimeoutsPtrOutput) Elem added in v6.83.0

func (RouteServerPropagationTimeoutsPtrOutput) ElementType added in v6.83.0

func (RouteServerPropagationTimeoutsPtrOutput) ToRouteServerPropagationTimeoutsPtrOutput added in v6.83.0

func (o RouteServerPropagationTimeoutsPtrOutput) ToRouteServerPropagationTimeoutsPtrOutput() RouteServerPropagationTimeoutsPtrOutput

func (RouteServerPropagationTimeoutsPtrOutput) ToRouteServerPropagationTimeoutsPtrOutputWithContext added in v6.83.0

func (o RouteServerPropagationTimeoutsPtrOutput) ToRouteServerPropagationTimeoutsPtrOutputWithContext(ctx context.Context) RouteServerPropagationTimeoutsPtrOutput

type RouteServerState added in v6.83.0

type RouteServerState struct {
	// The Border Gateway Protocol (BGP) Autonomous System Number (ASN) for the appliance. Valid values are from 1 to 4294967295.
	//
	// The following arguments are optional:
	AmazonSideAsn pulumi.IntPtrInput
	// The ARN of the route server.
	Arn pulumi.StringPtrInput
	// Indicates whether routes should be persisted after all BGP sessions are terminated. Valid values are `enable`, `disable`, `reset`
	PersistRoutes pulumi.StringPtrInput
	// The number of minutes a route server will wait after BGP is re-established to unpersist the routes in the FIB and RIB. Value must be in the range of 1-5. Required if `persistRoutes` is enabled.
	PersistRoutesDuration pulumi.IntPtrInput
	// The unique identifier of the route server.
	RouteServerId pulumi.StringPtrInput
	// Indicates whether SNS notifications should be enabled for route server events. Enabling SNS notifications persists BGP status changes to an SNS topic provisioned by AWS`.
	SnsNotificationsEnabled pulumi.BoolPtrInput
	// The ARN of the SNS topic where notifications are published.
	SnsTopicArn pulumi.StringPtrInput
	// A map of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	//
	// Deprecated: Please use `tags` instead.
	TagsAll  pulumi.StringMapInput
	Timeouts RouteServerTimeoutsPtrInput
}

func (RouteServerState) ElementType added in v6.83.0

func (RouteServerState) ElementType() reflect.Type

type RouteServerTimeouts added in v6.83.0

type RouteServerTimeouts 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 RouteServerTimeoutsArgs added in v6.83.0

type RouteServerTimeoutsArgs 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 (RouteServerTimeoutsArgs) ElementType added in v6.83.0

func (RouteServerTimeoutsArgs) ElementType() reflect.Type

func (RouteServerTimeoutsArgs) ToRouteServerTimeoutsOutput added in v6.83.0

func (i RouteServerTimeoutsArgs) ToRouteServerTimeoutsOutput() RouteServerTimeoutsOutput

func (RouteServerTimeoutsArgs) ToRouteServerTimeoutsOutputWithContext added in v6.83.0

func (i RouteServerTimeoutsArgs) ToRouteServerTimeoutsOutputWithContext(ctx context.Context) RouteServerTimeoutsOutput

func (RouteServerTimeoutsArgs) ToRouteServerTimeoutsPtrOutput added in v6.83.0

func (i RouteServerTimeoutsArgs) ToRouteServerTimeoutsPtrOutput() RouteServerTimeoutsPtrOutput

func (RouteServerTimeoutsArgs) ToRouteServerTimeoutsPtrOutputWithContext added in v6.83.0

func (i RouteServerTimeoutsArgs) ToRouteServerTimeoutsPtrOutputWithContext(ctx context.Context) RouteServerTimeoutsPtrOutput

type RouteServerTimeoutsInput added in v6.83.0

type RouteServerTimeoutsInput interface {
	pulumi.Input

	ToRouteServerTimeoutsOutput() RouteServerTimeoutsOutput
	ToRouteServerTimeoutsOutputWithContext(context.Context) RouteServerTimeoutsOutput
}

RouteServerTimeoutsInput is an input type that accepts RouteServerTimeoutsArgs and RouteServerTimeoutsOutput values. You can construct a concrete instance of `RouteServerTimeoutsInput` via:

RouteServerTimeoutsArgs{...}

type RouteServerTimeoutsOutput added in v6.83.0

type RouteServerTimeoutsOutput struct{ *pulumi.OutputState }

func (RouteServerTimeoutsOutput) Create added in v6.83.0

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 (RouteServerTimeoutsOutput) Delete added in v6.83.0

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 (RouteServerTimeoutsOutput) ElementType added in v6.83.0

func (RouteServerTimeoutsOutput) ElementType() reflect.Type

func (RouteServerTimeoutsOutput) ToRouteServerTimeoutsOutput added in v6.83.0

func (o RouteServerTimeoutsOutput) ToRouteServerTimeoutsOutput() RouteServerTimeoutsOutput

func (RouteServerTimeoutsOutput) ToRouteServerTimeoutsOutputWithContext added in v6.83.0

func (o RouteServerTimeoutsOutput) ToRouteServerTimeoutsOutputWithContext(ctx context.Context) RouteServerTimeoutsOutput

func (RouteServerTimeoutsOutput) ToRouteServerTimeoutsPtrOutput added in v6.83.0

func (o RouteServerTimeoutsOutput) ToRouteServerTimeoutsPtrOutput() RouteServerTimeoutsPtrOutput

func (RouteServerTimeoutsOutput) ToRouteServerTimeoutsPtrOutputWithContext added in v6.83.0

func (o RouteServerTimeoutsOutput) ToRouteServerTimeoutsPtrOutputWithContext(ctx context.Context) RouteServerTimeoutsPtrOutput

func (RouteServerTimeoutsOutput) Update added in v6.83.0

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 RouteServerTimeoutsPtrInput added in v6.83.0

type RouteServerTimeoutsPtrInput interface {
	pulumi.Input

	ToRouteServerTimeoutsPtrOutput() RouteServerTimeoutsPtrOutput
	ToRouteServerTimeoutsPtrOutputWithContext(context.Context) RouteServerTimeoutsPtrOutput
}

RouteServerTimeoutsPtrInput is an input type that accepts RouteServerTimeoutsArgs, RouteServerTimeoutsPtr and RouteServerTimeoutsPtrOutput values. You can construct a concrete instance of `RouteServerTimeoutsPtrInput` via:

        RouteServerTimeoutsArgs{...}

or:

        nil

func RouteServerTimeoutsPtr added in v6.83.0

func RouteServerTimeoutsPtr(v *RouteServerTimeoutsArgs) RouteServerTimeoutsPtrInput

type RouteServerTimeoutsPtrOutput added in v6.83.0

type RouteServerTimeoutsPtrOutput struct{ *pulumi.OutputState }

func (RouteServerTimeoutsPtrOutput) Create added in v6.83.0

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 (RouteServerTimeoutsPtrOutput) Delete added in v6.83.0

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 (RouteServerTimeoutsPtrOutput) Elem added in v6.83.0

func (RouteServerTimeoutsPtrOutput) ElementType added in v6.83.0

func (RouteServerTimeoutsPtrOutput) ToRouteServerTimeoutsPtrOutput added in v6.83.0

func (o RouteServerTimeoutsPtrOutput) ToRouteServerTimeoutsPtrOutput() RouteServerTimeoutsPtrOutput

func (RouteServerTimeoutsPtrOutput) ToRouteServerTimeoutsPtrOutputWithContext added in v6.83.0

func (o RouteServerTimeoutsPtrOutput) ToRouteServerTimeoutsPtrOutputWithContext(ctx context.Context) RouteServerTimeoutsPtrOutput

func (RouteServerTimeoutsPtrOutput) Update added in v6.83.0

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 RouteServerVpcAssociation added in v6.83.0

type RouteServerVpcAssociation struct {
	pulumi.CustomResourceState

	// The unique identifier for the route server to be associated.
	RouteServerId pulumi.StringOutput                        `pulumi:"routeServerId"`
	Timeouts      RouteServerVpcAssociationTimeoutsPtrOutput `pulumi:"timeouts"`
	// The ID of the VPC to associate with the route server.
	VpcId pulumi.StringOutput `pulumi:"vpcId"`
}

Provides a resource for managing association between VPC (Virtual Private Cloud) route server and a VPC.

## Example Usage

### Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/vpc"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := vpc.NewRouteServerVpcAssociation(ctx, "example", &vpc.RouteServerVpcAssociationArgs{
			RouteServerId: pulumi.Any(exampleAwsVpcRouteServer.RouteServerId),
			VpcId:         pulumi.Any(exampleAwsVpc.Id),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Using `pulumi import`, to to import VPC (Virtual Private Cloud) Route Server Association using the associated resource ID and VPC Id separated by a comma (,). For example:

```sh $ pulumi import aws:vpc/routeServerVpcAssociation:RouteServerVpcAssociation example rs-12345678,vpc-0f001273ec18911b1 ```

func GetRouteServerVpcAssociation added in v6.83.0

func GetRouteServerVpcAssociation(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *RouteServerVpcAssociationState, opts ...pulumi.ResourceOption) (*RouteServerVpcAssociation, error)

GetRouteServerVpcAssociation gets an existing RouteServerVpcAssociation 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 NewRouteServerVpcAssociation added in v6.83.0

func NewRouteServerVpcAssociation(ctx *pulumi.Context,
	name string, args *RouteServerVpcAssociationArgs, opts ...pulumi.ResourceOption) (*RouteServerVpcAssociation, error)

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

func (*RouteServerVpcAssociation) ElementType added in v6.83.0

func (*RouteServerVpcAssociation) ElementType() reflect.Type

func (*RouteServerVpcAssociation) ToRouteServerVpcAssociationOutput added in v6.83.0

func (i *RouteServerVpcAssociation) ToRouteServerVpcAssociationOutput() RouteServerVpcAssociationOutput

func (*RouteServerVpcAssociation) ToRouteServerVpcAssociationOutputWithContext added in v6.83.0

func (i *RouteServerVpcAssociation) ToRouteServerVpcAssociationOutputWithContext(ctx context.Context) RouteServerVpcAssociationOutput

type RouteServerVpcAssociationArgs added in v6.83.0

type RouteServerVpcAssociationArgs struct {
	// The unique identifier for the route server to be associated.
	RouteServerId pulumi.StringInput
	Timeouts      RouteServerVpcAssociationTimeoutsPtrInput
	// The ID of the VPC to associate with the route server.
	VpcId pulumi.StringInput
}

The set of arguments for constructing a RouteServerVpcAssociation resource.

func (RouteServerVpcAssociationArgs) ElementType added in v6.83.0

type RouteServerVpcAssociationArray added in v6.83.0

type RouteServerVpcAssociationArray []RouteServerVpcAssociationInput

func (RouteServerVpcAssociationArray) ElementType added in v6.83.0

func (RouteServerVpcAssociationArray) ToRouteServerVpcAssociationArrayOutput added in v6.83.0

func (i RouteServerVpcAssociationArray) ToRouteServerVpcAssociationArrayOutput() RouteServerVpcAssociationArrayOutput

func (RouteServerVpcAssociationArray) ToRouteServerVpcAssociationArrayOutputWithContext added in v6.83.0

func (i RouteServerVpcAssociationArray) ToRouteServerVpcAssociationArrayOutputWithContext(ctx context.Context) RouteServerVpcAssociationArrayOutput

type RouteServerVpcAssociationArrayInput added in v6.83.0

type RouteServerVpcAssociationArrayInput interface {
	pulumi.Input

	ToRouteServerVpcAssociationArrayOutput() RouteServerVpcAssociationArrayOutput
	ToRouteServerVpcAssociationArrayOutputWithContext(context.Context) RouteServerVpcAssociationArrayOutput
}

RouteServerVpcAssociationArrayInput is an input type that accepts RouteServerVpcAssociationArray and RouteServerVpcAssociationArrayOutput values. You can construct a concrete instance of `RouteServerVpcAssociationArrayInput` via:

RouteServerVpcAssociationArray{ RouteServerVpcAssociationArgs{...} }

type RouteServerVpcAssociationArrayOutput added in v6.83.0

type RouteServerVpcAssociationArrayOutput struct{ *pulumi.OutputState }

func (RouteServerVpcAssociationArrayOutput) ElementType added in v6.83.0

func (RouteServerVpcAssociationArrayOutput) Index added in v6.83.0

func (RouteServerVpcAssociationArrayOutput) ToRouteServerVpcAssociationArrayOutput added in v6.83.0

func (o RouteServerVpcAssociationArrayOutput) ToRouteServerVpcAssociationArrayOutput() RouteServerVpcAssociationArrayOutput

func (RouteServerVpcAssociationArrayOutput) ToRouteServerVpcAssociationArrayOutputWithContext added in v6.83.0

func (o RouteServerVpcAssociationArrayOutput) ToRouteServerVpcAssociationArrayOutputWithContext(ctx context.Context) RouteServerVpcAssociationArrayOutput

type RouteServerVpcAssociationInput added in v6.83.0

type RouteServerVpcAssociationInput interface {
	pulumi.Input

	ToRouteServerVpcAssociationOutput() RouteServerVpcAssociationOutput
	ToRouteServerVpcAssociationOutputWithContext(ctx context.Context) RouteServerVpcAssociationOutput
}

type RouteServerVpcAssociationMap added in v6.83.0

type RouteServerVpcAssociationMap map[string]RouteServerVpcAssociationInput

func (RouteServerVpcAssociationMap) ElementType added in v6.83.0

func (RouteServerVpcAssociationMap) ToRouteServerVpcAssociationMapOutput added in v6.83.0

func (i RouteServerVpcAssociationMap) ToRouteServerVpcAssociationMapOutput() RouteServerVpcAssociationMapOutput

func (RouteServerVpcAssociationMap) ToRouteServerVpcAssociationMapOutputWithContext added in v6.83.0

func (i RouteServerVpcAssociationMap) ToRouteServerVpcAssociationMapOutputWithContext(ctx context.Context) RouteServerVpcAssociationMapOutput

type RouteServerVpcAssociationMapInput added in v6.83.0

type RouteServerVpcAssociationMapInput interface {
	pulumi.Input

	ToRouteServerVpcAssociationMapOutput() RouteServerVpcAssociationMapOutput
	ToRouteServerVpcAssociationMapOutputWithContext(context.Context) RouteServerVpcAssociationMapOutput
}

RouteServerVpcAssociationMapInput is an input type that accepts RouteServerVpcAssociationMap and RouteServerVpcAssociationMapOutput values. You can construct a concrete instance of `RouteServerVpcAssociationMapInput` via:

RouteServerVpcAssociationMap{ "key": RouteServerVpcAssociationArgs{...} }

type RouteServerVpcAssociationMapOutput added in v6.83.0

type RouteServerVpcAssociationMapOutput struct{ *pulumi.OutputState }

func (RouteServerVpcAssociationMapOutput) ElementType added in v6.83.0

func (RouteServerVpcAssociationMapOutput) MapIndex added in v6.83.0

func (RouteServerVpcAssociationMapOutput) ToRouteServerVpcAssociationMapOutput added in v6.83.0

func (o RouteServerVpcAssociationMapOutput) ToRouteServerVpcAssociationMapOutput() RouteServerVpcAssociationMapOutput

func (RouteServerVpcAssociationMapOutput) ToRouteServerVpcAssociationMapOutputWithContext added in v6.83.0

func (o RouteServerVpcAssociationMapOutput) ToRouteServerVpcAssociationMapOutputWithContext(ctx context.Context) RouteServerVpcAssociationMapOutput

type RouteServerVpcAssociationOutput added in v6.83.0

type RouteServerVpcAssociationOutput struct{ *pulumi.OutputState }

func (RouteServerVpcAssociationOutput) ElementType added in v6.83.0

func (RouteServerVpcAssociationOutput) RouteServerId added in v6.83.0

The unique identifier for the route server to be associated.

func (RouteServerVpcAssociationOutput) Timeouts added in v6.83.0

func (RouteServerVpcAssociationOutput) ToRouteServerVpcAssociationOutput added in v6.83.0

func (o RouteServerVpcAssociationOutput) ToRouteServerVpcAssociationOutput() RouteServerVpcAssociationOutput

func (RouteServerVpcAssociationOutput) ToRouteServerVpcAssociationOutputWithContext added in v6.83.0

func (o RouteServerVpcAssociationOutput) ToRouteServerVpcAssociationOutputWithContext(ctx context.Context) RouteServerVpcAssociationOutput

func (RouteServerVpcAssociationOutput) VpcId added in v6.83.0

The ID of the VPC to associate with the route server.

type RouteServerVpcAssociationState added in v6.83.0

type RouteServerVpcAssociationState struct {
	// The unique identifier for the route server to be associated.
	RouteServerId pulumi.StringPtrInput
	Timeouts      RouteServerVpcAssociationTimeoutsPtrInput
	// The ID of the VPC to associate with the route server.
	VpcId pulumi.StringPtrInput
}

func (RouteServerVpcAssociationState) ElementType added in v6.83.0

type RouteServerVpcAssociationTimeouts added in v6.83.0

type RouteServerVpcAssociationTimeouts 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"`
}

type RouteServerVpcAssociationTimeoutsArgs added in v6.83.0

type RouteServerVpcAssociationTimeoutsArgs 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"`
}

func (RouteServerVpcAssociationTimeoutsArgs) ElementType added in v6.83.0

func (RouteServerVpcAssociationTimeoutsArgs) ToRouteServerVpcAssociationTimeoutsOutput added in v6.83.0

func (i RouteServerVpcAssociationTimeoutsArgs) ToRouteServerVpcAssociationTimeoutsOutput() RouteServerVpcAssociationTimeoutsOutput

func (RouteServerVpcAssociationTimeoutsArgs) ToRouteServerVpcAssociationTimeoutsOutputWithContext added in v6.83.0

func (i RouteServerVpcAssociationTimeoutsArgs) ToRouteServerVpcAssociationTimeoutsOutputWithContext(ctx context.Context) RouteServerVpcAssociationTimeoutsOutput

func (RouteServerVpcAssociationTimeoutsArgs) ToRouteServerVpcAssociationTimeoutsPtrOutput added in v6.83.0

func (i RouteServerVpcAssociationTimeoutsArgs) ToRouteServerVpcAssociationTimeoutsPtrOutput() RouteServerVpcAssociationTimeoutsPtrOutput

func (RouteServerVpcAssociationTimeoutsArgs) ToRouteServerVpcAssociationTimeoutsPtrOutputWithContext added in v6.83.0

func (i RouteServerVpcAssociationTimeoutsArgs) ToRouteServerVpcAssociationTimeoutsPtrOutputWithContext(ctx context.Context) RouteServerVpcAssociationTimeoutsPtrOutput

type RouteServerVpcAssociationTimeoutsInput added in v6.83.0

type RouteServerVpcAssociationTimeoutsInput interface {
	pulumi.Input

	ToRouteServerVpcAssociationTimeoutsOutput() RouteServerVpcAssociationTimeoutsOutput
	ToRouteServerVpcAssociationTimeoutsOutputWithContext(context.Context) RouteServerVpcAssociationTimeoutsOutput
}

RouteServerVpcAssociationTimeoutsInput is an input type that accepts RouteServerVpcAssociationTimeoutsArgs and RouteServerVpcAssociationTimeoutsOutput values. You can construct a concrete instance of `RouteServerVpcAssociationTimeoutsInput` via:

RouteServerVpcAssociationTimeoutsArgs{...}

type RouteServerVpcAssociationTimeoutsOutput added in v6.83.0

type RouteServerVpcAssociationTimeoutsOutput struct{ *pulumi.OutputState }

func (RouteServerVpcAssociationTimeoutsOutput) Create added in v6.83.0

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 (RouteServerVpcAssociationTimeoutsOutput) Delete added in v6.83.0

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 (RouteServerVpcAssociationTimeoutsOutput) ElementType added in v6.83.0

func (RouteServerVpcAssociationTimeoutsOutput) ToRouteServerVpcAssociationTimeoutsOutput added in v6.83.0

func (o RouteServerVpcAssociationTimeoutsOutput) ToRouteServerVpcAssociationTimeoutsOutput() RouteServerVpcAssociationTimeoutsOutput

func (RouteServerVpcAssociationTimeoutsOutput) ToRouteServerVpcAssociationTimeoutsOutputWithContext added in v6.83.0

func (o RouteServerVpcAssociationTimeoutsOutput) ToRouteServerVpcAssociationTimeoutsOutputWithContext(ctx context.Context) RouteServerVpcAssociationTimeoutsOutput

func (RouteServerVpcAssociationTimeoutsOutput) ToRouteServerVpcAssociationTimeoutsPtrOutput added in v6.83.0

func (o RouteServerVpcAssociationTimeoutsOutput) ToRouteServerVpcAssociationTimeoutsPtrOutput() RouteServerVpcAssociationTimeoutsPtrOutput

func (RouteServerVpcAssociationTimeoutsOutput) ToRouteServerVpcAssociationTimeoutsPtrOutputWithContext added in v6.83.0

func (o RouteServerVpcAssociationTimeoutsOutput) ToRouteServerVpcAssociationTimeoutsPtrOutputWithContext(ctx context.Context) RouteServerVpcAssociationTimeoutsPtrOutput

type RouteServerVpcAssociationTimeoutsPtrInput added in v6.83.0

type RouteServerVpcAssociationTimeoutsPtrInput interface {
	pulumi.Input

	ToRouteServerVpcAssociationTimeoutsPtrOutput() RouteServerVpcAssociationTimeoutsPtrOutput
	ToRouteServerVpcAssociationTimeoutsPtrOutputWithContext(context.Context) RouteServerVpcAssociationTimeoutsPtrOutput
}

RouteServerVpcAssociationTimeoutsPtrInput is an input type that accepts RouteServerVpcAssociationTimeoutsArgs, RouteServerVpcAssociationTimeoutsPtr and RouteServerVpcAssociationTimeoutsPtrOutput values. You can construct a concrete instance of `RouteServerVpcAssociationTimeoutsPtrInput` via:

        RouteServerVpcAssociationTimeoutsArgs{...}

or:

        nil

type RouteServerVpcAssociationTimeoutsPtrOutput added in v6.83.0

type RouteServerVpcAssociationTimeoutsPtrOutput struct{ *pulumi.OutputState }

func (RouteServerVpcAssociationTimeoutsPtrOutput) Create added in v6.83.0

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 (RouteServerVpcAssociationTimeoutsPtrOutput) Delete added in v6.83.0

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 (RouteServerVpcAssociationTimeoutsPtrOutput) Elem added in v6.83.0

func (RouteServerVpcAssociationTimeoutsPtrOutput) ElementType added in v6.83.0

func (RouteServerVpcAssociationTimeoutsPtrOutput) ToRouteServerVpcAssociationTimeoutsPtrOutput added in v6.83.0

func (o RouteServerVpcAssociationTimeoutsPtrOutput) ToRouteServerVpcAssociationTimeoutsPtrOutput() RouteServerVpcAssociationTimeoutsPtrOutput

func (RouteServerVpcAssociationTimeoutsPtrOutput) ToRouteServerVpcAssociationTimeoutsPtrOutputWithContext added in v6.83.0

func (o RouteServerVpcAssociationTimeoutsPtrOutput) ToRouteServerVpcAssociationTimeoutsPtrOutputWithContext(ctx context.Context) RouteServerVpcAssociationTimeoutsPtrOutput

type SecurityGroupEgressRule

type SecurityGroupEgressRule struct {
	pulumi.CustomResourceState

	// The Amazon Resource Name (ARN) of the security group rule.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// The destination IPv4 CIDR range.
	CidrIpv4 pulumi.StringPtrOutput `pulumi:"cidrIpv4"`
	// The destination IPv6 CIDR range.
	CidrIpv6 pulumi.StringPtrOutput `pulumi:"cidrIpv6"`
	// The security group rule description.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// The start of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 type.
	FromPort pulumi.IntPtrOutput `pulumi:"fromPort"`
	// The IP protocol name or number. Use `-1` to specify all protocols. Note that if `ipProtocol` is set to `-1`, it translates to all protocols, all port ranges, and `fromPort` and `toPort` values should not be defined.
	IpProtocol pulumi.StringOutput `pulumi:"ipProtocol"`
	// The ID of the destination prefix list.
	PrefixListId pulumi.StringPtrOutput `pulumi:"prefixListId"`
	// The destination security group that is referenced in the rule.
	ReferencedSecurityGroupId pulumi.StringPtrOutput `pulumi:"referencedSecurityGroupId"`
	// The ID of the security group.
	SecurityGroupId pulumi.StringOutput `pulumi:"securityGroupId"`
	// The ID of the security group rule.
	SecurityGroupRuleId pulumi.StringOutput `pulumi:"securityGroupRuleId"`
	// A map of tags to assign to the resource. 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"`
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	//
	// Deprecated: Please use `tags` instead.
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
	// The end of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 code.
	//
	// > **Note** Although `cidrIpv4`, `cidrIpv6`, `prefixListId`, and `referencedSecurityGroupId` are all marked as optional, you *must* provide one of them in order to configure the destination of the traffic. The `fromPort` and `toPort` arguments are required unless `ipProtocol` is set to `-1` or `icmpv6`.
	ToPort pulumi.IntPtrOutput `pulumi:"toPort"`
}

Manages an outbound (egress) rule for a security group.

When specifying an outbound rule for your security group in a VPC, the configuration must include a destination for the traffic.

> **NOTE:** Using `vpc.SecurityGroupEgressRule` and `vpc.SecurityGroupIngressRule` resources is the current best practice. Avoid using the `ec2.SecurityGroupRule` resource and the `ingress` and `egress` arguments of the `ec2.SecurityGroup` resource for configuring in-line rules, as they struggle with managing multiple CIDR blocks, and tags and descriptions due to the historical lack of unique IDs.

!> **WARNING:** You should not use the `vpc.SecurityGroupEgressRule` and `vpc.SecurityGroupIngressRule` resources in conjunction with the `ec2.SecurityGroup` resource with _in-line rules_ (using the `ingress` and `egress` arguments of `ec2.SecurityGroup`) or the `ec2.SecurityGroupRule` resource. Doing so may cause rule conflicts, perpetual differences, and result in rules being overwritten.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/vpc"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := vpc.NewSecurityGroupEgressRule(ctx, "example", &vpc.SecurityGroupEgressRuleArgs{
			SecurityGroupId: pulumi.Any(exampleAwsSecurityGroup.Id),
			CidrIpv4:        pulumi.String("10.0.0.0/8"),
			FromPort:        pulumi.Int(80),
			IpProtocol:      pulumi.String("tcp"),
			ToPort:          pulumi.Int(80),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Using `pulumi import`, import security group egress rules using the `security_group_rule_id`. For example:

```sh $ pulumi import aws:vpc/securityGroupEgressRule:SecurityGroupEgressRule example sgr-02108b27edd666983 ```

func GetSecurityGroupEgressRule

func GetSecurityGroupEgressRule(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *SecurityGroupEgressRuleState, opts ...pulumi.ResourceOption) (*SecurityGroupEgressRule, error)

GetSecurityGroupEgressRule gets an existing SecurityGroupEgressRule 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 NewSecurityGroupEgressRule

func NewSecurityGroupEgressRule(ctx *pulumi.Context,
	name string, args *SecurityGroupEgressRuleArgs, opts ...pulumi.ResourceOption) (*SecurityGroupEgressRule, error)

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

func (*SecurityGroupEgressRule) ElementType

func (*SecurityGroupEgressRule) ElementType() reflect.Type

func (*SecurityGroupEgressRule) ToSecurityGroupEgressRuleOutput

func (i *SecurityGroupEgressRule) ToSecurityGroupEgressRuleOutput() SecurityGroupEgressRuleOutput

func (*SecurityGroupEgressRule) ToSecurityGroupEgressRuleOutputWithContext

func (i *SecurityGroupEgressRule) ToSecurityGroupEgressRuleOutputWithContext(ctx context.Context) SecurityGroupEgressRuleOutput

type SecurityGroupEgressRuleArgs

type SecurityGroupEgressRuleArgs struct {
	// The destination IPv4 CIDR range.
	CidrIpv4 pulumi.StringPtrInput
	// The destination IPv6 CIDR range.
	CidrIpv6 pulumi.StringPtrInput
	// The security group rule description.
	Description pulumi.StringPtrInput
	// The start of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 type.
	FromPort pulumi.IntPtrInput
	// The IP protocol name or number. Use `-1` to specify all protocols. Note that if `ipProtocol` is set to `-1`, it translates to all protocols, all port ranges, and `fromPort` and `toPort` values should not be defined.
	IpProtocol pulumi.StringInput
	// The ID of the destination prefix list.
	PrefixListId pulumi.StringPtrInput
	// The destination security group that is referenced in the rule.
	ReferencedSecurityGroupId pulumi.StringPtrInput
	// The ID of the security group.
	SecurityGroupId pulumi.StringInput
	// A map of tags to assign to the resource. 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 end of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 code.
	//
	// > **Note** Although `cidrIpv4`, `cidrIpv6`, `prefixListId`, and `referencedSecurityGroupId` are all marked as optional, you *must* provide one of them in order to configure the destination of the traffic. The `fromPort` and `toPort` arguments are required unless `ipProtocol` is set to `-1` or `icmpv6`.
	ToPort pulumi.IntPtrInput
}

The set of arguments for constructing a SecurityGroupEgressRule resource.

func (SecurityGroupEgressRuleArgs) ElementType

type SecurityGroupEgressRuleArray

type SecurityGroupEgressRuleArray []SecurityGroupEgressRuleInput

func (SecurityGroupEgressRuleArray) ElementType

func (SecurityGroupEgressRuleArray) ToSecurityGroupEgressRuleArrayOutput

func (i SecurityGroupEgressRuleArray) ToSecurityGroupEgressRuleArrayOutput() SecurityGroupEgressRuleArrayOutput

func (SecurityGroupEgressRuleArray) ToSecurityGroupEgressRuleArrayOutputWithContext

func (i SecurityGroupEgressRuleArray) ToSecurityGroupEgressRuleArrayOutputWithContext(ctx context.Context) SecurityGroupEgressRuleArrayOutput

type SecurityGroupEgressRuleArrayInput

type SecurityGroupEgressRuleArrayInput interface {
	pulumi.Input

	ToSecurityGroupEgressRuleArrayOutput() SecurityGroupEgressRuleArrayOutput
	ToSecurityGroupEgressRuleArrayOutputWithContext(context.Context) SecurityGroupEgressRuleArrayOutput
}

SecurityGroupEgressRuleArrayInput is an input type that accepts SecurityGroupEgressRuleArray and SecurityGroupEgressRuleArrayOutput values. You can construct a concrete instance of `SecurityGroupEgressRuleArrayInput` via:

SecurityGroupEgressRuleArray{ SecurityGroupEgressRuleArgs{...} }

type SecurityGroupEgressRuleArrayOutput

type SecurityGroupEgressRuleArrayOutput struct{ *pulumi.OutputState }

func (SecurityGroupEgressRuleArrayOutput) ElementType

func (SecurityGroupEgressRuleArrayOutput) Index

func (SecurityGroupEgressRuleArrayOutput) ToSecurityGroupEgressRuleArrayOutput

func (o SecurityGroupEgressRuleArrayOutput) ToSecurityGroupEgressRuleArrayOutput() SecurityGroupEgressRuleArrayOutput

func (SecurityGroupEgressRuleArrayOutput) ToSecurityGroupEgressRuleArrayOutputWithContext

func (o SecurityGroupEgressRuleArrayOutput) ToSecurityGroupEgressRuleArrayOutputWithContext(ctx context.Context) SecurityGroupEgressRuleArrayOutput

type SecurityGroupEgressRuleInput

type SecurityGroupEgressRuleInput interface {
	pulumi.Input

	ToSecurityGroupEgressRuleOutput() SecurityGroupEgressRuleOutput
	ToSecurityGroupEgressRuleOutputWithContext(ctx context.Context) SecurityGroupEgressRuleOutput
}

type SecurityGroupEgressRuleMap

type SecurityGroupEgressRuleMap map[string]SecurityGroupEgressRuleInput

func (SecurityGroupEgressRuleMap) ElementType

func (SecurityGroupEgressRuleMap) ElementType() reflect.Type

func (SecurityGroupEgressRuleMap) ToSecurityGroupEgressRuleMapOutput

func (i SecurityGroupEgressRuleMap) ToSecurityGroupEgressRuleMapOutput() SecurityGroupEgressRuleMapOutput

func (SecurityGroupEgressRuleMap) ToSecurityGroupEgressRuleMapOutputWithContext

func (i SecurityGroupEgressRuleMap) ToSecurityGroupEgressRuleMapOutputWithContext(ctx context.Context) SecurityGroupEgressRuleMapOutput

type SecurityGroupEgressRuleMapInput

type SecurityGroupEgressRuleMapInput interface {
	pulumi.Input

	ToSecurityGroupEgressRuleMapOutput() SecurityGroupEgressRuleMapOutput
	ToSecurityGroupEgressRuleMapOutputWithContext(context.Context) SecurityGroupEgressRuleMapOutput
}

SecurityGroupEgressRuleMapInput is an input type that accepts SecurityGroupEgressRuleMap and SecurityGroupEgressRuleMapOutput values. You can construct a concrete instance of `SecurityGroupEgressRuleMapInput` via:

SecurityGroupEgressRuleMap{ "key": SecurityGroupEgressRuleArgs{...} }

type SecurityGroupEgressRuleMapOutput

type SecurityGroupEgressRuleMapOutput struct{ *pulumi.OutputState }

func (SecurityGroupEgressRuleMapOutput) ElementType

func (SecurityGroupEgressRuleMapOutput) MapIndex

func (SecurityGroupEgressRuleMapOutput) ToSecurityGroupEgressRuleMapOutput

func (o SecurityGroupEgressRuleMapOutput) ToSecurityGroupEgressRuleMapOutput() SecurityGroupEgressRuleMapOutput

func (SecurityGroupEgressRuleMapOutput) ToSecurityGroupEgressRuleMapOutputWithContext

func (o SecurityGroupEgressRuleMapOutput) ToSecurityGroupEgressRuleMapOutputWithContext(ctx context.Context) SecurityGroupEgressRuleMapOutput

type SecurityGroupEgressRuleOutput

type SecurityGroupEgressRuleOutput struct{ *pulumi.OutputState }

func (SecurityGroupEgressRuleOutput) Arn

The Amazon Resource Name (ARN) of the security group rule.

func (SecurityGroupEgressRuleOutput) CidrIpv4

The destination IPv4 CIDR range.

func (SecurityGroupEgressRuleOutput) CidrIpv6

The destination IPv6 CIDR range.

func (SecurityGroupEgressRuleOutput) Description

The security group rule description.

func (SecurityGroupEgressRuleOutput) ElementType

func (SecurityGroupEgressRuleOutput) FromPort

The start of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 type.

func (SecurityGroupEgressRuleOutput) IpProtocol

The IP protocol name or number. Use `-1` to specify all protocols. Note that if `ipProtocol` is set to `-1`, it translates to all protocols, all port ranges, and `fromPort` and `toPort` values should not be defined.

func (SecurityGroupEgressRuleOutput) PrefixListId

The ID of the destination prefix list.

func (SecurityGroupEgressRuleOutput) ReferencedSecurityGroupId

func (o SecurityGroupEgressRuleOutput) ReferencedSecurityGroupId() pulumi.StringPtrOutput

The destination security group that is referenced in the rule.

func (SecurityGroupEgressRuleOutput) SecurityGroupId

The ID of the security group.

func (SecurityGroupEgressRuleOutput) SecurityGroupRuleId

func (o SecurityGroupEgressRuleOutput) SecurityGroupRuleId() pulumi.StringOutput

The ID of the security group rule.

func (SecurityGroupEgressRuleOutput) Tags

A map of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.

func (SecurityGroupEgressRuleOutput) TagsAll deprecated

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

Deprecated: Please use `tags` instead.

func (SecurityGroupEgressRuleOutput) ToPort

The end of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 code.

> **Note** Although `cidrIpv4`, `cidrIpv6`, `prefixListId`, and `referencedSecurityGroupId` are all marked as optional, you *must* provide one of them in order to configure the destination of the traffic. The `fromPort` and `toPort` arguments are required unless `ipProtocol` is set to `-1` or `icmpv6`.

func (SecurityGroupEgressRuleOutput) ToSecurityGroupEgressRuleOutput

func (o SecurityGroupEgressRuleOutput) ToSecurityGroupEgressRuleOutput() SecurityGroupEgressRuleOutput

func (SecurityGroupEgressRuleOutput) ToSecurityGroupEgressRuleOutputWithContext

func (o SecurityGroupEgressRuleOutput) ToSecurityGroupEgressRuleOutputWithContext(ctx context.Context) SecurityGroupEgressRuleOutput

type SecurityGroupEgressRuleState

type SecurityGroupEgressRuleState struct {
	// The Amazon Resource Name (ARN) of the security group rule.
	Arn pulumi.StringPtrInput
	// The destination IPv4 CIDR range.
	CidrIpv4 pulumi.StringPtrInput
	// The destination IPv6 CIDR range.
	CidrIpv6 pulumi.StringPtrInput
	// The security group rule description.
	Description pulumi.StringPtrInput
	// The start of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 type.
	FromPort pulumi.IntPtrInput
	// The IP protocol name or number. Use `-1` to specify all protocols. Note that if `ipProtocol` is set to `-1`, it translates to all protocols, all port ranges, and `fromPort` and `toPort` values should not be defined.
	IpProtocol pulumi.StringPtrInput
	// The ID of the destination prefix list.
	PrefixListId pulumi.StringPtrInput
	// The destination security group that is referenced in the rule.
	ReferencedSecurityGroupId pulumi.StringPtrInput
	// The ID of the security group.
	SecurityGroupId pulumi.StringPtrInput
	// The ID of the security group rule.
	SecurityGroupRuleId pulumi.StringPtrInput
	// A map of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	//
	// Deprecated: Please use `tags` instead.
	TagsAll pulumi.StringMapInput
	// The end of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 code.
	//
	// > **Note** Although `cidrIpv4`, `cidrIpv6`, `prefixListId`, and `referencedSecurityGroupId` are all marked as optional, you *must* provide one of them in order to configure the destination of the traffic. The `fromPort` and `toPort` arguments are required unless `ipProtocol` is set to `-1` or `icmpv6`.
	ToPort pulumi.IntPtrInput
}

func (SecurityGroupEgressRuleState) ElementType

type SecurityGroupIngressRule

type SecurityGroupIngressRule struct {
	pulumi.CustomResourceState

	// The Amazon Resource Name (ARN) of the security group rule.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// The source IPv4 CIDR range.
	CidrIpv4 pulumi.StringPtrOutput `pulumi:"cidrIpv4"`
	// The source IPv6 CIDR range.
	CidrIpv6 pulumi.StringPtrOutput `pulumi:"cidrIpv6"`
	// The security group rule description.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// The start of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 type.
	FromPort pulumi.IntPtrOutput `pulumi:"fromPort"`
	// The IP protocol name or number. Use `-1` to specify all protocols. Note that if `ipProtocol` is set to `-1`, it translates to all protocols, all port ranges, and `fromPort` and `toPort` values should not be defined.
	IpProtocol pulumi.StringOutput `pulumi:"ipProtocol"`
	// The ID of the source prefix list.
	PrefixListId pulumi.StringPtrOutput `pulumi:"prefixListId"`
	// The source security group that is referenced in the rule.
	ReferencedSecurityGroupId pulumi.StringPtrOutput `pulumi:"referencedSecurityGroupId"`
	// The ID of the security group.
	SecurityGroupId pulumi.StringOutput `pulumi:"securityGroupId"`
	// The ID of the security group rule.
	SecurityGroupRuleId pulumi.StringOutput `pulumi:"securityGroupRuleId"`
	// A map of tags to assign to the resource. 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"`
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	//
	// Deprecated: Please use `tags` instead.
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
	// The end of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 code.
	ToPort pulumi.IntPtrOutput `pulumi:"toPort"`
}

Manages an inbound (ingress) rule for a security group.

When specifying an inbound rule for your security group in a VPC, the configuration must include a source for the traffic.

> **NOTE:** Using `vpc.SecurityGroupEgressRule` and `vpc.SecurityGroupIngressRule` resources is the current best practice. Avoid using the `ec2.SecurityGroupRule` resource and the `ingress` and `egress` arguments of the `ec2.SecurityGroup` resource for configuring in-line rules, as they struggle with managing multiple CIDR blocks, and tags and descriptions due to the historical lack of unique IDs.

!> **WARNING:** You should not use the `vpc.SecurityGroupEgressRule` and `vpc.SecurityGroupIngressRule` resources in conjunction with the `ec2.SecurityGroup` resource with _in-line rules_ (using the `ingress` and `egress` arguments of `ec2.SecurityGroup`) or the `ec2.SecurityGroupRule` resource. Doing so may cause rule conflicts, perpetual differences, and result in rules being overwritten.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/ec2"
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/vpc"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := ec2.NewSecurityGroup(ctx, "example", &ec2.SecurityGroupArgs{
			Name:        pulumi.String("example"),
			Description: pulumi.String("example"),
			VpcId:       pulumi.Any(main.Id),
			Tags: pulumi.StringMap{
				"Name": pulumi.String("example"),
			},
		})
		if err != nil {
			return err
		}
		_, err = vpc.NewSecurityGroupIngressRule(ctx, "example", &vpc.SecurityGroupIngressRuleArgs{
			SecurityGroupId: example.ID(),
			CidrIpv4:        pulumi.String("10.0.0.0/8"),
			FromPort:        pulumi.Int(80),
			IpProtocol:      pulumi.String("tcp"),
			ToPort:          pulumi.Int(80),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Using `pulumi import`, import security group ingress rules using the `security_group_rule_id`. For example:

```sh $ pulumi import aws:vpc/securityGroupIngressRule:SecurityGroupIngressRule example sgr-02108b27edd666983 ```

func GetSecurityGroupIngressRule

func GetSecurityGroupIngressRule(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *SecurityGroupIngressRuleState, opts ...pulumi.ResourceOption) (*SecurityGroupIngressRule, error)

GetSecurityGroupIngressRule gets an existing SecurityGroupIngressRule 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 NewSecurityGroupIngressRule

func NewSecurityGroupIngressRule(ctx *pulumi.Context,
	name string, args *SecurityGroupIngressRuleArgs, opts ...pulumi.ResourceOption) (*SecurityGroupIngressRule, error)

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

func (*SecurityGroupIngressRule) ElementType

func (*SecurityGroupIngressRule) ElementType() reflect.Type

func (*SecurityGroupIngressRule) ToSecurityGroupIngressRuleOutput

func (i *SecurityGroupIngressRule) ToSecurityGroupIngressRuleOutput() SecurityGroupIngressRuleOutput

func (*SecurityGroupIngressRule) ToSecurityGroupIngressRuleOutputWithContext

func (i *SecurityGroupIngressRule) ToSecurityGroupIngressRuleOutputWithContext(ctx context.Context) SecurityGroupIngressRuleOutput

type SecurityGroupIngressRuleArgs

type SecurityGroupIngressRuleArgs struct {
	// The source IPv4 CIDR range.
	CidrIpv4 pulumi.StringPtrInput
	// The source IPv6 CIDR range.
	CidrIpv6 pulumi.StringPtrInput
	// The security group rule description.
	Description pulumi.StringPtrInput
	// The start of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 type.
	FromPort pulumi.IntPtrInput
	// The IP protocol name or number. Use `-1` to specify all protocols. Note that if `ipProtocol` is set to `-1`, it translates to all protocols, all port ranges, and `fromPort` and `toPort` values should not be defined.
	IpProtocol pulumi.StringInput
	// The ID of the source prefix list.
	PrefixListId pulumi.StringPtrInput
	// The source security group that is referenced in the rule.
	ReferencedSecurityGroupId pulumi.StringPtrInput
	// The ID of the security group.
	SecurityGroupId pulumi.StringInput
	// A map of tags to assign to the resource. 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 end of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 code.
	ToPort pulumi.IntPtrInput
}

The set of arguments for constructing a SecurityGroupIngressRule resource.

func (SecurityGroupIngressRuleArgs) ElementType

type SecurityGroupIngressRuleArray

type SecurityGroupIngressRuleArray []SecurityGroupIngressRuleInput

func (SecurityGroupIngressRuleArray) ElementType

func (SecurityGroupIngressRuleArray) ToSecurityGroupIngressRuleArrayOutput

func (i SecurityGroupIngressRuleArray) ToSecurityGroupIngressRuleArrayOutput() SecurityGroupIngressRuleArrayOutput

func (SecurityGroupIngressRuleArray) ToSecurityGroupIngressRuleArrayOutputWithContext

func (i SecurityGroupIngressRuleArray) ToSecurityGroupIngressRuleArrayOutputWithContext(ctx context.Context) SecurityGroupIngressRuleArrayOutput

type SecurityGroupIngressRuleArrayInput

type SecurityGroupIngressRuleArrayInput interface {
	pulumi.Input

	ToSecurityGroupIngressRuleArrayOutput() SecurityGroupIngressRuleArrayOutput
	ToSecurityGroupIngressRuleArrayOutputWithContext(context.Context) SecurityGroupIngressRuleArrayOutput
}

SecurityGroupIngressRuleArrayInput is an input type that accepts SecurityGroupIngressRuleArray and SecurityGroupIngressRuleArrayOutput values. You can construct a concrete instance of `SecurityGroupIngressRuleArrayInput` via:

SecurityGroupIngressRuleArray{ SecurityGroupIngressRuleArgs{...} }

type SecurityGroupIngressRuleArrayOutput

type SecurityGroupIngressRuleArrayOutput struct{ *pulumi.OutputState }

func (SecurityGroupIngressRuleArrayOutput) ElementType

func (SecurityGroupIngressRuleArrayOutput) Index

func (SecurityGroupIngressRuleArrayOutput) ToSecurityGroupIngressRuleArrayOutput

func (o SecurityGroupIngressRuleArrayOutput) ToSecurityGroupIngressRuleArrayOutput() SecurityGroupIngressRuleArrayOutput

func (SecurityGroupIngressRuleArrayOutput) ToSecurityGroupIngressRuleArrayOutputWithContext

func (o SecurityGroupIngressRuleArrayOutput) ToSecurityGroupIngressRuleArrayOutputWithContext(ctx context.Context) SecurityGroupIngressRuleArrayOutput

type SecurityGroupIngressRuleInput

type SecurityGroupIngressRuleInput interface {
	pulumi.Input

	ToSecurityGroupIngressRuleOutput() SecurityGroupIngressRuleOutput
	ToSecurityGroupIngressRuleOutputWithContext(ctx context.Context) SecurityGroupIngressRuleOutput
}

type SecurityGroupIngressRuleMap

type SecurityGroupIngressRuleMap map[string]SecurityGroupIngressRuleInput

func (SecurityGroupIngressRuleMap) ElementType

func (SecurityGroupIngressRuleMap) ToSecurityGroupIngressRuleMapOutput

func (i SecurityGroupIngressRuleMap) ToSecurityGroupIngressRuleMapOutput() SecurityGroupIngressRuleMapOutput

func (SecurityGroupIngressRuleMap) ToSecurityGroupIngressRuleMapOutputWithContext

func (i SecurityGroupIngressRuleMap) ToSecurityGroupIngressRuleMapOutputWithContext(ctx context.Context) SecurityGroupIngressRuleMapOutput

type SecurityGroupIngressRuleMapInput

type SecurityGroupIngressRuleMapInput interface {
	pulumi.Input

	ToSecurityGroupIngressRuleMapOutput() SecurityGroupIngressRuleMapOutput
	ToSecurityGroupIngressRuleMapOutputWithContext(context.Context) SecurityGroupIngressRuleMapOutput
}

SecurityGroupIngressRuleMapInput is an input type that accepts SecurityGroupIngressRuleMap and SecurityGroupIngressRuleMapOutput values. You can construct a concrete instance of `SecurityGroupIngressRuleMapInput` via:

SecurityGroupIngressRuleMap{ "key": SecurityGroupIngressRuleArgs{...} }

type SecurityGroupIngressRuleMapOutput

type SecurityGroupIngressRuleMapOutput struct{ *pulumi.OutputState }

func (SecurityGroupIngressRuleMapOutput) ElementType

func (SecurityGroupIngressRuleMapOutput) MapIndex

func (SecurityGroupIngressRuleMapOutput) ToSecurityGroupIngressRuleMapOutput

func (o SecurityGroupIngressRuleMapOutput) ToSecurityGroupIngressRuleMapOutput() SecurityGroupIngressRuleMapOutput

func (SecurityGroupIngressRuleMapOutput) ToSecurityGroupIngressRuleMapOutputWithContext

func (o SecurityGroupIngressRuleMapOutput) ToSecurityGroupIngressRuleMapOutputWithContext(ctx context.Context) SecurityGroupIngressRuleMapOutput

type SecurityGroupIngressRuleOutput

type SecurityGroupIngressRuleOutput struct{ *pulumi.OutputState }

func (SecurityGroupIngressRuleOutput) Arn

The Amazon Resource Name (ARN) of the security group rule.

func (SecurityGroupIngressRuleOutput) CidrIpv4

The source IPv4 CIDR range.

func (SecurityGroupIngressRuleOutput) CidrIpv6

The source IPv6 CIDR range.

func (SecurityGroupIngressRuleOutput) Description

The security group rule description.

func (SecurityGroupIngressRuleOutput) ElementType

func (SecurityGroupIngressRuleOutput) FromPort

The start of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 type.

func (SecurityGroupIngressRuleOutput) IpProtocol

The IP protocol name or number. Use `-1` to specify all protocols. Note that if `ipProtocol` is set to `-1`, it translates to all protocols, all port ranges, and `fromPort` and `toPort` values should not be defined.

func (SecurityGroupIngressRuleOutput) PrefixListId

The ID of the source prefix list.

func (SecurityGroupIngressRuleOutput) ReferencedSecurityGroupId

func (o SecurityGroupIngressRuleOutput) ReferencedSecurityGroupId() pulumi.StringPtrOutput

The source security group that is referenced in the rule.

func (SecurityGroupIngressRuleOutput) SecurityGroupId

The ID of the security group.

func (SecurityGroupIngressRuleOutput) SecurityGroupRuleId

func (o SecurityGroupIngressRuleOutput) SecurityGroupRuleId() pulumi.StringOutput

The ID of the security group rule.

func (SecurityGroupIngressRuleOutput) Tags

A map of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.

func (SecurityGroupIngressRuleOutput) TagsAll deprecated

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

Deprecated: Please use `tags` instead.

func (SecurityGroupIngressRuleOutput) ToPort

The end of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 code.

func (SecurityGroupIngressRuleOutput) ToSecurityGroupIngressRuleOutput

func (o SecurityGroupIngressRuleOutput) ToSecurityGroupIngressRuleOutput() SecurityGroupIngressRuleOutput

func (SecurityGroupIngressRuleOutput) ToSecurityGroupIngressRuleOutputWithContext

func (o SecurityGroupIngressRuleOutput) ToSecurityGroupIngressRuleOutputWithContext(ctx context.Context) SecurityGroupIngressRuleOutput

type SecurityGroupIngressRuleState

type SecurityGroupIngressRuleState struct {
	// The Amazon Resource Name (ARN) of the security group rule.
	Arn pulumi.StringPtrInput
	// The source IPv4 CIDR range.
	CidrIpv4 pulumi.StringPtrInput
	// The source IPv6 CIDR range.
	CidrIpv6 pulumi.StringPtrInput
	// The security group rule description.
	Description pulumi.StringPtrInput
	// The start of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 type.
	FromPort pulumi.IntPtrInput
	// The IP protocol name or number. Use `-1` to specify all protocols. Note that if `ipProtocol` is set to `-1`, it translates to all protocols, all port ranges, and `fromPort` and `toPort` values should not be defined.
	IpProtocol pulumi.StringPtrInput
	// The ID of the source prefix list.
	PrefixListId pulumi.StringPtrInput
	// The source security group that is referenced in the rule.
	ReferencedSecurityGroupId pulumi.StringPtrInput
	// The ID of the security group.
	SecurityGroupId pulumi.StringPtrInput
	// The ID of the security group rule.
	SecurityGroupRuleId pulumi.StringPtrInput
	// A map of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	//
	// Deprecated: Please use `tags` instead.
	TagsAll pulumi.StringMapInput
	// The end of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 code.
	ToPort pulumi.IntPtrInput
}

func (SecurityGroupIngressRuleState) ElementType

type SecurityGroupVpcAssociation added in v6.60.0

type SecurityGroupVpcAssociation struct {
	pulumi.CustomResourceState

	// The ID of the security group.
	SecurityGroupId pulumi.StringOutput `pulumi:"securityGroupId"`
	// State of the VPC association. See the [AWS documentation](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_SecurityGroupVpcAssociation.html) for possible values.
	State    pulumi.StringOutput                          `pulumi:"state"`
	Timeouts SecurityGroupVpcAssociationTimeoutsPtrOutput `pulumi:"timeouts"`
	// The ID of the VPC to make the association with.
	VpcId pulumi.StringOutput `pulumi:"vpcId"`
}

Resource for managing Security Group VPC Associations.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/vpc"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := vpc.NewSecurityGroupVpcAssociation(ctx, "example", &vpc.SecurityGroupVpcAssociationArgs{
			SecurityGroupId: pulumi.String("sg-05f1f54ab49bb39a3"),
			VpcId:           pulumi.String("vpc-01df9d105095412ba"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Using `pulumi import`, import a Security Group VPC Association using the `security_group_id` and `vpc_id` arguments, separated by a comma (`,`). For example:

```sh $ pulumi import aws:vpc/securityGroupVpcAssociation:SecurityGroupVpcAssociation example sg-12345,vpc-67890 ```

func GetSecurityGroupVpcAssociation added in v6.60.0

func GetSecurityGroupVpcAssociation(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *SecurityGroupVpcAssociationState, opts ...pulumi.ResourceOption) (*SecurityGroupVpcAssociation, error)

GetSecurityGroupVpcAssociation gets an existing SecurityGroupVpcAssociation 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 NewSecurityGroupVpcAssociation added in v6.60.0

func NewSecurityGroupVpcAssociation(ctx *pulumi.Context,
	name string, args *SecurityGroupVpcAssociationArgs, opts ...pulumi.ResourceOption) (*SecurityGroupVpcAssociation, error)

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

func (*SecurityGroupVpcAssociation) ElementType added in v6.60.0

func (*SecurityGroupVpcAssociation) ElementType() reflect.Type

func (*SecurityGroupVpcAssociation) ToSecurityGroupVpcAssociationOutput added in v6.60.0

func (i *SecurityGroupVpcAssociation) ToSecurityGroupVpcAssociationOutput() SecurityGroupVpcAssociationOutput

func (*SecurityGroupVpcAssociation) ToSecurityGroupVpcAssociationOutputWithContext added in v6.60.0

func (i *SecurityGroupVpcAssociation) ToSecurityGroupVpcAssociationOutputWithContext(ctx context.Context) SecurityGroupVpcAssociationOutput

type SecurityGroupVpcAssociationArgs added in v6.60.0

type SecurityGroupVpcAssociationArgs struct {
	// The ID of the security group.
	SecurityGroupId pulumi.StringInput
	Timeouts        SecurityGroupVpcAssociationTimeoutsPtrInput
	// The ID of the VPC to make the association with.
	VpcId pulumi.StringInput
}

The set of arguments for constructing a SecurityGroupVpcAssociation resource.

func (SecurityGroupVpcAssociationArgs) ElementType added in v6.60.0

type SecurityGroupVpcAssociationArray added in v6.60.0

type SecurityGroupVpcAssociationArray []SecurityGroupVpcAssociationInput

func (SecurityGroupVpcAssociationArray) ElementType added in v6.60.0

func (SecurityGroupVpcAssociationArray) ToSecurityGroupVpcAssociationArrayOutput added in v6.60.0

func (i SecurityGroupVpcAssociationArray) ToSecurityGroupVpcAssociationArrayOutput() SecurityGroupVpcAssociationArrayOutput

func (SecurityGroupVpcAssociationArray) ToSecurityGroupVpcAssociationArrayOutputWithContext added in v6.60.0

func (i SecurityGroupVpcAssociationArray) ToSecurityGroupVpcAssociationArrayOutputWithContext(ctx context.Context) SecurityGroupVpcAssociationArrayOutput

type SecurityGroupVpcAssociationArrayInput added in v6.60.0

type SecurityGroupVpcAssociationArrayInput interface {
	pulumi.Input

	ToSecurityGroupVpcAssociationArrayOutput() SecurityGroupVpcAssociationArrayOutput
	ToSecurityGroupVpcAssociationArrayOutputWithContext(context.Context) SecurityGroupVpcAssociationArrayOutput
}

SecurityGroupVpcAssociationArrayInput is an input type that accepts SecurityGroupVpcAssociationArray and SecurityGroupVpcAssociationArrayOutput values. You can construct a concrete instance of `SecurityGroupVpcAssociationArrayInput` via:

SecurityGroupVpcAssociationArray{ SecurityGroupVpcAssociationArgs{...} }

type SecurityGroupVpcAssociationArrayOutput added in v6.60.0

type SecurityGroupVpcAssociationArrayOutput struct{ *pulumi.OutputState }

func (SecurityGroupVpcAssociationArrayOutput) ElementType added in v6.60.0

func (SecurityGroupVpcAssociationArrayOutput) Index added in v6.60.0

func (SecurityGroupVpcAssociationArrayOutput) ToSecurityGroupVpcAssociationArrayOutput added in v6.60.0

func (o SecurityGroupVpcAssociationArrayOutput) ToSecurityGroupVpcAssociationArrayOutput() SecurityGroupVpcAssociationArrayOutput

func (SecurityGroupVpcAssociationArrayOutput) ToSecurityGroupVpcAssociationArrayOutputWithContext added in v6.60.0

func (o SecurityGroupVpcAssociationArrayOutput) ToSecurityGroupVpcAssociationArrayOutputWithContext(ctx context.Context) SecurityGroupVpcAssociationArrayOutput

type SecurityGroupVpcAssociationInput added in v6.60.0

type SecurityGroupVpcAssociationInput interface {
	pulumi.Input

	ToSecurityGroupVpcAssociationOutput() SecurityGroupVpcAssociationOutput
	ToSecurityGroupVpcAssociationOutputWithContext(ctx context.Context) SecurityGroupVpcAssociationOutput
}

type SecurityGroupVpcAssociationMap added in v6.60.0

type SecurityGroupVpcAssociationMap map[string]SecurityGroupVpcAssociationInput

func (SecurityGroupVpcAssociationMap) ElementType added in v6.60.0

func (SecurityGroupVpcAssociationMap) ToSecurityGroupVpcAssociationMapOutput added in v6.60.0

func (i SecurityGroupVpcAssociationMap) ToSecurityGroupVpcAssociationMapOutput() SecurityGroupVpcAssociationMapOutput

func (SecurityGroupVpcAssociationMap) ToSecurityGroupVpcAssociationMapOutputWithContext added in v6.60.0

func (i SecurityGroupVpcAssociationMap) ToSecurityGroupVpcAssociationMapOutputWithContext(ctx context.Context) SecurityGroupVpcAssociationMapOutput

type SecurityGroupVpcAssociationMapInput added in v6.60.0

type SecurityGroupVpcAssociationMapInput interface {
	pulumi.Input

	ToSecurityGroupVpcAssociationMapOutput() SecurityGroupVpcAssociationMapOutput
	ToSecurityGroupVpcAssociationMapOutputWithContext(context.Context) SecurityGroupVpcAssociationMapOutput
}

SecurityGroupVpcAssociationMapInput is an input type that accepts SecurityGroupVpcAssociationMap and SecurityGroupVpcAssociationMapOutput values. You can construct a concrete instance of `SecurityGroupVpcAssociationMapInput` via:

SecurityGroupVpcAssociationMap{ "key": SecurityGroupVpcAssociationArgs{...} }

type SecurityGroupVpcAssociationMapOutput added in v6.60.0

type SecurityGroupVpcAssociationMapOutput struct{ *pulumi.OutputState }

func (SecurityGroupVpcAssociationMapOutput) ElementType added in v6.60.0

func (SecurityGroupVpcAssociationMapOutput) MapIndex added in v6.60.0

func (SecurityGroupVpcAssociationMapOutput) ToSecurityGroupVpcAssociationMapOutput added in v6.60.0

func (o SecurityGroupVpcAssociationMapOutput) ToSecurityGroupVpcAssociationMapOutput() SecurityGroupVpcAssociationMapOutput

func (SecurityGroupVpcAssociationMapOutput) ToSecurityGroupVpcAssociationMapOutputWithContext added in v6.60.0

func (o SecurityGroupVpcAssociationMapOutput) ToSecurityGroupVpcAssociationMapOutputWithContext(ctx context.Context) SecurityGroupVpcAssociationMapOutput

type SecurityGroupVpcAssociationOutput added in v6.60.0

type SecurityGroupVpcAssociationOutput struct{ *pulumi.OutputState }

func (SecurityGroupVpcAssociationOutput) ElementType added in v6.60.0

func (SecurityGroupVpcAssociationOutput) SecurityGroupId added in v6.60.0

The ID of the security group.

func (SecurityGroupVpcAssociationOutput) State added in v6.60.0

State of the VPC association. See the [AWS documentation](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_SecurityGroupVpcAssociation.html) for possible values.

func (SecurityGroupVpcAssociationOutput) Timeouts added in v6.60.0

func (SecurityGroupVpcAssociationOutput) ToSecurityGroupVpcAssociationOutput added in v6.60.0

func (o SecurityGroupVpcAssociationOutput) ToSecurityGroupVpcAssociationOutput() SecurityGroupVpcAssociationOutput

func (SecurityGroupVpcAssociationOutput) ToSecurityGroupVpcAssociationOutputWithContext added in v6.60.0

func (o SecurityGroupVpcAssociationOutput) ToSecurityGroupVpcAssociationOutputWithContext(ctx context.Context) SecurityGroupVpcAssociationOutput

func (SecurityGroupVpcAssociationOutput) VpcId added in v6.60.0

The ID of the VPC to make the association with.

type SecurityGroupVpcAssociationState added in v6.60.0

type SecurityGroupVpcAssociationState struct {
	// The ID of the security group.
	SecurityGroupId pulumi.StringPtrInput
	// State of the VPC association. See the [AWS documentation](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_SecurityGroupVpcAssociation.html) for possible values.
	State    pulumi.StringPtrInput
	Timeouts SecurityGroupVpcAssociationTimeoutsPtrInput
	// The ID of the VPC to make the association with.
	VpcId pulumi.StringPtrInput
}

func (SecurityGroupVpcAssociationState) ElementType added in v6.60.0

type SecurityGroupVpcAssociationTimeouts added in v6.60.0

type SecurityGroupVpcAssociationTimeouts 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"`
}

type SecurityGroupVpcAssociationTimeoutsArgs added in v6.60.0

type SecurityGroupVpcAssociationTimeoutsArgs 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"`
}

func (SecurityGroupVpcAssociationTimeoutsArgs) ElementType added in v6.60.0

func (SecurityGroupVpcAssociationTimeoutsArgs) ToSecurityGroupVpcAssociationTimeoutsOutput added in v6.60.0

func (i SecurityGroupVpcAssociationTimeoutsArgs) ToSecurityGroupVpcAssociationTimeoutsOutput() SecurityGroupVpcAssociationTimeoutsOutput

func (SecurityGroupVpcAssociationTimeoutsArgs) ToSecurityGroupVpcAssociationTimeoutsOutputWithContext added in v6.60.0

func (i SecurityGroupVpcAssociationTimeoutsArgs) ToSecurityGroupVpcAssociationTimeoutsOutputWithContext(ctx context.Context) SecurityGroupVpcAssociationTimeoutsOutput

func (SecurityGroupVpcAssociationTimeoutsArgs) ToSecurityGroupVpcAssociationTimeoutsPtrOutput added in v6.60.0

func (i SecurityGroupVpcAssociationTimeoutsArgs) ToSecurityGroupVpcAssociationTimeoutsPtrOutput() SecurityGroupVpcAssociationTimeoutsPtrOutput

func (SecurityGroupVpcAssociationTimeoutsArgs) ToSecurityGroupVpcAssociationTimeoutsPtrOutputWithContext added in v6.60.0

func (i SecurityGroupVpcAssociationTimeoutsArgs) ToSecurityGroupVpcAssociationTimeoutsPtrOutputWithContext(ctx context.Context) SecurityGroupVpcAssociationTimeoutsPtrOutput

type SecurityGroupVpcAssociationTimeoutsInput added in v6.60.0

type SecurityGroupVpcAssociationTimeoutsInput interface {
	pulumi.Input

	ToSecurityGroupVpcAssociationTimeoutsOutput() SecurityGroupVpcAssociationTimeoutsOutput
	ToSecurityGroupVpcAssociationTimeoutsOutputWithContext(context.Context) SecurityGroupVpcAssociationTimeoutsOutput
}

SecurityGroupVpcAssociationTimeoutsInput is an input type that accepts SecurityGroupVpcAssociationTimeoutsArgs and SecurityGroupVpcAssociationTimeoutsOutput values. You can construct a concrete instance of `SecurityGroupVpcAssociationTimeoutsInput` via:

SecurityGroupVpcAssociationTimeoutsArgs{...}

type SecurityGroupVpcAssociationTimeoutsOutput added in v6.60.0

type SecurityGroupVpcAssociationTimeoutsOutput struct{ *pulumi.OutputState }

func (SecurityGroupVpcAssociationTimeoutsOutput) Create added in v6.60.0

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 (SecurityGroupVpcAssociationTimeoutsOutput) Delete added in v6.60.0

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 (SecurityGroupVpcAssociationTimeoutsOutput) ElementType added in v6.60.0

func (SecurityGroupVpcAssociationTimeoutsOutput) ToSecurityGroupVpcAssociationTimeoutsOutput added in v6.60.0

func (o SecurityGroupVpcAssociationTimeoutsOutput) ToSecurityGroupVpcAssociationTimeoutsOutput() SecurityGroupVpcAssociationTimeoutsOutput

func (SecurityGroupVpcAssociationTimeoutsOutput) ToSecurityGroupVpcAssociationTimeoutsOutputWithContext added in v6.60.0

func (o SecurityGroupVpcAssociationTimeoutsOutput) ToSecurityGroupVpcAssociationTimeoutsOutputWithContext(ctx context.Context) SecurityGroupVpcAssociationTimeoutsOutput

func (SecurityGroupVpcAssociationTimeoutsOutput) ToSecurityGroupVpcAssociationTimeoutsPtrOutput added in v6.60.0

func (o SecurityGroupVpcAssociationTimeoutsOutput) ToSecurityGroupVpcAssociationTimeoutsPtrOutput() SecurityGroupVpcAssociationTimeoutsPtrOutput

func (SecurityGroupVpcAssociationTimeoutsOutput) ToSecurityGroupVpcAssociationTimeoutsPtrOutputWithContext added in v6.60.0

func (o SecurityGroupVpcAssociationTimeoutsOutput) ToSecurityGroupVpcAssociationTimeoutsPtrOutputWithContext(ctx context.Context) SecurityGroupVpcAssociationTimeoutsPtrOutput

type SecurityGroupVpcAssociationTimeoutsPtrInput added in v6.60.0

type SecurityGroupVpcAssociationTimeoutsPtrInput interface {
	pulumi.Input

	ToSecurityGroupVpcAssociationTimeoutsPtrOutput() SecurityGroupVpcAssociationTimeoutsPtrOutput
	ToSecurityGroupVpcAssociationTimeoutsPtrOutputWithContext(context.Context) SecurityGroupVpcAssociationTimeoutsPtrOutput
}

SecurityGroupVpcAssociationTimeoutsPtrInput is an input type that accepts SecurityGroupVpcAssociationTimeoutsArgs, SecurityGroupVpcAssociationTimeoutsPtr and SecurityGroupVpcAssociationTimeoutsPtrOutput values. You can construct a concrete instance of `SecurityGroupVpcAssociationTimeoutsPtrInput` via:

        SecurityGroupVpcAssociationTimeoutsArgs{...}

or:

        nil

type SecurityGroupVpcAssociationTimeoutsPtrOutput added in v6.60.0

type SecurityGroupVpcAssociationTimeoutsPtrOutput struct{ *pulumi.OutputState }

func (SecurityGroupVpcAssociationTimeoutsPtrOutput) Create added in v6.60.0

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 (SecurityGroupVpcAssociationTimeoutsPtrOutput) Delete added in v6.60.0

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 (SecurityGroupVpcAssociationTimeoutsPtrOutput) Elem added in v6.60.0

func (SecurityGroupVpcAssociationTimeoutsPtrOutput) ElementType added in v6.60.0

func (SecurityGroupVpcAssociationTimeoutsPtrOutput) ToSecurityGroupVpcAssociationTimeoutsPtrOutput added in v6.60.0

func (o SecurityGroupVpcAssociationTimeoutsPtrOutput) ToSecurityGroupVpcAssociationTimeoutsPtrOutput() SecurityGroupVpcAssociationTimeoutsPtrOutput

func (SecurityGroupVpcAssociationTimeoutsPtrOutput) ToSecurityGroupVpcAssociationTimeoutsPtrOutputWithContext added in v6.60.0

func (o SecurityGroupVpcAssociationTimeoutsPtrOutput) ToSecurityGroupVpcAssociationTimeoutsPtrOutputWithContext(ctx context.Context) SecurityGroupVpcAssociationTimeoutsPtrOutput

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL