vpc

package
v2.35.1 Latest Latest
Warning

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

Go to latest
Published: Feb 16, 2021 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 CommonBandwithPackage

type CommonBandwithPackage struct {
	pulumi.CustomResourceState

	// The bandwidth of the common bandwidth package, in Mbps.
	Bandwidth pulumi.IntOutput `pulumi:"bandwidth"`
	// The description of the common bandwidth package instance.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// The billing method of the common bandwidth package. Valid values are "PayByBandwidth" and "PayBy95" and "PayByTraffic". "PayBy95" is pay by classic 95th percentile pricing. International Account doesn't supports "PayByBandwidth" and "PayBy95". Default to "PayByTraffic".
	InternetChargeType pulumi.StringPtrOutput `pulumi:"internetChargeType"`
	// The type of the Internet Service Provider. Default to `BGP`.
	Isp pulumi.StringPtrOutput `pulumi:"isp"`
	// The name of the common bandwidth package.
	Name pulumi.StringOutput `pulumi:"name"`
	// Ratio of the common bandwidth package. It is valid when `internetChargeType` is `PayBy95`. Default to 100. Valid values: [10-100].
	Ratio pulumi.IntPtrOutput `pulumi:"ratio"`
	// The Id of resource group which the common bandwidth package belongs.
	ResourceGroupId pulumi.StringOutput `pulumi:"resourceGroupId"`
}

## Import

The common bandwidth package can be imported using the id, e.g.

```sh

$ pulumi import alicloud:vpc/commonBandwithPackage:CommonBandwithPackage foo cbwp-abc123456

```

func GetCommonBandwithPackage

func GetCommonBandwithPackage(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *CommonBandwithPackageState, opts ...pulumi.ResourceOption) (*CommonBandwithPackage, error)

GetCommonBandwithPackage gets an existing CommonBandwithPackage 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 NewCommonBandwithPackage

func NewCommonBandwithPackage(ctx *pulumi.Context,
	name string, args *CommonBandwithPackageArgs, opts ...pulumi.ResourceOption) (*CommonBandwithPackage, error)

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

func (*CommonBandwithPackage) ElementType added in v2.25.1

func (*CommonBandwithPackage) ElementType() reflect.Type

func (*CommonBandwithPackage) ToCommonBandwithPackageOutput added in v2.25.1

func (i *CommonBandwithPackage) ToCommonBandwithPackageOutput() CommonBandwithPackageOutput

func (*CommonBandwithPackage) ToCommonBandwithPackageOutputWithContext added in v2.25.1

func (i *CommonBandwithPackage) ToCommonBandwithPackageOutputWithContext(ctx context.Context) CommonBandwithPackageOutput

func (*CommonBandwithPackage) ToCommonBandwithPackagePtrOutput added in v2.35.1

func (i *CommonBandwithPackage) ToCommonBandwithPackagePtrOutput() CommonBandwithPackagePtrOutput

func (*CommonBandwithPackage) ToCommonBandwithPackagePtrOutputWithContext added in v2.35.1

func (i *CommonBandwithPackage) ToCommonBandwithPackagePtrOutputWithContext(ctx context.Context) CommonBandwithPackagePtrOutput

type CommonBandwithPackageArgs

type CommonBandwithPackageArgs struct {
	// The bandwidth of the common bandwidth package, in Mbps.
	Bandwidth pulumi.IntInput
	// The description of the common bandwidth package instance.
	Description pulumi.StringPtrInput
	// The billing method of the common bandwidth package. Valid values are "PayByBandwidth" and "PayBy95" and "PayByTraffic". "PayBy95" is pay by classic 95th percentile pricing. International Account doesn't supports "PayByBandwidth" and "PayBy95". Default to "PayByTraffic".
	InternetChargeType pulumi.StringPtrInput
	// The type of the Internet Service Provider. Default to `BGP`.
	Isp pulumi.StringPtrInput
	// The name of the common bandwidth package.
	Name pulumi.StringPtrInput
	// Ratio of the common bandwidth package. It is valid when `internetChargeType` is `PayBy95`. Default to 100. Valid values: [10-100].
	Ratio pulumi.IntPtrInput
	// The Id of resource group which the common bandwidth package belongs.
	ResourceGroupId pulumi.StringPtrInput
}

The set of arguments for constructing a CommonBandwithPackage resource.

func (CommonBandwithPackageArgs) ElementType

func (CommonBandwithPackageArgs) ElementType() reflect.Type

type CommonBandwithPackageArray added in v2.35.1

type CommonBandwithPackageArray []CommonBandwithPackageInput

func (CommonBandwithPackageArray) ElementType added in v2.35.1

func (CommonBandwithPackageArray) ElementType() reflect.Type

func (CommonBandwithPackageArray) ToCommonBandwithPackageArrayOutput added in v2.35.1

func (i CommonBandwithPackageArray) ToCommonBandwithPackageArrayOutput() CommonBandwithPackageArrayOutput

func (CommonBandwithPackageArray) ToCommonBandwithPackageArrayOutputWithContext added in v2.35.1

func (i CommonBandwithPackageArray) ToCommonBandwithPackageArrayOutputWithContext(ctx context.Context) CommonBandwithPackageArrayOutput

type CommonBandwithPackageArrayInput added in v2.35.1

type CommonBandwithPackageArrayInput interface {
	pulumi.Input

	ToCommonBandwithPackageArrayOutput() CommonBandwithPackageArrayOutput
	ToCommonBandwithPackageArrayOutputWithContext(context.Context) CommonBandwithPackageArrayOutput
}

CommonBandwithPackageArrayInput is an input type that accepts CommonBandwithPackageArray and CommonBandwithPackageArrayOutput values. You can construct a concrete instance of `CommonBandwithPackageArrayInput` via:

CommonBandwithPackageArray{ CommonBandwithPackageArgs{...} }

type CommonBandwithPackageArrayOutput added in v2.35.1

type CommonBandwithPackageArrayOutput struct{ *pulumi.OutputState }

func (CommonBandwithPackageArrayOutput) ElementType added in v2.35.1

func (CommonBandwithPackageArrayOutput) Index added in v2.35.1

func (CommonBandwithPackageArrayOutput) ToCommonBandwithPackageArrayOutput added in v2.35.1

func (o CommonBandwithPackageArrayOutput) ToCommonBandwithPackageArrayOutput() CommonBandwithPackageArrayOutput

func (CommonBandwithPackageArrayOutput) ToCommonBandwithPackageArrayOutputWithContext added in v2.35.1

func (o CommonBandwithPackageArrayOutput) ToCommonBandwithPackageArrayOutputWithContext(ctx context.Context) CommonBandwithPackageArrayOutput

type CommonBandwithPackageAttachment

type CommonBandwithPackageAttachment struct {
	pulumi.CustomResourceState

	// The bandwidthPackageId of the common bandwidth package attachment, the field can't be changed.
	BandwidthPackageId pulumi.StringOutput `pulumi:"bandwidthPackageId"`
	// The instanceId of the common bandwidth package attachment, the field can't be changed.
	InstanceId pulumi.StringOutput `pulumi:"instanceId"`
}

## Import

The common bandwidth package attachemnt can be imported using the id, e.g.

```sh

$ pulumi import alicloud:vpc/commonBandwithPackageAttachment:CommonBandwithPackageAttachment foo cbwp-abc123456:eip-abc123456

```

func GetCommonBandwithPackageAttachment

func GetCommonBandwithPackageAttachment(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *CommonBandwithPackageAttachmentState, opts ...pulumi.ResourceOption) (*CommonBandwithPackageAttachment, error)

GetCommonBandwithPackageAttachment gets an existing CommonBandwithPackageAttachment 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 NewCommonBandwithPackageAttachment

func NewCommonBandwithPackageAttachment(ctx *pulumi.Context,
	name string, args *CommonBandwithPackageAttachmentArgs, opts ...pulumi.ResourceOption) (*CommonBandwithPackageAttachment, error)

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

func (*CommonBandwithPackageAttachment) ElementType added in v2.25.1

func (*CommonBandwithPackageAttachment) ToCommonBandwithPackageAttachmentOutput added in v2.25.1

func (i *CommonBandwithPackageAttachment) ToCommonBandwithPackageAttachmentOutput() CommonBandwithPackageAttachmentOutput

func (*CommonBandwithPackageAttachment) ToCommonBandwithPackageAttachmentOutputWithContext added in v2.25.1

func (i *CommonBandwithPackageAttachment) ToCommonBandwithPackageAttachmentOutputWithContext(ctx context.Context) CommonBandwithPackageAttachmentOutput

func (*CommonBandwithPackageAttachment) ToCommonBandwithPackageAttachmentPtrOutput added in v2.35.1

func (i *CommonBandwithPackageAttachment) ToCommonBandwithPackageAttachmentPtrOutput() CommonBandwithPackageAttachmentPtrOutput

func (*CommonBandwithPackageAttachment) ToCommonBandwithPackageAttachmentPtrOutputWithContext added in v2.35.1

func (i *CommonBandwithPackageAttachment) ToCommonBandwithPackageAttachmentPtrOutputWithContext(ctx context.Context) CommonBandwithPackageAttachmentPtrOutput

type CommonBandwithPackageAttachmentArgs

type CommonBandwithPackageAttachmentArgs struct {
	// The bandwidthPackageId of the common bandwidth package attachment, the field can't be changed.
	BandwidthPackageId pulumi.StringInput
	// The instanceId of the common bandwidth package attachment, the field can't be changed.
	InstanceId pulumi.StringInput
}

The set of arguments for constructing a CommonBandwithPackageAttachment resource.

func (CommonBandwithPackageAttachmentArgs) ElementType

type CommonBandwithPackageAttachmentArray added in v2.35.1

type CommonBandwithPackageAttachmentArray []CommonBandwithPackageAttachmentInput

func (CommonBandwithPackageAttachmentArray) ElementType added in v2.35.1

func (CommonBandwithPackageAttachmentArray) ToCommonBandwithPackageAttachmentArrayOutput added in v2.35.1

func (i CommonBandwithPackageAttachmentArray) ToCommonBandwithPackageAttachmentArrayOutput() CommonBandwithPackageAttachmentArrayOutput

func (CommonBandwithPackageAttachmentArray) ToCommonBandwithPackageAttachmentArrayOutputWithContext added in v2.35.1

func (i CommonBandwithPackageAttachmentArray) ToCommonBandwithPackageAttachmentArrayOutputWithContext(ctx context.Context) CommonBandwithPackageAttachmentArrayOutput

type CommonBandwithPackageAttachmentArrayInput added in v2.35.1

type CommonBandwithPackageAttachmentArrayInput interface {
	pulumi.Input

	ToCommonBandwithPackageAttachmentArrayOutput() CommonBandwithPackageAttachmentArrayOutput
	ToCommonBandwithPackageAttachmentArrayOutputWithContext(context.Context) CommonBandwithPackageAttachmentArrayOutput
}

CommonBandwithPackageAttachmentArrayInput is an input type that accepts CommonBandwithPackageAttachmentArray and CommonBandwithPackageAttachmentArrayOutput values. You can construct a concrete instance of `CommonBandwithPackageAttachmentArrayInput` via:

CommonBandwithPackageAttachmentArray{ CommonBandwithPackageAttachmentArgs{...} }

type CommonBandwithPackageAttachmentArrayOutput added in v2.35.1

type CommonBandwithPackageAttachmentArrayOutput struct{ *pulumi.OutputState }

func (CommonBandwithPackageAttachmentArrayOutput) ElementType added in v2.35.1

func (CommonBandwithPackageAttachmentArrayOutput) Index added in v2.35.1

func (CommonBandwithPackageAttachmentArrayOutput) ToCommonBandwithPackageAttachmentArrayOutput added in v2.35.1

func (o CommonBandwithPackageAttachmentArrayOutput) ToCommonBandwithPackageAttachmentArrayOutput() CommonBandwithPackageAttachmentArrayOutput

func (CommonBandwithPackageAttachmentArrayOutput) ToCommonBandwithPackageAttachmentArrayOutputWithContext added in v2.35.1

func (o CommonBandwithPackageAttachmentArrayOutput) ToCommonBandwithPackageAttachmentArrayOutputWithContext(ctx context.Context) CommonBandwithPackageAttachmentArrayOutput

type CommonBandwithPackageAttachmentInput added in v2.25.1

type CommonBandwithPackageAttachmentInput interface {
	pulumi.Input

	ToCommonBandwithPackageAttachmentOutput() CommonBandwithPackageAttachmentOutput
	ToCommonBandwithPackageAttachmentOutputWithContext(ctx context.Context) CommonBandwithPackageAttachmentOutput
}

type CommonBandwithPackageAttachmentMap added in v2.35.1

type CommonBandwithPackageAttachmentMap map[string]CommonBandwithPackageAttachmentInput

func (CommonBandwithPackageAttachmentMap) ElementType added in v2.35.1

func (CommonBandwithPackageAttachmentMap) ToCommonBandwithPackageAttachmentMapOutput added in v2.35.1

func (i CommonBandwithPackageAttachmentMap) ToCommonBandwithPackageAttachmentMapOutput() CommonBandwithPackageAttachmentMapOutput

func (CommonBandwithPackageAttachmentMap) ToCommonBandwithPackageAttachmentMapOutputWithContext added in v2.35.1

func (i CommonBandwithPackageAttachmentMap) ToCommonBandwithPackageAttachmentMapOutputWithContext(ctx context.Context) CommonBandwithPackageAttachmentMapOutput

type CommonBandwithPackageAttachmentMapInput added in v2.35.1

type CommonBandwithPackageAttachmentMapInput interface {
	pulumi.Input

	ToCommonBandwithPackageAttachmentMapOutput() CommonBandwithPackageAttachmentMapOutput
	ToCommonBandwithPackageAttachmentMapOutputWithContext(context.Context) CommonBandwithPackageAttachmentMapOutput
}

CommonBandwithPackageAttachmentMapInput is an input type that accepts CommonBandwithPackageAttachmentMap and CommonBandwithPackageAttachmentMapOutput values. You can construct a concrete instance of `CommonBandwithPackageAttachmentMapInput` via:

CommonBandwithPackageAttachmentMap{ "key": CommonBandwithPackageAttachmentArgs{...} }

type CommonBandwithPackageAttachmentMapOutput added in v2.35.1

type CommonBandwithPackageAttachmentMapOutput struct{ *pulumi.OutputState }

func (CommonBandwithPackageAttachmentMapOutput) ElementType added in v2.35.1

func (CommonBandwithPackageAttachmentMapOutput) MapIndex added in v2.35.1

func (CommonBandwithPackageAttachmentMapOutput) ToCommonBandwithPackageAttachmentMapOutput added in v2.35.1

func (o CommonBandwithPackageAttachmentMapOutput) ToCommonBandwithPackageAttachmentMapOutput() CommonBandwithPackageAttachmentMapOutput

func (CommonBandwithPackageAttachmentMapOutput) ToCommonBandwithPackageAttachmentMapOutputWithContext added in v2.35.1

func (o CommonBandwithPackageAttachmentMapOutput) ToCommonBandwithPackageAttachmentMapOutputWithContext(ctx context.Context) CommonBandwithPackageAttachmentMapOutput

type CommonBandwithPackageAttachmentOutput added in v2.25.1

type CommonBandwithPackageAttachmentOutput struct {
	*pulumi.OutputState
}

func (CommonBandwithPackageAttachmentOutput) ElementType added in v2.25.1

func (CommonBandwithPackageAttachmentOutput) ToCommonBandwithPackageAttachmentOutput added in v2.25.1

func (o CommonBandwithPackageAttachmentOutput) ToCommonBandwithPackageAttachmentOutput() CommonBandwithPackageAttachmentOutput

func (CommonBandwithPackageAttachmentOutput) ToCommonBandwithPackageAttachmentOutputWithContext added in v2.25.1

func (o CommonBandwithPackageAttachmentOutput) ToCommonBandwithPackageAttachmentOutputWithContext(ctx context.Context) CommonBandwithPackageAttachmentOutput

func (CommonBandwithPackageAttachmentOutput) ToCommonBandwithPackageAttachmentPtrOutput added in v2.35.1

func (o CommonBandwithPackageAttachmentOutput) ToCommonBandwithPackageAttachmentPtrOutput() CommonBandwithPackageAttachmentPtrOutput

func (CommonBandwithPackageAttachmentOutput) ToCommonBandwithPackageAttachmentPtrOutputWithContext added in v2.35.1

func (o CommonBandwithPackageAttachmentOutput) ToCommonBandwithPackageAttachmentPtrOutputWithContext(ctx context.Context) CommonBandwithPackageAttachmentPtrOutput

type CommonBandwithPackageAttachmentPtrInput added in v2.35.1

type CommonBandwithPackageAttachmentPtrInput interface {
	pulumi.Input

	ToCommonBandwithPackageAttachmentPtrOutput() CommonBandwithPackageAttachmentPtrOutput
	ToCommonBandwithPackageAttachmentPtrOutputWithContext(ctx context.Context) CommonBandwithPackageAttachmentPtrOutput
}

type CommonBandwithPackageAttachmentPtrOutput added in v2.35.1

type CommonBandwithPackageAttachmentPtrOutput struct {
	*pulumi.OutputState
}

func (CommonBandwithPackageAttachmentPtrOutput) ElementType added in v2.35.1

func (CommonBandwithPackageAttachmentPtrOutput) ToCommonBandwithPackageAttachmentPtrOutput added in v2.35.1

func (o CommonBandwithPackageAttachmentPtrOutput) ToCommonBandwithPackageAttachmentPtrOutput() CommonBandwithPackageAttachmentPtrOutput

func (CommonBandwithPackageAttachmentPtrOutput) ToCommonBandwithPackageAttachmentPtrOutputWithContext added in v2.35.1

func (o CommonBandwithPackageAttachmentPtrOutput) ToCommonBandwithPackageAttachmentPtrOutputWithContext(ctx context.Context) CommonBandwithPackageAttachmentPtrOutput

type CommonBandwithPackageAttachmentState

type CommonBandwithPackageAttachmentState struct {
	// The bandwidthPackageId of the common bandwidth package attachment, the field can't be changed.
	BandwidthPackageId pulumi.StringPtrInput
	// The instanceId of the common bandwidth package attachment, the field can't be changed.
	InstanceId pulumi.StringPtrInput
}

func (CommonBandwithPackageAttachmentState) ElementType

type CommonBandwithPackageInput added in v2.25.1

type CommonBandwithPackageInput interface {
	pulumi.Input

	ToCommonBandwithPackageOutput() CommonBandwithPackageOutput
	ToCommonBandwithPackageOutputWithContext(ctx context.Context) CommonBandwithPackageOutput
}

type CommonBandwithPackageMap added in v2.35.1

type CommonBandwithPackageMap map[string]CommonBandwithPackageInput

func (CommonBandwithPackageMap) ElementType added in v2.35.1

func (CommonBandwithPackageMap) ElementType() reflect.Type

func (CommonBandwithPackageMap) ToCommonBandwithPackageMapOutput added in v2.35.1

func (i CommonBandwithPackageMap) ToCommonBandwithPackageMapOutput() CommonBandwithPackageMapOutput

func (CommonBandwithPackageMap) ToCommonBandwithPackageMapOutputWithContext added in v2.35.1

func (i CommonBandwithPackageMap) ToCommonBandwithPackageMapOutputWithContext(ctx context.Context) CommonBandwithPackageMapOutput

type CommonBandwithPackageMapInput added in v2.35.1

type CommonBandwithPackageMapInput interface {
	pulumi.Input

	ToCommonBandwithPackageMapOutput() CommonBandwithPackageMapOutput
	ToCommonBandwithPackageMapOutputWithContext(context.Context) CommonBandwithPackageMapOutput
}

CommonBandwithPackageMapInput is an input type that accepts CommonBandwithPackageMap and CommonBandwithPackageMapOutput values. You can construct a concrete instance of `CommonBandwithPackageMapInput` via:

CommonBandwithPackageMap{ "key": CommonBandwithPackageArgs{...} }

type CommonBandwithPackageMapOutput added in v2.35.1

type CommonBandwithPackageMapOutput struct{ *pulumi.OutputState }

func (CommonBandwithPackageMapOutput) ElementType added in v2.35.1

func (CommonBandwithPackageMapOutput) MapIndex added in v2.35.1

func (CommonBandwithPackageMapOutput) ToCommonBandwithPackageMapOutput added in v2.35.1

func (o CommonBandwithPackageMapOutput) ToCommonBandwithPackageMapOutput() CommonBandwithPackageMapOutput

func (CommonBandwithPackageMapOutput) ToCommonBandwithPackageMapOutputWithContext added in v2.35.1

func (o CommonBandwithPackageMapOutput) ToCommonBandwithPackageMapOutputWithContext(ctx context.Context) CommonBandwithPackageMapOutput

type CommonBandwithPackageOutput added in v2.25.1

type CommonBandwithPackageOutput struct {
	*pulumi.OutputState
}

func (CommonBandwithPackageOutput) ElementType added in v2.25.1

func (CommonBandwithPackageOutput) ToCommonBandwithPackageOutput added in v2.25.1

func (o CommonBandwithPackageOutput) ToCommonBandwithPackageOutput() CommonBandwithPackageOutput

func (CommonBandwithPackageOutput) ToCommonBandwithPackageOutputWithContext added in v2.25.1

func (o CommonBandwithPackageOutput) ToCommonBandwithPackageOutputWithContext(ctx context.Context) CommonBandwithPackageOutput

func (CommonBandwithPackageOutput) ToCommonBandwithPackagePtrOutput added in v2.35.1

func (o CommonBandwithPackageOutput) ToCommonBandwithPackagePtrOutput() CommonBandwithPackagePtrOutput

func (CommonBandwithPackageOutput) ToCommonBandwithPackagePtrOutputWithContext added in v2.35.1

func (o CommonBandwithPackageOutput) ToCommonBandwithPackagePtrOutputWithContext(ctx context.Context) CommonBandwithPackagePtrOutput

type CommonBandwithPackagePtrInput added in v2.35.1

type CommonBandwithPackagePtrInput interface {
	pulumi.Input

	ToCommonBandwithPackagePtrOutput() CommonBandwithPackagePtrOutput
	ToCommonBandwithPackagePtrOutputWithContext(ctx context.Context) CommonBandwithPackagePtrOutput
}

type CommonBandwithPackagePtrOutput added in v2.35.1

type CommonBandwithPackagePtrOutput struct {
	*pulumi.OutputState
}

func (CommonBandwithPackagePtrOutput) ElementType added in v2.35.1

func (CommonBandwithPackagePtrOutput) ToCommonBandwithPackagePtrOutput added in v2.35.1

func (o CommonBandwithPackagePtrOutput) ToCommonBandwithPackagePtrOutput() CommonBandwithPackagePtrOutput

func (CommonBandwithPackagePtrOutput) ToCommonBandwithPackagePtrOutputWithContext added in v2.35.1

func (o CommonBandwithPackagePtrOutput) ToCommonBandwithPackagePtrOutputWithContext(ctx context.Context) CommonBandwithPackagePtrOutput

type CommonBandwithPackageState

type CommonBandwithPackageState struct {
	// The bandwidth of the common bandwidth package, in Mbps.
	Bandwidth pulumi.IntPtrInput
	// The description of the common bandwidth package instance.
	Description pulumi.StringPtrInput
	// The billing method of the common bandwidth package. Valid values are "PayByBandwidth" and "PayBy95" and "PayByTraffic". "PayBy95" is pay by classic 95th percentile pricing. International Account doesn't supports "PayByBandwidth" and "PayBy95". Default to "PayByTraffic".
	InternetChargeType pulumi.StringPtrInput
	// The type of the Internet Service Provider. Default to `BGP`.
	Isp pulumi.StringPtrInput
	// The name of the common bandwidth package.
	Name pulumi.StringPtrInput
	// Ratio of the common bandwidth package. It is valid when `internetChargeType` is `PayBy95`. Default to 100. Valid values: [10-100].
	Ratio pulumi.IntPtrInput
	// The Id of resource group which the common bandwidth package belongs.
	ResourceGroupId pulumi.StringPtrInput
}

func (CommonBandwithPackageState) ElementType

func (CommonBandwithPackageState) ElementType() reflect.Type

type ForwardEntry

type ForwardEntry struct {
	pulumi.CustomResourceState

	// The external ip address, the ip must along bandwidth package public ip which `vpc.NatGateway` argument `bandwidthPackages`.
	ExternalIp pulumi.StringOutput `pulumi:"externalIp"`
	// The external port, valid value is 1~65535|any.
	ExternalPort pulumi.StringOutput `pulumi:"externalPort"`
	// The id of the forward entry on the server.
	ForwardEntryId pulumi.StringOutput `pulumi:"forwardEntryId"`
	// The value can get from `vpc.NatGateway` Attributes "forwardTableIds".
	ForwardTableId pulumi.StringOutput `pulumi:"forwardTableId"`
	// The internal ip, must a private ip.
	InternalIp pulumi.StringOutput `pulumi:"internalIp"`
	// The internal port, valid value is 1~65535|any.
	InternalPort pulumi.StringOutput `pulumi:"internalPort"`
	// The ip protocal, valid value is tcp|udp|any.
	IpProtocol pulumi.StringOutput `pulumi:"ipProtocol"`
	// The name of forward entry.
	Name pulumi.StringOutput `pulumi:"name"`
}

Provides a forward resource.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud"
"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud/ecs"
"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud/vpc"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		name := "forward-entry-example-name"
		if param := cfg.Get("name"); param != "" {
			name = param
		}
		opt0 := "VSwitch"
		defaultZones, err := alicloud.GetZones(ctx, &alicloud.GetZonesArgs{
			AvailableResourceCreation: &opt0,
		}, nil)
		if err != nil {
			return err
		}
		defaultNetwork, err := vpc.NewNetwork(ctx, "defaultNetwork", &vpc.NetworkArgs{
			CidrBlock: pulumi.String("172.16.0.0/12"),
		})
		if err != nil {
			return err
		}
		_, err = vpc.NewSwitch(ctx, "defaultSwitch", &vpc.SwitchArgs{
			VpcId:            defaultNetwork.ID(),
			CidrBlock:        pulumi.String("172.16.0.0/21"),
			AvailabilityZone: pulumi.String(defaultZones.Zones[0].Id),
		})
		if err != nil {
			return err
		}
		defaultNatGateway, err := vpc.NewNatGateway(ctx, "defaultNatGateway", &vpc.NatGatewayArgs{
			VpcId:         defaultNetwork.ID(),
			Specification: pulumi.String("Small"),
		})
		if err != nil {
			return err
		}
		defaultEip, err := ecs.NewEip(ctx, "defaultEip", nil)
		if err != nil {
			return err
		}
		_, err = ecs.NewEipAssociation(ctx, "defaultEipAssociation", &ecs.EipAssociationArgs{
			AllocationId: defaultEip.ID(),
			InstanceId:   defaultNatGateway.ID(),
		})
		if err != nil {
			return err
		}
		_, err = vpc.NewForwardEntry(ctx, "defaultForwardEntry", &vpc.ForwardEntryArgs{
			ForwardTableId: defaultNatGateway.ForwardTableIds,
			ExternalIp:     defaultEip.IpAddress,
			ExternalPort:   pulumi.String("80"),
			IpProtocol:     pulumi.String("tcp"),
			InternalIp:     pulumi.String("172.16.0.3"),
			InternalPort:   pulumi.String("8080"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Forward Entry can be imported using the id, e.g.

```sh

$ pulumi import alicloud:vpc/forwardEntry:ForwardEntry foo ftb-1aece3:fwd-232ce2

```

func GetForwardEntry

func GetForwardEntry(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ForwardEntryState, opts ...pulumi.ResourceOption) (*ForwardEntry, error)

GetForwardEntry gets an existing ForwardEntry 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 NewForwardEntry

func NewForwardEntry(ctx *pulumi.Context,
	name string, args *ForwardEntryArgs, opts ...pulumi.ResourceOption) (*ForwardEntry, error)

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

func (*ForwardEntry) ElementType added in v2.25.1

func (*ForwardEntry) ElementType() reflect.Type

func (*ForwardEntry) ToForwardEntryOutput added in v2.25.1

func (i *ForwardEntry) ToForwardEntryOutput() ForwardEntryOutput

func (*ForwardEntry) ToForwardEntryOutputWithContext added in v2.25.1

func (i *ForwardEntry) ToForwardEntryOutputWithContext(ctx context.Context) ForwardEntryOutput

func (*ForwardEntry) ToForwardEntryPtrOutput added in v2.35.1

func (i *ForwardEntry) ToForwardEntryPtrOutput() ForwardEntryPtrOutput

func (*ForwardEntry) ToForwardEntryPtrOutputWithContext added in v2.35.1

func (i *ForwardEntry) ToForwardEntryPtrOutputWithContext(ctx context.Context) ForwardEntryPtrOutput

type ForwardEntryArgs

type ForwardEntryArgs struct {
	// The external ip address, the ip must along bandwidth package public ip which `vpc.NatGateway` argument `bandwidthPackages`.
	ExternalIp pulumi.StringInput
	// The external port, valid value is 1~65535|any.
	ExternalPort pulumi.StringInput
	// The value can get from `vpc.NatGateway` Attributes "forwardTableIds".
	ForwardTableId pulumi.StringInput
	// The internal ip, must a private ip.
	InternalIp pulumi.StringInput
	// The internal port, valid value is 1~65535|any.
	InternalPort pulumi.StringInput
	// The ip protocal, valid value is tcp|udp|any.
	IpProtocol pulumi.StringInput
	// The name of forward entry.
	Name pulumi.StringPtrInput
}

The set of arguments for constructing a ForwardEntry resource.

func (ForwardEntryArgs) ElementType

func (ForwardEntryArgs) ElementType() reflect.Type

type ForwardEntryArray added in v2.35.1

type ForwardEntryArray []ForwardEntryInput

func (ForwardEntryArray) ElementType added in v2.35.1

func (ForwardEntryArray) ElementType() reflect.Type

func (ForwardEntryArray) ToForwardEntryArrayOutput added in v2.35.1

func (i ForwardEntryArray) ToForwardEntryArrayOutput() ForwardEntryArrayOutput

func (ForwardEntryArray) ToForwardEntryArrayOutputWithContext added in v2.35.1

func (i ForwardEntryArray) ToForwardEntryArrayOutputWithContext(ctx context.Context) ForwardEntryArrayOutput

type ForwardEntryArrayInput added in v2.35.1

type ForwardEntryArrayInput interface {
	pulumi.Input

	ToForwardEntryArrayOutput() ForwardEntryArrayOutput
	ToForwardEntryArrayOutputWithContext(context.Context) ForwardEntryArrayOutput
}

ForwardEntryArrayInput is an input type that accepts ForwardEntryArray and ForwardEntryArrayOutput values. You can construct a concrete instance of `ForwardEntryArrayInput` via:

ForwardEntryArray{ ForwardEntryArgs{...} }

type ForwardEntryArrayOutput added in v2.35.1

type ForwardEntryArrayOutput struct{ *pulumi.OutputState }

func (ForwardEntryArrayOutput) ElementType added in v2.35.1

func (ForwardEntryArrayOutput) ElementType() reflect.Type

func (ForwardEntryArrayOutput) Index added in v2.35.1

func (ForwardEntryArrayOutput) ToForwardEntryArrayOutput added in v2.35.1

func (o ForwardEntryArrayOutput) ToForwardEntryArrayOutput() ForwardEntryArrayOutput

func (ForwardEntryArrayOutput) ToForwardEntryArrayOutputWithContext added in v2.35.1

func (o ForwardEntryArrayOutput) ToForwardEntryArrayOutputWithContext(ctx context.Context) ForwardEntryArrayOutput

type ForwardEntryInput added in v2.25.1

type ForwardEntryInput interface {
	pulumi.Input

	ToForwardEntryOutput() ForwardEntryOutput
	ToForwardEntryOutputWithContext(ctx context.Context) ForwardEntryOutput
}

type ForwardEntryMap added in v2.35.1

type ForwardEntryMap map[string]ForwardEntryInput

func (ForwardEntryMap) ElementType added in v2.35.1

func (ForwardEntryMap) ElementType() reflect.Type

func (ForwardEntryMap) ToForwardEntryMapOutput added in v2.35.1

func (i ForwardEntryMap) ToForwardEntryMapOutput() ForwardEntryMapOutput

func (ForwardEntryMap) ToForwardEntryMapOutputWithContext added in v2.35.1

func (i ForwardEntryMap) ToForwardEntryMapOutputWithContext(ctx context.Context) ForwardEntryMapOutput

type ForwardEntryMapInput added in v2.35.1

type ForwardEntryMapInput interface {
	pulumi.Input

	ToForwardEntryMapOutput() ForwardEntryMapOutput
	ToForwardEntryMapOutputWithContext(context.Context) ForwardEntryMapOutput
}

ForwardEntryMapInput is an input type that accepts ForwardEntryMap and ForwardEntryMapOutput values. You can construct a concrete instance of `ForwardEntryMapInput` via:

ForwardEntryMap{ "key": ForwardEntryArgs{...} }

type ForwardEntryMapOutput added in v2.35.1

type ForwardEntryMapOutput struct{ *pulumi.OutputState }

func (ForwardEntryMapOutput) ElementType added in v2.35.1

func (ForwardEntryMapOutput) ElementType() reflect.Type

func (ForwardEntryMapOutput) MapIndex added in v2.35.1

func (ForwardEntryMapOutput) ToForwardEntryMapOutput added in v2.35.1

func (o ForwardEntryMapOutput) ToForwardEntryMapOutput() ForwardEntryMapOutput

func (ForwardEntryMapOutput) ToForwardEntryMapOutputWithContext added in v2.35.1

func (o ForwardEntryMapOutput) ToForwardEntryMapOutputWithContext(ctx context.Context) ForwardEntryMapOutput

type ForwardEntryOutput added in v2.25.1

type ForwardEntryOutput struct {
	*pulumi.OutputState
}

func (ForwardEntryOutput) ElementType added in v2.25.1

func (ForwardEntryOutput) ElementType() reflect.Type

func (ForwardEntryOutput) ToForwardEntryOutput added in v2.25.1

func (o ForwardEntryOutput) ToForwardEntryOutput() ForwardEntryOutput

func (ForwardEntryOutput) ToForwardEntryOutputWithContext added in v2.25.1

func (o ForwardEntryOutput) ToForwardEntryOutputWithContext(ctx context.Context) ForwardEntryOutput

func (ForwardEntryOutput) ToForwardEntryPtrOutput added in v2.35.1

func (o ForwardEntryOutput) ToForwardEntryPtrOutput() ForwardEntryPtrOutput

func (ForwardEntryOutput) ToForwardEntryPtrOutputWithContext added in v2.35.1

func (o ForwardEntryOutput) ToForwardEntryPtrOutputWithContext(ctx context.Context) ForwardEntryPtrOutput

type ForwardEntryPtrInput added in v2.35.1

type ForwardEntryPtrInput interface {
	pulumi.Input

	ToForwardEntryPtrOutput() ForwardEntryPtrOutput
	ToForwardEntryPtrOutputWithContext(ctx context.Context) ForwardEntryPtrOutput
}

type ForwardEntryPtrOutput added in v2.35.1

type ForwardEntryPtrOutput struct {
	*pulumi.OutputState
}

func (ForwardEntryPtrOutput) ElementType added in v2.35.1

func (ForwardEntryPtrOutput) ElementType() reflect.Type

func (ForwardEntryPtrOutput) ToForwardEntryPtrOutput added in v2.35.1

func (o ForwardEntryPtrOutput) ToForwardEntryPtrOutput() ForwardEntryPtrOutput

func (ForwardEntryPtrOutput) ToForwardEntryPtrOutputWithContext added in v2.35.1

func (o ForwardEntryPtrOutput) ToForwardEntryPtrOutputWithContext(ctx context.Context) ForwardEntryPtrOutput

type ForwardEntryState

type ForwardEntryState struct {
	// The external ip address, the ip must along bandwidth package public ip which `vpc.NatGateway` argument `bandwidthPackages`.
	ExternalIp pulumi.StringPtrInput
	// The external port, valid value is 1~65535|any.
	ExternalPort pulumi.StringPtrInput
	// The id of the forward entry on the server.
	ForwardEntryId pulumi.StringPtrInput
	// The value can get from `vpc.NatGateway` Attributes "forwardTableIds".
	ForwardTableId pulumi.StringPtrInput
	// The internal ip, must a private ip.
	InternalIp pulumi.StringPtrInput
	// The internal port, valid value is 1~65535|any.
	InternalPort pulumi.StringPtrInput
	// The ip protocal, valid value is tcp|udp|any.
	IpProtocol pulumi.StringPtrInput
	// The name of forward entry.
	Name pulumi.StringPtrInput
}

func (ForwardEntryState) ElementType

func (ForwardEntryState) ElementType() reflect.Type

type GetCommonBandwidthPackagesArgs

type GetCommonBandwidthPackagesArgs struct {
	// A list of Common Bandwidth Packages IDs.
	Ids []string `pulumi:"ids"`
	// A regex string to filter results by name.
	NameRegex  *string `pulumi:"nameRegex"`
	OutputFile *string `pulumi:"outputFile"`
	// The Id of resource group which the common bandwidth package belongs.
	ResourceGroupId *string `pulumi:"resourceGroupId"`
}

A collection of arguments for invoking getCommonBandwidthPackages.

type GetCommonBandwidthPackagesPackage

type GetCommonBandwidthPackagesPackage struct {
	// The peak bandwidth of the Internet Shared Bandwidth instance.
	Bandwidth string `pulumi:"bandwidth"`
	// The business status of the Common Bandwidth Package instance.
	BusinessStatus string `pulumi:"businessStatus"`
	// Time of creation.
	CreationTime string `pulumi:"creationTime"`
	// The description of the Common Bandwidth Package instance.
	Description string `pulumi:"description"`
	// ID of the Common Bandwidth Package.
	Id string `pulumi:"id"`
	// ISP of the Common Bandwidth Package.
	Isp string `pulumi:"isp"`
	// Name of the Common Bandwidth Package.
	Name string `pulumi:"name"`
	// Public ip addresses that in the Common Bandwidth Pakcage.
	PublicIpAddresses []GetCommonBandwidthPackagesPackagePublicIpAddress `pulumi:"publicIpAddresses"`
	// The Id of resource group which the common bandwidth package belongs.
	ResourceGroupId *string `pulumi:"resourceGroupId"`
	// Status of the Common Bandwidth Package.
	Status string `pulumi:"status"`
}

type GetCommonBandwidthPackagesPackageArgs

type GetCommonBandwidthPackagesPackageArgs struct {
	// The peak bandwidth of the Internet Shared Bandwidth instance.
	Bandwidth pulumi.StringInput `pulumi:"bandwidth"`
	// The business status of the Common Bandwidth Package instance.
	BusinessStatus pulumi.StringInput `pulumi:"businessStatus"`
	// Time of creation.
	CreationTime pulumi.StringInput `pulumi:"creationTime"`
	// The description of the Common Bandwidth Package instance.
	Description pulumi.StringInput `pulumi:"description"`
	// ID of the Common Bandwidth Package.
	Id pulumi.StringInput `pulumi:"id"`
	// ISP of the Common Bandwidth Package.
	Isp pulumi.StringInput `pulumi:"isp"`
	// Name of the Common Bandwidth Package.
	Name pulumi.StringInput `pulumi:"name"`
	// Public ip addresses that in the Common Bandwidth Pakcage.
	PublicIpAddresses GetCommonBandwidthPackagesPackagePublicIpAddressArrayInput `pulumi:"publicIpAddresses"`
	// The Id of resource group which the common bandwidth package belongs.
	ResourceGroupId pulumi.StringPtrInput `pulumi:"resourceGroupId"`
	// Status of the Common Bandwidth Package.
	Status pulumi.StringInput `pulumi:"status"`
}

func (GetCommonBandwidthPackagesPackageArgs) ElementType

func (GetCommonBandwidthPackagesPackageArgs) ToGetCommonBandwidthPackagesPackageOutput

func (i GetCommonBandwidthPackagesPackageArgs) ToGetCommonBandwidthPackagesPackageOutput() GetCommonBandwidthPackagesPackageOutput

func (GetCommonBandwidthPackagesPackageArgs) ToGetCommonBandwidthPackagesPackageOutputWithContext

func (i GetCommonBandwidthPackagesPackageArgs) ToGetCommonBandwidthPackagesPackageOutputWithContext(ctx context.Context) GetCommonBandwidthPackagesPackageOutput

type GetCommonBandwidthPackagesPackageArray

type GetCommonBandwidthPackagesPackageArray []GetCommonBandwidthPackagesPackageInput

func (GetCommonBandwidthPackagesPackageArray) ElementType

func (GetCommonBandwidthPackagesPackageArray) ToGetCommonBandwidthPackagesPackageArrayOutput

func (i GetCommonBandwidthPackagesPackageArray) ToGetCommonBandwidthPackagesPackageArrayOutput() GetCommonBandwidthPackagesPackageArrayOutput

func (GetCommonBandwidthPackagesPackageArray) ToGetCommonBandwidthPackagesPackageArrayOutputWithContext

func (i GetCommonBandwidthPackagesPackageArray) ToGetCommonBandwidthPackagesPackageArrayOutputWithContext(ctx context.Context) GetCommonBandwidthPackagesPackageArrayOutput

type GetCommonBandwidthPackagesPackageArrayInput

type GetCommonBandwidthPackagesPackageArrayInput interface {
	pulumi.Input

	ToGetCommonBandwidthPackagesPackageArrayOutput() GetCommonBandwidthPackagesPackageArrayOutput
	ToGetCommonBandwidthPackagesPackageArrayOutputWithContext(context.Context) GetCommonBandwidthPackagesPackageArrayOutput
}

GetCommonBandwidthPackagesPackageArrayInput is an input type that accepts GetCommonBandwidthPackagesPackageArray and GetCommonBandwidthPackagesPackageArrayOutput values. You can construct a concrete instance of `GetCommonBandwidthPackagesPackageArrayInput` via:

GetCommonBandwidthPackagesPackageArray{ GetCommonBandwidthPackagesPackageArgs{...} }

type GetCommonBandwidthPackagesPackageArrayOutput

type GetCommonBandwidthPackagesPackageArrayOutput struct{ *pulumi.OutputState }

func (GetCommonBandwidthPackagesPackageArrayOutput) ElementType

func (GetCommonBandwidthPackagesPackageArrayOutput) Index

func (GetCommonBandwidthPackagesPackageArrayOutput) ToGetCommonBandwidthPackagesPackageArrayOutput

func (o GetCommonBandwidthPackagesPackageArrayOutput) ToGetCommonBandwidthPackagesPackageArrayOutput() GetCommonBandwidthPackagesPackageArrayOutput

func (GetCommonBandwidthPackagesPackageArrayOutput) ToGetCommonBandwidthPackagesPackageArrayOutputWithContext

func (o GetCommonBandwidthPackagesPackageArrayOutput) ToGetCommonBandwidthPackagesPackageArrayOutputWithContext(ctx context.Context) GetCommonBandwidthPackagesPackageArrayOutput

type GetCommonBandwidthPackagesPackageInput

type GetCommonBandwidthPackagesPackageInput interface {
	pulumi.Input

	ToGetCommonBandwidthPackagesPackageOutput() GetCommonBandwidthPackagesPackageOutput
	ToGetCommonBandwidthPackagesPackageOutputWithContext(context.Context) GetCommonBandwidthPackagesPackageOutput
}

GetCommonBandwidthPackagesPackageInput is an input type that accepts GetCommonBandwidthPackagesPackageArgs and GetCommonBandwidthPackagesPackageOutput values. You can construct a concrete instance of `GetCommonBandwidthPackagesPackageInput` via:

GetCommonBandwidthPackagesPackageArgs{...}

type GetCommonBandwidthPackagesPackageOutput

type GetCommonBandwidthPackagesPackageOutput struct{ *pulumi.OutputState }

func (GetCommonBandwidthPackagesPackageOutput) Bandwidth

The peak bandwidth of the Internet Shared Bandwidth instance.

func (GetCommonBandwidthPackagesPackageOutput) BusinessStatus

The business status of the Common Bandwidth Package instance.

func (GetCommonBandwidthPackagesPackageOutput) CreationTime

Time of creation.

func (GetCommonBandwidthPackagesPackageOutput) Description

The description of the Common Bandwidth Package instance.

func (GetCommonBandwidthPackagesPackageOutput) ElementType

func (GetCommonBandwidthPackagesPackageOutput) Id

ID of the Common Bandwidth Package.

func (GetCommonBandwidthPackagesPackageOutput) Isp

ISP of the Common Bandwidth Package.

func (GetCommonBandwidthPackagesPackageOutput) Name

Name of the Common Bandwidth Package.

func (GetCommonBandwidthPackagesPackageOutput) PublicIpAddresses

Public ip addresses that in the Common Bandwidth Pakcage.

func (GetCommonBandwidthPackagesPackageOutput) ResourceGroupId

The Id of resource group which the common bandwidth package belongs.

func (GetCommonBandwidthPackagesPackageOutput) Status

Status of the Common Bandwidth Package.

func (GetCommonBandwidthPackagesPackageOutput) ToGetCommonBandwidthPackagesPackageOutput

func (o GetCommonBandwidthPackagesPackageOutput) ToGetCommonBandwidthPackagesPackageOutput() GetCommonBandwidthPackagesPackageOutput

func (GetCommonBandwidthPackagesPackageOutput) ToGetCommonBandwidthPackagesPackageOutputWithContext

func (o GetCommonBandwidthPackagesPackageOutput) ToGetCommonBandwidthPackagesPackageOutputWithContext(ctx context.Context) GetCommonBandwidthPackagesPackageOutput

type GetCommonBandwidthPackagesPackagePublicIpAddress

type GetCommonBandwidthPackagesPackagePublicIpAddress struct {
	AllocationId string `pulumi:"allocationId"`
	IpAddress    string `pulumi:"ipAddress"`
}

type GetCommonBandwidthPackagesPackagePublicIpAddressArgs

type GetCommonBandwidthPackagesPackagePublicIpAddressArgs struct {
	AllocationId pulumi.StringInput `pulumi:"allocationId"`
	IpAddress    pulumi.StringInput `pulumi:"ipAddress"`
}

func (GetCommonBandwidthPackagesPackagePublicIpAddressArgs) ElementType

func (GetCommonBandwidthPackagesPackagePublicIpAddressArgs) ToGetCommonBandwidthPackagesPackagePublicIpAddressOutput

func (i GetCommonBandwidthPackagesPackagePublicIpAddressArgs) ToGetCommonBandwidthPackagesPackagePublicIpAddressOutput() GetCommonBandwidthPackagesPackagePublicIpAddressOutput

func (GetCommonBandwidthPackagesPackagePublicIpAddressArgs) ToGetCommonBandwidthPackagesPackagePublicIpAddressOutputWithContext

func (i GetCommonBandwidthPackagesPackagePublicIpAddressArgs) ToGetCommonBandwidthPackagesPackagePublicIpAddressOutputWithContext(ctx context.Context) GetCommonBandwidthPackagesPackagePublicIpAddressOutput

type GetCommonBandwidthPackagesPackagePublicIpAddressArray

type GetCommonBandwidthPackagesPackagePublicIpAddressArray []GetCommonBandwidthPackagesPackagePublicIpAddressInput

func (GetCommonBandwidthPackagesPackagePublicIpAddressArray) ElementType

func (GetCommonBandwidthPackagesPackagePublicIpAddressArray) ToGetCommonBandwidthPackagesPackagePublicIpAddressArrayOutput

func (i GetCommonBandwidthPackagesPackagePublicIpAddressArray) ToGetCommonBandwidthPackagesPackagePublicIpAddressArrayOutput() GetCommonBandwidthPackagesPackagePublicIpAddressArrayOutput

func (GetCommonBandwidthPackagesPackagePublicIpAddressArray) ToGetCommonBandwidthPackagesPackagePublicIpAddressArrayOutputWithContext

func (i GetCommonBandwidthPackagesPackagePublicIpAddressArray) ToGetCommonBandwidthPackagesPackagePublicIpAddressArrayOutputWithContext(ctx context.Context) GetCommonBandwidthPackagesPackagePublicIpAddressArrayOutput

type GetCommonBandwidthPackagesPackagePublicIpAddressArrayInput

type GetCommonBandwidthPackagesPackagePublicIpAddressArrayInput interface {
	pulumi.Input

	ToGetCommonBandwidthPackagesPackagePublicIpAddressArrayOutput() GetCommonBandwidthPackagesPackagePublicIpAddressArrayOutput
	ToGetCommonBandwidthPackagesPackagePublicIpAddressArrayOutputWithContext(context.Context) GetCommonBandwidthPackagesPackagePublicIpAddressArrayOutput
}

GetCommonBandwidthPackagesPackagePublicIpAddressArrayInput is an input type that accepts GetCommonBandwidthPackagesPackagePublicIpAddressArray and GetCommonBandwidthPackagesPackagePublicIpAddressArrayOutput values. You can construct a concrete instance of `GetCommonBandwidthPackagesPackagePublicIpAddressArrayInput` via:

GetCommonBandwidthPackagesPackagePublicIpAddressArray{ GetCommonBandwidthPackagesPackagePublicIpAddressArgs{...} }

type GetCommonBandwidthPackagesPackagePublicIpAddressArrayOutput

type GetCommonBandwidthPackagesPackagePublicIpAddressArrayOutput struct{ *pulumi.OutputState }

func (GetCommonBandwidthPackagesPackagePublicIpAddressArrayOutput) ElementType

func (GetCommonBandwidthPackagesPackagePublicIpAddressArrayOutput) Index

func (GetCommonBandwidthPackagesPackagePublicIpAddressArrayOutput) ToGetCommonBandwidthPackagesPackagePublicIpAddressArrayOutput

func (GetCommonBandwidthPackagesPackagePublicIpAddressArrayOutput) ToGetCommonBandwidthPackagesPackagePublicIpAddressArrayOutputWithContext

func (o GetCommonBandwidthPackagesPackagePublicIpAddressArrayOutput) ToGetCommonBandwidthPackagesPackagePublicIpAddressArrayOutputWithContext(ctx context.Context) GetCommonBandwidthPackagesPackagePublicIpAddressArrayOutput

type GetCommonBandwidthPackagesPackagePublicIpAddressInput

type GetCommonBandwidthPackagesPackagePublicIpAddressInput interface {
	pulumi.Input

	ToGetCommonBandwidthPackagesPackagePublicIpAddressOutput() GetCommonBandwidthPackagesPackagePublicIpAddressOutput
	ToGetCommonBandwidthPackagesPackagePublicIpAddressOutputWithContext(context.Context) GetCommonBandwidthPackagesPackagePublicIpAddressOutput
}

GetCommonBandwidthPackagesPackagePublicIpAddressInput is an input type that accepts GetCommonBandwidthPackagesPackagePublicIpAddressArgs and GetCommonBandwidthPackagesPackagePublicIpAddressOutput values. You can construct a concrete instance of `GetCommonBandwidthPackagesPackagePublicIpAddressInput` via:

GetCommonBandwidthPackagesPackagePublicIpAddressArgs{...}

type GetCommonBandwidthPackagesPackagePublicIpAddressOutput

type GetCommonBandwidthPackagesPackagePublicIpAddressOutput struct{ *pulumi.OutputState }

func (GetCommonBandwidthPackagesPackagePublicIpAddressOutput) AllocationId

func (GetCommonBandwidthPackagesPackagePublicIpAddressOutput) ElementType

func (GetCommonBandwidthPackagesPackagePublicIpAddressOutput) IpAddress

func (GetCommonBandwidthPackagesPackagePublicIpAddressOutput) ToGetCommonBandwidthPackagesPackagePublicIpAddressOutput

func (GetCommonBandwidthPackagesPackagePublicIpAddressOutput) ToGetCommonBandwidthPackagesPackagePublicIpAddressOutputWithContext

func (o GetCommonBandwidthPackagesPackagePublicIpAddressOutput) ToGetCommonBandwidthPackagesPackagePublicIpAddressOutputWithContext(ctx context.Context) GetCommonBandwidthPackagesPackagePublicIpAddressOutput

type GetCommonBandwidthPackagesResult

type GetCommonBandwidthPackagesResult struct {
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// (Optional) A list of Common Bandwidth Packages IDs.
	Ids       []string `pulumi:"ids"`
	NameRegex *string  `pulumi:"nameRegex"`
	// A list of Common Bandwidth Packages names.
	Names      []string `pulumi:"names"`
	OutputFile *string  `pulumi:"outputFile"`
	// A list of Common Bandwidth Packages. Each element contains the following attributes:
	Packages []GetCommonBandwidthPackagesPackage `pulumi:"packages"`
	// The Id of resource group which the common bandwidth package belongs.
	ResourceGroupId *string `pulumi:"resourceGroupId"`
}

A collection of values returned by getCommonBandwidthPackages.

func GetCommonBandwidthPackages

func GetCommonBandwidthPackages(ctx *pulumi.Context, args *GetCommonBandwidthPackagesArgs, opts ...pulumi.InvokeOption) (*GetCommonBandwidthPackagesResult, error)

This data source provides a list of Common Bandwidth Packages owned by an Alibaba Cloud account.

> **NOTE:** Available in 1.36.0+.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud/vpc"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		fooCommonBandwithPackage, err := vpc.NewCommonBandwithPackage(ctx, "fooCommonBandwithPackage", &vpc.CommonBandwithPackageArgs{
			Bandwidth:   pulumi.Int(2),
			Description: pulumi.String("tf-testAcc-CommonBandwidthPackage"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ## Public ip addresses Block

The public ip addresses mapping supports the following:

* `ipAddress`   - The address of the EIP.
* `allocationId` - The ID of the EIP instance.

type GetEnhancedNatAvailableZonesArgs added in v2.24.0

type GetEnhancedNatAvailableZonesArgs struct {
	OutputFile *string `pulumi:"outputFile"`
}

A collection of arguments for invoking getEnhancedNatAvailableZones.

type GetEnhancedNatAvailableZonesResult added in v2.24.0

type GetEnhancedNatAvailableZonesResult struct {
	// The provider-assigned unique ID for this managed resource.
	Id         string                             `pulumi:"id"`
	Ids        []string                           `pulumi:"ids"`
	OutputFile *string                            `pulumi:"outputFile"`
	Zones      []GetEnhancedNatAvailableZonesZone `pulumi:"zones"`
}

A collection of values returned by getEnhancedNatAvailableZones.

func GetEnhancedNatAvailableZones added in v2.24.0

func GetEnhancedNatAvailableZones(ctx *pulumi.Context, args *GetEnhancedNatAvailableZonesArgs, opts ...pulumi.InvokeOption) (*GetEnhancedNatAvailableZonesResult, error)

type GetEnhancedNatAvailableZonesZone added in v2.24.0

type GetEnhancedNatAvailableZonesZone struct {
	LocalName string `pulumi:"localName"`
	ZoneId    string `pulumi:"zoneId"`
}

type GetEnhancedNatAvailableZonesZoneArgs added in v2.24.0

type GetEnhancedNatAvailableZonesZoneArgs struct {
	LocalName pulumi.StringInput `pulumi:"localName"`
	ZoneId    pulumi.StringInput `pulumi:"zoneId"`
}

func (GetEnhancedNatAvailableZonesZoneArgs) ElementType added in v2.24.0

func (GetEnhancedNatAvailableZonesZoneArgs) ToGetEnhancedNatAvailableZonesZoneOutput added in v2.24.0

func (i GetEnhancedNatAvailableZonesZoneArgs) ToGetEnhancedNatAvailableZonesZoneOutput() GetEnhancedNatAvailableZonesZoneOutput

func (GetEnhancedNatAvailableZonesZoneArgs) ToGetEnhancedNatAvailableZonesZoneOutputWithContext added in v2.24.0

func (i GetEnhancedNatAvailableZonesZoneArgs) ToGetEnhancedNatAvailableZonesZoneOutputWithContext(ctx context.Context) GetEnhancedNatAvailableZonesZoneOutput

type GetEnhancedNatAvailableZonesZoneArray added in v2.24.0

type GetEnhancedNatAvailableZonesZoneArray []GetEnhancedNatAvailableZonesZoneInput

func (GetEnhancedNatAvailableZonesZoneArray) ElementType added in v2.24.0

func (GetEnhancedNatAvailableZonesZoneArray) ToGetEnhancedNatAvailableZonesZoneArrayOutput added in v2.24.0

func (i GetEnhancedNatAvailableZonesZoneArray) ToGetEnhancedNatAvailableZonesZoneArrayOutput() GetEnhancedNatAvailableZonesZoneArrayOutput

func (GetEnhancedNatAvailableZonesZoneArray) ToGetEnhancedNatAvailableZonesZoneArrayOutputWithContext added in v2.24.0

func (i GetEnhancedNatAvailableZonesZoneArray) ToGetEnhancedNatAvailableZonesZoneArrayOutputWithContext(ctx context.Context) GetEnhancedNatAvailableZonesZoneArrayOutput

type GetEnhancedNatAvailableZonesZoneArrayInput added in v2.24.0

type GetEnhancedNatAvailableZonesZoneArrayInput interface {
	pulumi.Input

	ToGetEnhancedNatAvailableZonesZoneArrayOutput() GetEnhancedNatAvailableZonesZoneArrayOutput
	ToGetEnhancedNatAvailableZonesZoneArrayOutputWithContext(context.Context) GetEnhancedNatAvailableZonesZoneArrayOutput
}

GetEnhancedNatAvailableZonesZoneArrayInput is an input type that accepts GetEnhancedNatAvailableZonesZoneArray and GetEnhancedNatAvailableZonesZoneArrayOutput values. You can construct a concrete instance of `GetEnhancedNatAvailableZonesZoneArrayInput` via:

GetEnhancedNatAvailableZonesZoneArray{ GetEnhancedNatAvailableZonesZoneArgs{...} }

type GetEnhancedNatAvailableZonesZoneArrayOutput added in v2.24.0

type GetEnhancedNatAvailableZonesZoneArrayOutput struct{ *pulumi.OutputState }

func (GetEnhancedNatAvailableZonesZoneArrayOutput) ElementType added in v2.24.0

func (GetEnhancedNatAvailableZonesZoneArrayOutput) Index added in v2.24.0

func (GetEnhancedNatAvailableZonesZoneArrayOutput) ToGetEnhancedNatAvailableZonesZoneArrayOutput added in v2.24.0

func (o GetEnhancedNatAvailableZonesZoneArrayOutput) ToGetEnhancedNatAvailableZonesZoneArrayOutput() GetEnhancedNatAvailableZonesZoneArrayOutput

func (GetEnhancedNatAvailableZonesZoneArrayOutput) ToGetEnhancedNatAvailableZonesZoneArrayOutputWithContext added in v2.24.0

func (o GetEnhancedNatAvailableZonesZoneArrayOutput) ToGetEnhancedNatAvailableZonesZoneArrayOutputWithContext(ctx context.Context) GetEnhancedNatAvailableZonesZoneArrayOutput

type GetEnhancedNatAvailableZonesZoneInput added in v2.24.0

type GetEnhancedNatAvailableZonesZoneInput interface {
	pulumi.Input

	ToGetEnhancedNatAvailableZonesZoneOutput() GetEnhancedNatAvailableZonesZoneOutput
	ToGetEnhancedNatAvailableZonesZoneOutputWithContext(context.Context) GetEnhancedNatAvailableZonesZoneOutput
}

GetEnhancedNatAvailableZonesZoneInput is an input type that accepts GetEnhancedNatAvailableZonesZoneArgs and GetEnhancedNatAvailableZonesZoneOutput values. You can construct a concrete instance of `GetEnhancedNatAvailableZonesZoneInput` via:

GetEnhancedNatAvailableZonesZoneArgs{...}

type GetEnhancedNatAvailableZonesZoneOutput added in v2.24.0

type GetEnhancedNatAvailableZonesZoneOutput struct{ *pulumi.OutputState }

func (GetEnhancedNatAvailableZonesZoneOutput) ElementType added in v2.24.0

func (GetEnhancedNatAvailableZonesZoneOutput) LocalName added in v2.24.0

func (GetEnhancedNatAvailableZonesZoneOutput) ToGetEnhancedNatAvailableZonesZoneOutput added in v2.24.0

func (o GetEnhancedNatAvailableZonesZoneOutput) ToGetEnhancedNatAvailableZonesZoneOutput() GetEnhancedNatAvailableZonesZoneOutput

func (GetEnhancedNatAvailableZonesZoneOutput) ToGetEnhancedNatAvailableZonesZoneOutputWithContext added in v2.24.0

func (o GetEnhancedNatAvailableZonesZoneOutput) ToGetEnhancedNatAvailableZonesZoneOutputWithContext(ctx context.Context) GetEnhancedNatAvailableZonesZoneOutput

func (GetEnhancedNatAvailableZonesZoneOutput) ZoneId added in v2.24.0

type GetForwardEntriesArgs

type GetForwardEntriesArgs struct {
	// The public IP address.
	ExternalIp *string `pulumi:"externalIp"`
	// The ID of the Forward table.
	ForwardTableId string `pulumi:"forwardTableId"`
	// A list of Forward Entries IDs.
	Ids []string `pulumi:"ids"`
	// The private IP address.
	InternalIp *string `pulumi:"internalIp"`
	// A regex string to filter results by forward entry name.
	NameRegex *string `pulumi:"nameRegex"`
	// A list of Forward Entries names.
	Names      []string `pulumi:"names"`
	OutputFile *string  `pulumi:"outputFile"`
}

A collection of arguments for invoking getForwardEntries.

type GetForwardEntriesEntry

type GetForwardEntriesEntry struct {
	// The public IP address.
	ExternalIp string `pulumi:"externalIp"`
	// The public port.
	ExternalPort string `pulumi:"externalPort"`
	// The ID of the Forward Entry.
	Id string `pulumi:"id"`
	// The private IP address.
	InternalIp string `pulumi:"internalIp"`
	// The private port.
	InternalPort string `pulumi:"internalPort"`
	// The protocol type.
	IpProtocol string `pulumi:"ipProtocol"`
	// The forward entry name.
	Name string `pulumi:"name"`
	// The status of the Forward Entry.
	Status string `pulumi:"status"`
}

type GetForwardEntriesEntryArgs

type GetForwardEntriesEntryArgs struct {
	// The public IP address.
	ExternalIp pulumi.StringInput `pulumi:"externalIp"`
	// The public port.
	ExternalPort pulumi.StringInput `pulumi:"externalPort"`
	// The ID of the Forward Entry.
	Id pulumi.StringInput `pulumi:"id"`
	// The private IP address.
	InternalIp pulumi.StringInput `pulumi:"internalIp"`
	// The private port.
	InternalPort pulumi.StringInput `pulumi:"internalPort"`
	// The protocol type.
	IpProtocol pulumi.StringInput `pulumi:"ipProtocol"`
	// The forward entry name.
	Name pulumi.StringInput `pulumi:"name"`
	// The status of the Forward Entry.
	Status pulumi.StringInput `pulumi:"status"`
}

func (GetForwardEntriesEntryArgs) ElementType

func (GetForwardEntriesEntryArgs) ElementType() reflect.Type

func (GetForwardEntriesEntryArgs) ToGetForwardEntriesEntryOutput

func (i GetForwardEntriesEntryArgs) ToGetForwardEntriesEntryOutput() GetForwardEntriesEntryOutput

func (GetForwardEntriesEntryArgs) ToGetForwardEntriesEntryOutputWithContext

func (i GetForwardEntriesEntryArgs) ToGetForwardEntriesEntryOutputWithContext(ctx context.Context) GetForwardEntriesEntryOutput

type GetForwardEntriesEntryArray

type GetForwardEntriesEntryArray []GetForwardEntriesEntryInput

func (GetForwardEntriesEntryArray) ElementType

func (GetForwardEntriesEntryArray) ToGetForwardEntriesEntryArrayOutput

func (i GetForwardEntriesEntryArray) ToGetForwardEntriesEntryArrayOutput() GetForwardEntriesEntryArrayOutput

func (GetForwardEntriesEntryArray) ToGetForwardEntriesEntryArrayOutputWithContext

func (i GetForwardEntriesEntryArray) ToGetForwardEntriesEntryArrayOutputWithContext(ctx context.Context) GetForwardEntriesEntryArrayOutput

type GetForwardEntriesEntryArrayInput

type GetForwardEntriesEntryArrayInput interface {
	pulumi.Input

	ToGetForwardEntriesEntryArrayOutput() GetForwardEntriesEntryArrayOutput
	ToGetForwardEntriesEntryArrayOutputWithContext(context.Context) GetForwardEntriesEntryArrayOutput
}

GetForwardEntriesEntryArrayInput is an input type that accepts GetForwardEntriesEntryArray and GetForwardEntriesEntryArrayOutput values. You can construct a concrete instance of `GetForwardEntriesEntryArrayInput` via:

GetForwardEntriesEntryArray{ GetForwardEntriesEntryArgs{...} }

type GetForwardEntriesEntryArrayOutput

type GetForwardEntriesEntryArrayOutput struct{ *pulumi.OutputState }

func (GetForwardEntriesEntryArrayOutput) ElementType

func (GetForwardEntriesEntryArrayOutput) Index

func (GetForwardEntriesEntryArrayOutput) ToGetForwardEntriesEntryArrayOutput

func (o GetForwardEntriesEntryArrayOutput) ToGetForwardEntriesEntryArrayOutput() GetForwardEntriesEntryArrayOutput

func (GetForwardEntriesEntryArrayOutput) ToGetForwardEntriesEntryArrayOutputWithContext

func (o GetForwardEntriesEntryArrayOutput) ToGetForwardEntriesEntryArrayOutputWithContext(ctx context.Context) GetForwardEntriesEntryArrayOutput

type GetForwardEntriesEntryInput

type GetForwardEntriesEntryInput interface {
	pulumi.Input

	ToGetForwardEntriesEntryOutput() GetForwardEntriesEntryOutput
	ToGetForwardEntriesEntryOutputWithContext(context.Context) GetForwardEntriesEntryOutput
}

GetForwardEntriesEntryInput is an input type that accepts GetForwardEntriesEntryArgs and GetForwardEntriesEntryOutput values. You can construct a concrete instance of `GetForwardEntriesEntryInput` via:

GetForwardEntriesEntryArgs{...}

type GetForwardEntriesEntryOutput

type GetForwardEntriesEntryOutput struct{ *pulumi.OutputState }

func (GetForwardEntriesEntryOutput) ElementType

func (GetForwardEntriesEntryOutput) ExternalIp

The public IP address.

func (GetForwardEntriesEntryOutput) ExternalPort

The public port.

func (GetForwardEntriesEntryOutput) Id

The ID of the Forward Entry.

func (GetForwardEntriesEntryOutput) InternalIp

The private IP address.

func (GetForwardEntriesEntryOutput) InternalPort

The private port.

func (GetForwardEntriesEntryOutput) IpProtocol

The protocol type.

func (GetForwardEntriesEntryOutput) Name

The forward entry name.

func (GetForwardEntriesEntryOutput) Status

The status of the Forward Entry.

func (GetForwardEntriesEntryOutput) ToGetForwardEntriesEntryOutput

func (o GetForwardEntriesEntryOutput) ToGetForwardEntriesEntryOutput() GetForwardEntriesEntryOutput

func (GetForwardEntriesEntryOutput) ToGetForwardEntriesEntryOutputWithContext

func (o GetForwardEntriesEntryOutput) ToGetForwardEntriesEntryOutputWithContext(ctx context.Context) GetForwardEntriesEntryOutput

type GetForwardEntriesResult

type GetForwardEntriesResult struct {
	// A list of Forward Entries. Each element contains the following attributes:
	Entries []GetForwardEntriesEntry `pulumi:"entries"`
	// The public IP address.
	ExternalIp     *string `pulumi:"externalIp"`
	ForwardTableId string  `pulumi:"forwardTableId"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// A list of Forward Entries IDs.
	Ids []string `pulumi:"ids"`
	// The private IP address.
	InternalIp *string `pulumi:"internalIp"`
	NameRegex  *string `pulumi:"nameRegex"`
	// A list of Forward Entries names.
	Names      []string `pulumi:"names"`
	OutputFile *string  `pulumi:"outputFile"`
}

A collection of values returned by getForwardEntries.

func GetForwardEntries

func GetForwardEntries(ctx *pulumi.Context, args *GetForwardEntriesArgs, opts ...pulumi.InvokeOption) (*GetForwardEntriesResult, error)

This data source provides a list of Forward Entries owned by an Alibaba Cloud account.

> **NOTE:** Available in 1.37.0+.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud"
"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud/ecs"
"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud/vpc"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		name := "forward-entry-config-example-name"
		if param := cfg.Get("name"); param != "" {
			name = param
		}
		opt0 := "VSwitch"
		defaultZones, err := alicloud.GetZones(ctx, &alicloud.GetZonesArgs{
			AvailableResourceCreation: &opt0,
		}, nil)
		if err != nil {
			return err
		}
		defaultNetwork, err := vpc.NewNetwork(ctx, "defaultNetwork", &vpc.NetworkArgs{
			CidrBlock: pulumi.String("172.16.0.0/12"),
		})
		if err != nil {
			return err
		}
		_, err = vpc.NewSwitch(ctx, "defaultSwitch", &vpc.SwitchArgs{
			AvailabilityZone: pulumi.String(defaultZones.Zones[0].Id),
			CidrBlock:        pulumi.String("172.16.0.0/21"),
			VpcId:            defaultNetwork.ID(),
		})
		if err != nil {
			return err
		}
		defaultNatGateway, err := vpc.NewNatGateway(ctx, "defaultNatGateway", &vpc.NatGatewayArgs{
			Specification: pulumi.String("Small"),
			VpcId:         defaultNetwork.ID(),
		})
		if err != nil {
			return err
		}
		defaultEip, err := ecs.NewEip(ctx, "defaultEip", nil)
		if err != nil {
			return err
		}
		_, err = ecs.NewEipAssociation(ctx, "defaultEipAssociation", &ecs.EipAssociationArgs{
			AllocationId: defaultEip.ID(),
			InstanceId:   defaultNatGateway.ID(),
		})
		if err != nil {
			return err
		}
		defaultForwardEntry, err := vpc.NewForwardEntry(ctx, "defaultForwardEntry", &vpc.ForwardEntryArgs{
			ExternalIp:     defaultEip.IpAddress,
			ExternalPort:   pulumi.String("80"),
			ForwardTableId: defaultNatGateway.ForwardTableIds,
			InternalIp:     pulumi.String("172.16.0.3"),
			InternalPort:   pulumi.String("8080"),
			IpProtocol:     pulumi.String("tcp"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetNatGatewaysArgs

type GetNatGatewaysArgs struct {
	// A list of NAT gateways IDs.
	Ids []string `pulumi:"ids"`
	// A regex string to filter nat gateways by name.
	NameRegex  *string `pulumi:"nameRegex"`
	OutputFile *string `pulumi:"outputFile"`
	// The ID of the VPC.
	VpcId *string `pulumi:"vpcId"`
}

A collection of arguments for invoking getNatGateways.

type GetNatGatewaysGateway

type GetNatGatewaysGateway struct {
	// Time of creation.
	CreationTime string `pulumi:"creationTime"`
	// The description of the NAT gateway.
	Description string `pulumi:"description"`
	// The forward table id.
	ForwardTableId string `pulumi:"forwardTableId"`
	// The ID of the NAT gateway.
	Id string `pulumi:"id"`
	// The ip address of the bind eip.
	IpLists []string `pulumi:"ipLists"`
	// Name of the NAT gateway.
	Name string `pulumi:"name"`
	// The snat table id.
	SnatTableId string `pulumi:"snatTableId"`
	// The specification of the NAT gateway.
	Spec string `pulumi:"spec"`
	// The status of the NAT gateway.
	Status string `pulumi:"status"`
	// The ID of the VPC.
	VpcId string `pulumi:"vpcId"`
}

type GetNatGatewaysGatewayArgs

type GetNatGatewaysGatewayArgs struct {
	// Time of creation.
	CreationTime pulumi.StringInput `pulumi:"creationTime"`
	// The description of the NAT gateway.
	Description pulumi.StringInput `pulumi:"description"`
	// The forward table id.
	ForwardTableId pulumi.StringInput `pulumi:"forwardTableId"`
	// The ID of the NAT gateway.
	Id pulumi.StringInput `pulumi:"id"`
	// The ip address of the bind eip.
	IpLists pulumi.StringArrayInput `pulumi:"ipLists"`
	// Name of the NAT gateway.
	Name pulumi.StringInput `pulumi:"name"`
	// The snat table id.
	SnatTableId pulumi.StringInput `pulumi:"snatTableId"`
	// The specification of the NAT gateway.
	Spec pulumi.StringInput `pulumi:"spec"`
	// The status of the NAT gateway.
	Status pulumi.StringInput `pulumi:"status"`
	// The ID of the VPC.
	VpcId pulumi.StringInput `pulumi:"vpcId"`
}

func (GetNatGatewaysGatewayArgs) ElementType

func (GetNatGatewaysGatewayArgs) ElementType() reflect.Type

func (GetNatGatewaysGatewayArgs) ToGetNatGatewaysGatewayOutput

func (i GetNatGatewaysGatewayArgs) ToGetNatGatewaysGatewayOutput() GetNatGatewaysGatewayOutput

func (GetNatGatewaysGatewayArgs) ToGetNatGatewaysGatewayOutputWithContext

func (i GetNatGatewaysGatewayArgs) ToGetNatGatewaysGatewayOutputWithContext(ctx context.Context) GetNatGatewaysGatewayOutput

type GetNatGatewaysGatewayArray

type GetNatGatewaysGatewayArray []GetNatGatewaysGatewayInput

func (GetNatGatewaysGatewayArray) ElementType

func (GetNatGatewaysGatewayArray) ElementType() reflect.Type

func (GetNatGatewaysGatewayArray) ToGetNatGatewaysGatewayArrayOutput

func (i GetNatGatewaysGatewayArray) ToGetNatGatewaysGatewayArrayOutput() GetNatGatewaysGatewayArrayOutput

func (GetNatGatewaysGatewayArray) ToGetNatGatewaysGatewayArrayOutputWithContext

func (i GetNatGatewaysGatewayArray) ToGetNatGatewaysGatewayArrayOutputWithContext(ctx context.Context) GetNatGatewaysGatewayArrayOutput

type GetNatGatewaysGatewayArrayInput

type GetNatGatewaysGatewayArrayInput interface {
	pulumi.Input

	ToGetNatGatewaysGatewayArrayOutput() GetNatGatewaysGatewayArrayOutput
	ToGetNatGatewaysGatewayArrayOutputWithContext(context.Context) GetNatGatewaysGatewayArrayOutput
}

GetNatGatewaysGatewayArrayInput is an input type that accepts GetNatGatewaysGatewayArray and GetNatGatewaysGatewayArrayOutput values. You can construct a concrete instance of `GetNatGatewaysGatewayArrayInput` via:

GetNatGatewaysGatewayArray{ GetNatGatewaysGatewayArgs{...} }

type GetNatGatewaysGatewayArrayOutput

type GetNatGatewaysGatewayArrayOutput struct{ *pulumi.OutputState }

func (GetNatGatewaysGatewayArrayOutput) ElementType

func (GetNatGatewaysGatewayArrayOutput) Index

func (GetNatGatewaysGatewayArrayOutput) ToGetNatGatewaysGatewayArrayOutput

func (o GetNatGatewaysGatewayArrayOutput) ToGetNatGatewaysGatewayArrayOutput() GetNatGatewaysGatewayArrayOutput

func (GetNatGatewaysGatewayArrayOutput) ToGetNatGatewaysGatewayArrayOutputWithContext

func (o GetNatGatewaysGatewayArrayOutput) ToGetNatGatewaysGatewayArrayOutputWithContext(ctx context.Context) GetNatGatewaysGatewayArrayOutput

type GetNatGatewaysGatewayInput

type GetNatGatewaysGatewayInput interface {
	pulumi.Input

	ToGetNatGatewaysGatewayOutput() GetNatGatewaysGatewayOutput
	ToGetNatGatewaysGatewayOutputWithContext(context.Context) GetNatGatewaysGatewayOutput
}

GetNatGatewaysGatewayInput is an input type that accepts GetNatGatewaysGatewayArgs and GetNatGatewaysGatewayOutput values. You can construct a concrete instance of `GetNatGatewaysGatewayInput` via:

GetNatGatewaysGatewayArgs{...}

type GetNatGatewaysGatewayOutput

type GetNatGatewaysGatewayOutput struct{ *pulumi.OutputState }

func (GetNatGatewaysGatewayOutput) CreationTime

Time of creation.

func (GetNatGatewaysGatewayOutput) Description

The description of the NAT gateway.

func (GetNatGatewaysGatewayOutput) ElementType

func (GetNatGatewaysGatewayOutput) ForwardTableId

func (o GetNatGatewaysGatewayOutput) ForwardTableId() pulumi.StringOutput

The forward table id.

func (GetNatGatewaysGatewayOutput) Id

The ID of the NAT gateway.

func (GetNatGatewaysGatewayOutput) IpLists added in v2.13.0

The ip address of the bind eip.

func (GetNatGatewaysGatewayOutput) Name

Name of the NAT gateway.

func (GetNatGatewaysGatewayOutput) SnatTableId

The snat table id.

func (GetNatGatewaysGatewayOutput) Spec

The specification of the NAT gateway.

func (GetNatGatewaysGatewayOutput) Status

The status of the NAT gateway.

func (GetNatGatewaysGatewayOutput) ToGetNatGatewaysGatewayOutput

func (o GetNatGatewaysGatewayOutput) ToGetNatGatewaysGatewayOutput() GetNatGatewaysGatewayOutput

func (GetNatGatewaysGatewayOutput) ToGetNatGatewaysGatewayOutputWithContext

func (o GetNatGatewaysGatewayOutput) ToGetNatGatewaysGatewayOutputWithContext(ctx context.Context) GetNatGatewaysGatewayOutput

func (GetNatGatewaysGatewayOutput) VpcId

The ID of the VPC.

type GetNatGatewaysResult

type GetNatGatewaysResult struct {
	// A list of Nat gateways. Each element contains the following attributes:
	Gateways []GetNatGatewaysGateway `pulumi:"gateways"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// (Optional) A list of Nat gateways IDs.
	Ids       []string `pulumi:"ids"`
	NameRegex *string  `pulumi:"nameRegex"`
	// A list of Nat gateways names.
	Names      []string `pulumi:"names"`
	OutputFile *string  `pulumi:"outputFile"`
	// The ID of the VPC.
	VpcId *string `pulumi:"vpcId"`
}

A collection of values returned by getNatGateways.

func GetNatGateways

func GetNatGateways(ctx *pulumi.Context, args *GetNatGatewaysArgs, opts ...pulumi.InvokeOption) (*GetNatGatewaysResult, error)

This data source provides a list of Nat Gateways owned by an Alibaba Cloud account.

> **NOTE:** Available in 1.37.0+.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud"
"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud/vpc"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		name := "natGatewaysDatasource"
		if param := cfg.Get("name"); param != "" {
			name = param
		}
		opt0 := "VSwitch"
		_, err := alicloud.GetZones(ctx, &alicloud.GetZonesArgs{
			AvailableResourceCreation: &opt0,
		}, nil)
		if err != nil {
			return err
		}
		fooNetwork, err := vpc.NewNetwork(ctx, "fooNetwork", &vpc.NetworkArgs{
			CidrBlock: pulumi.String("172.16.0.0/12"),
		})
		if err != nil {
			return err
		}
		fooNatGateway, err := vpc.NewNatGateway(ctx, "fooNatGateway", &vpc.NatGatewayArgs{
			Specification: pulumi.String("Small"),
			VpcId:         fooNetwork.ID(),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetNetworksArgs

type GetNetworksArgs struct {
	// Filter results by a specific CIDR block. For example: "172.16.0.0/12".
	CidrBlock *string `pulumi:"cidrBlock"`
	// A list of VPC IDs.
	Ids []string `pulumi:"ids"`
	// Indicate whether the VPC is the default one in the specified region.
	IsDefault *bool `pulumi:"isDefault"`
	// A regex string to filter VPCs by name.
	NameRegex  *string `pulumi:"nameRegex"`
	OutputFile *string `pulumi:"outputFile"`
	// The Id of resource group which VPC belongs.
	ResourceGroupId *string `pulumi:"resourceGroupId"`
	// Filter results by a specific status. Valid value are `Pending` and `Available`.
	Status *string `pulumi:"status"`
	// A mapping of tags to assign to the resource.
	Tags map[string]interface{} `pulumi:"tags"`
	// Filter results by the specified VSwitch.
	VswitchId *string `pulumi:"vswitchId"`
}

A collection of arguments for invoking getNetworks.

type GetNetworksResult

type GetNetworksResult struct {
	// CIDR block of the VPC.
	CidrBlock *string `pulumi:"cidrBlock"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// A list of VPC IDs.
	Ids []string `pulumi:"ids"`
	// Whether the VPC is the default VPC in the region.
	IsDefault *bool   `pulumi:"isDefault"`
	NameRegex *string `pulumi:"nameRegex"`
	// A list of VPC names.
	Names           []string `pulumi:"names"`
	OutputFile      *string  `pulumi:"outputFile"`
	ResourceGroupId *string  `pulumi:"resourceGroupId"`
	// Status of the VPC.
	Status *string `pulumi:"status"`
	// A map of tags assigned to the VPC.
	Tags map[string]interface{} `pulumi:"tags"`
	// A list of VPCs. Each element contains the following attributes:
	Vpcs      []GetNetworksVpc `pulumi:"vpcs"`
	VswitchId *string          `pulumi:"vswitchId"`
}

A collection of values returned by getNetworks.

func GetNetworks

func GetNetworks(ctx *pulumi.Context, args *GetNetworksArgs, opts ...pulumi.InvokeOption) (*GetNetworksResult, error)

This data source provides VPCs available to the user.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud/vpc"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		opt0 := "172.16.0.0/12"
		opt1 := "^foo"
		opt2 := "Available"
		vpcsDs, err := vpc.GetNetworks(ctx, &vpc.GetNetworksArgs{
			CidrBlock: &opt0,
			NameRegex: &opt1,
			Status:    &opt2,
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("firstVpcId", vpcsDs.Vpcs[0].Id)
		return nil
	})
}

```

type GetNetworksVpc

type GetNetworksVpc struct {
	// Filter results by a specific CIDR block. For example: "172.16.0.0/12".
	CidrBlock string `pulumi:"cidrBlock"`
	// Time of creation.
	CreationTime string `pulumi:"creationTime"`
	// Description of the VPC
	Description string `pulumi:"description"`
	// ID of the VPC.
	Id string `pulumi:"id"`
	// Indicate whether the VPC is the default one in the specified region.
	IsDefault bool `pulumi:"isDefault"`
	// ID of the region where the VPC is located.
	RegionId string `pulumi:"regionId"`
	// Route table ID of the VRouter.
	RouteTableId string `pulumi:"routeTableId"`
	// Filter results by a specific status. Valid value are `Pending` and `Available`.
	Status string `pulumi:"status"`
	// A mapping of tags to assign to the resource.
	Tags map[string]interface{} `pulumi:"tags"`
	// Name of the VPC.
	VpcName string `pulumi:"vpcName"`
	// ID of the VRouter.
	VrouterId string `pulumi:"vrouterId"`
	// List of VSwitch IDs in the specified VPC
	VswitchIds []string `pulumi:"vswitchIds"`
}

type GetNetworksVpcArgs

type GetNetworksVpcArgs struct {
	// Filter results by a specific CIDR block. For example: "172.16.0.0/12".
	CidrBlock pulumi.StringInput `pulumi:"cidrBlock"`
	// Time of creation.
	CreationTime pulumi.StringInput `pulumi:"creationTime"`
	// Description of the VPC
	Description pulumi.StringInput `pulumi:"description"`
	// ID of the VPC.
	Id pulumi.StringInput `pulumi:"id"`
	// Indicate whether the VPC is the default one in the specified region.
	IsDefault pulumi.BoolInput `pulumi:"isDefault"`
	// ID of the region where the VPC is located.
	RegionId pulumi.StringInput `pulumi:"regionId"`
	// Route table ID of the VRouter.
	RouteTableId pulumi.StringInput `pulumi:"routeTableId"`
	// Filter results by a specific status. Valid value are `Pending` and `Available`.
	Status pulumi.StringInput `pulumi:"status"`
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapInput `pulumi:"tags"`
	// Name of the VPC.
	VpcName pulumi.StringInput `pulumi:"vpcName"`
	// ID of the VRouter.
	VrouterId pulumi.StringInput `pulumi:"vrouterId"`
	// List of VSwitch IDs in the specified VPC
	VswitchIds pulumi.StringArrayInput `pulumi:"vswitchIds"`
}

func (GetNetworksVpcArgs) ElementType

func (GetNetworksVpcArgs) ElementType() reflect.Type

func (GetNetworksVpcArgs) ToGetNetworksVpcOutput

func (i GetNetworksVpcArgs) ToGetNetworksVpcOutput() GetNetworksVpcOutput

func (GetNetworksVpcArgs) ToGetNetworksVpcOutputWithContext

func (i GetNetworksVpcArgs) ToGetNetworksVpcOutputWithContext(ctx context.Context) GetNetworksVpcOutput

type GetNetworksVpcArray

type GetNetworksVpcArray []GetNetworksVpcInput

func (GetNetworksVpcArray) ElementType

func (GetNetworksVpcArray) ElementType() reflect.Type

func (GetNetworksVpcArray) ToGetNetworksVpcArrayOutput

func (i GetNetworksVpcArray) ToGetNetworksVpcArrayOutput() GetNetworksVpcArrayOutput

func (GetNetworksVpcArray) ToGetNetworksVpcArrayOutputWithContext

func (i GetNetworksVpcArray) ToGetNetworksVpcArrayOutputWithContext(ctx context.Context) GetNetworksVpcArrayOutput

type GetNetworksVpcArrayInput

type GetNetworksVpcArrayInput interface {
	pulumi.Input

	ToGetNetworksVpcArrayOutput() GetNetworksVpcArrayOutput
	ToGetNetworksVpcArrayOutputWithContext(context.Context) GetNetworksVpcArrayOutput
}

GetNetworksVpcArrayInput is an input type that accepts GetNetworksVpcArray and GetNetworksVpcArrayOutput values. You can construct a concrete instance of `GetNetworksVpcArrayInput` via:

GetNetworksVpcArray{ GetNetworksVpcArgs{...} }

type GetNetworksVpcArrayOutput

type GetNetworksVpcArrayOutput struct{ *pulumi.OutputState }

func (GetNetworksVpcArrayOutput) ElementType

func (GetNetworksVpcArrayOutput) ElementType() reflect.Type

func (GetNetworksVpcArrayOutput) Index

func (GetNetworksVpcArrayOutput) ToGetNetworksVpcArrayOutput

func (o GetNetworksVpcArrayOutput) ToGetNetworksVpcArrayOutput() GetNetworksVpcArrayOutput

func (GetNetworksVpcArrayOutput) ToGetNetworksVpcArrayOutputWithContext

func (o GetNetworksVpcArrayOutput) ToGetNetworksVpcArrayOutputWithContext(ctx context.Context) GetNetworksVpcArrayOutput

type GetNetworksVpcInput

type GetNetworksVpcInput interface {
	pulumi.Input

	ToGetNetworksVpcOutput() GetNetworksVpcOutput
	ToGetNetworksVpcOutputWithContext(context.Context) GetNetworksVpcOutput
}

GetNetworksVpcInput is an input type that accepts GetNetworksVpcArgs and GetNetworksVpcOutput values. You can construct a concrete instance of `GetNetworksVpcInput` via:

GetNetworksVpcArgs{...}

type GetNetworksVpcOutput

type GetNetworksVpcOutput struct{ *pulumi.OutputState }

func (GetNetworksVpcOutput) CidrBlock

Filter results by a specific CIDR block. For example: "172.16.0.0/12".

func (GetNetworksVpcOutput) CreationTime

func (o GetNetworksVpcOutput) CreationTime() pulumi.StringOutput

Time of creation.

func (GetNetworksVpcOutput) Description

func (o GetNetworksVpcOutput) Description() pulumi.StringOutput

Description of the VPC

func (GetNetworksVpcOutput) ElementType

func (GetNetworksVpcOutput) ElementType() reflect.Type

func (GetNetworksVpcOutput) Id

ID of the VPC.

func (GetNetworksVpcOutput) IsDefault

func (o GetNetworksVpcOutput) IsDefault() pulumi.BoolOutput

Indicate whether the VPC is the default one in the specified region.

func (GetNetworksVpcOutput) RegionId

ID of the region where the VPC is located.

func (GetNetworksVpcOutput) RouteTableId

func (o GetNetworksVpcOutput) RouteTableId() pulumi.StringOutput

Route table ID of the VRouter.

func (GetNetworksVpcOutput) Status

Filter results by a specific status. Valid value are `Pending` and `Available`.

func (GetNetworksVpcOutput) Tags

A mapping of tags to assign to the resource.

func (GetNetworksVpcOutput) ToGetNetworksVpcOutput

func (o GetNetworksVpcOutput) ToGetNetworksVpcOutput() GetNetworksVpcOutput

func (GetNetworksVpcOutput) ToGetNetworksVpcOutputWithContext

func (o GetNetworksVpcOutput) ToGetNetworksVpcOutputWithContext(ctx context.Context) GetNetworksVpcOutput

func (GetNetworksVpcOutput) VpcName

Name of the VPC.

func (GetNetworksVpcOutput) VrouterId

ID of the VRouter.

func (GetNetworksVpcOutput) VswitchIds

List of VSwitch IDs in the specified VPC

type GetRouteEntriesArgs

type GetRouteEntriesArgs struct {
	// The destination CIDR block of the route entry.
	CidrBlock *string `pulumi:"cidrBlock"`
	// The instance ID of the next hop.
	InstanceId *string `pulumi:"instanceId"`
	OutputFile *string `pulumi:"outputFile"`
	// The ID of the router table to which the route entry belongs.
	RouteTableId string `pulumi:"routeTableId"`
	// The type of the route entry.
	Type *string `pulumi:"type"`
}

A collection of arguments for invoking getRouteEntries.

type GetRouteEntriesEntry

type GetRouteEntriesEntry struct {
	// The destination CIDR block of the route entry.
	CidrBlock string `pulumi:"cidrBlock"`
	// The instance ID of the next hop.
	InstanceId string `pulumi:"instanceId"`
	// The type of the next hop.
	NextHopType string `pulumi:"nextHopType"`
	// The ID of the router table to which the route entry belongs.
	RouteTableId string `pulumi:"routeTableId"`
	// The status of the route entry.
	Status string `pulumi:"status"`
	// The type of the route entry.
	Type string `pulumi:"type"`
}

type GetRouteEntriesEntryArgs

type GetRouteEntriesEntryArgs struct {
	// The destination CIDR block of the route entry.
	CidrBlock pulumi.StringInput `pulumi:"cidrBlock"`
	// The instance ID of the next hop.
	InstanceId pulumi.StringInput `pulumi:"instanceId"`
	// The type of the next hop.
	NextHopType pulumi.StringInput `pulumi:"nextHopType"`
	// The ID of the router table to which the route entry belongs.
	RouteTableId pulumi.StringInput `pulumi:"routeTableId"`
	// The status of the route entry.
	Status pulumi.StringInput `pulumi:"status"`
	// The type of the route entry.
	Type pulumi.StringInput `pulumi:"type"`
}

func (GetRouteEntriesEntryArgs) ElementType

func (GetRouteEntriesEntryArgs) ElementType() reflect.Type

func (GetRouteEntriesEntryArgs) ToGetRouteEntriesEntryOutput

func (i GetRouteEntriesEntryArgs) ToGetRouteEntriesEntryOutput() GetRouteEntriesEntryOutput

func (GetRouteEntriesEntryArgs) ToGetRouteEntriesEntryOutputWithContext

func (i GetRouteEntriesEntryArgs) ToGetRouteEntriesEntryOutputWithContext(ctx context.Context) GetRouteEntriesEntryOutput

type GetRouteEntriesEntryArray

type GetRouteEntriesEntryArray []GetRouteEntriesEntryInput

func (GetRouteEntriesEntryArray) ElementType

func (GetRouteEntriesEntryArray) ElementType() reflect.Type

func (GetRouteEntriesEntryArray) ToGetRouteEntriesEntryArrayOutput

func (i GetRouteEntriesEntryArray) ToGetRouteEntriesEntryArrayOutput() GetRouteEntriesEntryArrayOutput

func (GetRouteEntriesEntryArray) ToGetRouteEntriesEntryArrayOutputWithContext

func (i GetRouteEntriesEntryArray) ToGetRouteEntriesEntryArrayOutputWithContext(ctx context.Context) GetRouteEntriesEntryArrayOutput

type GetRouteEntriesEntryArrayInput

type GetRouteEntriesEntryArrayInput interface {
	pulumi.Input

	ToGetRouteEntriesEntryArrayOutput() GetRouteEntriesEntryArrayOutput
	ToGetRouteEntriesEntryArrayOutputWithContext(context.Context) GetRouteEntriesEntryArrayOutput
}

GetRouteEntriesEntryArrayInput is an input type that accepts GetRouteEntriesEntryArray and GetRouteEntriesEntryArrayOutput values. You can construct a concrete instance of `GetRouteEntriesEntryArrayInput` via:

GetRouteEntriesEntryArray{ GetRouteEntriesEntryArgs{...} }

type GetRouteEntriesEntryArrayOutput

type GetRouteEntriesEntryArrayOutput struct{ *pulumi.OutputState }

func (GetRouteEntriesEntryArrayOutput) ElementType

func (GetRouteEntriesEntryArrayOutput) Index

func (GetRouteEntriesEntryArrayOutput) ToGetRouteEntriesEntryArrayOutput

func (o GetRouteEntriesEntryArrayOutput) ToGetRouteEntriesEntryArrayOutput() GetRouteEntriesEntryArrayOutput

func (GetRouteEntriesEntryArrayOutput) ToGetRouteEntriesEntryArrayOutputWithContext

func (o GetRouteEntriesEntryArrayOutput) ToGetRouteEntriesEntryArrayOutputWithContext(ctx context.Context) GetRouteEntriesEntryArrayOutput

type GetRouteEntriesEntryInput

type GetRouteEntriesEntryInput interface {
	pulumi.Input

	ToGetRouteEntriesEntryOutput() GetRouteEntriesEntryOutput
	ToGetRouteEntriesEntryOutputWithContext(context.Context) GetRouteEntriesEntryOutput
}

GetRouteEntriesEntryInput is an input type that accepts GetRouteEntriesEntryArgs and GetRouteEntriesEntryOutput values. You can construct a concrete instance of `GetRouteEntriesEntryInput` via:

GetRouteEntriesEntryArgs{...}

type GetRouteEntriesEntryOutput

type GetRouteEntriesEntryOutput struct{ *pulumi.OutputState }

func (GetRouteEntriesEntryOutput) CidrBlock

The destination CIDR block of the route entry.

func (GetRouteEntriesEntryOutput) ElementType

func (GetRouteEntriesEntryOutput) ElementType() reflect.Type

func (GetRouteEntriesEntryOutput) InstanceId

The instance ID of the next hop.

func (GetRouteEntriesEntryOutput) NextHopType

The type of the next hop.

func (GetRouteEntriesEntryOutput) RouteTableId

The ID of the router table to which the route entry belongs.

func (GetRouteEntriesEntryOutput) Status

The status of the route entry.

func (GetRouteEntriesEntryOutput) ToGetRouteEntriesEntryOutput

func (o GetRouteEntriesEntryOutput) ToGetRouteEntriesEntryOutput() GetRouteEntriesEntryOutput

func (GetRouteEntriesEntryOutput) ToGetRouteEntriesEntryOutputWithContext

func (o GetRouteEntriesEntryOutput) ToGetRouteEntriesEntryOutputWithContext(ctx context.Context) GetRouteEntriesEntryOutput

func (GetRouteEntriesEntryOutput) Type

The type of the route entry.

type GetRouteEntriesResult

type GetRouteEntriesResult struct {
	// The destination CIDR block of the route entry.
	CidrBlock *string `pulumi:"cidrBlock"`
	// A list of Route Entries. Each element contains the following attributes:
	Entries []GetRouteEntriesEntry `pulumi:"entries"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// The instance ID of the next hop.
	InstanceId *string `pulumi:"instanceId"`
	OutputFile *string `pulumi:"outputFile"`
	// The ID of the router table to which the route entry belongs.
	RouteTableId string `pulumi:"routeTableId"`
	// The type of the route entry.
	Type *string `pulumi:"type"`
}

A collection of values returned by getRouteEntries.

func GetRouteEntries

func GetRouteEntries(ctx *pulumi.Context, args *GetRouteEntriesArgs, opts ...pulumi.InvokeOption) (*GetRouteEntriesResult, error)

This data source provides a list of Route Entries owned by an Alibaba Cloud account.

> **NOTE:** Available in 1.37.0+.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud"
"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud/ecs"
"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud/vpc"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		opt0 := "VSwitch"
		defaultZones, err := alicloud.GetZones(ctx, &alicloud.GetZonesArgs{
			AvailableResourceCreation: &opt0,
		}, nil)
		if err != nil {
			return err
		}
		opt1 := defaultZones.Zones[0].Id
		opt2 := 1
		opt3 := 2
		defaultInstanceTypes, err := ecs.GetInstanceTypes(ctx, &ecs.GetInstanceTypesArgs{
			AvailabilityZone: &opt1,
			CpuCoreCount:     &opt2,
			MemorySize:       &opt3,
		}, nil)
		if err != nil {
			return err
		}
		opt4 := true
		opt5 := "^ubuntu_18.*64"
		opt6 := "system"
		defaultImages, err := ecs.GetImages(ctx, &ecs.GetImagesArgs{
			MostRecent: &opt4,
			NameRegex:  &opt5,
			Owners:     &opt6,
		}, nil)
		if err != nil {
			return err
		}
		cfg := config.New(ctx, "")
		name := "tf-testAccRouteEntryConfig"
		if param := cfg.Get("name"); param != "" {
			name = param
		}
		fooNetwork, err := vpc.NewNetwork(ctx, "fooNetwork", &vpc.NetworkArgs{
			CidrBlock: pulumi.String("10.1.0.0/21"),
		})
		if err != nil {
			return err
		}
		fooSwitch, err := vpc.NewSwitch(ctx, "fooSwitch", &vpc.SwitchArgs{
			AvailabilityZone: pulumi.String(defaultZones.Zones[0].Id),
			CidrBlock:        pulumi.String("10.1.1.0/24"),
			VpcId:            fooNetwork.ID(),
		})
		if err != nil {
			return err
		}
		tfTestFoo, err := ecs.NewSecurityGroup(ctx, "tfTestFoo", &ecs.SecurityGroupArgs{
			Description: pulumi.String("foo"),
			VpcId:       fooNetwork.ID(),
		})
		if err != nil {
			return err
		}
		fooInstance, err := ecs.NewInstance(ctx, "fooInstance", &ecs.InstanceArgs{
			AllocatePublicIp:        pulumi.Bool(true),
			ImageId:                 pulumi.String(defaultImages.Images[0].Id),
			InstanceChargeType:      pulumi.String("PostPaid"),
			InstanceName:            pulumi.String(name),
			InstanceType:            pulumi.String(defaultInstanceTypes.InstanceTypes[0].Id),
			InternetChargeType:      pulumi.String("PayByTraffic"),
			InternetMaxBandwidthOut: pulumi.Int(5),
			SecurityGroups: pulumi.StringArray{
				tfTestFoo.ID(),
			},
			SystemDiskCategory: pulumi.String("cloud_efficiency"),
			VswitchId:          fooSwitch.ID(),
		})
		if err != nil {
			return err
		}
		fooRouteEntry, err := vpc.NewRouteEntry(ctx, "fooRouteEntry", &vpc.RouteEntryArgs{
			DestinationCidrblock: pulumi.String("172.11.1.1/32"),
			NexthopId:            fooInstance.ID(),
			NexthopType:          pulumi.String("Instance"),
			RouteTableId:         fooNetwork.RouteTableId,
		})
		if err != nil {
			return err
		}
		_, err = ecs.NewSecurityGroupRule(ctx, "ingress", &ecs.SecurityGroupRuleArgs{
			CidrIp:          pulumi.String("0.0.0.0/0"),
			IpProtocol:      pulumi.String("tcp"),
			NicType:         pulumi.String("intranet"),
			Policy:          pulumi.String("accept"),
			PortRange:       pulumi.String("22/22"),
			Priority:        pulumi.Int(1),
			SecurityGroupId: tfTestFoo.ID(),
			Type:            pulumi.String("ingress"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetRouteTablesArgs

type GetRouteTablesArgs struct {
	// A list of Route Tables IDs.
	Ids []string `pulumi:"ids"`
	// A regex string to filter route tables by name.
	NameRegex  *string `pulumi:"nameRegex"`
	OutputFile *string `pulumi:"outputFile"`
	// The Id of resource group which route tables belongs.
	ResourceGroupId *string `pulumi:"resourceGroupId"`
	// A mapping of tags to assign to the resource.
	Tags map[string]interface{} `pulumi:"tags"`
	// Vpc id of the route table.
	VpcId *string `pulumi:"vpcId"`
}

A collection of arguments for invoking getRouteTables.

type GetRouteTablesResult

type GetRouteTablesResult struct {
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// (Optional) A list of Route Tables IDs.
	Ids       []string `pulumi:"ids"`
	NameRegex *string  `pulumi:"nameRegex"`
	// A list of Route Tables names.
	Names      []string `pulumi:"names"`
	OutputFile *string  `pulumi:"outputFile"`
	// The Id of resource group which route tables belongs.
	ResourceGroupId *string `pulumi:"resourceGroupId"`
	// A list of Route Tables. Each element contains the following attributes:
	Tables []GetRouteTablesTable  `pulumi:"tables"`
	Tags   map[string]interface{} `pulumi:"tags"`
	VpcId  *string                `pulumi:"vpcId"`
}

A collection of values returned by getRouteTables.

func GetRouteTables

func GetRouteTables(ctx *pulumi.Context, args *GetRouteTablesArgs, opts ...pulumi.InvokeOption) (*GetRouteTablesResult, error)

This data source provides a list of Route Tables owned by an Alibaba Cloud account.

> **NOTE:** Available in 1.36.0+.

type GetRouteTablesTable

type GetRouteTablesTable struct {
	// Time of creation.
	CreationTime string `pulumi:"creationTime"`
	// The description of the route table instance.
	Description string `pulumi:"description"`
	// ID of the Route Table.
	Id string `pulumi:"id"`
	// Name of the route table.
	Name string `pulumi:"name"`
	// The type of route table.
	RouteTableType string `pulumi:"routeTableType"`
	// Router Id of the route table.
	RouterId string `pulumi:"routerId"`
}

type GetRouteTablesTableArgs

type GetRouteTablesTableArgs struct {
	// Time of creation.
	CreationTime pulumi.StringInput `pulumi:"creationTime"`
	// The description of the route table instance.
	Description pulumi.StringInput `pulumi:"description"`
	// ID of the Route Table.
	Id pulumi.StringInput `pulumi:"id"`
	// Name of the route table.
	Name pulumi.StringInput `pulumi:"name"`
	// The type of route table.
	RouteTableType pulumi.StringInput `pulumi:"routeTableType"`
	// Router Id of the route table.
	RouterId pulumi.StringInput `pulumi:"routerId"`
}

func (GetRouteTablesTableArgs) ElementType

func (GetRouteTablesTableArgs) ElementType() reflect.Type

func (GetRouteTablesTableArgs) ToGetRouteTablesTableOutput

func (i GetRouteTablesTableArgs) ToGetRouteTablesTableOutput() GetRouteTablesTableOutput

func (GetRouteTablesTableArgs) ToGetRouteTablesTableOutputWithContext

func (i GetRouteTablesTableArgs) ToGetRouteTablesTableOutputWithContext(ctx context.Context) GetRouteTablesTableOutput

type GetRouteTablesTableArray

type GetRouteTablesTableArray []GetRouteTablesTableInput

func (GetRouteTablesTableArray) ElementType

func (GetRouteTablesTableArray) ElementType() reflect.Type

func (GetRouteTablesTableArray) ToGetRouteTablesTableArrayOutput

func (i GetRouteTablesTableArray) ToGetRouteTablesTableArrayOutput() GetRouteTablesTableArrayOutput

func (GetRouteTablesTableArray) ToGetRouteTablesTableArrayOutputWithContext

func (i GetRouteTablesTableArray) ToGetRouteTablesTableArrayOutputWithContext(ctx context.Context) GetRouteTablesTableArrayOutput

type GetRouteTablesTableArrayInput

type GetRouteTablesTableArrayInput interface {
	pulumi.Input

	ToGetRouteTablesTableArrayOutput() GetRouteTablesTableArrayOutput
	ToGetRouteTablesTableArrayOutputWithContext(context.Context) GetRouteTablesTableArrayOutput
}

GetRouteTablesTableArrayInput is an input type that accepts GetRouteTablesTableArray and GetRouteTablesTableArrayOutput values. You can construct a concrete instance of `GetRouteTablesTableArrayInput` via:

GetRouteTablesTableArray{ GetRouteTablesTableArgs{...} }

type GetRouteTablesTableArrayOutput

type GetRouteTablesTableArrayOutput struct{ *pulumi.OutputState }

func (GetRouteTablesTableArrayOutput) ElementType

func (GetRouteTablesTableArrayOutput) Index

func (GetRouteTablesTableArrayOutput) ToGetRouteTablesTableArrayOutput

func (o GetRouteTablesTableArrayOutput) ToGetRouteTablesTableArrayOutput() GetRouteTablesTableArrayOutput

func (GetRouteTablesTableArrayOutput) ToGetRouteTablesTableArrayOutputWithContext

func (o GetRouteTablesTableArrayOutput) ToGetRouteTablesTableArrayOutputWithContext(ctx context.Context) GetRouteTablesTableArrayOutput

type GetRouteTablesTableInput

type GetRouteTablesTableInput interface {
	pulumi.Input

	ToGetRouteTablesTableOutput() GetRouteTablesTableOutput
	ToGetRouteTablesTableOutputWithContext(context.Context) GetRouteTablesTableOutput
}

GetRouteTablesTableInput is an input type that accepts GetRouteTablesTableArgs and GetRouteTablesTableOutput values. You can construct a concrete instance of `GetRouteTablesTableInput` via:

GetRouteTablesTableArgs{...}

type GetRouteTablesTableOutput

type GetRouteTablesTableOutput struct{ *pulumi.OutputState }

func (GetRouteTablesTableOutput) CreationTime

Time of creation.

func (GetRouteTablesTableOutput) Description

The description of the route table instance.

func (GetRouteTablesTableOutput) ElementType

func (GetRouteTablesTableOutput) ElementType() reflect.Type

func (GetRouteTablesTableOutput) Id

ID of the Route Table.

func (GetRouteTablesTableOutput) Name

Name of the route table.

func (GetRouteTablesTableOutput) RouteTableType

func (o GetRouteTablesTableOutput) RouteTableType() pulumi.StringOutput

The type of route table.

func (GetRouteTablesTableOutput) RouterId

Router Id of the route table.

func (GetRouteTablesTableOutput) ToGetRouteTablesTableOutput

func (o GetRouteTablesTableOutput) ToGetRouteTablesTableOutput() GetRouteTablesTableOutput

func (GetRouteTablesTableOutput) ToGetRouteTablesTableOutputWithContext

func (o GetRouteTablesTableOutput) ToGetRouteTablesTableOutputWithContext(ctx context.Context) GetRouteTablesTableOutput

type GetRouterInterfacesArgs

type GetRouterInterfacesArgs struct {
	// A list of router interface IDs.
	Ids []string `pulumi:"ids"`
	// A regex string used to filter by router interface name.
	NameRegex *string `pulumi:"nameRegex"`
	// ID of the peer router interface.
	OppositeInterfaceId *string `pulumi:"oppositeInterfaceId"`
	// Account ID of the owner of the peer router interface.
	OppositeInterfaceOwnerId *string `pulumi:"oppositeInterfaceOwnerId"`
	OutputFile               *string `pulumi:"outputFile"`
	// Role of the router interface. Valid values are `InitiatingSide` (connection initiator) and
	// `AcceptingSide` (connection receiver). The value of this parameter must be `InitiatingSide` if the `routerType` is set to `VBR`.
	Role *string `pulumi:"role"`
	// ID of the VRouter located in the local region.
	RouterId *string `pulumi:"routerId"`
	// Router type in the local region. Valid values are `VRouter` and `VBR` (physical connection).
	RouterType *string `pulumi:"routerType"`
	// Specification of the link, such as `Small.1` (10Mb), `Middle.1` (100Mb), `Large.2` (2Gb), ...etc.
	Specification *string `pulumi:"specification"`
	// Expected status. Valid values are `Active`, `Inactive` and `Idle`.
	Status *string `pulumi:"status"`
}

A collection of arguments for invoking getRouterInterfaces.

type GetRouterInterfacesInterface

type GetRouterInterfacesInterface struct {
	// ID of the access point used by the VBR.
	AccessPointId string `pulumi:"accessPointId"`
	// Router interface creation time.
	CreationTime string `pulumi:"creationTime"`
	// Router interface description.
	Description string `pulumi:"description"`
	// Source IP address used to perform health check on the physical connection.
	HealthCheckSourceIp string `pulumi:"healthCheckSourceIp"`
	// Destination IP address used to perform health check on the physical connection.
	HealthCheckTargetIp string `pulumi:"healthCheckTargetIp"`
	// Router interface ID.
	Id string `pulumi:"id"`
	// Router interface name.
	Name string `pulumi:"name"`
	// ID of the peer router interface.
	OppositeInterfaceId string `pulumi:"oppositeInterfaceId"`
	// Account ID of the owner of the peer router interface.
	OppositeInterfaceOwnerId string `pulumi:"oppositeInterfaceOwnerId"`
	// Peer router region ID.
	OppositeRegionId string `pulumi:"oppositeRegionId"`
	// Peer router ID.
	OppositeRouterId string `pulumi:"oppositeRouterId"`
	// Router type in the peer region. Possible values: `VRouter` and `VBR`.
	OppositeRouterType string `pulumi:"oppositeRouterType"`
	// Role of the router interface. Valid values are `InitiatingSide` (connection initiator) and
	// `AcceptingSide` (connection receiver). The value of this parameter must be `InitiatingSide` if the `routerType` is set to `VBR`.
	Role string `pulumi:"role"`
	// ID of the VRouter located in the local region.
	RouterId string `pulumi:"routerId"`
	// Router type in the local region. Valid values are `VRouter` and `VBR` (physical connection).
	RouterType string `pulumi:"routerType"`
	// Specification of the link, such as `Small.1` (10Mb), `Middle.1` (100Mb), `Large.2` (2Gb), ...etc.
	Specification string `pulumi:"specification"`
	// Expected status. Valid values are `Active`, `Inactive` and `Idle`.
	Status string `pulumi:"status"`
	// ID of the VPC that owns the router in the local region.
	VpcId string `pulumi:"vpcId"`
}

type GetRouterInterfacesInterfaceArgs

type GetRouterInterfacesInterfaceArgs struct {
	// ID of the access point used by the VBR.
	AccessPointId pulumi.StringInput `pulumi:"accessPointId"`
	// Router interface creation time.
	CreationTime pulumi.StringInput `pulumi:"creationTime"`
	// Router interface description.
	Description pulumi.StringInput `pulumi:"description"`
	// Source IP address used to perform health check on the physical connection.
	HealthCheckSourceIp pulumi.StringInput `pulumi:"healthCheckSourceIp"`
	// Destination IP address used to perform health check on the physical connection.
	HealthCheckTargetIp pulumi.StringInput `pulumi:"healthCheckTargetIp"`
	// Router interface ID.
	Id pulumi.StringInput `pulumi:"id"`
	// Router interface name.
	Name pulumi.StringInput `pulumi:"name"`
	// ID of the peer router interface.
	OppositeInterfaceId pulumi.StringInput `pulumi:"oppositeInterfaceId"`
	// Account ID of the owner of the peer router interface.
	OppositeInterfaceOwnerId pulumi.StringInput `pulumi:"oppositeInterfaceOwnerId"`
	// Peer router region ID.
	OppositeRegionId pulumi.StringInput `pulumi:"oppositeRegionId"`
	// Peer router ID.
	OppositeRouterId pulumi.StringInput `pulumi:"oppositeRouterId"`
	// Router type in the peer region. Possible values: `VRouter` and `VBR`.
	OppositeRouterType pulumi.StringInput `pulumi:"oppositeRouterType"`
	// Role of the router interface. Valid values are `InitiatingSide` (connection initiator) and
	// `AcceptingSide` (connection receiver). The value of this parameter must be `InitiatingSide` if the `routerType` is set to `VBR`.
	Role pulumi.StringInput `pulumi:"role"`
	// ID of the VRouter located in the local region.
	RouterId pulumi.StringInput `pulumi:"routerId"`
	// Router type in the local region. Valid values are `VRouter` and `VBR` (physical connection).
	RouterType pulumi.StringInput `pulumi:"routerType"`
	// Specification of the link, such as `Small.1` (10Mb), `Middle.1` (100Mb), `Large.2` (2Gb), ...etc.
	Specification pulumi.StringInput `pulumi:"specification"`
	// Expected status. Valid values are `Active`, `Inactive` and `Idle`.
	Status pulumi.StringInput `pulumi:"status"`
	// ID of the VPC that owns the router in the local region.
	VpcId pulumi.StringInput `pulumi:"vpcId"`
}

func (GetRouterInterfacesInterfaceArgs) ElementType

func (GetRouterInterfacesInterfaceArgs) ToGetRouterInterfacesInterfaceOutput

func (i GetRouterInterfacesInterfaceArgs) ToGetRouterInterfacesInterfaceOutput() GetRouterInterfacesInterfaceOutput

func (GetRouterInterfacesInterfaceArgs) ToGetRouterInterfacesInterfaceOutputWithContext

func (i GetRouterInterfacesInterfaceArgs) ToGetRouterInterfacesInterfaceOutputWithContext(ctx context.Context) GetRouterInterfacesInterfaceOutput

type GetRouterInterfacesInterfaceArray

type GetRouterInterfacesInterfaceArray []GetRouterInterfacesInterfaceInput

func (GetRouterInterfacesInterfaceArray) ElementType

func (GetRouterInterfacesInterfaceArray) ToGetRouterInterfacesInterfaceArrayOutput

func (i GetRouterInterfacesInterfaceArray) ToGetRouterInterfacesInterfaceArrayOutput() GetRouterInterfacesInterfaceArrayOutput

func (GetRouterInterfacesInterfaceArray) ToGetRouterInterfacesInterfaceArrayOutputWithContext

func (i GetRouterInterfacesInterfaceArray) ToGetRouterInterfacesInterfaceArrayOutputWithContext(ctx context.Context) GetRouterInterfacesInterfaceArrayOutput

type GetRouterInterfacesInterfaceArrayInput

type GetRouterInterfacesInterfaceArrayInput interface {
	pulumi.Input

	ToGetRouterInterfacesInterfaceArrayOutput() GetRouterInterfacesInterfaceArrayOutput
	ToGetRouterInterfacesInterfaceArrayOutputWithContext(context.Context) GetRouterInterfacesInterfaceArrayOutput
}

GetRouterInterfacesInterfaceArrayInput is an input type that accepts GetRouterInterfacesInterfaceArray and GetRouterInterfacesInterfaceArrayOutput values. You can construct a concrete instance of `GetRouterInterfacesInterfaceArrayInput` via:

GetRouterInterfacesInterfaceArray{ GetRouterInterfacesInterfaceArgs{...} }

type GetRouterInterfacesInterfaceArrayOutput

type GetRouterInterfacesInterfaceArrayOutput struct{ *pulumi.OutputState }

func (GetRouterInterfacesInterfaceArrayOutput) ElementType

func (GetRouterInterfacesInterfaceArrayOutput) Index

func (GetRouterInterfacesInterfaceArrayOutput) ToGetRouterInterfacesInterfaceArrayOutput

func (o GetRouterInterfacesInterfaceArrayOutput) ToGetRouterInterfacesInterfaceArrayOutput() GetRouterInterfacesInterfaceArrayOutput

func (GetRouterInterfacesInterfaceArrayOutput) ToGetRouterInterfacesInterfaceArrayOutputWithContext

func (o GetRouterInterfacesInterfaceArrayOutput) ToGetRouterInterfacesInterfaceArrayOutputWithContext(ctx context.Context) GetRouterInterfacesInterfaceArrayOutput

type GetRouterInterfacesInterfaceInput

type GetRouterInterfacesInterfaceInput interface {
	pulumi.Input

	ToGetRouterInterfacesInterfaceOutput() GetRouterInterfacesInterfaceOutput
	ToGetRouterInterfacesInterfaceOutputWithContext(context.Context) GetRouterInterfacesInterfaceOutput
}

GetRouterInterfacesInterfaceInput is an input type that accepts GetRouterInterfacesInterfaceArgs and GetRouterInterfacesInterfaceOutput values. You can construct a concrete instance of `GetRouterInterfacesInterfaceInput` via:

GetRouterInterfacesInterfaceArgs{...}

type GetRouterInterfacesInterfaceOutput

type GetRouterInterfacesInterfaceOutput struct{ *pulumi.OutputState }

func (GetRouterInterfacesInterfaceOutput) AccessPointId

ID of the access point used by the VBR.

func (GetRouterInterfacesInterfaceOutput) CreationTime

Router interface creation time.

func (GetRouterInterfacesInterfaceOutput) Description

Router interface description.

func (GetRouterInterfacesInterfaceOutput) ElementType

func (GetRouterInterfacesInterfaceOutput) HealthCheckSourceIp

func (o GetRouterInterfacesInterfaceOutput) HealthCheckSourceIp() pulumi.StringOutput

Source IP address used to perform health check on the physical connection.

func (GetRouterInterfacesInterfaceOutput) HealthCheckTargetIp

func (o GetRouterInterfacesInterfaceOutput) HealthCheckTargetIp() pulumi.StringOutput

Destination IP address used to perform health check on the physical connection.

func (GetRouterInterfacesInterfaceOutput) Id

Router interface ID.

func (GetRouterInterfacesInterfaceOutput) Name

Router interface name.

func (GetRouterInterfacesInterfaceOutput) OppositeInterfaceId

func (o GetRouterInterfacesInterfaceOutput) OppositeInterfaceId() pulumi.StringOutput

ID of the peer router interface.

func (GetRouterInterfacesInterfaceOutput) OppositeInterfaceOwnerId

func (o GetRouterInterfacesInterfaceOutput) OppositeInterfaceOwnerId() pulumi.StringOutput

Account ID of the owner of the peer router interface.

func (GetRouterInterfacesInterfaceOutput) OppositeRegionId

Peer router region ID.

func (GetRouterInterfacesInterfaceOutput) OppositeRouterId

Peer router ID.

func (GetRouterInterfacesInterfaceOutput) OppositeRouterType

Router type in the peer region. Possible values: `VRouter` and `VBR`.

func (GetRouterInterfacesInterfaceOutput) Role

Role of the router interface. Valid values are `InitiatingSide` (connection initiator) and `AcceptingSide` (connection receiver). The value of this parameter must be `InitiatingSide` if the `routerType` is set to `VBR`.

func (GetRouterInterfacesInterfaceOutput) RouterId

ID of the VRouter located in the local region.

func (GetRouterInterfacesInterfaceOutput) RouterType

Router type in the local region. Valid values are `VRouter` and `VBR` (physical connection).

func (GetRouterInterfacesInterfaceOutput) Specification

Specification of the link, such as `Small.1` (10Mb), `Middle.1` (100Mb), `Large.2` (2Gb), ...etc.

func (GetRouterInterfacesInterfaceOutput) Status

Expected status. Valid values are `Active`, `Inactive` and `Idle`.

func (GetRouterInterfacesInterfaceOutput) ToGetRouterInterfacesInterfaceOutput

func (o GetRouterInterfacesInterfaceOutput) ToGetRouterInterfacesInterfaceOutput() GetRouterInterfacesInterfaceOutput

func (GetRouterInterfacesInterfaceOutput) ToGetRouterInterfacesInterfaceOutputWithContext

func (o GetRouterInterfacesInterfaceOutput) ToGetRouterInterfacesInterfaceOutputWithContext(ctx context.Context) GetRouterInterfacesInterfaceOutput

func (GetRouterInterfacesInterfaceOutput) VpcId

ID of the VPC that owns the router in the local region.

type GetRouterInterfacesResult

type GetRouterInterfacesResult struct {
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// A list of router interface IDs.
	Ids []string `pulumi:"ids"`
	// A list of router interfaces. Each element contains the following attributes:
	Interfaces []GetRouterInterfacesInterface `pulumi:"interfaces"`
	NameRegex  *string                        `pulumi:"nameRegex"`
	// A list of router interface names.
	Names []string `pulumi:"names"`
	// Peer router interface ID.
	OppositeInterfaceId *string `pulumi:"oppositeInterfaceId"`
	// Account ID of the owner of the peer router interface.
	OppositeInterfaceOwnerId *string `pulumi:"oppositeInterfaceOwnerId"`
	OutputFile               *string `pulumi:"outputFile"`
	// Router interface role. Possible values: `InitiatingSide` and `AcceptingSide`.
	Role *string `pulumi:"role"`
	// ID of the VRouter located in the local region.
	RouterId *string `pulumi:"routerId"`
	// Router type in the local region. Possible values: `VRouter` and `VBR`.
	RouterType *string `pulumi:"routerType"`
	// Router interface specification. Possible values: `Small.1`, `Middle.1`, `Large.2`, ...etc.
	Specification *string `pulumi:"specification"`
	// Router interface status. Possible values: `Active`, `Inactive` and `Idle`.
	Status *string `pulumi:"status"`
}

A collection of values returned by getRouterInterfaces.

func GetRouterInterfaces

func GetRouterInterfaces(ctx *pulumi.Context, args *GetRouterInterfacesArgs, opts ...pulumi.InvokeOption) (*GetRouterInterfacesResult, error)

This data source provides information about [router interfaces](https://www.alibabacloud.com/help/doc-detail/52412.htm) that connect VPCs together.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud/vpc"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		opt0 := "^testenv"
		opt1 := "Active"
		routerInterfacesDs, err := vpc.GetRouterInterfaces(ctx, &vpc.GetRouterInterfacesArgs{
			NameRegex: &opt0,
			Status:    &opt1,
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("firstRouterInterfaceId", routerInterfacesDs.Interfaces[0].Id)
		return nil
	})
}

```

type GetSnatEntriesArgs

type GetSnatEntriesArgs struct {
	// A list of Snat Entries IDs.
	Ids        []string `pulumi:"ids"`
	OutputFile *string  `pulumi:"outputFile"`
	// The public IP of the Snat Entry.
	SnatIp *string `pulumi:"snatIp"`
	// The ID of the Snat table.
	SnatTableId string `pulumi:"snatTableId"`
	// The source CIDR block of the Snat Entry.
	SourceCidr *string `pulumi:"sourceCidr"`
}

A collection of arguments for invoking getSnatEntries.

type GetSnatEntriesEntry

type GetSnatEntriesEntry struct {
	// The ID of the Snat Entry.
	Id string `pulumi:"id"`
	// The public IP of the Snat Entry.
	SnatIp string `pulumi:"snatIp"`
	// The source CIDR block of the Snat Entry.
	SourceCidr string `pulumi:"sourceCidr"`
	// The status of the Snat Entry.
	Status string `pulumi:"status"`
}

type GetSnatEntriesEntryArgs

type GetSnatEntriesEntryArgs struct {
	// The ID of the Snat Entry.
	Id pulumi.StringInput `pulumi:"id"`
	// The public IP of the Snat Entry.
	SnatIp pulumi.StringInput `pulumi:"snatIp"`
	// The source CIDR block of the Snat Entry.
	SourceCidr pulumi.StringInput `pulumi:"sourceCidr"`
	// The status of the Snat Entry.
	Status pulumi.StringInput `pulumi:"status"`
}

func (GetSnatEntriesEntryArgs) ElementType

func (GetSnatEntriesEntryArgs) ElementType() reflect.Type

func (GetSnatEntriesEntryArgs) ToGetSnatEntriesEntryOutput

func (i GetSnatEntriesEntryArgs) ToGetSnatEntriesEntryOutput() GetSnatEntriesEntryOutput

func (GetSnatEntriesEntryArgs) ToGetSnatEntriesEntryOutputWithContext

func (i GetSnatEntriesEntryArgs) ToGetSnatEntriesEntryOutputWithContext(ctx context.Context) GetSnatEntriesEntryOutput

type GetSnatEntriesEntryArray

type GetSnatEntriesEntryArray []GetSnatEntriesEntryInput

func (GetSnatEntriesEntryArray) ElementType

func (GetSnatEntriesEntryArray) ElementType() reflect.Type

func (GetSnatEntriesEntryArray) ToGetSnatEntriesEntryArrayOutput

func (i GetSnatEntriesEntryArray) ToGetSnatEntriesEntryArrayOutput() GetSnatEntriesEntryArrayOutput

func (GetSnatEntriesEntryArray) ToGetSnatEntriesEntryArrayOutputWithContext

func (i GetSnatEntriesEntryArray) ToGetSnatEntriesEntryArrayOutputWithContext(ctx context.Context) GetSnatEntriesEntryArrayOutput

type GetSnatEntriesEntryArrayInput

type GetSnatEntriesEntryArrayInput interface {
	pulumi.Input

	ToGetSnatEntriesEntryArrayOutput() GetSnatEntriesEntryArrayOutput
	ToGetSnatEntriesEntryArrayOutputWithContext(context.Context) GetSnatEntriesEntryArrayOutput
}

GetSnatEntriesEntryArrayInput is an input type that accepts GetSnatEntriesEntryArray and GetSnatEntriesEntryArrayOutput values. You can construct a concrete instance of `GetSnatEntriesEntryArrayInput` via:

GetSnatEntriesEntryArray{ GetSnatEntriesEntryArgs{...} }

type GetSnatEntriesEntryArrayOutput

type GetSnatEntriesEntryArrayOutput struct{ *pulumi.OutputState }

func (GetSnatEntriesEntryArrayOutput) ElementType

func (GetSnatEntriesEntryArrayOutput) Index

func (GetSnatEntriesEntryArrayOutput) ToGetSnatEntriesEntryArrayOutput

func (o GetSnatEntriesEntryArrayOutput) ToGetSnatEntriesEntryArrayOutput() GetSnatEntriesEntryArrayOutput

func (GetSnatEntriesEntryArrayOutput) ToGetSnatEntriesEntryArrayOutputWithContext

func (o GetSnatEntriesEntryArrayOutput) ToGetSnatEntriesEntryArrayOutputWithContext(ctx context.Context) GetSnatEntriesEntryArrayOutput

type GetSnatEntriesEntryInput

type GetSnatEntriesEntryInput interface {
	pulumi.Input

	ToGetSnatEntriesEntryOutput() GetSnatEntriesEntryOutput
	ToGetSnatEntriesEntryOutputWithContext(context.Context) GetSnatEntriesEntryOutput
}

GetSnatEntriesEntryInput is an input type that accepts GetSnatEntriesEntryArgs and GetSnatEntriesEntryOutput values. You can construct a concrete instance of `GetSnatEntriesEntryInput` via:

GetSnatEntriesEntryArgs{...}

type GetSnatEntriesEntryOutput

type GetSnatEntriesEntryOutput struct{ *pulumi.OutputState }

func (GetSnatEntriesEntryOutput) ElementType

func (GetSnatEntriesEntryOutput) ElementType() reflect.Type

func (GetSnatEntriesEntryOutput) Id

The ID of the Snat Entry.

func (GetSnatEntriesEntryOutput) SnatIp

The public IP of the Snat Entry.

func (GetSnatEntriesEntryOutput) SourceCidr

The source CIDR block of the Snat Entry.

func (GetSnatEntriesEntryOutput) Status

The status of the Snat Entry.

func (GetSnatEntriesEntryOutput) ToGetSnatEntriesEntryOutput

func (o GetSnatEntriesEntryOutput) ToGetSnatEntriesEntryOutput() GetSnatEntriesEntryOutput

func (GetSnatEntriesEntryOutput) ToGetSnatEntriesEntryOutputWithContext

func (o GetSnatEntriesEntryOutput) ToGetSnatEntriesEntryOutputWithContext(ctx context.Context) GetSnatEntriesEntryOutput

type GetSnatEntriesResult

type GetSnatEntriesResult struct {
	// A list of Snat Entries. Each element contains the following attributes:
	Entries []GetSnatEntriesEntry `pulumi:"entries"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// (Optional) A list of Snat Entries IDs.
	Ids        []string `pulumi:"ids"`
	OutputFile *string  `pulumi:"outputFile"`
	// The public IP of the Snat Entry.
	SnatIp      *string `pulumi:"snatIp"`
	SnatTableId string  `pulumi:"snatTableId"`
	// The source CIDR block of the Snat Entry.
	SourceCidr *string `pulumi:"sourceCidr"`
}

A collection of values returned by getSnatEntries.

func GetSnatEntries

func GetSnatEntries(ctx *pulumi.Context, args *GetSnatEntriesArgs, opts ...pulumi.InvokeOption) (*GetSnatEntriesResult, error)

This data source provides a list of Snat Entries owned by an Alibaba Cloud account.

> **NOTE:** Available in 1.37.0+.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud"
"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud/ecs"
"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud/vpc"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		name := "snat-entry-example-name"
		if param := cfg.Get("name"); param != "" {
			name = param
		}
		opt0 := "VSwitch"
		_default, err := alicloud.GetZones(ctx, &alicloud.GetZonesArgs{
			AvailableResourceCreation: &opt0,
		}, nil)
		if err != nil {
			return err
		}
		fooNetwork, err := vpc.NewNetwork(ctx, "fooNetwork", &vpc.NetworkArgs{
			CidrBlock: pulumi.String("172.16.0.0/12"),
		})
		if err != nil {
			return err
		}
		fooSwitch, err := vpc.NewSwitch(ctx, "fooSwitch", &vpc.SwitchArgs{
			AvailabilityZone: pulumi.String(_default.Zones[0].Id),
			CidrBlock:        pulumi.String("172.16.0.0/21"),
			VpcId:            fooNetwork.ID(),
		})
		if err != nil {
			return err
		}
		fooNatGateway, err := vpc.NewNatGateway(ctx, "fooNatGateway", &vpc.NatGatewayArgs{
			Specification: pulumi.String("Small"),
			VpcId:         fooNetwork.ID(),
		})
		if err != nil {
			return err
		}
		fooEip, err := ecs.NewEip(ctx, "fooEip", nil)
		if err != nil {
			return err
		}
		_, err = ecs.NewEipAssociation(ctx, "fooEipAssociation", &ecs.EipAssociationArgs{
			AllocationId: fooEip.ID(),
			InstanceId:   fooNatGateway.ID(),
		})
		if err != nil {
			return err
		}
		fooSnatEntry, err := vpc.NewSnatEntry(ctx, "fooSnatEntry", &vpc.SnatEntryArgs{
			SnatIp:          fooEip.IpAddress,
			SnatTableId:     fooNatGateway.SnatTableIds,
			SourceVswitchId: fooSwitch.ID(),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetSslVpnClientCertsArgs

type GetSslVpnClientCertsArgs struct {
	// IDs of the SSL-VPN client certificates.
	Ids []string `pulumi:"ids"`
	// A regex string of SSL-VPN client certificate name.
	NameRegex *string `pulumi:"nameRegex"`
	// Save the result to the file.
	OutputFile *string `pulumi:"outputFile"`
	// Use the SSL-VPN server ID as the search key.
	SslVpnServerId *string `pulumi:"sslVpnServerId"`
}

A collection of arguments for invoking getSslVpnClientCerts.

type GetSslVpnClientCertsCert

type GetSslVpnClientCertsCert struct {
	// The time of creation.
	CreateTime string `pulumi:"createTime"`
	// The expiration time of the client certificate.
	EndTime int `pulumi:"endTime"`
	// ID of the SSL-VPN client certificate.
	Id string `pulumi:"id"`
	// The name of the SSL-VPN client certificate.
	Name string `pulumi:"name"`
	// Use the SSL-VPN server ID as the search key.
	SslVpnServerId string `pulumi:"sslVpnServerId"`
	// The status of the client certificate. valid value:expiring-soon, normal, expired.
	Status string `pulumi:"status"`
}

type GetSslVpnClientCertsCertArgs

type GetSslVpnClientCertsCertArgs struct {
	// The time of creation.
	CreateTime pulumi.StringInput `pulumi:"createTime"`
	// The expiration time of the client certificate.
	EndTime pulumi.IntInput `pulumi:"endTime"`
	// ID of the SSL-VPN client certificate.
	Id pulumi.StringInput `pulumi:"id"`
	// The name of the SSL-VPN client certificate.
	Name pulumi.StringInput `pulumi:"name"`
	// Use the SSL-VPN server ID as the search key.
	SslVpnServerId pulumi.StringInput `pulumi:"sslVpnServerId"`
	// The status of the client certificate. valid value:expiring-soon, normal, expired.
	Status pulumi.StringInput `pulumi:"status"`
}

func (GetSslVpnClientCertsCertArgs) ElementType

func (GetSslVpnClientCertsCertArgs) ToGetSslVpnClientCertsCertOutput

func (i GetSslVpnClientCertsCertArgs) ToGetSslVpnClientCertsCertOutput() GetSslVpnClientCertsCertOutput

func (GetSslVpnClientCertsCertArgs) ToGetSslVpnClientCertsCertOutputWithContext

func (i GetSslVpnClientCertsCertArgs) ToGetSslVpnClientCertsCertOutputWithContext(ctx context.Context) GetSslVpnClientCertsCertOutput

type GetSslVpnClientCertsCertArray

type GetSslVpnClientCertsCertArray []GetSslVpnClientCertsCertInput

func (GetSslVpnClientCertsCertArray) ElementType

func (GetSslVpnClientCertsCertArray) ToGetSslVpnClientCertsCertArrayOutput

func (i GetSslVpnClientCertsCertArray) ToGetSslVpnClientCertsCertArrayOutput() GetSslVpnClientCertsCertArrayOutput

func (GetSslVpnClientCertsCertArray) ToGetSslVpnClientCertsCertArrayOutputWithContext

func (i GetSslVpnClientCertsCertArray) ToGetSslVpnClientCertsCertArrayOutputWithContext(ctx context.Context) GetSslVpnClientCertsCertArrayOutput

type GetSslVpnClientCertsCertArrayInput

type GetSslVpnClientCertsCertArrayInput interface {
	pulumi.Input

	ToGetSslVpnClientCertsCertArrayOutput() GetSslVpnClientCertsCertArrayOutput
	ToGetSslVpnClientCertsCertArrayOutputWithContext(context.Context) GetSslVpnClientCertsCertArrayOutput
}

GetSslVpnClientCertsCertArrayInput is an input type that accepts GetSslVpnClientCertsCertArray and GetSslVpnClientCertsCertArrayOutput values. You can construct a concrete instance of `GetSslVpnClientCertsCertArrayInput` via:

GetSslVpnClientCertsCertArray{ GetSslVpnClientCertsCertArgs{...} }

type GetSslVpnClientCertsCertArrayOutput

type GetSslVpnClientCertsCertArrayOutput struct{ *pulumi.OutputState }

func (GetSslVpnClientCertsCertArrayOutput) ElementType

func (GetSslVpnClientCertsCertArrayOutput) Index

func (GetSslVpnClientCertsCertArrayOutput) ToGetSslVpnClientCertsCertArrayOutput

func (o GetSslVpnClientCertsCertArrayOutput) ToGetSslVpnClientCertsCertArrayOutput() GetSslVpnClientCertsCertArrayOutput

func (GetSslVpnClientCertsCertArrayOutput) ToGetSslVpnClientCertsCertArrayOutputWithContext

func (o GetSslVpnClientCertsCertArrayOutput) ToGetSslVpnClientCertsCertArrayOutputWithContext(ctx context.Context) GetSslVpnClientCertsCertArrayOutput

type GetSslVpnClientCertsCertInput

type GetSslVpnClientCertsCertInput interface {
	pulumi.Input

	ToGetSslVpnClientCertsCertOutput() GetSslVpnClientCertsCertOutput
	ToGetSslVpnClientCertsCertOutputWithContext(context.Context) GetSslVpnClientCertsCertOutput
}

GetSslVpnClientCertsCertInput is an input type that accepts GetSslVpnClientCertsCertArgs and GetSslVpnClientCertsCertOutput values. You can construct a concrete instance of `GetSslVpnClientCertsCertInput` via:

GetSslVpnClientCertsCertArgs{...}

type GetSslVpnClientCertsCertOutput

type GetSslVpnClientCertsCertOutput struct{ *pulumi.OutputState }

func (GetSslVpnClientCertsCertOutput) CreateTime

The time of creation.

func (GetSslVpnClientCertsCertOutput) ElementType

func (GetSslVpnClientCertsCertOutput) EndTime

The expiration time of the client certificate.

func (GetSslVpnClientCertsCertOutput) Id

ID of the SSL-VPN client certificate.

func (GetSslVpnClientCertsCertOutput) Name

The name of the SSL-VPN client certificate.

func (GetSslVpnClientCertsCertOutput) SslVpnServerId

Use the SSL-VPN server ID as the search key.

func (GetSslVpnClientCertsCertOutput) Status

The status of the client certificate. valid value:expiring-soon, normal, expired.

func (GetSslVpnClientCertsCertOutput) ToGetSslVpnClientCertsCertOutput

func (o GetSslVpnClientCertsCertOutput) ToGetSslVpnClientCertsCertOutput() GetSslVpnClientCertsCertOutput

func (GetSslVpnClientCertsCertOutput) ToGetSslVpnClientCertsCertOutputWithContext

func (o GetSslVpnClientCertsCertOutput) ToGetSslVpnClientCertsCertOutputWithContext(ctx context.Context) GetSslVpnClientCertsCertOutput

type GetSslVpnClientCertsResult

type GetSslVpnClientCertsResult struct {
	Certs []GetSslVpnClientCertsCert `pulumi:"certs"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// A list of SSL-VPN client cert IDs.
	Ids       []string `pulumi:"ids"`
	NameRegex *string  `pulumi:"nameRegex"`
	// A list of SSL-VPN client cert names.
	Names      []string `pulumi:"names"`
	OutputFile *string  `pulumi:"outputFile"`
	// ID of the SSL-VPN Server.
	SslVpnServerId *string `pulumi:"sslVpnServerId"`
}

A collection of values returned by getSslVpnClientCerts.

func GetSslVpnClientCerts

func GetSslVpnClientCerts(ctx *pulumi.Context, args *GetSslVpnClientCertsArgs, opts ...pulumi.InvokeOption) (*GetSslVpnClientCertsResult, error)

The SSL-VPN client certificates data source lists lots of SSL-VPN client certificates resource information owned by an Alicloud account.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud/vpc"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		opt0 := "^foo"
		opt1 := "/tmp/clientcert"
		opt2 := "fake-server-id"
		_, err := vpc.GetSslVpnClientCerts(ctx, &vpc.GetSslVpnClientCertsArgs{
			Ids: []string{
				"fake-cert-id",
			},
			NameRegex:      &opt0,
			OutputFile:     &opt1,
			SslVpnServerId: &opt2,
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetSslVpnServersArgs

type GetSslVpnServersArgs struct {
	// IDs of the SSL-VPN servers.
	Ids []string `pulumi:"ids"`
	// A regex string of SSL-VPN server name.
	NameRegex *string `pulumi:"nameRegex"`
	// Save the result to the file.
	OutputFile *string `pulumi:"outputFile"`
	// Use the VPN gateway ID as the search key.
	VpnGatewayId *string `pulumi:"vpnGatewayId"`
}

A collection of arguments for invoking getSslVpnServers.

type GetSslVpnServersResult

type GetSslVpnServersResult struct {
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// A list of SSL-VPN server IDs.
	Ids       []string `pulumi:"ids"`
	NameRegex *string  `pulumi:"nameRegex"`
	// A list of SSL-VPN server names.
	Names      []string `pulumi:"names"`
	OutputFile *string  `pulumi:"outputFile"`
	// A list of SSL-VPN servers. Each element contains the following attributes:
	Servers []GetSslVpnServersServer `pulumi:"servers"`
	// The ID of the VPN gateway instance.
	VpnGatewayId *string `pulumi:"vpnGatewayId"`
}

A collection of values returned by getSslVpnServers.

func GetSslVpnServers

func GetSslVpnServers(ctx *pulumi.Context, args *GetSslVpnServersArgs, opts ...pulumi.InvokeOption) (*GetSslVpnServersResult, error)

The SSL-VPN servers data source lists lots of SSL-VPN servers resource information owned by an Alicloud account.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud/vpc"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		opt0 := "^foo"
		opt1 := "/tmp/sslserver"
		opt2 := "fake-vpn-id"
		_, err := vpc.GetSslVpnServers(ctx, &vpc.GetSslVpnServersArgs{
			Ids: []string{
				"fake-server-id",
			},
			NameRegex:    &opt0,
			OutputFile:   &opt1,
			VpnGatewayId: &opt2,
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetSslVpnServersServer

type GetSslVpnServersServer struct {
	// The encryption algorithm used.
	Cipher string `pulumi:"cipher"`
	// The IP address pool of the client.
	ClientIpPool string `pulumi:"clientIpPool"`
	// Whether to compress.
	Compress bool `pulumi:"compress"`
	// The number of current connections.
	Connections int `pulumi:"connections"`
	// The time of creation.
	CreateTime string `pulumi:"createTime"`
	// The ID of the SSL-VPN server.
	Id string `pulumi:"id"`
	// The public IP.
	InternetIp string `pulumi:"internetIp"`
	// The local subnet of the VPN connection.
	LocalSubnet string `pulumi:"localSubnet"`
	// The maximum number of connections.
	MaxConnections int `pulumi:"maxConnections"`
	// The name of the SSL-VPN server.
	Name string `pulumi:"name"`
	// The port used by the SSL-VPN server.
	Port int `pulumi:"port"`
	// The protocol used by the SSL-VPN server.
	Proto string `pulumi:"proto"`
	// Use the VPN gateway ID as the search key.
	VpnGatewayId string `pulumi:"vpnGatewayId"`
}

type GetSslVpnServersServerArgs

type GetSslVpnServersServerArgs struct {
	// The encryption algorithm used.
	Cipher pulumi.StringInput `pulumi:"cipher"`
	// The IP address pool of the client.
	ClientIpPool pulumi.StringInput `pulumi:"clientIpPool"`
	// Whether to compress.
	Compress pulumi.BoolInput `pulumi:"compress"`
	// The number of current connections.
	Connections pulumi.IntInput `pulumi:"connections"`
	// The time of creation.
	CreateTime pulumi.StringInput `pulumi:"createTime"`
	// The ID of the SSL-VPN server.
	Id pulumi.StringInput `pulumi:"id"`
	// The public IP.
	InternetIp pulumi.StringInput `pulumi:"internetIp"`
	// The local subnet of the VPN connection.
	LocalSubnet pulumi.StringInput `pulumi:"localSubnet"`
	// The maximum number of connections.
	MaxConnections pulumi.IntInput `pulumi:"maxConnections"`
	// The name of the SSL-VPN server.
	Name pulumi.StringInput `pulumi:"name"`
	// The port used by the SSL-VPN server.
	Port pulumi.IntInput `pulumi:"port"`
	// The protocol used by the SSL-VPN server.
	Proto pulumi.StringInput `pulumi:"proto"`
	// Use the VPN gateway ID as the search key.
	VpnGatewayId pulumi.StringInput `pulumi:"vpnGatewayId"`
}

func (GetSslVpnServersServerArgs) ElementType

func (GetSslVpnServersServerArgs) ElementType() reflect.Type

func (GetSslVpnServersServerArgs) ToGetSslVpnServersServerOutput

func (i GetSslVpnServersServerArgs) ToGetSslVpnServersServerOutput() GetSslVpnServersServerOutput

func (GetSslVpnServersServerArgs) ToGetSslVpnServersServerOutputWithContext

func (i GetSslVpnServersServerArgs) ToGetSslVpnServersServerOutputWithContext(ctx context.Context) GetSslVpnServersServerOutput

type GetSslVpnServersServerArray

type GetSslVpnServersServerArray []GetSslVpnServersServerInput

func (GetSslVpnServersServerArray) ElementType

func (GetSslVpnServersServerArray) ToGetSslVpnServersServerArrayOutput

func (i GetSslVpnServersServerArray) ToGetSslVpnServersServerArrayOutput() GetSslVpnServersServerArrayOutput

func (GetSslVpnServersServerArray) ToGetSslVpnServersServerArrayOutputWithContext

func (i GetSslVpnServersServerArray) ToGetSslVpnServersServerArrayOutputWithContext(ctx context.Context) GetSslVpnServersServerArrayOutput

type GetSslVpnServersServerArrayInput

type GetSslVpnServersServerArrayInput interface {
	pulumi.Input

	ToGetSslVpnServersServerArrayOutput() GetSslVpnServersServerArrayOutput
	ToGetSslVpnServersServerArrayOutputWithContext(context.Context) GetSslVpnServersServerArrayOutput
}

GetSslVpnServersServerArrayInput is an input type that accepts GetSslVpnServersServerArray and GetSslVpnServersServerArrayOutput values. You can construct a concrete instance of `GetSslVpnServersServerArrayInput` via:

GetSslVpnServersServerArray{ GetSslVpnServersServerArgs{...} }

type GetSslVpnServersServerArrayOutput

type GetSslVpnServersServerArrayOutput struct{ *pulumi.OutputState }

func (GetSslVpnServersServerArrayOutput) ElementType

func (GetSslVpnServersServerArrayOutput) Index

func (GetSslVpnServersServerArrayOutput) ToGetSslVpnServersServerArrayOutput

func (o GetSslVpnServersServerArrayOutput) ToGetSslVpnServersServerArrayOutput() GetSslVpnServersServerArrayOutput

func (GetSslVpnServersServerArrayOutput) ToGetSslVpnServersServerArrayOutputWithContext

func (o GetSslVpnServersServerArrayOutput) ToGetSslVpnServersServerArrayOutputWithContext(ctx context.Context) GetSslVpnServersServerArrayOutput

type GetSslVpnServersServerInput

type GetSslVpnServersServerInput interface {
	pulumi.Input

	ToGetSslVpnServersServerOutput() GetSslVpnServersServerOutput
	ToGetSslVpnServersServerOutputWithContext(context.Context) GetSslVpnServersServerOutput
}

GetSslVpnServersServerInput is an input type that accepts GetSslVpnServersServerArgs and GetSslVpnServersServerOutput values. You can construct a concrete instance of `GetSslVpnServersServerInput` via:

GetSslVpnServersServerArgs{...}

type GetSslVpnServersServerOutput

type GetSslVpnServersServerOutput struct{ *pulumi.OutputState }

func (GetSslVpnServersServerOutput) Cipher

The encryption algorithm used.

func (GetSslVpnServersServerOutput) ClientIpPool

The IP address pool of the client.

func (GetSslVpnServersServerOutput) Compress

Whether to compress.

func (GetSslVpnServersServerOutput) Connections

The number of current connections.

func (GetSslVpnServersServerOutput) CreateTime

The time of creation.

func (GetSslVpnServersServerOutput) ElementType

func (GetSslVpnServersServerOutput) Id

The ID of the SSL-VPN server.

func (GetSslVpnServersServerOutput) InternetIp

The public IP.

func (GetSslVpnServersServerOutput) LocalSubnet

The local subnet of the VPN connection.

func (GetSslVpnServersServerOutput) MaxConnections

func (o GetSslVpnServersServerOutput) MaxConnections() pulumi.IntOutput

The maximum number of connections.

func (GetSslVpnServersServerOutput) Name

The name of the SSL-VPN server.

func (GetSslVpnServersServerOutput) Port

The port used by the SSL-VPN server.

func (GetSslVpnServersServerOutput) Proto

The protocol used by the SSL-VPN server.

func (GetSslVpnServersServerOutput) ToGetSslVpnServersServerOutput

func (o GetSslVpnServersServerOutput) ToGetSslVpnServersServerOutput() GetSslVpnServersServerOutput

func (GetSslVpnServersServerOutput) ToGetSslVpnServersServerOutputWithContext

func (o GetSslVpnServersServerOutput) ToGetSslVpnServersServerOutputWithContext(ctx context.Context) GetSslVpnServersServerOutput

func (GetSslVpnServersServerOutput) VpnGatewayId

Use the VPN gateway ID as the search key.

type GetSwitchesArgs

type GetSwitchesArgs struct {
	// Filter results by a specific CIDR block. For example: "172.16.0.0/12".
	CidrBlock *string `pulumi:"cidrBlock"`
	// A list of VSwitch IDs.
	Ids []string `pulumi:"ids"`
	// Indicate whether the VSwitch is created by the system.
	IsDefault *bool `pulumi:"isDefault"`
	// A regex string to filter results by name.
	NameRegex  *string `pulumi:"nameRegex"`
	OutputFile *string `pulumi:"outputFile"`
	// The Id of resource group which VSWitch belongs.
	ResourceGroupId *string `pulumi:"resourceGroupId"`
	// A mapping of tags to assign to the resource.
	Tags map[string]interface{} `pulumi:"tags"`
	// ID of the VPC that owns the VSwitch.
	VpcId *string `pulumi:"vpcId"`
	// The availability zone of the VSwitch.
	ZoneId *string `pulumi:"zoneId"`
}

A collection of arguments for invoking getSwitches.

type GetSwitchesResult

type GetSwitchesResult struct {
	// CIDR block of the VSwitch.
	CidrBlock *string `pulumi:"cidrBlock"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// A list of VSwitch IDs.
	Ids []string `pulumi:"ids"`
	// Whether the VSwitch is the default one in the region.
	IsDefault *bool   `pulumi:"isDefault"`
	NameRegex *string `pulumi:"nameRegex"`
	// A list of VSwitch names.
	Names           []string               `pulumi:"names"`
	OutputFile      *string                `pulumi:"outputFile"`
	ResourceGroupId *string                `pulumi:"resourceGroupId"`
	Tags            map[string]interface{} `pulumi:"tags"`
	// ID of the VPC that owns the VSwitch.
	VpcId *string `pulumi:"vpcId"`
	// A list of VSwitches. Each element contains the following attributes:
	Vswitches []GetSwitchesVswitch `pulumi:"vswitches"`
	// ID of the availability zone where the VSwitch is located.
	ZoneId *string `pulumi:"zoneId"`
}

A collection of values returned by getSwitches.

func GetSwitches

func GetSwitches(ctx *pulumi.Context, args *GetSwitchesArgs, opts ...pulumi.InvokeOption) (*GetSwitchesResult, error)

This data source provides a list of VSwitches owned by an Alibaba Cloud account.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud"
"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud/vpc"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		name := "vswitchDatasourceName"
		if param := cfg.Get("name"); param != "" {
			name = param
		}
		defaultZones, err := alicloud.GetZones(ctx, nil, nil)
		if err != nil {
			return err
		}
		vpc, err := vpc.NewNetwork(ctx, "vpc", &vpc.NetworkArgs{
			CidrBlock: pulumi.String("172.16.0.0/16"),
		})
		if err != nil {
			return err
		}
		vswitch, err := vpc.NewSwitch(ctx, "vswitch", &vpc.SwitchArgs{
			AvailabilityZone: pulumi.String(defaultZones.Zones[0].Id),
			CidrBlock:        pulumi.String("172.16.0.0/24"),
			VpcId:            vpc.ID(),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetSwitchesVswitch

type GetSwitchesVswitch struct {
	// Filter results by a specific CIDR block. For example: "172.16.0.0/12".
	CidrBlock string `pulumi:"cidrBlock"`
	// Time of creation.
	CreationTime string `pulumi:"creationTime"`
	// Description of the VSwitch.
	Description string `pulumi:"description"`
	// ID of the VSwitch.
	Id string `pulumi:"id"`
	// List of ECS instance IDs in the specified VSwitch.
	InstanceIds []string `pulumi:"instanceIds"`
	// Indicate whether the VSwitch is created by the system.
	IsDefault bool `pulumi:"isDefault"`
	// Name of the VSwitch.
	Name string `pulumi:"name"`
	// ID of the VPC that owns the VSwitch.
	VpcId string `pulumi:"vpcId"`
	// The availability zone of the VSwitch.
	ZoneId string `pulumi:"zoneId"`
}

type GetSwitchesVswitchArgs

type GetSwitchesVswitchArgs struct {
	// Filter results by a specific CIDR block. For example: "172.16.0.0/12".
	CidrBlock pulumi.StringInput `pulumi:"cidrBlock"`
	// Time of creation.
	CreationTime pulumi.StringInput `pulumi:"creationTime"`
	// Description of the VSwitch.
	Description pulumi.StringInput `pulumi:"description"`
	// ID of the VSwitch.
	Id pulumi.StringInput `pulumi:"id"`
	// List of ECS instance IDs in the specified VSwitch.
	InstanceIds pulumi.StringArrayInput `pulumi:"instanceIds"`
	// Indicate whether the VSwitch is created by the system.
	IsDefault pulumi.BoolInput `pulumi:"isDefault"`
	// Name of the VSwitch.
	Name pulumi.StringInput `pulumi:"name"`
	// ID of the VPC that owns the VSwitch.
	VpcId pulumi.StringInput `pulumi:"vpcId"`
	// The availability zone of the VSwitch.
	ZoneId pulumi.StringInput `pulumi:"zoneId"`
}

func (GetSwitchesVswitchArgs) ElementType

func (GetSwitchesVswitchArgs) ElementType() reflect.Type

func (GetSwitchesVswitchArgs) ToGetSwitchesVswitchOutput

func (i GetSwitchesVswitchArgs) ToGetSwitchesVswitchOutput() GetSwitchesVswitchOutput

func (GetSwitchesVswitchArgs) ToGetSwitchesVswitchOutputWithContext

func (i GetSwitchesVswitchArgs) ToGetSwitchesVswitchOutputWithContext(ctx context.Context) GetSwitchesVswitchOutput

type GetSwitchesVswitchArray

type GetSwitchesVswitchArray []GetSwitchesVswitchInput

func (GetSwitchesVswitchArray) ElementType

func (GetSwitchesVswitchArray) ElementType() reflect.Type

func (GetSwitchesVswitchArray) ToGetSwitchesVswitchArrayOutput

func (i GetSwitchesVswitchArray) ToGetSwitchesVswitchArrayOutput() GetSwitchesVswitchArrayOutput

func (GetSwitchesVswitchArray) ToGetSwitchesVswitchArrayOutputWithContext

func (i GetSwitchesVswitchArray) ToGetSwitchesVswitchArrayOutputWithContext(ctx context.Context) GetSwitchesVswitchArrayOutput

type GetSwitchesVswitchArrayInput

type GetSwitchesVswitchArrayInput interface {
	pulumi.Input

	ToGetSwitchesVswitchArrayOutput() GetSwitchesVswitchArrayOutput
	ToGetSwitchesVswitchArrayOutputWithContext(context.Context) GetSwitchesVswitchArrayOutput
}

GetSwitchesVswitchArrayInput is an input type that accepts GetSwitchesVswitchArray and GetSwitchesVswitchArrayOutput values. You can construct a concrete instance of `GetSwitchesVswitchArrayInput` via:

GetSwitchesVswitchArray{ GetSwitchesVswitchArgs{...} }

type GetSwitchesVswitchArrayOutput

type GetSwitchesVswitchArrayOutput struct{ *pulumi.OutputState }

func (GetSwitchesVswitchArrayOutput) ElementType

func (GetSwitchesVswitchArrayOutput) Index

func (GetSwitchesVswitchArrayOutput) ToGetSwitchesVswitchArrayOutput

func (o GetSwitchesVswitchArrayOutput) ToGetSwitchesVswitchArrayOutput() GetSwitchesVswitchArrayOutput

func (GetSwitchesVswitchArrayOutput) ToGetSwitchesVswitchArrayOutputWithContext

func (o GetSwitchesVswitchArrayOutput) ToGetSwitchesVswitchArrayOutputWithContext(ctx context.Context) GetSwitchesVswitchArrayOutput

type GetSwitchesVswitchInput

type GetSwitchesVswitchInput interface {
	pulumi.Input

	ToGetSwitchesVswitchOutput() GetSwitchesVswitchOutput
	ToGetSwitchesVswitchOutputWithContext(context.Context) GetSwitchesVswitchOutput
}

GetSwitchesVswitchInput is an input type that accepts GetSwitchesVswitchArgs and GetSwitchesVswitchOutput values. You can construct a concrete instance of `GetSwitchesVswitchInput` via:

GetSwitchesVswitchArgs{...}

type GetSwitchesVswitchOutput

type GetSwitchesVswitchOutput struct{ *pulumi.OutputState }

func (GetSwitchesVswitchOutput) CidrBlock

Filter results by a specific CIDR block. For example: "172.16.0.0/12".

func (GetSwitchesVswitchOutput) CreationTime

func (o GetSwitchesVswitchOutput) CreationTime() pulumi.StringOutput

Time of creation.

func (GetSwitchesVswitchOutput) Description

Description of the VSwitch.

func (GetSwitchesVswitchOutput) ElementType

func (GetSwitchesVswitchOutput) ElementType() reflect.Type

func (GetSwitchesVswitchOutput) Id

ID of the VSwitch.

func (GetSwitchesVswitchOutput) InstanceIds

List of ECS instance IDs in the specified VSwitch.

func (GetSwitchesVswitchOutput) IsDefault

Indicate whether the VSwitch is created by the system.

func (GetSwitchesVswitchOutput) Name

Name of the VSwitch.

func (GetSwitchesVswitchOutput) ToGetSwitchesVswitchOutput

func (o GetSwitchesVswitchOutput) ToGetSwitchesVswitchOutput() GetSwitchesVswitchOutput

func (GetSwitchesVswitchOutput) ToGetSwitchesVswitchOutputWithContext

func (o GetSwitchesVswitchOutput) ToGetSwitchesVswitchOutputWithContext(ctx context.Context) GetSwitchesVswitchOutput

func (GetSwitchesVswitchOutput) VpcId

ID of the VPC that owns the VSwitch.

func (GetSwitchesVswitchOutput) ZoneId

The availability zone of the VSwitch.

type HAVip

type HAVip struct {
	pulumi.CustomResourceState

	// The description of the HaVip instance.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// The ip address of the HaVip. If not filled, the default will be assigned one from the vswitch.
	IpAddress pulumi.StringOutput `pulumi:"ipAddress"`
	// The vswitchId of the HaVip, the field can't be changed.
	VswitchId pulumi.StringOutput `pulumi:"vswitchId"`
}

## Import

The havip can be imported using the id, e.g.

```sh

$ pulumi import alicloud:vpc/hAVip:HAVip foo havip-abc123456

```

func GetHAVip

func GetHAVip(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *HAVipState, opts ...pulumi.ResourceOption) (*HAVip, error)

GetHAVip gets an existing HAVip 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 NewHAVip

func NewHAVip(ctx *pulumi.Context,
	name string, args *HAVipArgs, opts ...pulumi.ResourceOption) (*HAVip, error)

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

func (*HAVip) ElementType added in v2.25.1

func (*HAVip) ElementType() reflect.Type

func (*HAVip) ToHAVipOutput added in v2.25.1

func (i *HAVip) ToHAVipOutput() HAVipOutput

func (*HAVip) ToHAVipOutputWithContext added in v2.25.1

func (i *HAVip) ToHAVipOutputWithContext(ctx context.Context) HAVipOutput

func (*HAVip) ToHAVipPtrOutput added in v2.35.1

func (i *HAVip) ToHAVipPtrOutput() HAVipPtrOutput

func (*HAVip) ToHAVipPtrOutputWithContext added in v2.35.1

func (i *HAVip) ToHAVipPtrOutputWithContext(ctx context.Context) HAVipPtrOutput

type HAVipArgs

type HAVipArgs struct {
	// The description of the HaVip instance.
	Description pulumi.StringPtrInput
	// The ip address of the HaVip. If not filled, the default will be assigned one from the vswitch.
	IpAddress pulumi.StringPtrInput
	// The vswitchId of the HaVip, the field can't be changed.
	VswitchId pulumi.StringInput
}

The set of arguments for constructing a HAVip resource.

func (HAVipArgs) ElementType

func (HAVipArgs) ElementType() reflect.Type

type HAVipArray added in v2.35.1

type HAVipArray []HAVipInput

func (HAVipArray) ElementType added in v2.35.1

func (HAVipArray) ElementType() reflect.Type

func (HAVipArray) ToHAVipArrayOutput added in v2.35.1

func (i HAVipArray) ToHAVipArrayOutput() HAVipArrayOutput

func (HAVipArray) ToHAVipArrayOutputWithContext added in v2.35.1

func (i HAVipArray) ToHAVipArrayOutputWithContext(ctx context.Context) HAVipArrayOutput

type HAVipArrayInput added in v2.35.1

type HAVipArrayInput interface {
	pulumi.Input

	ToHAVipArrayOutput() HAVipArrayOutput
	ToHAVipArrayOutputWithContext(context.Context) HAVipArrayOutput
}

HAVipArrayInput is an input type that accepts HAVipArray and HAVipArrayOutput values. You can construct a concrete instance of `HAVipArrayInput` via:

HAVipArray{ HAVipArgs{...} }

type HAVipArrayOutput added in v2.35.1

type HAVipArrayOutput struct{ *pulumi.OutputState }

func (HAVipArrayOutput) ElementType added in v2.35.1

func (HAVipArrayOutput) ElementType() reflect.Type

func (HAVipArrayOutput) Index added in v2.35.1

func (HAVipArrayOutput) ToHAVipArrayOutput added in v2.35.1

func (o HAVipArrayOutput) ToHAVipArrayOutput() HAVipArrayOutput

func (HAVipArrayOutput) ToHAVipArrayOutputWithContext added in v2.35.1

func (o HAVipArrayOutput) ToHAVipArrayOutputWithContext(ctx context.Context) HAVipArrayOutput

type HAVipAttachment

type HAVipAttachment struct {
	pulumi.CustomResourceState

	// The havipId of the havip attachment, the field can't be changed.
	HavipId pulumi.StringOutput `pulumi:"havipId"`
	// The instanceId of the havip attachment, the field can't be changed.
	InstanceId pulumi.StringOutput `pulumi:"instanceId"`
}

## Import

The havip attachemnt can be imported using the id, e.g.

```sh

$ pulumi import alicloud:vpc/hAVipAttachment:HAVipAttachment foo havip-abc123456:i-abc123456

```

func GetHAVipAttachment

func GetHAVipAttachment(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *HAVipAttachmentState, opts ...pulumi.ResourceOption) (*HAVipAttachment, error)

GetHAVipAttachment gets an existing HAVipAttachment 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 NewHAVipAttachment

func NewHAVipAttachment(ctx *pulumi.Context,
	name string, args *HAVipAttachmentArgs, opts ...pulumi.ResourceOption) (*HAVipAttachment, error)

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

func (*HAVipAttachment) ElementType added in v2.25.1

func (*HAVipAttachment) ElementType() reflect.Type

func (*HAVipAttachment) ToHAVipAttachmentOutput added in v2.25.1

func (i *HAVipAttachment) ToHAVipAttachmentOutput() HAVipAttachmentOutput

func (*HAVipAttachment) ToHAVipAttachmentOutputWithContext added in v2.25.1

func (i *HAVipAttachment) ToHAVipAttachmentOutputWithContext(ctx context.Context) HAVipAttachmentOutput

func (*HAVipAttachment) ToHAVipAttachmentPtrOutput added in v2.35.1

func (i *HAVipAttachment) ToHAVipAttachmentPtrOutput() HAVipAttachmentPtrOutput

func (*HAVipAttachment) ToHAVipAttachmentPtrOutputWithContext added in v2.35.1

func (i *HAVipAttachment) ToHAVipAttachmentPtrOutputWithContext(ctx context.Context) HAVipAttachmentPtrOutput

type HAVipAttachmentArgs

type HAVipAttachmentArgs struct {
	// The havipId of the havip attachment, the field can't be changed.
	HavipId pulumi.StringInput
	// The instanceId of the havip attachment, the field can't be changed.
	InstanceId pulumi.StringInput
}

The set of arguments for constructing a HAVipAttachment resource.

func (HAVipAttachmentArgs) ElementType

func (HAVipAttachmentArgs) ElementType() reflect.Type

type HAVipAttachmentArray added in v2.35.1

type HAVipAttachmentArray []HAVipAttachmentInput

func (HAVipAttachmentArray) ElementType added in v2.35.1

func (HAVipAttachmentArray) ElementType() reflect.Type

func (HAVipAttachmentArray) ToHAVipAttachmentArrayOutput added in v2.35.1

func (i HAVipAttachmentArray) ToHAVipAttachmentArrayOutput() HAVipAttachmentArrayOutput

func (HAVipAttachmentArray) ToHAVipAttachmentArrayOutputWithContext added in v2.35.1

func (i HAVipAttachmentArray) ToHAVipAttachmentArrayOutputWithContext(ctx context.Context) HAVipAttachmentArrayOutput

type HAVipAttachmentArrayInput added in v2.35.1

type HAVipAttachmentArrayInput interface {
	pulumi.Input

	ToHAVipAttachmentArrayOutput() HAVipAttachmentArrayOutput
	ToHAVipAttachmentArrayOutputWithContext(context.Context) HAVipAttachmentArrayOutput
}

HAVipAttachmentArrayInput is an input type that accepts HAVipAttachmentArray and HAVipAttachmentArrayOutput values. You can construct a concrete instance of `HAVipAttachmentArrayInput` via:

HAVipAttachmentArray{ HAVipAttachmentArgs{...} }

type HAVipAttachmentArrayOutput added in v2.35.1

type HAVipAttachmentArrayOutput struct{ *pulumi.OutputState }

func (HAVipAttachmentArrayOutput) ElementType added in v2.35.1

func (HAVipAttachmentArrayOutput) ElementType() reflect.Type

func (HAVipAttachmentArrayOutput) Index added in v2.35.1

func (HAVipAttachmentArrayOutput) ToHAVipAttachmentArrayOutput added in v2.35.1

func (o HAVipAttachmentArrayOutput) ToHAVipAttachmentArrayOutput() HAVipAttachmentArrayOutput

func (HAVipAttachmentArrayOutput) ToHAVipAttachmentArrayOutputWithContext added in v2.35.1

func (o HAVipAttachmentArrayOutput) ToHAVipAttachmentArrayOutputWithContext(ctx context.Context) HAVipAttachmentArrayOutput

type HAVipAttachmentInput added in v2.25.1

type HAVipAttachmentInput interface {
	pulumi.Input

	ToHAVipAttachmentOutput() HAVipAttachmentOutput
	ToHAVipAttachmentOutputWithContext(ctx context.Context) HAVipAttachmentOutput
}

type HAVipAttachmentMap added in v2.35.1

type HAVipAttachmentMap map[string]HAVipAttachmentInput

func (HAVipAttachmentMap) ElementType added in v2.35.1

func (HAVipAttachmentMap) ElementType() reflect.Type

func (HAVipAttachmentMap) ToHAVipAttachmentMapOutput added in v2.35.1

func (i HAVipAttachmentMap) ToHAVipAttachmentMapOutput() HAVipAttachmentMapOutput

func (HAVipAttachmentMap) ToHAVipAttachmentMapOutputWithContext added in v2.35.1

func (i HAVipAttachmentMap) ToHAVipAttachmentMapOutputWithContext(ctx context.Context) HAVipAttachmentMapOutput

type HAVipAttachmentMapInput added in v2.35.1

type HAVipAttachmentMapInput interface {
	pulumi.Input

	ToHAVipAttachmentMapOutput() HAVipAttachmentMapOutput
	ToHAVipAttachmentMapOutputWithContext(context.Context) HAVipAttachmentMapOutput
}

HAVipAttachmentMapInput is an input type that accepts HAVipAttachmentMap and HAVipAttachmentMapOutput values. You can construct a concrete instance of `HAVipAttachmentMapInput` via:

HAVipAttachmentMap{ "key": HAVipAttachmentArgs{...} }

type HAVipAttachmentMapOutput added in v2.35.1

type HAVipAttachmentMapOutput struct{ *pulumi.OutputState }

func (HAVipAttachmentMapOutput) ElementType added in v2.35.1

func (HAVipAttachmentMapOutput) ElementType() reflect.Type

func (HAVipAttachmentMapOutput) MapIndex added in v2.35.1

func (HAVipAttachmentMapOutput) ToHAVipAttachmentMapOutput added in v2.35.1

func (o HAVipAttachmentMapOutput) ToHAVipAttachmentMapOutput() HAVipAttachmentMapOutput

func (HAVipAttachmentMapOutput) ToHAVipAttachmentMapOutputWithContext added in v2.35.1

func (o HAVipAttachmentMapOutput) ToHAVipAttachmentMapOutputWithContext(ctx context.Context) HAVipAttachmentMapOutput

type HAVipAttachmentOutput added in v2.25.1

type HAVipAttachmentOutput struct {
	*pulumi.OutputState
}

func (HAVipAttachmentOutput) ElementType added in v2.25.1

func (HAVipAttachmentOutput) ElementType() reflect.Type

func (HAVipAttachmentOutput) ToHAVipAttachmentOutput added in v2.25.1

func (o HAVipAttachmentOutput) ToHAVipAttachmentOutput() HAVipAttachmentOutput

func (HAVipAttachmentOutput) ToHAVipAttachmentOutputWithContext added in v2.25.1

func (o HAVipAttachmentOutput) ToHAVipAttachmentOutputWithContext(ctx context.Context) HAVipAttachmentOutput

func (HAVipAttachmentOutput) ToHAVipAttachmentPtrOutput added in v2.35.1

func (o HAVipAttachmentOutput) ToHAVipAttachmentPtrOutput() HAVipAttachmentPtrOutput

func (HAVipAttachmentOutput) ToHAVipAttachmentPtrOutputWithContext added in v2.35.1

func (o HAVipAttachmentOutput) ToHAVipAttachmentPtrOutputWithContext(ctx context.Context) HAVipAttachmentPtrOutput

type HAVipAttachmentPtrInput added in v2.35.1

type HAVipAttachmentPtrInput interface {
	pulumi.Input

	ToHAVipAttachmentPtrOutput() HAVipAttachmentPtrOutput
	ToHAVipAttachmentPtrOutputWithContext(ctx context.Context) HAVipAttachmentPtrOutput
}

type HAVipAttachmentPtrOutput added in v2.35.1

type HAVipAttachmentPtrOutput struct {
	*pulumi.OutputState
}

func (HAVipAttachmentPtrOutput) ElementType added in v2.35.1

func (HAVipAttachmentPtrOutput) ElementType() reflect.Type

func (HAVipAttachmentPtrOutput) ToHAVipAttachmentPtrOutput added in v2.35.1

func (o HAVipAttachmentPtrOutput) ToHAVipAttachmentPtrOutput() HAVipAttachmentPtrOutput

func (HAVipAttachmentPtrOutput) ToHAVipAttachmentPtrOutputWithContext added in v2.35.1

func (o HAVipAttachmentPtrOutput) ToHAVipAttachmentPtrOutputWithContext(ctx context.Context) HAVipAttachmentPtrOutput

type HAVipAttachmentState

type HAVipAttachmentState struct {
	// The havipId of the havip attachment, the field can't be changed.
	HavipId pulumi.StringPtrInput
	// The instanceId of the havip attachment, the field can't be changed.
	InstanceId pulumi.StringPtrInput
}

func (HAVipAttachmentState) ElementType

func (HAVipAttachmentState) ElementType() reflect.Type

type HAVipInput added in v2.25.1

type HAVipInput interface {
	pulumi.Input

	ToHAVipOutput() HAVipOutput
	ToHAVipOutputWithContext(ctx context.Context) HAVipOutput
}

type HAVipMap added in v2.35.1

type HAVipMap map[string]HAVipInput

func (HAVipMap) ElementType added in v2.35.1

func (HAVipMap) ElementType() reflect.Type

func (HAVipMap) ToHAVipMapOutput added in v2.35.1

func (i HAVipMap) ToHAVipMapOutput() HAVipMapOutput

func (HAVipMap) ToHAVipMapOutputWithContext added in v2.35.1

func (i HAVipMap) ToHAVipMapOutputWithContext(ctx context.Context) HAVipMapOutput

type HAVipMapInput added in v2.35.1

type HAVipMapInput interface {
	pulumi.Input

	ToHAVipMapOutput() HAVipMapOutput
	ToHAVipMapOutputWithContext(context.Context) HAVipMapOutput
}

HAVipMapInput is an input type that accepts HAVipMap and HAVipMapOutput values. You can construct a concrete instance of `HAVipMapInput` via:

HAVipMap{ "key": HAVipArgs{...} }

type HAVipMapOutput added in v2.35.1

type HAVipMapOutput struct{ *pulumi.OutputState }

func (HAVipMapOutput) ElementType added in v2.35.1

func (HAVipMapOutput) ElementType() reflect.Type

func (HAVipMapOutput) MapIndex added in v2.35.1

func (HAVipMapOutput) ToHAVipMapOutput added in v2.35.1

func (o HAVipMapOutput) ToHAVipMapOutput() HAVipMapOutput

func (HAVipMapOutput) ToHAVipMapOutputWithContext added in v2.35.1

func (o HAVipMapOutput) ToHAVipMapOutputWithContext(ctx context.Context) HAVipMapOutput

type HAVipOutput added in v2.25.1

type HAVipOutput struct {
	*pulumi.OutputState
}

func (HAVipOutput) ElementType added in v2.25.1

func (HAVipOutput) ElementType() reflect.Type

func (HAVipOutput) ToHAVipOutput added in v2.25.1

func (o HAVipOutput) ToHAVipOutput() HAVipOutput

func (HAVipOutput) ToHAVipOutputWithContext added in v2.25.1

func (o HAVipOutput) ToHAVipOutputWithContext(ctx context.Context) HAVipOutput

func (HAVipOutput) ToHAVipPtrOutput added in v2.35.1

func (o HAVipOutput) ToHAVipPtrOutput() HAVipPtrOutput

func (HAVipOutput) ToHAVipPtrOutputWithContext added in v2.35.1

func (o HAVipOutput) ToHAVipPtrOutputWithContext(ctx context.Context) HAVipPtrOutput

type HAVipPtrInput added in v2.35.1

type HAVipPtrInput interface {
	pulumi.Input

	ToHAVipPtrOutput() HAVipPtrOutput
	ToHAVipPtrOutputWithContext(ctx context.Context) HAVipPtrOutput
}

type HAVipPtrOutput added in v2.35.1

type HAVipPtrOutput struct {
	*pulumi.OutputState
}

func (HAVipPtrOutput) ElementType added in v2.35.1

func (HAVipPtrOutput) ElementType() reflect.Type

func (HAVipPtrOutput) ToHAVipPtrOutput added in v2.35.1

func (o HAVipPtrOutput) ToHAVipPtrOutput() HAVipPtrOutput

func (HAVipPtrOutput) ToHAVipPtrOutputWithContext added in v2.35.1

func (o HAVipPtrOutput) ToHAVipPtrOutputWithContext(ctx context.Context) HAVipPtrOutput

type HAVipState

type HAVipState struct {
	// The description of the HaVip instance.
	Description pulumi.StringPtrInput
	// The ip address of the HaVip. If not filled, the default will be assigned one from the vswitch.
	IpAddress pulumi.StringPtrInput
	// The vswitchId of the HaVip, the field can't be changed.
	VswitchId pulumi.StringPtrInput
}

func (HAVipState) ElementType

func (HAVipState) ElementType() reflect.Type

type NatGateway

type NatGateway struct {
	pulumi.CustomResourceState

	// A list ID of the bandwidth packages, and split them with commas.
	BandwidthPackageIds pulumi.StringOutput `pulumi:"bandwidthPackageIds"`
	// A list of bandwidth packages for the nat gatway. Only support nat gateway created before 00:00 on November 4, 2017. Available in v1.13.0+ and v1.7.1-.
	BandwidthPackages NatGatewayBandwidthPackageArrayOutput `pulumi:"bandwidthPackages"`
	// Description of the nat gateway, This description can have a string of 2 to 256 characters, It cannot begin with http:// or https://. Defaults to null.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// The nat gateway will auto create a snap and forward item, the `forwardTableIds` is the created one.
	ForwardTableIds pulumi.StringOutput `pulumi:"forwardTableIds"`
	// The billing method of the nat gateway. Valid values are "PrePaid" and "PostPaid". Default to "PostPaid".
	InstanceChargeType pulumi.StringOutput `pulumi:"instanceChargeType"`
	// Name of the nat gateway. The value can have a string of 2 to 128 characters, must contain only alphanumeric characters or hyphens, such as "-",".","_", and must not begin or end with a hyphen, and must not begin with http:// or https://. Defaults to null.
	Name pulumi.StringOutput `pulumi:"name"`
	// The type of nat gateway. Default to `Normal`. Valid values: [`Normal`, `Enhanced`].
	NatType pulumi.StringPtrOutput `pulumi:"natType"`
	// The duration that you will buy the resource, in month. It is valid when `instanceChargeType` is `PrePaid`. Default to 1. Valid values: [1-9, 12, 24, 36]. At present, the provider does not support modify "period" and you can do that via web console.
	Period pulumi.IntPtrOutput `pulumi:"period"`
	// The nat gateway will auto create a snap and forward item, the `snatTableIds` is the created one.
	SnatTableIds pulumi.StringOutput `pulumi:"snatTableIds"`
	// It has been deprecated from provider version 1.7.1, and new field 'specification' can replace it.
	//
	// Deprecated: Field 'spec' has been deprecated from provider version 1.7.1, and new field 'specification' can replace it.
	Spec pulumi.StringPtrOutput `pulumi:"spec"`
	// The specification of the nat gateway. Valid values are `Small`, `Middle` and `Large`. Default to `Small`. Details refer to [Nat Gateway Specification](https://www.alibabacloud.com/help/doc-detail/42757.htm).
	Specification pulumi.StringPtrOutput `pulumi:"specification"`
	// The VPC ID.
	VpcId pulumi.StringOutput `pulumi:"vpcId"`
	// The id of VSwitch.
	VswitchId pulumi.StringPtrOutput `pulumi:"vswitchId"`
}

## Import

Nat gateway can be imported using the id, e.g.

```sh

$ pulumi import alicloud:vpc/natGateway:NatGateway example ngw-abc123456

```

func GetNatGateway

func GetNatGateway(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *NatGatewayState, opts ...pulumi.ResourceOption) (*NatGateway, error)

GetNatGateway gets an existing NatGateway 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 NewNatGateway

func NewNatGateway(ctx *pulumi.Context,
	name string, args *NatGatewayArgs, opts ...pulumi.ResourceOption) (*NatGateway, error)

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

func (*NatGateway) ElementType added in v2.25.1

func (*NatGateway) ElementType() reflect.Type

func (*NatGateway) ToNatGatewayOutput added in v2.25.1

func (i *NatGateway) ToNatGatewayOutput() NatGatewayOutput

func (*NatGateway) ToNatGatewayOutputWithContext added in v2.25.1

func (i *NatGateway) ToNatGatewayOutputWithContext(ctx context.Context) NatGatewayOutput

func (*NatGateway) ToNatGatewayPtrOutput added in v2.35.1

func (i *NatGateway) ToNatGatewayPtrOutput() NatGatewayPtrOutput

func (*NatGateway) ToNatGatewayPtrOutputWithContext added in v2.35.1

func (i *NatGateway) ToNatGatewayPtrOutputWithContext(ctx context.Context) NatGatewayPtrOutput

type NatGatewayArgs

type NatGatewayArgs struct {
	// A list of bandwidth packages for the nat gatway. Only support nat gateway created before 00:00 on November 4, 2017. Available in v1.13.0+ and v1.7.1-.
	BandwidthPackages NatGatewayBandwidthPackageArrayInput
	// Description of the nat gateway, This description can have a string of 2 to 256 characters, It cannot begin with http:// or https://. Defaults to null.
	Description pulumi.StringPtrInput
	// The billing method of the nat gateway. Valid values are "PrePaid" and "PostPaid". Default to "PostPaid".
	InstanceChargeType pulumi.StringPtrInput
	// Name of the nat gateway. The value can have a string of 2 to 128 characters, must contain only alphanumeric characters or hyphens, such as "-",".","_", and must not begin or end with a hyphen, and must not begin with http:// or https://. Defaults to null.
	Name pulumi.StringPtrInput
	// The type of nat gateway. Default to `Normal`. Valid values: [`Normal`, `Enhanced`].
	NatType pulumi.StringPtrInput
	// The duration that you will buy the resource, in month. It is valid when `instanceChargeType` is `PrePaid`. Default to 1. Valid values: [1-9, 12, 24, 36]. At present, the provider does not support modify "period" and you can do that via web console.
	Period pulumi.IntPtrInput
	// It has been deprecated from provider version 1.7.1, and new field 'specification' can replace it.
	//
	// Deprecated: Field 'spec' has been deprecated from provider version 1.7.1, and new field 'specification' can replace it.
	Spec pulumi.StringPtrInput
	// The specification of the nat gateway. Valid values are `Small`, `Middle` and `Large`. Default to `Small`. Details refer to [Nat Gateway Specification](https://www.alibabacloud.com/help/doc-detail/42757.htm).
	Specification pulumi.StringPtrInput
	// The VPC ID.
	VpcId pulumi.StringInput
	// The id of VSwitch.
	VswitchId pulumi.StringPtrInput
}

The set of arguments for constructing a NatGateway resource.

func (NatGatewayArgs) ElementType

func (NatGatewayArgs) ElementType() reflect.Type

type NatGatewayArray added in v2.35.1

type NatGatewayArray []NatGatewayInput

func (NatGatewayArray) ElementType added in v2.35.1

func (NatGatewayArray) ElementType() reflect.Type

func (NatGatewayArray) ToNatGatewayArrayOutput added in v2.35.1

func (i NatGatewayArray) ToNatGatewayArrayOutput() NatGatewayArrayOutput

func (NatGatewayArray) ToNatGatewayArrayOutputWithContext added in v2.35.1

func (i NatGatewayArray) ToNatGatewayArrayOutputWithContext(ctx context.Context) NatGatewayArrayOutput

type NatGatewayArrayInput added in v2.35.1

type NatGatewayArrayInput interface {
	pulumi.Input

	ToNatGatewayArrayOutput() NatGatewayArrayOutput
	ToNatGatewayArrayOutputWithContext(context.Context) NatGatewayArrayOutput
}

NatGatewayArrayInput is an input type that accepts NatGatewayArray and NatGatewayArrayOutput values. You can construct a concrete instance of `NatGatewayArrayInput` via:

NatGatewayArray{ NatGatewayArgs{...} }

type NatGatewayArrayOutput added in v2.35.1

type NatGatewayArrayOutput struct{ *pulumi.OutputState }

func (NatGatewayArrayOutput) ElementType added in v2.35.1

func (NatGatewayArrayOutput) ElementType() reflect.Type

func (NatGatewayArrayOutput) Index added in v2.35.1

func (NatGatewayArrayOutput) ToNatGatewayArrayOutput added in v2.35.1

func (o NatGatewayArrayOutput) ToNatGatewayArrayOutput() NatGatewayArrayOutput

func (NatGatewayArrayOutput) ToNatGatewayArrayOutputWithContext added in v2.35.1

func (o NatGatewayArrayOutput) ToNatGatewayArrayOutputWithContext(ctx context.Context) NatGatewayArrayOutput

type NatGatewayBandwidthPackage

type NatGatewayBandwidthPackage struct {
	Bandwidth         int     `pulumi:"bandwidth"`
	IpCount           int     `pulumi:"ipCount"`
	PublicIpAddresses *string `pulumi:"publicIpAddresses"`
	Zone              *string `pulumi:"zone"`
}

type NatGatewayBandwidthPackageArgs

type NatGatewayBandwidthPackageArgs struct {
	Bandwidth         pulumi.IntInput       `pulumi:"bandwidth"`
	IpCount           pulumi.IntInput       `pulumi:"ipCount"`
	PublicIpAddresses pulumi.StringPtrInput `pulumi:"publicIpAddresses"`
	Zone              pulumi.StringPtrInput `pulumi:"zone"`
}

func (NatGatewayBandwidthPackageArgs) ElementType

func (NatGatewayBandwidthPackageArgs) ToNatGatewayBandwidthPackageOutput

func (i NatGatewayBandwidthPackageArgs) ToNatGatewayBandwidthPackageOutput() NatGatewayBandwidthPackageOutput

func (NatGatewayBandwidthPackageArgs) ToNatGatewayBandwidthPackageOutputWithContext

func (i NatGatewayBandwidthPackageArgs) ToNatGatewayBandwidthPackageOutputWithContext(ctx context.Context) NatGatewayBandwidthPackageOutput

type NatGatewayBandwidthPackageArray

type NatGatewayBandwidthPackageArray []NatGatewayBandwidthPackageInput

func (NatGatewayBandwidthPackageArray) ElementType

func (NatGatewayBandwidthPackageArray) ToNatGatewayBandwidthPackageArrayOutput

func (i NatGatewayBandwidthPackageArray) ToNatGatewayBandwidthPackageArrayOutput() NatGatewayBandwidthPackageArrayOutput

func (NatGatewayBandwidthPackageArray) ToNatGatewayBandwidthPackageArrayOutputWithContext

func (i NatGatewayBandwidthPackageArray) ToNatGatewayBandwidthPackageArrayOutputWithContext(ctx context.Context) NatGatewayBandwidthPackageArrayOutput

type NatGatewayBandwidthPackageArrayInput

type NatGatewayBandwidthPackageArrayInput interface {
	pulumi.Input

	ToNatGatewayBandwidthPackageArrayOutput() NatGatewayBandwidthPackageArrayOutput
	ToNatGatewayBandwidthPackageArrayOutputWithContext(context.Context) NatGatewayBandwidthPackageArrayOutput
}

NatGatewayBandwidthPackageArrayInput is an input type that accepts NatGatewayBandwidthPackageArray and NatGatewayBandwidthPackageArrayOutput values. You can construct a concrete instance of `NatGatewayBandwidthPackageArrayInput` via:

NatGatewayBandwidthPackageArray{ NatGatewayBandwidthPackageArgs{...} }

type NatGatewayBandwidthPackageArrayOutput

type NatGatewayBandwidthPackageArrayOutput struct{ *pulumi.OutputState }

func (NatGatewayBandwidthPackageArrayOutput) ElementType

func (NatGatewayBandwidthPackageArrayOutput) Index

func (NatGatewayBandwidthPackageArrayOutput) ToNatGatewayBandwidthPackageArrayOutput

func (o NatGatewayBandwidthPackageArrayOutput) ToNatGatewayBandwidthPackageArrayOutput() NatGatewayBandwidthPackageArrayOutput

func (NatGatewayBandwidthPackageArrayOutput) ToNatGatewayBandwidthPackageArrayOutputWithContext

func (o NatGatewayBandwidthPackageArrayOutput) ToNatGatewayBandwidthPackageArrayOutputWithContext(ctx context.Context) NatGatewayBandwidthPackageArrayOutput

type NatGatewayBandwidthPackageInput

type NatGatewayBandwidthPackageInput interface {
	pulumi.Input

	ToNatGatewayBandwidthPackageOutput() NatGatewayBandwidthPackageOutput
	ToNatGatewayBandwidthPackageOutputWithContext(context.Context) NatGatewayBandwidthPackageOutput
}

NatGatewayBandwidthPackageInput is an input type that accepts NatGatewayBandwidthPackageArgs and NatGatewayBandwidthPackageOutput values. You can construct a concrete instance of `NatGatewayBandwidthPackageInput` via:

NatGatewayBandwidthPackageArgs{...}

type NatGatewayBandwidthPackageOutput

type NatGatewayBandwidthPackageOutput struct{ *pulumi.OutputState }

func (NatGatewayBandwidthPackageOutput) Bandwidth

func (NatGatewayBandwidthPackageOutput) ElementType

func (NatGatewayBandwidthPackageOutput) IpCount

func (NatGatewayBandwidthPackageOutput) PublicIpAddresses

func (NatGatewayBandwidthPackageOutput) ToNatGatewayBandwidthPackageOutput

func (o NatGatewayBandwidthPackageOutput) ToNatGatewayBandwidthPackageOutput() NatGatewayBandwidthPackageOutput

func (NatGatewayBandwidthPackageOutput) ToNatGatewayBandwidthPackageOutputWithContext

func (o NatGatewayBandwidthPackageOutput) ToNatGatewayBandwidthPackageOutputWithContext(ctx context.Context) NatGatewayBandwidthPackageOutput

func (NatGatewayBandwidthPackageOutput) Zone

type NatGatewayInput added in v2.25.1

type NatGatewayInput interface {
	pulumi.Input

	ToNatGatewayOutput() NatGatewayOutput
	ToNatGatewayOutputWithContext(ctx context.Context) NatGatewayOutput
}

type NatGatewayMap added in v2.35.1

type NatGatewayMap map[string]NatGatewayInput

func (NatGatewayMap) ElementType added in v2.35.1

func (NatGatewayMap) ElementType() reflect.Type

func (NatGatewayMap) ToNatGatewayMapOutput added in v2.35.1

func (i NatGatewayMap) ToNatGatewayMapOutput() NatGatewayMapOutput

func (NatGatewayMap) ToNatGatewayMapOutputWithContext added in v2.35.1

func (i NatGatewayMap) ToNatGatewayMapOutputWithContext(ctx context.Context) NatGatewayMapOutput

type NatGatewayMapInput added in v2.35.1

type NatGatewayMapInput interface {
	pulumi.Input

	ToNatGatewayMapOutput() NatGatewayMapOutput
	ToNatGatewayMapOutputWithContext(context.Context) NatGatewayMapOutput
}

NatGatewayMapInput is an input type that accepts NatGatewayMap and NatGatewayMapOutput values. You can construct a concrete instance of `NatGatewayMapInput` via:

NatGatewayMap{ "key": NatGatewayArgs{...} }

type NatGatewayMapOutput added in v2.35.1

type NatGatewayMapOutput struct{ *pulumi.OutputState }

func (NatGatewayMapOutput) ElementType added in v2.35.1

func (NatGatewayMapOutput) ElementType() reflect.Type

func (NatGatewayMapOutput) MapIndex added in v2.35.1

func (NatGatewayMapOutput) ToNatGatewayMapOutput added in v2.35.1

func (o NatGatewayMapOutput) ToNatGatewayMapOutput() NatGatewayMapOutput

func (NatGatewayMapOutput) ToNatGatewayMapOutputWithContext added in v2.35.1

func (o NatGatewayMapOutput) ToNatGatewayMapOutputWithContext(ctx context.Context) NatGatewayMapOutput

type NatGatewayOutput added in v2.25.1

type NatGatewayOutput struct {
	*pulumi.OutputState
}

func (NatGatewayOutput) ElementType added in v2.25.1

func (NatGatewayOutput) ElementType() reflect.Type

func (NatGatewayOutput) ToNatGatewayOutput added in v2.25.1

func (o NatGatewayOutput) ToNatGatewayOutput() NatGatewayOutput

func (NatGatewayOutput) ToNatGatewayOutputWithContext added in v2.25.1

func (o NatGatewayOutput) ToNatGatewayOutputWithContext(ctx context.Context) NatGatewayOutput

func (NatGatewayOutput) ToNatGatewayPtrOutput added in v2.35.1

func (o NatGatewayOutput) ToNatGatewayPtrOutput() NatGatewayPtrOutput

func (NatGatewayOutput) ToNatGatewayPtrOutputWithContext added in v2.35.1

func (o NatGatewayOutput) ToNatGatewayPtrOutputWithContext(ctx context.Context) NatGatewayPtrOutput

type NatGatewayPtrInput added in v2.35.1

type NatGatewayPtrInput interface {
	pulumi.Input

	ToNatGatewayPtrOutput() NatGatewayPtrOutput
	ToNatGatewayPtrOutputWithContext(ctx context.Context) NatGatewayPtrOutput
}

type NatGatewayPtrOutput added in v2.35.1

type NatGatewayPtrOutput struct {
	*pulumi.OutputState
}

func (NatGatewayPtrOutput) ElementType added in v2.35.1

func (NatGatewayPtrOutput) ElementType() reflect.Type

func (NatGatewayPtrOutput) ToNatGatewayPtrOutput added in v2.35.1

func (o NatGatewayPtrOutput) ToNatGatewayPtrOutput() NatGatewayPtrOutput

func (NatGatewayPtrOutput) ToNatGatewayPtrOutputWithContext added in v2.35.1

func (o NatGatewayPtrOutput) ToNatGatewayPtrOutputWithContext(ctx context.Context) NatGatewayPtrOutput

type NatGatewayState

type NatGatewayState struct {
	// A list ID of the bandwidth packages, and split them with commas.
	BandwidthPackageIds pulumi.StringPtrInput
	// A list of bandwidth packages for the nat gatway. Only support nat gateway created before 00:00 on November 4, 2017. Available in v1.13.0+ and v1.7.1-.
	BandwidthPackages NatGatewayBandwidthPackageArrayInput
	// Description of the nat gateway, This description can have a string of 2 to 256 characters, It cannot begin with http:// or https://. Defaults to null.
	Description pulumi.StringPtrInput
	// The nat gateway will auto create a snap and forward item, the `forwardTableIds` is the created one.
	ForwardTableIds pulumi.StringPtrInput
	// The billing method of the nat gateway. Valid values are "PrePaid" and "PostPaid". Default to "PostPaid".
	InstanceChargeType pulumi.StringPtrInput
	// Name of the nat gateway. The value can have a string of 2 to 128 characters, must contain only alphanumeric characters or hyphens, such as "-",".","_", and must not begin or end with a hyphen, and must not begin with http:// or https://. Defaults to null.
	Name pulumi.StringPtrInput
	// The type of nat gateway. Default to `Normal`. Valid values: [`Normal`, `Enhanced`].
	NatType pulumi.StringPtrInput
	// The duration that you will buy the resource, in month. It is valid when `instanceChargeType` is `PrePaid`. Default to 1. Valid values: [1-9, 12, 24, 36]. At present, the provider does not support modify "period" and you can do that via web console.
	Period pulumi.IntPtrInput
	// The nat gateway will auto create a snap and forward item, the `snatTableIds` is the created one.
	SnatTableIds pulumi.StringPtrInput
	// It has been deprecated from provider version 1.7.1, and new field 'specification' can replace it.
	//
	// Deprecated: Field 'spec' has been deprecated from provider version 1.7.1, and new field 'specification' can replace it.
	Spec pulumi.StringPtrInput
	// The specification of the nat gateway. Valid values are `Small`, `Middle` and `Large`. Default to `Small`. Details refer to [Nat Gateway Specification](https://www.alibabacloud.com/help/doc-detail/42757.htm).
	Specification pulumi.StringPtrInput
	// The VPC ID.
	VpcId pulumi.StringPtrInput
	// The id of VSwitch.
	VswitchId pulumi.StringPtrInput
}

func (NatGatewayState) ElementType

func (NatGatewayState) ElementType() reflect.Type

type Network

type Network struct {
	pulumi.CustomResourceState

	// The CIDR block for the VPC.
	CidrBlock pulumi.StringOutput `pulumi:"cidrBlock"`
	// The VPC description. Defaults to null.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// The name of the VPC. Defaults to null.
	Name pulumi.StringOutput `pulumi:"name"`
	// The Id of resource group which the VPC belongs.
	ResourceGroupId pulumi.StringOutput `pulumi:"resourceGroupId"`
	// The route table ID of the router created by default on VPC creation.
	RouteTableId pulumi.StringOutput `pulumi:"routeTableId"`
	// The ID of the router created by default on VPC creation.
	RouterId pulumi.StringOutput `pulumi:"routerId"`
	// Deprecated: Attribute router_table_id has been deprecated and replaced with route_table_id.
	RouterTableId pulumi.StringOutput `pulumi:"routerTableId"`
	// The secondary CIDR blocks for the VPC.
	SecondaryCidrBlocks pulumi.StringArrayOutput `pulumi:"secondaryCidrBlocks"`
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapOutput `pulumi:"tags"`
}

## Import

VPC can be imported using the id, e.g.

```sh

$ pulumi import alicloud:vpc/network:Network example vpc-abc123456

```

func GetNetwork

func GetNetwork(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *NetworkState, opts ...pulumi.ResourceOption) (*Network, error)

GetNetwork gets an existing Network 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 NewNetwork

func NewNetwork(ctx *pulumi.Context,
	name string, args *NetworkArgs, opts ...pulumi.ResourceOption) (*Network, error)

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

func (*Network) ElementType added in v2.25.1

func (*Network) ElementType() reflect.Type

func (*Network) ToNetworkOutput added in v2.25.1

func (i *Network) ToNetworkOutput() NetworkOutput

func (*Network) ToNetworkOutputWithContext added in v2.25.1

func (i *Network) ToNetworkOutputWithContext(ctx context.Context) NetworkOutput

func (*Network) ToNetworkPtrOutput added in v2.35.1

func (i *Network) ToNetworkPtrOutput() NetworkPtrOutput

func (*Network) ToNetworkPtrOutputWithContext added in v2.35.1

func (i *Network) ToNetworkPtrOutputWithContext(ctx context.Context) NetworkPtrOutput

type NetworkAcl

type NetworkAcl struct {
	pulumi.CustomResourceState

	// The description of the network acl instance.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// The name of the network acl.
	Name pulumi.StringOutput `pulumi:"name"`
	// The vpcId of the network acl, the field can't be changed.
	VpcId pulumi.StringOutput `pulumi:"vpcId"`
}

Provides a network acl resource to add network acls.

> **NOTE:** Available in 1.43.0+. Currently, the resource are only available in Hongkong(cn-hongkong), India(ap-south-1), and Indonesia(ap-southeast-1) regions.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud/vpc"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		defaultNetwork, err := vpc.NewNetwork(ctx, "defaultNetwork", &vpc.NetworkArgs{
			CidrBlock: pulumi.String("172.16.0.0/12"),
		})
		if err != nil {
			return err
		}
		_, err = vpc.NewNetworkAcl(ctx, "defaultNetworkAcl", &vpc.NetworkAclArgs{
			VpcId:       defaultNetwork.ID(),
			Description: pulumi.String("network_acl"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

The network acl can be imported using the id, e.g.

```sh

$ pulumi import alicloud:vpc/networkAcl:NetworkAcl default nacl-abc123456

```

func GetNetworkAcl

func GetNetworkAcl(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *NetworkAclState, opts ...pulumi.ResourceOption) (*NetworkAcl, error)

GetNetworkAcl gets an existing NetworkAcl 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 NewNetworkAcl

func NewNetworkAcl(ctx *pulumi.Context,
	name string, args *NetworkAclArgs, opts ...pulumi.ResourceOption) (*NetworkAcl, error)

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

func (*NetworkAcl) ElementType added in v2.25.1

func (*NetworkAcl) ElementType() reflect.Type

func (*NetworkAcl) ToNetworkAclOutput added in v2.25.1

func (i *NetworkAcl) ToNetworkAclOutput() NetworkAclOutput

func (*NetworkAcl) ToNetworkAclOutputWithContext added in v2.25.1

func (i *NetworkAcl) ToNetworkAclOutputWithContext(ctx context.Context) NetworkAclOutput

func (*NetworkAcl) ToNetworkAclPtrOutput added in v2.35.1

func (i *NetworkAcl) ToNetworkAclPtrOutput() NetworkAclPtrOutput

func (*NetworkAcl) ToNetworkAclPtrOutputWithContext added in v2.35.1

func (i *NetworkAcl) ToNetworkAclPtrOutputWithContext(ctx context.Context) NetworkAclPtrOutput

type NetworkAclArgs

type NetworkAclArgs struct {
	// The description of the network acl instance.
	Description pulumi.StringPtrInput
	// The name of the network acl.
	Name pulumi.StringPtrInput
	// The vpcId of the network acl, the field can't be changed.
	VpcId pulumi.StringInput
}

The set of arguments for constructing a NetworkAcl resource.

func (NetworkAclArgs) ElementType

func (NetworkAclArgs) ElementType() reflect.Type

type NetworkAclArray added in v2.35.1

type NetworkAclArray []NetworkAclInput

func (NetworkAclArray) ElementType added in v2.35.1

func (NetworkAclArray) ElementType() reflect.Type

func (NetworkAclArray) ToNetworkAclArrayOutput added in v2.35.1

func (i NetworkAclArray) ToNetworkAclArrayOutput() NetworkAclArrayOutput

func (NetworkAclArray) ToNetworkAclArrayOutputWithContext added in v2.35.1

func (i NetworkAclArray) ToNetworkAclArrayOutputWithContext(ctx context.Context) NetworkAclArrayOutput

type NetworkAclArrayInput added in v2.35.1

type NetworkAclArrayInput interface {
	pulumi.Input

	ToNetworkAclArrayOutput() NetworkAclArrayOutput
	ToNetworkAclArrayOutputWithContext(context.Context) NetworkAclArrayOutput
}

NetworkAclArrayInput is an input type that accepts NetworkAclArray and NetworkAclArrayOutput values. You can construct a concrete instance of `NetworkAclArrayInput` via:

NetworkAclArray{ NetworkAclArgs{...} }

type NetworkAclArrayOutput added in v2.35.1

type NetworkAclArrayOutput struct{ *pulumi.OutputState }

func (NetworkAclArrayOutput) ElementType added in v2.35.1

func (NetworkAclArrayOutput) ElementType() reflect.Type

func (NetworkAclArrayOutput) Index added in v2.35.1

func (NetworkAclArrayOutput) ToNetworkAclArrayOutput added in v2.35.1

func (o NetworkAclArrayOutput) ToNetworkAclArrayOutput() NetworkAclArrayOutput

func (NetworkAclArrayOutput) ToNetworkAclArrayOutputWithContext added in v2.35.1

func (o NetworkAclArrayOutput) ToNetworkAclArrayOutputWithContext(ctx context.Context) NetworkAclArrayOutput

type NetworkAclAttachment

type NetworkAclAttachment struct {
	pulumi.CustomResourceState

	// The id of the network acl, the field can't be changed.
	NetworkAclId pulumi.StringOutput `pulumi:"networkAclId"`
	// List of the resources associated with the network acl. The details see Block Resources.
	Resources NetworkAclAttachmentResourceArrayOutput `pulumi:"resources"`
}

Provides a network acl attachment resource to associate network acls to vswitches.

> **NOTE:** Available in 1.44.0+. Currently, the resource are only available in Hongkong(cn-hongkong), India(ap-south-1), and Indonesia(ap-southeast-1) regions.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud"
"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud/vpc"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		name := "NatGatewayConfigSpec"
		if param := cfg.Get("name"); param != "" {
			name = param
		}
		opt0 := "VSwitch"
		defaultZones, err := alicloud.GetZones(ctx, &alicloud.GetZonesArgs{
			AvailableResourceCreation: &opt0,
		}, nil)
		if err != nil {
			return err
		}
		defaultNetwork, err := vpc.NewNetwork(ctx, "defaultNetwork", &vpc.NetworkArgs{
			CidrBlock: pulumi.String("172.16.0.0/12"),
		})
		if err != nil {
			return err
		}
		defaultNetworkAcl, err := vpc.NewNetworkAcl(ctx, "defaultNetworkAcl", &vpc.NetworkAclArgs{
			VpcId: defaultNetwork.ID(),
		})
		if err != nil {
			return err
		}
		defaultSwitch, err := vpc.NewSwitch(ctx, "defaultSwitch", &vpc.SwitchArgs{
			VpcId:            defaultNetwork.ID(),
			CidrBlock:        pulumi.String("172.16.0.0/21"),
			AvailabilityZone: pulumi.String(defaultZones.Zones[0].Id),
		})
		if err != nil {
			return err
		}
		_, err = vpc.NewNetworkAclAttachment(ctx, "defaultNetworkAclAttachment", &vpc.NetworkAclAttachmentArgs{
			NetworkAclId: defaultNetworkAcl.ID(),
			Resources: vpc.NetworkAclAttachmentResourceArray{
				&vpc.NetworkAclAttachmentResourceArgs{
					ResourceId:   defaultSwitch.ID(),
					ResourceType: pulumi.String("VSwitch"),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetNetworkAclAttachment

func GetNetworkAclAttachment(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *NetworkAclAttachmentState, opts ...pulumi.ResourceOption) (*NetworkAclAttachment, error)

GetNetworkAclAttachment gets an existing NetworkAclAttachment 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 NewNetworkAclAttachment

func NewNetworkAclAttachment(ctx *pulumi.Context,
	name string, args *NetworkAclAttachmentArgs, opts ...pulumi.ResourceOption) (*NetworkAclAttachment, error)

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

func (*NetworkAclAttachment) ElementType added in v2.25.1

func (*NetworkAclAttachment) ElementType() reflect.Type

func (*NetworkAclAttachment) ToNetworkAclAttachmentOutput added in v2.25.1

func (i *NetworkAclAttachment) ToNetworkAclAttachmentOutput() NetworkAclAttachmentOutput

func (*NetworkAclAttachment) ToNetworkAclAttachmentOutputWithContext added in v2.25.1

func (i *NetworkAclAttachment) ToNetworkAclAttachmentOutputWithContext(ctx context.Context) NetworkAclAttachmentOutput

func (*NetworkAclAttachment) ToNetworkAclAttachmentPtrOutput added in v2.35.1

func (i *NetworkAclAttachment) ToNetworkAclAttachmentPtrOutput() NetworkAclAttachmentPtrOutput

func (*NetworkAclAttachment) ToNetworkAclAttachmentPtrOutputWithContext added in v2.35.1

func (i *NetworkAclAttachment) ToNetworkAclAttachmentPtrOutputWithContext(ctx context.Context) NetworkAclAttachmentPtrOutput

type NetworkAclAttachmentArgs

type NetworkAclAttachmentArgs struct {
	// The id of the network acl, the field can't be changed.
	NetworkAclId pulumi.StringInput
	// List of the resources associated with the network acl. The details see Block Resources.
	Resources NetworkAclAttachmentResourceArrayInput
}

The set of arguments for constructing a NetworkAclAttachment resource.

func (NetworkAclAttachmentArgs) ElementType

func (NetworkAclAttachmentArgs) ElementType() reflect.Type

type NetworkAclAttachmentArray added in v2.35.1

type NetworkAclAttachmentArray []NetworkAclAttachmentInput

func (NetworkAclAttachmentArray) ElementType added in v2.35.1

func (NetworkAclAttachmentArray) ElementType() reflect.Type

func (NetworkAclAttachmentArray) ToNetworkAclAttachmentArrayOutput added in v2.35.1

func (i NetworkAclAttachmentArray) ToNetworkAclAttachmentArrayOutput() NetworkAclAttachmentArrayOutput

func (NetworkAclAttachmentArray) ToNetworkAclAttachmentArrayOutputWithContext added in v2.35.1

func (i NetworkAclAttachmentArray) ToNetworkAclAttachmentArrayOutputWithContext(ctx context.Context) NetworkAclAttachmentArrayOutput

type NetworkAclAttachmentArrayInput added in v2.35.1

type NetworkAclAttachmentArrayInput interface {
	pulumi.Input

	ToNetworkAclAttachmentArrayOutput() NetworkAclAttachmentArrayOutput
	ToNetworkAclAttachmentArrayOutputWithContext(context.Context) NetworkAclAttachmentArrayOutput
}

NetworkAclAttachmentArrayInput is an input type that accepts NetworkAclAttachmentArray and NetworkAclAttachmentArrayOutput values. You can construct a concrete instance of `NetworkAclAttachmentArrayInput` via:

NetworkAclAttachmentArray{ NetworkAclAttachmentArgs{...} }

type NetworkAclAttachmentArrayOutput added in v2.35.1

type NetworkAclAttachmentArrayOutput struct{ *pulumi.OutputState }

func (NetworkAclAttachmentArrayOutput) ElementType added in v2.35.1

func (NetworkAclAttachmentArrayOutput) Index added in v2.35.1

func (NetworkAclAttachmentArrayOutput) ToNetworkAclAttachmentArrayOutput added in v2.35.1

func (o NetworkAclAttachmentArrayOutput) ToNetworkAclAttachmentArrayOutput() NetworkAclAttachmentArrayOutput

func (NetworkAclAttachmentArrayOutput) ToNetworkAclAttachmentArrayOutputWithContext added in v2.35.1

func (o NetworkAclAttachmentArrayOutput) ToNetworkAclAttachmentArrayOutputWithContext(ctx context.Context) NetworkAclAttachmentArrayOutput

type NetworkAclAttachmentInput added in v2.25.1

type NetworkAclAttachmentInput interface {
	pulumi.Input

	ToNetworkAclAttachmentOutput() NetworkAclAttachmentOutput
	ToNetworkAclAttachmentOutputWithContext(ctx context.Context) NetworkAclAttachmentOutput
}

type NetworkAclAttachmentMap added in v2.35.1

type NetworkAclAttachmentMap map[string]NetworkAclAttachmentInput

func (NetworkAclAttachmentMap) ElementType added in v2.35.1

func (NetworkAclAttachmentMap) ElementType() reflect.Type

func (NetworkAclAttachmentMap) ToNetworkAclAttachmentMapOutput added in v2.35.1

func (i NetworkAclAttachmentMap) ToNetworkAclAttachmentMapOutput() NetworkAclAttachmentMapOutput

func (NetworkAclAttachmentMap) ToNetworkAclAttachmentMapOutputWithContext added in v2.35.1

func (i NetworkAclAttachmentMap) ToNetworkAclAttachmentMapOutputWithContext(ctx context.Context) NetworkAclAttachmentMapOutput

type NetworkAclAttachmentMapInput added in v2.35.1

type NetworkAclAttachmentMapInput interface {
	pulumi.Input

	ToNetworkAclAttachmentMapOutput() NetworkAclAttachmentMapOutput
	ToNetworkAclAttachmentMapOutputWithContext(context.Context) NetworkAclAttachmentMapOutput
}

NetworkAclAttachmentMapInput is an input type that accepts NetworkAclAttachmentMap and NetworkAclAttachmentMapOutput values. You can construct a concrete instance of `NetworkAclAttachmentMapInput` via:

NetworkAclAttachmentMap{ "key": NetworkAclAttachmentArgs{...} }

type NetworkAclAttachmentMapOutput added in v2.35.1

type NetworkAclAttachmentMapOutput struct{ *pulumi.OutputState }

func (NetworkAclAttachmentMapOutput) ElementType added in v2.35.1

func (NetworkAclAttachmentMapOutput) MapIndex added in v2.35.1

func (NetworkAclAttachmentMapOutput) ToNetworkAclAttachmentMapOutput added in v2.35.1

func (o NetworkAclAttachmentMapOutput) ToNetworkAclAttachmentMapOutput() NetworkAclAttachmentMapOutput

func (NetworkAclAttachmentMapOutput) ToNetworkAclAttachmentMapOutputWithContext added in v2.35.1

func (o NetworkAclAttachmentMapOutput) ToNetworkAclAttachmentMapOutputWithContext(ctx context.Context) NetworkAclAttachmentMapOutput

type NetworkAclAttachmentOutput added in v2.25.1

type NetworkAclAttachmentOutput struct {
	*pulumi.OutputState
}

func (NetworkAclAttachmentOutput) ElementType added in v2.25.1

func (NetworkAclAttachmentOutput) ElementType() reflect.Type

func (NetworkAclAttachmentOutput) ToNetworkAclAttachmentOutput added in v2.25.1

func (o NetworkAclAttachmentOutput) ToNetworkAclAttachmentOutput() NetworkAclAttachmentOutput

func (NetworkAclAttachmentOutput) ToNetworkAclAttachmentOutputWithContext added in v2.25.1

func (o NetworkAclAttachmentOutput) ToNetworkAclAttachmentOutputWithContext(ctx context.Context) NetworkAclAttachmentOutput

func (NetworkAclAttachmentOutput) ToNetworkAclAttachmentPtrOutput added in v2.35.1

func (o NetworkAclAttachmentOutput) ToNetworkAclAttachmentPtrOutput() NetworkAclAttachmentPtrOutput

func (NetworkAclAttachmentOutput) ToNetworkAclAttachmentPtrOutputWithContext added in v2.35.1

func (o NetworkAclAttachmentOutput) ToNetworkAclAttachmentPtrOutputWithContext(ctx context.Context) NetworkAclAttachmentPtrOutput

type NetworkAclAttachmentPtrInput added in v2.35.1

type NetworkAclAttachmentPtrInput interface {
	pulumi.Input

	ToNetworkAclAttachmentPtrOutput() NetworkAclAttachmentPtrOutput
	ToNetworkAclAttachmentPtrOutputWithContext(ctx context.Context) NetworkAclAttachmentPtrOutput
}

type NetworkAclAttachmentPtrOutput added in v2.35.1

type NetworkAclAttachmentPtrOutput struct {
	*pulumi.OutputState
}

func (NetworkAclAttachmentPtrOutput) ElementType added in v2.35.1

func (NetworkAclAttachmentPtrOutput) ToNetworkAclAttachmentPtrOutput added in v2.35.1

func (o NetworkAclAttachmentPtrOutput) ToNetworkAclAttachmentPtrOutput() NetworkAclAttachmentPtrOutput

func (NetworkAclAttachmentPtrOutput) ToNetworkAclAttachmentPtrOutputWithContext added in v2.35.1

func (o NetworkAclAttachmentPtrOutput) ToNetworkAclAttachmentPtrOutputWithContext(ctx context.Context) NetworkAclAttachmentPtrOutput

type NetworkAclAttachmentResource

type NetworkAclAttachmentResource struct {
	// The resource id that the network acl will associate with.
	ResourceId string `pulumi:"resourceId"`
	// The resource id that the network acl will associate with. Only support `VSwitch` now.
	ResourceType string `pulumi:"resourceType"`
}

type NetworkAclAttachmentResourceArgs

type NetworkAclAttachmentResourceArgs struct {
	// The resource id that the network acl will associate with.
	ResourceId pulumi.StringInput `pulumi:"resourceId"`
	// The resource id that the network acl will associate with. Only support `VSwitch` now.
	ResourceType pulumi.StringInput `pulumi:"resourceType"`
}

func (NetworkAclAttachmentResourceArgs) ElementType

func (NetworkAclAttachmentResourceArgs) ToNetworkAclAttachmentResourceOutput

func (i NetworkAclAttachmentResourceArgs) ToNetworkAclAttachmentResourceOutput() NetworkAclAttachmentResourceOutput

func (NetworkAclAttachmentResourceArgs) ToNetworkAclAttachmentResourceOutputWithContext

func (i NetworkAclAttachmentResourceArgs) ToNetworkAclAttachmentResourceOutputWithContext(ctx context.Context) NetworkAclAttachmentResourceOutput

type NetworkAclAttachmentResourceArray

type NetworkAclAttachmentResourceArray []NetworkAclAttachmentResourceInput

func (NetworkAclAttachmentResourceArray) ElementType

func (NetworkAclAttachmentResourceArray) ToNetworkAclAttachmentResourceArrayOutput

func (i NetworkAclAttachmentResourceArray) ToNetworkAclAttachmentResourceArrayOutput() NetworkAclAttachmentResourceArrayOutput

func (NetworkAclAttachmentResourceArray) ToNetworkAclAttachmentResourceArrayOutputWithContext

func (i NetworkAclAttachmentResourceArray) ToNetworkAclAttachmentResourceArrayOutputWithContext(ctx context.Context) NetworkAclAttachmentResourceArrayOutput

type NetworkAclAttachmentResourceArrayInput

type NetworkAclAttachmentResourceArrayInput interface {
	pulumi.Input

	ToNetworkAclAttachmentResourceArrayOutput() NetworkAclAttachmentResourceArrayOutput
	ToNetworkAclAttachmentResourceArrayOutputWithContext(context.Context) NetworkAclAttachmentResourceArrayOutput
}

NetworkAclAttachmentResourceArrayInput is an input type that accepts NetworkAclAttachmentResourceArray and NetworkAclAttachmentResourceArrayOutput values. You can construct a concrete instance of `NetworkAclAttachmentResourceArrayInput` via:

NetworkAclAttachmentResourceArray{ NetworkAclAttachmentResourceArgs{...} }

type NetworkAclAttachmentResourceArrayOutput

type NetworkAclAttachmentResourceArrayOutput struct{ *pulumi.OutputState }

func (NetworkAclAttachmentResourceArrayOutput) ElementType

func (NetworkAclAttachmentResourceArrayOutput) Index

func (NetworkAclAttachmentResourceArrayOutput) ToNetworkAclAttachmentResourceArrayOutput

func (o NetworkAclAttachmentResourceArrayOutput) ToNetworkAclAttachmentResourceArrayOutput() NetworkAclAttachmentResourceArrayOutput

func (NetworkAclAttachmentResourceArrayOutput) ToNetworkAclAttachmentResourceArrayOutputWithContext

func (o NetworkAclAttachmentResourceArrayOutput) ToNetworkAclAttachmentResourceArrayOutputWithContext(ctx context.Context) NetworkAclAttachmentResourceArrayOutput

type NetworkAclAttachmentResourceInput

type NetworkAclAttachmentResourceInput interface {
	pulumi.Input

	ToNetworkAclAttachmentResourceOutput() NetworkAclAttachmentResourceOutput
	ToNetworkAclAttachmentResourceOutputWithContext(context.Context) NetworkAclAttachmentResourceOutput
}

NetworkAclAttachmentResourceInput is an input type that accepts NetworkAclAttachmentResourceArgs and NetworkAclAttachmentResourceOutput values. You can construct a concrete instance of `NetworkAclAttachmentResourceInput` via:

NetworkAclAttachmentResourceArgs{...}

type NetworkAclAttachmentResourceOutput

type NetworkAclAttachmentResourceOutput struct{ *pulumi.OutputState }

func (NetworkAclAttachmentResourceOutput) ElementType

func (NetworkAclAttachmentResourceOutput) ResourceId

The resource id that the network acl will associate with.

func (NetworkAclAttachmentResourceOutput) ResourceType

The resource id that the network acl will associate with. Only support `VSwitch` now.

func (NetworkAclAttachmentResourceOutput) ToNetworkAclAttachmentResourceOutput

func (o NetworkAclAttachmentResourceOutput) ToNetworkAclAttachmentResourceOutput() NetworkAclAttachmentResourceOutput

func (NetworkAclAttachmentResourceOutput) ToNetworkAclAttachmentResourceOutputWithContext

func (o NetworkAclAttachmentResourceOutput) ToNetworkAclAttachmentResourceOutputWithContext(ctx context.Context) NetworkAclAttachmentResourceOutput

type NetworkAclAttachmentState

type NetworkAclAttachmentState struct {
	// The id of the network acl, the field can't be changed.
	NetworkAclId pulumi.StringPtrInput
	// List of the resources associated with the network acl. The details see Block Resources.
	Resources NetworkAclAttachmentResourceArrayInput
}

func (NetworkAclAttachmentState) ElementType

func (NetworkAclAttachmentState) ElementType() reflect.Type

type NetworkAclEntries

type NetworkAclEntries struct {
	pulumi.CustomResourceState

	// List of the egress entries of the network acl. The order of the egress entries determines the priority. The details see Block Egress.
	Egresses NetworkAclEntriesEgressArrayOutput `pulumi:"egresses"`
	// List of the ingress entries of the network acl. The order of the ingress entries determines the priority. The details see Block Ingress.
	Ingresses NetworkAclEntriesIngressArrayOutput `pulumi:"ingresses"`
	// The id of the network acl, the field can't be changed.
	NetworkAclId pulumi.StringOutput `pulumi:"networkAclId"`
}

Provides a network acl entries resource to create ingress and egress entries.

> **NOTE:** Available in 1.45.0+. Currently, the resource are only available in Hongkong(cn-hongkong), India(ap-south-1), and Indonesia(ap-southeast-1) regions.

> **NOTE:** It doesn't support concurrency and the order of the ingress and egress entries determines the priority.

> **NOTE:** Using this resource need to open a whitelist.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud"
"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud/vpc"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		name := "NetworkAclEntries"
		if param := cfg.Get("name"); param != "" {
			name = param
		}
		opt0 := "VSwitch"
		defaultZones, err := alicloud.GetZones(ctx, &alicloud.GetZonesArgs{
			AvailableResourceCreation: &opt0,
		}, nil)
		if err != nil {
			return err
		}
		defaultNetwork, err := vpc.NewNetwork(ctx, "defaultNetwork", &vpc.NetworkArgs{
			CidrBlock: pulumi.String("172.16.0.0/12"),
		})
		if err != nil {
			return err
		}
		defaultNetworkAcl, err := vpc.NewNetworkAcl(ctx, "defaultNetworkAcl", &vpc.NetworkAclArgs{
			VpcId: defaultNetwork.ID(),
		})
		if err != nil {
			return err
		}
		defaultSwitch, err := vpc.NewSwitch(ctx, "defaultSwitch", &vpc.SwitchArgs{
			VpcId:            defaultNetwork.ID(),
			CidrBlock:        pulumi.String("172.16.0.0/21"),
			AvailabilityZone: pulumi.String(defaultZones.Zones[0].Id),
		})
		if err != nil {
			return err
		}
		_, err = vpc.NewNetworkAclAttachment(ctx, "defaultNetworkAclAttachment", &vpc.NetworkAclAttachmentArgs{
			NetworkAclId: defaultNetworkAcl.ID(),
			Resources: vpc.NetworkAclAttachmentResourceArray{
				&vpc.NetworkAclAttachmentResourceArgs{
					ResourceId:   defaultSwitch.ID(),
					ResourceType: pulumi.String("VSwitch"),
				},
			},
		})
		if err != nil {
			return err
		}
		_, err = vpc.NewNetworkAclEntries(ctx, "defaultNetworkAclEntries", &vpc.NetworkAclEntriesArgs{
			NetworkAclId: defaultNetworkAcl.ID(),
			Ingresses: vpc.NetworkAclEntriesIngressArray{
				&vpc.NetworkAclEntriesIngressArgs{
					Protocol:     pulumi.String("all"),
					Port:         pulumi.String("-1/-1"),
					SourceCidrIp: pulumi.String("0.0.0.0/32"),
					Name:         pulumi.String(name),
					EntryType:    pulumi.String("custom"),
					Policy:       pulumi.String("accept"),
					Description:  pulumi.String(name),
				},
			},
			Egresses: vpc.NetworkAclEntriesEgressArray{
				&vpc.NetworkAclEntriesEgressArgs{
					Protocol:          pulumi.String("all"),
					Port:              pulumi.String("-1/-1"),
					DestinationCidrIp: pulumi.String("0.0.0.0/32"),
					Name:              pulumi.String(name),
					EntryType:         pulumi.String("custom"),
					Policy:            pulumi.String("accept"),
					Description:       pulumi.String(name),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetNetworkAclEntries

func GetNetworkAclEntries(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *NetworkAclEntriesState, opts ...pulumi.ResourceOption) (*NetworkAclEntries, error)

GetNetworkAclEntries gets an existing NetworkAclEntries 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 NewNetworkAclEntries

func NewNetworkAclEntries(ctx *pulumi.Context,
	name string, args *NetworkAclEntriesArgs, opts ...pulumi.ResourceOption) (*NetworkAclEntries, error)

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

func (*NetworkAclEntries) ElementType added in v2.25.1

func (*NetworkAclEntries) ElementType() reflect.Type

func (*NetworkAclEntries) ToNetworkAclEntriesOutput added in v2.25.1

func (i *NetworkAclEntries) ToNetworkAclEntriesOutput() NetworkAclEntriesOutput

func (*NetworkAclEntries) ToNetworkAclEntriesOutputWithContext added in v2.25.1

func (i *NetworkAclEntries) ToNetworkAclEntriesOutputWithContext(ctx context.Context) NetworkAclEntriesOutput

func (*NetworkAclEntries) ToNetworkAclEntriesPtrOutput added in v2.35.1

func (i *NetworkAclEntries) ToNetworkAclEntriesPtrOutput() NetworkAclEntriesPtrOutput

func (*NetworkAclEntries) ToNetworkAclEntriesPtrOutputWithContext added in v2.35.1

func (i *NetworkAclEntries) ToNetworkAclEntriesPtrOutputWithContext(ctx context.Context) NetworkAclEntriesPtrOutput

type NetworkAclEntriesArgs

type NetworkAclEntriesArgs struct {
	// List of the egress entries of the network acl. The order of the egress entries determines the priority. The details see Block Egress.
	Egresses NetworkAclEntriesEgressArrayInput
	// List of the ingress entries of the network acl. The order of the ingress entries determines the priority. The details see Block Ingress.
	Ingresses NetworkAclEntriesIngressArrayInput
	// The id of the network acl, the field can't be changed.
	NetworkAclId pulumi.StringInput
}

The set of arguments for constructing a NetworkAclEntries resource.

func (NetworkAclEntriesArgs) ElementType

func (NetworkAclEntriesArgs) ElementType() reflect.Type

type NetworkAclEntriesArray added in v2.35.1

type NetworkAclEntriesArray []NetworkAclEntriesInput

func (NetworkAclEntriesArray) ElementType added in v2.35.1

func (NetworkAclEntriesArray) ElementType() reflect.Type

func (NetworkAclEntriesArray) ToNetworkAclEntriesArrayOutput added in v2.35.1

func (i NetworkAclEntriesArray) ToNetworkAclEntriesArrayOutput() NetworkAclEntriesArrayOutput

func (NetworkAclEntriesArray) ToNetworkAclEntriesArrayOutputWithContext added in v2.35.1

func (i NetworkAclEntriesArray) ToNetworkAclEntriesArrayOutputWithContext(ctx context.Context) NetworkAclEntriesArrayOutput

type NetworkAclEntriesArrayInput added in v2.35.1

type NetworkAclEntriesArrayInput interface {
	pulumi.Input

	ToNetworkAclEntriesArrayOutput() NetworkAclEntriesArrayOutput
	ToNetworkAclEntriesArrayOutputWithContext(context.Context) NetworkAclEntriesArrayOutput
}

NetworkAclEntriesArrayInput is an input type that accepts NetworkAclEntriesArray and NetworkAclEntriesArrayOutput values. You can construct a concrete instance of `NetworkAclEntriesArrayInput` via:

NetworkAclEntriesArray{ NetworkAclEntriesArgs{...} }

type NetworkAclEntriesArrayOutput added in v2.35.1

type NetworkAclEntriesArrayOutput struct{ *pulumi.OutputState }

func (NetworkAclEntriesArrayOutput) ElementType added in v2.35.1

func (NetworkAclEntriesArrayOutput) Index added in v2.35.1

func (NetworkAclEntriesArrayOutput) ToNetworkAclEntriesArrayOutput added in v2.35.1

func (o NetworkAclEntriesArrayOutput) ToNetworkAclEntriesArrayOutput() NetworkAclEntriesArrayOutput

func (NetworkAclEntriesArrayOutput) ToNetworkAclEntriesArrayOutputWithContext added in v2.35.1

func (o NetworkAclEntriesArrayOutput) ToNetworkAclEntriesArrayOutputWithContext(ctx context.Context) NetworkAclEntriesArrayOutput

type NetworkAclEntriesEgress

type NetworkAclEntriesEgress struct {
	// The description of the egress entry.
	Description *string `pulumi:"description"`
	// The destination ip of the egress entry.
	DestinationCidrIp *string `pulumi:"destinationCidrIp"`
	// The entry type of the egress entry. It must be `custom` or `system`. Default value is `custom`.
	EntryType *string `pulumi:"entryType"`
	// The name of the egress entry.
	Name *string `pulumi:"name"`
	// The policy of the egress entry. It must be `accept` or `drop`.
	Policy *string `pulumi:"policy"`
	// The port of the egress entry.
	Port *string `pulumi:"port"`
	// The protocol of the egress entry.
	Protocol *string `pulumi:"protocol"`
}

type NetworkAclEntriesEgressArgs

type NetworkAclEntriesEgressArgs struct {
	// The description of the egress entry.
	Description pulumi.StringPtrInput `pulumi:"description"`
	// The destination ip of the egress entry.
	DestinationCidrIp pulumi.StringPtrInput `pulumi:"destinationCidrIp"`
	// The entry type of the egress entry. It must be `custom` or `system`. Default value is `custom`.
	EntryType pulumi.StringPtrInput `pulumi:"entryType"`
	// The name of the egress entry.
	Name pulumi.StringPtrInput `pulumi:"name"`
	// The policy of the egress entry. It must be `accept` or `drop`.
	Policy pulumi.StringPtrInput `pulumi:"policy"`
	// The port of the egress entry.
	Port pulumi.StringPtrInput `pulumi:"port"`
	// The protocol of the egress entry.
	Protocol pulumi.StringPtrInput `pulumi:"protocol"`
}

func (NetworkAclEntriesEgressArgs) ElementType

func (NetworkAclEntriesEgressArgs) ToNetworkAclEntriesEgressOutput

func (i NetworkAclEntriesEgressArgs) ToNetworkAclEntriesEgressOutput() NetworkAclEntriesEgressOutput

func (NetworkAclEntriesEgressArgs) ToNetworkAclEntriesEgressOutputWithContext

func (i NetworkAclEntriesEgressArgs) ToNetworkAclEntriesEgressOutputWithContext(ctx context.Context) NetworkAclEntriesEgressOutput

type NetworkAclEntriesEgressArray

type NetworkAclEntriesEgressArray []NetworkAclEntriesEgressInput

func (NetworkAclEntriesEgressArray) ElementType

func (NetworkAclEntriesEgressArray) ToNetworkAclEntriesEgressArrayOutput

func (i NetworkAclEntriesEgressArray) ToNetworkAclEntriesEgressArrayOutput() NetworkAclEntriesEgressArrayOutput

func (NetworkAclEntriesEgressArray) ToNetworkAclEntriesEgressArrayOutputWithContext

func (i NetworkAclEntriesEgressArray) ToNetworkAclEntriesEgressArrayOutputWithContext(ctx context.Context) NetworkAclEntriesEgressArrayOutput

type NetworkAclEntriesEgressArrayInput

type NetworkAclEntriesEgressArrayInput interface {
	pulumi.Input

	ToNetworkAclEntriesEgressArrayOutput() NetworkAclEntriesEgressArrayOutput
	ToNetworkAclEntriesEgressArrayOutputWithContext(context.Context) NetworkAclEntriesEgressArrayOutput
}

NetworkAclEntriesEgressArrayInput is an input type that accepts NetworkAclEntriesEgressArray and NetworkAclEntriesEgressArrayOutput values. You can construct a concrete instance of `NetworkAclEntriesEgressArrayInput` via:

NetworkAclEntriesEgressArray{ NetworkAclEntriesEgressArgs{...} }

type NetworkAclEntriesEgressArrayOutput

type NetworkAclEntriesEgressArrayOutput struct{ *pulumi.OutputState }

func (NetworkAclEntriesEgressArrayOutput) ElementType

func (NetworkAclEntriesEgressArrayOutput) Index

func (NetworkAclEntriesEgressArrayOutput) ToNetworkAclEntriesEgressArrayOutput

func (o NetworkAclEntriesEgressArrayOutput) ToNetworkAclEntriesEgressArrayOutput() NetworkAclEntriesEgressArrayOutput

func (NetworkAclEntriesEgressArrayOutput) ToNetworkAclEntriesEgressArrayOutputWithContext

func (o NetworkAclEntriesEgressArrayOutput) ToNetworkAclEntriesEgressArrayOutputWithContext(ctx context.Context) NetworkAclEntriesEgressArrayOutput

type NetworkAclEntriesEgressInput

type NetworkAclEntriesEgressInput interface {
	pulumi.Input

	ToNetworkAclEntriesEgressOutput() NetworkAclEntriesEgressOutput
	ToNetworkAclEntriesEgressOutputWithContext(context.Context) NetworkAclEntriesEgressOutput
}

NetworkAclEntriesEgressInput is an input type that accepts NetworkAclEntriesEgressArgs and NetworkAclEntriesEgressOutput values. You can construct a concrete instance of `NetworkAclEntriesEgressInput` via:

NetworkAclEntriesEgressArgs{...}

type NetworkAclEntriesEgressOutput

type NetworkAclEntriesEgressOutput struct{ *pulumi.OutputState }

func (NetworkAclEntriesEgressOutput) Description

The description of the egress entry.

func (NetworkAclEntriesEgressOutput) DestinationCidrIp

The destination ip of the egress entry.

func (NetworkAclEntriesEgressOutput) ElementType

func (NetworkAclEntriesEgressOutput) EntryType

The entry type of the egress entry. It must be `custom` or `system`. Default value is `custom`.

func (NetworkAclEntriesEgressOutput) Name

The name of the egress entry.

func (NetworkAclEntriesEgressOutput) Policy

The policy of the egress entry. It must be `accept` or `drop`.

func (NetworkAclEntriesEgressOutput) Port

The port of the egress entry.

func (NetworkAclEntriesEgressOutput) Protocol

The protocol of the egress entry.

func (NetworkAclEntriesEgressOutput) ToNetworkAclEntriesEgressOutput

func (o NetworkAclEntriesEgressOutput) ToNetworkAclEntriesEgressOutput() NetworkAclEntriesEgressOutput

func (NetworkAclEntriesEgressOutput) ToNetworkAclEntriesEgressOutputWithContext

func (o NetworkAclEntriesEgressOutput) ToNetworkAclEntriesEgressOutputWithContext(ctx context.Context) NetworkAclEntriesEgressOutput

type NetworkAclEntriesIngress

type NetworkAclEntriesIngress struct {
	// The description of the egress entry.
	Description *string `pulumi:"description"`
	// The entry type of the egress entry. It must be `custom` or `system`. Default value is `custom`.
	EntryType *string `pulumi:"entryType"`
	// The name of the egress entry.
	Name *string `pulumi:"name"`
	// The policy of the egress entry. It must be `accept` or `drop`.
	Policy *string `pulumi:"policy"`
	// The port of the egress entry.
	Port *string `pulumi:"port"`
	// The protocol of the egress entry.
	Protocol *string `pulumi:"protocol"`
	// The source ip of the ingress entry.
	SourceCidrIp *string `pulumi:"sourceCidrIp"`
}

type NetworkAclEntriesIngressArgs

type NetworkAclEntriesIngressArgs struct {
	// The description of the egress entry.
	Description pulumi.StringPtrInput `pulumi:"description"`
	// The entry type of the egress entry. It must be `custom` or `system`. Default value is `custom`.
	EntryType pulumi.StringPtrInput `pulumi:"entryType"`
	// The name of the egress entry.
	Name pulumi.StringPtrInput `pulumi:"name"`
	// The policy of the egress entry. It must be `accept` or `drop`.
	Policy pulumi.StringPtrInput `pulumi:"policy"`
	// The port of the egress entry.
	Port pulumi.StringPtrInput `pulumi:"port"`
	// The protocol of the egress entry.
	Protocol pulumi.StringPtrInput `pulumi:"protocol"`
	// The source ip of the ingress entry.
	SourceCidrIp pulumi.StringPtrInput `pulumi:"sourceCidrIp"`
}

func (NetworkAclEntriesIngressArgs) ElementType

func (NetworkAclEntriesIngressArgs) ToNetworkAclEntriesIngressOutput

func (i NetworkAclEntriesIngressArgs) ToNetworkAclEntriesIngressOutput() NetworkAclEntriesIngressOutput

func (NetworkAclEntriesIngressArgs) ToNetworkAclEntriesIngressOutputWithContext

func (i NetworkAclEntriesIngressArgs) ToNetworkAclEntriesIngressOutputWithContext(ctx context.Context) NetworkAclEntriesIngressOutput

type NetworkAclEntriesIngressArray

type NetworkAclEntriesIngressArray []NetworkAclEntriesIngressInput

func (NetworkAclEntriesIngressArray) ElementType

func (NetworkAclEntriesIngressArray) ToNetworkAclEntriesIngressArrayOutput

func (i NetworkAclEntriesIngressArray) ToNetworkAclEntriesIngressArrayOutput() NetworkAclEntriesIngressArrayOutput

func (NetworkAclEntriesIngressArray) ToNetworkAclEntriesIngressArrayOutputWithContext

func (i NetworkAclEntriesIngressArray) ToNetworkAclEntriesIngressArrayOutputWithContext(ctx context.Context) NetworkAclEntriesIngressArrayOutput

type NetworkAclEntriesIngressArrayInput

type NetworkAclEntriesIngressArrayInput interface {
	pulumi.Input

	ToNetworkAclEntriesIngressArrayOutput() NetworkAclEntriesIngressArrayOutput
	ToNetworkAclEntriesIngressArrayOutputWithContext(context.Context) NetworkAclEntriesIngressArrayOutput
}

NetworkAclEntriesIngressArrayInput is an input type that accepts NetworkAclEntriesIngressArray and NetworkAclEntriesIngressArrayOutput values. You can construct a concrete instance of `NetworkAclEntriesIngressArrayInput` via:

NetworkAclEntriesIngressArray{ NetworkAclEntriesIngressArgs{...} }

type NetworkAclEntriesIngressArrayOutput

type NetworkAclEntriesIngressArrayOutput struct{ *pulumi.OutputState }

func (NetworkAclEntriesIngressArrayOutput) ElementType

func (NetworkAclEntriesIngressArrayOutput) Index

func (NetworkAclEntriesIngressArrayOutput) ToNetworkAclEntriesIngressArrayOutput

func (o NetworkAclEntriesIngressArrayOutput) ToNetworkAclEntriesIngressArrayOutput() NetworkAclEntriesIngressArrayOutput

func (NetworkAclEntriesIngressArrayOutput) ToNetworkAclEntriesIngressArrayOutputWithContext

func (o NetworkAclEntriesIngressArrayOutput) ToNetworkAclEntriesIngressArrayOutputWithContext(ctx context.Context) NetworkAclEntriesIngressArrayOutput

type NetworkAclEntriesIngressInput

type NetworkAclEntriesIngressInput interface {
	pulumi.Input

	ToNetworkAclEntriesIngressOutput() NetworkAclEntriesIngressOutput
	ToNetworkAclEntriesIngressOutputWithContext(context.Context) NetworkAclEntriesIngressOutput
}

NetworkAclEntriesIngressInput is an input type that accepts NetworkAclEntriesIngressArgs and NetworkAclEntriesIngressOutput values. You can construct a concrete instance of `NetworkAclEntriesIngressInput` via:

NetworkAclEntriesIngressArgs{...}

type NetworkAclEntriesIngressOutput

type NetworkAclEntriesIngressOutput struct{ *pulumi.OutputState }

func (NetworkAclEntriesIngressOutput) Description

The description of the egress entry.

func (NetworkAclEntriesIngressOutput) ElementType

func (NetworkAclEntriesIngressOutput) EntryType

The entry type of the egress entry. It must be `custom` or `system`. Default value is `custom`.

func (NetworkAclEntriesIngressOutput) Name

The name of the egress entry.

func (NetworkAclEntriesIngressOutput) Policy

The policy of the egress entry. It must be `accept` or `drop`.

func (NetworkAclEntriesIngressOutput) Port

The port of the egress entry.

func (NetworkAclEntriesIngressOutput) Protocol

The protocol of the egress entry.

func (NetworkAclEntriesIngressOutput) SourceCidrIp

The source ip of the ingress entry.

func (NetworkAclEntriesIngressOutput) ToNetworkAclEntriesIngressOutput

func (o NetworkAclEntriesIngressOutput) ToNetworkAclEntriesIngressOutput() NetworkAclEntriesIngressOutput

func (NetworkAclEntriesIngressOutput) ToNetworkAclEntriesIngressOutputWithContext

func (o NetworkAclEntriesIngressOutput) ToNetworkAclEntriesIngressOutputWithContext(ctx context.Context) NetworkAclEntriesIngressOutput

type NetworkAclEntriesInput added in v2.25.1

type NetworkAclEntriesInput interface {
	pulumi.Input

	ToNetworkAclEntriesOutput() NetworkAclEntriesOutput
	ToNetworkAclEntriesOutputWithContext(ctx context.Context) NetworkAclEntriesOutput
}

type NetworkAclEntriesMap added in v2.35.1

type NetworkAclEntriesMap map[string]NetworkAclEntriesInput

func (NetworkAclEntriesMap) ElementType added in v2.35.1

func (NetworkAclEntriesMap) ElementType() reflect.Type

func (NetworkAclEntriesMap) ToNetworkAclEntriesMapOutput added in v2.35.1

func (i NetworkAclEntriesMap) ToNetworkAclEntriesMapOutput() NetworkAclEntriesMapOutput

func (NetworkAclEntriesMap) ToNetworkAclEntriesMapOutputWithContext added in v2.35.1

func (i NetworkAclEntriesMap) ToNetworkAclEntriesMapOutputWithContext(ctx context.Context) NetworkAclEntriesMapOutput

type NetworkAclEntriesMapInput added in v2.35.1

type NetworkAclEntriesMapInput interface {
	pulumi.Input

	ToNetworkAclEntriesMapOutput() NetworkAclEntriesMapOutput
	ToNetworkAclEntriesMapOutputWithContext(context.Context) NetworkAclEntriesMapOutput
}

NetworkAclEntriesMapInput is an input type that accepts NetworkAclEntriesMap and NetworkAclEntriesMapOutput values. You can construct a concrete instance of `NetworkAclEntriesMapInput` via:

NetworkAclEntriesMap{ "key": NetworkAclEntriesArgs{...} }

type NetworkAclEntriesMapOutput added in v2.35.1

type NetworkAclEntriesMapOutput struct{ *pulumi.OutputState }

func (NetworkAclEntriesMapOutput) ElementType added in v2.35.1

func (NetworkAclEntriesMapOutput) ElementType() reflect.Type

func (NetworkAclEntriesMapOutput) MapIndex added in v2.35.1

func (NetworkAclEntriesMapOutput) ToNetworkAclEntriesMapOutput added in v2.35.1

func (o NetworkAclEntriesMapOutput) ToNetworkAclEntriesMapOutput() NetworkAclEntriesMapOutput

func (NetworkAclEntriesMapOutput) ToNetworkAclEntriesMapOutputWithContext added in v2.35.1

func (o NetworkAclEntriesMapOutput) ToNetworkAclEntriesMapOutputWithContext(ctx context.Context) NetworkAclEntriesMapOutput

type NetworkAclEntriesOutput added in v2.25.1

type NetworkAclEntriesOutput struct {
	*pulumi.OutputState
}

func (NetworkAclEntriesOutput) ElementType added in v2.25.1

func (NetworkAclEntriesOutput) ElementType() reflect.Type

func (NetworkAclEntriesOutput) ToNetworkAclEntriesOutput added in v2.25.1

func (o NetworkAclEntriesOutput) ToNetworkAclEntriesOutput() NetworkAclEntriesOutput

func (NetworkAclEntriesOutput) ToNetworkAclEntriesOutputWithContext added in v2.25.1

func (o NetworkAclEntriesOutput) ToNetworkAclEntriesOutputWithContext(ctx context.Context) NetworkAclEntriesOutput

func (NetworkAclEntriesOutput) ToNetworkAclEntriesPtrOutput added in v2.35.1

func (o NetworkAclEntriesOutput) ToNetworkAclEntriesPtrOutput() NetworkAclEntriesPtrOutput

func (NetworkAclEntriesOutput) ToNetworkAclEntriesPtrOutputWithContext added in v2.35.1

func (o NetworkAclEntriesOutput) ToNetworkAclEntriesPtrOutputWithContext(ctx context.Context) NetworkAclEntriesPtrOutput

type NetworkAclEntriesPtrInput added in v2.35.1

type NetworkAclEntriesPtrInput interface {
	pulumi.Input

	ToNetworkAclEntriesPtrOutput() NetworkAclEntriesPtrOutput
	ToNetworkAclEntriesPtrOutputWithContext(ctx context.Context) NetworkAclEntriesPtrOutput
}

type NetworkAclEntriesPtrOutput added in v2.35.1

type NetworkAclEntriesPtrOutput struct {
	*pulumi.OutputState
}

func (NetworkAclEntriesPtrOutput) ElementType added in v2.35.1

func (NetworkAclEntriesPtrOutput) ElementType() reflect.Type

func (NetworkAclEntriesPtrOutput) ToNetworkAclEntriesPtrOutput added in v2.35.1

func (o NetworkAclEntriesPtrOutput) ToNetworkAclEntriesPtrOutput() NetworkAclEntriesPtrOutput

func (NetworkAclEntriesPtrOutput) ToNetworkAclEntriesPtrOutputWithContext added in v2.35.1

func (o NetworkAclEntriesPtrOutput) ToNetworkAclEntriesPtrOutputWithContext(ctx context.Context) NetworkAclEntriesPtrOutput

type NetworkAclEntriesState

type NetworkAclEntriesState struct {
	// List of the egress entries of the network acl. The order of the egress entries determines the priority. The details see Block Egress.
	Egresses NetworkAclEntriesEgressArrayInput
	// List of the ingress entries of the network acl. The order of the ingress entries determines the priority. The details see Block Ingress.
	Ingresses NetworkAclEntriesIngressArrayInput
	// The id of the network acl, the field can't be changed.
	NetworkAclId pulumi.StringPtrInput
}

func (NetworkAclEntriesState) ElementType

func (NetworkAclEntriesState) ElementType() reflect.Type

type NetworkAclInput added in v2.25.1

type NetworkAclInput interface {
	pulumi.Input

	ToNetworkAclOutput() NetworkAclOutput
	ToNetworkAclOutputWithContext(ctx context.Context) NetworkAclOutput
}

type NetworkAclMap added in v2.35.1

type NetworkAclMap map[string]NetworkAclInput

func (NetworkAclMap) ElementType added in v2.35.1

func (NetworkAclMap) ElementType() reflect.Type

func (NetworkAclMap) ToNetworkAclMapOutput added in v2.35.1

func (i NetworkAclMap) ToNetworkAclMapOutput() NetworkAclMapOutput

func (NetworkAclMap) ToNetworkAclMapOutputWithContext added in v2.35.1

func (i NetworkAclMap) ToNetworkAclMapOutputWithContext(ctx context.Context) NetworkAclMapOutput

type NetworkAclMapInput added in v2.35.1

type NetworkAclMapInput interface {
	pulumi.Input

	ToNetworkAclMapOutput() NetworkAclMapOutput
	ToNetworkAclMapOutputWithContext(context.Context) NetworkAclMapOutput
}

NetworkAclMapInput is an input type that accepts NetworkAclMap and NetworkAclMapOutput values. You can construct a concrete instance of `NetworkAclMapInput` via:

NetworkAclMap{ "key": NetworkAclArgs{...} }

type NetworkAclMapOutput added in v2.35.1

type NetworkAclMapOutput struct{ *pulumi.OutputState }

func (NetworkAclMapOutput) ElementType added in v2.35.1

func (NetworkAclMapOutput) ElementType() reflect.Type

func (NetworkAclMapOutput) MapIndex added in v2.35.1

func (NetworkAclMapOutput) ToNetworkAclMapOutput added in v2.35.1

func (o NetworkAclMapOutput) ToNetworkAclMapOutput() NetworkAclMapOutput

func (NetworkAclMapOutput) ToNetworkAclMapOutputWithContext added in v2.35.1

func (o NetworkAclMapOutput) ToNetworkAclMapOutputWithContext(ctx context.Context) NetworkAclMapOutput

type NetworkAclOutput added in v2.25.1

type NetworkAclOutput struct {
	*pulumi.OutputState
}

func (NetworkAclOutput) ElementType added in v2.25.1

func (NetworkAclOutput) ElementType() reflect.Type

func (NetworkAclOutput) ToNetworkAclOutput added in v2.25.1

func (o NetworkAclOutput) ToNetworkAclOutput() NetworkAclOutput

func (NetworkAclOutput) ToNetworkAclOutputWithContext added in v2.25.1

func (o NetworkAclOutput) ToNetworkAclOutputWithContext(ctx context.Context) NetworkAclOutput

func (NetworkAclOutput) ToNetworkAclPtrOutput added in v2.35.1

func (o NetworkAclOutput) ToNetworkAclPtrOutput() NetworkAclPtrOutput

func (NetworkAclOutput) ToNetworkAclPtrOutputWithContext added in v2.35.1

func (o NetworkAclOutput) ToNetworkAclPtrOutputWithContext(ctx context.Context) NetworkAclPtrOutput

type NetworkAclPtrInput added in v2.35.1

type NetworkAclPtrInput interface {
	pulumi.Input

	ToNetworkAclPtrOutput() NetworkAclPtrOutput
	ToNetworkAclPtrOutputWithContext(ctx context.Context) NetworkAclPtrOutput
}

type NetworkAclPtrOutput added in v2.35.1

type NetworkAclPtrOutput struct {
	*pulumi.OutputState
}

func (NetworkAclPtrOutput) ElementType added in v2.35.1

func (NetworkAclPtrOutput) ElementType() reflect.Type

func (NetworkAclPtrOutput) ToNetworkAclPtrOutput added in v2.35.1

func (o NetworkAclPtrOutput) ToNetworkAclPtrOutput() NetworkAclPtrOutput

func (NetworkAclPtrOutput) ToNetworkAclPtrOutputWithContext added in v2.35.1

func (o NetworkAclPtrOutput) ToNetworkAclPtrOutputWithContext(ctx context.Context) NetworkAclPtrOutput

type NetworkAclState

type NetworkAclState struct {
	// The description of the network acl instance.
	Description pulumi.StringPtrInput
	// The name of the network acl.
	Name pulumi.StringPtrInput
	// The vpcId of the network acl, the field can't be changed.
	VpcId pulumi.StringPtrInput
}

func (NetworkAclState) ElementType

func (NetworkAclState) ElementType() reflect.Type

type NetworkArgs

type NetworkArgs struct {
	// The CIDR block for the VPC.
	CidrBlock pulumi.StringInput
	// The VPC description. Defaults to null.
	Description pulumi.StringPtrInput
	// The name of the VPC. Defaults to null.
	Name pulumi.StringPtrInput
	// The Id of resource group which the VPC belongs.
	ResourceGroupId pulumi.StringPtrInput
	// The secondary CIDR blocks for the VPC.
	SecondaryCidrBlocks pulumi.StringArrayInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapInput
}

The set of arguments for constructing a Network resource.

func (NetworkArgs) ElementType

func (NetworkArgs) ElementType() reflect.Type

type NetworkArray added in v2.35.1

type NetworkArray []NetworkInput

func (NetworkArray) ElementType added in v2.35.1

func (NetworkArray) ElementType() reflect.Type

func (NetworkArray) ToNetworkArrayOutput added in v2.35.1

func (i NetworkArray) ToNetworkArrayOutput() NetworkArrayOutput

func (NetworkArray) ToNetworkArrayOutputWithContext added in v2.35.1

func (i NetworkArray) ToNetworkArrayOutputWithContext(ctx context.Context) NetworkArrayOutput

type NetworkArrayInput added in v2.35.1

type NetworkArrayInput interface {
	pulumi.Input

	ToNetworkArrayOutput() NetworkArrayOutput
	ToNetworkArrayOutputWithContext(context.Context) NetworkArrayOutput
}

NetworkArrayInput is an input type that accepts NetworkArray and NetworkArrayOutput values. You can construct a concrete instance of `NetworkArrayInput` via:

NetworkArray{ NetworkArgs{...} }

type NetworkArrayOutput added in v2.35.1

type NetworkArrayOutput struct{ *pulumi.OutputState }

func (NetworkArrayOutput) ElementType added in v2.35.1

func (NetworkArrayOutput) ElementType() reflect.Type

func (NetworkArrayOutput) Index added in v2.35.1

func (NetworkArrayOutput) ToNetworkArrayOutput added in v2.35.1

func (o NetworkArrayOutput) ToNetworkArrayOutput() NetworkArrayOutput

func (NetworkArrayOutput) ToNetworkArrayOutputWithContext added in v2.35.1

func (o NetworkArrayOutput) ToNetworkArrayOutputWithContext(ctx context.Context) NetworkArrayOutput

type NetworkInput added in v2.25.1

type NetworkInput interface {
	pulumi.Input

	ToNetworkOutput() NetworkOutput
	ToNetworkOutputWithContext(ctx context.Context) NetworkOutput
}

type NetworkInterface

type NetworkInterface struct {
	pulumi.CustomResourceState

	// Description of the ENI. This description can have a string of 2 to 256 characters, It cannot begin with http:// or https://. Default value is null.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// (Available in 1.54.0+) The MAC address of an ENI.
	Mac pulumi.StringOutput `pulumi:"mac"`
	// Name of the ENI. This name can have a string of 2 to 128 characters, must contain only alphanumeric characters or hyphens, such as "-", ".", "_", and must not begin or end with a hyphen, and must not begin with http:// or https://. Default value is null.
	Name pulumi.StringOutput `pulumi:"name"`
	// The primary private IP of the ENI.
	PrivateIp pulumi.StringOutput `pulumi:"privateIp"`
	// List of secondary private IPs to assign to the ENI. Don't use both privateIps and privateIpsCount in the same ENI resource block.
	PrivateIps pulumi.StringArrayOutput `pulumi:"privateIps"`
	// Number of secondary private IPs to assign to the ENI. Don't use both privateIps and privateIpsCount in the same ENI resource block.
	PrivateIpsCount pulumi.IntOutput `pulumi:"privateIpsCount"`
	// The Id of resource group which the network interface belongs.
	ResourceGroupId pulumi.StringPtrOutput `pulumi:"resourceGroupId"`
	// A list of security group ids to associate with.
	SecurityGroups pulumi.StringArrayOutput `pulumi:"securityGroups"`
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapOutput `pulumi:"tags"`
	// The VSwitch to create the ENI in.
	VswitchId pulumi.StringOutput `pulumi:"vswitchId"`
}

Provides an ECS Elastic Network Interface resource.

For information about Elastic Network Interface and how to use it, see [Elastic Network Interface](https://www.alibabacloud.com/help/doc-detail/58496.html).

> **NOTE** Only one of privateIps or privateIpsCount can be specified when assign private IPs.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud"
"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud/ecs"
"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud/vpc"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		name := "networkInterfaceName"
		if param := cfg.Get("name"); param != "" {
			name = param
		}
		vpc, err := vpc.NewNetwork(ctx, "vpc", &vpc.NetworkArgs{
			CidrBlock: pulumi.String("192.168.0.0/24"),
		})
		if err != nil {
			return err
		}
		opt0 := "VSwitch"
		defaultZones, err := alicloud.GetZones(ctx, &alicloud.GetZonesArgs{
			AvailableResourceCreation: &opt0,
		}, nil)
		if err != nil {
			return err
		}
		vswitch, err := vpc.NewSwitch(ctx, "vswitch", &vpc.SwitchArgs{
			CidrBlock:        pulumi.String("192.168.0.0/24"),
			AvailabilityZone: pulumi.String(defaultZones.Zones[0].Id),
			VpcId:            vpc.ID(),
		})
		if err != nil {
			return err
		}
		group, err := ecs.NewSecurityGroup(ctx, "group", &ecs.SecurityGroupArgs{
			VpcId: vpc.ID(),
		})
		if err != nil {
			return err
		}
		_, err = vpc.NewNetworkInterface(ctx, "defaultNetworkInterface", &vpc.NetworkInterfaceArgs{
			VswitchId: vswitch.ID(),
			SecurityGroups: pulumi.StringArray{
				group.ID(),
			},
			PrivateIp:       pulumi.String("192.168.0.2"),
			PrivateIpsCount: pulumi.Int(3),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

ENI can be imported using the id, e.g.

```sh

$ pulumi import alicloud:vpc/networkInterface:NetworkInterface eni eni-abc1234567890000

```

func GetNetworkInterface

func GetNetworkInterface(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *NetworkInterfaceState, opts ...pulumi.ResourceOption) (*NetworkInterface, error)

GetNetworkInterface gets an existing NetworkInterface 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 NewNetworkInterface

func NewNetworkInterface(ctx *pulumi.Context,
	name string, args *NetworkInterfaceArgs, opts ...pulumi.ResourceOption) (*NetworkInterface, error)

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

func (*NetworkInterface) ElementType added in v2.25.1

func (*NetworkInterface) ElementType() reflect.Type

func (*NetworkInterface) ToNetworkInterfaceOutput added in v2.25.1

func (i *NetworkInterface) ToNetworkInterfaceOutput() NetworkInterfaceOutput

func (*NetworkInterface) ToNetworkInterfaceOutputWithContext added in v2.25.1

func (i *NetworkInterface) ToNetworkInterfaceOutputWithContext(ctx context.Context) NetworkInterfaceOutput

func (*NetworkInterface) ToNetworkInterfacePtrOutput added in v2.35.1

func (i *NetworkInterface) ToNetworkInterfacePtrOutput() NetworkInterfacePtrOutput

func (*NetworkInterface) ToNetworkInterfacePtrOutputWithContext added in v2.35.1

func (i *NetworkInterface) ToNetworkInterfacePtrOutputWithContext(ctx context.Context) NetworkInterfacePtrOutput

type NetworkInterfaceArgs

type NetworkInterfaceArgs struct {
	// Description of the ENI. This description can have a string of 2 to 256 characters, It cannot begin with http:// or https://. Default value is null.
	Description pulumi.StringPtrInput
	// Name of the ENI. This name can have a string of 2 to 128 characters, must contain only alphanumeric characters or hyphens, such as "-", ".", "_", and must not begin or end with a hyphen, and must not begin with http:// or https://. Default value is null.
	Name pulumi.StringPtrInput
	// The primary private IP of the ENI.
	PrivateIp pulumi.StringPtrInput
	// List of secondary private IPs to assign to the ENI. Don't use both privateIps and privateIpsCount in the same ENI resource block.
	PrivateIps pulumi.StringArrayInput
	// Number of secondary private IPs to assign to the ENI. Don't use both privateIps and privateIpsCount in the same ENI resource block.
	PrivateIpsCount pulumi.IntPtrInput
	// The Id of resource group which the network interface belongs.
	ResourceGroupId pulumi.StringPtrInput
	// A list of security group ids to associate with.
	SecurityGroups pulumi.StringArrayInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapInput
	// The VSwitch to create the ENI in.
	VswitchId pulumi.StringInput
}

The set of arguments for constructing a NetworkInterface resource.

func (NetworkInterfaceArgs) ElementType

func (NetworkInterfaceArgs) ElementType() reflect.Type

type NetworkInterfaceArray added in v2.35.1

type NetworkInterfaceArray []NetworkInterfaceInput

func (NetworkInterfaceArray) ElementType added in v2.35.1

func (NetworkInterfaceArray) ElementType() reflect.Type

func (NetworkInterfaceArray) ToNetworkInterfaceArrayOutput added in v2.35.1

func (i NetworkInterfaceArray) ToNetworkInterfaceArrayOutput() NetworkInterfaceArrayOutput

func (NetworkInterfaceArray) ToNetworkInterfaceArrayOutputWithContext added in v2.35.1

func (i NetworkInterfaceArray) ToNetworkInterfaceArrayOutputWithContext(ctx context.Context) NetworkInterfaceArrayOutput

type NetworkInterfaceArrayInput added in v2.35.1

type NetworkInterfaceArrayInput interface {
	pulumi.Input

	ToNetworkInterfaceArrayOutput() NetworkInterfaceArrayOutput
	ToNetworkInterfaceArrayOutputWithContext(context.Context) NetworkInterfaceArrayOutput
}

NetworkInterfaceArrayInput is an input type that accepts NetworkInterfaceArray and NetworkInterfaceArrayOutput values. You can construct a concrete instance of `NetworkInterfaceArrayInput` via:

NetworkInterfaceArray{ NetworkInterfaceArgs{...} }

type NetworkInterfaceArrayOutput added in v2.35.1

type NetworkInterfaceArrayOutput struct{ *pulumi.OutputState }

func (NetworkInterfaceArrayOutput) ElementType added in v2.35.1

func (NetworkInterfaceArrayOutput) Index added in v2.35.1

func (NetworkInterfaceArrayOutput) ToNetworkInterfaceArrayOutput added in v2.35.1

func (o NetworkInterfaceArrayOutput) ToNetworkInterfaceArrayOutput() NetworkInterfaceArrayOutput

func (NetworkInterfaceArrayOutput) ToNetworkInterfaceArrayOutputWithContext added in v2.35.1

func (o NetworkInterfaceArrayOutput) ToNetworkInterfaceArrayOutputWithContext(ctx context.Context) NetworkInterfaceArrayOutput

type NetworkInterfaceAttachment

type NetworkInterfaceAttachment struct {
	pulumi.CustomResourceState

	// The instance ID to attach.
	InstanceId pulumi.StringOutput `pulumi:"instanceId"`
	// The ENI ID to attach.
	NetworkInterfaceId pulumi.StringOutput `pulumi:"networkInterfaceId"`
}

Provides an Alicloud ECS Elastic Network Interface Attachment as a resource to attach ENI to or detach ENI from ECS Instances.

For information about Elastic Network Interface and how to use it, see [Elastic Network Interface](https://www.alibabacloud.com/help/doc-detail/58496.html).

## Import

Network Interfaces Attachment resource can be imported using the id, e.g.

```sh

$ pulumi import alicloud:vpc/networkInterfaceAttachment:NetworkInterfaceAttachment eni eni-abc123456789000:i-abc123456789000

```

func GetNetworkInterfaceAttachment

func GetNetworkInterfaceAttachment(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *NetworkInterfaceAttachmentState, opts ...pulumi.ResourceOption) (*NetworkInterfaceAttachment, error)

GetNetworkInterfaceAttachment gets an existing NetworkInterfaceAttachment 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 NewNetworkInterfaceAttachment

func NewNetworkInterfaceAttachment(ctx *pulumi.Context,
	name string, args *NetworkInterfaceAttachmentArgs, opts ...pulumi.ResourceOption) (*NetworkInterfaceAttachment, error)

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

func (*NetworkInterfaceAttachment) ElementType added in v2.25.1

func (*NetworkInterfaceAttachment) ElementType() reflect.Type

func (*NetworkInterfaceAttachment) ToNetworkInterfaceAttachmentOutput added in v2.25.1

func (i *NetworkInterfaceAttachment) ToNetworkInterfaceAttachmentOutput() NetworkInterfaceAttachmentOutput

func (*NetworkInterfaceAttachment) ToNetworkInterfaceAttachmentOutputWithContext added in v2.25.1

func (i *NetworkInterfaceAttachment) ToNetworkInterfaceAttachmentOutputWithContext(ctx context.Context) NetworkInterfaceAttachmentOutput

func (*NetworkInterfaceAttachment) ToNetworkInterfaceAttachmentPtrOutput added in v2.35.1

func (i *NetworkInterfaceAttachment) ToNetworkInterfaceAttachmentPtrOutput() NetworkInterfaceAttachmentPtrOutput

func (*NetworkInterfaceAttachment) ToNetworkInterfaceAttachmentPtrOutputWithContext added in v2.35.1

func (i *NetworkInterfaceAttachment) ToNetworkInterfaceAttachmentPtrOutputWithContext(ctx context.Context) NetworkInterfaceAttachmentPtrOutput

type NetworkInterfaceAttachmentArgs

type NetworkInterfaceAttachmentArgs struct {
	// The instance ID to attach.
	InstanceId pulumi.StringInput
	// The ENI ID to attach.
	NetworkInterfaceId pulumi.StringInput
}

The set of arguments for constructing a NetworkInterfaceAttachment resource.

func (NetworkInterfaceAttachmentArgs) ElementType

type NetworkInterfaceAttachmentArray added in v2.35.1

type NetworkInterfaceAttachmentArray []NetworkInterfaceAttachmentInput

func (NetworkInterfaceAttachmentArray) ElementType added in v2.35.1

func (NetworkInterfaceAttachmentArray) ToNetworkInterfaceAttachmentArrayOutput added in v2.35.1

func (i NetworkInterfaceAttachmentArray) ToNetworkInterfaceAttachmentArrayOutput() NetworkInterfaceAttachmentArrayOutput

func (NetworkInterfaceAttachmentArray) ToNetworkInterfaceAttachmentArrayOutputWithContext added in v2.35.1

func (i NetworkInterfaceAttachmentArray) ToNetworkInterfaceAttachmentArrayOutputWithContext(ctx context.Context) NetworkInterfaceAttachmentArrayOutput

type NetworkInterfaceAttachmentArrayInput added in v2.35.1

type NetworkInterfaceAttachmentArrayInput interface {
	pulumi.Input

	ToNetworkInterfaceAttachmentArrayOutput() NetworkInterfaceAttachmentArrayOutput
	ToNetworkInterfaceAttachmentArrayOutputWithContext(context.Context) NetworkInterfaceAttachmentArrayOutput
}

NetworkInterfaceAttachmentArrayInput is an input type that accepts NetworkInterfaceAttachmentArray and NetworkInterfaceAttachmentArrayOutput values. You can construct a concrete instance of `NetworkInterfaceAttachmentArrayInput` via:

NetworkInterfaceAttachmentArray{ NetworkInterfaceAttachmentArgs{...} }

type NetworkInterfaceAttachmentArrayOutput added in v2.35.1

type NetworkInterfaceAttachmentArrayOutput struct{ *pulumi.OutputState }

func (NetworkInterfaceAttachmentArrayOutput) ElementType added in v2.35.1

func (NetworkInterfaceAttachmentArrayOutput) Index added in v2.35.1

func (NetworkInterfaceAttachmentArrayOutput) ToNetworkInterfaceAttachmentArrayOutput added in v2.35.1

func (o NetworkInterfaceAttachmentArrayOutput) ToNetworkInterfaceAttachmentArrayOutput() NetworkInterfaceAttachmentArrayOutput

func (NetworkInterfaceAttachmentArrayOutput) ToNetworkInterfaceAttachmentArrayOutputWithContext added in v2.35.1

func (o NetworkInterfaceAttachmentArrayOutput) ToNetworkInterfaceAttachmentArrayOutputWithContext(ctx context.Context) NetworkInterfaceAttachmentArrayOutput

type NetworkInterfaceAttachmentInput added in v2.25.1

type NetworkInterfaceAttachmentInput interface {
	pulumi.Input

	ToNetworkInterfaceAttachmentOutput() NetworkInterfaceAttachmentOutput
	ToNetworkInterfaceAttachmentOutputWithContext(ctx context.Context) NetworkInterfaceAttachmentOutput
}

type NetworkInterfaceAttachmentMap added in v2.35.1

type NetworkInterfaceAttachmentMap map[string]NetworkInterfaceAttachmentInput

func (NetworkInterfaceAttachmentMap) ElementType added in v2.35.1

func (NetworkInterfaceAttachmentMap) ToNetworkInterfaceAttachmentMapOutput added in v2.35.1

func (i NetworkInterfaceAttachmentMap) ToNetworkInterfaceAttachmentMapOutput() NetworkInterfaceAttachmentMapOutput

func (NetworkInterfaceAttachmentMap) ToNetworkInterfaceAttachmentMapOutputWithContext added in v2.35.1

func (i NetworkInterfaceAttachmentMap) ToNetworkInterfaceAttachmentMapOutputWithContext(ctx context.Context) NetworkInterfaceAttachmentMapOutput

type NetworkInterfaceAttachmentMapInput added in v2.35.1

type NetworkInterfaceAttachmentMapInput interface {
	pulumi.Input

	ToNetworkInterfaceAttachmentMapOutput() NetworkInterfaceAttachmentMapOutput
	ToNetworkInterfaceAttachmentMapOutputWithContext(context.Context) NetworkInterfaceAttachmentMapOutput
}

NetworkInterfaceAttachmentMapInput is an input type that accepts NetworkInterfaceAttachmentMap and NetworkInterfaceAttachmentMapOutput values. You can construct a concrete instance of `NetworkInterfaceAttachmentMapInput` via:

NetworkInterfaceAttachmentMap{ "key": NetworkInterfaceAttachmentArgs{...} }

type NetworkInterfaceAttachmentMapOutput added in v2.35.1

type NetworkInterfaceAttachmentMapOutput struct{ *pulumi.OutputState }

func (NetworkInterfaceAttachmentMapOutput) ElementType added in v2.35.1

func (NetworkInterfaceAttachmentMapOutput) MapIndex added in v2.35.1

func (NetworkInterfaceAttachmentMapOutput) ToNetworkInterfaceAttachmentMapOutput added in v2.35.1

func (o NetworkInterfaceAttachmentMapOutput) ToNetworkInterfaceAttachmentMapOutput() NetworkInterfaceAttachmentMapOutput

func (NetworkInterfaceAttachmentMapOutput) ToNetworkInterfaceAttachmentMapOutputWithContext added in v2.35.1

func (o NetworkInterfaceAttachmentMapOutput) ToNetworkInterfaceAttachmentMapOutputWithContext(ctx context.Context) NetworkInterfaceAttachmentMapOutput

type NetworkInterfaceAttachmentOutput added in v2.25.1

type NetworkInterfaceAttachmentOutput struct {
	*pulumi.OutputState
}

func (NetworkInterfaceAttachmentOutput) ElementType added in v2.25.1

func (NetworkInterfaceAttachmentOutput) ToNetworkInterfaceAttachmentOutput added in v2.25.1

func (o NetworkInterfaceAttachmentOutput) ToNetworkInterfaceAttachmentOutput() NetworkInterfaceAttachmentOutput

func (NetworkInterfaceAttachmentOutput) ToNetworkInterfaceAttachmentOutputWithContext added in v2.25.1

func (o NetworkInterfaceAttachmentOutput) ToNetworkInterfaceAttachmentOutputWithContext(ctx context.Context) NetworkInterfaceAttachmentOutput

func (NetworkInterfaceAttachmentOutput) ToNetworkInterfaceAttachmentPtrOutput added in v2.35.1

func (o NetworkInterfaceAttachmentOutput) ToNetworkInterfaceAttachmentPtrOutput() NetworkInterfaceAttachmentPtrOutput

func (NetworkInterfaceAttachmentOutput) ToNetworkInterfaceAttachmentPtrOutputWithContext added in v2.35.1

func (o NetworkInterfaceAttachmentOutput) ToNetworkInterfaceAttachmentPtrOutputWithContext(ctx context.Context) NetworkInterfaceAttachmentPtrOutput

type NetworkInterfaceAttachmentPtrInput added in v2.35.1

type NetworkInterfaceAttachmentPtrInput interface {
	pulumi.Input

	ToNetworkInterfaceAttachmentPtrOutput() NetworkInterfaceAttachmentPtrOutput
	ToNetworkInterfaceAttachmentPtrOutputWithContext(ctx context.Context) NetworkInterfaceAttachmentPtrOutput
}

type NetworkInterfaceAttachmentPtrOutput added in v2.35.1

type NetworkInterfaceAttachmentPtrOutput struct {
	*pulumi.OutputState
}

func (NetworkInterfaceAttachmentPtrOutput) ElementType added in v2.35.1

func (NetworkInterfaceAttachmentPtrOutput) ToNetworkInterfaceAttachmentPtrOutput added in v2.35.1

func (o NetworkInterfaceAttachmentPtrOutput) ToNetworkInterfaceAttachmentPtrOutput() NetworkInterfaceAttachmentPtrOutput

func (NetworkInterfaceAttachmentPtrOutput) ToNetworkInterfaceAttachmentPtrOutputWithContext added in v2.35.1

func (o NetworkInterfaceAttachmentPtrOutput) ToNetworkInterfaceAttachmentPtrOutputWithContext(ctx context.Context) NetworkInterfaceAttachmentPtrOutput

type NetworkInterfaceAttachmentState

type NetworkInterfaceAttachmentState struct {
	// The instance ID to attach.
	InstanceId pulumi.StringPtrInput
	// The ENI ID to attach.
	NetworkInterfaceId pulumi.StringPtrInput
}

func (NetworkInterfaceAttachmentState) ElementType

type NetworkInterfaceInput added in v2.25.1

type NetworkInterfaceInput interface {
	pulumi.Input

	ToNetworkInterfaceOutput() NetworkInterfaceOutput
	ToNetworkInterfaceOutputWithContext(ctx context.Context) NetworkInterfaceOutput
}

type NetworkInterfaceMap added in v2.35.1

type NetworkInterfaceMap map[string]NetworkInterfaceInput

func (NetworkInterfaceMap) ElementType added in v2.35.1

func (NetworkInterfaceMap) ElementType() reflect.Type

func (NetworkInterfaceMap) ToNetworkInterfaceMapOutput added in v2.35.1

func (i NetworkInterfaceMap) ToNetworkInterfaceMapOutput() NetworkInterfaceMapOutput

func (NetworkInterfaceMap) ToNetworkInterfaceMapOutputWithContext added in v2.35.1

func (i NetworkInterfaceMap) ToNetworkInterfaceMapOutputWithContext(ctx context.Context) NetworkInterfaceMapOutput

type NetworkInterfaceMapInput added in v2.35.1

type NetworkInterfaceMapInput interface {
	pulumi.Input

	ToNetworkInterfaceMapOutput() NetworkInterfaceMapOutput
	ToNetworkInterfaceMapOutputWithContext(context.Context) NetworkInterfaceMapOutput
}

NetworkInterfaceMapInput is an input type that accepts NetworkInterfaceMap and NetworkInterfaceMapOutput values. You can construct a concrete instance of `NetworkInterfaceMapInput` via:

NetworkInterfaceMap{ "key": NetworkInterfaceArgs{...} }

type NetworkInterfaceMapOutput added in v2.35.1

type NetworkInterfaceMapOutput struct{ *pulumi.OutputState }

func (NetworkInterfaceMapOutput) ElementType added in v2.35.1

func (NetworkInterfaceMapOutput) ElementType() reflect.Type

func (NetworkInterfaceMapOutput) MapIndex added in v2.35.1

func (NetworkInterfaceMapOutput) ToNetworkInterfaceMapOutput added in v2.35.1

func (o NetworkInterfaceMapOutput) ToNetworkInterfaceMapOutput() NetworkInterfaceMapOutput

func (NetworkInterfaceMapOutput) ToNetworkInterfaceMapOutputWithContext added in v2.35.1

func (o NetworkInterfaceMapOutput) ToNetworkInterfaceMapOutputWithContext(ctx context.Context) NetworkInterfaceMapOutput

type NetworkInterfaceOutput added in v2.25.1

type NetworkInterfaceOutput struct {
	*pulumi.OutputState
}

func (NetworkInterfaceOutput) ElementType added in v2.25.1

func (NetworkInterfaceOutput) ElementType() reflect.Type

func (NetworkInterfaceOutput) ToNetworkInterfaceOutput added in v2.25.1

func (o NetworkInterfaceOutput) ToNetworkInterfaceOutput() NetworkInterfaceOutput

func (NetworkInterfaceOutput) ToNetworkInterfaceOutputWithContext added in v2.25.1

func (o NetworkInterfaceOutput) ToNetworkInterfaceOutputWithContext(ctx context.Context) NetworkInterfaceOutput

func (NetworkInterfaceOutput) ToNetworkInterfacePtrOutput added in v2.35.1

func (o NetworkInterfaceOutput) ToNetworkInterfacePtrOutput() NetworkInterfacePtrOutput

func (NetworkInterfaceOutput) ToNetworkInterfacePtrOutputWithContext added in v2.35.1

func (o NetworkInterfaceOutput) ToNetworkInterfacePtrOutputWithContext(ctx context.Context) NetworkInterfacePtrOutput

type NetworkInterfacePtrInput added in v2.35.1

type NetworkInterfacePtrInput interface {
	pulumi.Input

	ToNetworkInterfacePtrOutput() NetworkInterfacePtrOutput
	ToNetworkInterfacePtrOutputWithContext(ctx context.Context) NetworkInterfacePtrOutput
}

type NetworkInterfacePtrOutput added in v2.35.1

type NetworkInterfacePtrOutput struct {
	*pulumi.OutputState
}

func (NetworkInterfacePtrOutput) ElementType added in v2.35.1

func (NetworkInterfacePtrOutput) ElementType() reflect.Type

func (NetworkInterfacePtrOutput) ToNetworkInterfacePtrOutput added in v2.35.1

func (o NetworkInterfacePtrOutput) ToNetworkInterfacePtrOutput() NetworkInterfacePtrOutput

func (NetworkInterfacePtrOutput) ToNetworkInterfacePtrOutputWithContext added in v2.35.1

func (o NetworkInterfacePtrOutput) ToNetworkInterfacePtrOutputWithContext(ctx context.Context) NetworkInterfacePtrOutput

type NetworkInterfaceState

type NetworkInterfaceState struct {
	// Description of the ENI. This description can have a string of 2 to 256 characters, It cannot begin with http:// or https://. Default value is null.
	Description pulumi.StringPtrInput
	// (Available in 1.54.0+) The MAC address of an ENI.
	Mac pulumi.StringPtrInput
	// Name of the ENI. This name can have a string of 2 to 128 characters, must contain only alphanumeric characters or hyphens, such as "-", ".", "_", and must not begin or end with a hyphen, and must not begin with http:// or https://. Default value is null.
	Name pulumi.StringPtrInput
	// The primary private IP of the ENI.
	PrivateIp pulumi.StringPtrInput
	// List of secondary private IPs to assign to the ENI. Don't use both privateIps and privateIpsCount in the same ENI resource block.
	PrivateIps pulumi.StringArrayInput
	// Number of secondary private IPs to assign to the ENI. Don't use both privateIps and privateIpsCount in the same ENI resource block.
	PrivateIpsCount pulumi.IntPtrInput
	// The Id of resource group which the network interface belongs.
	ResourceGroupId pulumi.StringPtrInput
	// A list of security group ids to associate with.
	SecurityGroups pulumi.StringArrayInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapInput
	// The VSwitch to create the ENI in.
	VswitchId pulumi.StringPtrInput
}

func (NetworkInterfaceState) ElementType

func (NetworkInterfaceState) ElementType() reflect.Type

type NetworkMap added in v2.35.1

type NetworkMap map[string]NetworkInput

func (NetworkMap) ElementType added in v2.35.1

func (NetworkMap) ElementType() reflect.Type

func (NetworkMap) ToNetworkMapOutput added in v2.35.1

func (i NetworkMap) ToNetworkMapOutput() NetworkMapOutput

func (NetworkMap) ToNetworkMapOutputWithContext added in v2.35.1

func (i NetworkMap) ToNetworkMapOutputWithContext(ctx context.Context) NetworkMapOutput

type NetworkMapInput added in v2.35.1

type NetworkMapInput interface {
	pulumi.Input

	ToNetworkMapOutput() NetworkMapOutput
	ToNetworkMapOutputWithContext(context.Context) NetworkMapOutput
}

NetworkMapInput is an input type that accepts NetworkMap and NetworkMapOutput values. You can construct a concrete instance of `NetworkMapInput` via:

NetworkMap{ "key": NetworkArgs{...} }

type NetworkMapOutput added in v2.35.1

type NetworkMapOutput struct{ *pulumi.OutputState }

func (NetworkMapOutput) ElementType added in v2.35.1

func (NetworkMapOutput) ElementType() reflect.Type

func (NetworkMapOutput) MapIndex added in v2.35.1

func (NetworkMapOutput) ToNetworkMapOutput added in v2.35.1

func (o NetworkMapOutput) ToNetworkMapOutput() NetworkMapOutput

func (NetworkMapOutput) ToNetworkMapOutputWithContext added in v2.35.1

func (o NetworkMapOutput) ToNetworkMapOutputWithContext(ctx context.Context) NetworkMapOutput

type NetworkOutput added in v2.25.1

type NetworkOutput struct {
	*pulumi.OutputState
}

func (NetworkOutput) ElementType added in v2.25.1

func (NetworkOutput) ElementType() reflect.Type

func (NetworkOutput) ToNetworkOutput added in v2.25.1

func (o NetworkOutput) ToNetworkOutput() NetworkOutput

func (NetworkOutput) ToNetworkOutputWithContext added in v2.25.1

func (o NetworkOutput) ToNetworkOutputWithContext(ctx context.Context) NetworkOutput

func (NetworkOutput) ToNetworkPtrOutput added in v2.35.1

func (o NetworkOutput) ToNetworkPtrOutput() NetworkPtrOutput

func (NetworkOutput) ToNetworkPtrOutputWithContext added in v2.35.1

func (o NetworkOutput) ToNetworkPtrOutputWithContext(ctx context.Context) NetworkPtrOutput

type NetworkPtrInput added in v2.35.1

type NetworkPtrInput interface {
	pulumi.Input

	ToNetworkPtrOutput() NetworkPtrOutput
	ToNetworkPtrOutputWithContext(ctx context.Context) NetworkPtrOutput
}

type NetworkPtrOutput added in v2.35.1

type NetworkPtrOutput struct {
	*pulumi.OutputState
}

func (NetworkPtrOutput) ElementType added in v2.35.1

func (NetworkPtrOutput) ElementType() reflect.Type

func (NetworkPtrOutput) ToNetworkPtrOutput added in v2.35.1

func (o NetworkPtrOutput) ToNetworkPtrOutput() NetworkPtrOutput

func (NetworkPtrOutput) ToNetworkPtrOutputWithContext added in v2.35.1

func (o NetworkPtrOutput) ToNetworkPtrOutputWithContext(ctx context.Context) NetworkPtrOutput

type NetworkState

type NetworkState struct {
	// The CIDR block for the VPC.
	CidrBlock pulumi.StringPtrInput
	// The VPC description. Defaults to null.
	Description pulumi.StringPtrInput
	// The name of the VPC. Defaults to null.
	Name pulumi.StringPtrInput
	// The Id of resource group which the VPC belongs.
	ResourceGroupId pulumi.StringPtrInput
	// The route table ID of the router created by default on VPC creation.
	RouteTableId pulumi.StringPtrInput
	// The ID of the router created by default on VPC creation.
	RouterId pulumi.StringPtrInput
	// Deprecated: Attribute router_table_id has been deprecated and replaced with route_table_id.
	RouterTableId pulumi.StringPtrInput
	// The secondary CIDR blocks for the VPC.
	SecondaryCidrBlocks pulumi.StringArrayInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapInput
}

func (NetworkState) ElementType

func (NetworkState) ElementType() reflect.Type

type RouteEntry

type RouteEntry struct {
	pulumi.CustomResourceState

	// The RouteEntry's target network segment.
	DestinationCidrblock pulumi.StringPtrOutput `pulumi:"destinationCidrblock"`
	// The name of the route entry. This name can have a string of 2 to 128 characters, must contain only alphanumeric characters or hyphens, such as "-",".","_", and must not begin or end with a hyphen, and must not begin with http:// or https://.
	Name pulumi.StringOutput `pulumi:"name"`
	// The route entry's next hop. ECS instance ID or VPC router interface ID.
	NexthopId pulumi.StringPtrOutput `pulumi:"nexthopId"`
	// The next hop type. Available values:
	NexthopType pulumi.StringPtrOutput `pulumi:"nexthopType"`
	// The ID of the route table.
	RouteTableId pulumi.StringOutput `pulumi:"routeTableId"`
	// This argument has beeb deprecated. Please use other arguments to launch a custom route entry.
	//
	// Deprecated: Attribute router_id has been deprecated and suggest removing it from your template.
	RouterId pulumi.StringOutput `pulumi:"routerId"`
}

## Import

Router entry can be imported using the id, e.g (formatted as<route_table_id:router_id:destination_cidrblock:nexthop_type:nexthop_id>).

```sh

$ pulumi import alicloud:vpc/routeEntry:RouteEntry example vtb-123456:vrt-123456:0.0.0.0/0:NatGateway:ngw-123456

```

func GetRouteEntry

func GetRouteEntry(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *RouteEntryState, opts ...pulumi.ResourceOption) (*RouteEntry, error)

GetRouteEntry gets an existing RouteEntry 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 NewRouteEntry

func NewRouteEntry(ctx *pulumi.Context,
	name string, args *RouteEntryArgs, opts ...pulumi.ResourceOption) (*RouteEntry, error)

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

func (*RouteEntry) ElementType added in v2.25.1

func (*RouteEntry) ElementType() reflect.Type

func (*RouteEntry) ToRouteEntryOutput added in v2.25.1

func (i *RouteEntry) ToRouteEntryOutput() RouteEntryOutput

func (*RouteEntry) ToRouteEntryOutputWithContext added in v2.25.1

func (i *RouteEntry) ToRouteEntryOutputWithContext(ctx context.Context) RouteEntryOutput

func (*RouteEntry) ToRouteEntryPtrOutput added in v2.35.1

func (i *RouteEntry) ToRouteEntryPtrOutput() RouteEntryPtrOutput

func (*RouteEntry) ToRouteEntryPtrOutputWithContext added in v2.35.1

func (i *RouteEntry) ToRouteEntryPtrOutputWithContext(ctx context.Context) RouteEntryPtrOutput

type RouteEntryArgs

type RouteEntryArgs struct {
	// The RouteEntry's target network segment.
	DestinationCidrblock pulumi.StringPtrInput
	// The name of the route entry. This name can have a string of 2 to 128 characters, must contain only alphanumeric characters or hyphens, such as "-",".","_", and must not begin or end with a hyphen, and must not begin with http:// or https://.
	Name pulumi.StringPtrInput
	// The route entry's next hop. ECS instance ID or VPC router interface ID.
	NexthopId pulumi.StringPtrInput
	// The next hop type. Available values:
	NexthopType pulumi.StringPtrInput
	// The ID of the route table.
	RouteTableId pulumi.StringInput
	// This argument has beeb deprecated. Please use other arguments to launch a custom route entry.
	//
	// Deprecated: Attribute router_id has been deprecated and suggest removing it from your template.
	RouterId pulumi.StringPtrInput
}

The set of arguments for constructing a RouteEntry resource.

func (RouteEntryArgs) ElementType

func (RouteEntryArgs) ElementType() reflect.Type

type RouteEntryArray added in v2.35.1

type RouteEntryArray []RouteEntryInput

func (RouteEntryArray) ElementType added in v2.35.1

func (RouteEntryArray) ElementType() reflect.Type

func (RouteEntryArray) ToRouteEntryArrayOutput added in v2.35.1

func (i RouteEntryArray) ToRouteEntryArrayOutput() RouteEntryArrayOutput

func (RouteEntryArray) ToRouteEntryArrayOutputWithContext added in v2.35.1

func (i RouteEntryArray) ToRouteEntryArrayOutputWithContext(ctx context.Context) RouteEntryArrayOutput

type RouteEntryArrayInput added in v2.35.1

type RouteEntryArrayInput interface {
	pulumi.Input

	ToRouteEntryArrayOutput() RouteEntryArrayOutput
	ToRouteEntryArrayOutputWithContext(context.Context) RouteEntryArrayOutput
}

RouteEntryArrayInput is an input type that accepts RouteEntryArray and RouteEntryArrayOutput values. You can construct a concrete instance of `RouteEntryArrayInput` via:

RouteEntryArray{ RouteEntryArgs{...} }

type RouteEntryArrayOutput added in v2.35.1

type RouteEntryArrayOutput struct{ *pulumi.OutputState }

func (RouteEntryArrayOutput) ElementType added in v2.35.1

func (RouteEntryArrayOutput) ElementType() reflect.Type

func (RouteEntryArrayOutput) Index added in v2.35.1

func (RouteEntryArrayOutput) ToRouteEntryArrayOutput added in v2.35.1

func (o RouteEntryArrayOutput) ToRouteEntryArrayOutput() RouteEntryArrayOutput

func (RouteEntryArrayOutput) ToRouteEntryArrayOutputWithContext added in v2.35.1

func (o RouteEntryArrayOutput) ToRouteEntryArrayOutputWithContext(ctx context.Context) RouteEntryArrayOutput

type RouteEntryInput added in v2.25.1

type RouteEntryInput interface {
	pulumi.Input

	ToRouteEntryOutput() RouteEntryOutput
	ToRouteEntryOutputWithContext(ctx context.Context) RouteEntryOutput
}

type RouteEntryMap added in v2.35.1

type RouteEntryMap map[string]RouteEntryInput

func (RouteEntryMap) ElementType added in v2.35.1

func (RouteEntryMap) ElementType() reflect.Type

func (RouteEntryMap) ToRouteEntryMapOutput added in v2.35.1

func (i RouteEntryMap) ToRouteEntryMapOutput() RouteEntryMapOutput

func (RouteEntryMap) ToRouteEntryMapOutputWithContext added in v2.35.1

func (i RouteEntryMap) ToRouteEntryMapOutputWithContext(ctx context.Context) RouteEntryMapOutput

type RouteEntryMapInput added in v2.35.1

type RouteEntryMapInput interface {
	pulumi.Input

	ToRouteEntryMapOutput() RouteEntryMapOutput
	ToRouteEntryMapOutputWithContext(context.Context) RouteEntryMapOutput
}

RouteEntryMapInput is an input type that accepts RouteEntryMap and RouteEntryMapOutput values. You can construct a concrete instance of `RouteEntryMapInput` via:

RouteEntryMap{ "key": RouteEntryArgs{...} }

type RouteEntryMapOutput added in v2.35.1

type RouteEntryMapOutput struct{ *pulumi.OutputState }

func (RouteEntryMapOutput) ElementType added in v2.35.1

func (RouteEntryMapOutput) ElementType() reflect.Type

func (RouteEntryMapOutput) MapIndex added in v2.35.1

func (RouteEntryMapOutput) ToRouteEntryMapOutput added in v2.35.1

func (o RouteEntryMapOutput) ToRouteEntryMapOutput() RouteEntryMapOutput

func (RouteEntryMapOutput) ToRouteEntryMapOutputWithContext added in v2.35.1

func (o RouteEntryMapOutput) ToRouteEntryMapOutputWithContext(ctx context.Context) RouteEntryMapOutput

type RouteEntryOutput added in v2.25.1

type RouteEntryOutput struct {
	*pulumi.OutputState
}

func (RouteEntryOutput) ElementType added in v2.25.1

func (RouteEntryOutput) ElementType() reflect.Type

func (RouteEntryOutput) ToRouteEntryOutput added in v2.25.1

func (o RouteEntryOutput) ToRouteEntryOutput() RouteEntryOutput

func (RouteEntryOutput) ToRouteEntryOutputWithContext added in v2.25.1

func (o RouteEntryOutput) ToRouteEntryOutputWithContext(ctx context.Context) RouteEntryOutput

func (RouteEntryOutput) ToRouteEntryPtrOutput added in v2.35.1

func (o RouteEntryOutput) ToRouteEntryPtrOutput() RouteEntryPtrOutput

func (RouteEntryOutput) ToRouteEntryPtrOutputWithContext added in v2.35.1

func (o RouteEntryOutput) ToRouteEntryPtrOutputWithContext(ctx context.Context) RouteEntryPtrOutput

type RouteEntryPtrInput added in v2.35.1

type RouteEntryPtrInput interface {
	pulumi.Input

	ToRouteEntryPtrOutput() RouteEntryPtrOutput
	ToRouteEntryPtrOutputWithContext(ctx context.Context) RouteEntryPtrOutput
}

type RouteEntryPtrOutput added in v2.35.1

type RouteEntryPtrOutput struct {
	*pulumi.OutputState
}

func (RouteEntryPtrOutput) ElementType added in v2.35.1

func (RouteEntryPtrOutput) ElementType() reflect.Type

func (RouteEntryPtrOutput) ToRouteEntryPtrOutput added in v2.35.1

func (o RouteEntryPtrOutput) ToRouteEntryPtrOutput() RouteEntryPtrOutput

func (RouteEntryPtrOutput) ToRouteEntryPtrOutputWithContext added in v2.35.1

func (o RouteEntryPtrOutput) ToRouteEntryPtrOutputWithContext(ctx context.Context) RouteEntryPtrOutput

type RouteEntryState

type RouteEntryState struct {
	// The RouteEntry's target network segment.
	DestinationCidrblock pulumi.StringPtrInput
	// The name of the route entry. This name can have a string of 2 to 128 characters, must contain only alphanumeric characters or hyphens, such as "-",".","_", and must not begin or end with a hyphen, and must not begin with http:// or https://.
	Name pulumi.StringPtrInput
	// The route entry's next hop. ECS instance ID or VPC router interface ID.
	NexthopId pulumi.StringPtrInput
	// The next hop type. Available values:
	NexthopType pulumi.StringPtrInput
	// The ID of the route table.
	RouteTableId pulumi.StringPtrInput
	// This argument has beeb deprecated. Please use other arguments to launch a custom route entry.
	//
	// Deprecated: Attribute router_id has been deprecated and suggest removing it from your template.
	RouterId pulumi.StringPtrInput
}

func (RouteEntryState) ElementType

func (RouteEntryState) ElementType() reflect.Type

type RouteTable

type RouteTable struct {
	pulumi.CustomResourceState

	// The description of the route table instance.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// The name of the route table.
	Name pulumi.StringOutput `pulumi:"name"`
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapOutput `pulumi:"tags"`
	// The vpcId of the route table, the field can't be changed.
	VpcId pulumi.StringOutput `pulumi:"vpcId"`
}

## Import

The route table can be imported using the id, e.g.

```sh

$ pulumi import alicloud:vpc/routeTable:RouteTable foo vtb-abc123456

```

func GetRouteTable

func GetRouteTable(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *RouteTableState, opts ...pulumi.ResourceOption) (*RouteTable, error)

GetRouteTable gets an existing RouteTable 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 NewRouteTable

func NewRouteTable(ctx *pulumi.Context,
	name string, args *RouteTableArgs, opts ...pulumi.ResourceOption) (*RouteTable, error)

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

func (*RouteTable) ElementType added in v2.25.1

func (*RouteTable) ElementType() reflect.Type

func (*RouteTable) ToRouteTableOutput added in v2.25.1

func (i *RouteTable) ToRouteTableOutput() RouteTableOutput

func (*RouteTable) ToRouteTableOutputWithContext added in v2.25.1

func (i *RouteTable) ToRouteTableOutputWithContext(ctx context.Context) RouteTableOutput

func (*RouteTable) ToRouteTablePtrOutput added in v2.35.1

func (i *RouteTable) ToRouteTablePtrOutput() RouteTablePtrOutput

func (*RouteTable) ToRouteTablePtrOutputWithContext added in v2.35.1

func (i *RouteTable) ToRouteTablePtrOutputWithContext(ctx context.Context) RouteTablePtrOutput

type RouteTableArgs

type RouteTableArgs struct {
	// The description of the route table instance.
	Description pulumi.StringPtrInput
	// The name of the route table.
	Name pulumi.StringPtrInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapInput
	// The vpcId of the route table, the field can't be changed.
	VpcId pulumi.StringInput
}

The set of arguments for constructing a RouteTable resource.

func (RouteTableArgs) ElementType

func (RouteTableArgs) ElementType() reflect.Type

type RouteTableArray added in v2.35.1

type RouteTableArray []RouteTableInput

func (RouteTableArray) ElementType added in v2.35.1

func (RouteTableArray) ElementType() reflect.Type

func (RouteTableArray) ToRouteTableArrayOutput added in v2.35.1

func (i RouteTableArray) ToRouteTableArrayOutput() RouteTableArrayOutput

func (RouteTableArray) ToRouteTableArrayOutputWithContext added in v2.35.1

func (i RouteTableArray) ToRouteTableArrayOutputWithContext(ctx context.Context) RouteTableArrayOutput

type RouteTableArrayInput added in v2.35.1

type RouteTableArrayInput interface {
	pulumi.Input

	ToRouteTableArrayOutput() RouteTableArrayOutput
	ToRouteTableArrayOutputWithContext(context.Context) RouteTableArrayOutput
}

RouteTableArrayInput is an input type that accepts RouteTableArray and RouteTableArrayOutput values. You can construct a concrete instance of `RouteTableArrayInput` via:

RouteTableArray{ RouteTableArgs{...} }

type RouteTableArrayOutput added in v2.35.1

type RouteTableArrayOutput struct{ *pulumi.OutputState }

func (RouteTableArrayOutput) ElementType added in v2.35.1

func (RouteTableArrayOutput) ElementType() reflect.Type

func (RouteTableArrayOutput) Index added in v2.35.1

func (RouteTableArrayOutput) ToRouteTableArrayOutput added in v2.35.1

func (o RouteTableArrayOutput) ToRouteTableArrayOutput() RouteTableArrayOutput

func (RouteTableArrayOutput) ToRouteTableArrayOutputWithContext added in v2.35.1

func (o RouteTableArrayOutput) ToRouteTableArrayOutputWithContext(ctx context.Context) RouteTableArrayOutput

type RouteTableAttachment

type RouteTableAttachment struct {
	pulumi.CustomResourceState

	// The routeTableId of the route table attachment, the field can't be changed.
	RouteTableId pulumi.StringOutput `pulumi:"routeTableId"`
	// The vswitchId of the route table attachment, the field can't be changed.
	VswitchId pulumi.StringOutput `pulumi:"vswitchId"`
}

## Import

The route table attachemnt can be imported using the id, e.g.

```sh

$ pulumi import alicloud:vpc/routeTableAttachment:RouteTableAttachment foo vtb-abc123456:vsw-abc123456

```

func GetRouteTableAttachment

func GetRouteTableAttachment(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *RouteTableAttachmentState, opts ...pulumi.ResourceOption) (*RouteTableAttachment, error)

GetRouteTableAttachment gets an existing RouteTableAttachment 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 NewRouteTableAttachment

func NewRouteTableAttachment(ctx *pulumi.Context,
	name string, args *RouteTableAttachmentArgs, opts ...pulumi.ResourceOption) (*RouteTableAttachment, error)

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

func (*RouteTableAttachment) ElementType added in v2.25.1

func (*RouteTableAttachment) ElementType() reflect.Type

func (*RouteTableAttachment) ToRouteTableAttachmentOutput added in v2.25.1

func (i *RouteTableAttachment) ToRouteTableAttachmentOutput() RouteTableAttachmentOutput

func (*RouteTableAttachment) ToRouteTableAttachmentOutputWithContext added in v2.25.1

func (i *RouteTableAttachment) ToRouteTableAttachmentOutputWithContext(ctx context.Context) RouteTableAttachmentOutput

func (*RouteTableAttachment) ToRouteTableAttachmentPtrOutput added in v2.35.1

func (i *RouteTableAttachment) ToRouteTableAttachmentPtrOutput() RouteTableAttachmentPtrOutput

func (*RouteTableAttachment) ToRouteTableAttachmentPtrOutputWithContext added in v2.35.1

func (i *RouteTableAttachment) ToRouteTableAttachmentPtrOutputWithContext(ctx context.Context) RouteTableAttachmentPtrOutput

type RouteTableAttachmentArgs

type RouteTableAttachmentArgs struct {
	// The routeTableId of the route table attachment, the field can't be changed.
	RouteTableId pulumi.StringInput
	// The vswitchId of the route table attachment, the field can't be changed.
	VswitchId pulumi.StringInput
}

The set of arguments for constructing a RouteTableAttachment resource.

func (RouteTableAttachmentArgs) ElementType

func (RouteTableAttachmentArgs) ElementType() reflect.Type

type RouteTableAttachmentArray added in v2.35.1

type RouteTableAttachmentArray []RouteTableAttachmentInput

func (RouteTableAttachmentArray) ElementType added in v2.35.1

func (RouteTableAttachmentArray) ElementType() reflect.Type

func (RouteTableAttachmentArray) ToRouteTableAttachmentArrayOutput added in v2.35.1

func (i RouteTableAttachmentArray) ToRouteTableAttachmentArrayOutput() RouteTableAttachmentArrayOutput

func (RouteTableAttachmentArray) ToRouteTableAttachmentArrayOutputWithContext added in v2.35.1

func (i RouteTableAttachmentArray) ToRouteTableAttachmentArrayOutputWithContext(ctx context.Context) RouteTableAttachmentArrayOutput

type RouteTableAttachmentArrayInput added in v2.35.1

type RouteTableAttachmentArrayInput interface {
	pulumi.Input

	ToRouteTableAttachmentArrayOutput() RouteTableAttachmentArrayOutput
	ToRouteTableAttachmentArrayOutputWithContext(context.Context) RouteTableAttachmentArrayOutput
}

RouteTableAttachmentArrayInput is an input type that accepts RouteTableAttachmentArray and RouteTableAttachmentArrayOutput values. You can construct a concrete instance of `RouteTableAttachmentArrayInput` via:

RouteTableAttachmentArray{ RouteTableAttachmentArgs{...} }

type RouteTableAttachmentArrayOutput added in v2.35.1

type RouteTableAttachmentArrayOutput struct{ *pulumi.OutputState }

func (RouteTableAttachmentArrayOutput) ElementType added in v2.35.1

func (RouteTableAttachmentArrayOutput) Index added in v2.35.1

func (RouteTableAttachmentArrayOutput) ToRouteTableAttachmentArrayOutput added in v2.35.1

func (o RouteTableAttachmentArrayOutput) ToRouteTableAttachmentArrayOutput() RouteTableAttachmentArrayOutput

func (RouteTableAttachmentArrayOutput) ToRouteTableAttachmentArrayOutputWithContext added in v2.35.1

func (o RouteTableAttachmentArrayOutput) ToRouteTableAttachmentArrayOutputWithContext(ctx context.Context) RouteTableAttachmentArrayOutput

type RouteTableAttachmentInput added in v2.25.1

type RouteTableAttachmentInput interface {
	pulumi.Input

	ToRouteTableAttachmentOutput() RouteTableAttachmentOutput
	ToRouteTableAttachmentOutputWithContext(ctx context.Context) RouteTableAttachmentOutput
}

type RouteTableAttachmentMap added in v2.35.1

type RouteTableAttachmentMap map[string]RouteTableAttachmentInput

func (RouteTableAttachmentMap) ElementType added in v2.35.1

func (RouteTableAttachmentMap) ElementType() reflect.Type

func (RouteTableAttachmentMap) ToRouteTableAttachmentMapOutput added in v2.35.1

func (i RouteTableAttachmentMap) ToRouteTableAttachmentMapOutput() RouteTableAttachmentMapOutput

func (RouteTableAttachmentMap) ToRouteTableAttachmentMapOutputWithContext added in v2.35.1

func (i RouteTableAttachmentMap) ToRouteTableAttachmentMapOutputWithContext(ctx context.Context) RouteTableAttachmentMapOutput

type RouteTableAttachmentMapInput added in v2.35.1

type RouteTableAttachmentMapInput interface {
	pulumi.Input

	ToRouteTableAttachmentMapOutput() RouteTableAttachmentMapOutput
	ToRouteTableAttachmentMapOutputWithContext(context.Context) RouteTableAttachmentMapOutput
}

RouteTableAttachmentMapInput is an input type that accepts RouteTableAttachmentMap and RouteTableAttachmentMapOutput values. You can construct a concrete instance of `RouteTableAttachmentMapInput` via:

RouteTableAttachmentMap{ "key": RouteTableAttachmentArgs{...} }

type RouteTableAttachmentMapOutput added in v2.35.1

type RouteTableAttachmentMapOutput struct{ *pulumi.OutputState }

func (RouteTableAttachmentMapOutput) ElementType added in v2.35.1

func (RouteTableAttachmentMapOutput) MapIndex added in v2.35.1

func (RouteTableAttachmentMapOutput) ToRouteTableAttachmentMapOutput added in v2.35.1

func (o RouteTableAttachmentMapOutput) ToRouteTableAttachmentMapOutput() RouteTableAttachmentMapOutput

func (RouteTableAttachmentMapOutput) ToRouteTableAttachmentMapOutputWithContext added in v2.35.1

func (o RouteTableAttachmentMapOutput) ToRouteTableAttachmentMapOutputWithContext(ctx context.Context) RouteTableAttachmentMapOutput

type RouteTableAttachmentOutput added in v2.25.1

type RouteTableAttachmentOutput struct {
	*pulumi.OutputState
}

func (RouteTableAttachmentOutput) ElementType added in v2.25.1

func (RouteTableAttachmentOutput) ElementType() reflect.Type

func (RouteTableAttachmentOutput) ToRouteTableAttachmentOutput added in v2.25.1

func (o RouteTableAttachmentOutput) ToRouteTableAttachmentOutput() RouteTableAttachmentOutput

func (RouteTableAttachmentOutput) ToRouteTableAttachmentOutputWithContext added in v2.25.1

func (o RouteTableAttachmentOutput) ToRouteTableAttachmentOutputWithContext(ctx context.Context) RouteTableAttachmentOutput

func (RouteTableAttachmentOutput) ToRouteTableAttachmentPtrOutput added in v2.35.1

func (o RouteTableAttachmentOutput) ToRouteTableAttachmentPtrOutput() RouteTableAttachmentPtrOutput

func (RouteTableAttachmentOutput) ToRouteTableAttachmentPtrOutputWithContext added in v2.35.1

func (o RouteTableAttachmentOutput) ToRouteTableAttachmentPtrOutputWithContext(ctx context.Context) RouteTableAttachmentPtrOutput

type RouteTableAttachmentPtrInput added in v2.35.1

type RouteTableAttachmentPtrInput interface {
	pulumi.Input

	ToRouteTableAttachmentPtrOutput() RouteTableAttachmentPtrOutput
	ToRouteTableAttachmentPtrOutputWithContext(ctx context.Context) RouteTableAttachmentPtrOutput
}

type RouteTableAttachmentPtrOutput added in v2.35.1

type RouteTableAttachmentPtrOutput struct {
	*pulumi.OutputState
}

func (RouteTableAttachmentPtrOutput) ElementType added in v2.35.1

func (RouteTableAttachmentPtrOutput) ToRouteTableAttachmentPtrOutput added in v2.35.1

func (o RouteTableAttachmentPtrOutput) ToRouteTableAttachmentPtrOutput() RouteTableAttachmentPtrOutput

func (RouteTableAttachmentPtrOutput) ToRouteTableAttachmentPtrOutputWithContext added in v2.35.1

func (o RouteTableAttachmentPtrOutput) ToRouteTableAttachmentPtrOutputWithContext(ctx context.Context) RouteTableAttachmentPtrOutput

type RouteTableAttachmentState

type RouteTableAttachmentState struct {
	// The routeTableId of the route table attachment, the field can't be changed.
	RouteTableId pulumi.StringPtrInput
	// The vswitchId of the route table attachment, the field can't be changed.
	VswitchId pulumi.StringPtrInput
}

func (RouteTableAttachmentState) ElementType

func (RouteTableAttachmentState) ElementType() reflect.Type

type RouteTableInput added in v2.25.1

type RouteTableInput interface {
	pulumi.Input

	ToRouteTableOutput() RouteTableOutput
	ToRouteTableOutputWithContext(ctx context.Context) RouteTableOutput
}

type RouteTableMap added in v2.35.1

type RouteTableMap map[string]RouteTableInput

func (RouteTableMap) ElementType added in v2.35.1

func (RouteTableMap) ElementType() reflect.Type

func (RouteTableMap) ToRouteTableMapOutput added in v2.35.1

func (i RouteTableMap) ToRouteTableMapOutput() RouteTableMapOutput

func (RouteTableMap) ToRouteTableMapOutputWithContext added in v2.35.1

func (i RouteTableMap) ToRouteTableMapOutputWithContext(ctx context.Context) RouteTableMapOutput

type RouteTableMapInput added in v2.35.1

type RouteTableMapInput interface {
	pulumi.Input

	ToRouteTableMapOutput() RouteTableMapOutput
	ToRouteTableMapOutputWithContext(context.Context) RouteTableMapOutput
}

RouteTableMapInput is an input type that accepts RouteTableMap and RouteTableMapOutput values. You can construct a concrete instance of `RouteTableMapInput` via:

RouteTableMap{ "key": RouteTableArgs{...} }

type RouteTableMapOutput added in v2.35.1

type RouteTableMapOutput struct{ *pulumi.OutputState }

func (RouteTableMapOutput) ElementType added in v2.35.1

func (RouteTableMapOutput) ElementType() reflect.Type

func (RouteTableMapOutput) MapIndex added in v2.35.1

func (RouteTableMapOutput) ToRouteTableMapOutput added in v2.35.1

func (o RouteTableMapOutput) ToRouteTableMapOutput() RouteTableMapOutput

func (RouteTableMapOutput) ToRouteTableMapOutputWithContext added in v2.35.1

func (o RouteTableMapOutput) ToRouteTableMapOutputWithContext(ctx context.Context) RouteTableMapOutput

type RouteTableOutput added in v2.25.1

type RouteTableOutput struct {
	*pulumi.OutputState
}

func (RouteTableOutput) ElementType added in v2.25.1

func (RouteTableOutput) ElementType() reflect.Type

func (RouteTableOutput) ToRouteTableOutput added in v2.25.1

func (o RouteTableOutput) ToRouteTableOutput() RouteTableOutput

func (RouteTableOutput) ToRouteTableOutputWithContext added in v2.25.1

func (o RouteTableOutput) ToRouteTableOutputWithContext(ctx context.Context) RouteTableOutput

func (RouteTableOutput) ToRouteTablePtrOutput added in v2.35.1

func (o RouteTableOutput) ToRouteTablePtrOutput() RouteTablePtrOutput

func (RouteTableOutput) ToRouteTablePtrOutputWithContext added in v2.35.1

func (o RouteTableOutput) ToRouteTablePtrOutputWithContext(ctx context.Context) RouteTablePtrOutput

type RouteTablePtrInput added in v2.35.1

type RouteTablePtrInput interface {
	pulumi.Input

	ToRouteTablePtrOutput() RouteTablePtrOutput
	ToRouteTablePtrOutputWithContext(ctx context.Context) RouteTablePtrOutput
}

type RouteTablePtrOutput added in v2.35.1

type RouteTablePtrOutput struct {
	*pulumi.OutputState
}

func (RouteTablePtrOutput) ElementType added in v2.35.1

func (RouteTablePtrOutput) ElementType() reflect.Type

func (RouteTablePtrOutput) ToRouteTablePtrOutput added in v2.35.1

func (o RouteTablePtrOutput) ToRouteTablePtrOutput() RouteTablePtrOutput

func (RouteTablePtrOutput) ToRouteTablePtrOutputWithContext added in v2.35.1

func (o RouteTablePtrOutput) ToRouteTablePtrOutputWithContext(ctx context.Context) RouteTablePtrOutput

type RouteTableState

type RouteTableState struct {
	// The description of the route table instance.
	Description pulumi.StringPtrInput
	// The name of the route table.
	Name pulumi.StringPtrInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapInput
	// The vpcId of the route table, the field can't be changed.
	VpcId pulumi.StringPtrInput
}

func (RouteTableState) ElementType

func (RouteTableState) ElementType() reflect.Type

type RouterInterface

type RouterInterface struct {
	pulumi.CustomResourceState

	// It has been deprecated from version 1.11.0.
	//
	// Deprecated: Attribute 'opposite_access_point_id' has been deprecated from version 1.11.0.
	AccessPointId pulumi.StringOutput `pulumi:"accessPointId"`
	// Description of the router interface. It can be 2-256 characters long or left blank. It cannot start with http:// and https://.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// Used as the Packet Source IP of health check for disaster recovery or ECMP. It is only valid when `routerType` is `VBR`. The IP must be an unused IP in the local VPC. It and `healthCheckTargetIp` must be specified at the same time.
	HealthCheckSourceIp pulumi.StringPtrOutput `pulumi:"healthCheckSourceIp"`
	// Used as the Packet Target IP of health check for disaster recovery or ECMP. It is only valid when `routerType` is `VBR`. The IP must be an unused IP in the local VPC. It and `healthCheckSourceIp` must be specified at the same time.
	HealthCheckTargetIp pulumi.StringPtrOutput `pulumi:"healthCheckTargetIp"`
	// The billing method of the router interface. Valid values are "PrePaid" and "PostPaid". Default to "PostPaid". Router Interface doesn't support "PrePaid" when region and oppositeRegion are the same.
	InstanceChargeType pulumi.StringPtrOutput `pulumi:"instanceChargeType"`
	// Name of the router interface. Length must be 2-80 characters long. Only Chinese characters, English letters, numbers, period (.), underline (_), or dash (-) are permitted.
	// If it is not specified, the default value is interface ID. The name cannot start with http:// and https://.
	Name pulumi.StringOutput `pulumi:"name"`
	// It has been deprecated from version 1.11.0.
	//
	// Deprecated: Attribute 'opposite_access_point_id' has been deprecated from version 1.11.0.
	OppositeAccessPointId pulumi.StringPtrOutput `pulumi:"oppositeAccessPointId"`
	// It has been deprecated from version 1.11.0. Use resource alicloud_router_interface_connection's 'opposite_router_id' instead.
	//
	// Deprecated: Attribute 'opposite_interface_id' has been deprecated from version 1.11.0. Use resource alicloud_router_interface_connection's 'opposite_interface_id' instead.
	OppositeInterfaceId pulumi.StringOutput `pulumi:"oppositeInterfaceId"`
	// It has been deprecated from version 1.11.0. Use resource alicloud_router_interface_connection's 'opposite_interface_id' instead.
	//
	// Deprecated: Attribute 'opposite_interface_owner_id' has been deprecated from version 1.11.0. Use resource alicloud_router_interface_connection's 'opposite_interface_owner_id' instead.
	OppositeInterfaceOwnerId pulumi.StringOutput `pulumi:"oppositeInterfaceOwnerId"`
	// The Region of peer side.
	OppositeRegion pulumi.StringOutput `pulumi:"oppositeRegion"`
	// It has been deprecated from version 1.11.0. Use resource alicloud_router_interface_connection's 'opposite_router_id' instead.
	//
	// Deprecated: Attribute 'opposite_router_id' has been deprecated from version 1.11.0. Use resource alicloud_router_interface_connection's 'opposite_router_id' instead.
	OppositeRouterId pulumi.StringOutput `pulumi:"oppositeRouterId"`
	// It has been deprecated from version 1.11.0. resource alicloud_router_interface_connection's 'opposite_router_type' instead.
	//
	// Deprecated: Attribute 'opposite_router_type' has been deprecated from version 1.11.0. Use resource alicloud_router_interface_connection's 'opposite_router_type' instead.
	OppositeRouterType pulumi.StringOutput `pulumi:"oppositeRouterType"`
	// The duration that you will buy the resource, in month. It is valid when `instanceChargeType` is `PrePaid`. Default to 1. Valid values: [1-9, 12, 24, 36]. At present, the provider does not support modify "period" and you can do that via web console.
	Period pulumi.IntPtrOutput `pulumi:"period"`
	// The role the router interface plays. Optional value: `InitiatingSide`, `AcceptingSide`.
	Role pulumi.StringOutput `pulumi:"role"`
	// The Router ID.
	RouterId pulumi.StringOutput `pulumi:"routerId"`
	// Router Type. Optional value: VRouter, VBR. Accepting side router interface type only be VRouter.
	RouterType pulumi.StringOutput `pulumi:"routerType"`
	// Specification of router interfaces. It is valid when `role` is `InitiatingSide`. Accepting side's role is default to set as 'Negative'. For more about the specification, refer to [Router interface specification](https://www.alibabacloud.com/help/doc-detail/36037.htm).
	Specification pulumi.StringPtrOutput `pulumi:"specification"`
}

## Import

The router interface can be imported using the id, e.g.

```sh

$ pulumi import alicloud:vpc/routerInterface:RouterInterface interface ri-abc123456

```

func GetRouterInterface

func GetRouterInterface(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *RouterInterfaceState, opts ...pulumi.ResourceOption) (*RouterInterface, error)

GetRouterInterface gets an existing RouterInterface 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 NewRouterInterface

func NewRouterInterface(ctx *pulumi.Context,
	name string, args *RouterInterfaceArgs, opts ...pulumi.ResourceOption) (*RouterInterface, error)

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

func (*RouterInterface) ElementType added in v2.25.1

func (*RouterInterface) ElementType() reflect.Type

func (*RouterInterface) ToRouterInterfaceOutput added in v2.25.1

func (i *RouterInterface) ToRouterInterfaceOutput() RouterInterfaceOutput

func (*RouterInterface) ToRouterInterfaceOutputWithContext added in v2.25.1

func (i *RouterInterface) ToRouterInterfaceOutputWithContext(ctx context.Context) RouterInterfaceOutput

func (*RouterInterface) ToRouterInterfacePtrOutput added in v2.35.1

func (i *RouterInterface) ToRouterInterfacePtrOutput() RouterInterfacePtrOutput

func (*RouterInterface) ToRouterInterfacePtrOutputWithContext added in v2.35.1

func (i *RouterInterface) ToRouterInterfacePtrOutputWithContext(ctx context.Context) RouterInterfacePtrOutput

type RouterInterfaceArgs

type RouterInterfaceArgs struct {
	// Description of the router interface. It can be 2-256 characters long or left blank. It cannot start with http:// and https://.
	Description pulumi.StringPtrInput
	// Used as the Packet Source IP of health check for disaster recovery or ECMP. It is only valid when `routerType` is `VBR`. The IP must be an unused IP in the local VPC. It and `healthCheckTargetIp` must be specified at the same time.
	HealthCheckSourceIp pulumi.StringPtrInput
	// Used as the Packet Target IP of health check for disaster recovery or ECMP. It is only valid when `routerType` is `VBR`. The IP must be an unused IP in the local VPC. It and `healthCheckSourceIp` must be specified at the same time.
	HealthCheckTargetIp pulumi.StringPtrInput
	// The billing method of the router interface. Valid values are "PrePaid" and "PostPaid". Default to "PostPaid". Router Interface doesn't support "PrePaid" when region and oppositeRegion are the same.
	InstanceChargeType pulumi.StringPtrInput
	// Name of the router interface. Length must be 2-80 characters long. Only Chinese characters, English letters, numbers, period (.), underline (_), or dash (-) are permitted.
	// If it is not specified, the default value is interface ID. The name cannot start with http:// and https://.
	Name pulumi.StringPtrInput
	// It has been deprecated from version 1.11.0.
	//
	// Deprecated: Attribute 'opposite_access_point_id' has been deprecated from version 1.11.0.
	OppositeAccessPointId pulumi.StringPtrInput
	// The Region of peer side.
	OppositeRegion pulumi.StringInput
	// The duration that you will buy the resource, in month. It is valid when `instanceChargeType` is `PrePaid`. Default to 1. Valid values: [1-9, 12, 24, 36]. At present, the provider does not support modify "period" and you can do that via web console.
	Period pulumi.IntPtrInput
	// The role the router interface plays. Optional value: `InitiatingSide`, `AcceptingSide`.
	Role pulumi.StringInput
	// The Router ID.
	RouterId pulumi.StringInput
	// Router Type. Optional value: VRouter, VBR. Accepting side router interface type only be VRouter.
	RouterType pulumi.StringInput
	// Specification of router interfaces. It is valid when `role` is `InitiatingSide`. Accepting side's role is default to set as 'Negative'. For more about the specification, refer to [Router interface specification](https://www.alibabacloud.com/help/doc-detail/36037.htm).
	Specification pulumi.StringPtrInput
}

The set of arguments for constructing a RouterInterface resource.

func (RouterInterfaceArgs) ElementType

func (RouterInterfaceArgs) ElementType() reflect.Type

type RouterInterfaceArray added in v2.35.1

type RouterInterfaceArray []RouterInterfaceInput

func (RouterInterfaceArray) ElementType added in v2.35.1

func (RouterInterfaceArray) ElementType() reflect.Type

func (RouterInterfaceArray) ToRouterInterfaceArrayOutput added in v2.35.1

func (i RouterInterfaceArray) ToRouterInterfaceArrayOutput() RouterInterfaceArrayOutput

func (RouterInterfaceArray) ToRouterInterfaceArrayOutputWithContext added in v2.35.1

func (i RouterInterfaceArray) ToRouterInterfaceArrayOutputWithContext(ctx context.Context) RouterInterfaceArrayOutput

type RouterInterfaceArrayInput added in v2.35.1

type RouterInterfaceArrayInput interface {
	pulumi.Input

	ToRouterInterfaceArrayOutput() RouterInterfaceArrayOutput
	ToRouterInterfaceArrayOutputWithContext(context.Context) RouterInterfaceArrayOutput
}

RouterInterfaceArrayInput is an input type that accepts RouterInterfaceArray and RouterInterfaceArrayOutput values. You can construct a concrete instance of `RouterInterfaceArrayInput` via:

RouterInterfaceArray{ RouterInterfaceArgs{...} }

type RouterInterfaceArrayOutput added in v2.35.1

type RouterInterfaceArrayOutput struct{ *pulumi.OutputState }

func (RouterInterfaceArrayOutput) ElementType added in v2.35.1

func (RouterInterfaceArrayOutput) ElementType() reflect.Type

func (RouterInterfaceArrayOutput) Index added in v2.35.1

func (RouterInterfaceArrayOutput) ToRouterInterfaceArrayOutput added in v2.35.1

func (o RouterInterfaceArrayOutput) ToRouterInterfaceArrayOutput() RouterInterfaceArrayOutput

func (RouterInterfaceArrayOutput) ToRouterInterfaceArrayOutputWithContext added in v2.35.1

func (o RouterInterfaceArrayOutput) ToRouterInterfaceArrayOutputWithContext(ctx context.Context) RouterInterfaceArrayOutput

type RouterInterfaceConnection

type RouterInterfaceConnection struct {
	pulumi.CustomResourceState

	// One side router interface ID.
	InterfaceId pulumi.StringOutput `pulumi:"interfaceId"`
	// Another side router interface ID. It must belong the specified "oppositeInterfaceOwnerId" account.
	OppositeInterfaceId      pulumi.StringOutput `pulumi:"oppositeInterfaceId"`
	OppositeInterfaceOwnerId pulumi.StringOutput `pulumi:"oppositeInterfaceOwnerId"`
	// Another side router ID. It must belong the specified "oppositeInterfaceOwnerId" account. It is valid when field "oppositeInterfaceOwnerId" is specified.
	OppositeRouterId pulumi.StringOutput `pulumi:"oppositeRouterId"`
	// Another side router Type. Optional value: VRouter, VBR. It is valid when field "oppositeInterfaceOwnerId" is specified.
	OppositeRouterType pulumi.StringPtrOutput `pulumi:"oppositeRouterType"`
}

Provides a VPC router interface connection resource to connect two router interfaces which are in two different VPCs. After that, all of the two router interfaces will be active.

> **NOTE:** At present, Router interface does not support changing opposite router interface, the connection delete action is only deactivating it to inactive, not modifying the connection to empty.

> **NOTE:** If you want to changing opposite router interface, you can delete router interface and re-build them.

> **NOTE:** A integrated router interface connection tunnel requires both InitiatingSide and AcceptingSide configuring opposite router interface.

> **NOTE:** Please remember to add a `dependsOn` clause in the router interface connection from the InitiatingSide to the AcceptingSide, because the connection from the AcceptingSide to the InitiatingSide must be done first.

## Example Usage

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud/vpc"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		region := "cn-hangzhou"
		if param := cfg.Get("region"); param != "" {
			region = param
		}
		name := "alicloudRouterInterfaceConnectionBasic"
		if param := cfg.Get("name"); param != "" {
			name = param
		}
		fooNetwork, err := vpc.NewNetwork(ctx, "fooNetwork", &vpc.NetworkArgs{
			CidrBlock: pulumi.String("172.16.0.0/12"),
		})
		if err != nil {
			return err
		}
		barNetwork, err := vpc.NewNetwork(ctx, "barNetwork", &vpc.NetworkArgs{
			CidrBlock: pulumi.String("192.168.0.0/16"),
		}, pulumi.Provider(alicloud))
		if err != nil {
			return err
		}
		initiate, err := vpc.NewRouterInterface(ctx, "initiate", &vpc.RouterInterfaceArgs{
			OppositeRegion:     pulumi.String(region),
			RouterType:         pulumi.String("VRouter"),
			RouterId:           fooNetwork.RouterId,
			Role:               pulumi.String("InitiatingSide"),
			Specification:      pulumi.String("Large.2"),
			Description:        pulumi.String(name),
			InstanceChargeType: pulumi.String("PostPaid"),
		})
		if err != nil {
			return err
		}
		opposite, err := vpc.NewRouterInterface(ctx, "opposite", &vpc.RouterInterfaceArgs{
			OppositeRegion: pulumi.String(region),
			RouterType:     pulumi.String("VRouter"),
			RouterId:       barNetwork.RouterId,
			Role:           pulumi.String("AcceptingSide"),
			Specification:  pulumi.String("Large.1"),
			Description:    pulumi.String(fmt.Sprintf("%v%v", name, "-opposite")),
		}, pulumi.Provider(alicloud))
		if err != nil {
			return err
		}
		barRouterInterfaceConnection, err := vpc.NewRouterInterfaceConnection(ctx, "barRouterInterfaceConnection", &vpc.RouterInterfaceConnectionArgs{
			InterfaceId:         opposite.ID(),
			OppositeInterfaceId: initiate.ID(),
		}, pulumi.Provider(alicloud))
		if err != nil {
			return err
		}
		_, err = vpc.NewRouterInterfaceConnection(ctx, "fooRouterInterfaceConnection", &vpc.RouterInterfaceConnectionArgs{
			InterfaceId:         initiate.ID(),
			OppositeInterfaceId: opposite.ID(),
		}, pulumi.DependsOn([]pulumi.Resource{
			barRouterInterfaceConnection,
		}))
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

The router interface connection can be imported using the id, e.g.

```sh

$ pulumi import alicloud:vpc/routerInterfaceConnection:RouterInterfaceConnection foo ri-abc123456

```

func GetRouterInterfaceConnection

func GetRouterInterfaceConnection(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *RouterInterfaceConnectionState, opts ...pulumi.ResourceOption) (*RouterInterfaceConnection, error)

GetRouterInterfaceConnection gets an existing RouterInterfaceConnection 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 NewRouterInterfaceConnection

func NewRouterInterfaceConnection(ctx *pulumi.Context,
	name string, args *RouterInterfaceConnectionArgs, opts ...pulumi.ResourceOption) (*RouterInterfaceConnection, error)

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

func (*RouterInterfaceConnection) ElementType added in v2.25.1

func (*RouterInterfaceConnection) ElementType() reflect.Type

func (*RouterInterfaceConnection) ToRouterInterfaceConnectionOutput added in v2.25.1

func (i *RouterInterfaceConnection) ToRouterInterfaceConnectionOutput() RouterInterfaceConnectionOutput

func (*RouterInterfaceConnection) ToRouterInterfaceConnectionOutputWithContext added in v2.25.1

func (i *RouterInterfaceConnection) ToRouterInterfaceConnectionOutputWithContext(ctx context.Context) RouterInterfaceConnectionOutput

func (*RouterInterfaceConnection) ToRouterInterfaceConnectionPtrOutput added in v2.35.1

func (i *RouterInterfaceConnection) ToRouterInterfaceConnectionPtrOutput() RouterInterfaceConnectionPtrOutput

func (*RouterInterfaceConnection) ToRouterInterfaceConnectionPtrOutputWithContext added in v2.35.1

func (i *RouterInterfaceConnection) ToRouterInterfaceConnectionPtrOutputWithContext(ctx context.Context) RouterInterfaceConnectionPtrOutput

type RouterInterfaceConnectionArgs

type RouterInterfaceConnectionArgs struct {
	// One side router interface ID.
	InterfaceId pulumi.StringInput
	// Another side router interface ID. It must belong the specified "oppositeInterfaceOwnerId" account.
	OppositeInterfaceId      pulumi.StringInput
	OppositeInterfaceOwnerId pulumi.StringPtrInput
	// Another side router ID. It must belong the specified "oppositeInterfaceOwnerId" account. It is valid when field "oppositeInterfaceOwnerId" is specified.
	OppositeRouterId pulumi.StringPtrInput
	// Another side router Type. Optional value: VRouter, VBR. It is valid when field "oppositeInterfaceOwnerId" is specified.
	OppositeRouterType pulumi.StringPtrInput
}

The set of arguments for constructing a RouterInterfaceConnection resource.

func (RouterInterfaceConnectionArgs) ElementType

type RouterInterfaceConnectionArray added in v2.35.1

type RouterInterfaceConnectionArray []RouterInterfaceConnectionInput

func (RouterInterfaceConnectionArray) ElementType added in v2.35.1

func (RouterInterfaceConnectionArray) ToRouterInterfaceConnectionArrayOutput added in v2.35.1

func (i RouterInterfaceConnectionArray) ToRouterInterfaceConnectionArrayOutput() RouterInterfaceConnectionArrayOutput

func (RouterInterfaceConnectionArray) ToRouterInterfaceConnectionArrayOutputWithContext added in v2.35.1

func (i RouterInterfaceConnectionArray) ToRouterInterfaceConnectionArrayOutputWithContext(ctx context.Context) RouterInterfaceConnectionArrayOutput

type RouterInterfaceConnectionArrayInput added in v2.35.1

type RouterInterfaceConnectionArrayInput interface {
	pulumi.Input

	ToRouterInterfaceConnectionArrayOutput() RouterInterfaceConnectionArrayOutput
	ToRouterInterfaceConnectionArrayOutputWithContext(context.Context) RouterInterfaceConnectionArrayOutput
}

RouterInterfaceConnectionArrayInput is an input type that accepts RouterInterfaceConnectionArray and RouterInterfaceConnectionArrayOutput values. You can construct a concrete instance of `RouterInterfaceConnectionArrayInput` via:

RouterInterfaceConnectionArray{ RouterInterfaceConnectionArgs{...} }

type RouterInterfaceConnectionArrayOutput added in v2.35.1

type RouterInterfaceConnectionArrayOutput struct{ *pulumi.OutputState }

func (RouterInterfaceConnectionArrayOutput) ElementType added in v2.35.1

func (RouterInterfaceConnectionArrayOutput) Index added in v2.35.1

func (RouterInterfaceConnectionArrayOutput) ToRouterInterfaceConnectionArrayOutput added in v2.35.1

func (o RouterInterfaceConnectionArrayOutput) ToRouterInterfaceConnectionArrayOutput() RouterInterfaceConnectionArrayOutput

func (RouterInterfaceConnectionArrayOutput) ToRouterInterfaceConnectionArrayOutputWithContext added in v2.35.1

func (o RouterInterfaceConnectionArrayOutput) ToRouterInterfaceConnectionArrayOutputWithContext(ctx context.Context) RouterInterfaceConnectionArrayOutput

type RouterInterfaceConnectionInput added in v2.25.1

type RouterInterfaceConnectionInput interface {
	pulumi.Input

	ToRouterInterfaceConnectionOutput() RouterInterfaceConnectionOutput
	ToRouterInterfaceConnectionOutputWithContext(ctx context.Context) RouterInterfaceConnectionOutput
}

type RouterInterfaceConnectionMap added in v2.35.1

type RouterInterfaceConnectionMap map[string]RouterInterfaceConnectionInput

func (RouterInterfaceConnectionMap) ElementType added in v2.35.1

func (RouterInterfaceConnectionMap) ToRouterInterfaceConnectionMapOutput added in v2.35.1

func (i RouterInterfaceConnectionMap) ToRouterInterfaceConnectionMapOutput() RouterInterfaceConnectionMapOutput

func (RouterInterfaceConnectionMap) ToRouterInterfaceConnectionMapOutputWithContext added in v2.35.1

func (i RouterInterfaceConnectionMap) ToRouterInterfaceConnectionMapOutputWithContext(ctx context.Context) RouterInterfaceConnectionMapOutput

type RouterInterfaceConnectionMapInput added in v2.35.1

type RouterInterfaceConnectionMapInput interface {
	pulumi.Input

	ToRouterInterfaceConnectionMapOutput() RouterInterfaceConnectionMapOutput
	ToRouterInterfaceConnectionMapOutputWithContext(context.Context) RouterInterfaceConnectionMapOutput
}

RouterInterfaceConnectionMapInput is an input type that accepts RouterInterfaceConnectionMap and RouterInterfaceConnectionMapOutput values. You can construct a concrete instance of `RouterInterfaceConnectionMapInput` via:

RouterInterfaceConnectionMap{ "key": RouterInterfaceConnectionArgs{...} }

type RouterInterfaceConnectionMapOutput added in v2.35.1

type RouterInterfaceConnectionMapOutput struct{ *pulumi.OutputState }

func (RouterInterfaceConnectionMapOutput) ElementType added in v2.35.1

func (RouterInterfaceConnectionMapOutput) MapIndex added in v2.35.1

func (RouterInterfaceConnectionMapOutput) ToRouterInterfaceConnectionMapOutput added in v2.35.1

func (o RouterInterfaceConnectionMapOutput) ToRouterInterfaceConnectionMapOutput() RouterInterfaceConnectionMapOutput

func (RouterInterfaceConnectionMapOutput) ToRouterInterfaceConnectionMapOutputWithContext added in v2.35.1

func (o RouterInterfaceConnectionMapOutput) ToRouterInterfaceConnectionMapOutputWithContext(ctx context.Context) RouterInterfaceConnectionMapOutput

type RouterInterfaceConnectionOutput added in v2.25.1

type RouterInterfaceConnectionOutput struct {
	*pulumi.OutputState
}

func (RouterInterfaceConnectionOutput) ElementType added in v2.25.1

func (RouterInterfaceConnectionOutput) ToRouterInterfaceConnectionOutput added in v2.25.1

func (o RouterInterfaceConnectionOutput) ToRouterInterfaceConnectionOutput() RouterInterfaceConnectionOutput

func (RouterInterfaceConnectionOutput) ToRouterInterfaceConnectionOutputWithContext added in v2.25.1

func (o RouterInterfaceConnectionOutput) ToRouterInterfaceConnectionOutputWithContext(ctx context.Context) RouterInterfaceConnectionOutput

func (RouterInterfaceConnectionOutput) ToRouterInterfaceConnectionPtrOutput added in v2.35.1

func (o RouterInterfaceConnectionOutput) ToRouterInterfaceConnectionPtrOutput() RouterInterfaceConnectionPtrOutput

func (RouterInterfaceConnectionOutput) ToRouterInterfaceConnectionPtrOutputWithContext added in v2.35.1

func (o RouterInterfaceConnectionOutput) ToRouterInterfaceConnectionPtrOutputWithContext(ctx context.Context) RouterInterfaceConnectionPtrOutput

type RouterInterfaceConnectionPtrInput added in v2.35.1

type RouterInterfaceConnectionPtrInput interface {
	pulumi.Input

	ToRouterInterfaceConnectionPtrOutput() RouterInterfaceConnectionPtrOutput
	ToRouterInterfaceConnectionPtrOutputWithContext(ctx context.Context) RouterInterfaceConnectionPtrOutput
}

type RouterInterfaceConnectionPtrOutput added in v2.35.1

type RouterInterfaceConnectionPtrOutput struct {
	*pulumi.OutputState
}

func (RouterInterfaceConnectionPtrOutput) ElementType added in v2.35.1

func (RouterInterfaceConnectionPtrOutput) ToRouterInterfaceConnectionPtrOutput added in v2.35.1

func (o RouterInterfaceConnectionPtrOutput) ToRouterInterfaceConnectionPtrOutput() RouterInterfaceConnectionPtrOutput

func (RouterInterfaceConnectionPtrOutput) ToRouterInterfaceConnectionPtrOutputWithContext added in v2.35.1

func (o RouterInterfaceConnectionPtrOutput) ToRouterInterfaceConnectionPtrOutputWithContext(ctx context.Context) RouterInterfaceConnectionPtrOutput

type RouterInterfaceConnectionState

type RouterInterfaceConnectionState struct {
	// One side router interface ID.
	InterfaceId pulumi.StringPtrInput
	// Another side router interface ID. It must belong the specified "oppositeInterfaceOwnerId" account.
	OppositeInterfaceId      pulumi.StringPtrInput
	OppositeInterfaceOwnerId pulumi.StringPtrInput
	// Another side router ID. It must belong the specified "oppositeInterfaceOwnerId" account. It is valid when field "oppositeInterfaceOwnerId" is specified.
	OppositeRouterId pulumi.StringPtrInput
	// Another side router Type. Optional value: VRouter, VBR. It is valid when field "oppositeInterfaceOwnerId" is specified.
	OppositeRouterType pulumi.StringPtrInput
}

func (RouterInterfaceConnectionState) ElementType

type RouterInterfaceInput added in v2.25.1

type RouterInterfaceInput interface {
	pulumi.Input

	ToRouterInterfaceOutput() RouterInterfaceOutput
	ToRouterInterfaceOutputWithContext(ctx context.Context) RouterInterfaceOutput
}

type RouterInterfaceMap added in v2.35.1

type RouterInterfaceMap map[string]RouterInterfaceInput

func (RouterInterfaceMap) ElementType added in v2.35.1

func (RouterInterfaceMap) ElementType() reflect.Type

func (RouterInterfaceMap) ToRouterInterfaceMapOutput added in v2.35.1

func (i RouterInterfaceMap) ToRouterInterfaceMapOutput() RouterInterfaceMapOutput

func (RouterInterfaceMap) ToRouterInterfaceMapOutputWithContext added in v2.35.1

func (i RouterInterfaceMap) ToRouterInterfaceMapOutputWithContext(ctx context.Context) RouterInterfaceMapOutput

type RouterInterfaceMapInput added in v2.35.1

type RouterInterfaceMapInput interface {
	pulumi.Input

	ToRouterInterfaceMapOutput() RouterInterfaceMapOutput
	ToRouterInterfaceMapOutputWithContext(context.Context) RouterInterfaceMapOutput
}

RouterInterfaceMapInput is an input type that accepts RouterInterfaceMap and RouterInterfaceMapOutput values. You can construct a concrete instance of `RouterInterfaceMapInput` via:

RouterInterfaceMap{ "key": RouterInterfaceArgs{...} }

type RouterInterfaceMapOutput added in v2.35.1

type RouterInterfaceMapOutput struct{ *pulumi.OutputState }

func (RouterInterfaceMapOutput) ElementType added in v2.35.1

func (RouterInterfaceMapOutput) ElementType() reflect.Type

func (RouterInterfaceMapOutput) MapIndex added in v2.35.1

func (RouterInterfaceMapOutput) ToRouterInterfaceMapOutput added in v2.35.1

func (o RouterInterfaceMapOutput) ToRouterInterfaceMapOutput() RouterInterfaceMapOutput

func (RouterInterfaceMapOutput) ToRouterInterfaceMapOutputWithContext added in v2.35.1

func (o RouterInterfaceMapOutput) ToRouterInterfaceMapOutputWithContext(ctx context.Context) RouterInterfaceMapOutput

type RouterInterfaceOutput added in v2.25.1

type RouterInterfaceOutput struct {
	*pulumi.OutputState
}

func (RouterInterfaceOutput) ElementType added in v2.25.1

func (RouterInterfaceOutput) ElementType() reflect.Type

func (RouterInterfaceOutput) ToRouterInterfaceOutput added in v2.25.1

func (o RouterInterfaceOutput) ToRouterInterfaceOutput() RouterInterfaceOutput

func (RouterInterfaceOutput) ToRouterInterfaceOutputWithContext added in v2.25.1

func (o RouterInterfaceOutput) ToRouterInterfaceOutputWithContext(ctx context.Context) RouterInterfaceOutput

func (RouterInterfaceOutput) ToRouterInterfacePtrOutput added in v2.35.1

func (o RouterInterfaceOutput) ToRouterInterfacePtrOutput() RouterInterfacePtrOutput

func (RouterInterfaceOutput) ToRouterInterfacePtrOutputWithContext added in v2.35.1

func (o RouterInterfaceOutput) ToRouterInterfacePtrOutputWithContext(ctx context.Context) RouterInterfacePtrOutput

type RouterInterfacePtrInput added in v2.35.1

type RouterInterfacePtrInput interface {
	pulumi.Input

	ToRouterInterfacePtrOutput() RouterInterfacePtrOutput
	ToRouterInterfacePtrOutputWithContext(ctx context.Context) RouterInterfacePtrOutput
}

type RouterInterfacePtrOutput added in v2.35.1

type RouterInterfacePtrOutput struct {
	*pulumi.OutputState
}

func (RouterInterfacePtrOutput) ElementType added in v2.35.1

func (RouterInterfacePtrOutput) ElementType() reflect.Type

func (RouterInterfacePtrOutput) ToRouterInterfacePtrOutput added in v2.35.1

func (o RouterInterfacePtrOutput) ToRouterInterfacePtrOutput() RouterInterfacePtrOutput

func (RouterInterfacePtrOutput) ToRouterInterfacePtrOutputWithContext added in v2.35.1

func (o RouterInterfacePtrOutput) ToRouterInterfacePtrOutputWithContext(ctx context.Context) RouterInterfacePtrOutput

type RouterInterfaceState

type RouterInterfaceState struct {
	// It has been deprecated from version 1.11.0.
	//
	// Deprecated: Attribute 'opposite_access_point_id' has been deprecated from version 1.11.0.
	AccessPointId pulumi.StringPtrInput
	// Description of the router interface. It can be 2-256 characters long or left blank. It cannot start with http:// and https://.
	Description pulumi.StringPtrInput
	// Used as the Packet Source IP of health check for disaster recovery or ECMP. It is only valid when `routerType` is `VBR`. The IP must be an unused IP in the local VPC. It and `healthCheckTargetIp` must be specified at the same time.
	HealthCheckSourceIp pulumi.StringPtrInput
	// Used as the Packet Target IP of health check for disaster recovery or ECMP. It is only valid when `routerType` is `VBR`. The IP must be an unused IP in the local VPC. It and `healthCheckSourceIp` must be specified at the same time.
	HealthCheckTargetIp pulumi.StringPtrInput
	// The billing method of the router interface. Valid values are "PrePaid" and "PostPaid". Default to "PostPaid". Router Interface doesn't support "PrePaid" when region and oppositeRegion are the same.
	InstanceChargeType pulumi.StringPtrInput
	// Name of the router interface. Length must be 2-80 characters long. Only Chinese characters, English letters, numbers, period (.), underline (_), or dash (-) are permitted.
	// If it is not specified, the default value is interface ID. The name cannot start with http:// and https://.
	Name pulumi.StringPtrInput
	// It has been deprecated from version 1.11.0.
	//
	// Deprecated: Attribute 'opposite_access_point_id' has been deprecated from version 1.11.0.
	OppositeAccessPointId pulumi.StringPtrInput
	// It has been deprecated from version 1.11.0. Use resource alicloud_router_interface_connection's 'opposite_router_id' instead.
	//
	// Deprecated: Attribute 'opposite_interface_id' has been deprecated from version 1.11.0. Use resource alicloud_router_interface_connection's 'opposite_interface_id' instead.
	OppositeInterfaceId pulumi.StringPtrInput
	// It has been deprecated from version 1.11.0. Use resource alicloud_router_interface_connection's 'opposite_interface_id' instead.
	//
	// Deprecated: Attribute 'opposite_interface_owner_id' has been deprecated from version 1.11.0. Use resource alicloud_router_interface_connection's 'opposite_interface_owner_id' instead.
	OppositeInterfaceOwnerId pulumi.StringPtrInput
	// The Region of peer side.
	OppositeRegion pulumi.StringPtrInput
	// It has been deprecated from version 1.11.0. Use resource alicloud_router_interface_connection's 'opposite_router_id' instead.
	//
	// Deprecated: Attribute 'opposite_router_id' has been deprecated from version 1.11.0. Use resource alicloud_router_interface_connection's 'opposite_router_id' instead.
	OppositeRouterId pulumi.StringPtrInput
	// It has been deprecated from version 1.11.0. resource alicloud_router_interface_connection's 'opposite_router_type' instead.
	//
	// Deprecated: Attribute 'opposite_router_type' has been deprecated from version 1.11.0. Use resource alicloud_router_interface_connection's 'opposite_router_type' instead.
	OppositeRouterType pulumi.StringPtrInput
	// The duration that you will buy the resource, in month. It is valid when `instanceChargeType` is `PrePaid`. Default to 1. Valid values: [1-9, 12, 24, 36]. At present, the provider does not support modify "period" and you can do that via web console.
	Period pulumi.IntPtrInput
	// The role the router interface plays. Optional value: `InitiatingSide`, `AcceptingSide`.
	Role pulumi.StringPtrInput
	// The Router ID.
	RouterId pulumi.StringPtrInput
	// Router Type. Optional value: VRouter, VBR. Accepting side router interface type only be VRouter.
	RouterType pulumi.StringPtrInput
	// Specification of router interfaces. It is valid when `role` is `InitiatingSide`. Accepting side's role is default to set as 'Negative'. For more about the specification, refer to [Router interface specification](https://www.alibabacloud.com/help/doc-detail/36037.htm).
	Specification pulumi.StringPtrInput
}

func (RouterInterfaceState) ElementType

func (RouterInterfaceState) ElementType() reflect.Type

type SnatEntry

type SnatEntry struct {
	pulumi.CustomResourceState

	// The id of the snat entry on the server.
	SnatEntryId pulumi.StringOutput `pulumi:"snatEntryId"`
	// The name of snat entry.
	SnatEntryName pulumi.StringPtrOutput `pulumi:"snatEntryName"`
	// The SNAT ip address, the ip must along bandwidth package public ip which `vpc.NatGateway` argument `bandwidthPackages`.
	SnatIp pulumi.StringOutput `pulumi:"snatIp"`
	// The value can get from `vpc.NatGateway` Attributes "snatTableIds".
	SnatTableId pulumi.StringOutput `pulumi:"snatTableId"`
	// The private network segment of Ecs. This parameter and the `sourceVswitchId` parameter are mutually exclusive and cannot appear at the same time.
	SourceCidr pulumi.StringPtrOutput `pulumi:"sourceCidr"`
	// The vswitch ID.
	SourceVswitchId pulumi.StringPtrOutput `pulumi:"sourceVswitchId"`
}

Provides a snat resource.

## Import

Snat Entry can be imported using the id, e.g.

```sh

$ pulumi import alicloud:vpc/snatEntry:SnatEntry foo stb-1aece3:snat-232ce2

```

func GetSnatEntry

func GetSnatEntry(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *SnatEntryState, opts ...pulumi.ResourceOption) (*SnatEntry, error)

GetSnatEntry gets an existing SnatEntry 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 NewSnatEntry

func NewSnatEntry(ctx *pulumi.Context,
	name string, args *SnatEntryArgs, opts ...pulumi.ResourceOption) (*SnatEntry, error)

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

func (*SnatEntry) ElementType added in v2.25.1

func (*SnatEntry) ElementType() reflect.Type

func (*SnatEntry) ToSnatEntryOutput added in v2.25.1

func (i *SnatEntry) ToSnatEntryOutput() SnatEntryOutput

func (*SnatEntry) ToSnatEntryOutputWithContext added in v2.25.1

func (i *SnatEntry) ToSnatEntryOutputWithContext(ctx context.Context) SnatEntryOutput

func (*SnatEntry) ToSnatEntryPtrOutput added in v2.35.1

func (i *SnatEntry) ToSnatEntryPtrOutput() SnatEntryPtrOutput

func (*SnatEntry) ToSnatEntryPtrOutputWithContext added in v2.35.1

func (i *SnatEntry) ToSnatEntryPtrOutputWithContext(ctx context.Context) SnatEntryPtrOutput

type SnatEntryArgs

type SnatEntryArgs struct {
	// The name of snat entry.
	SnatEntryName pulumi.StringPtrInput
	// The SNAT ip address, the ip must along bandwidth package public ip which `vpc.NatGateway` argument `bandwidthPackages`.
	SnatIp pulumi.StringInput
	// The value can get from `vpc.NatGateway` Attributes "snatTableIds".
	SnatTableId pulumi.StringInput
	// The private network segment of Ecs. This parameter and the `sourceVswitchId` parameter are mutually exclusive and cannot appear at the same time.
	SourceCidr pulumi.StringPtrInput
	// The vswitch ID.
	SourceVswitchId pulumi.StringPtrInput
}

The set of arguments for constructing a SnatEntry resource.

func (SnatEntryArgs) ElementType

func (SnatEntryArgs) ElementType() reflect.Type

type SnatEntryArray added in v2.35.1

type SnatEntryArray []SnatEntryInput

func (SnatEntryArray) ElementType added in v2.35.1

func (SnatEntryArray) ElementType() reflect.Type

func (SnatEntryArray) ToSnatEntryArrayOutput added in v2.35.1

func (i SnatEntryArray) ToSnatEntryArrayOutput() SnatEntryArrayOutput

func (SnatEntryArray) ToSnatEntryArrayOutputWithContext added in v2.35.1

func (i SnatEntryArray) ToSnatEntryArrayOutputWithContext(ctx context.Context) SnatEntryArrayOutput

type SnatEntryArrayInput added in v2.35.1

type SnatEntryArrayInput interface {
	pulumi.Input

	ToSnatEntryArrayOutput() SnatEntryArrayOutput
	ToSnatEntryArrayOutputWithContext(context.Context) SnatEntryArrayOutput
}

SnatEntryArrayInput is an input type that accepts SnatEntryArray and SnatEntryArrayOutput values. You can construct a concrete instance of `SnatEntryArrayInput` via:

SnatEntryArray{ SnatEntryArgs{...} }

type SnatEntryArrayOutput added in v2.35.1

type SnatEntryArrayOutput struct{ *pulumi.OutputState }

func (SnatEntryArrayOutput) ElementType added in v2.35.1

func (SnatEntryArrayOutput) ElementType() reflect.Type

func (SnatEntryArrayOutput) Index added in v2.35.1

func (SnatEntryArrayOutput) ToSnatEntryArrayOutput added in v2.35.1

func (o SnatEntryArrayOutput) ToSnatEntryArrayOutput() SnatEntryArrayOutput

func (SnatEntryArrayOutput) ToSnatEntryArrayOutputWithContext added in v2.35.1

func (o SnatEntryArrayOutput) ToSnatEntryArrayOutputWithContext(ctx context.Context) SnatEntryArrayOutput

type SnatEntryInput added in v2.25.1

type SnatEntryInput interface {
	pulumi.Input

	ToSnatEntryOutput() SnatEntryOutput
	ToSnatEntryOutputWithContext(ctx context.Context) SnatEntryOutput
}

type SnatEntryMap added in v2.35.1

type SnatEntryMap map[string]SnatEntryInput

func (SnatEntryMap) ElementType added in v2.35.1

func (SnatEntryMap) ElementType() reflect.Type

func (SnatEntryMap) ToSnatEntryMapOutput added in v2.35.1

func (i SnatEntryMap) ToSnatEntryMapOutput() SnatEntryMapOutput

func (SnatEntryMap) ToSnatEntryMapOutputWithContext added in v2.35.1

func (i SnatEntryMap) ToSnatEntryMapOutputWithContext(ctx context.Context) SnatEntryMapOutput

type SnatEntryMapInput added in v2.35.1

type SnatEntryMapInput interface {
	pulumi.Input

	ToSnatEntryMapOutput() SnatEntryMapOutput
	ToSnatEntryMapOutputWithContext(context.Context) SnatEntryMapOutput
}

SnatEntryMapInput is an input type that accepts SnatEntryMap and SnatEntryMapOutput values. You can construct a concrete instance of `SnatEntryMapInput` via:

SnatEntryMap{ "key": SnatEntryArgs{...} }

type SnatEntryMapOutput added in v2.35.1

type SnatEntryMapOutput struct{ *pulumi.OutputState }

func (SnatEntryMapOutput) ElementType added in v2.35.1

func (SnatEntryMapOutput) ElementType() reflect.Type

func (SnatEntryMapOutput) MapIndex added in v2.35.1

func (SnatEntryMapOutput) ToSnatEntryMapOutput added in v2.35.1

func (o SnatEntryMapOutput) ToSnatEntryMapOutput() SnatEntryMapOutput

func (SnatEntryMapOutput) ToSnatEntryMapOutputWithContext added in v2.35.1

func (o SnatEntryMapOutput) ToSnatEntryMapOutputWithContext(ctx context.Context) SnatEntryMapOutput

type SnatEntryOutput added in v2.25.1

type SnatEntryOutput struct {
	*pulumi.OutputState
}

func (SnatEntryOutput) ElementType added in v2.25.1

func (SnatEntryOutput) ElementType() reflect.Type

func (SnatEntryOutput) ToSnatEntryOutput added in v2.25.1

func (o SnatEntryOutput) ToSnatEntryOutput() SnatEntryOutput

func (SnatEntryOutput) ToSnatEntryOutputWithContext added in v2.25.1

func (o SnatEntryOutput) ToSnatEntryOutputWithContext(ctx context.Context) SnatEntryOutput

func (SnatEntryOutput) ToSnatEntryPtrOutput added in v2.35.1

func (o SnatEntryOutput) ToSnatEntryPtrOutput() SnatEntryPtrOutput

func (SnatEntryOutput) ToSnatEntryPtrOutputWithContext added in v2.35.1

func (o SnatEntryOutput) ToSnatEntryPtrOutputWithContext(ctx context.Context) SnatEntryPtrOutput

type SnatEntryPtrInput added in v2.35.1

type SnatEntryPtrInput interface {
	pulumi.Input

	ToSnatEntryPtrOutput() SnatEntryPtrOutput
	ToSnatEntryPtrOutputWithContext(ctx context.Context) SnatEntryPtrOutput
}

type SnatEntryPtrOutput added in v2.35.1

type SnatEntryPtrOutput struct {
	*pulumi.OutputState
}

func (SnatEntryPtrOutput) ElementType added in v2.35.1

func (SnatEntryPtrOutput) ElementType() reflect.Type

func (SnatEntryPtrOutput) ToSnatEntryPtrOutput added in v2.35.1

func (o SnatEntryPtrOutput) ToSnatEntryPtrOutput() SnatEntryPtrOutput

func (SnatEntryPtrOutput) ToSnatEntryPtrOutputWithContext added in v2.35.1

func (o SnatEntryPtrOutput) ToSnatEntryPtrOutputWithContext(ctx context.Context) SnatEntryPtrOutput

type SnatEntryState

type SnatEntryState struct {
	// The id of the snat entry on the server.
	SnatEntryId pulumi.StringPtrInput
	// The name of snat entry.
	SnatEntryName pulumi.StringPtrInput
	// The SNAT ip address, the ip must along bandwidth package public ip which `vpc.NatGateway` argument `bandwidthPackages`.
	SnatIp pulumi.StringPtrInput
	// The value can get from `vpc.NatGateway` Attributes "snatTableIds".
	SnatTableId pulumi.StringPtrInput
	// The private network segment of Ecs. This parameter and the `sourceVswitchId` parameter are mutually exclusive and cannot appear at the same time.
	SourceCidr pulumi.StringPtrInput
	// The vswitch ID.
	SourceVswitchId pulumi.StringPtrInput
}

func (SnatEntryState) ElementType

func (SnatEntryState) ElementType() reflect.Type

type Subnet

type Subnet struct {
	pulumi.CustomResourceState

	AvailabilityZone pulumi.StringOutput    `pulumi:"availabilityZone"`
	CidrBlock        pulumi.StringOutput    `pulumi:"cidrBlock"`
	Description      pulumi.StringPtrOutput `pulumi:"description"`
	Name             pulumi.StringOutput    `pulumi:"name"`
	Tags             pulumi.MapOutput       `pulumi:"tags"`
	VpcId            pulumi.StringOutput    `pulumi:"vpcId"`
}

func GetSubnet

func GetSubnet(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *SubnetState, opts ...pulumi.ResourceOption) (*Subnet, error)

GetSubnet gets an existing Subnet 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 NewSubnet

func NewSubnet(ctx *pulumi.Context,
	name string, args *SubnetArgs, opts ...pulumi.ResourceOption) (*Subnet, error)

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

func (*Subnet) ElementType added in v2.25.1

func (*Subnet) ElementType() reflect.Type

func (*Subnet) ToSubnetOutput added in v2.25.1

func (i *Subnet) ToSubnetOutput() SubnetOutput

func (*Subnet) ToSubnetOutputWithContext added in v2.25.1

func (i *Subnet) ToSubnetOutputWithContext(ctx context.Context) SubnetOutput

func (*Subnet) ToSubnetPtrOutput added in v2.35.1

func (i *Subnet) ToSubnetPtrOutput() SubnetPtrOutput

func (*Subnet) ToSubnetPtrOutputWithContext added in v2.35.1

func (i *Subnet) ToSubnetPtrOutputWithContext(ctx context.Context) SubnetPtrOutput

type SubnetArgs

type SubnetArgs struct {
	AvailabilityZone pulumi.StringInput
	CidrBlock        pulumi.StringInput
	Description      pulumi.StringPtrInput
	Name             pulumi.StringPtrInput
	Tags             pulumi.MapInput
	VpcId            pulumi.StringInput
}

The set of arguments for constructing a Subnet resource.

func (SubnetArgs) ElementType

func (SubnetArgs) ElementType() reflect.Type

type SubnetArray added in v2.35.1

type SubnetArray []SubnetInput

func (SubnetArray) ElementType added in v2.35.1

func (SubnetArray) ElementType() reflect.Type

func (SubnetArray) ToSubnetArrayOutput added in v2.35.1

func (i SubnetArray) ToSubnetArrayOutput() SubnetArrayOutput

func (SubnetArray) ToSubnetArrayOutputWithContext added in v2.35.1

func (i SubnetArray) ToSubnetArrayOutputWithContext(ctx context.Context) SubnetArrayOutput

type SubnetArrayInput added in v2.35.1

type SubnetArrayInput interface {
	pulumi.Input

	ToSubnetArrayOutput() SubnetArrayOutput
	ToSubnetArrayOutputWithContext(context.Context) SubnetArrayOutput
}

SubnetArrayInput is an input type that accepts SubnetArray and SubnetArrayOutput values. You can construct a concrete instance of `SubnetArrayInput` via:

SubnetArray{ SubnetArgs{...} }

type SubnetArrayOutput added in v2.35.1

type SubnetArrayOutput struct{ *pulumi.OutputState }

func (SubnetArrayOutput) ElementType added in v2.35.1

func (SubnetArrayOutput) ElementType() reflect.Type

func (SubnetArrayOutput) Index added in v2.35.1

func (SubnetArrayOutput) ToSubnetArrayOutput added in v2.35.1

func (o SubnetArrayOutput) ToSubnetArrayOutput() SubnetArrayOutput

func (SubnetArrayOutput) ToSubnetArrayOutputWithContext added in v2.35.1

func (o SubnetArrayOutput) ToSubnetArrayOutputWithContext(ctx context.Context) SubnetArrayOutput

type SubnetInput added in v2.25.1

type SubnetInput interface {
	pulumi.Input

	ToSubnetOutput() SubnetOutput
	ToSubnetOutputWithContext(ctx context.Context) SubnetOutput
}

type SubnetMap added in v2.35.1

type SubnetMap map[string]SubnetInput

func (SubnetMap) ElementType added in v2.35.1

func (SubnetMap) ElementType() reflect.Type

func (SubnetMap) ToSubnetMapOutput added in v2.35.1

func (i SubnetMap) ToSubnetMapOutput() SubnetMapOutput

func (SubnetMap) ToSubnetMapOutputWithContext added in v2.35.1

func (i SubnetMap) ToSubnetMapOutputWithContext(ctx context.Context) SubnetMapOutput

type SubnetMapInput added in v2.35.1

type SubnetMapInput interface {
	pulumi.Input

	ToSubnetMapOutput() SubnetMapOutput
	ToSubnetMapOutputWithContext(context.Context) SubnetMapOutput
}

SubnetMapInput is an input type that accepts SubnetMap and SubnetMapOutput values. You can construct a concrete instance of `SubnetMapInput` via:

SubnetMap{ "key": SubnetArgs{...} }

type SubnetMapOutput added in v2.35.1

type SubnetMapOutput struct{ *pulumi.OutputState }

func (SubnetMapOutput) ElementType added in v2.35.1

func (SubnetMapOutput) ElementType() reflect.Type

func (SubnetMapOutput) MapIndex added in v2.35.1

func (SubnetMapOutput) ToSubnetMapOutput added in v2.35.1

func (o SubnetMapOutput) ToSubnetMapOutput() SubnetMapOutput

func (SubnetMapOutput) ToSubnetMapOutputWithContext added in v2.35.1

func (o SubnetMapOutput) ToSubnetMapOutputWithContext(ctx context.Context) SubnetMapOutput

type SubnetOutput added in v2.25.1

type SubnetOutput struct {
	*pulumi.OutputState
}

func (SubnetOutput) ElementType added in v2.25.1

func (SubnetOutput) ElementType() reflect.Type

func (SubnetOutput) ToSubnetOutput added in v2.25.1

func (o SubnetOutput) ToSubnetOutput() SubnetOutput

func (SubnetOutput) ToSubnetOutputWithContext added in v2.25.1

func (o SubnetOutput) ToSubnetOutputWithContext(ctx context.Context) SubnetOutput

func (SubnetOutput) ToSubnetPtrOutput added in v2.35.1

func (o SubnetOutput) ToSubnetPtrOutput() SubnetPtrOutput

func (SubnetOutput) ToSubnetPtrOutputWithContext added in v2.35.1

func (o SubnetOutput) ToSubnetPtrOutputWithContext(ctx context.Context) SubnetPtrOutput

type SubnetPtrInput added in v2.35.1

type SubnetPtrInput interface {
	pulumi.Input

	ToSubnetPtrOutput() SubnetPtrOutput
	ToSubnetPtrOutputWithContext(ctx context.Context) SubnetPtrOutput
}

type SubnetPtrOutput added in v2.35.1

type SubnetPtrOutput struct {
	*pulumi.OutputState
}

func (SubnetPtrOutput) ElementType added in v2.35.1

func (SubnetPtrOutput) ElementType() reflect.Type

func (SubnetPtrOutput) ToSubnetPtrOutput added in v2.35.1

func (o SubnetPtrOutput) ToSubnetPtrOutput() SubnetPtrOutput

func (SubnetPtrOutput) ToSubnetPtrOutputWithContext added in v2.35.1

func (o SubnetPtrOutput) ToSubnetPtrOutputWithContext(ctx context.Context) SubnetPtrOutput

type SubnetState

type SubnetState struct {
	AvailabilityZone pulumi.StringPtrInput
	CidrBlock        pulumi.StringPtrInput
	Description      pulumi.StringPtrInput
	Name             pulumi.StringPtrInput
	Tags             pulumi.MapInput
	VpcId            pulumi.StringPtrInput
}

func (SubnetState) ElementType

func (SubnetState) ElementType() reflect.Type

type Switch

type Switch struct {
	pulumi.CustomResourceState

	// The AZ for the switch.
	AvailabilityZone pulumi.StringOutput `pulumi:"availabilityZone"`
	// The CIDR block for the switch.
	CidrBlock pulumi.StringOutput `pulumi:"cidrBlock"`
	// The switch description. Defaults to null.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// The name of the switch. Defaults to null.
	Name pulumi.StringOutput `pulumi:"name"`
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapOutput `pulumi:"tags"`
	// The VPC ID.
	VpcId pulumi.StringOutput `pulumi:"vpcId"`
}

## Import

Vswitch can be imported using the id, e.g.

```sh

$ pulumi import alicloud:vpc/switch:Switch example vsw-abc123456

```

func GetSwitch

func GetSwitch(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *SwitchState, opts ...pulumi.ResourceOption) (*Switch, error)

GetSwitch gets an existing Switch 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 NewSwitch

func NewSwitch(ctx *pulumi.Context,
	name string, args *SwitchArgs, opts ...pulumi.ResourceOption) (*Switch, error)

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

func (*Switch) ElementType added in v2.25.1

func (*Switch) ElementType() reflect.Type

func (*Switch) ToSwitchOutput added in v2.25.1

func (i *Switch) ToSwitchOutput() SwitchOutput

func (*Switch) ToSwitchOutputWithContext added in v2.25.1

func (i *Switch) ToSwitchOutputWithContext(ctx context.Context) SwitchOutput

func (*Switch) ToSwitchPtrOutput added in v2.35.1

func (i *Switch) ToSwitchPtrOutput() SwitchPtrOutput

func (*Switch) ToSwitchPtrOutputWithContext added in v2.35.1

func (i *Switch) ToSwitchPtrOutputWithContext(ctx context.Context) SwitchPtrOutput

type SwitchArgs

type SwitchArgs struct {
	// The AZ for the switch.
	AvailabilityZone pulumi.StringInput
	// The CIDR block for the switch.
	CidrBlock pulumi.StringInput
	// The switch description. Defaults to null.
	Description pulumi.StringPtrInput
	// The name of the switch. Defaults to null.
	Name pulumi.StringPtrInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapInput
	// The VPC ID.
	VpcId pulumi.StringInput
}

The set of arguments for constructing a Switch resource.

func (SwitchArgs) ElementType

func (SwitchArgs) ElementType() reflect.Type

type SwitchArray added in v2.35.1

type SwitchArray []SwitchInput

func (SwitchArray) ElementType added in v2.35.1

func (SwitchArray) ElementType() reflect.Type

func (SwitchArray) ToSwitchArrayOutput added in v2.35.1

func (i SwitchArray) ToSwitchArrayOutput() SwitchArrayOutput

func (SwitchArray) ToSwitchArrayOutputWithContext added in v2.35.1

func (i SwitchArray) ToSwitchArrayOutputWithContext(ctx context.Context) SwitchArrayOutput

type SwitchArrayInput added in v2.35.1

type SwitchArrayInput interface {
	pulumi.Input

	ToSwitchArrayOutput() SwitchArrayOutput
	ToSwitchArrayOutputWithContext(context.Context) SwitchArrayOutput
}

SwitchArrayInput is an input type that accepts SwitchArray and SwitchArrayOutput values. You can construct a concrete instance of `SwitchArrayInput` via:

SwitchArray{ SwitchArgs{...} }

type SwitchArrayOutput added in v2.35.1

type SwitchArrayOutput struct{ *pulumi.OutputState }

func (SwitchArrayOutput) ElementType added in v2.35.1

func (SwitchArrayOutput) ElementType() reflect.Type

func (SwitchArrayOutput) Index added in v2.35.1

func (SwitchArrayOutput) ToSwitchArrayOutput added in v2.35.1

func (o SwitchArrayOutput) ToSwitchArrayOutput() SwitchArrayOutput

func (SwitchArrayOutput) ToSwitchArrayOutputWithContext added in v2.35.1

func (o SwitchArrayOutput) ToSwitchArrayOutputWithContext(ctx context.Context) SwitchArrayOutput

type SwitchInput added in v2.25.1

type SwitchInput interface {
	pulumi.Input

	ToSwitchOutput() SwitchOutput
	ToSwitchOutputWithContext(ctx context.Context) SwitchOutput
}

type SwitchMap added in v2.35.1

type SwitchMap map[string]SwitchInput

func (SwitchMap) ElementType added in v2.35.1

func (SwitchMap) ElementType() reflect.Type

func (SwitchMap) ToSwitchMapOutput added in v2.35.1

func (i SwitchMap) ToSwitchMapOutput() SwitchMapOutput

func (SwitchMap) ToSwitchMapOutputWithContext added in v2.35.1

func (i SwitchMap) ToSwitchMapOutputWithContext(ctx context.Context) SwitchMapOutput

type SwitchMapInput added in v2.35.1

type SwitchMapInput interface {
	pulumi.Input

	ToSwitchMapOutput() SwitchMapOutput
	ToSwitchMapOutputWithContext(context.Context) SwitchMapOutput
}

SwitchMapInput is an input type that accepts SwitchMap and SwitchMapOutput values. You can construct a concrete instance of `SwitchMapInput` via:

SwitchMap{ "key": SwitchArgs{...} }

type SwitchMapOutput added in v2.35.1

type SwitchMapOutput struct{ *pulumi.OutputState }

func (SwitchMapOutput) ElementType added in v2.35.1

func (SwitchMapOutput) ElementType() reflect.Type

func (SwitchMapOutput) MapIndex added in v2.35.1

func (SwitchMapOutput) ToSwitchMapOutput added in v2.35.1

func (o SwitchMapOutput) ToSwitchMapOutput() SwitchMapOutput

func (SwitchMapOutput) ToSwitchMapOutputWithContext added in v2.35.1

func (o SwitchMapOutput) ToSwitchMapOutputWithContext(ctx context.Context) SwitchMapOutput

type SwitchOutput added in v2.25.1

type SwitchOutput struct {
	*pulumi.OutputState
}

func (SwitchOutput) ElementType added in v2.25.1

func (SwitchOutput) ElementType() reflect.Type

func (SwitchOutput) ToSwitchOutput added in v2.25.1

func (o SwitchOutput) ToSwitchOutput() SwitchOutput

func (SwitchOutput) ToSwitchOutputWithContext added in v2.25.1

func (o SwitchOutput) ToSwitchOutputWithContext(ctx context.Context) SwitchOutput

func (SwitchOutput) ToSwitchPtrOutput added in v2.35.1

func (o SwitchOutput) ToSwitchPtrOutput() SwitchPtrOutput

func (SwitchOutput) ToSwitchPtrOutputWithContext added in v2.35.1

func (o SwitchOutput) ToSwitchPtrOutputWithContext(ctx context.Context) SwitchPtrOutput

type SwitchPtrInput added in v2.35.1

type SwitchPtrInput interface {
	pulumi.Input

	ToSwitchPtrOutput() SwitchPtrOutput
	ToSwitchPtrOutputWithContext(ctx context.Context) SwitchPtrOutput
}

type SwitchPtrOutput added in v2.35.1

type SwitchPtrOutput struct {
	*pulumi.OutputState
}

func (SwitchPtrOutput) ElementType added in v2.35.1

func (SwitchPtrOutput) ElementType() reflect.Type

func (SwitchPtrOutput) ToSwitchPtrOutput added in v2.35.1

func (o SwitchPtrOutput) ToSwitchPtrOutput() SwitchPtrOutput

func (SwitchPtrOutput) ToSwitchPtrOutputWithContext added in v2.35.1

func (o SwitchPtrOutput) ToSwitchPtrOutputWithContext(ctx context.Context) SwitchPtrOutput

type SwitchState

type SwitchState struct {
	// The AZ for the switch.
	AvailabilityZone pulumi.StringPtrInput
	// The CIDR block for the switch.
	CidrBlock pulumi.StringPtrInput
	// The switch description. Defaults to null.
	Description pulumi.StringPtrInput
	// The name of the switch. Defaults to null.
	Name pulumi.StringPtrInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapInput
	// The VPC ID.
	VpcId pulumi.StringPtrInput
}

func (SwitchState) ElementType

func (SwitchState) ElementType() reflect.Type

Jump to

Keyboard shortcuts

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