iec

package
v0.0.8 Latest Latest
Warning

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

Go to latest
Published: Jul 28, 2023 License: Apache-2.0 Imports: 11 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func PkgVersion added in v0.0.2

func PkgVersion() (semver.Version, error)

PkgVersion uses reflection to determine the version of the current package. If a version cannot be determined, v1 will be assumed. The second return value is always nil.

Types

type Eip

type Eip struct {
	pulumi.CustomResourceState

	// The id of bandwidth.
	BandwidthId pulumi.StringOutput `pulumi:"bandwidthId"`
	// The name of bandwidth.
	BandwidthName pulumi.StringOutput `pulumi:"bandwidthName"`
	// Whether the bandwidth is shared or exclusive.
	BandwidthShareType pulumi.StringOutput `pulumi:"bandwidthShareType"`
	// The size of bandwidth.
	BandwidthSize pulumi.IntOutput `pulumi:"bandwidthSize"`
	// The version of elastic IP address.
	IpVersion pulumi.IntOutput `pulumi:"ipVersion"`
	// Specifies the line ID of IEC service site.
	// Changing this parameter creates a new resource.
	LineId pulumi.StringOutput `pulumi:"lineId"`
	// Specifies the port ID which this eip will associate with.
	PortId pulumi.StringOutput `pulumi:"portId"`
	// The address of private IP.
	PrivateIp pulumi.StringOutput `pulumi:"privateIp"`
	// The address of elastic IP.
	PublicIp pulumi.StringOutput `pulumi:"publicIp"`
	// The region in which to create the resource. If omitted, the
	// provider-level region will be used. Changing this creates a new resource.
	Region pulumi.StringOutput `pulumi:"region"`
	// Specifies the ID of IEC service site. Changing this parameter creates a new
	// resource.
	SiteId pulumi.StringOutput `pulumi:"siteId"`
	// The located information of the IEC site. It contains area, province and city.
	SiteInfo pulumi.StringOutput `pulumi:"siteInfo"`
	// The status of elastic IP.
	Status pulumi.StringOutput `pulumi:"status"`
}

Manages a eip resource within HuaweiCloud IEC.

## Example Usage

```go package main

import (

"github.com/huaweicloud/pulumi-huaweicloud/sdk/go/huaweicloud/Iec"
"github.com/pulumi/pulumi-huaweicloud/sdk/go/huaweicloud/Iec"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		iecSites, err := Iec.GetSites(ctx, nil, nil)
		if err != nil {
			return err
		}
		_, err = Iec.NewEip(ctx, "eipTest", &Iec.EipArgs{
			SiteId: pulumi.String(iecSites.Sites[0].Id),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

IEC EIPs can be imported using the `id`, e.g.

```sh

$ pulumi import huaweicloud:Iec/eip:Eip eip_test b5ad19d1-57d1-48fd-aab7-1378f9bee169

```

func GetEip

func GetEip(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *EipState, opts ...pulumi.ResourceOption) (*Eip, error)

GetEip gets an existing Eip 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 NewEip

func NewEip(ctx *pulumi.Context,
	name string, args *EipArgs, opts ...pulumi.ResourceOption) (*Eip, error)

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

func (*Eip) ElementType

func (*Eip) ElementType() reflect.Type

func (*Eip) ToEipOutput

func (i *Eip) ToEipOutput() EipOutput

func (*Eip) ToEipOutputWithContext

func (i *Eip) ToEipOutputWithContext(ctx context.Context) EipOutput

type EipArgs

type EipArgs struct {
	// The version of elastic IP address.
	IpVersion pulumi.IntPtrInput
	// Specifies the line ID of IEC service site.
	// Changing this parameter creates a new resource.
	LineId pulumi.StringPtrInput
	// Specifies the port ID which this eip will associate with.
	PortId pulumi.StringPtrInput
	// The region in which to create the resource. If omitted, the
	// provider-level region will be used. Changing this creates a new resource.
	Region pulumi.StringPtrInput
	// Specifies the ID of IEC service site. Changing this parameter creates a new
	// resource.
	SiteId pulumi.StringInput
}

The set of arguments for constructing a Eip resource.

func (EipArgs) ElementType

func (EipArgs) ElementType() reflect.Type

type EipArray

type EipArray []EipInput

func (EipArray) ElementType

func (EipArray) ElementType() reflect.Type

func (EipArray) ToEipArrayOutput

func (i EipArray) ToEipArrayOutput() EipArrayOutput

func (EipArray) ToEipArrayOutputWithContext

func (i EipArray) ToEipArrayOutputWithContext(ctx context.Context) EipArrayOutput

type EipArrayInput

type EipArrayInput interface {
	pulumi.Input

	ToEipArrayOutput() EipArrayOutput
	ToEipArrayOutputWithContext(context.Context) EipArrayOutput
}

EipArrayInput is an input type that accepts EipArray and EipArrayOutput values. You can construct a concrete instance of `EipArrayInput` via:

EipArray{ EipArgs{...} }

type EipArrayOutput

type EipArrayOutput struct{ *pulumi.OutputState }

func (EipArrayOutput) ElementType

func (EipArrayOutput) ElementType() reflect.Type

func (EipArrayOutput) Index

func (EipArrayOutput) ToEipArrayOutput

func (o EipArrayOutput) ToEipArrayOutput() EipArrayOutput

func (EipArrayOutput) ToEipArrayOutputWithContext

func (o EipArrayOutput) ToEipArrayOutputWithContext(ctx context.Context) EipArrayOutput

type EipInput

type EipInput interface {
	pulumi.Input

	ToEipOutput() EipOutput
	ToEipOutputWithContext(ctx context.Context) EipOutput
}

type EipMap

type EipMap map[string]EipInput

func (EipMap) ElementType

func (EipMap) ElementType() reflect.Type

func (EipMap) ToEipMapOutput

func (i EipMap) ToEipMapOutput() EipMapOutput

func (EipMap) ToEipMapOutputWithContext

func (i EipMap) ToEipMapOutputWithContext(ctx context.Context) EipMapOutput

type EipMapInput

type EipMapInput interface {
	pulumi.Input

	ToEipMapOutput() EipMapOutput
	ToEipMapOutputWithContext(context.Context) EipMapOutput
}

EipMapInput is an input type that accepts EipMap and EipMapOutput values. You can construct a concrete instance of `EipMapInput` via:

EipMap{ "key": EipArgs{...} }

type EipMapOutput

type EipMapOutput struct{ *pulumi.OutputState }

func (EipMapOutput) ElementType

func (EipMapOutput) ElementType() reflect.Type

func (EipMapOutput) MapIndex

func (o EipMapOutput) MapIndex(k pulumi.StringInput) EipOutput

func (EipMapOutput) ToEipMapOutput

func (o EipMapOutput) ToEipMapOutput() EipMapOutput

func (EipMapOutput) ToEipMapOutputWithContext

func (o EipMapOutput) ToEipMapOutputWithContext(ctx context.Context) EipMapOutput

type EipOutput

type EipOutput struct{ *pulumi.OutputState }

func (EipOutput) BandwidthId

func (o EipOutput) BandwidthId() pulumi.StringOutput

The id of bandwidth.

func (EipOutput) BandwidthName

func (o EipOutput) BandwidthName() pulumi.StringOutput

The name of bandwidth.

func (EipOutput) BandwidthShareType

func (o EipOutput) BandwidthShareType() pulumi.StringOutput

Whether the bandwidth is shared or exclusive.

func (EipOutput) BandwidthSize

func (o EipOutput) BandwidthSize() pulumi.IntOutput

The size of bandwidth.

func (EipOutput) ElementType

func (EipOutput) ElementType() reflect.Type

func (EipOutput) IpVersion

func (o EipOutput) IpVersion() pulumi.IntOutput

The version of elastic IP address.

func (EipOutput) LineId

func (o EipOutput) LineId() pulumi.StringOutput

Specifies the line ID of IEC service site. Changing this parameter creates a new resource.

func (EipOutput) PortId

func (o EipOutput) PortId() pulumi.StringOutput

Specifies the port ID which this eip will associate with.

func (EipOutput) PrivateIp

func (o EipOutput) PrivateIp() pulumi.StringOutput

The address of private IP.

func (EipOutput) PublicIp

func (o EipOutput) PublicIp() pulumi.StringOutput

The address of elastic IP.

func (EipOutput) Region

func (o EipOutput) Region() pulumi.StringOutput

The region in which to create the resource. If omitted, the provider-level region will be used. Changing this creates a new resource.

func (EipOutput) SiteId

func (o EipOutput) SiteId() pulumi.StringOutput

Specifies the ID of IEC service site. Changing this parameter creates a new resource.

func (EipOutput) SiteInfo

func (o EipOutput) SiteInfo() pulumi.StringOutput

The located information of the IEC site. It contains area, province and city.

func (EipOutput) Status

func (o EipOutput) Status() pulumi.StringOutput

The status of elastic IP.

func (EipOutput) ToEipOutput

func (o EipOutput) ToEipOutput() EipOutput

func (EipOutput) ToEipOutputWithContext

func (o EipOutput) ToEipOutputWithContext(ctx context.Context) EipOutput

type EipState

type EipState struct {
	// The id of bandwidth.
	BandwidthId pulumi.StringPtrInput
	// The name of bandwidth.
	BandwidthName pulumi.StringPtrInput
	// Whether the bandwidth is shared or exclusive.
	BandwidthShareType pulumi.StringPtrInput
	// The size of bandwidth.
	BandwidthSize pulumi.IntPtrInput
	// The version of elastic IP address.
	IpVersion pulumi.IntPtrInput
	// Specifies the line ID of IEC service site.
	// Changing this parameter creates a new resource.
	LineId pulumi.StringPtrInput
	// Specifies the port ID which this eip will associate with.
	PortId pulumi.StringPtrInput
	// The address of private IP.
	PrivateIp pulumi.StringPtrInput
	// The address of elastic IP.
	PublicIp pulumi.StringPtrInput
	// The region in which to create the resource. If omitted, the
	// provider-level region will be used. Changing this creates a new resource.
	Region pulumi.StringPtrInput
	// Specifies the ID of IEC service site. Changing this parameter creates a new
	// resource.
	SiteId pulumi.StringPtrInput
	// The located information of the IEC site. It contains area, province and city.
	SiteInfo pulumi.StringPtrInput
	// The status of elastic IP.
	Status pulumi.StringPtrInput
}

func (EipState) ElementType

func (EipState) ElementType() reflect.Type

type GetBandwidthsArgs

type GetBandwidthsArgs struct {
	// Specifies the ID of the IEC site.
	SiteId string `pulumi:"siteId"`
}

A collection of arguments for invoking getBandwidths.

type GetBandwidthsBandwidth

type GetBandwidthsBandwidth struct {
	// The charging mode of the bandwidth.
	ChargeMode string `pulumi:"chargeMode"`
	// The ID of the bandwidth.
	Id string `pulumi:"id"`
	// The line name of the bandwidth.
	Line string `pulumi:"line"`
	// The name of the bandwidth.
	Name string `pulumi:"name"`
	// Whether the bandwidth is shared or exclusive.
	ShareType string `pulumi:"shareType"`
	// The size of the bandwidth.
	Size int `pulumi:"size"`
	// The status of the bandwidth.
	Status string `pulumi:"status"`
}

type GetBandwidthsBandwidthArgs

type GetBandwidthsBandwidthArgs struct {
	// The charging mode of the bandwidth.
	ChargeMode pulumi.StringInput `pulumi:"chargeMode"`
	// The ID of the bandwidth.
	Id pulumi.StringInput `pulumi:"id"`
	// The line name of the bandwidth.
	Line pulumi.StringInput `pulumi:"line"`
	// The name of the bandwidth.
	Name pulumi.StringInput `pulumi:"name"`
	// Whether the bandwidth is shared or exclusive.
	ShareType pulumi.StringInput `pulumi:"shareType"`
	// The size of the bandwidth.
	Size pulumi.IntInput `pulumi:"size"`
	// The status of the bandwidth.
	Status pulumi.StringInput `pulumi:"status"`
}

func (GetBandwidthsBandwidthArgs) ElementType

func (GetBandwidthsBandwidthArgs) ElementType() reflect.Type

func (GetBandwidthsBandwidthArgs) ToGetBandwidthsBandwidthOutput

func (i GetBandwidthsBandwidthArgs) ToGetBandwidthsBandwidthOutput() GetBandwidthsBandwidthOutput

func (GetBandwidthsBandwidthArgs) ToGetBandwidthsBandwidthOutputWithContext

func (i GetBandwidthsBandwidthArgs) ToGetBandwidthsBandwidthOutputWithContext(ctx context.Context) GetBandwidthsBandwidthOutput

type GetBandwidthsBandwidthArray

type GetBandwidthsBandwidthArray []GetBandwidthsBandwidthInput

func (GetBandwidthsBandwidthArray) ElementType

func (GetBandwidthsBandwidthArray) ToGetBandwidthsBandwidthArrayOutput

func (i GetBandwidthsBandwidthArray) ToGetBandwidthsBandwidthArrayOutput() GetBandwidthsBandwidthArrayOutput

func (GetBandwidthsBandwidthArray) ToGetBandwidthsBandwidthArrayOutputWithContext

func (i GetBandwidthsBandwidthArray) ToGetBandwidthsBandwidthArrayOutputWithContext(ctx context.Context) GetBandwidthsBandwidthArrayOutput

type GetBandwidthsBandwidthArrayInput

type GetBandwidthsBandwidthArrayInput interface {
	pulumi.Input

	ToGetBandwidthsBandwidthArrayOutput() GetBandwidthsBandwidthArrayOutput
	ToGetBandwidthsBandwidthArrayOutputWithContext(context.Context) GetBandwidthsBandwidthArrayOutput
}

GetBandwidthsBandwidthArrayInput is an input type that accepts GetBandwidthsBandwidthArray and GetBandwidthsBandwidthArrayOutput values. You can construct a concrete instance of `GetBandwidthsBandwidthArrayInput` via:

GetBandwidthsBandwidthArray{ GetBandwidthsBandwidthArgs{...} }

type GetBandwidthsBandwidthArrayOutput

type GetBandwidthsBandwidthArrayOutput struct{ *pulumi.OutputState }

func (GetBandwidthsBandwidthArrayOutput) ElementType

func (GetBandwidthsBandwidthArrayOutput) Index

func (GetBandwidthsBandwidthArrayOutput) ToGetBandwidthsBandwidthArrayOutput

func (o GetBandwidthsBandwidthArrayOutput) ToGetBandwidthsBandwidthArrayOutput() GetBandwidthsBandwidthArrayOutput

func (GetBandwidthsBandwidthArrayOutput) ToGetBandwidthsBandwidthArrayOutputWithContext

func (o GetBandwidthsBandwidthArrayOutput) ToGetBandwidthsBandwidthArrayOutputWithContext(ctx context.Context) GetBandwidthsBandwidthArrayOutput

type GetBandwidthsBandwidthInput

type GetBandwidthsBandwidthInput interface {
	pulumi.Input

	ToGetBandwidthsBandwidthOutput() GetBandwidthsBandwidthOutput
	ToGetBandwidthsBandwidthOutputWithContext(context.Context) GetBandwidthsBandwidthOutput
}

GetBandwidthsBandwidthInput is an input type that accepts GetBandwidthsBandwidthArgs and GetBandwidthsBandwidthOutput values. You can construct a concrete instance of `GetBandwidthsBandwidthInput` via:

GetBandwidthsBandwidthArgs{...}

type GetBandwidthsBandwidthOutput

type GetBandwidthsBandwidthOutput struct{ *pulumi.OutputState }

func (GetBandwidthsBandwidthOutput) ChargeMode

The charging mode of the bandwidth.

func (GetBandwidthsBandwidthOutput) ElementType

func (GetBandwidthsBandwidthOutput) Id

The ID of the bandwidth.

func (GetBandwidthsBandwidthOutput) Line

The line name of the bandwidth.

func (GetBandwidthsBandwidthOutput) Name

The name of the bandwidth.

func (GetBandwidthsBandwidthOutput) ShareType

Whether the bandwidth is shared or exclusive.

func (GetBandwidthsBandwidthOutput) Size

The size of the bandwidth.

func (GetBandwidthsBandwidthOutput) Status

The status of the bandwidth.

func (GetBandwidthsBandwidthOutput) ToGetBandwidthsBandwidthOutput

func (o GetBandwidthsBandwidthOutput) ToGetBandwidthsBandwidthOutput() GetBandwidthsBandwidthOutput

func (GetBandwidthsBandwidthOutput) ToGetBandwidthsBandwidthOutputWithContext

func (o GetBandwidthsBandwidthOutput) ToGetBandwidthsBandwidthOutputWithContext(ctx context.Context) GetBandwidthsBandwidthOutput

type GetBandwidthsOutputArgs

type GetBandwidthsOutputArgs struct {
	// Specifies the ID of the IEC site.
	SiteId pulumi.StringInput `pulumi:"siteId"`
}

A collection of arguments for invoking getBandwidths.

func (GetBandwidthsOutputArgs) ElementType

func (GetBandwidthsOutputArgs) ElementType() reflect.Type

type GetBandwidthsResult

type GetBandwidthsResult struct {
	// A list of all the bandwidths found. The object is documented below.
	Bandwidths []GetBandwidthsBandwidth `pulumi:"bandwidths"`
	// The provider-assigned unique ID for this managed resource.
	Id     string `pulumi:"id"`
	SiteId string `pulumi:"siteId"`
	// The located information of the iec site. It contains area, province and city.
	SiteInfo string `pulumi:"siteInfo"`
}

A collection of values returned by getBandwidths.

func GetBandwidths

func GetBandwidths(ctx *pulumi.Context, args *GetBandwidthsArgs, opts ...pulumi.InvokeOption) (*GetBandwidthsResult, error)

Use this data source to get a list of bandwidths belong to a specific IEC site.

## Example Usage

```go package main

import (

"github.com/huaweicloud/pulumi-huaweicloud/sdk/go/huaweicloud/Iec"
"github.com/pulumi/pulumi-huaweicloud/sdk/go/huaweicloud/Iec"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		sitesTest, err := Iec.GetSites(ctx, nil, nil)
		if err != nil {
			return err
		}
		_, err = Iec.GetBandwidths(ctx, &iec.GetBandwidthsArgs{
			SiteId: sitesTest.Sites[0].Id,
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetBandwidthsResultOutput

type GetBandwidthsResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getBandwidths.

func (GetBandwidthsResultOutput) Bandwidths

A list of all the bandwidths found. The object is documented below.

func (GetBandwidthsResultOutput) ElementType

func (GetBandwidthsResultOutput) ElementType() reflect.Type

func (GetBandwidthsResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetBandwidthsResultOutput) SiteId

func (GetBandwidthsResultOutput) SiteInfo

The located information of the iec site. It contains area, province and city.

func (GetBandwidthsResultOutput) ToGetBandwidthsResultOutput

func (o GetBandwidthsResultOutput) ToGetBandwidthsResultOutput() GetBandwidthsResultOutput

func (GetBandwidthsResultOutput) ToGetBandwidthsResultOutputWithContext

func (o GetBandwidthsResultOutput) ToGetBandwidthsResultOutputWithContext(ctx context.Context) GetBandwidthsResultOutput

type GetEipsArgs

type GetEipsArgs struct {
	// Specifies the ID of the port.
	PortId *string `pulumi:"portId"`
	// Specifies the ID of the IEC site.
	SiteId string `pulumi:"siteId"`
}

A collection of arguments for invoking getEips.

type GetEipsEip

type GetEipsEip struct {
	// The ID of bandwidth.
	BandwidthId string `pulumi:"bandwidthId"`
	// The name of bandwidth.
	BandwidthName string `pulumi:"bandwidthName"`
	// Whether the bandwidth is shared or exclusive.
	BandwidthShareType string `pulumi:"bandwidthShareType"`
	// The size of bandwidth.
	BandwidthSize int `pulumi:"bandwidthSize"`
	// The ID of elastic IP.
	Id string `pulumi:"id"`
	// The version of elastic IP address.
	IpVersion int `pulumi:"ipVersion"`
	// Specifies the ID of the port.
	PortId string `pulumi:"portId"`
	// The address of private IP.
	PrivateIp string `pulumi:"privateIp"`
	// The address of elastic IP.
	PublicIp string `pulumi:"publicIp"`
	// The status elastic IP.
	Status string `pulumi:"status"`
}

type GetEipsEipArgs

type GetEipsEipArgs struct {
	// The ID of bandwidth.
	BandwidthId pulumi.StringInput `pulumi:"bandwidthId"`
	// The name of bandwidth.
	BandwidthName pulumi.StringInput `pulumi:"bandwidthName"`
	// Whether the bandwidth is shared or exclusive.
	BandwidthShareType pulumi.StringInput `pulumi:"bandwidthShareType"`
	// The size of bandwidth.
	BandwidthSize pulumi.IntInput `pulumi:"bandwidthSize"`
	// The ID of elastic IP.
	Id pulumi.StringInput `pulumi:"id"`
	// The version of elastic IP address.
	IpVersion pulumi.IntInput `pulumi:"ipVersion"`
	// Specifies the ID of the port.
	PortId pulumi.StringInput `pulumi:"portId"`
	// The address of private IP.
	PrivateIp pulumi.StringInput `pulumi:"privateIp"`
	// The address of elastic IP.
	PublicIp pulumi.StringInput `pulumi:"publicIp"`
	// The status elastic IP.
	Status pulumi.StringInput `pulumi:"status"`
}

func (GetEipsEipArgs) ElementType

func (GetEipsEipArgs) ElementType() reflect.Type

func (GetEipsEipArgs) ToGetEipsEipOutput

func (i GetEipsEipArgs) ToGetEipsEipOutput() GetEipsEipOutput

func (GetEipsEipArgs) ToGetEipsEipOutputWithContext

func (i GetEipsEipArgs) ToGetEipsEipOutputWithContext(ctx context.Context) GetEipsEipOutput

type GetEipsEipArray

type GetEipsEipArray []GetEipsEipInput

func (GetEipsEipArray) ElementType

func (GetEipsEipArray) ElementType() reflect.Type

func (GetEipsEipArray) ToGetEipsEipArrayOutput

func (i GetEipsEipArray) ToGetEipsEipArrayOutput() GetEipsEipArrayOutput

func (GetEipsEipArray) ToGetEipsEipArrayOutputWithContext

func (i GetEipsEipArray) ToGetEipsEipArrayOutputWithContext(ctx context.Context) GetEipsEipArrayOutput

type GetEipsEipArrayInput

type GetEipsEipArrayInput interface {
	pulumi.Input

	ToGetEipsEipArrayOutput() GetEipsEipArrayOutput
	ToGetEipsEipArrayOutputWithContext(context.Context) GetEipsEipArrayOutput
}

GetEipsEipArrayInput is an input type that accepts GetEipsEipArray and GetEipsEipArrayOutput values. You can construct a concrete instance of `GetEipsEipArrayInput` via:

GetEipsEipArray{ GetEipsEipArgs{...} }

type GetEipsEipArrayOutput

type GetEipsEipArrayOutput struct{ *pulumi.OutputState }

func (GetEipsEipArrayOutput) ElementType

func (GetEipsEipArrayOutput) ElementType() reflect.Type

func (GetEipsEipArrayOutput) Index

func (GetEipsEipArrayOutput) ToGetEipsEipArrayOutput

func (o GetEipsEipArrayOutput) ToGetEipsEipArrayOutput() GetEipsEipArrayOutput

func (GetEipsEipArrayOutput) ToGetEipsEipArrayOutputWithContext

func (o GetEipsEipArrayOutput) ToGetEipsEipArrayOutputWithContext(ctx context.Context) GetEipsEipArrayOutput

type GetEipsEipInput

type GetEipsEipInput interface {
	pulumi.Input

	ToGetEipsEipOutput() GetEipsEipOutput
	ToGetEipsEipOutputWithContext(context.Context) GetEipsEipOutput
}

GetEipsEipInput is an input type that accepts GetEipsEipArgs and GetEipsEipOutput values. You can construct a concrete instance of `GetEipsEipInput` via:

GetEipsEipArgs{...}

type GetEipsEipOutput

type GetEipsEipOutput struct{ *pulumi.OutputState }

func (GetEipsEipOutput) BandwidthId

func (o GetEipsEipOutput) BandwidthId() pulumi.StringOutput

The ID of bandwidth.

func (GetEipsEipOutput) BandwidthName

func (o GetEipsEipOutput) BandwidthName() pulumi.StringOutput

The name of bandwidth.

func (GetEipsEipOutput) BandwidthShareType

func (o GetEipsEipOutput) BandwidthShareType() pulumi.StringOutput

Whether the bandwidth is shared or exclusive.

func (GetEipsEipOutput) BandwidthSize

func (o GetEipsEipOutput) BandwidthSize() pulumi.IntOutput

The size of bandwidth.

func (GetEipsEipOutput) ElementType

func (GetEipsEipOutput) ElementType() reflect.Type

func (GetEipsEipOutput) Id

The ID of elastic IP.

func (GetEipsEipOutput) IpVersion

func (o GetEipsEipOutput) IpVersion() pulumi.IntOutput

The version of elastic IP address.

func (GetEipsEipOutput) PortId

Specifies the ID of the port.

func (GetEipsEipOutput) PrivateIp

func (o GetEipsEipOutput) PrivateIp() pulumi.StringOutput

The address of private IP.

func (GetEipsEipOutput) PublicIp

func (o GetEipsEipOutput) PublicIp() pulumi.StringOutput

The address of elastic IP.

func (GetEipsEipOutput) Status

The status elastic IP.

func (GetEipsEipOutput) ToGetEipsEipOutput

func (o GetEipsEipOutput) ToGetEipsEipOutput() GetEipsEipOutput

func (GetEipsEipOutput) ToGetEipsEipOutputWithContext

func (o GetEipsEipOutput) ToGetEipsEipOutputWithContext(ctx context.Context) GetEipsEipOutput

type GetEipsOutputArgs

type GetEipsOutputArgs struct {
	// Specifies the ID of the port.
	PortId pulumi.StringPtrInput `pulumi:"portId"`
	// Specifies the ID of the IEC site.
	SiteId pulumi.StringInput `pulumi:"siteId"`
}

A collection of arguments for invoking getEips.

func (GetEipsOutputArgs) ElementType

func (GetEipsOutputArgs) ElementType() reflect.Type

type GetEipsResult

type GetEipsResult struct {
	// A list of all the EIPs found. The object is documented below.
	Eips []GetEipsEip `pulumi:"eips"`
	// The provider-assigned unique ID for this managed resource.
	Id     string  `pulumi:"id"`
	PortId *string `pulumi:"portId"`
	SiteId string  `pulumi:"siteId"`
	// The located information of the iec site. It contains area, province and city.
	SiteInfo string `pulumi:"siteInfo"`
}

A collection of values returned by getEips.

func GetEips

func GetEips(ctx *pulumi.Context, args *GetEipsArgs, opts ...pulumi.InvokeOption) (*GetEipsResult, error)

Use this data source to get a list of EIPs belong to a specific IEC site.

## Example Usage

```go package main

import (

"github.com/huaweicloud/pulumi-huaweicloud/sdk/go/huaweicloud/Iec"
"github.com/pulumi/pulumi-huaweicloud/sdk/go/huaweicloud/Iec"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		sitesTest, err := Iec.GetSites(ctx, nil, nil)
		if err != nil {
			return err
		}
		_, err = Iec.GetEips(ctx, &iec.GetEipsArgs{
			SiteId: sitesTest.Sites[0].Id,
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetEipsResultOutput

type GetEipsResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getEips.

func (GetEipsResultOutput) Eips

A list of all the EIPs found. The object is documented below.

func (GetEipsResultOutput) ElementType

func (GetEipsResultOutput) ElementType() reflect.Type

func (GetEipsResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetEipsResultOutput) PortId

func (GetEipsResultOutput) SiteId

func (GetEipsResultOutput) SiteInfo

The located information of the iec site. It contains area, province and city.

func (GetEipsResultOutput) ToGetEipsResultOutput

func (o GetEipsResultOutput) ToGetEipsResultOutput() GetEipsResultOutput

func (GetEipsResultOutput) ToGetEipsResultOutputWithContext

func (o GetEipsResultOutput) ToGetEipsResultOutputWithContext(ctx context.Context) GetEipsResultOutput

type GetFlavorsArgs

type GetFlavorsArgs struct {
	// Specifies the province of the iec instance located.
	Area *string `pulumi:"area"`
	// Specifies the province of the iec instance located.
	City *string `pulumi:"city"`
	// Specifies the flavor name, which can be queried with a regular expression.
	Name *string `pulumi:"name"`
	// Specifies the operator supported of the iec instance.
	Operator *string `pulumi:"operator"`
	// Specifies the province of the iec instance located.
	Province *string `pulumi:"province"`
	// The region in which to obtain the flavors. If omitted, the provider-level region will be
	// used.
	Region *string `pulumi:"region"`
	// Specifies the list of edge service site.
	SiteIds *string `pulumi:"siteIds"`
}

A collection of arguments for invoking getFlavors.

type GetFlavorsFlavor

type GetFlavorsFlavor struct {
	// The id of the iec flavor.
	Id string `pulumi:"id"`
	// The memory of the iec flavor.
	Memory int `pulumi:"memory"`
	// Specifies the flavor name, which can be queried with a regular expression.
	Name string `pulumi:"name"`
	// The vcpus of the iec flavor.
	Vcpus int `pulumi:"vcpus"`
}

type GetFlavorsFlavorArgs

type GetFlavorsFlavorArgs struct {
	// The id of the iec flavor.
	Id pulumi.StringInput `pulumi:"id"`
	// The memory of the iec flavor.
	Memory pulumi.IntInput `pulumi:"memory"`
	// Specifies the flavor name, which can be queried with a regular expression.
	Name pulumi.StringInput `pulumi:"name"`
	// The vcpus of the iec flavor.
	Vcpus pulumi.IntInput `pulumi:"vcpus"`
}

func (GetFlavorsFlavorArgs) ElementType

func (GetFlavorsFlavorArgs) ElementType() reflect.Type

func (GetFlavorsFlavorArgs) ToGetFlavorsFlavorOutput

func (i GetFlavorsFlavorArgs) ToGetFlavorsFlavorOutput() GetFlavorsFlavorOutput

func (GetFlavorsFlavorArgs) ToGetFlavorsFlavorOutputWithContext

func (i GetFlavorsFlavorArgs) ToGetFlavorsFlavorOutputWithContext(ctx context.Context) GetFlavorsFlavorOutput

type GetFlavorsFlavorArray

type GetFlavorsFlavorArray []GetFlavorsFlavorInput

func (GetFlavorsFlavorArray) ElementType

func (GetFlavorsFlavorArray) ElementType() reflect.Type

func (GetFlavorsFlavorArray) ToGetFlavorsFlavorArrayOutput

func (i GetFlavorsFlavorArray) ToGetFlavorsFlavorArrayOutput() GetFlavorsFlavorArrayOutput

func (GetFlavorsFlavorArray) ToGetFlavorsFlavorArrayOutputWithContext

func (i GetFlavorsFlavorArray) ToGetFlavorsFlavorArrayOutputWithContext(ctx context.Context) GetFlavorsFlavorArrayOutput

type GetFlavorsFlavorArrayInput

type GetFlavorsFlavorArrayInput interface {
	pulumi.Input

	ToGetFlavorsFlavorArrayOutput() GetFlavorsFlavorArrayOutput
	ToGetFlavorsFlavorArrayOutputWithContext(context.Context) GetFlavorsFlavorArrayOutput
}

GetFlavorsFlavorArrayInput is an input type that accepts GetFlavorsFlavorArray and GetFlavorsFlavorArrayOutput values. You can construct a concrete instance of `GetFlavorsFlavorArrayInput` via:

GetFlavorsFlavorArray{ GetFlavorsFlavorArgs{...} }

type GetFlavorsFlavorArrayOutput

type GetFlavorsFlavorArrayOutput struct{ *pulumi.OutputState }

func (GetFlavorsFlavorArrayOutput) ElementType

func (GetFlavorsFlavorArrayOutput) Index

func (GetFlavorsFlavorArrayOutput) ToGetFlavorsFlavorArrayOutput

func (o GetFlavorsFlavorArrayOutput) ToGetFlavorsFlavorArrayOutput() GetFlavorsFlavorArrayOutput

func (GetFlavorsFlavorArrayOutput) ToGetFlavorsFlavorArrayOutputWithContext

func (o GetFlavorsFlavorArrayOutput) ToGetFlavorsFlavorArrayOutputWithContext(ctx context.Context) GetFlavorsFlavorArrayOutput

type GetFlavorsFlavorInput

type GetFlavorsFlavorInput interface {
	pulumi.Input

	ToGetFlavorsFlavorOutput() GetFlavorsFlavorOutput
	ToGetFlavorsFlavorOutputWithContext(context.Context) GetFlavorsFlavorOutput
}

GetFlavorsFlavorInput is an input type that accepts GetFlavorsFlavorArgs and GetFlavorsFlavorOutput values. You can construct a concrete instance of `GetFlavorsFlavorInput` via:

GetFlavorsFlavorArgs{...}

type GetFlavorsFlavorOutput

type GetFlavorsFlavorOutput struct{ *pulumi.OutputState }

func (GetFlavorsFlavorOutput) ElementType

func (GetFlavorsFlavorOutput) ElementType() reflect.Type

func (GetFlavorsFlavorOutput) Id

The id of the iec flavor.

func (GetFlavorsFlavorOutput) Memory

The memory of the iec flavor.

func (GetFlavorsFlavorOutput) Name

Specifies the flavor name, which can be queried with a regular expression.

func (GetFlavorsFlavorOutput) ToGetFlavorsFlavorOutput

func (o GetFlavorsFlavorOutput) ToGetFlavorsFlavorOutput() GetFlavorsFlavorOutput

func (GetFlavorsFlavorOutput) ToGetFlavorsFlavorOutputWithContext

func (o GetFlavorsFlavorOutput) ToGetFlavorsFlavorOutputWithContext(ctx context.Context) GetFlavorsFlavorOutput

func (GetFlavorsFlavorOutput) Vcpus

The vcpus of the iec flavor.

type GetFlavorsOutputArgs

type GetFlavorsOutputArgs struct {
	// Specifies the province of the iec instance located.
	Area pulumi.StringPtrInput `pulumi:"area"`
	// Specifies the province of the iec instance located.
	City pulumi.StringPtrInput `pulumi:"city"`
	// Specifies the flavor name, which can be queried with a regular expression.
	Name pulumi.StringPtrInput `pulumi:"name"`
	// Specifies the operator supported of the iec instance.
	Operator pulumi.StringPtrInput `pulumi:"operator"`
	// Specifies the province of the iec instance located.
	Province pulumi.StringPtrInput `pulumi:"province"`
	// The region in which to obtain the flavors. If omitted, the provider-level region will be
	// used.
	Region pulumi.StringPtrInput `pulumi:"region"`
	// Specifies the list of edge service site.
	SiteIds pulumi.StringPtrInput `pulumi:"siteIds"`
}

A collection of arguments for invoking getFlavors.

func (GetFlavorsOutputArgs) ElementType

func (GetFlavorsOutputArgs) ElementType() reflect.Type

type GetFlavorsResult

type GetFlavorsResult struct {
	Area *string `pulumi:"area"`
	City *string `pulumi:"city"`
	// An array of one or more flavors. The flavors object structure is documented below.
	Flavors []GetFlavorsFlavor `pulumi:"flavors"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// The name of the iec flavor.
	Name     *string `pulumi:"name"`
	Operator *string `pulumi:"operator"`
	Province *string `pulumi:"province"`
	Region   string  `pulumi:"region"`
	SiteIds  *string `pulumi:"siteIds"`
}

A collection of values returned by getFlavors.

func GetFlavors

func GetFlavors(ctx *pulumi.Context, args *GetFlavorsArgs, opts ...pulumi.InvokeOption) (*GetFlavorsResult, error)

Use this data source to get the available of HuaweiCloud IEC flavors.

## Example Usage

```go package main

import (

"github.com/huaweicloud/pulumi-huaweicloud/sdk/go/huaweicloud/Iec"
"github.com/pulumi/pulumi-huaweicloud/sdk/go/huaweicloud/Iec"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		flavorName := "c6.large.2"
		if param := cfg.Get("flavorName"); param != "" {
			flavorName = param
		}
		_, err := Iec.GetFlavors(ctx, &iec.GetFlavorsArgs{
			Name: pulumi.StringRef(flavorName),
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetFlavorsResultOutput

type GetFlavorsResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getFlavors.

func (GetFlavorsResultOutput) Area

func (GetFlavorsResultOutput) City

func (GetFlavorsResultOutput) ElementType

func (GetFlavorsResultOutput) ElementType() reflect.Type

func (GetFlavorsResultOutput) Flavors

An array of one or more flavors. The flavors object structure is documented below.

func (GetFlavorsResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetFlavorsResultOutput) Name

The name of the iec flavor.

func (GetFlavorsResultOutput) Operator

func (GetFlavorsResultOutput) Province

func (GetFlavorsResultOutput) Region

func (GetFlavorsResultOutput) SiteIds

func (GetFlavorsResultOutput) ToGetFlavorsResultOutput

func (o GetFlavorsResultOutput) ToGetFlavorsResultOutput() GetFlavorsResultOutput

func (GetFlavorsResultOutput) ToGetFlavorsResultOutputWithContext

func (o GetFlavorsResultOutput) ToGetFlavorsResultOutputWithContext(ctx context.Context) GetFlavorsResultOutput

type GetImagesArgs

type GetImagesArgs struct {
	// Specifies the image Name, which can be queried with a regular expression.
	Name *string `pulumi:"name"`
	// Specifies the os type of the iec image.
	// "Linux", "Windows" and "Other" are supported.
	OsType *string `pulumi:"osType"`
	// The region in which to obtain the images. If omitted, the provider-level region will be
	// used.
	Region *string `pulumi:"region"`
}

A collection of arguments for invoking getImages.

type GetImagesImage

type GetImagesImage struct {
	// The id of the iec images.
	Id string `pulumi:"id"`
	// Specifies the image Name, which can be queried with a regular expression.
	Name string `pulumi:"name"`
	// Specifies the os type of the iec image.
	// "Linux", "Windows" and "Other" are supported.
	OsType string `pulumi:"osType"`
	// The status of the iec images.
	Status string `pulumi:"status"`
}

type GetImagesImageArgs

type GetImagesImageArgs struct {
	// The id of the iec images.
	Id pulumi.StringInput `pulumi:"id"`
	// Specifies the image Name, which can be queried with a regular expression.
	Name pulumi.StringInput `pulumi:"name"`
	// Specifies the os type of the iec image.
	// "Linux", "Windows" and "Other" are supported.
	OsType pulumi.StringInput `pulumi:"osType"`
	// The status of the iec images.
	Status pulumi.StringInput `pulumi:"status"`
}

func (GetImagesImageArgs) ElementType

func (GetImagesImageArgs) ElementType() reflect.Type

func (GetImagesImageArgs) ToGetImagesImageOutput

func (i GetImagesImageArgs) ToGetImagesImageOutput() GetImagesImageOutput

func (GetImagesImageArgs) ToGetImagesImageOutputWithContext

func (i GetImagesImageArgs) ToGetImagesImageOutputWithContext(ctx context.Context) GetImagesImageOutput

type GetImagesImageArray

type GetImagesImageArray []GetImagesImageInput

func (GetImagesImageArray) ElementType

func (GetImagesImageArray) ElementType() reflect.Type

func (GetImagesImageArray) ToGetImagesImageArrayOutput

func (i GetImagesImageArray) ToGetImagesImageArrayOutput() GetImagesImageArrayOutput

func (GetImagesImageArray) ToGetImagesImageArrayOutputWithContext

func (i GetImagesImageArray) ToGetImagesImageArrayOutputWithContext(ctx context.Context) GetImagesImageArrayOutput

type GetImagesImageArrayInput

type GetImagesImageArrayInput interface {
	pulumi.Input

	ToGetImagesImageArrayOutput() GetImagesImageArrayOutput
	ToGetImagesImageArrayOutputWithContext(context.Context) GetImagesImageArrayOutput
}

GetImagesImageArrayInput is an input type that accepts GetImagesImageArray and GetImagesImageArrayOutput values. You can construct a concrete instance of `GetImagesImageArrayInput` via:

GetImagesImageArray{ GetImagesImageArgs{...} }

type GetImagesImageArrayOutput

type GetImagesImageArrayOutput struct{ *pulumi.OutputState }

func (GetImagesImageArrayOutput) ElementType

func (GetImagesImageArrayOutput) ElementType() reflect.Type

func (GetImagesImageArrayOutput) Index

func (GetImagesImageArrayOutput) ToGetImagesImageArrayOutput

func (o GetImagesImageArrayOutput) ToGetImagesImageArrayOutput() GetImagesImageArrayOutput

func (GetImagesImageArrayOutput) ToGetImagesImageArrayOutputWithContext

func (o GetImagesImageArrayOutput) ToGetImagesImageArrayOutputWithContext(ctx context.Context) GetImagesImageArrayOutput

type GetImagesImageInput

type GetImagesImageInput interface {
	pulumi.Input

	ToGetImagesImageOutput() GetImagesImageOutput
	ToGetImagesImageOutputWithContext(context.Context) GetImagesImageOutput
}

GetImagesImageInput is an input type that accepts GetImagesImageArgs and GetImagesImageOutput values. You can construct a concrete instance of `GetImagesImageInput` via:

GetImagesImageArgs{...}

type GetImagesImageOutput

type GetImagesImageOutput struct{ *pulumi.OutputState }

func (GetImagesImageOutput) ElementType

func (GetImagesImageOutput) ElementType() reflect.Type

func (GetImagesImageOutput) Id

The id of the iec images.

func (GetImagesImageOutput) Name

Specifies the image Name, which can be queried with a regular expression.

func (GetImagesImageOutput) OsType

Specifies the os type of the iec image. "Linux", "Windows" and "Other" are supported.

func (GetImagesImageOutput) Status

The status of the iec images.

func (GetImagesImageOutput) ToGetImagesImageOutput

func (o GetImagesImageOutput) ToGetImagesImageOutput() GetImagesImageOutput

func (GetImagesImageOutput) ToGetImagesImageOutputWithContext

func (o GetImagesImageOutput) ToGetImagesImageOutputWithContext(ctx context.Context) GetImagesImageOutput

type GetImagesOutputArgs

type GetImagesOutputArgs struct {
	// Specifies the image Name, which can be queried with a regular expression.
	Name pulumi.StringPtrInput `pulumi:"name"`
	// Specifies the os type of the iec image.
	// "Linux", "Windows" and "Other" are supported.
	OsType pulumi.StringPtrInput `pulumi:"osType"`
	// The region in which to obtain the images. If omitted, the provider-level region will be
	// used.
	Region pulumi.StringPtrInput `pulumi:"region"`
}

A collection of arguments for invoking getImages.

func (GetImagesOutputArgs) ElementType

func (GetImagesOutputArgs) ElementType() reflect.Type

type GetImagesResult

type GetImagesResult struct {
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// An array of one or more image. The images object structure is documented below.
	Images []GetImagesImage `pulumi:"images"`
	// The name of the iec images.
	Name *string `pulumi:"name"`
	// The osType of the iec images.
	OsType *string `pulumi:"osType"`
	Region string  `pulumi:"region"`
}

A collection of values returned by getImages.

func GetImages

func GetImages(ctx *pulumi.Context, args *GetImagesArgs, opts ...pulumi.InvokeOption) (*GetImagesResult, error)

Use this data source to get the available of HuaweiCloud IEC images.

## Example Usage

```go package main

import (

"github.com/huaweicloud/pulumi-huaweicloud/sdk/go/huaweicloud/Iec"
"github.com/pulumi/pulumi-huaweicloud/sdk/go/huaweicloud/Iec"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := Iec.GetImages(ctx, &iec.GetImagesArgs{
			OsType: pulumi.StringRef("Linux"),
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetImagesResultOutput

type GetImagesResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getImages.

func (GetImagesResultOutput) ElementType

func (GetImagesResultOutput) ElementType() reflect.Type

func (GetImagesResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetImagesResultOutput) Images

An array of one or more image. The images object structure is documented below.

func (GetImagesResultOutput) Name

The name of the iec images.

func (GetImagesResultOutput) OsType

The osType of the iec images.

func (GetImagesResultOutput) Region

func (GetImagesResultOutput) ToGetImagesResultOutput

func (o GetImagesResultOutput) ToGetImagesResultOutput() GetImagesResultOutput

func (GetImagesResultOutput) ToGetImagesResultOutputWithContext

func (o GetImagesResultOutput) ToGetImagesResultOutputWithContext(ctx context.Context) GetImagesResultOutput

type GetNetwork_aclArgs

type GetNetwork_aclArgs struct {
	// Specifies the ID of the IEC network ACL to retrieve.
	Id *string `pulumi:"id"`
	// Specifies the name if the IEC network ACL with a maximum of 64 characters.
	Name *string `pulumi:"name"`
}

A collection of arguments for invoking getNetwork_acl.

type GetNetwork_aclNetwork

type GetNetwork_aclNetwork struct {
	SubnetId string `pulumi:"subnetId"`
	VpcId    string `pulumi:"vpcId"`
}

type GetNetwork_aclNetworkArgs

type GetNetwork_aclNetworkArgs struct {
	SubnetId pulumi.StringInput `pulumi:"subnetId"`
	VpcId    pulumi.StringInput `pulumi:"vpcId"`
}

func (GetNetwork_aclNetworkArgs) ElementType

func (GetNetwork_aclNetworkArgs) ElementType() reflect.Type

func (GetNetwork_aclNetworkArgs) ToGetNetwork_aclNetworkOutput

func (i GetNetwork_aclNetworkArgs) ToGetNetwork_aclNetworkOutput() GetNetwork_aclNetworkOutput

func (GetNetwork_aclNetworkArgs) ToGetNetwork_aclNetworkOutputWithContext

func (i GetNetwork_aclNetworkArgs) ToGetNetwork_aclNetworkOutputWithContext(ctx context.Context) GetNetwork_aclNetworkOutput

type GetNetwork_aclNetworkArray

type GetNetwork_aclNetworkArray []GetNetwork_aclNetworkInput

func (GetNetwork_aclNetworkArray) ElementType

func (GetNetwork_aclNetworkArray) ElementType() reflect.Type

func (GetNetwork_aclNetworkArray) ToGetNetwork_aclNetworkArrayOutput

func (i GetNetwork_aclNetworkArray) ToGetNetwork_aclNetworkArrayOutput() GetNetwork_aclNetworkArrayOutput

func (GetNetwork_aclNetworkArray) ToGetNetwork_aclNetworkArrayOutputWithContext

func (i GetNetwork_aclNetworkArray) ToGetNetwork_aclNetworkArrayOutputWithContext(ctx context.Context) GetNetwork_aclNetworkArrayOutput

type GetNetwork_aclNetworkArrayInput

type GetNetwork_aclNetworkArrayInput interface {
	pulumi.Input

	ToGetNetwork_aclNetworkArrayOutput() GetNetwork_aclNetworkArrayOutput
	ToGetNetwork_aclNetworkArrayOutputWithContext(context.Context) GetNetwork_aclNetworkArrayOutput
}

GetNetwork_aclNetworkArrayInput is an input type that accepts GetNetwork_aclNetworkArray and GetNetwork_aclNetworkArrayOutput values. You can construct a concrete instance of `GetNetwork_aclNetworkArrayInput` via:

GetNetwork_aclNetworkArray{ GetNetwork_aclNetworkArgs{...} }

type GetNetwork_aclNetworkArrayOutput

type GetNetwork_aclNetworkArrayOutput struct{ *pulumi.OutputState }

func (GetNetwork_aclNetworkArrayOutput) ElementType

func (GetNetwork_aclNetworkArrayOutput) Index

func (GetNetwork_aclNetworkArrayOutput) ToGetNetwork_aclNetworkArrayOutput

func (o GetNetwork_aclNetworkArrayOutput) ToGetNetwork_aclNetworkArrayOutput() GetNetwork_aclNetworkArrayOutput

func (GetNetwork_aclNetworkArrayOutput) ToGetNetwork_aclNetworkArrayOutputWithContext

func (o GetNetwork_aclNetworkArrayOutput) ToGetNetwork_aclNetworkArrayOutputWithContext(ctx context.Context) GetNetwork_aclNetworkArrayOutput

type GetNetwork_aclNetworkInput

type GetNetwork_aclNetworkInput interface {
	pulumi.Input

	ToGetNetwork_aclNetworkOutput() GetNetwork_aclNetworkOutput
	ToGetNetwork_aclNetworkOutputWithContext(context.Context) GetNetwork_aclNetworkOutput
}

GetNetwork_aclNetworkInput is an input type that accepts GetNetwork_aclNetworkArgs and GetNetwork_aclNetworkOutput values. You can construct a concrete instance of `GetNetwork_aclNetworkInput` via:

GetNetwork_aclNetworkArgs{...}

type GetNetwork_aclNetworkOutput

type GetNetwork_aclNetworkOutput struct{ *pulumi.OutputState }

func (GetNetwork_aclNetworkOutput) ElementType

func (GetNetwork_aclNetworkOutput) SubnetId

func (GetNetwork_aclNetworkOutput) ToGetNetwork_aclNetworkOutput

func (o GetNetwork_aclNetworkOutput) ToGetNetwork_aclNetworkOutput() GetNetwork_aclNetworkOutput

func (GetNetwork_aclNetworkOutput) ToGetNetwork_aclNetworkOutputWithContext

func (o GetNetwork_aclNetworkOutput) ToGetNetwork_aclNetworkOutputWithContext(ctx context.Context) GetNetwork_aclNetworkOutput

func (GetNetwork_aclNetworkOutput) VpcId

type GetNetwork_aclOutputArgs

type GetNetwork_aclOutputArgs struct {
	// Specifies the ID of the IEC network ACL to retrieve.
	Id pulumi.StringPtrInput `pulumi:"id"`
	// Specifies the name if the IEC network ACL with a maximum of 64 characters.
	Name pulumi.StringPtrInput `pulumi:"name"`
}

A collection of arguments for invoking getNetwork_acl.

func (GetNetwork_aclOutputArgs) ElementType

func (GetNetwork_aclOutputArgs) ElementType() reflect.Type

type GetNetwork_aclResult

type GetNetwork_aclResult struct {
	// The description of the IEC network ACL.
	Description string `pulumi:"description"`
	Id          string `pulumi:"id"`
	// A list of the IDs of ingress rules associated with the IEC network ACL.
	InboundRules []string                `pulumi:"inboundRules"`
	Name         string                  `pulumi:"name"`
	Networks     []GetNetwork_aclNetwork `pulumi:"networks"`
	// A list of the IDs of egress rules associated with the IEC network ACL.
	OutboundRules []string `pulumi:"outboundRules"`
	// The status of the IEC network ACL.
	Status string `pulumi:"status"`
}

A collection of values returned by getNetwork_acl.

func GetNetwork_acl

func GetNetwork_acl(ctx *pulumi.Context, args *GetNetwork_aclArgs, opts ...pulumi.InvokeOption) (*GetNetwork_aclResult, error)

Use this data source to get the details of a specific IEC network ACL.

## Example Usage

```go package main

import (

"github.com/huaweicloud/pulumi-huaweicloud/sdk/go/huaweicloud/Iec"
"github.com/pulumi/pulumi-huaweicloud/sdk/go/huaweicloud/Iec"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		aclName := cfg.RequireObject("aclName")
		_, err := Iec.GetNetwork_acl(ctx, &iec.GetNetwork_aclArgs{
			Name: pulumi.StringRef(aclName),
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetNetwork_aclResultOutput

type GetNetwork_aclResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getNetwork_acl.

func (GetNetwork_aclResultOutput) Description

The description of the IEC network ACL.

func (GetNetwork_aclResultOutput) ElementType

func (GetNetwork_aclResultOutput) ElementType() reflect.Type

func (GetNetwork_aclResultOutput) Id

func (GetNetwork_aclResultOutput) InboundRules

A list of the IDs of ingress rules associated with the IEC network ACL.

func (GetNetwork_aclResultOutput) Name

func (GetNetwork_aclResultOutput) Networks

func (GetNetwork_aclResultOutput) OutboundRules

A list of the IDs of egress rules associated with the IEC network ACL.

func (GetNetwork_aclResultOutput) Status

The status of the IEC network ACL.

func (GetNetwork_aclResultOutput) ToGetNetwork_aclResultOutput

func (o GetNetwork_aclResultOutput) ToGetNetwork_aclResultOutput() GetNetwork_aclResultOutput

func (GetNetwork_aclResultOutput) ToGetNetwork_aclResultOutputWithContext

func (o GetNetwork_aclResultOutput) ToGetNetwork_aclResultOutputWithContext(ctx context.Context) GetNetwork_aclResultOutput

type GetPortArgs

type GetPortArgs struct {
	// The IP address of the port.
	FixedIp *string `pulumi:"fixedIp"`
	// The ID of the port.
	Id *string `pulumi:"id"`
	// The MAC address of the port.
	MacAddress *string `pulumi:"macAddress"`
	// The region in which to obtain the port. If omitted, the provider-level region will be
	// used.
	Region *string `pulumi:"region"`
	// The ID of the subnet which the port belongs to.
	SubnetId *string `pulumi:"subnetId"`
}

A collection of arguments for invoking getPort.

type GetPortOutputArgs

type GetPortOutputArgs struct {
	// The IP address of the port.
	FixedIp pulumi.StringPtrInput `pulumi:"fixedIp"`
	// The ID of the port.
	Id pulumi.StringPtrInput `pulumi:"id"`
	// The MAC address of the port.
	MacAddress pulumi.StringPtrInput `pulumi:"macAddress"`
	// The region in which to obtain the port. If omitted, the provider-level region will be
	// used.
	Region pulumi.StringPtrInput `pulumi:"region"`
	// The ID of the subnet which the port belongs to.
	SubnetId pulumi.StringPtrInput `pulumi:"subnetId"`
}

A collection of arguments for invoking getPort.

func (GetPortOutputArgs) ElementType

func (GetPortOutputArgs) ElementType() reflect.Type

type GetPortResult

type GetPortResult struct {
	FixedIp string `pulumi:"fixedIp"`
	// Specifies a data source ID in UUID format.
	Id         string `pulumi:"id"`
	MacAddress string `pulumi:"macAddress"`
	Region     string `pulumi:"region"`
	// Indicates the list of security group IDs applied on the port.
	SecurityGroups []string `pulumi:"securityGroups"`
	// Indicates the ID of the IEC site.
	SiteId string `pulumi:"siteId"`
	// Indicates the status of the port.
	Status   string `pulumi:"status"`
	SubnetId string `pulumi:"subnetId"`
}

A collection of values returned by getPort.

func GetPort

func GetPort(ctx *pulumi.Context, args *GetPortArgs, opts ...pulumi.InvokeOption) (*GetPortResult, error)

Use this data source to get the details of a specific IEC subnet port.

## Example Usage

```go package main

import (

"github.com/huaweicloud/pulumi-huaweicloud/sdk/go/huaweicloud/Iec"
"github.com/pulumi/pulumi-huaweicloud/sdk/go/huaweicloud/Iec"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		subnetId := cfg.RequireObject("subnetId")
		_, err := Iec.GetPort(ctx, &iec.GetPortArgs{
			SubnetId: pulumi.StringRef(subnetId),
			FixedIp:  pulumi.StringRef("192.168.1.123"),
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetPortResultOutput

type GetPortResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getPort.

func (GetPortResultOutput) ElementType

func (GetPortResultOutput) ElementType() reflect.Type

func (GetPortResultOutput) FixedIp

func (GetPortResultOutput) Id

Specifies a data source ID in UUID format.

func (GetPortResultOutput) MacAddress

func (o GetPortResultOutput) MacAddress() pulumi.StringOutput

func (GetPortResultOutput) Region

func (GetPortResultOutput) SecurityGroups

func (o GetPortResultOutput) SecurityGroups() pulumi.StringArrayOutput

Indicates the list of security group IDs applied on the port.

func (GetPortResultOutput) SiteId

Indicates the ID of the IEC site.

func (GetPortResultOutput) Status

Indicates the status of the port.

func (GetPortResultOutput) SubnetId

func (GetPortResultOutput) ToGetPortResultOutput

func (o GetPortResultOutput) ToGetPortResultOutput() GetPortResultOutput

func (GetPortResultOutput) ToGetPortResultOutputWithContext

func (o GetPortResultOutput) ToGetPortResultOutputWithContext(ctx context.Context) GetPortResultOutput

type GetSecurityGroupSecurityGroupRule

type GetSecurityGroupSecurityGroupRule struct {
	// The description for the IEC security group rules.
	Description string `pulumi:"description"`
	// The direction of the IEC security group rules.
	Direction string `pulumi:"direction"`
	// The layer 3 protocol type.
	Ethertype string `pulumi:"ethertype"`
	// The ID of the IEC security group rules.
	Id string `pulumi:"id"`
	// The higher part of the allowed port range.
	PortRangeMax int `pulumi:"portRangeMax"`
	// The lower part of the allowed port range.
	PortRangeMin int `pulumi:"portRangeMin"`
	// The layer 4 protocol type.
	Protocol string `pulumi:"protocol"`
	// The remote group id of the IEC security group rules.
	RemoteGroupId string `pulumi:"remoteGroupId"`
	// The remote CIDR of the IEC security group rules.
	RemoteIpPrefix string `pulumi:"remoteIpPrefix"`
	// The id of the IEC security group rules.
	SecurityGroupId string `pulumi:"securityGroupId"`
}

type GetSecurityGroupSecurityGroupRuleArgs

type GetSecurityGroupSecurityGroupRuleArgs struct {
	// The description for the IEC security group rules.
	Description pulumi.StringInput `pulumi:"description"`
	// The direction of the IEC security group rules.
	Direction pulumi.StringInput `pulumi:"direction"`
	// The layer 3 protocol type.
	Ethertype pulumi.StringInput `pulumi:"ethertype"`
	// The ID of the IEC security group rules.
	Id pulumi.StringInput `pulumi:"id"`
	// The higher part of the allowed port range.
	PortRangeMax pulumi.IntInput `pulumi:"portRangeMax"`
	// The lower part of the allowed port range.
	PortRangeMin pulumi.IntInput `pulumi:"portRangeMin"`
	// The layer 4 protocol type.
	Protocol pulumi.StringInput `pulumi:"protocol"`
	// The remote group id of the IEC security group rules.
	RemoteGroupId pulumi.StringInput `pulumi:"remoteGroupId"`
	// The remote CIDR of the IEC security group rules.
	RemoteIpPrefix pulumi.StringInput `pulumi:"remoteIpPrefix"`
	// The id of the IEC security group rules.
	SecurityGroupId pulumi.StringInput `pulumi:"securityGroupId"`
}

func (GetSecurityGroupSecurityGroupRuleArgs) ElementType

func (GetSecurityGroupSecurityGroupRuleArgs) ToGetSecurityGroupSecurityGroupRuleOutput

func (i GetSecurityGroupSecurityGroupRuleArgs) ToGetSecurityGroupSecurityGroupRuleOutput() GetSecurityGroupSecurityGroupRuleOutput

func (GetSecurityGroupSecurityGroupRuleArgs) ToGetSecurityGroupSecurityGroupRuleOutputWithContext

func (i GetSecurityGroupSecurityGroupRuleArgs) ToGetSecurityGroupSecurityGroupRuleOutputWithContext(ctx context.Context) GetSecurityGroupSecurityGroupRuleOutput

type GetSecurityGroupSecurityGroupRuleArray

type GetSecurityGroupSecurityGroupRuleArray []GetSecurityGroupSecurityGroupRuleInput

func (GetSecurityGroupSecurityGroupRuleArray) ElementType

func (GetSecurityGroupSecurityGroupRuleArray) ToGetSecurityGroupSecurityGroupRuleArrayOutput

func (i GetSecurityGroupSecurityGroupRuleArray) ToGetSecurityGroupSecurityGroupRuleArrayOutput() GetSecurityGroupSecurityGroupRuleArrayOutput

func (GetSecurityGroupSecurityGroupRuleArray) ToGetSecurityGroupSecurityGroupRuleArrayOutputWithContext

func (i GetSecurityGroupSecurityGroupRuleArray) ToGetSecurityGroupSecurityGroupRuleArrayOutputWithContext(ctx context.Context) GetSecurityGroupSecurityGroupRuleArrayOutput

type GetSecurityGroupSecurityGroupRuleArrayInput

type GetSecurityGroupSecurityGroupRuleArrayInput interface {
	pulumi.Input

	ToGetSecurityGroupSecurityGroupRuleArrayOutput() GetSecurityGroupSecurityGroupRuleArrayOutput
	ToGetSecurityGroupSecurityGroupRuleArrayOutputWithContext(context.Context) GetSecurityGroupSecurityGroupRuleArrayOutput
}

GetSecurityGroupSecurityGroupRuleArrayInput is an input type that accepts GetSecurityGroupSecurityGroupRuleArray and GetSecurityGroupSecurityGroupRuleArrayOutput values. You can construct a concrete instance of `GetSecurityGroupSecurityGroupRuleArrayInput` via:

GetSecurityGroupSecurityGroupRuleArray{ GetSecurityGroupSecurityGroupRuleArgs{...} }

type GetSecurityGroupSecurityGroupRuleArrayOutput

type GetSecurityGroupSecurityGroupRuleArrayOutput struct{ *pulumi.OutputState }

func (GetSecurityGroupSecurityGroupRuleArrayOutput) ElementType

func (GetSecurityGroupSecurityGroupRuleArrayOutput) Index

func (GetSecurityGroupSecurityGroupRuleArrayOutput) ToGetSecurityGroupSecurityGroupRuleArrayOutput

func (o GetSecurityGroupSecurityGroupRuleArrayOutput) ToGetSecurityGroupSecurityGroupRuleArrayOutput() GetSecurityGroupSecurityGroupRuleArrayOutput

func (GetSecurityGroupSecurityGroupRuleArrayOutput) ToGetSecurityGroupSecurityGroupRuleArrayOutputWithContext

func (o GetSecurityGroupSecurityGroupRuleArrayOutput) ToGetSecurityGroupSecurityGroupRuleArrayOutputWithContext(ctx context.Context) GetSecurityGroupSecurityGroupRuleArrayOutput

type GetSecurityGroupSecurityGroupRuleInput

type GetSecurityGroupSecurityGroupRuleInput interface {
	pulumi.Input

	ToGetSecurityGroupSecurityGroupRuleOutput() GetSecurityGroupSecurityGroupRuleOutput
	ToGetSecurityGroupSecurityGroupRuleOutputWithContext(context.Context) GetSecurityGroupSecurityGroupRuleOutput
}

GetSecurityGroupSecurityGroupRuleInput is an input type that accepts GetSecurityGroupSecurityGroupRuleArgs and GetSecurityGroupSecurityGroupRuleOutput values. You can construct a concrete instance of `GetSecurityGroupSecurityGroupRuleInput` via:

GetSecurityGroupSecurityGroupRuleArgs{...}

type GetSecurityGroupSecurityGroupRuleOutput

type GetSecurityGroupSecurityGroupRuleOutput struct{ *pulumi.OutputState }

func (GetSecurityGroupSecurityGroupRuleOutput) Description

The description for the IEC security group rules.

func (GetSecurityGroupSecurityGroupRuleOutput) Direction

The direction of the IEC security group rules.

func (GetSecurityGroupSecurityGroupRuleOutput) ElementType

func (GetSecurityGroupSecurityGroupRuleOutput) Ethertype

The layer 3 protocol type.

func (GetSecurityGroupSecurityGroupRuleOutput) Id

The ID of the IEC security group rules.

func (GetSecurityGroupSecurityGroupRuleOutput) PortRangeMax

The higher part of the allowed port range.

func (GetSecurityGroupSecurityGroupRuleOutput) PortRangeMin

The lower part of the allowed port range.

func (GetSecurityGroupSecurityGroupRuleOutput) Protocol

The layer 4 protocol type.

func (GetSecurityGroupSecurityGroupRuleOutput) RemoteGroupId

The remote group id of the IEC security group rules.

func (GetSecurityGroupSecurityGroupRuleOutput) RemoteIpPrefix

The remote CIDR of the IEC security group rules.

func (GetSecurityGroupSecurityGroupRuleOutput) SecurityGroupId

The id of the IEC security group rules.

func (GetSecurityGroupSecurityGroupRuleOutput) ToGetSecurityGroupSecurityGroupRuleOutput

func (o GetSecurityGroupSecurityGroupRuleOutput) ToGetSecurityGroupSecurityGroupRuleOutput() GetSecurityGroupSecurityGroupRuleOutput

func (GetSecurityGroupSecurityGroupRuleOutput) ToGetSecurityGroupSecurityGroupRuleOutputWithContext

func (o GetSecurityGroupSecurityGroupRuleOutput) ToGetSecurityGroupSecurityGroupRuleOutputWithContext(ctx context.Context) GetSecurityGroupSecurityGroupRuleOutput

type GetServerCoverageSite

type GetServerCoverageSite struct {
	// The operator of the IEC site.
	Operator string `pulumi:"operator"`
	// The ID of IEC site.
	SiteId string `pulumi:"siteId"`
	// The located information of the IEC site. It contains area, province and city.
	SiteInfo string `pulumi:"siteInfo"`
}

type GetServerCoverageSiteArgs

type GetServerCoverageSiteArgs struct {
	// The operator of the IEC site.
	Operator pulumi.StringInput `pulumi:"operator"`
	// The ID of IEC site.
	SiteId pulumi.StringInput `pulumi:"siteId"`
	// The located information of the IEC site. It contains area, province and city.
	SiteInfo pulumi.StringInput `pulumi:"siteInfo"`
}

func (GetServerCoverageSiteArgs) ElementType

func (GetServerCoverageSiteArgs) ElementType() reflect.Type

func (GetServerCoverageSiteArgs) ToGetServerCoverageSiteOutput

func (i GetServerCoverageSiteArgs) ToGetServerCoverageSiteOutput() GetServerCoverageSiteOutput

func (GetServerCoverageSiteArgs) ToGetServerCoverageSiteOutputWithContext

func (i GetServerCoverageSiteArgs) ToGetServerCoverageSiteOutputWithContext(ctx context.Context) GetServerCoverageSiteOutput

type GetServerCoverageSiteArray

type GetServerCoverageSiteArray []GetServerCoverageSiteInput

func (GetServerCoverageSiteArray) ElementType

func (GetServerCoverageSiteArray) ElementType() reflect.Type

func (GetServerCoverageSiteArray) ToGetServerCoverageSiteArrayOutput

func (i GetServerCoverageSiteArray) ToGetServerCoverageSiteArrayOutput() GetServerCoverageSiteArrayOutput

func (GetServerCoverageSiteArray) ToGetServerCoverageSiteArrayOutputWithContext

func (i GetServerCoverageSiteArray) ToGetServerCoverageSiteArrayOutputWithContext(ctx context.Context) GetServerCoverageSiteArrayOutput

type GetServerCoverageSiteArrayInput

type GetServerCoverageSiteArrayInput interface {
	pulumi.Input

	ToGetServerCoverageSiteArrayOutput() GetServerCoverageSiteArrayOutput
	ToGetServerCoverageSiteArrayOutputWithContext(context.Context) GetServerCoverageSiteArrayOutput
}

GetServerCoverageSiteArrayInput is an input type that accepts GetServerCoverageSiteArray and GetServerCoverageSiteArrayOutput values. You can construct a concrete instance of `GetServerCoverageSiteArrayInput` via:

GetServerCoverageSiteArray{ GetServerCoverageSiteArgs{...} }

type GetServerCoverageSiteArrayOutput

type GetServerCoverageSiteArrayOutput struct{ *pulumi.OutputState }

func (GetServerCoverageSiteArrayOutput) ElementType

func (GetServerCoverageSiteArrayOutput) Index

func (GetServerCoverageSiteArrayOutput) ToGetServerCoverageSiteArrayOutput

func (o GetServerCoverageSiteArrayOutput) ToGetServerCoverageSiteArrayOutput() GetServerCoverageSiteArrayOutput

func (GetServerCoverageSiteArrayOutput) ToGetServerCoverageSiteArrayOutputWithContext

func (o GetServerCoverageSiteArrayOutput) ToGetServerCoverageSiteArrayOutputWithContext(ctx context.Context) GetServerCoverageSiteArrayOutput

type GetServerCoverageSiteInput

type GetServerCoverageSiteInput interface {
	pulumi.Input

	ToGetServerCoverageSiteOutput() GetServerCoverageSiteOutput
	ToGetServerCoverageSiteOutputWithContext(context.Context) GetServerCoverageSiteOutput
}

GetServerCoverageSiteInput is an input type that accepts GetServerCoverageSiteArgs and GetServerCoverageSiteOutput values. You can construct a concrete instance of `GetServerCoverageSiteInput` via:

GetServerCoverageSiteArgs{...}

type GetServerCoverageSiteOutput

type GetServerCoverageSiteOutput struct{ *pulumi.OutputState }

func (GetServerCoverageSiteOutput) ElementType

func (GetServerCoverageSiteOutput) Operator

The operator of the IEC site.

func (GetServerCoverageSiteOutput) SiteId

The ID of IEC site.

func (GetServerCoverageSiteOutput) SiteInfo

The located information of the IEC site. It contains area, province and city.

func (GetServerCoverageSiteOutput) ToGetServerCoverageSiteOutput

func (o GetServerCoverageSiteOutput) ToGetServerCoverageSiteOutput() GetServerCoverageSiteOutput

func (GetServerCoverageSiteOutput) ToGetServerCoverageSiteOutputWithContext

func (o GetServerCoverageSiteOutput) ToGetServerCoverageSiteOutputWithContext(ctx context.Context) GetServerCoverageSiteOutput

type GetServerNic

type GetServerNic struct {
	// The IPv4 address of the server on that network.
	Address string `pulumi:"address"`
	// The MAC address of the NIC on that network.
	Mac string `pulumi:"mac"`
	// The port ID corresponding to the IP address on that network.
	Port string `pulumi:"port"`
}

type GetServerNicArgs

type GetServerNicArgs struct {
	// The IPv4 address of the server on that network.
	Address pulumi.StringInput `pulumi:"address"`
	// The MAC address of the NIC on that network.
	Mac pulumi.StringInput `pulumi:"mac"`
	// The port ID corresponding to the IP address on that network.
	Port pulumi.StringInput `pulumi:"port"`
}

func (GetServerNicArgs) ElementType

func (GetServerNicArgs) ElementType() reflect.Type

func (GetServerNicArgs) ToGetServerNicOutput

func (i GetServerNicArgs) ToGetServerNicOutput() GetServerNicOutput

func (GetServerNicArgs) ToGetServerNicOutputWithContext

func (i GetServerNicArgs) ToGetServerNicOutputWithContext(ctx context.Context) GetServerNicOutput

type GetServerNicArray

type GetServerNicArray []GetServerNicInput

func (GetServerNicArray) ElementType

func (GetServerNicArray) ElementType() reflect.Type

func (GetServerNicArray) ToGetServerNicArrayOutput

func (i GetServerNicArray) ToGetServerNicArrayOutput() GetServerNicArrayOutput

func (GetServerNicArray) ToGetServerNicArrayOutputWithContext

func (i GetServerNicArray) ToGetServerNicArrayOutputWithContext(ctx context.Context) GetServerNicArrayOutput

type GetServerNicArrayInput

type GetServerNicArrayInput interface {
	pulumi.Input

	ToGetServerNicArrayOutput() GetServerNicArrayOutput
	ToGetServerNicArrayOutputWithContext(context.Context) GetServerNicArrayOutput
}

GetServerNicArrayInput is an input type that accepts GetServerNicArray and GetServerNicArrayOutput values. You can construct a concrete instance of `GetServerNicArrayInput` via:

GetServerNicArray{ GetServerNicArgs{...} }

type GetServerNicArrayOutput

type GetServerNicArrayOutput struct{ *pulumi.OutputState }

func (GetServerNicArrayOutput) ElementType

func (GetServerNicArrayOutput) ElementType() reflect.Type

func (GetServerNicArrayOutput) Index

func (GetServerNicArrayOutput) ToGetServerNicArrayOutput

func (o GetServerNicArrayOutput) ToGetServerNicArrayOutput() GetServerNicArrayOutput

func (GetServerNicArrayOutput) ToGetServerNicArrayOutputWithContext

func (o GetServerNicArrayOutput) ToGetServerNicArrayOutputWithContext(ctx context.Context) GetServerNicArrayOutput

type GetServerNicInput

type GetServerNicInput interface {
	pulumi.Input

	ToGetServerNicOutput() GetServerNicOutput
	ToGetServerNicOutputWithContext(context.Context) GetServerNicOutput
}

GetServerNicInput is an input type that accepts GetServerNicArgs and GetServerNicOutput values. You can construct a concrete instance of `GetServerNicInput` via:

GetServerNicArgs{...}

type GetServerNicOutput

type GetServerNicOutput struct{ *pulumi.OutputState }

func (GetServerNicOutput) Address

The IPv4 address of the server on that network.

func (GetServerNicOutput) ElementType

func (GetServerNicOutput) ElementType() reflect.Type

func (GetServerNicOutput) Mac

The MAC address of the NIC on that network.

func (GetServerNicOutput) Port

The port ID corresponding to the IP address on that network.

func (GetServerNicOutput) ToGetServerNicOutput

func (o GetServerNicOutput) ToGetServerNicOutput() GetServerNicOutput

func (GetServerNicOutput) ToGetServerNicOutputWithContext

func (o GetServerNicOutput) ToGetServerNicOutputWithContext(ctx context.Context) GetServerNicOutput

type GetServerVolumeAttached

type GetServerVolumeAttached struct {
	// The volume boot index on that attachment.
	BootIndex string `pulumi:"bootIndex"`
	// The device name in the IEC server.
	Device string `pulumi:"device"`
	// The volume size on that attachment.
	Size int `pulumi:"size"`
	// The volume type on that attachment.
	Type string `pulumi:"type"`
	// The volume ID on that attachment.
	VolumeId string `pulumi:"volumeId"`
}

type GetServerVolumeAttachedArgs

type GetServerVolumeAttachedArgs struct {
	// The volume boot index on that attachment.
	BootIndex pulumi.StringInput `pulumi:"bootIndex"`
	// The device name in the IEC server.
	Device pulumi.StringInput `pulumi:"device"`
	// The volume size on that attachment.
	Size pulumi.IntInput `pulumi:"size"`
	// The volume type on that attachment.
	Type pulumi.StringInput `pulumi:"type"`
	// The volume ID on that attachment.
	VolumeId pulumi.StringInput `pulumi:"volumeId"`
}

func (GetServerVolumeAttachedArgs) ElementType

func (GetServerVolumeAttachedArgs) ToGetServerVolumeAttachedOutput

func (i GetServerVolumeAttachedArgs) ToGetServerVolumeAttachedOutput() GetServerVolumeAttachedOutput

func (GetServerVolumeAttachedArgs) ToGetServerVolumeAttachedOutputWithContext

func (i GetServerVolumeAttachedArgs) ToGetServerVolumeAttachedOutputWithContext(ctx context.Context) GetServerVolumeAttachedOutput

type GetServerVolumeAttachedArray

type GetServerVolumeAttachedArray []GetServerVolumeAttachedInput

func (GetServerVolumeAttachedArray) ElementType

func (GetServerVolumeAttachedArray) ToGetServerVolumeAttachedArrayOutput

func (i GetServerVolumeAttachedArray) ToGetServerVolumeAttachedArrayOutput() GetServerVolumeAttachedArrayOutput

func (GetServerVolumeAttachedArray) ToGetServerVolumeAttachedArrayOutputWithContext

func (i GetServerVolumeAttachedArray) ToGetServerVolumeAttachedArrayOutputWithContext(ctx context.Context) GetServerVolumeAttachedArrayOutput

type GetServerVolumeAttachedArrayInput

type GetServerVolumeAttachedArrayInput interface {
	pulumi.Input

	ToGetServerVolumeAttachedArrayOutput() GetServerVolumeAttachedArrayOutput
	ToGetServerVolumeAttachedArrayOutputWithContext(context.Context) GetServerVolumeAttachedArrayOutput
}

GetServerVolumeAttachedArrayInput is an input type that accepts GetServerVolumeAttachedArray and GetServerVolumeAttachedArrayOutput values. You can construct a concrete instance of `GetServerVolumeAttachedArrayInput` via:

GetServerVolumeAttachedArray{ GetServerVolumeAttachedArgs{...} }

type GetServerVolumeAttachedArrayOutput

type GetServerVolumeAttachedArrayOutput struct{ *pulumi.OutputState }

func (GetServerVolumeAttachedArrayOutput) ElementType

func (GetServerVolumeAttachedArrayOutput) Index

func (GetServerVolumeAttachedArrayOutput) ToGetServerVolumeAttachedArrayOutput

func (o GetServerVolumeAttachedArrayOutput) ToGetServerVolumeAttachedArrayOutput() GetServerVolumeAttachedArrayOutput

func (GetServerVolumeAttachedArrayOutput) ToGetServerVolumeAttachedArrayOutputWithContext

func (o GetServerVolumeAttachedArrayOutput) ToGetServerVolumeAttachedArrayOutputWithContext(ctx context.Context) GetServerVolumeAttachedArrayOutput

type GetServerVolumeAttachedInput

type GetServerVolumeAttachedInput interface {
	pulumi.Input

	ToGetServerVolumeAttachedOutput() GetServerVolumeAttachedOutput
	ToGetServerVolumeAttachedOutputWithContext(context.Context) GetServerVolumeAttachedOutput
}

GetServerVolumeAttachedInput is an input type that accepts GetServerVolumeAttachedArgs and GetServerVolumeAttachedOutput values. You can construct a concrete instance of `GetServerVolumeAttachedInput` via:

GetServerVolumeAttachedArgs{...}

type GetServerVolumeAttachedOutput

type GetServerVolumeAttachedOutput struct{ *pulumi.OutputState }

func (GetServerVolumeAttachedOutput) BootIndex

The volume boot index on that attachment.

func (GetServerVolumeAttachedOutput) Device

The device name in the IEC server.

func (GetServerVolumeAttachedOutput) ElementType

func (GetServerVolumeAttachedOutput) Size

The volume size on that attachment.

func (GetServerVolumeAttachedOutput) ToGetServerVolumeAttachedOutput

func (o GetServerVolumeAttachedOutput) ToGetServerVolumeAttachedOutput() GetServerVolumeAttachedOutput

func (GetServerVolumeAttachedOutput) ToGetServerVolumeAttachedOutputWithContext

func (o GetServerVolumeAttachedOutput) ToGetServerVolumeAttachedOutputWithContext(ctx context.Context) GetServerVolumeAttachedOutput

func (GetServerVolumeAttachedOutput) Type

The volume type on that attachment.

func (GetServerVolumeAttachedOutput) VolumeId

The volume ID on that attachment.

type GetSitesArgs

type GetSitesArgs struct {
	// Specifies the area of the IEC sites located.
	Area *string `pulumi:"area"`
	// Specifies the city of the IEC sites located.
	City *string `pulumi:"city"`
	// Specifies the province of the IEC sites located.
	Province *string `pulumi:"province"`
}

A collection of arguments for invoking getSites.

type GetSitesOutputArgs

type GetSitesOutputArgs struct {
	// Specifies the area of the IEC sites located.
	Area pulumi.StringPtrInput `pulumi:"area"`
	// Specifies the city of the IEC sites located.
	City pulumi.StringPtrInput `pulumi:"city"`
	// Specifies the province of the IEC sites located.
	Province pulumi.StringPtrInput `pulumi:"province"`
}

A collection of arguments for invoking getSites.

func (GetSitesOutputArgs) ElementType

func (GetSitesOutputArgs) ElementType() reflect.Type

type GetSitesResult

type GetSitesResult struct {
	// The area of the IEC service site located.
	Area *string `pulumi:"area"`
	// The city of the IEC service site located.
	City *string `pulumi:"city"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// The province of the IEC service site located.
	Province *string `pulumi:"province"`
	// An array of one or more IEC service sites. The sites object structure is documented below.
	Sites []GetSitesSite `pulumi:"sites"`
}

A collection of values returned by getSites.

func GetSites

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

Use this data source to get the available of HuaweiCloud IEC sites.

## Example Usage ### Basic IEC Sites

```go package main

import (

"github.com/huaweicloud/pulumi-huaweicloud/sdk/go/huaweicloud/Iec"
"github.com/pulumi/pulumi-huaweicloud/sdk/go/huaweicloud/Iec"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := Iec.GetSites(ctx, nil, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetSitesResultOutput

type GetSitesResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getSites.

func (GetSitesResultOutput) Area

The area of the IEC service site located.

func (GetSitesResultOutput) City

The city of the IEC service site located.

func (GetSitesResultOutput) ElementType

func (GetSitesResultOutput) ElementType() reflect.Type

func (GetSitesResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetSitesResultOutput) Province

The province of the IEC service site located.

func (GetSitesResultOutput) Sites

An array of one or more IEC service sites. The sites object structure is documented below.

func (GetSitesResultOutput) ToGetSitesResultOutput

func (o GetSitesResultOutput) ToGetSitesResultOutput() GetSitesResultOutput

func (GetSitesResultOutput) ToGetSitesResultOutputWithContext

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

type GetSitesSite

type GetSitesSite struct {
	// Specifies the area of the IEC sites located.
	Area string `pulumi:"area"`
	// Specifies the city of the IEC sites located.
	City string `pulumi:"city"`
	// The ID of the EIP line.
	Id string `pulumi:"id"`
	// An array of one or more EIP lines. The object structure is documented below.
	Lines []GetSitesSiteLine `pulumi:"lines"`
	// The name of the EIP line.
	Name string `pulumi:"name"`
	// Specifies the province of the IEC sites located.
	Province string `pulumi:"province"`
	// The status of the IEC service site.
	Status string `pulumi:"status"`
}

type GetSitesSiteArgs

type GetSitesSiteArgs struct {
	// Specifies the area of the IEC sites located.
	Area pulumi.StringInput `pulumi:"area"`
	// Specifies the city of the IEC sites located.
	City pulumi.StringInput `pulumi:"city"`
	// The ID of the EIP line.
	Id pulumi.StringInput `pulumi:"id"`
	// An array of one or more EIP lines. The object structure is documented below.
	Lines GetSitesSiteLineArrayInput `pulumi:"lines"`
	// The name of the EIP line.
	Name pulumi.StringInput `pulumi:"name"`
	// Specifies the province of the IEC sites located.
	Province pulumi.StringInput `pulumi:"province"`
	// The status of the IEC service site.
	Status pulumi.StringInput `pulumi:"status"`
}

func (GetSitesSiteArgs) ElementType

func (GetSitesSiteArgs) ElementType() reflect.Type

func (GetSitesSiteArgs) ToGetSitesSiteOutput

func (i GetSitesSiteArgs) ToGetSitesSiteOutput() GetSitesSiteOutput

func (GetSitesSiteArgs) ToGetSitesSiteOutputWithContext

func (i GetSitesSiteArgs) ToGetSitesSiteOutputWithContext(ctx context.Context) GetSitesSiteOutput

type GetSitesSiteArray

type GetSitesSiteArray []GetSitesSiteInput

func (GetSitesSiteArray) ElementType

func (GetSitesSiteArray) ElementType() reflect.Type

func (GetSitesSiteArray) ToGetSitesSiteArrayOutput

func (i GetSitesSiteArray) ToGetSitesSiteArrayOutput() GetSitesSiteArrayOutput

func (GetSitesSiteArray) ToGetSitesSiteArrayOutputWithContext

func (i GetSitesSiteArray) ToGetSitesSiteArrayOutputWithContext(ctx context.Context) GetSitesSiteArrayOutput

type GetSitesSiteArrayInput

type GetSitesSiteArrayInput interface {
	pulumi.Input

	ToGetSitesSiteArrayOutput() GetSitesSiteArrayOutput
	ToGetSitesSiteArrayOutputWithContext(context.Context) GetSitesSiteArrayOutput
}

GetSitesSiteArrayInput is an input type that accepts GetSitesSiteArray and GetSitesSiteArrayOutput values. You can construct a concrete instance of `GetSitesSiteArrayInput` via:

GetSitesSiteArray{ GetSitesSiteArgs{...} }

type GetSitesSiteArrayOutput

type GetSitesSiteArrayOutput struct{ *pulumi.OutputState }

func (GetSitesSiteArrayOutput) ElementType

func (GetSitesSiteArrayOutput) ElementType() reflect.Type

func (GetSitesSiteArrayOutput) Index

func (GetSitesSiteArrayOutput) ToGetSitesSiteArrayOutput

func (o GetSitesSiteArrayOutput) ToGetSitesSiteArrayOutput() GetSitesSiteArrayOutput

func (GetSitesSiteArrayOutput) ToGetSitesSiteArrayOutputWithContext

func (o GetSitesSiteArrayOutput) ToGetSitesSiteArrayOutputWithContext(ctx context.Context) GetSitesSiteArrayOutput

type GetSitesSiteInput

type GetSitesSiteInput interface {
	pulumi.Input

	ToGetSitesSiteOutput() GetSitesSiteOutput
	ToGetSitesSiteOutputWithContext(context.Context) GetSitesSiteOutput
}

GetSitesSiteInput is an input type that accepts GetSitesSiteArgs and GetSitesSiteOutput values. You can construct a concrete instance of `GetSitesSiteInput` via:

GetSitesSiteArgs{...}

type GetSitesSiteLine

type GetSitesSiteLine struct {
	// The ID of the EIP line.
	Id string `pulumi:"id"`
	// The supported IP version.
	IpVersion string `pulumi:"ipVersion"`
	// The name of the EIP line.
	Name string `pulumi:"name"`
	// The operator information of the EIP line.
	Operator string `pulumi:"operator"`
}

type GetSitesSiteLineArgs

type GetSitesSiteLineArgs struct {
	// The ID of the EIP line.
	Id pulumi.StringInput `pulumi:"id"`
	// The supported IP version.
	IpVersion pulumi.StringInput `pulumi:"ipVersion"`
	// The name of the EIP line.
	Name pulumi.StringInput `pulumi:"name"`
	// The operator information of the EIP line.
	Operator pulumi.StringInput `pulumi:"operator"`
}

func (GetSitesSiteLineArgs) ElementType

func (GetSitesSiteLineArgs) ElementType() reflect.Type

func (GetSitesSiteLineArgs) ToGetSitesSiteLineOutput

func (i GetSitesSiteLineArgs) ToGetSitesSiteLineOutput() GetSitesSiteLineOutput

func (GetSitesSiteLineArgs) ToGetSitesSiteLineOutputWithContext

func (i GetSitesSiteLineArgs) ToGetSitesSiteLineOutputWithContext(ctx context.Context) GetSitesSiteLineOutput

type GetSitesSiteLineArray

type GetSitesSiteLineArray []GetSitesSiteLineInput

func (GetSitesSiteLineArray) ElementType

func (GetSitesSiteLineArray) ElementType() reflect.Type

func (GetSitesSiteLineArray) ToGetSitesSiteLineArrayOutput

func (i GetSitesSiteLineArray) ToGetSitesSiteLineArrayOutput() GetSitesSiteLineArrayOutput

func (GetSitesSiteLineArray) ToGetSitesSiteLineArrayOutputWithContext

func (i GetSitesSiteLineArray) ToGetSitesSiteLineArrayOutputWithContext(ctx context.Context) GetSitesSiteLineArrayOutput

type GetSitesSiteLineArrayInput

type GetSitesSiteLineArrayInput interface {
	pulumi.Input

	ToGetSitesSiteLineArrayOutput() GetSitesSiteLineArrayOutput
	ToGetSitesSiteLineArrayOutputWithContext(context.Context) GetSitesSiteLineArrayOutput
}

GetSitesSiteLineArrayInput is an input type that accepts GetSitesSiteLineArray and GetSitesSiteLineArrayOutput values. You can construct a concrete instance of `GetSitesSiteLineArrayInput` via:

GetSitesSiteLineArray{ GetSitesSiteLineArgs{...} }

type GetSitesSiteLineArrayOutput

type GetSitesSiteLineArrayOutput struct{ *pulumi.OutputState }

func (GetSitesSiteLineArrayOutput) ElementType

func (GetSitesSiteLineArrayOutput) Index

func (GetSitesSiteLineArrayOutput) ToGetSitesSiteLineArrayOutput

func (o GetSitesSiteLineArrayOutput) ToGetSitesSiteLineArrayOutput() GetSitesSiteLineArrayOutput

func (GetSitesSiteLineArrayOutput) ToGetSitesSiteLineArrayOutputWithContext

func (o GetSitesSiteLineArrayOutput) ToGetSitesSiteLineArrayOutputWithContext(ctx context.Context) GetSitesSiteLineArrayOutput

type GetSitesSiteLineInput

type GetSitesSiteLineInput interface {
	pulumi.Input

	ToGetSitesSiteLineOutput() GetSitesSiteLineOutput
	ToGetSitesSiteLineOutputWithContext(context.Context) GetSitesSiteLineOutput
}

GetSitesSiteLineInput is an input type that accepts GetSitesSiteLineArgs and GetSitesSiteLineOutput values. You can construct a concrete instance of `GetSitesSiteLineInput` via:

GetSitesSiteLineArgs{...}

type GetSitesSiteLineOutput

type GetSitesSiteLineOutput struct{ *pulumi.OutputState }

func (GetSitesSiteLineOutput) ElementType

func (GetSitesSiteLineOutput) ElementType() reflect.Type

func (GetSitesSiteLineOutput) Id

The ID of the EIP line.

func (GetSitesSiteLineOutput) IpVersion

The supported IP version.

func (GetSitesSiteLineOutput) Name

The name of the EIP line.

func (GetSitesSiteLineOutput) Operator

The operator information of the EIP line.

func (GetSitesSiteLineOutput) ToGetSitesSiteLineOutput

func (o GetSitesSiteLineOutput) ToGetSitesSiteLineOutput() GetSitesSiteLineOutput

func (GetSitesSiteLineOutput) ToGetSitesSiteLineOutputWithContext

func (o GetSitesSiteLineOutput) ToGetSitesSiteLineOutputWithContext(ctx context.Context) GetSitesSiteLineOutput

type GetSitesSiteOutput

type GetSitesSiteOutput struct{ *pulumi.OutputState }

func (GetSitesSiteOutput) Area

Specifies the area of the IEC sites located.

func (GetSitesSiteOutput) City

Specifies the city of the IEC sites located.

func (GetSitesSiteOutput) ElementType

func (GetSitesSiteOutput) ElementType() reflect.Type

func (GetSitesSiteOutput) Id

The ID of the EIP line.

func (GetSitesSiteOutput) Lines

An array of one or more EIP lines. The object structure is documented below.

func (GetSitesSiteOutput) Name

The name of the EIP line.

func (GetSitesSiteOutput) Province

func (o GetSitesSiteOutput) Province() pulumi.StringOutput

Specifies the province of the IEC sites located.

func (GetSitesSiteOutput) Status

The status of the IEC service site.

func (GetSitesSiteOutput) ToGetSitesSiteOutput

func (o GetSitesSiteOutput) ToGetSitesSiteOutput() GetSitesSiteOutput

func (GetSitesSiteOutput) ToGetSitesSiteOutputWithContext

func (o GetSitesSiteOutput) ToGetSitesSiteOutputWithContext(ctx context.Context) GetSitesSiteOutput

type GetVpcSubnetsArgs

type GetVpcSubnetsArgs struct {
	// The region in which to obtain the subnets. If omitted, the provider-level region will be
	// used.
	Region *string `pulumi:"region"`
	// Specifies the ID of the IEC site.
	SiteId *string `pulumi:"siteId"`
	// Specifies the ID of the IEC VPC.
	VpcId string `pulumi:"vpcId"`
}

A collection of arguments for invoking getVpcSubnets.

type GetVpcSubnetsOutputArgs

type GetVpcSubnetsOutputArgs struct {
	// The region in which to obtain the subnets. If omitted, the provider-level region will be
	// used.
	Region pulumi.StringPtrInput `pulumi:"region"`
	// Specifies the ID of the IEC site.
	SiteId pulumi.StringPtrInput `pulumi:"siteId"`
	// Specifies the ID of the IEC VPC.
	VpcId pulumi.StringInput `pulumi:"vpcId"`
}

A collection of arguments for invoking getVpcSubnets.

func (GetVpcSubnetsOutputArgs) ElementType

func (GetVpcSubnetsOutputArgs) ElementType() reflect.Type

type GetVpcSubnetsResult

type GetVpcSubnetsResult struct {
	// The provider-assigned unique ID for this managed resource.
	Id     string `pulumi:"id"`
	Region string `pulumi:"region"`
	// Indicates the ID of the IEC site.
	SiteId *string `pulumi:"siteId"`
	// A list of all the subnets found. The object is documented below.
	Subnets []GetVpcSubnetsSubnet `pulumi:"subnets"`
	VpcId   string                `pulumi:"vpcId"`
}

A collection of values returned by getVpcSubnets.

func GetVpcSubnets

func GetVpcSubnets(ctx *pulumi.Context, args *GetVpcSubnetsArgs, opts ...pulumi.InvokeOption) (*GetVpcSubnetsResult, error)

Use this data source to get a list of subnets belong to a specific IEC VPC.

## Example Usage

```go package main

import (

"github.com/huaweicloud/pulumi-huaweicloud/sdk/go/huaweicloud/Iec"
"github.com/pulumi/pulumi-huaweicloud/sdk/go/huaweicloud/Iec"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		vpcId := cfg.RequireObject("vpcId")
		_, err := Iec.GetVpcSubnets(ctx, &iec.GetVpcSubnetsArgs{
			VpcId: vpcId,
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetVpcSubnetsResultOutput

type GetVpcSubnetsResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getVpcSubnets.

func (GetVpcSubnetsResultOutput) ElementType

func (GetVpcSubnetsResultOutput) ElementType() reflect.Type

func (GetVpcSubnetsResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetVpcSubnetsResultOutput) Region

func (GetVpcSubnetsResultOutput) SiteId

Indicates the ID of the IEC site.

func (GetVpcSubnetsResultOutput) Subnets

A list of all the subnets found. The object is documented below.

func (GetVpcSubnetsResultOutput) ToGetVpcSubnetsResultOutput

func (o GetVpcSubnetsResultOutput) ToGetVpcSubnetsResultOutput() GetVpcSubnetsResultOutput

func (GetVpcSubnetsResultOutput) ToGetVpcSubnetsResultOutputWithContext

func (o GetVpcSubnetsResultOutput) ToGetVpcSubnetsResultOutputWithContext(ctx context.Context) GetVpcSubnetsResultOutput

func (GetVpcSubnetsResultOutput) VpcId

type GetVpcSubnetsSubnet

type GetVpcSubnetsSubnet struct {
	// Indicates the cidr block of the subnet.
	Cidr string `pulumi:"cidr"`
	// Indicates the DNS server address list of the subnet.
	DnsLists []string `pulumi:"dnsLists"`
	// Indicates the gateway of the subnet.
	GatewayIp string `pulumi:"gatewayIp"`
	// Indicates the ID of the subnet.
	Id string `pulumi:"id"`
	// Indicates the name of the subnet.
	Name string `pulumi:"name"`
	// Specifies the ID of the IEC site.
	SiteId string `pulumi:"siteId"`
	// Indicates the located information of the iec site. It contains area, province and city.
	SiteInfo string `pulumi:"siteInfo"`
	// Indicates the status of the subnet.
	Status string `pulumi:"status"`
}

type GetVpcSubnetsSubnetArgs

type GetVpcSubnetsSubnetArgs struct {
	// Indicates the cidr block of the subnet.
	Cidr pulumi.StringInput `pulumi:"cidr"`
	// Indicates the DNS server address list of the subnet.
	DnsLists pulumi.StringArrayInput `pulumi:"dnsLists"`
	// Indicates the gateway of the subnet.
	GatewayIp pulumi.StringInput `pulumi:"gatewayIp"`
	// Indicates the ID of the subnet.
	Id pulumi.StringInput `pulumi:"id"`
	// Indicates the name of the subnet.
	Name pulumi.StringInput `pulumi:"name"`
	// Specifies the ID of the IEC site.
	SiteId pulumi.StringInput `pulumi:"siteId"`
	// Indicates the located information of the iec site. It contains area, province and city.
	SiteInfo pulumi.StringInput `pulumi:"siteInfo"`
	// Indicates the status of the subnet.
	Status pulumi.StringInput `pulumi:"status"`
}

func (GetVpcSubnetsSubnetArgs) ElementType

func (GetVpcSubnetsSubnetArgs) ElementType() reflect.Type

func (GetVpcSubnetsSubnetArgs) ToGetVpcSubnetsSubnetOutput

func (i GetVpcSubnetsSubnetArgs) ToGetVpcSubnetsSubnetOutput() GetVpcSubnetsSubnetOutput

func (GetVpcSubnetsSubnetArgs) ToGetVpcSubnetsSubnetOutputWithContext

func (i GetVpcSubnetsSubnetArgs) ToGetVpcSubnetsSubnetOutputWithContext(ctx context.Context) GetVpcSubnetsSubnetOutput

type GetVpcSubnetsSubnetArray

type GetVpcSubnetsSubnetArray []GetVpcSubnetsSubnetInput

func (GetVpcSubnetsSubnetArray) ElementType

func (GetVpcSubnetsSubnetArray) ElementType() reflect.Type

func (GetVpcSubnetsSubnetArray) ToGetVpcSubnetsSubnetArrayOutput

func (i GetVpcSubnetsSubnetArray) ToGetVpcSubnetsSubnetArrayOutput() GetVpcSubnetsSubnetArrayOutput

func (GetVpcSubnetsSubnetArray) ToGetVpcSubnetsSubnetArrayOutputWithContext

func (i GetVpcSubnetsSubnetArray) ToGetVpcSubnetsSubnetArrayOutputWithContext(ctx context.Context) GetVpcSubnetsSubnetArrayOutput

type GetVpcSubnetsSubnetArrayInput

type GetVpcSubnetsSubnetArrayInput interface {
	pulumi.Input

	ToGetVpcSubnetsSubnetArrayOutput() GetVpcSubnetsSubnetArrayOutput
	ToGetVpcSubnetsSubnetArrayOutputWithContext(context.Context) GetVpcSubnetsSubnetArrayOutput
}

GetVpcSubnetsSubnetArrayInput is an input type that accepts GetVpcSubnetsSubnetArray and GetVpcSubnetsSubnetArrayOutput values. You can construct a concrete instance of `GetVpcSubnetsSubnetArrayInput` via:

GetVpcSubnetsSubnetArray{ GetVpcSubnetsSubnetArgs{...} }

type GetVpcSubnetsSubnetArrayOutput

type GetVpcSubnetsSubnetArrayOutput struct{ *pulumi.OutputState }

func (GetVpcSubnetsSubnetArrayOutput) ElementType

func (GetVpcSubnetsSubnetArrayOutput) Index

func (GetVpcSubnetsSubnetArrayOutput) ToGetVpcSubnetsSubnetArrayOutput

func (o GetVpcSubnetsSubnetArrayOutput) ToGetVpcSubnetsSubnetArrayOutput() GetVpcSubnetsSubnetArrayOutput

func (GetVpcSubnetsSubnetArrayOutput) ToGetVpcSubnetsSubnetArrayOutputWithContext

func (o GetVpcSubnetsSubnetArrayOutput) ToGetVpcSubnetsSubnetArrayOutputWithContext(ctx context.Context) GetVpcSubnetsSubnetArrayOutput

type GetVpcSubnetsSubnetInput

type GetVpcSubnetsSubnetInput interface {
	pulumi.Input

	ToGetVpcSubnetsSubnetOutput() GetVpcSubnetsSubnetOutput
	ToGetVpcSubnetsSubnetOutputWithContext(context.Context) GetVpcSubnetsSubnetOutput
}

GetVpcSubnetsSubnetInput is an input type that accepts GetVpcSubnetsSubnetArgs and GetVpcSubnetsSubnetOutput values. You can construct a concrete instance of `GetVpcSubnetsSubnetInput` via:

GetVpcSubnetsSubnetArgs{...}

type GetVpcSubnetsSubnetOutput

type GetVpcSubnetsSubnetOutput struct{ *pulumi.OutputState }

func (GetVpcSubnetsSubnetOutput) Cidr

Indicates the cidr block of the subnet.

func (GetVpcSubnetsSubnetOutput) DnsLists

Indicates the DNS server address list of the subnet.

func (GetVpcSubnetsSubnetOutput) ElementType

func (GetVpcSubnetsSubnetOutput) ElementType() reflect.Type

func (GetVpcSubnetsSubnetOutput) GatewayIp

Indicates the gateway of the subnet.

func (GetVpcSubnetsSubnetOutput) Id

Indicates the ID of the subnet.

func (GetVpcSubnetsSubnetOutput) Name

Indicates the name of the subnet.

func (GetVpcSubnetsSubnetOutput) SiteId

Specifies the ID of the IEC site.

func (GetVpcSubnetsSubnetOutput) SiteInfo

Indicates the located information of the iec site. It contains area, province and city.

func (GetVpcSubnetsSubnetOutput) Status

Indicates the status of the subnet.

func (GetVpcSubnetsSubnetOutput) ToGetVpcSubnetsSubnetOutput

func (o GetVpcSubnetsSubnetOutput) ToGetVpcSubnetsSubnetOutput() GetVpcSubnetsSubnetOutput

func (GetVpcSubnetsSubnetOutput) ToGetVpcSubnetsSubnetOutputWithContext

func (o GetVpcSubnetsSubnetOutput) ToGetVpcSubnetsSubnetOutputWithContext(ctx context.Context) GetVpcSubnetsSubnetOutput

type Keypair

type Keypair struct {
	pulumi.CustomResourceState

	// The finger of iec keypair. The value contains a encoding type(SHA256) and a string of 43 characters.
	Fingerprint pulumi.StringOutput `pulumi:"fingerprint"`
	// Specifies a unique name for the keypair. This parameter can contain a maximum of
	// 64 characters, which may consist of letters, digits, underscores (_), and hyphens (-). Changing this parameter creates
	// a new keypair resource.
	Name pulumi.StringOutput `pulumi:"name"`
	// Specifies a pregenerated OpenSSH-formatted public key. Changing this
	// parameter creates a new keypair resource.
	PublicKey pulumi.StringOutput `pulumi:"publicKey"`
	// The region in which to create the keypair resource. If omitted, the
	// provider-level region will be used. Changing this creates a new resource.
	Region pulumi.StringOutput `pulumi:"region"`
}

Manages a keypair resource within HuaweiCloud IEC.

## Example Usage

```go package main

import (

"github.com/huaweicloud/pulumi-huaweicloud/sdk/go/huaweicloud/Iec"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := Iec.NewKeypair(ctx, "testKeypair", nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Keypairs can be imported using the `name`, e.g.

```sh

$ pulumi import huaweicloud:Iec/keypair:Keypair test_keypair iec-keypair-demo

```

func GetKeypair

func GetKeypair(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *KeypairState, opts ...pulumi.ResourceOption) (*Keypair, error)

GetKeypair gets an existing Keypair 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 NewKeypair

func NewKeypair(ctx *pulumi.Context,
	name string, args *KeypairArgs, opts ...pulumi.ResourceOption) (*Keypair, error)

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

func (*Keypair) ElementType

func (*Keypair) ElementType() reflect.Type

func (*Keypair) ToKeypairOutput

func (i *Keypair) ToKeypairOutput() KeypairOutput

func (*Keypair) ToKeypairOutputWithContext

func (i *Keypair) ToKeypairOutputWithContext(ctx context.Context) KeypairOutput

type KeypairArgs

type KeypairArgs struct {
	// Specifies a unique name for the keypair. This parameter can contain a maximum of
	// 64 characters, which may consist of letters, digits, underscores (_), and hyphens (-). Changing this parameter creates
	// a new keypair resource.
	Name pulumi.StringPtrInput
	// Specifies a pregenerated OpenSSH-formatted public key. Changing this
	// parameter creates a new keypair resource.
	PublicKey pulumi.StringPtrInput
	// The region in which to create the keypair resource. If omitted, the
	// provider-level region will be used. Changing this creates a new resource.
	Region pulumi.StringPtrInput
}

The set of arguments for constructing a Keypair resource.

func (KeypairArgs) ElementType

func (KeypairArgs) ElementType() reflect.Type

type KeypairArray

type KeypairArray []KeypairInput

func (KeypairArray) ElementType

func (KeypairArray) ElementType() reflect.Type

func (KeypairArray) ToKeypairArrayOutput

func (i KeypairArray) ToKeypairArrayOutput() KeypairArrayOutput

func (KeypairArray) ToKeypairArrayOutputWithContext

func (i KeypairArray) ToKeypairArrayOutputWithContext(ctx context.Context) KeypairArrayOutput

type KeypairArrayInput

type KeypairArrayInput interface {
	pulumi.Input

	ToKeypairArrayOutput() KeypairArrayOutput
	ToKeypairArrayOutputWithContext(context.Context) KeypairArrayOutput
}

KeypairArrayInput is an input type that accepts KeypairArray and KeypairArrayOutput values. You can construct a concrete instance of `KeypairArrayInput` via:

KeypairArray{ KeypairArgs{...} }

type KeypairArrayOutput

type KeypairArrayOutput struct{ *pulumi.OutputState }

func (KeypairArrayOutput) ElementType

func (KeypairArrayOutput) ElementType() reflect.Type

func (KeypairArrayOutput) Index

func (KeypairArrayOutput) ToKeypairArrayOutput

func (o KeypairArrayOutput) ToKeypairArrayOutput() KeypairArrayOutput

func (KeypairArrayOutput) ToKeypairArrayOutputWithContext

func (o KeypairArrayOutput) ToKeypairArrayOutputWithContext(ctx context.Context) KeypairArrayOutput

type KeypairInput

type KeypairInput interface {
	pulumi.Input

	ToKeypairOutput() KeypairOutput
	ToKeypairOutputWithContext(ctx context.Context) KeypairOutput
}

type KeypairMap

type KeypairMap map[string]KeypairInput

func (KeypairMap) ElementType

func (KeypairMap) ElementType() reflect.Type

func (KeypairMap) ToKeypairMapOutput

func (i KeypairMap) ToKeypairMapOutput() KeypairMapOutput

func (KeypairMap) ToKeypairMapOutputWithContext

func (i KeypairMap) ToKeypairMapOutputWithContext(ctx context.Context) KeypairMapOutput

type KeypairMapInput

type KeypairMapInput interface {
	pulumi.Input

	ToKeypairMapOutput() KeypairMapOutput
	ToKeypairMapOutputWithContext(context.Context) KeypairMapOutput
}

KeypairMapInput is an input type that accepts KeypairMap and KeypairMapOutput values. You can construct a concrete instance of `KeypairMapInput` via:

KeypairMap{ "key": KeypairArgs{...} }

type KeypairMapOutput

type KeypairMapOutput struct{ *pulumi.OutputState }

func (KeypairMapOutput) ElementType

func (KeypairMapOutput) ElementType() reflect.Type

func (KeypairMapOutput) MapIndex

func (KeypairMapOutput) ToKeypairMapOutput

func (o KeypairMapOutput) ToKeypairMapOutput() KeypairMapOutput

func (KeypairMapOutput) ToKeypairMapOutputWithContext

func (o KeypairMapOutput) ToKeypairMapOutputWithContext(ctx context.Context) KeypairMapOutput

type KeypairOutput

type KeypairOutput struct{ *pulumi.OutputState }

func (KeypairOutput) ElementType

func (KeypairOutput) ElementType() reflect.Type

func (KeypairOutput) Fingerprint

func (o KeypairOutput) Fingerprint() pulumi.StringOutput

The finger of iec keypair. The value contains a encoding type(SHA256) and a string of 43 characters.

func (KeypairOutput) Name

Specifies a unique name for the keypair. This parameter can contain a maximum of 64 characters, which may consist of letters, digits, underscores (_), and hyphens (-). Changing this parameter creates a new keypair resource.

func (KeypairOutput) PublicKey

func (o KeypairOutput) PublicKey() pulumi.StringOutput

Specifies a pregenerated OpenSSH-formatted public key. Changing this parameter creates a new keypair resource.

func (KeypairOutput) Region

func (o KeypairOutput) Region() pulumi.StringOutput

The region in which to create the keypair resource. If omitted, the provider-level region will be used. Changing this creates a new resource.

func (KeypairOutput) ToKeypairOutput

func (o KeypairOutput) ToKeypairOutput() KeypairOutput

func (KeypairOutput) ToKeypairOutputWithContext

func (o KeypairOutput) ToKeypairOutputWithContext(ctx context.Context) KeypairOutput

type KeypairState

type KeypairState struct {
	// The finger of iec keypair. The value contains a encoding type(SHA256) and a string of 43 characters.
	Fingerprint pulumi.StringPtrInput
	// Specifies a unique name for the keypair. This parameter can contain a maximum of
	// 64 characters, which may consist of letters, digits, underscores (_), and hyphens (-). Changing this parameter creates
	// a new keypair resource.
	Name pulumi.StringPtrInput
	// Specifies a pregenerated OpenSSH-formatted public key. Changing this
	// parameter creates a new keypair resource.
	PublicKey pulumi.StringPtrInput
	// The region in which to create the keypair resource. If omitted, the
	// provider-level region will be used. Changing this creates a new resource.
	Region pulumi.StringPtrInput
}

func (KeypairState) ElementType

func (KeypairState) ElementType() reflect.Type

type LookupKeypairArgs

type LookupKeypairArgs struct {
	// Specifies a unique name for the keypair. This parameter can contain a maximum of 64
	// characters, which may consist of letters, digits, underscores (_), and hyphens (-).
	Name string `pulumi:"name"`
}

A collection of arguments for invoking getKeypair.

type LookupKeypairOutputArgs

type LookupKeypairOutputArgs struct {
	// Specifies a unique name for the keypair. This parameter can contain a maximum of 64
	// characters, which may consist of letters, digits, underscores (_), and hyphens (-).
	Name pulumi.StringInput `pulumi:"name"`
}

A collection of arguments for invoking getKeypair.

func (LookupKeypairOutputArgs) ElementType

func (LookupKeypairOutputArgs) ElementType() reflect.Type

type LookupKeypairResult

type LookupKeypairResult struct {
	// The finger of iec keypair. The value contains a encoding type(SHA256) and a string of 43 characters.
	Fingerprint string `pulumi:"fingerprint"`
	// The provider-assigned unique ID for this managed resource.
	Id   string `pulumi:"id"`
	Name string `pulumi:"name"`
	// The pregenerated OpenSSH-formatted public key.
	PublicKey string `pulumi:"publicKey"`
}

A collection of values returned by getKeypair.

func LookupKeypair

func LookupKeypair(ctx *pulumi.Context, args *LookupKeypairArgs, opts ...pulumi.InvokeOption) (*LookupKeypairResult, error)

Use this data source to get the details of a specific IEC keypair.

## Example Usage

```go package main

import (

"github.com/huaweicloud/pulumi-huaweicloud/sdk/go/huaweicloud/Iec"
"github.com/pulumi/pulumi-huaweicloud/sdk/go/huaweicloud/Iec"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := Iec.GetKeypair(ctx, &iec.GetKeypairArgs{
			Name: "iec-keypair-demo",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupKeypairResultOutput

type LookupKeypairResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getKeypair.

func (LookupKeypairResultOutput) ElementType

func (LookupKeypairResultOutput) ElementType() reflect.Type

func (LookupKeypairResultOutput) Fingerprint

The finger of iec keypair. The value contains a encoding type(SHA256) and a string of 43 characters.

func (LookupKeypairResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (LookupKeypairResultOutput) Name

func (LookupKeypairResultOutput) PublicKey

The pregenerated OpenSSH-formatted public key.

func (LookupKeypairResultOutput) ToLookupKeypairResultOutput

func (o LookupKeypairResultOutput) ToLookupKeypairResultOutput() LookupKeypairResultOutput

func (LookupKeypairResultOutput) ToLookupKeypairResultOutputWithContext

func (o LookupKeypairResultOutput) ToLookupKeypairResultOutputWithContext(ctx context.Context) LookupKeypairResultOutput

type LookupSecurityGroupArgs

type LookupSecurityGroupArgs struct {
	// Specifies the name of the security group with a maximum of 64 characters.
	Name string `pulumi:"name"`
}

A collection of arguments for invoking getSecurityGroup.

type LookupSecurityGroupOutputArgs

type LookupSecurityGroupOutputArgs struct {
	// Specifies the name of the security group with a maximum of 64 characters.
	Name pulumi.StringInput `pulumi:"name"`
}

A collection of arguments for invoking getSecurityGroup.

func (LookupSecurityGroupOutputArgs) ElementType

type LookupSecurityGroupResult

type LookupSecurityGroupResult struct {
	// The description for the IEC security group rules.
	Description string `pulumi:"description"`
	// The provider-assigned unique ID for this managed resource.
	Id   string `pulumi:"id"`
	Name string `pulumi:"name"`
	// An Array of one or more security group rules. The object is documented below.
	SecurityGroupRules []GetSecurityGroupSecurityGroupRule `pulumi:"securityGroupRules"`
}

A collection of values returned by getSecurityGroup.

func LookupSecurityGroup

func LookupSecurityGroup(ctx *pulumi.Context, args *LookupSecurityGroupArgs, opts ...pulumi.InvokeOption) (*LookupSecurityGroupResult, error)

Use this data source to get the details of a specific IEC security group.

## Example Usage

```go package main

import (

"github.com/huaweicloud/pulumi-huaweicloud/sdk/go/huaweicloud/Iec"
"github.com/pulumi/pulumi-huaweicloud/sdk/go/huaweicloud/Iec"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		sgName := cfg.RequireObject("sgName")
		_, err := Iec.GetSecurityGroup(ctx, &iec.GetSecurityGroupArgs{
			Name: sgName,
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupSecurityGroupResultOutput

type LookupSecurityGroupResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getSecurityGroup.

func (LookupSecurityGroupResultOutput) Description

The description for the IEC security group rules.

func (LookupSecurityGroupResultOutput) ElementType

func (LookupSecurityGroupResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (LookupSecurityGroupResultOutput) Name

func (LookupSecurityGroupResultOutput) SecurityGroupRules

An Array of one or more security group rules. The object is documented below.

func (LookupSecurityGroupResultOutput) ToLookupSecurityGroupResultOutput

func (o LookupSecurityGroupResultOutput) ToLookupSecurityGroupResultOutput() LookupSecurityGroupResultOutput

func (LookupSecurityGroupResultOutput) ToLookupSecurityGroupResultOutputWithContext

func (o LookupSecurityGroupResultOutput) ToLookupSecurityGroupResultOutputWithContext(ctx context.Context) LookupSecurityGroupResultOutput

type LookupServerArgs

type LookupServerArgs struct {
	// Specifies the ID of the edgecloud service.
	EdgecloudId *string `pulumi:"edgecloudId"`
	// Specifies the IEC server name, which can be queried with a regular expression.
	Name string `pulumi:"name"`
	// Specifies the status of IEC server.
	Status *string `pulumi:"status"`
}

A collection of arguments for invoking getServer.

type LookupServerOutputArgs

type LookupServerOutputArgs struct {
	// Specifies the ID of the edgecloud service.
	EdgecloudId pulumi.StringPtrInput `pulumi:"edgecloudId"`
	// Specifies the IEC server name, which can be queried with a regular expression.
	Name pulumi.StringInput `pulumi:"name"`
	// Specifies the status of IEC server.
	Status pulumi.StringPtrInput `pulumi:"status"`
}

A collection of arguments for invoking getServer.

func (LookupServerOutputArgs) ElementType

func (LookupServerOutputArgs) ElementType() reflect.Type

type LookupServerResult

type LookupServerResult struct {
	// An array of site ID and operator for the IEC server. The object structure is documented below.
	CoverageSites []GetServerCoverageSite `pulumi:"coverageSites"`
	EdgecloudId   string                  `pulumi:"edgecloudId"`
	// The Name of the edgecloud service.
	EdgecloudName string `pulumi:"edgecloudName"`
	// The flavor ID of the IEC server.
	FlavorId string `pulumi:"flavorId"`
	// The flavor name of the IEC server.
	FlavorName string `pulumi:"flavorName"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// The image ID of the IEC server.
	ImageId string `pulumi:"imageId"`
	// The image name of the IEC server.
	ImageName string `pulumi:"imageName"`
	// The name of a key pair to put on the IEC server.
	KeyPair string `pulumi:"keyPair"`
	Name    string `pulumi:"name"`
	// An array of one or more networks to attach to the IEC server. The object structure is documented below.
	Nics []GetServerNic `pulumi:"nics"`
	// The EIP address that is associted to the IEC server.
	PublicIp string `pulumi:"publicIp"`
	// An array of one or more security group IDs to associate with the IEC server.
	SecurityGroups []string `pulumi:"securityGroups"`
	Status         string   `pulumi:"status"`
	// The system disk voume ID.
	SystemDiskId string `pulumi:"systemDiskId"`
	// The user data (information after encoding) configured during IEC server creation.
	UserData string `pulumi:"userData"`
	// An array of one or more disks to attach to the IEC server. The object structure is documented
	// below.
	VolumeAttacheds []GetServerVolumeAttached `pulumi:"volumeAttacheds"`
	// The ID of vpc for the IEC server.
	VpcId string `pulumi:"vpcId"`
}

A collection of values returned by getServer.

func LookupServer

func LookupServer(ctx *pulumi.Context, args *LookupServerArgs, opts ...pulumi.InvokeOption) (*LookupServerResult, error)

Use this data source to get the details of a specified IEC server.

## Example Usage

```go package main

import (

"github.com/huaweicloud/pulumi-huaweicloud/sdk/go/huaweicloud/Iec"
"github.com/pulumi/pulumi-huaweicloud/sdk/go/huaweicloud/Iec"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		serverName := cfg.RequireObject("serverName")
		_, err := Iec.GetServer(ctx, &iec.GetServerArgs{
			Name: serverName,
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupServerResultOutput

type LookupServerResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getServer.

func (LookupServerResultOutput) CoverageSites

An array of site ID and operator for the IEC server. The object structure is documented below.

func (LookupServerResultOutput) EdgecloudId

func (LookupServerResultOutput) EdgecloudName

func (o LookupServerResultOutput) EdgecloudName() pulumi.StringOutput

The Name of the edgecloud service.

func (LookupServerResultOutput) ElementType

func (LookupServerResultOutput) ElementType() reflect.Type

func (LookupServerResultOutput) FlavorId

The flavor ID of the IEC server.

func (LookupServerResultOutput) FlavorName

The flavor name of the IEC server.

func (LookupServerResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (LookupServerResultOutput) ImageId

The image ID of the IEC server.

func (LookupServerResultOutput) ImageName

The image name of the IEC server.

func (LookupServerResultOutput) KeyPair

The name of a key pair to put on the IEC server.

func (LookupServerResultOutput) Name

func (LookupServerResultOutput) Nics

An array of one or more networks to attach to the IEC server. The object structure is documented below.

func (LookupServerResultOutput) PublicIp

The EIP address that is associted to the IEC server.

func (LookupServerResultOutput) SecurityGroups

An array of one or more security group IDs to associate with the IEC server.

func (LookupServerResultOutput) Status

func (LookupServerResultOutput) SystemDiskId

func (o LookupServerResultOutput) SystemDiskId() pulumi.StringOutput

The system disk voume ID.

func (LookupServerResultOutput) ToLookupServerResultOutput

func (o LookupServerResultOutput) ToLookupServerResultOutput() LookupServerResultOutput

func (LookupServerResultOutput) ToLookupServerResultOutputWithContext

func (o LookupServerResultOutput) ToLookupServerResultOutputWithContext(ctx context.Context) LookupServerResultOutput

func (LookupServerResultOutput) UserData

The user data (information after encoding) configured during IEC server creation.

func (LookupServerResultOutput) VolumeAttacheds

An array of one or more disks to attach to the IEC server. The object structure is documented below.

func (LookupServerResultOutput) VpcId

The ID of vpc for the IEC server.

type LookupVpcArgs

type LookupVpcArgs struct {
	// Specifies the ID of the IEC VPC to retrieve.
	Id *string `pulumi:"id"`
	// Specifies the name of the IEC VPC. The name can contain a maximum of 64 characters. Only
	// letters, digits, underscores (_), hyphens (-), and periods (.) are allowed.
	Name *string `pulumi:"name"`
	// Specifies the region in which to obtain the vpc. If omitted, the provider-level region
	// will be used.
	Region *string `pulumi:"region"`
}

A collection of arguments for invoking getVpc.

type LookupVpcOutputArgs

type LookupVpcOutputArgs struct {
	// Specifies the ID of the IEC VPC to retrieve.
	Id pulumi.StringPtrInput `pulumi:"id"`
	// Specifies the name of the IEC VPC. The name can contain a maximum of 64 characters. Only
	// letters, digits, underscores (_), hyphens (-), and periods (.) are allowed.
	Name pulumi.StringPtrInput `pulumi:"name"`
	// Specifies the region in which to obtain the vpc. If omitted, the provider-level region
	// will be used.
	Region pulumi.StringPtrInput `pulumi:"region"`
}

A collection of arguments for invoking getVpc.

func (LookupVpcOutputArgs) ElementType

func (LookupVpcOutputArgs) ElementType() reflect.Type

type LookupVpcResult

type LookupVpcResult struct {
	// Indicates the IP address range for the VPC.
	Cidr string `pulumi:"cidr"`
	Id   string `pulumi:"id"`
	// Indicates the mode of the IEC VPC. Possible values are *SYSTEM* and *CUSTOMER*.
	Mode   string `pulumi:"mode"`
	Name   string `pulumi:"name"`
	Region string `pulumi:"region"`
	// Indicates the number of subnets.
	SubnetNum int `pulumi:"subnetNum"`
}

A collection of values returned by getVpc.

func LookupVpc

func LookupVpc(ctx *pulumi.Context, args *LookupVpcArgs, opts ...pulumi.InvokeOption) (*LookupVpcResult, error)

Use this data source to get the details of a specific IEC VPC.

## Example Usage

```go package main

import (

"github.com/huaweicloud/pulumi-huaweicloud/sdk/go/huaweicloud/Iec"
"github.com/pulumi/pulumi-huaweicloud/sdk/go/huaweicloud/Iec"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		vpcName := cfg.RequireObject("vpcName")
		_, err := Iec.GetVpc(ctx, &iec.GetVpcArgs{
			Name: pulumi.StringRef(vpcName),
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupVpcResultOutput

type LookupVpcResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getVpc.

func (LookupVpcResultOutput) Cidr

Indicates the IP address range for the VPC.

func (LookupVpcResultOutput) ElementType

func (LookupVpcResultOutput) ElementType() reflect.Type

func (LookupVpcResultOutput) Id

func (LookupVpcResultOutput) Mode

Indicates the mode of the IEC VPC. Possible values are *SYSTEM* and *CUSTOMER*.

func (LookupVpcResultOutput) Name

func (LookupVpcResultOutput) Region

func (LookupVpcResultOutput) SubnetNum

func (o LookupVpcResultOutput) SubnetNum() pulumi.IntOutput

Indicates the number of subnets.

func (LookupVpcResultOutput) ToLookupVpcResultOutput

func (o LookupVpcResultOutput) ToLookupVpcResultOutput() LookupVpcResultOutput

func (LookupVpcResultOutput) ToLookupVpcResultOutputWithContext

func (o LookupVpcResultOutput) ToLookupVpcResultOutputWithContext(ctx context.Context) LookupVpcResultOutput

type NetworkAcl

type NetworkAcl struct {
	pulumi.CustomResourceState

	// Specifies the supplementary information about the iec network ACL. This parameter
	// can contain a maximum of 255 characters and cannot contain angle brackets (< or >).
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// A list of the IDs of ingress rules associated with the iec network ACL.
	InboundRules pulumi.StringArrayOutput `pulumi:"inboundRules"`
	// Specifies the iec network ACL name. This parameter can contain a maximum of 64 characters,
	// which may consist of letters, digits, dot (.), underscores (_), and hyphens (-).
	Name pulumi.StringOutput `pulumi:"name"`
	// Specifies an list of one or more networks. The networks object structure is documented
	// below.
	Networks NetworkAclNetworkArrayOutput `pulumi:"networks"`
	// A list of the IDs of egress rules associated with the iec network ACL.
	OutboundRules pulumi.StringArrayOutput `pulumi:"outboundRules"`
	// The status of the iec network ACL.
	Status pulumi.StringOutput `pulumi:"status"`
}

Manages a network ACL resource within HuaweiCloud IEC.

## Example Usage

```go package main

import (

"github.com/huaweicloud/pulumi-huaweicloud/sdk/go/huaweicloud/Iec"
"github.com/pulumi/pulumi-huaweicloud/sdk/go/huaweicloud/Iec"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		iecVpcId := cfg.RequireObject("iecVpcId")
		iecSubnetId := cfg.RequireObject("iecSubnetId")
		_, err := Iec.NewNetworkAcl(ctx, "aclTest", &Iec.NetworkAclArgs{
			Description: pulumi.String("This is a network ACL of IEC with networks."),
			Networks: iec.NetworkAclNetworkArray{
				&iec.NetworkAclNetworkArgs{
					VpcId:    pulumi.Any(iecVpcId),
					SubnetId: pulumi.Any(iecSubnetId),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Network ACL can be imported using the `id`, e.g.

```sh

$ pulumi import huaweicloud:Iec/networkAcl:NetworkAcl acl_test 40b1159c-4e6e-11eb-a00e-fa165c365e51

```

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

func (*NetworkAcl) ElementType() reflect.Type

func (*NetworkAcl) ToNetworkAclOutput

func (i *NetworkAcl) ToNetworkAclOutput() NetworkAclOutput

func (*NetworkAcl) ToNetworkAclOutputWithContext

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

type NetworkAclArgs

type NetworkAclArgs struct {
	// Specifies the supplementary information about the iec network ACL. This parameter
	// can contain a maximum of 255 characters and cannot contain angle brackets (< or >).
	Description pulumi.StringPtrInput
	// Specifies the iec network ACL name. This parameter can contain a maximum of 64 characters,
	// which may consist of letters, digits, dot (.), underscores (_), and hyphens (-).
	Name pulumi.StringPtrInput
	// Specifies an list of one or more networks. The networks object structure is documented
	// below.
	Networks NetworkAclNetworkArrayInput
}

The set of arguments for constructing a NetworkAcl resource.

func (NetworkAclArgs) ElementType

func (NetworkAclArgs) ElementType() reflect.Type

type NetworkAclArray

type NetworkAclArray []NetworkAclInput

func (NetworkAclArray) ElementType

func (NetworkAclArray) ElementType() reflect.Type

func (NetworkAclArray) ToNetworkAclArrayOutput

func (i NetworkAclArray) ToNetworkAclArrayOutput() NetworkAclArrayOutput

func (NetworkAclArray) ToNetworkAclArrayOutputWithContext

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

type NetworkAclArrayInput

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

type NetworkAclArrayOutput struct{ *pulumi.OutputState }

func (NetworkAclArrayOutput) ElementType

func (NetworkAclArrayOutput) ElementType() reflect.Type

func (NetworkAclArrayOutput) Index

func (NetworkAclArrayOutput) ToNetworkAclArrayOutput

func (o NetworkAclArrayOutput) ToNetworkAclArrayOutput() NetworkAclArrayOutput

func (NetworkAclArrayOutput) ToNetworkAclArrayOutputWithContext

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

type NetworkAclInput

type NetworkAclInput interface {
	pulumi.Input

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

type NetworkAclMap

type NetworkAclMap map[string]NetworkAclInput

func (NetworkAclMap) ElementType

func (NetworkAclMap) ElementType() reflect.Type

func (NetworkAclMap) ToNetworkAclMapOutput

func (i NetworkAclMap) ToNetworkAclMapOutput() NetworkAclMapOutput

func (NetworkAclMap) ToNetworkAclMapOutputWithContext

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

type NetworkAclMapInput

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

type NetworkAclMapOutput struct{ *pulumi.OutputState }

func (NetworkAclMapOutput) ElementType

func (NetworkAclMapOutput) ElementType() reflect.Type

func (NetworkAclMapOutput) MapIndex

func (NetworkAclMapOutput) ToNetworkAclMapOutput

func (o NetworkAclMapOutput) ToNetworkAclMapOutput() NetworkAclMapOutput

func (NetworkAclMapOutput) ToNetworkAclMapOutputWithContext

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

type NetworkAclNetwork

type NetworkAclNetwork struct {
	// Specifies the id of the iec subnet.
	SubnetId string `pulumi:"subnetId"`
	// Specifies the id of the iec vpc.
	VpcId string `pulumi:"vpcId"`
}

type NetworkAclNetworkArgs

type NetworkAclNetworkArgs struct {
	// Specifies the id of the iec subnet.
	SubnetId pulumi.StringInput `pulumi:"subnetId"`
	// Specifies the id of the iec vpc.
	VpcId pulumi.StringInput `pulumi:"vpcId"`
}

func (NetworkAclNetworkArgs) ElementType

func (NetworkAclNetworkArgs) ElementType() reflect.Type

func (NetworkAclNetworkArgs) ToNetworkAclNetworkOutput

func (i NetworkAclNetworkArgs) ToNetworkAclNetworkOutput() NetworkAclNetworkOutput

func (NetworkAclNetworkArgs) ToNetworkAclNetworkOutputWithContext

func (i NetworkAclNetworkArgs) ToNetworkAclNetworkOutputWithContext(ctx context.Context) NetworkAclNetworkOutput

type NetworkAclNetworkArray

type NetworkAclNetworkArray []NetworkAclNetworkInput

func (NetworkAclNetworkArray) ElementType

func (NetworkAclNetworkArray) ElementType() reflect.Type

func (NetworkAclNetworkArray) ToNetworkAclNetworkArrayOutput

func (i NetworkAclNetworkArray) ToNetworkAclNetworkArrayOutput() NetworkAclNetworkArrayOutput

func (NetworkAclNetworkArray) ToNetworkAclNetworkArrayOutputWithContext

func (i NetworkAclNetworkArray) ToNetworkAclNetworkArrayOutputWithContext(ctx context.Context) NetworkAclNetworkArrayOutput

type NetworkAclNetworkArrayInput

type NetworkAclNetworkArrayInput interface {
	pulumi.Input

	ToNetworkAclNetworkArrayOutput() NetworkAclNetworkArrayOutput
	ToNetworkAclNetworkArrayOutputWithContext(context.Context) NetworkAclNetworkArrayOutput
}

NetworkAclNetworkArrayInput is an input type that accepts NetworkAclNetworkArray and NetworkAclNetworkArrayOutput values. You can construct a concrete instance of `NetworkAclNetworkArrayInput` via:

NetworkAclNetworkArray{ NetworkAclNetworkArgs{...} }

type NetworkAclNetworkArrayOutput

type NetworkAclNetworkArrayOutput struct{ *pulumi.OutputState }

func (NetworkAclNetworkArrayOutput) ElementType

func (NetworkAclNetworkArrayOutput) Index

func (NetworkAclNetworkArrayOutput) ToNetworkAclNetworkArrayOutput

func (o NetworkAclNetworkArrayOutput) ToNetworkAclNetworkArrayOutput() NetworkAclNetworkArrayOutput

func (NetworkAclNetworkArrayOutput) ToNetworkAclNetworkArrayOutputWithContext

func (o NetworkAclNetworkArrayOutput) ToNetworkAclNetworkArrayOutputWithContext(ctx context.Context) NetworkAclNetworkArrayOutput

type NetworkAclNetworkInput

type NetworkAclNetworkInput interface {
	pulumi.Input

	ToNetworkAclNetworkOutput() NetworkAclNetworkOutput
	ToNetworkAclNetworkOutputWithContext(context.Context) NetworkAclNetworkOutput
}

NetworkAclNetworkInput is an input type that accepts NetworkAclNetworkArgs and NetworkAclNetworkOutput values. You can construct a concrete instance of `NetworkAclNetworkInput` via:

NetworkAclNetworkArgs{...}

type NetworkAclNetworkOutput

type NetworkAclNetworkOutput struct{ *pulumi.OutputState }

func (NetworkAclNetworkOutput) ElementType

func (NetworkAclNetworkOutput) ElementType() reflect.Type

func (NetworkAclNetworkOutput) SubnetId

Specifies the id of the iec subnet.

func (NetworkAclNetworkOutput) ToNetworkAclNetworkOutput

func (o NetworkAclNetworkOutput) ToNetworkAclNetworkOutput() NetworkAclNetworkOutput

func (NetworkAclNetworkOutput) ToNetworkAclNetworkOutputWithContext

func (o NetworkAclNetworkOutput) ToNetworkAclNetworkOutputWithContext(ctx context.Context) NetworkAclNetworkOutput

func (NetworkAclNetworkOutput) VpcId

Specifies the id of the iec vpc.

type NetworkAclOutput

type NetworkAclOutput struct{ *pulumi.OutputState }

func (NetworkAclOutput) Description

func (o NetworkAclOutput) Description() pulumi.StringPtrOutput

Specifies the supplementary information about the iec network ACL. This parameter can contain a maximum of 255 characters and cannot contain angle brackets (< or >).

func (NetworkAclOutput) ElementType

func (NetworkAclOutput) ElementType() reflect.Type

func (NetworkAclOutput) InboundRules

func (o NetworkAclOutput) InboundRules() pulumi.StringArrayOutput

A list of the IDs of ingress rules associated with the iec network ACL.

func (NetworkAclOutput) Name

Specifies the iec network ACL name. This parameter can contain a maximum of 64 characters, which may consist of letters, digits, dot (.), underscores (_), and hyphens (-).

func (NetworkAclOutput) Networks

Specifies an list of one or more networks. The networks object structure is documented below.

func (NetworkAclOutput) OutboundRules

func (o NetworkAclOutput) OutboundRules() pulumi.StringArrayOutput

A list of the IDs of egress rules associated with the iec network ACL.

func (NetworkAclOutput) Status

The status of the iec network ACL.

func (NetworkAclOutput) ToNetworkAclOutput

func (o NetworkAclOutput) ToNetworkAclOutput() NetworkAclOutput

func (NetworkAclOutput) ToNetworkAclOutputWithContext

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

type NetworkAclRule

type NetworkAclRule struct {
	pulumi.CustomResourceState

	// Specifies the action in the iec network ACL rule. Currently, the value can be *allow*
	// or *deny*.
	Action pulumi.StringPtrOutput `pulumi:"action"`
	// Specifies the description for the iec network ACL rule.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// Specifies the destination IP address to which the traffic is allowed.
	// The default value is *0.0.0.0/0*. For example: xxx.xxx.xxx.xxx (IP address), xxx.xxx.xxx.0/24 (CIDR block).
	DestinationIpAddress pulumi.StringPtrOutput `pulumi:"destinationIpAddress"`
	// Specifies the destination port number or port number range. The value ranges
	// from 1 to 65535. For a port number range, enter two port numbers connected by a hyphen (-). For example, 1-100.
	DestinationPort pulumi.StringPtrOutput `pulumi:"destinationPort"`
	// Specifies the direction of the rule, valid values are *ingress* or *egress*
	// . Changing this parameter creates a new iec network ACL rule resource.
	Direction pulumi.StringOutput `pulumi:"direction"`
	// Specifies the Enabled status for the iec network ACL rule. The default value is true.
	Enabled pulumi.BoolPtrOutput `pulumi:"enabled"`
	// The version of elastic IP address. IEC services only support IPv4(4) now.
	IpVersion pulumi.IntPtrOutput `pulumi:"ipVersion"`
	// Specifies a unique id for the iec network ACL.
	NetworkAclId pulumi.StringOutput `pulumi:"networkAclId"`
	// The ID of the firewall policy for the iec network ACL.
	PolicyId pulumi.StringOutput `pulumi:"policyId"`
	// Specifies the protocol supported by the iec network ACL rule. Valid values are: *tcp*
	// , *udp*, *icmp* and *any*.
	Protocol pulumi.StringPtrOutput `pulumi:"protocol"`
	// Specifies the source IP address that the traffic is allowed from. The default
	// value is *0.0.0.0/0*. For example:
	// xxx.xxx.xxx.xxx (IP address), xxx.xxx.xxx.0/24 (CIDR block).
	SourceIpAddress pulumi.StringPtrOutput `pulumi:"sourceIpAddress"`
	// Specifies the source port number or port number range. The value ranges from 1 to
	// 65535. For a port number range, enter two port numbers connected by a hyphen (-). For example, 1-100.
	SourcePort pulumi.StringPtrOutput `pulumi:"sourcePort"`
}

Manages a network ACL rule resource within HuaweiCloud IEC.

## Example Usage

```go package main

import (

"github.com/huaweicloud/pulumi-huaweicloud/sdk/go/huaweicloud/Iec"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		aclTest, err := Iec.NewNetworkAcl(ctx, "aclTest", nil)
		if err != nil {
			return err
		}
		_, err = Iec.NewNetworkAclRule(ctx, "ruleTest", &Iec.NetworkAclRuleArgs{
			NetworkAclId:         aclTest.ID(),
			Direction:            pulumi.String("ingress"),
			Protocol:             pulumi.String("tcp"),
			Action:               pulumi.String("allow"),
			SourceIpAddress:      pulumi.String("152.16.30.0/24"),
			DestinationIpAddress: pulumi.String("192.168.128.0/18"),
			DestinationPort:      pulumi.String("445"),
			Enabled:              pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetNetworkAclRule

func GetNetworkAclRule(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *NetworkAclRuleState, opts ...pulumi.ResourceOption) (*NetworkAclRule, error)

GetNetworkAclRule gets an existing NetworkAclRule 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 NewNetworkAclRule

func NewNetworkAclRule(ctx *pulumi.Context,
	name string, args *NetworkAclRuleArgs, opts ...pulumi.ResourceOption) (*NetworkAclRule, error)

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

func (*NetworkAclRule) ElementType

func (*NetworkAclRule) ElementType() reflect.Type

func (*NetworkAclRule) ToNetworkAclRuleOutput

func (i *NetworkAclRule) ToNetworkAclRuleOutput() NetworkAclRuleOutput

func (*NetworkAclRule) ToNetworkAclRuleOutputWithContext

func (i *NetworkAclRule) ToNetworkAclRuleOutputWithContext(ctx context.Context) NetworkAclRuleOutput

type NetworkAclRuleArgs

type NetworkAclRuleArgs struct {
	// Specifies the action in the iec network ACL rule. Currently, the value can be *allow*
	// or *deny*.
	Action pulumi.StringPtrInput
	// Specifies the description for the iec network ACL rule.
	Description pulumi.StringPtrInput
	// Specifies the destination IP address to which the traffic is allowed.
	// The default value is *0.0.0.0/0*. For example: xxx.xxx.xxx.xxx (IP address), xxx.xxx.xxx.0/24 (CIDR block).
	DestinationIpAddress pulumi.StringPtrInput
	// Specifies the destination port number or port number range. The value ranges
	// from 1 to 65535. For a port number range, enter two port numbers connected by a hyphen (-). For example, 1-100.
	DestinationPort pulumi.StringPtrInput
	// Specifies the direction of the rule, valid values are *ingress* or *egress*
	// . Changing this parameter creates a new iec network ACL rule resource.
	Direction pulumi.StringInput
	// Specifies the Enabled status for the iec network ACL rule. The default value is true.
	Enabled pulumi.BoolPtrInput
	// The version of elastic IP address. IEC services only support IPv4(4) now.
	IpVersion pulumi.IntPtrInput
	// Specifies a unique id for the iec network ACL.
	NetworkAclId pulumi.StringInput
	// Specifies the protocol supported by the iec network ACL rule. Valid values are: *tcp*
	// , *udp*, *icmp* and *any*.
	Protocol pulumi.StringPtrInput
	// Specifies the source IP address that the traffic is allowed from. The default
	// value is *0.0.0.0/0*. For example:
	// xxx.xxx.xxx.xxx (IP address), xxx.xxx.xxx.0/24 (CIDR block).
	SourceIpAddress pulumi.StringPtrInput
	// Specifies the source port number or port number range. The value ranges from 1 to
	// 65535. For a port number range, enter two port numbers connected by a hyphen (-). For example, 1-100.
	SourcePort pulumi.StringPtrInput
}

The set of arguments for constructing a NetworkAclRule resource.

func (NetworkAclRuleArgs) ElementType

func (NetworkAclRuleArgs) ElementType() reflect.Type

type NetworkAclRuleArray

type NetworkAclRuleArray []NetworkAclRuleInput

func (NetworkAclRuleArray) ElementType

func (NetworkAclRuleArray) ElementType() reflect.Type

func (NetworkAclRuleArray) ToNetworkAclRuleArrayOutput

func (i NetworkAclRuleArray) ToNetworkAclRuleArrayOutput() NetworkAclRuleArrayOutput

func (NetworkAclRuleArray) ToNetworkAclRuleArrayOutputWithContext

func (i NetworkAclRuleArray) ToNetworkAclRuleArrayOutputWithContext(ctx context.Context) NetworkAclRuleArrayOutput

type NetworkAclRuleArrayInput

type NetworkAclRuleArrayInput interface {
	pulumi.Input

	ToNetworkAclRuleArrayOutput() NetworkAclRuleArrayOutput
	ToNetworkAclRuleArrayOutputWithContext(context.Context) NetworkAclRuleArrayOutput
}

NetworkAclRuleArrayInput is an input type that accepts NetworkAclRuleArray and NetworkAclRuleArrayOutput values. You can construct a concrete instance of `NetworkAclRuleArrayInput` via:

NetworkAclRuleArray{ NetworkAclRuleArgs{...} }

type NetworkAclRuleArrayOutput

type NetworkAclRuleArrayOutput struct{ *pulumi.OutputState }

func (NetworkAclRuleArrayOutput) ElementType

func (NetworkAclRuleArrayOutput) ElementType() reflect.Type

func (NetworkAclRuleArrayOutput) Index

func (NetworkAclRuleArrayOutput) ToNetworkAclRuleArrayOutput

func (o NetworkAclRuleArrayOutput) ToNetworkAclRuleArrayOutput() NetworkAclRuleArrayOutput

func (NetworkAclRuleArrayOutput) ToNetworkAclRuleArrayOutputWithContext

func (o NetworkAclRuleArrayOutput) ToNetworkAclRuleArrayOutputWithContext(ctx context.Context) NetworkAclRuleArrayOutput

type NetworkAclRuleInput

type NetworkAclRuleInput interface {
	pulumi.Input

	ToNetworkAclRuleOutput() NetworkAclRuleOutput
	ToNetworkAclRuleOutputWithContext(ctx context.Context) NetworkAclRuleOutput
}

type NetworkAclRuleMap

type NetworkAclRuleMap map[string]NetworkAclRuleInput

func (NetworkAclRuleMap) ElementType

func (NetworkAclRuleMap) ElementType() reflect.Type

func (NetworkAclRuleMap) ToNetworkAclRuleMapOutput

func (i NetworkAclRuleMap) ToNetworkAclRuleMapOutput() NetworkAclRuleMapOutput

func (NetworkAclRuleMap) ToNetworkAclRuleMapOutputWithContext

func (i NetworkAclRuleMap) ToNetworkAclRuleMapOutputWithContext(ctx context.Context) NetworkAclRuleMapOutput

type NetworkAclRuleMapInput

type NetworkAclRuleMapInput interface {
	pulumi.Input

	ToNetworkAclRuleMapOutput() NetworkAclRuleMapOutput
	ToNetworkAclRuleMapOutputWithContext(context.Context) NetworkAclRuleMapOutput
}

NetworkAclRuleMapInput is an input type that accepts NetworkAclRuleMap and NetworkAclRuleMapOutput values. You can construct a concrete instance of `NetworkAclRuleMapInput` via:

NetworkAclRuleMap{ "key": NetworkAclRuleArgs{...} }

type NetworkAclRuleMapOutput

type NetworkAclRuleMapOutput struct{ *pulumi.OutputState }

func (NetworkAclRuleMapOutput) ElementType

func (NetworkAclRuleMapOutput) ElementType() reflect.Type

func (NetworkAclRuleMapOutput) MapIndex

func (NetworkAclRuleMapOutput) ToNetworkAclRuleMapOutput

func (o NetworkAclRuleMapOutput) ToNetworkAclRuleMapOutput() NetworkAclRuleMapOutput

func (NetworkAclRuleMapOutput) ToNetworkAclRuleMapOutputWithContext

func (o NetworkAclRuleMapOutput) ToNetworkAclRuleMapOutputWithContext(ctx context.Context) NetworkAclRuleMapOutput

type NetworkAclRuleOutput

type NetworkAclRuleOutput struct{ *pulumi.OutputState }

func (NetworkAclRuleOutput) Action

Specifies the action in the iec network ACL rule. Currently, the value can be *allow* or *deny*.

func (NetworkAclRuleOutput) Description

Specifies the description for the iec network ACL rule.

func (NetworkAclRuleOutput) DestinationIpAddress

func (o NetworkAclRuleOutput) DestinationIpAddress() pulumi.StringPtrOutput

Specifies the destination IP address to which the traffic is allowed. The default value is *0.0.0.0/0*. For example: xxx.xxx.xxx.xxx (IP address), xxx.xxx.xxx.0/24 (CIDR block).

func (NetworkAclRuleOutput) DestinationPort

func (o NetworkAclRuleOutput) DestinationPort() pulumi.StringPtrOutput

Specifies the destination port number or port number range. The value ranges from 1 to 65535. For a port number range, enter two port numbers connected by a hyphen (-). For example, 1-100.

func (NetworkAclRuleOutput) Direction

Specifies the direction of the rule, valid values are *ingress* or *egress* . Changing this parameter creates a new iec network ACL rule resource.

func (NetworkAclRuleOutput) ElementType

func (NetworkAclRuleOutput) ElementType() reflect.Type

func (NetworkAclRuleOutput) Enabled

Specifies the Enabled status for the iec network ACL rule. The default value is true.

func (NetworkAclRuleOutput) IpVersion

The version of elastic IP address. IEC services only support IPv4(4) now.

func (NetworkAclRuleOutput) NetworkAclId

func (o NetworkAclRuleOutput) NetworkAclId() pulumi.StringOutput

Specifies a unique id for the iec network ACL.

func (NetworkAclRuleOutput) PolicyId

The ID of the firewall policy for the iec network ACL.

func (NetworkAclRuleOutput) Protocol

Specifies the protocol supported by the iec network ACL rule. Valid values are: *tcp* , *udp*, *icmp* and *any*.

func (NetworkAclRuleOutput) SourceIpAddress

func (o NetworkAclRuleOutput) SourceIpAddress() pulumi.StringPtrOutput

Specifies the source IP address that the traffic is allowed from. The default value is *0.0.0.0/0*. For example: xxx.xxx.xxx.xxx (IP address), xxx.xxx.xxx.0/24 (CIDR block).

func (NetworkAclRuleOutput) SourcePort

Specifies the source port number or port number range. The value ranges from 1 to 65535. For a port number range, enter two port numbers connected by a hyphen (-). For example, 1-100.

func (NetworkAclRuleOutput) ToNetworkAclRuleOutput

func (o NetworkAclRuleOutput) ToNetworkAclRuleOutput() NetworkAclRuleOutput

func (NetworkAclRuleOutput) ToNetworkAclRuleOutputWithContext

func (o NetworkAclRuleOutput) ToNetworkAclRuleOutputWithContext(ctx context.Context) NetworkAclRuleOutput

type NetworkAclRuleState

type NetworkAclRuleState struct {
	// Specifies the action in the iec network ACL rule. Currently, the value can be *allow*
	// or *deny*.
	Action pulumi.StringPtrInput
	// Specifies the description for the iec network ACL rule.
	Description pulumi.StringPtrInput
	// Specifies the destination IP address to which the traffic is allowed.
	// The default value is *0.0.0.0/0*. For example: xxx.xxx.xxx.xxx (IP address), xxx.xxx.xxx.0/24 (CIDR block).
	DestinationIpAddress pulumi.StringPtrInput
	// Specifies the destination port number or port number range. The value ranges
	// from 1 to 65535. For a port number range, enter two port numbers connected by a hyphen (-). For example, 1-100.
	DestinationPort pulumi.StringPtrInput
	// Specifies the direction of the rule, valid values are *ingress* or *egress*
	// . Changing this parameter creates a new iec network ACL rule resource.
	Direction pulumi.StringPtrInput
	// Specifies the Enabled status for the iec network ACL rule. The default value is true.
	Enabled pulumi.BoolPtrInput
	// The version of elastic IP address. IEC services only support IPv4(4) now.
	IpVersion pulumi.IntPtrInput
	// Specifies a unique id for the iec network ACL.
	NetworkAclId pulumi.StringPtrInput
	// The ID of the firewall policy for the iec network ACL.
	PolicyId pulumi.StringPtrInput
	// Specifies the protocol supported by the iec network ACL rule. Valid values are: *tcp*
	// , *udp*, *icmp* and *any*.
	Protocol pulumi.StringPtrInput
	// Specifies the source IP address that the traffic is allowed from. The default
	// value is *0.0.0.0/0*. For example:
	// xxx.xxx.xxx.xxx (IP address), xxx.xxx.xxx.0/24 (CIDR block).
	SourceIpAddress pulumi.StringPtrInput
	// Specifies the source port number or port number range. The value ranges from 1 to
	// 65535. For a port number range, enter two port numbers connected by a hyphen (-). For example, 1-100.
	SourcePort pulumi.StringPtrInput
}

func (NetworkAclRuleState) ElementType

func (NetworkAclRuleState) ElementType() reflect.Type

type NetworkAclState

type NetworkAclState struct {
	// Specifies the supplementary information about the iec network ACL. This parameter
	// can contain a maximum of 255 characters and cannot contain angle brackets (< or >).
	Description pulumi.StringPtrInput
	// A list of the IDs of ingress rules associated with the iec network ACL.
	InboundRules pulumi.StringArrayInput
	// Specifies the iec network ACL name. This parameter can contain a maximum of 64 characters,
	// which may consist of letters, digits, dot (.), underscores (_), and hyphens (-).
	Name pulumi.StringPtrInput
	// Specifies an list of one or more networks. The networks object structure is documented
	// below.
	Networks NetworkAclNetworkArrayInput
	// A list of the IDs of egress rules associated with the iec network ACL.
	OutboundRules pulumi.StringArrayInput
	// The status of the iec network ACL.
	Status pulumi.StringPtrInput
}

func (NetworkAclState) ElementType

func (NetworkAclState) ElementType() reflect.Type

type SecurityGroup

type SecurityGroup struct {
	pulumi.CustomResourceState

	// Specifies the description of the iec security group. description must be
	// 0 to 64 characters in length, and does not contain angle brackets (<) and (>). Changing this parameter will creates a
	// new iec security group resource.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// Specifies the name for the security group. This parameter can contain a maximum
	// of 64 characters, which may consist of letters, digits, dot (.), underscores (_), and hyphens (-). The iec security
	// group allowed to have the same name. Changing this parameter will creates a new iec security group resource.
	Name pulumi.StringOutput `pulumi:"name"`
	// An Array of one or more security group rules. The securityGroupRules object structure is
	// documented below.
	SecurityGroupRules SecurityGroupSecurityGroupRuleArrayOutput `pulumi:"securityGroupRules"`
}

Manages a IEC security group resource within HuaweiCloud.

## Example Usage

```go package main

import (

"github.com/huaweicloud/pulumi-huaweicloud/sdk/go/huaweicloud/Iec"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		iecSecgroupName := cfg.RequireObject("iecSecgroupName")
		_, err := Iec.NewSecurityGroup(ctx, "secgroupTest", nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

IEC Security Groups can be imported using the `id`, e.g.

```sh

$ pulumi import huaweicloud:Iec/securityGroup:SecurityGroup secgroup_test 2a02d1d3-437c-11eb-b721-fa163e8ac569

```

func GetSecurityGroup

func GetSecurityGroup(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *SecurityGroupState, opts ...pulumi.ResourceOption) (*SecurityGroup, error)

GetSecurityGroup gets an existing SecurityGroup 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 NewSecurityGroup

func NewSecurityGroup(ctx *pulumi.Context,
	name string, args *SecurityGroupArgs, opts ...pulumi.ResourceOption) (*SecurityGroup, error)

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

func (*SecurityGroup) ElementType

func (*SecurityGroup) ElementType() reflect.Type

func (*SecurityGroup) ToSecurityGroupOutput

func (i *SecurityGroup) ToSecurityGroupOutput() SecurityGroupOutput

func (*SecurityGroup) ToSecurityGroupOutputWithContext

func (i *SecurityGroup) ToSecurityGroupOutputWithContext(ctx context.Context) SecurityGroupOutput

type SecurityGroupArgs

type SecurityGroupArgs struct {
	// Specifies the description of the iec security group. description must be
	// 0 to 64 characters in length, and does not contain angle brackets (<) and (>). Changing this parameter will creates a
	// new iec security group resource.
	Description pulumi.StringPtrInput
	// Specifies the name for the security group. This parameter can contain a maximum
	// of 64 characters, which may consist of letters, digits, dot (.), underscores (_), and hyphens (-). The iec security
	// group allowed to have the same name. Changing this parameter will creates a new iec security group resource.
	Name pulumi.StringPtrInput
}

The set of arguments for constructing a SecurityGroup resource.

func (SecurityGroupArgs) ElementType

func (SecurityGroupArgs) ElementType() reflect.Type

type SecurityGroupArray

type SecurityGroupArray []SecurityGroupInput

func (SecurityGroupArray) ElementType

func (SecurityGroupArray) ElementType() reflect.Type

func (SecurityGroupArray) ToSecurityGroupArrayOutput

func (i SecurityGroupArray) ToSecurityGroupArrayOutput() SecurityGroupArrayOutput

func (SecurityGroupArray) ToSecurityGroupArrayOutputWithContext

func (i SecurityGroupArray) ToSecurityGroupArrayOutputWithContext(ctx context.Context) SecurityGroupArrayOutput

type SecurityGroupArrayInput

type SecurityGroupArrayInput interface {
	pulumi.Input

	ToSecurityGroupArrayOutput() SecurityGroupArrayOutput
	ToSecurityGroupArrayOutputWithContext(context.Context) SecurityGroupArrayOutput
}

SecurityGroupArrayInput is an input type that accepts SecurityGroupArray and SecurityGroupArrayOutput values. You can construct a concrete instance of `SecurityGroupArrayInput` via:

SecurityGroupArray{ SecurityGroupArgs{...} }

type SecurityGroupArrayOutput

type SecurityGroupArrayOutput struct{ *pulumi.OutputState }

func (SecurityGroupArrayOutput) ElementType

func (SecurityGroupArrayOutput) ElementType() reflect.Type

func (SecurityGroupArrayOutput) Index

func (SecurityGroupArrayOutput) ToSecurityGroupArrayOutput

func (o SecurityGroupArrayOutput) ToSecurityGroupArrayOutput() SecurityGroupArrayOutput

func (SecurityGroupArrayOutput) ToSecurityGroupArrayOutputWithContext

func (o SecurityGroupArrayOutput) ToSecurityGroupArrayOutputWithContext(ctx context.Context) SecurityGroupArrayOutput

type SecurityGroupInput

type SecurityGroupInput interface {
	pulumi.Input

	ToSecurityGroupOutput() SecurityGroupOutput
	ToSecurityGroupOutputWithContext(ctx context.Context) SecurityGroupOutput
}

type SecurityGroupMap

type SecurityGroupMap map[string]SecurityGroupInput

func (SecurityGroupMap) ElementType

func (SecurityGroupMap) ElementType() reflect.Type

func (SecurityGroupMap) ToSecurityGroupMapOutput

func (i SecurityGroupMap) ToSecurityGroupMapOutput() SecurityGroupMapOutput

func (SecurityGroupMap) ToSecurityGroupMapOutputWithContext

func (i SecurityGroupMap) ToSecurityGroupMapOutputWithContext(ctx context.Context) SecurityGroupMapOutput

type SecurityGroupMapInput

type SecurityGroupMapInput interface {
	pulumi.Input

	ToSecurityGroupMapOutput() SecurityGroupMapOutput
	ToSecurityGroupMapOutputWithContext(context.Context) SecurityGroupMapOutput
}

SecurityGroupMapInput is an input type that accepts SecurityGroupMap and SecurityGroupMapOutput values. You can construct a concrete instance of `SecurityGroupMapInput` via:

SecurityGroupMap{ "key": SecurityGroupArgs{...} }

type SecurityGroupMapOutput

type SecurityGroupMapOutput struct{ *pulumi.OutputState }

func (SecurityGroupMapOutput) ElementType

func (SecurityGroupMapOutput) ElementType() reflect.Type

func (SecurityGroupMapOutput) MapIndex

func (SecurityGroupMapOutput) ToSecurityGroupMapOutput

func (o SecurityGroupMapOutput) ToSecurityGroupMapOutput() SecurityGroupMapOutput

func (SecurityGroupMapOutput) ToSecurityGroupMapOutputWithContext

func (o SecurityGroupMapOutput) ToSecurityGroupMapOutputWithContext(ctx context.Context) SecurityGroupMapOutput

type SecurityGroupOutput

type SecurityGroupOutput struct{ *pulumi.OutputState }

func (SecurityGroupOutput) Description

func (o SecurityGroupOutput) Description() pulumi.StringPtrOutput

Specifies the description of the iec security group. description must be 0 to 64 characters in length, and does not contain angle brackets (<) and (>). Changing this parameter will creates a new iec security group resource.

func (SecurityGroupOutput) ElementType

func (SecurityGroupOutput) ElementType() reflect.Type

func (SecurityGroupOutput) Name

Specifies the name for the security group. This parameter can contain a maximum of 64 characters, which may consist of letters, digits, dot (.), underscores (_), and hyphens (-). The iec security group allowed to have the same name. Changing this parameter will creates a new iec security group resource.

func (SecurityGroupOutput) SecurityGroupRules

An Array of one or more security group rules. The securityGroupRules object structure is documented below.

func (SecurityGroupOutput) ToSecurityGroupOutput

func (o SecurityGroupOutput) ToSecurityGroupOutput() SecurityGroupOutput

func (SecurityGroupOutput) ToSecurityGroupOutputWithContext

func (o SecurityGroupOutput) ToSecurityGroupOutputWithContext(ctx context.Context) SecurityGroupOutput

type SecurityGroupRule

type SecurityGroupRule struct {
	pulumi.CustomResourceState

	// Specifies a description of the security group rule. Changing this
	// parameter creates a new security group rule resource.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// Specifies the direction of the rule, valid values are **ingress** or
	// **egress**. Changing this parameter creates a new security group rule resource.
	Direction pulumi.StringOutput `pulumi:"direction"`
	// Specifies the layer 3 protocol type, valid values are **IPv4**(IPv4 is
	// default) or **IPv6**. Changing this parameter creates a new security group rule resource.
	Ethertype pulumi.StringPtrOutput `pulumi:"ethertype"`
	// Specifies the higher part of the allowed port range, valid integer value
	// needs to be between 1 and 65535. Changing this parameter creates a new security group rule resource.
	PortRangeMax pulumi.IntPtrOutput `pulumi:"portRangeMax"`
	// Specifies the lower part of the allowed port range, valid integer value
	// needs to be between 1 and 65535. Changing this parameter creates a new security group rule resource.
	PortRangeMin pulumi.IntPtrOutput `pulumi:"portRangeMin"`
	// Specifies the layer 4 protocol type, valid values are following. The valid
	// values are: **tcp**, **udp**, **icmp** and **gre**. Changing this parameter creates a new security group rule
	// resource.
	Protocol pulumi.StringOutput `pulumi:"protocol"`
	// Specifies the remote group id, the value needs to be an ID of a
	// security group. This parameter and remoteIpPrefix are alternative. Changing this parameter creates a new security
	// group rule resource.
	RemoteGroupId pulumi.StringPtrOutput `pulumi:"remoteGroupId"`
	// Specifies the remote CIDR, the value to be a valid CIDR (i.e.
	// 192.168.0.0/16). This parameter and remoteGroupId are alternative. Changing this parameter creates a new security
	// group rule resource.
	RemoteIpPrefix pulumi.StringPtrOutput `pulumi:"remoteIpPrefix"`
	// Specifies the security group id the rule should belong to. Changing
	// this parameter creates a new security group rule resource.
	SecurityGroupId pulumi.StringOutput `pulumi:"securityGroupId"`
}

Manages a IEC security group rule resource within HuaweiCloud.

## Example Usage

```go package main

import (

"github.com/huaweicloud/pulumi-huaweicloud/sdk/go/huaweicloud/Iec"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := Iec.NewSecurityGroupRule(ctx, "secgroupRuleTest", &Iec.SecurityGroupRuleArgs{
			Direction:       pulumi.String("ingress"),
			PortRangeMin:    pulumi.Int(22),
			PortRangeMax:    pulumi.Int(22),
			Ethertype:       pulumi.String("IPv4"),
			Protocol:        pulumi.String("tcp"),
			SecurityGroupId: pulumi.Any(_var.Iec_security_group_id),
			RemoteIpPrefix:  pulumi.String("0.0.0.0/0"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetSecurityGroupRule

func GetSecurityGroupRule(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *SecurityGroupRuleState, opts ...pulumi.ResourceOption) (*SecurityGroupRule, error)

GetSecurityGroupRule gets an existing SecurityGroupRule 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 NewSecurityGroupRule

func NewSecurityGroupRule(ctx *pulumi.Context,
	name string, args *SecurityGroupRuleArgs, opts ...pulumi.ResourceOption) (*SecurityGroupRule, error)

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

func (*SecurityGroupRule) ElementType

func (*SecurityGroupRule) ElementType() reflect.Type

func (*SecurityGroupRule) ToSecurityGroupRuleOutput

func (i *SecurityGroupRule) ToSecurityGroupRuleOutput() SecurityGroupRuleOutput

func (*SecurityGroupRule) ToSecurityGroupRuleOutputWithContext

func (i *SecurityGroupRule) ToSecurityGroupRuleOutputWithContext(ctx context.Context) SecurityGroupRuleOutput

type SecurityGroupRuleArgs

type SecurityGroupRuleArgs struct {
	// Specifies a description of the security group rule. Changing this
	// parameter creates a new security group rule resource.
	Description pulumi.StringPtrInput
	// Specifies the direction of the rule, valid values are **ingress** or
	// **egress**. Changing this parameter creates a new security group rule resource.
	Direction pulumi.StringInput
	// Specifies the layer 3 protocol type, valid values are **IPv4**(IPv4 is
	// default) or **IPv6**. Changing this parameter creates a new security group rule resource.
	Ethertype pulumi.StringPtrInput
	// Specifies the higher part of the allowed port range, valid integer value
	// needs to be between 1 and 65535. Changing this parameter creates a new security group rule resource.
	PortRangeMax pulumi.IntPtrInput
	// Specifies the lower part of the allowed port range, valid integer value
	// needs to be between 1 and 65535. Changing this parameter creates a new security group rule resource.
	PortRangeMin pulumi.IntPtrInput
	// Specifies the layer 4 protocol type, valid values are following. The valid
	// values are: **tcp**, **udp**, **icmp** and **gre**. Changing this parameter creates a new security group rule
	// resource.
	Protocol pulumi.StringInput
	// Specifies the remote group id, the value needs to be an ID of a
	// security group. This parameter and remoteIpPrefix are alternative. Changing this parameter creates a new security
	// group rule resource.
	RemoteGroupId pulumi.StringPtrInput
	// Specifies the remote CIDR, the value to be a valid CIDR (i.e.
	// 192.168.0.0/16). This parameter and remoteGroupId are alternative. Changing this parameter creates a new security
	// group rule resource.
	RemoteIpPrefix pulumi.StringPtrInput
	// Specifies the security group id the rule should belong to. Changing
	// this parameter creates a new security group rule resource.
	SecurityGroupId pulumi.StringInput
}

The set of arguments for constructing a SecurityGroupRule resource.

func (SecurityGroupRuleArgs) ElementType

func (SecurityGroupRuleArgs) ElementType() reflect.Type

type SecurityGroupRuleArray

type SecurityGroupRuleArray []SecurityGroupRuleInput

func (SecurityGroupRuleArray) ElementType

func (SecurityGroupRuleArray) ElementType() reflect.Type

func (SecurityGroupRuleArray) ToSecurityGroupRuleArrayOutput

func (i SecurityGroupRuleArray) ToSecurityGroupRuleArrayOutput() SecurityGroupRuleArrayOutput

func (SecurityGroupRuleArray) ToSecurityGroupRuleArrayOutputWithContext

func (i SecurityGroupRuleArray) ToSecurityGroupRuleArrayOutputWithContext(ctx context.Context) SecurityGroupRuleArrayOutput

type SecurityGroupRuleArrayInput

type SecurityGroupRuleArrayInput interface {
	pulumi.Input

	ToSecurityGroupRuleArrayOutput() SecurityGroupRuleArrayOutput
	ToSecurityGroupRuleArrayOutputWithContext(context.Context) SecurityGroupRuleArrayOutput
}

SecurityGroupRuleArrayInput is an input type that accepts SecurityGroupRuleArray and SecurityGroupRuleArrayOutput values. You can construct a concrete instance of `SecurityGroupRuleArrayInput` via:

SecurityGroupRuleArray{ SecurityGroupRuleArgs{...} }

type SecurityGroupRuleArrayOutput

type SecurityGroupRuleArrayOutput struct{ *pulumi.OutputState }

func (SecurityGroupRuleArrayOutput) ElementType

func (SecurityGroupRuleArrayOutput) Index

func (SecurityGroupRuleArrayOutput) ToSecurityGroupRuleArrayOutput

func (o SecurityGroupRuleArrayOutput) ToSecurityGroupRuleArrayOutput() SecurityGroupRuleArrayOutput

func (SecurityGroupRuleArrayOutput) ToSecurityGroupRuleArrayOutputWithContext

func (o SecurityGroupRuleArrayOutput) ToSecurityGroupRuleArrayOutputWithContext(ctx context.Context) SecurityGroupRuleArrayOutput

type SecurityGroupRuleInput

type SecurityGroupRuleInput interface {
	pulumi.Input

	ToSecurityGroupRuleOutput() SecurityGroupRuleOutput
	ToSecurityGroupRuleOutputWithContext(ctx context.Context) SecurityGroupRuleOutput
}

type SecurityGroupRuleMap

type SecurityGroupRuleMap map[string]SecurityGroupRuleInput

func (SecurityGroupRuleMap) ElementType

func (SecurityGroupRuleMap) ElementType() reflect.Type

func (SecurityGroupRuleMap) ToSecurityGroupRuleMapOutput

func (i SecurityGroupRuleMap) ToSecurityGroupRuleMapOutput() SecurityGroupRuleMapOutput

func (SecurityGroupRuleMap) ToSecurityGroupRuleMapOutputWithContext

func (i SecurityGroupRuleMap) ToSecurityGroupRuleMapOutputWithContext(ctx context.Context) SecurityGroupRuleMapOutput

type SecurityGroupRuleMapInput

type SecurityGroupRuleMapInput interface {
	pulumi.Input

	ToSecurityGroupRuleMapOutput() SecurityGroupRuleMapOutput
	ToSecurityGroupRuleMapOutputWithContext(context.Context) SecurityGroupRuleMapOutput
}

SecurityGroupRuleMapInput is an input type that accepts SecurityGroupRuleMap and SecurityGroupRuleMapOutput values. You can construct a concrete instance of `SecurityGroupRuleMapInput` via:

SecurityGroupRuleMap{ "key": SecurityGroupRuleArgs{...} }

type SecurityGroupRuleMapOutput

type SecurityGroupRuleMapOutput struct{ *pulumi.OutputState }

func (SecurityGroupRuleMapOutput) ElementType

func (SecurityGroupRuleMapOutput) ElementType() reflect.Type

func (SecurityGroupRuleMapOutput) MapIndex

func (SecurityGroupRuleMapOutput) ToSecurityGroupRuleMapOutput

func (o SecurityGroupRuleMapOutput) ToSecurityGroupRuleMapOutput() SecurityGroupRuleMapOutput

func (SecurityGroupRuleMapOutput) ToSecurityGroupRuleMapOutputWithContext

func (o SecurityGroupRuleMapOutput) ToSecurityGroupRuleMapOutputWithContext(ctx context.Context) SecurityGroupRuleMapOutput

type SecurityGroupRuleOutput

type SecurityGroupRuleOutput struct{ *pulumi.OutputState }

func (SecurityGroupRuleOutput) Description

Specifies a description of the security group rule. Changing this parameter creates a new security group rule resource.

func (SecurityGroupRuleOutput) Direction

Specifies the direction of the rule, valid values are **ingress** or **egress**. Changing this parameter creates a new security group rule resource.

func (SecurityGroupRuleOutput) ElementType

func (SecurityGroupRuleOutput) ElementType() reflect.Type

func (SecurityGroupRuleOutput) Ethertype

Specifies the layer 3 protocol type, valid values are **IPv4**(IPv4 is default) or **IPv6**. Changing this parameter creates a new security group rule resource.

func (SecurityGroupRuleOutput) PortRangeMax

func (o SecurityGroupRuleOutput) PortRangeMax() pulumi.IntPtrOutput

Specifies the higher part of the allowed port range, valid integer value needs to be between 1 and 65535. Changing this parameter creates a new security group rule resource.

func (SecurityGroupRuleOutput) PortRangeMin

func (o SecurityGroupRuleOutput) PortRangeMin() pulumi.IntPtrOutput

Specifies the lower part of the allowed port range, valid integer value needs to be between 1 and 65535. Changing this parameter creates a new security group rule resource.

func (SecurityGroupRuleOutput) Protocol

Specifies the layer 4 protocol type, valid values are following. The valid values are: **tcp**, **udp**, **icmp** and **gre**. Changing this parameter creates a new security group rule resource.

func (SecurityGroupRuleOutput) RemoteGroupId

Specifies the remote group id, the value needs to be an ID of a security group. This parameter and remoteIpPrefix are alternative. Changing this parameter creates a new security group rule resource.

func (SecurityGroupRuleOutput) RemoteIpPrefix

func (o SecurityGroupRuleOutput) RemoteIpPrefix() pulumi.StringPtrOutput

Specifies the remote CIDR, the value to be a valid CIDR (i.e. 192.168.0.0/16). This parameter and remoteGroupId are alternative. Changing this parameter creates a new security group rule resource.

func (SecurityGroupRuleOutput) SecurityGroupId

func (o SecurityGroupRuleOutput) SecurityGroupId() pulumi.StringOutput

Specifies the security group id the rule should belong to. Changing this parameter creates a new security group rule resource.

func (SecurityGroupRuleOutput) ToSecurityGroupRuleOutput

func (o SecurityGroupRuleOutput) ToSecurityGroupRuleOutput() SecurityGroupRuleOutput

func (SecurityGroupRuleOutput) ToSecurityGroupRuleOutputWithContext

func (o SecurityGroupRuleOutput) ToSecurityGroupRuleOutputWithContext(ctx context.Context) SecurityGroupRuleOutput

type SecurityGroupRuleState

type SecurityGroupRuleState struct {
	// Specifies a description of the security group rule. Changing this
	// parameter creates a new security group rule resource.
	Description pulumi.StringPtrInput
	// Specifies the direction of the rule, valid values are **ingress** or
	// **egress**. Changing this parameter creates a new security group rule resource.
	Direction pulumi.StringPtrInput
	// Specifies the layer 3 protocol type, valid values are **IPv4**(IPv4 is
	// default) or **IPv6**. Changing this parameter creates a new security group rule resource.
	Ethertype pulumi.StringPtrInput
	// Specifies the higher part of the allowed port range, valid integer value
	// needs to be between 1 and 65535. Changing this parameter creates a new security group rule resource.
	PortRangeMax pulumi.IntPtrInput
	// Specifies the lower part of the allowed port range, valid integer value
	// needs to be between 1 and 65535. Changing this parameter creates a new security group rule resource.
	PortRangeMin pulumi.IntPtrInput
	// Specifies the layer 4 protocol type, valid values are following. The valid
	// values are: **tcp**, **udp**, **icmp** and **gre**. Changing this parameter creates a new security group rule
	// resource.
	Protocol pulumi.StringPtrInput
	// Specifies the remote group id, the value needs to be an ID of a
	// security group. This parameter and remoteIpPrefix are alternative. Changing this parameter creates a new security
	// group rule resource.
	RemoteGroupId pulumi.StringPtrInput
	// Specifies the remote CIDR, the value to be a valid CIDR (i.e.
	// 192.168.0.0/16). This parameter and remoteGroupId are alternative. Changing this parameter creates a new security
	// group rule resource.
	RemoteIpPrefix pulumi.StringPtrInput
	// Specifies the security group id the rule should belong to. Changing
	// this parameter creates a new security group rule resource.
	SecurityGroupId pulumi.StringPtrInput
}

func (SecurityGroupRuleState) ElementType

func (SecurityGroupRuleState) ElementType() reflect.Type

type SecurityGroupSecurityGroupRule

type SecurityGroupSecurityGroupRule struct {
	// Specifies the description of the iec security group. description must be
	// 0 to 64 characters in length, and does not contain angle brackets (<) and (>). Changing this parameter will creates a
	// new iec security group resource.
	Description *string `pulumi:"description"`
	// The direction of the iec security group rules.
	Direction *string `pulumi:"direction"`
	// The layer 3 protocol type.
	Ethertype *string `pulumi:"ethertype"`
	// The id of the iec security group rules.
	Id *string `pulumi:"id"`
	// The higher part of the allowed port range.
	PortRangeMax *int `pulumi:"portRangeMax"`
	// The lower part of the allowed port range.
	PortRangeMin *int `pulumi:"portRangeMin"`
	// The layer 4 protocol type.
	Protocol *string `pulumi:"protocol"`
	// The remote group id of the iec security group rules.
	RemoteGroupId *string `pulumi:"remoteGroupId"`
	// The remote CIDR of the iec security group rules.
	RemoteIpPrefix *string `pulumi:"remoteIpPrefix"`
	// The id of the iec security group rules.
	SecurityGroupId *string `pulumi:"securityGroupId"`
}

type SecurityGroupSecurityGroupRuleArgs

type SecurityGroupSecurityGroupRuleArgs struct {
	// Specifies the description of the iec security group. description must be
	// 0 to 64 characters in length, and does not contain angle brackets (<) and (>). Changing this parameter will creates a
	// new iec security group resource.
	Description pulumi.StringPtrInput `pulumi:"description"`
	// The direction of the iec security group rules.
	Direction pulumi.StringPtrInput `pulumi:"direction"`
	// The layer 3 protocol type.
	Ethertype pulumi.StringPtrInput `pulumi:"ethertype"`
	// The id of the iec security group rules.
	Id pulumi.StringPtrInput `pulumi:"id"`
	// The higher part of the allowed port range.
	PortRangeMax pulumi.IntPtrInput `pulumi:"portRangeMax"`
	// The lower part of the allowed port range.
	PortRangeMin pulumi.IntPtrInput `pulumi:"portRangeMin"`
	// The layer 4 protocol type.
	Protocol pulumi.StringPtrInput `pulumi:"protocol"`
	// The remote group id of the iec security group rules.
	RemoteGroupId pulumi.StringPtrInput `pulumi:"remoteGroupId"`
	// The remote CIDR of the iec security group rules.
	RemoteIpPrefix pulumi.StringPtrInput `pulumi:"remoteIpPrefix"`
	// The id of the iec security group rules.
	SecurityGroupId pulumi.StringPtrInput `pulumi:"securityGroupId"`
}

func (SecurityGroupSecurityGroupRuleArgs) ElementType

func (SecurityGroupSecurityGroupRuleArgs) ToSecurityGroupSecurityGroupRuleOutput

func (i SecurityGroupSecurityGroupRuleArgs) ToSecurityGroupSecurityGroupRuleOutput() SecurityGroupSecurityGroupRuleOutput

func (SecurityGroupSecurityGroupRuleArgs) ToSecurityGroupSecurityGroupRuleOutputWithContext

func (i SecurityGroupSecurityGroupRuleArgs) ToSecurityGroupSecurityGroupRuleOutputWithContext(ctx context.Context) SecurityGroupSecurityGroupRuleOutput

type SecurityGroupSecurityGroupRuleArray

type SecurityGroupSecurityGroupRuleArray []SecurityGroupSecurityGroupRuleInput

func (SecurityGroupSecurityGroupRuleArray) ElementType

func (SecurityGroupSecurityGroupRuleArray) ToSecurityGroupSecurityGroupRuleArrayOutput

func (i SecurityGroupSecurityGroupRuleArray) ToSecurityGroupSecurityGroupRuleArrayOutput() SecurityGroupSecurityGroupRuleArrayOutput

func (SecurityGroupSecurityGroupRuleArray) ToSecurityGroupSecurityGroupRuleArrayOutputWithContext

func (i SecurityGroupSecurityGroupRuleArray) ToSecurityGroupSecurityGroupRuleArrayOutputWithContext(ctx context.Context) SecurityGroupSecurityGroupRuleArrayOutput

type SecurityGroupSecurityGroupRuleArrayInput

type SecurityGroupSecurityGroupRuleArrayInput interface {
	pulumi.Input

	ToSecurityGroupSecurityGroupRuleArrayOutput() SecurityGroupSecurityGroupRuleArrayOutput
	ToSecurityGroupSecurityGroupRuleArrayOutputWithContext(context.Context) SecurityGroupSecurityGroupRuleArrayOutput
}

SecurityGroupSecurityGroupRuleArrayInput is an input type that accepts SecurityGroupSecurityGroupRuleArray and SecurityGroupSecurityGroupRuleArrayOutput values. You can construct a concrete instance of `SecurityGroupSecurityGroupRuleArrayInput` via:

SecurityGroupSecurityGroupRuleArray{ SecurityGroupSecurityGroupRuleArgs{...} }

type SecurityGroupSecurityGroupRuleArrayOutput

type SecurityGroupSecurityGroupRuleArrayOutput struct{ *pulumi.OutputState }

func (SecurityGroupSecurityGroupRuleArrayOutput) ElementType

func (SecurityGroupSecurityGroupRuleArrayOutput) Index

func (SecurityGroupSecurityGroupRuleArrayOutput) ToSecurityGroupSecurityGroupRuleArrayOutput

func (o SecurityGroupSecurityGroupRuleArrayOutput) ToSecurityGroupSecurityGroupRuleArrayOutput() SecurityGroupSecurityGroupRuleArrayOutput

func (SecurityGroupSecurityGroupRuleArrayOutput) ToSecurityGroupSecurityGroupRuleArrayOutputWithContext

func (o SecurityGroupSecurityGroupRuleArrayOutput) ToSecurityGroupSecurityGroupRuleArrayOutputWithContext(ctx context.Context) SecurityGroupSecurityGroupRuleArrayOutput

type SecurityGroupSecurityGroupRuleInput

type SecurityGroupSecurityGroupRuleInput interface {
	pulumi.Input

	ToSecurityGroupSecurityGroupRuleOutput() SecurityGroupSecurityGroupRuleOutput
	ToSecurityGroupSecurityGroupRuleOutputWithContext(context.Context) SecurityGroupSecurityGroupRuleOutput
}

SecurityGroupSecurityGroupRuleInput is an input type that accepts SecurityGroupSecurityGroupRuleArgs and SecurityGroupSecurityGroupRuleOutput values. You can construct a concrete instance of `SecurityGroupSecurityGroupRuleInput` via:

SecurityGroupSecurityGroupRuleArgs{...}

type SecurityGroupSecurityGroupRuleOutput

type SecurityGroupSecurityGroupRuleOutput struct{ *pulumi.OutputState }

func (SecurityGroupSecurityGroupRuleOutput) Description

Specifies the description of the iec security group. description must be 0 to 64 characters in length, and does not contain angle brackets (<) and (>). Changing this parameter will creates a new iec security group resource.

func (SecurityGroupSecurityGroupRuleOutput) Direction

The direction of the iec security group rules.

func (SecurityGroupSecurityGroupRuleOutput) ElementType

func (SecurityGroupSecurityGroupRuleOutput) Ethertype

The layer 3 protocol type.

func (SecurityGroupSecurityGroupRuleOutput) Id

The id of the iec security group rules.

func (SecurityGroupSecurityGroupRuleOutput) PortRangeMax

The higher part of the allowed port range.

func (SecurityGroupSecurityGroupRuleOutput) PortRangeMin

The lower part of the allowed port range.

func (SecurityGroupSecurityGroupRuleOutput) Protocol

The layer 4 protocol type.

func (SecurityGroupSecurityGroupRuleOutput) RemoteGroupId

The remote group id of the iec security group rules.

func (SecurityGroupSecurityGroupRuleOutput) RemoteIpPrefix

The remote CIDR of the iec security group rules.

func (SecurityGroupSecurityGroupRuleOutput) SecurityGroupId

The id of the iec security group rules.

func (SecurityGroupSecurityGroupRuleOutput) ToSecurityGroupSecurityGroupRuleOutput

func (o SecurityGroupSecurityGroupRuleOutput) ToSecurityGroupSecurityGroupRuleOutput() SecurityGroupSecurityGroupRuleOutput

func (SecurityGroupSecurityGroupRuleOutput) ToSecurityGroupSecurityGroupRuleOutputWithContext

func (o SecurityGroupSecurityGroupRuleOutput) ToSecurityGroupSecurityGroupRuleOutputWithContext(ctx context.Context) SecurityGroupSecurityGroupRuleOutput

type SecurityGroupState

type SecurityGroupState struct {
	// Specifies the description of the iec security group. description must be
	// 0 to 64 characters in length, and does not contain angle brackets (<) and (>). Changing this parameter will creates a
	// new iec security group resource.
	Description pulumi.StringPtrInput
	// Specifies the name for the security group. This parameter can contain a maximum
	// of 64 characters, which may consist of letters, digits, dot (.), underscores (_), and hyphens (-). The iec security
	// group allowed to have the same name. Changing this parameter will creates a new iec security group resource.
	Name pulumi.StringPtrInput
	// An Array of one or more security group rules. The securityGroupRules object structure is
	// documented below.
	SecurityGroupRules SecurityGroupSecurityGroupRuleArrayInput
}

func (SecurityGroupState) ElementType

func (SecurityGroupState) ElementType() reflect.Type

type Server

type Server struct {
	pulumi.CustomResourceState

	// Specifies the administrative password to assign to the IEC server. This
	// parameter can contain a maximum of 26 characters, which may consist of letters, digits and Special characters(~!?,.:
	// ;-_'"(){}[]/<>@#$%^&*+|\\=) and space. This parameter and `keyPair` are alternative. Changing this changes the root
	// password on the existing server.
	AdminPass pulumi.StringPtrOutput `pulumi:"adminPass"`
	// Specifies whether the IEC server is bound to EIP. Changing this parameter
	// creates a new IEC server resource.
	BindEip pulumi.BoolPtrOutput `pulumi:"bindEip"`
	// Specifies the coverage level of IEC sites. Valid value is *SITE*.
	// Changing this parameter creates a new IEC server resource.
	CoverageLevel pulumi.StringPtrOutput `pulumi:"coverageLevel"`
	// Specifies the policy of IEC sites. Valid values are *centralize*
	// and *discrete*, *centralize* is default. Changing this parameter creates a new IEC server resource.
	CoveragePolicy pulumi.StringPtrOutput `pulumi:"coveragePolicy"`
	// Specifies an array of site ID and operator for the IEC server. The
	// object structure is documented below. Changing this parameter creates a new IEC server resource.
	CoverageSites ServerCoverageSiteArrayOutput `pulumi:"coverageSites"`
	// Specifies the array of data disks to attach to the IEC server. Up to two
	// data disks can be specified. The object structure is documented below. Changing this parameter creates a new IEC
	// server resource.
	DataDisks ServerDataDiskArrayOutput `pulumi:"dataDisks"`
	// The ID of the edgecloud service.
	EdgecloudId pulumi.StringOutput `pulumi:"edgecloudId"`
	// The Name of the edgecloud service.
	EdgecloudName pulumi.StringOutput `pulumi:"edgecloudName"`
	// Specifies the flavor ID of the desired flavor for the IEC server. Changing
	// this parameter creates a new IEC server resource.
	FlavorId pulumi.StringOutput `pulumi:"flavorId"`
	// The flavor name of the IEC server.
	FlavorName pulumi.StringOutput `pulumi:"flavorName"`
	// Specifies the image ID of the desired image for the IEC server. Changing
	// this parameter creates a new IEC server resource.
	ImageId pulumi.StringOutput `pulumi:"imageId"`
	// The image name of the IEC server.
	ImageName pulumi.StringOutput `pulumi:"imageName"`
	// Specifies the name of a key pair to put on the IEC server. The key pair must
	// already be created and associated with the tenant's account. This parameter and `adminPass` are alternative. Changing
	// this parameter creates a new IEC server resource.
	KeyPair pulumi.StringPtrOutput `pulumi:"keyPair"`
	// Specifies the IEC server name. This parameter can contain a maximum of 64
	// characters, which may consist of letters, digits, dot(.), underscores (_), and hyphens (-).
	Name pulumi.StringOutput `pulumi:"name"`
	// An array of one or more networks to attach to the IEC server. The object structure is documented below.
	Nics ServerNicArrayOutput `pulumi:"nics"`
	// The ID of origin server.
	OriginServerId pulumi.StringOutput `pulumi:"originServerId"`
	// The EIP address that is associted to the IEC server.
	PublicIp pulumi.StringOutput `pulumi:"publicIp"`
	// Specifies an array of one or more security group IDs to associate with
	// the IEC server. Changing this parameter creates a new IEC server resource.
	SecurityGroups pulumi.StringArrayOutput `pulumi:"securityGroups"`
	// The status of IEC server.
	Status pulumi.StringOutput `pulumi:"status"`
	// Specifies an array of one or more subnet ID of Network for the IEC server
	// binding. Changing this parameter creates a new IEC server resource.
	SubnetIds pulumi.StringArrayOutput `pulumi:"subnetIds"`
	// The system disk voume ID.
	SystemDiskId pulumi.StringOutput `pulumi:"systemDiskId"`
	// Specifies the size of system disk for the IEC server binding. The
	// value range is 40 to 100 in GB. Changing this parameter creates a new IEC server resource.
	SystemDiskSize pulumi.IntOutput `pulumi:"systemDiskSize"`
	// Specifies the type of system disk for the IEC server binding. Valid
	// value is *SAS*(high I/O disk type). Changing this parameter creates a new IEC server resource.
	SystemDiskType pulumi.StringOutput `pulumi:"systemDiskType"`
	// Specifies the user data (information after encoding) configured during IEC
	// server creation. The value can come from a variety of sources: inline, read in from the *file* function. Changing this
	// parameter creates a new IEC server resource.
	UserData pulumi.StringPtrOutput `pulumi:"userData"`
	// An array of one or more disks to attach to the IEC server. The object structure is documented
	// below.
	VolumeAttacheds ServerVolumeAttachedArrayOutput `pulumi:"volumeAttacheds"`
	// Specifies the ID of vpc for the IEC server. VPC mode only *CUSTOMER* can be
	// used to create IEC server. Changing this parameter creates a new IEC server resource.
	VpcId pulumi.StringOutput `pulumi:"vpcId"`
}

Manages a IEC server resource within HuaweiCloud.

## Example Usage ### Basic Server Instance

```go package main

import (

"github.com/huaweicloud/pulumi-huaweicloud/sdk/go/huaweicloud/Iec"
"github.com/pulumi/pulumi-huaweicloud/sdk/go/huaweicloud/Iec"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		iecServerName := cfg.RequireObject("iecServerName")
		iecIamgeId := cfg.RequireObject("iecIamgeId")
		iecFlavorId := cfg.RequireObject("iecFlavorId")
		iecSiteId := cfg.RequireObject("iecSiteId")
		iecSiteOperator := cfg.RequireObject("iecSiteOperator")
		iecVpcId := cfg.RequireObject("iecVpcId")
		iecSubnetId := cfg.RequireObject("iecSubnetId")
		iecSecgroupId := cfg.RequireObject("iecSecgroupId")
		iecServerPassword := cfg.RequireObject("iecServerPassword")
		_, err := Iec.NewServer(ctx, "serverTest", &Iec.ServerArgs{
			ImageId:  pulumi.Any(iecIamgeId),
			FlavorId: pulumi.Any(iecFlavorId),
			VpcId:    pulumi.Any(iecVpcId),
			SubnetIds: pulumi.StringArray{
				pulumi.Any(iecSubnetId),
			},
			SecurityGroups: pulumi.StringArray{
				pulumi.Any(iecSecgroupId),
			},
			AdminPass:      pulumi.Any(iecServerPassword),
			BindEip:        pulumi.Bool(true),
			SystemDiskType: pulumi.String("SAS"),
			SystemDiskSize: pulumi.Int(40),
			CoverageSites: iec.ServerCoverageSiteArray{
				&iec.ServerCoverageSiteArgs{
					SiteId:   pulumi.Any(iecSiteId),
					Operator: pulumi.Any(iecSiteOperator),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Server Instance With Multiple Data Disks

```go package main

import (

"github.com/huaweicloud/pulumi-huaweicloud/sdk/go/huaweicloud/Iec"
"github.com/pulumi/pulumi-huaweicloud/sdk/go/huaweicloud/Iec"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		iecServerName := cfg.RequireObject("iecServerName")
		iecIamgeId := cfg.RequireObject("iecIamgeId")
		iecFlavorId := cfg.RequireObject("iecFlavorId")
		iecSiteId := cfg.RequireObject("iecSiteId")
		iecSiteOperator := cfg.RequireObject("iecSiteOperator")
		iecVpcId := cfg.RequireObject("iecVpcId")
		iecSubnetId := cfg.RequireObject("iecSubnetId")
		iecSecgroupId := cfg.RequireObject("iecSecgroupId")
		iecServerPassword := cfg.RequireObject("iecServerPassword")
		_, err := Iec.NewServer(ctx, "serverTest", &Iec.ServerArgs{
			ImageId:  pulumi.Any(iecIamgeId),
			FlavorId: pulumi.Any(iecFlavorId),
			VpcId:    pulumi.Any(iecVpcId),
			SubnetIds: pulumi.StringArray{
				pulumi.Any(iecSubnetId),
			},
			SecurityGroups: pulumi.StringArray{
				pulumi.Any(iecSecgroupId),
			},
			AdminPass:      pulumi.Any(iecServerPassword),
			BindEip:        pulumi.Bool(true),
			SystemDiskType: pulumi.String("SAS"),
			SystemDiskSize: pulumi.Int(40),
			DataDisks: iec.ServerDataDiskArray{
				&iec.ServerDataDiskArgs{
					Type: pulumi.String("SAS"),
					Size: pulumi.Int(20),
				},
				&iec.ServerDataDiskArgs{
					Type: pulumi.String("SAS"),
					Size: pulumi.Int(40),
				},
			},
			CoverageSites: iec.ServerCoverageSiteArray{
				&iec.ServerCoverageSiteArgs{
					SiteId:   pulumi.Any(iecSiteId),
					Operator: pulumi.Any(iecSiteOperator),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetServer

func GetServer(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ServerState, opts ...pulumi.ResourceOption) (*Server, error)

GetServer gets an existing Server 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 NewServer

func NewServer(ctx *pulumi.Context,
	name string, args *ServerArgs, opts ...pulumi.ResourceOption) (*Server, error)

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

func (*Server) ElementType

func (*Server) ElementType() reflect.Type

func (*Server) ToServerOutput

func (i *Server) ToServerOutput() ServerOutput

func (*Server) ToServerOutputWithContext

func (i *Server) ToServerOutputWithContext(ctx context.Context) ServerOutput

type ServerArgs

type ServerArgs struct {
	// Specifies the administrative password to assign to the IEC server. This
	// parameter can contain a maximum of 26 characters, which may consist of letters, digits and Special characters(~!?,.:
	// ;-_'"(){}[]/<>@#$%^&*+|\\=) and space. This parameter and `keyPair` are alternative. Changing this changes the root
	// password on the existing server.
	AdminPass pulumi.StringPtrInput
	// Specifies whether the IEC server is bound to EIP. Changing this parameter
	// creates a new IEC server resource.
	BindEip pulumi.BoolPtrInput
	// Specifies the coverage level of IEC sites. Valid value is *SITE*.
	// Changing this parameter creates a new IEC server resource.
	CoverageLevel pulumi.StringPtrInput
	// Specifies the policy of IEC sites. Valid values are *centralize*
	// and *discrete*, *centralize* is default. Changing this parameter creates a new IEC server resource.
	CoveragePolicy pulumi.StringPtrInput
	// Specifies an array of site ID and operator for the IEC server. The
	// object structure is documented below. Changing this parameter creates a new IEC server resource.
	CoverageSites ServerCoverageSiteArrayInput
	// Specifies the array of data disks to attach to the IEC server. Up to two
	// data disks can be specified. The object structure is documented below. Changing this parameter creates a new IEC
	// server resource.
	DataDisks ServerDataDiskArrayInput
	// Specifies the flavor ID of the desired flavor for the IEC server. Changing
	// this parameter creates a new IEC server resource.
	FlavorId pulumi.StringInput
	// Specifies the image ID of the desired image for the IEC server. Changing
	// this parameter creates a new IEC server resource.
	ImageId pulumi.StringInput
	// Specifies the name of a key pair to put on the IEC server. The key pair must
	// already be created and associated with the tenant's account. This parameter and `adminPass` are alternative. Changing
	// this parameter creates a new IEC server resource.
	KeyPair pulumi.StringPtrInput
	// Specifies the IEC server name. This parameter can contain a maximum of 64
	// characters, which may consist of letters, digits, dot(.), underscores (_), and hyphens (-).
	Name pulumi.StringPtrInput
	// Specifies an array of one or more security group IDs to associate with
	// the IEC server. Changing this parameter creates a new IEC server resource.
	SecurityGroups pulumi.StringArrayInput
	// Specifies an array of one or more subnet ID of Network for the IEC server
	// binding. Changing this parameter creates a new IEC server resource.
	SubnetIds pulumi.StringArrayInput
	// Specifies the size of system disk for the IEC server binding. The
	// value range is 40 to 100 in GB. Changing this parameter creates a new IEC server resource.
	SystemDiskSize pulumi.IntInput
	// Specifies the type of system disk for the IEC server binding. Valid
	// value is *SAS*(high I/O disk type). Changing this parameter creates a new IEC server resource.
	SystemDiskType pulumi.StringInput
	// Specifies the user data (information after encoding) configured during IEC
	// server creation. The value can come from a variety of sources: inline, read in from the *file* function. Changing this
	// parameter creates a new IEC server resource.
	UserData pulumi.StringPtrInput
	// Specifies the ID of vpc for the IEC server. VPC mode only *CUSTOMER* can be
	// used to create IEC server. Changing this parameter creates a new IEC server resource.
	VpcId pulumi.StringInput
}

The set of arguments for constructing a Server resource.

func (ServerArgs) ElementType

func (ServerArgs) ElementType() reflect.Type

type ServerArray

type ServerArray []ServerInput

func (ServerArray) ElementType

func (ServerArray) ElementType() reflect.Type

func (ServerArray) ToServerArrayOutput

func (i ServerArray) ToServerArrayOutput() ServerArrayOutput

func (ServerArray) ToServerArrayOutputWithContext

func (i ServerArray) ToServerArrayOutputWithContext(ctx context.Context) ServerArrayOutput

type ServerArrayInput

type ServerArrayInput interface {
	pulumi.Input

	ToServerArrayOutput() ServerArrayOutput
	ToServerArrayOutputWithContext(context.Context) ServerArrayOutput
}

ServerArrayInput is an input type that accepts ServerArray and ServerArrayOutput values. You can construct a concrete instance of `ServerArrayInput` via:

ServerArray{ ServerArgs{...} }

type ServerArrayOutput

type ServerArrayOutput struct{ *pulumi.OutputState }

func (ServerArrayOutput) ElementType

func (ServerArrayOutput) ElementType() reflect.Type

func (ServerArrayOutput) Index

func (ServerArrayOutput) ToServerArrayOutput

func (o ServerArrayOutput) ToServerArrayOutput() ServerArrayOutput

func (ServerArrayOutput) ToServerArrayOutputWithContext

func (o ServerArrayOutput) ToServerArrayOutputWithContext(ctx context.Context) ServerArrayOutput

type ServerCoverageSite

type ServerCoverageSite struct {
	// Specifies the operator of the IEC site.
	Operator string `pulumi:"operator"`
	// Specifies the ID of IEC site.
	SiteId string `pulumi:"siteId"`
}

type ServerCoverageSiteArgs

type ServerCoverageSiteArgs struct {
	// Specifies the operator of the IEC site.
	Operator pulumi.StringInput `pulumi:"operator"`
	// Specifies the ID of IEC site.
	SiteId pulumi.StringInput `pulumi:"siteId"`
}

func (ServerCoverageSiteArgs) ElementType

func (ServerCoverageSiteArgs) ElementType() reflect.Type

func (ServerCoverageSiteArgs) ToServerCoverageSiteOutput

func (i ServerCoverageSiteArgs) ToServerCoverageSiteOutput() ServerCoverageSiteOutput

func (ServerCoverageSiteArgs) ToServerCoverageSiteOutputWithContext

func (i ServerCoverageSiteArgs) ToServerCoverageSiteOutputWithContext(ctx context.Context) ServerCoverageSiteOutput

type ServerCoverageSiteArray

type ServerCoverageSiteArray []ServerCoverageSiteInput

func (ServerCoverageSiteArray) ElementType

func (ServerCoverageSiteArray) ElementType() reflect.Type

func (ServerCoverageSiteArray) ToServerCoverageSiteArrayOutput

func (i ServerCoverageSiteArray) ToServerCoverageSiteArrayOutput() ServerCoverageSiteArrayOutput

func (ServerCoverageSiteArray) ToServerCoverageSiteArrayOutputWithContext

func (i ServerCoverageSiteArray) ToServerCoverageSiteArrayOutputWithContext(ctx context.Context) ServerCoverageSiteArrayOutput

type ServerCoverageSiteArrayInput

type ServerCoverageSiteArrayInput interface {
	pulumi.Input

	ToServerCoverageSiteArrayOutput() ServerCoverageSiteArrayOutput
	ToServerCoverageSiteArrayOutputWithContext(context.Context) ServerCoverageSiteArrayOutput
}

ServerCoverageSiteArrayInput is an input type that accepts ServerCoverageSiteArray and ServerCoverageSiteArrayOutput values. You can construct a concrete instance of `ServerCoverageSiteArrayInput` via:

ServerCoverageSiteArray{ ServerCoverageSiteArgs{...} }

type ServerCoverageSiteArrayOutput

type ServerCoverageSiteArrayOutput struct{ *pulumi.OutputState }

func (ServerCoverageSiteArrayOutput) ElementType

func (ServerCoverageSiteArrayOutput) Index

func (ServerCoverageSiteArrayOutput) ToServerCoverageSiteArrayOutput

func (o ServerCoverageSiteArrayOutput) ToServerCoverageSiteArrayOutput() ServerCoverageSiteArrayOutput

func (ServerCoverageSiteArrayOutput) ToServerCoverageSiteArrayOutputWithContext

func (o ServerCoverageSiteArrayOutput) ToServerCoverageSiteArrayOutputWithContext(ctx context.Context) ServerCoverageSiteArrayOutput

type ServerCoverageSiteInput

type ServerCoverageSiteInput interface {
	pulumi.Input

	ToServerCoverageSiteOutput() ServerCoverageSiteOutput
	ToServerCoverageSiteOutputWithContext(context.Context) ServerCoverageSiteOutput
}

ServerCoverageSiteInput is an input type that accepts ServerCoverageSiteArgs and ServerCoverageSiteOutput values. You can construct a concrete instance of `ServerCoverageSiteInput` via:

ServerCoverageSiteArgs{...}

type ServerCoverageSiteOutput

type ServerCoverageSiteOutput struct{ *pulumi.OutputState }

func (ServerCoverageSiteOutput) ElementType

func (ServerCoverageSiteOutput) ElementType() reflect.Type

func (ServerCoverageSiteOutput) Operator

Specifies the operator of the IEC site.

func (ServerCoverageSiteOutput) SiteId

Specifies the ID of IEC site.

func (ServerCoverageSiteOutput) ToServerCoverageSiteOutput

func (o ServerCoverageSiteOutput) ToServerCoverageSiteOutput() ServerCoverageSiteOutput

func (ServerCoverageSiteOutput) ToServerCoverageSiteOutputWithContext

func (o ServerCoverageSiteOutput) ToServerCoverageSiteOutputWithContext(ctx context.Context) ServerCoverageSiteOutput

type ServerDataDisk

type ServerDataDisk struct {
	// Specifies the size of data disk for the IEC server binding. The value range is
	// 10 to 500 in GB. Changing this parameter creates a new IEC server resource.
	Size int `pulumi:"size"`
	// Specifies the type of data disk for the IEC server binding. Valid value is
	// *SAS*(high I/O disk type). Changing this parameter creates a new IEC server resource.
	Type string `pulumi:"type"`
}

type ServerDataDiskArgs

type ServerDataDiskArgs struct {
	// Specifies the size of data disk for the IEC server binding. The value range is
	// 10 to 500 in GB. Changing this parameter creates a new IEC server resource.
	Size pulumi.IntInput `pulumi:"size"`
	// Specifies the type of data disk for the IEC server binding. Valid value is
	// *SAS*(high I/O disk type). Changing this parameter creates a new IEC server resource.
	Type pulumi.StringInput `pulumi:"type"`
}

func (ServerDataDiskArgs) ElementType

func (ServerDataDiskArgs) ElementType() reflect.Type

func (ServerDataDiskArgs) ToServerDataDiskOutput

func (i ServerDataDiskArgs) ToServerDataDiskOutput() ServerDataDiskOutput

func (ServerDataDiskArgs) ToServerDataDiskOutputWithContext

func (i ServerDataDiskArgs) ToServerDataDiskOutputWithContext(ctx context.Context) ServerDataDiskOutput

type ServerDataDiskArray

type ServerDataDiskArray []ServerDataDiskInput

func (ServerDataDiskArray) ElementType

func (ServerDataDiskArray) ElementType() reflect.Type

func (ServerDataDiskArray) ToServerDataDiskArrayOutput

func (i ServerDataDiskArray) ToServerDataDiskArrayOutput() ServerDataDiskArrayOutput

func (ServerDataDiskArray) ToServerDataDiskArrayOutputWithContext

func (i ServerDataDiskArray) ToServerDataDiskArrayOutputWithContext(ctx context.Context) ServerDataDiskArrayOutput

type ServerDataDiskArrayInput

type ServerDataDiskArrayInput interface {
	pulumi.Input

	ToServerDataDiskArrayOutput() ServerDataDiskArrayOutput
	ToServerDataDiskArrayOutputWithContext(context.Context) ServerDataDiskArrayOutput
}

ServerDataDiskArrayInput is an input type that accepts ServerDataDiskArray and ServerDataDiskArrayOutput values. You can construct a concrete instance of `ServerDataDiskArrayInput` via:

ServerDataDiskArray{ ServerDataDiskArgs{...} }

type ServerDataDiskArrayOutput

type ServerDataDiskArrayOutput struct{ *pulumi.OutputState }

func (ServerDataDiskArrayOutput) ElementType

func (ServerDataDiskArrayOutput) ElementType() reflect.Type

func (ServerDataDiskArrayOutput) Index

func (ServerDataDiskArrayOutput) ToServerDataDiskArrayOutput

func (o ServerDataDiskArrayOutput) ToServerDataDiskArrayOutput() ServerDataDiskArrayOutput

func (ServerDataDiskArrayOutput) ToServerDataDiskArrayOutputWithContext

func (o ServerDataDiskArrayOutput) ToServerDataDiskArrayOutputWithContext(ctx context.Context) ServerDataDiskArrayOutput

type ServerDataDiskInput

type ServerDataDiskInput interface {
	pulumi.Input

	ToServerDataDiskOutput() ServerDataDiskOutput
	ToServerDataDiskOutputWithContext(context.Context) ServerDataDiskOutput
}

ServerDataDiskInput is an input type that accepts ServerDataDiskArgs and ServerDataDiskOutput values. You can construct a concrete instance of `ServerDataDiskInput` via:

ServerDataDiskArgs{...}

type ServerDataDiskOutput

type ServerDataDiskOutput struct{ *pulumi.OutputState }

func (ServerDataDiskOutput) ElementType

func (ServerDataDiskOutput) ElementType() reflect.Type

func (ServerDataDiskOutput) Size

Specifies the size of data disk for the IEC server binding. The value range is 10 to 500 in GB. Changing this parameter creates a new IEC server resource.

func (ServerDataDiskOutput) ToServerDataDiskOutput

func (o ServerDataDiskOutput) ToServerDataDiskOutput() ServerDataDiskOutput

func (ServerDataDiskOutput) ToServerDataDiskOutputWithContext

func (o ServerDataDiskOutput) ToServerDataDiskOutputWithContext(ctx context.Context) ServerDataDiskOutput

func (ServerDataDiskOutput) Type

Specifies the type of data disk for the IEC server binding. Valid value is *SAS*(high I/O disk type). Changing this parameter creates a new IEC server resource.

type ServerInput

type ServerInput interface {
	pulumi.Input

	ToServerOutput() ServerOutput
	ToServerOutputWithContext(ctx context.Context) ServerOutput
}

type ServerMap

type ServerMap map[string]ServerInput

func (ServerMap) ElementType

func (ServerMap) ElementType() reflect.Type

func (ServerMap) ToServerMapOutput

func (i ServerMap) ToServerMapOutput() ServerMapOutput

func (ServerMap) ToServerMapOutputWithContext

func (i ServerMap) ToServerMapOutputWithContext(ctx context.Context) ServerMapOutput

type ServerMapInput

type ServerMapInput interface {
	pulumi.Input

	ToServerMapOutput() ServerMapOutput
	ToServerMapOutputWithContext(context.Context) ServerMapOutput
}

ServerMapInput is an input type that accepts ServerMap and ServerMapOutput values. You can construct a concrete instance of `ServerMapInput` via:

ServerMap{ "key": ServerArgs{...} }

type ServerMapOutput

type ServerMapOutput struct{ *pulumi.OutputState }

func (ServerMapOutput) ElementType

func (ServerMapOutput) ElementType() reflect.Type

func (ServerMapOutput) MapIndex

func (ServerMapOutput) ToServerMapOutput

func (o ServerMapOutput) ToServerMapOutput() ServerMapOutput

func (ServerMapOutput) ToServerMapOutputWithContext

func (o ServerMapOutput) ToServerMapOutputWithContext(ctx context.Context) ServerMapOutput

type ServerNic

type ServerNic struct {
	// The IPv4 address of the server on that network.
	Address *string `pulumi:"address"`
	// The MAC address of the NIC on that network.
	Mac *string `pulumi:"mac"`
	// The port ID corresponding to the IP address on that network.
	Port *string `pulumi:"port"`
}

type ServerNicArgs

type ServerNicArgs struct {
	// The IPv4 address of the server on that network.
	Address pulumi.StringPtrInput `pulumi:"address"`
	// The MAC address of the NIC on that network.
	Mac pulumi.StringPtrInput `pulumi:"mac"`
	// The port ID corresponding to the IP address on that network.
	Port pulumi.StringPtrInput `pulumi:"port"`
}

func (ServerNicArgs) ElementType

func (ServerNicArgs) ElementType() reflect.Type

func (ServerNicArgs) ToServerNicOutput

func (i ServerNicArgs) ToServerNicOutput() ServerNicOutput

func (ServerNicArgs) ToServerNicOutputWithContext

func (i ServerNicArgs) ToServerNicOutputWithContext(ctx context.Context) ServerNicOutput

type ServerNicArray

type ServerNicArray []ServerNicInput

func (ServerNicArray) ElementType

func (ServerNicArray) ElementType() reflect.Type

func (ServerNicArray) ToServerNicArrayOutput

func (i ServerNicArray) ToServerNicArrayOutput() ServerNicArrayOutput

func (ServerNicArray) ToServerNicArrayOutputWithContext

func (i ServerNicArray) ToServerNicArrayOutputWithContext(ctx context.Context) ServerNicArrayOutput

type ServerNicArrayInput

type ServerNicArrayInput interface {
	pulumi.Input

	ToServerNicArrayOutput() ServerNicArrayOutput
	ToServerNicArrayOutputWithContext(context.Context) ServerNicArrayOutput
}

ServerNicArrayInput is an input type that accepts ServerNicArray and ServerNicArrayOutput values. You can construct a concrete instance of `ServerNicArrayInput` via:

ServerNicArray{ ServerNicArgs{...} }

type ServerNicArrayOutput

type ServerNicArrayOutput struct{ *pulumi.OutputState }

func (ServerNicArrayOutput) ElementType

func (ServerNicArrayOutput) ElementType() reflect.Type

func (ServerNicArrayOutput) Index

func (ServerNicArrayOutput) ToServerNicArrayOutput

func (o ServerNicArrayOutput) ToServerNicArrayOutput() ServerNicArrayOutput

func (ServerNicArrayOutput) ToServerNicArrayOutputWithContext

func (o ServerNicArrayOutput) ToServerNicArrayOutputWithContext(ctx context.Context) ServerNicArrayOutput

type ServerNicInput

type ServerNicInput interface {
	pulumi.Input

	ToServerNicOutput() ServerNicOutput
	ToServerNicOutputWithContext(context.Context) ServerNicOutput
}

ServerNicInput is an input type that accepts ServerNicArgs and ServerNicOutput values. You can construct a concrete instance of `ServerNicInput` via:

ServerNicArgs{...}

type ServerNicOutput

type ServerNicOutput struct{ *pulumi.OutputState }

func (ServerNicOutput) Address

The IPv4 address of the server on that network.

func (ServerNicOutput) ElementType

func (ServerNicOutput) ElementType() reflect.Type

func (ServerNicOutput) Mac

The MAC address of the NIC on that network.

func (ServerNicOutput) Port

The port ID corresponding to the IP address on that network.

func (ServerNicOutput) ToServerNicOutput

func (o ServerNicOutput) ToServerNicOutput() ServerNicOutput

func (ServerNicOutput) ToServerNicOutputWithContext

func (o ServerNicOutput) ToServerNicOutputWithContext(ctx context.Context) ServerNicOutput

type ServerOutput

type ServerOutput struct{ *pulumi.OutputState }

func (ServerOutput) AdminPass

func (o ServerOutput) AdminPass() pulumi.StringPtrOutput

Specifies the administrative password to assign to the IEC server. This parameter can contain a maximum of 26 characters, which may consist of letters, digits and Special characters(~!?,.: ;-_'"(){}[]/<>@#$%^&*+|\\=) and space. This parameter and `keyPair` are alternative. Changing this changes the root password on the existing server.

func (ServerOutput) BindEip

func (o ServerOutput) BindEip() pulumi.BoolPtrOutput

Specifies whether the IEC server is bound to EIP. Changing this parameter creates a new IEC server resource.

func (ServerOutput) CoverageLevel

func (o ServerOutput) CoverageLevel() pulumi.StringPtrOutput

Specifies the coverage level of IEC sites. Valid value is *SITE*. Changing this parameter creates a new IEC server resource.

func (ServerOutput) CoveragePolicy

func (o ServerOutput) CoveragePolicy() pulumi.StringPtrOutput

Specifies the policy of IEC sites. Valid values are *centralize* and *discrete*, *centralize* is default. Changing this parameter creates a new IEC server resource.

func (ServerOutput) CoverageSites

func (o ServerOutput) CoverageSites() ServerCoverageSiteArrayOutput

Specifies an array of site ID and operator for the IEC server. The object structure is documented below. Changing this parameter creates a new IEC server resource.

func (ServerOutput) DataDisks

Specifies the array of data disks to attach to the IEC server. Up to two data disks can be specified. The object structure is documented below. Changing this parameter creates a new IEC server resource.

func (ServerOutput) EdgecloudId

func (o ServerOutput) EdgecloudId() pulumi.StringOutput

The ID of the edgecloud service.

func (ServerOutput) EdgecloudName

func (o ServerOutput) EdgecloudName() pulumi.StringOutput

The Name of the edgecloud service.

func (ServerOutput) ElementType

func (ServerOutput) ElementType() reflect.Type

func (ServerOutput) FlavorId

func (o ServerOutput) FlavorId() pulumi.StringOutput

Specifies the flavor ID of the desired flavor for the IEC server. Changing this parameter creates a new IEC server resource.

func (ServerOutput) FlavorName

func (o ServerOutput) FlavorName() pulumi.StringOutput

The flavor name of the IEC server.

func (ServerOutput) ImageId

func (o ServerOutput) ImageId() pulumi.StringOutput

Specifies the image ID of the desired image for the IEC server. Changing this parameter creates a new IEC server resource.

func (ServerOutput) ImageName

func (o ServerOutput) ImageName() pulumi.StringOutput

The image name of the IEC server.

func (ServerOutput) KeyPair

func (o ServerOutput) KeyPair() pulumi.StringPtrOutput

Specifies the name of a key pair to put on the IEC server. The key pair must already be created and associated with the tenant's account. This parameter and `adminPass` are alternative. Changing this parameter creates a new IEC server resource.

func (ServerOutput) Name

func (o ServerOutput) Name() pulumi.StringOutput

Specifies the IEC server name. This parameter can contain a maximum of 64 characters, which may consist of letters, digits, dot(.), underscores (_), and hyphens (-).

func (ServerOutput) Nics

An array of one or more networks to attach to the IEC server. The object structure is documented below.

func (ServerOutput) OriginServerId

func (o ServerOutput) OriginServerId() pulumi.StringOutput

The ID of origin server.

func (ServerOutput) PublicIp

func (o ServerOutput) PublicIp() pulumi.StringOutput

The EIP address that is associted to the IEC server.

func (ServerOutput) SecurityGroups

func (o ServerOutput) SecurityGroups() pulumi.StringArrayOutput

Specifies an array of one or more security group IDs to associate with the IEC server. Changing this parameter creates a new IEC server resource.

func (ServerOutput) Status

func (o ServerOutput) Status() pulumi.StringOutput

The status of IEC server.

func (ServerOutput) SubnetIds

func (o ServerOutput) SubnetIds() pulumi.StringArrayOutput

Specifies an array of one or more subnet ID of Network for the IEC server binding. Changing this parameter creates a new IEC server resource.

func (ServerOutput) SystemDiskId

func (o ServerOutput) SystemDiskId() pulumi.StringOutput

The system disk voume ID.

func (ServerOutput) SystemDiskSize

func (o ServerOutput) SystemDiskSize() pulumi.IntOutput

Specifies the size of system disk for the IEC server binding. The value range is 40 to 100 in GB. Changing this parameter creates a new IEC server resource.

func (ServerOutput) SystemDiskType

func (o ServerOutput) SystemDiskType() pulumi.StringOutput

Specifies the type of system disk for the IEC server binding. Valid value is *SAS*(high I/O disk type). Changing this parameter creates a new IEC server resource.

func (ServerOutput) ToServerOutput

func (o ServerOutput) ToServerOutput() ServerOutput

func (ServerOutput) ToServerOutputWithContext

func (o ServerOutput) ToServerOutputWithContext(ctx context.Context) ServerOutput

func (ServerOutput) UserData

func (o ServerOutput) UserData() pulumi.StringPtrOutput

Specifies the user data (information after encoding) configured during IEC server creation. The value can come from a variety of sources: inline, read in from the *file* function. Changing this parameter creates a new IEC server resource.

func (ServerOutput) VolumeAttacheds

func (o ServerOutput) VolumeAttacheds() ServerVolumeAttachedArrayOutput

An array of one or more disks to attach to the IEC server. The object structure is documented below.

func (ServerOutput) VpcId

func (o ServerOutput) VpcId() pulumi.StringOutput

Specifies the ID of vpc for the IEC server. VPC mode only *CUSTOMER* can be used to create IEC server. Changing this parameter creates a new IEC server resource.

type ServerState

type ServerState struct {
	// Specifies the administrative password to assign to the IEC server. This
	// parameter can contain a maximum of 26 characters, which may consist of letters, digits and Special characters(~!?,.:
	// ;-_'"(){}[]/<>@#$%^&*+|\\=) and space. This parameter and `keyPair` are alternative. Changing this changes the root
	// password on the existing server.
	AdminPass pulumi.StringPtrInput
	// Specifies whether the IEC server is bound to EIP. Changing this parameter
	// creates a new IEC server resource.
	BindEip pulumi.BoolPtrInput
	// Specifies the coverage level of IEC sites. Valid value is *SITE*.
	// Changing this parameter creates a new IEC server resource.
	CoverageLevel pulumi.StringPtrInput
	// Specifies the policy of IEC sites. Valid values are *centralize*
	// and *discrete*, *centralize* is default. Changing this parameter creates a new IEC server resource.
	CoveragePolicy pulumi.StringPtrInput
	// Specifies an array of site ID and operator for the IEC server. The
	// object structure is documented below. Changing this parameter creates a new IEC server resource.
	CoverageSites ServerCoverageSiteArrayInput
	// Specifies the array of data disks to attach to the IEC server. Up to two
	// data disks can be specified. The object structure is documented below. Changing this parameter creates a new IEC
	// server resource.
	DataDisks ServerDataDiskArrayInput
	// The ID of the edgecloud service.
	EdgecloudId pulumi.StringPtrInput
	// The Name of the edgecloud service.
	EdgecloudName pulumi.StringPtrInput
	// Specifies the flavor ID of the desired flavor for the IEC server. Changing
	// this parameter creates a new IEC server resource.
	FlavorId pulumi.StringPtrInput
	// The flavor name of the IEC server.
	FlavorName pulumi.StringPtrInput
	// Specifies the image ID of the desired image for the IEC server. Changing
	// this parameter creates a new IEC server resource.
	ImageId pulumi.StringPtrInput
	// The image name of the IEC server.
	ImageName pulumi.StringPtrInput
	// Specifies the name of a key pair to put on the IEC server. The key pair must
	// already be created and associated with the tenant's account. This parameter and `adminPass` are alternative. Changing
	// this parameter creates a new IEC server resource.
	KeyPair pulumi.StringPtrInput
	// Specifies the IEC server name. This parameter can contain a maximum of 64
	// characters, which may consist of letters, digits, dot(.), underscores (_), and hyphens (-).
	Name pulumi.StringPtrInput
	// An array of one or more networks to attach to the IEC server. The object structure is documented below.
	Nics ServerNicArrayInput
	// The ID of origin server.
	OriginServerId pulumi.StringPtrInput
	// The EIP address that is associted to the IEC server.
	PublicIp pulumi.StringPtrInput
	// Specifies an array of one or more security group IDs to associate with
	// the IEC server. Changing this parameter creates a new IEC server resource.
	SecurityGroups pulumi.StringArrayInput
	// The status of IEC server.
	Status pulumi.StringPtrInput
	// Specifies an array of one or more subnet ID of Network for the IEC server
	// binding. Changing this parameter creates a new IEC server resource.
	SubnetIds pulumi.StringArrayInput
	// The system disk voume ID.
	SystemDiskId pulumi.StringPtrInput
	// Specifies the size of system disk for the IEC server binding. The
	// value range is 40 to 100 in GB. Changing this parameter creates a new IEC server resource.
	SystemDiskSize pulumi.IntPtrInput
	// Specifies the type of system disk for the IEC server binding. Valid
	// value is *SAS*(high I/O disk type). Changing this parameter creates a new IEC server resource.
	SystemDiskType pulumi.StringPtrInput
	// Specifies the user data (information after encoding) configured during IEC
	// server creation. The value can come from a variety of sources: inline, read in from the *file* function. Changing this
	// parameter creates a new IEC server resource.
	UserData pulumi.StringPtrInput
	// An array of one or more disks to attach to the IEC server. The object structure is documented
	// below.
	VolumeAttacheds ServerVolumeAttachedArrayInput
	// Specifies the ID of vpc for the IEC server. VPC mode only *CUSTOMER* can be
	// used to create IEC server. Changing this parameter creates a new IEC server resource.
	VpcId pulumi.StringPtrInput
}

func (ServerState) ElementType

func (ServerState) ElementType() reflect.Type

type ServerVolumeAttached

type ServerVolumeAttached struct {
	// The volume boot index on that attachment.
	BootIndex *string `pulumi:"bootIndex"`
	// The device name in the IEC server.
	Device *string `pulumi:"device"`
	// Specifies the size of data disk for the IEC server binding. The value range is
	// 10 to 500 in GB. Changing this parameter creates a new IEC server resource.
	Size *int `pulumi:"size"`
	// Specifies the type of data disk for the IEC server binding. Valid value is
	// *SAS*(high I/O disk type). Changing this parameter creates a new IEC server resource.
	Type *string `pulumi:"type"`
	// The volume ID on that attachment.
	VolumeId *string `pulumi:"volumeId"`
}

type ServerVolumeAttachedArgs

type ServerVolumeAttachedArgs struct {
	// The volume boot index on that attachment.
	BootIndex pulumi.StringPtrInput `pulumi:"bootIndex"`
	// The device name in the IEC server.
	Device pulumi.StringPtrInput `pulumi:"device"`
	// Specifies the size of data disk for the IEC server binding. The value range is
	// 10 to 500 in GB. Changing this parameter creates a new IEC server resource.
	Size pulumi.IntPtrInput `pulumi:"size"`
	// Specifies the type of data disk for the IEC server binding. Valid value is
	// *SAS*(high I/O disk type). Changing this parameter creates a new IEC server resource.
	Type pulumi.StringPtrInput `pulumi:"type"`
	// The volume ID on that attachment.
	VolumeId pulumi.StringPtrInput `pulumi:"volumeId"`
}

func (ServerVolumeAttachedArgs) ElementType

func (ServerVolumeAttachedArgs) ElementType() reflect.Type

func (ServerVolumeAttachedArgs) ToServerVolumeAttachedOutput

func (i ServerVolumeAttachedArgs) ToServerVolumeAttachedOutput() ServerVolumeAttachedOutput

func (ServerVolumeAttachedArgs) ToServerVolumeAttachedOutputWithContext

func (i ServerVolumeAttachedArgs) ToServerVolumeAttachedOutputWithContext(ctx context.Context) ServerVolumeAttachedOutput

type ServerVolumeAttachedArray

type ServerVolumeAttachedArray []ServerVolumeAttachedInput

func (ServerVolumeAttachedArray) ElementType

func (ServerVolumeAttachedArray) ElementType() reflect.Type

func (ServerVolumeAttachedArray) ToServerVolumeAttachedArrayOutput

func (i ServerVolumeAttachedArray) ToServerVolumeAttachedArrayOutput() ServerVolumeAttachedArrayOutput

func (ServerVolumeAttachedArray) ToServerVolumeAttachedArrayOutputWithContext

func (i ServerVolumeAttachedArray) ToServerVolumeAttachedArrayOutputWithContext(ctx context.Context) ServerVolumeAttachedArrayOutput

type ServerVolumeAttachedArrayInput

type ServerVolumeAttachedArrayInput interface {
	pulumi.Input

	ToServerVolumeAttachedArrayOutput() ServerVolumeAttachedArrayOutput
	ToServerVolumeAttachedArrayOutputWithContext(context.Context) ServerVolumeAttachedArrayOutput
}

ServerVolumeAttachedArrayInput is an input type that accepts ServerVolumeAttachedArray and ServerVolumeAttachedArrayOutput values. You can construct a concrete instance of `ServerVolumeAttachedArrayInput` via:

ServerVolumeAttachedArray{ ServerVolumeAttachedArgs{...} }

type ServerVolumeAttachedArrayOutput

type ServerVolumeAttachedArrayOutput struct{ *pulumi.OutputState }

func (ServerVolumeAttachedArrayOutput) ElementType

func (ServerVolumeAttachedArrayOutput) Index

func (ServerVolumeAttachedArrayOutput) ToServerVolumeAttachedArrayOutput

func (o ServerVolumeAttachedArrayOutput) ToServerVolumeAttachedArrayOutput() ServerVolumeAttachedArrayOutput

func (ServerVolumeAttachedArrayOutput) ToServerVolumeAttachedArrayOutputWithContext

func (o ServerVolumeAttachedArrayOutput) ToServerVolumeAttachedArrayOutputWithContext(ctx context.Context) ServerVolumeAttachedArrayOutput

type ServerVolumeAttachedInput

type ServerVolumeAttachedInput interface {
	pulumi.Input

	ToServerVolumeAttachedOutput() ServerVolumeAttachedOutput
	ToServerVolumeAttachedOutputWithContext(context.Context) ServerVolumeAttachedOutput
}

ServerVolumeAttachedInput is an input type that accepts ServerVolumeAttachedArgs and ServerVolumeAttachedOutput values. You can construct a concrete instance of `ServerVolumeAttachedInput` via:

ServerVolumeAttachedArgs{...}

type ServerVolumeAttachedOutput

type ServerVolumeAttachedOutput struct{ *pulumi.OutputState }

func (ServerVolumeAttachedOutput) BootIndex

The volume boot index on that attachment.

func (ServerVolumeAttachedOutput) Device

The device name in the IEC server.

func (ServerVolumeAttachedOutput) ElementType

func (ServerVolumeAttachedOutput) ElementType() reflect.Type

func (ServerVolumeAttachedOutput) Size

Specifies the size of data disk for the IEC server binding. The value range is 10 to 500 in GB. Changing this parameter creates a new IEC server resource.

func (ServerVolumeAttachedOutput) ToServerVolumeAttachedOutput

func (o ServerVolumeAttachedOutput) ToServerVolumeAttachedOutput() ServerVolumeAttachedOutput

func (ServerVolumeAttachedOutput) ToServerVolumeAttachedOutputWithContext

func (o ServerVolumeAttachedOutput) ToServerVolumeAttachedOutputWithContext(ctx context.Context) ServerVolumeAttachedOutput

func (ServerVolumeAttachedOutput) Type

Specifies the type of data disk for the IEC server binding. Valid value is *SAS*(high I/O disk type). Changing this parameter creates a new IEC server resource.

func (ServerVolumeAttachedOutput) VolumeId

The volume ID on that attachment.

type Vip

type Vip struct {
	pulumi.CustomResourceState

	// An array of IP addresses of the ports to attach the vip to.
	AllowedAddresses pulumi.StringArrayOutput `pulumi:"allowedAddresses"`
	// Specifies the IP address desired in the subnet for this vip.
	// If you don't specify it, an available IP address from the specified subnet will be allocated to this vip.
	// Changing this parameter creates a new vip resource.
	IpAddress pulumi.StringOutput `pulumi:"ipAddress"`
	// The MAC address of the vip.
	MacAddress pulumi.StringOutput `pulumi:"macAddress"`
	// Specifies an array of IDs of the ports to attach the vip to.
	PortIds pulumi.StringArrayOutput `pulumi:"portIds"`
	// Specifies the ID of the network to which the vip belongs.
	// Changing this parameter creates a new vip resource.
	SubnetId pulumi.StringOutput `pulumi:"subnetId"`
}

Manages a VIP resource within HuaweiCloud IEC.

## Example Usage

```go package main

import (

"github.com/huaweicloud/pulumi-huaweicloud/sdk/go/huaweicloud/Iec"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		iecSubnetId := cfg.RequireObject("iecSubnetId")
		_, err := Iec.NewVip(ctx, "vipTest", &Iec.VipArgs{
			SubnetId: pulumi.Any(iecSubnetId),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

IEC VIP can be imported using the `id`, e.g.

```sh

$ pulumi import huaweicloud:Iec/vip:Vip vip_test 61fd8d31-8f92-4526-a5f5-07ec303e69e7

```

func GetVip

func GetVip(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *VipState, opts ...pulumi.ResourceOption) (*Vip, error)

GetVip gets an existing Vip 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 NewVip

func NewVip(ctx *pulumi.Context,
	name string, args *VipArgs, opts ...pulumi.ResourceOption) (*Vip, error)

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

func (*Vip) ElementType

func (*Vip) ElementType() reflect.Type

func (*Vip) ToVipOutput

func (i *Vip) ToVipOutput() VipOutput

func (*Vip) ToVipOutputWithContext

func (i *Vip) ToVipOutputWithContext(ctx context.Context) VipOutput

type VipArgs

type VipArgs struct {
	// Specifies the IP address desired in the subnet for this vip.
	// If you don't specify it, an available IP address from the specified subnet will be allocated to this vip.
	// Changing this parameter creates a new vip resource.
	IpAddress pulumi.StringPtrInput
	// Specifies an array of IDs of the ports to attach the vip to.
	PortIds pulumi.StringArrayInput
	// Specifies the ID of the network to which the vip belongs.
	// Changing this parameter creates a new vip resource.
	SubnetId pulumi.StringInput
}

The set of arguments for constructing a Vip resource.

func (VipArgs) ElementType

func (VipArgs) ElementType() reflect.Type

type VipArray

type VipArray []VipInput

func (VipArray) ElementType

func (VipArray) ElementType() reflect.Type

func (VipArray) ToVipArrayOutput

func (i VipArray) ToVipArrayOutput() VipArrayOutput

func (VipArray) ToVipArrayOutputWithContext

func (i VipArray) ToVipArrayOutputWithContext(ctx context.Context) VipArrayOutput

type VipArrayInput

type VipArrayInput interface {
	pulumi.Input

	ToVipArrayOutput() VipArrayOutput
	ToVipArrayOutputWithContext(context.Context) VipArrayOutput
}

VipArrayInput is an input type that accepts VipArray and VipArrayOutput values. You can construct a concrete instance of `VipArrayInput` via:

VipArray{ VipArgs{...} }

type VipArrayOutput

type VipArrayOutput struct{ *pulumi.OutputState }

func (VipArrayOutput) ElementType

func (VipArrayOutput) ElementType() reflect.Type

func (VipArrayOutput) Index

func (VipArrayOutput) ToVipArrayOutput

func (o VipArrayOutput) ToVipArrayOutput() VipArrayOutput

func (VipArrayOutput) ToVipArrayOutputWithContext

func (o VipArrayOutput) ToVipArrayOutputWithContext(ctx context.Context) VipArrayOutput

type VipInput

type VipInput interface {
	pulumi.Input

	ToVipOutput() VipOutput
	ToVipOutputWithContext(ctx context.Context) VipOutput
}

type VipMap

type VipMap map[string]VipInput

func (VipMap) ElementType

func (VipMap) ElementType() reflect.Type

func (VipMap) ToVipMapOutput

func (i VipMap) ToVipMapOutput() VipMapOutput

func (VipMap) ToVipMapOutputWithContext

func (i VipMap) ToVipMapOutputWithContext(ctx context.Context) VipMapOutput

type VipMapInput

type VipMapInput interface {
	pulumi.Input

	ToVipMapOutput() VipMapOutput
	ToVipMapOutputWithContext(context.Context) VipMapOutput
}

VipMapInput is an input type that accepts VipMap and VipMapOutput values. You can construct a concrete instance of `VipMapInput` via:

VipMap{ "key": VipArgs{...} }

type VipMapOutput

type VipMapOutput struct{ *pulumi.OutputState }

func (VipMapOutput) ElementType

func (VipMapOutput) ElementType() reflect.Type

func (VipMapOutput) MapIndex

func (o VipMapOutput) MapIndex(k pulumi.StringInput) VipOutput

func (VipMapOutput) ToVipMapOutput

func (o VipMapOutput) ToVipMapOutput() VipMapOutput

func (VipMapOutput) ToVipMapOutputWithContext

func (o VipMapOutput) ToVipMapOutputWithContext(ctx context.Context) VipMapOutput

type VipOutput

type VipOutput struct{ *pulumi.OutputState }

func (VipOutput) AllowedAddresses

func (o VipOutput) AllowedAddresses() pulumi.StringArrayOutput

An array of IP addresses of the ports to attach the vip to.

func (VipOutput) ElementType

func (VipOutput) ElementType() reflect.Type

func (VipOutput) IpAddress

func (o VipOutput) IpAddress() pulumi.StringOutput

Specifies the IP address desired in the subnet for this vip. If you don't specify it, an available IP address from the specified subnet will be allocated to this vip. Changing this parameter creates a new vip resource.

func (VipOutput) MacAddress

func (o VipOutput) MacAddress() pulumi.StringOutput

The MAC address of the vip.

func (VipOutput) PortIds

func (o VipOutput) PortIds() pulumi.StringArrayOutput

Specifies an array of IDs of the ports to attach the vip to.

func (VipOutput) SubnetId

func (o VipOutput) SubnetId() pulumi.StringOutput

Specifies the ID of the network to which the vip belongs. Changing this parameter creates a new vip resource.

func (VipOutput) ToVipOutput

func (o VipOutput) ToVipOutput() VipOutput

func (VipOutput) ToVipOutputWithContext

func (o VipOutput) ToVipOutputWithContext(ctx context.Context) VipOutput

type VipState

type VipState struct {
	// An array of IP addresses of the ports to attach the vip to.
	AllowedAddresses pulumi.StringArrayInput
	// Specifies the IP address desired in the subnet for this vip.
	// If you don't specify it, an available IP address from the specified subnet will be allocated to this vip.
	// Changing this parameter creates a new vip resource.
	IpAddress pulumi.StringPtrInput
	// The MAC address of the vip.
	MacAddress pulumi.StringPtrInput
	// Specifies an array of IDs of the ports to attach the vip to.
	PortIds pulumi.StringArrayInput
	// Specifies the ID of the network to which the vip belongs.
	// Changing this parameter creates a new vip resource.
	SubnetId pulumi.StringPtrInput
}

func (VipState) ElementType

func (VipState) ElementType() reflect.Type

type Vpc

type Vpc struct {
	pulumi.CustomResourceState

	// Specifies the IP address range for the VPC. The subnet IP address in the VPC must be
	// within the IP address range of the VPC. The following CIDR blocks are supported:
	// *10.0.0.0/8-16*, *172.16.0.0/12-16*, *192.168.0.0/16*.
	Cidr pulumi.StringOutput `pulumi:"cidr"`
	// Specifies the mode of the IEC VPC. Possible values are "SYSTEM" and "CUSTOMER",
	// defaults to "SYSTEM". Changing this creates a new IEC VPC.
	Mode pulumi.StringPtrOutput `pulumi:"mode"`
	// Specifies the name of the IEC VPC. The name can contain a maximum of 64 characters. Only
	// letters, digits, underscores (_), hyphens (-), and periods (.) are allowed.
	Name pulumi.StringOutput `pulumi:"name"`
	// The region in which to create the IEC VPC. If omitted, the provider-level
	// region will be used. Changing this creates a new resource.
	Region pulumi.StringPtrOutput `pulumi:"region"`
	// Indicates the number of subnets.
	SubnetNum pulumi.IntOutput `pulumi:"subnetNum"`
}

Manages an IEC VPC resource within HuaweiCloud.

## Example Usage

```go package main

import (

"github.com/huaweicloud/pulumi-huaweicloud/sdk/go/huaweicloud/Iec"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		vpcName := cfg.RequireObject("vpcName")
		vpcCidr := cfg.RequireObject("vpcCidr")
		_, err := Iec.NewVpc(ctx, "vpc", &Iec.VpcArgs{
			Cidr: pulumi.Any(vpcCidr),
		})
		if err != nil {
			return err
		}
		_, err = Iec.NewVpc(ctx, "vpcByCustomer", &Iec.VpcArgs{
			Cidr: pulumi.Any(vpcCidr),
			Mode: pulumi.String("CUSTOMER"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

VPCs can be imported using the `id`, e.g.

```sh

$ pulumi import huaweicloud:Iec/vpc:Vpc myvpc 7117d38e-4c8f-4624-a505-bd96b97d024c

```

func GetVpc

func GetVpc(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *VpcState, opts ...pulumi.ResourceOption) (*Vpc, error)

GetVpc gets an existing Vpc 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 NewVpc

func NewVpc(ctx *pulumi.Context,
	name string, args *VpcArgs, opts ...pulumi.ResourceOption) (*Vpc, error)

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

func (*Vpc) ElementType

func (*Vpc) ElementType() reflect.Type

func (*Vpc) ToVpcOutput

func (i *Vpc) ToVpcOutput() VpcOutput

func (*Vpc) ToVpcOutputWithContext

func (i *Vpc) ToVpcOutputWithContext(ctx context.Context) VpcOutput

type VpcArgs

type VpcArgs struct {
	// Specifies the IP address range for the VPC. The subnet IP address in the VPC must be
	// within the IP address range of the VPC. The following CIDR blocks are supported:
	// *10.0.0.0/8-16*, *172.16.0.0/12-16*, *192.168.0.0/16*.
	Cidr pulumi.StringInput
	// Specifies the mode of the IEC VPC. Possible values are "SYSTEM" and "CUSTOMER",
	// defaults to "SYSTEM". Changing this creates a new IEC VPC.
	Mode pulumi.StringPtrInput
	// Specifies the name of the IEC VPC. The name can contain a maximum of 64 characters. Only
	// letters, digits, underscores (_), hyphens (-), and periods (.) are allowed.
	Name pulumi.StringPtrInput
	// The region in which to create the IEC VPC. If omitted, the provider-level
	// region will be used. Changing this creates a new resource.
	Region pulumi.StringPtrInput
}

The set of arguments for constructing a Vpc resource.

func (VpcArgs) ElementType

func (VpcArgs) ElementType() reflect.Type

type VpcArray

type VpcArray []VpcInput

func (VpcArray) ElementType

func (VpcArray) ElementType() reflect.Type

func (VpcArray) ToVpcArrayOutput

func (i VpcArray) ToVpcArrayOutput() VpcArrayOutput

func (VpcArray) ToVpcArrayOutputWithContext

func (i VpcArray) ToVpcArrayOutputWithContext(ctx context.Context) VpcArrayOutput

type VpcArrayInput

type VpcArrayInput interface {
	pulumi.Input

	ToVpcArrayOutput() VpcArrayOutput
	ToVpcArrayOutputWithContext(context.Context) VpcArrayOutput
}

VpcArrayInput is an input type that accepts VpcArray and VpcArrayOutput values. You can construct a concrete instance of `VpcArrayInput` via:

VpcArray{ VpcArgs{...} }

type VpcArrayOutput

type VpcArrayOutput struct{ *pulumi.OutputState }

func (VpcArrayOutput) ElementType

func (VpcArrayOutput) ElementType() reflect.Type

func (VpcArrayOutput) Index

func (VpcArrayOutput) ToVpcArrayOutput

func (o VpcArrayOutput) ToVpcArrayOutput() VpcArrayOutput

func (VpcArrayOutput) ToVpcArrayOutputWithContext

func (o VpcArrayOutput) ToVpcArrayOutputWithContext(ctx context.Context) VpcArrayOutput

type VpcInput

type VpcInput interface {
	pulumi.Input

	ToVpcOutput() VpcOutput
	ToVpcOutputWithContext(ctx context.Context) VpcOutput
}

type VpcMap

type VpcMap map[string]VpcInput

func (VpcMap) ElementType

func (VpcMap) ElementType() reflect.Type

func (VpcMap) ToVpcMapOutput

func (i VpcMap) ToVpcMapOutput() VpcMapOutput

func (VpcMap) ToVpcMapOutputWithContext

func (i VpcMap) ToVpcMapOutputWithContext(ctx context.Context) VpcMapOutput

type VpcMapInput

type VpcMapInput interface {
	pulumi.Input

	ToVpcMapOutput() VpcMapOutput
	ToVpcMapOutputWithContext(context.Context) VpcMapOutput
}

VpcMapInput is an input type that accepts VpcMap and VpcMapOutput values. You can construct a concrete instance of `VpcMapInput` via:

VpcMap{ "key": VpcArgs{...} }

type VpcMapOutput

type VpcMapOutput struct{ *pulumi.OutputState }

func (VpcMapOutput) ElementType

func (VpcMapOutput) ElementType() reflect.Type

func (VpcMapOutput) MapIndex

func (o VpcMapOutput) MapIndex(k pulumi.StringInput) VpcOutput

func (VpcMapOutput) ToVpcMapOutput

func (o VpcMapOutput) ToVpcMapOutput() VpcMapOutput

func (VpcMapOutput) ToVpcMapOutputWithContext

func (o VpcMapOutput) ToVpcMapOutputWithContext(ctx context.Context) VpcMapOutput

type VpcOutput

type VpcOutput struct{ *pulumi.OutputState }

func (VpcOutput) Cidr

func (o VpcOutput) Cidr() pulumi.StringOutput

Specifies the IP address range for the VPC. The subnet IP address in the VPC must be within the IP address range of the VPC. The following CIDR blocks are supported: *10.0.0.0/8-16*, *172.16.0.0/12-16*, *192.168.0.0/16*.

func (VpcOutput) ElementType

func (VpcOutput) ElementType() reflect.Type

func (VpcOutput) Mode

func (o VpcOutput) Mode() pulumi.StringPtrOutput

Specifies the mode of the IEC VPC. Possible values are "SYSTEM" and "CUSTOMER", defaults to "SYSTEM". Changing this creates a new IEC VPC.

func (VpcOutput) Name

func (o VpcOutput) Name() pulumi.StringOutput

Specifies the name of the IEC VPC. The name can contain a maximum of 64 characters. Only letters, digits, underscores (_), hyphens (-), and periods (.) are allowed.

func (VpcOutput) Region

func (o VpcOutput) Region() pulumi.StringPtrOutput

The region in which to create the IEC VPC. If omitted, the provider-level region will be used. Changing this creates a new resource.

func (VpcOutput) SubnetNum

func (o VpcOutput) SubnetNum() pulumi.IntOutput

Indicates the number of subnets.

func (VpcOutput) ToVpcOutput

func (o VpcOutput) ToVpcOutput() VpcOutput

func (VpcOutput) ToVpcOutputWithContext

func (o VpcOutput) ToVpcOutputWithContext(ctx context.Context) VpcOutput

type VpcState

type VpcState struct {
	// Specifies the IP address range for the VPC. The subnet IP address in the VPC must be
	// within the IP address range of the VPC. The following CIDR blocks are supported:
	// *10.0.0.0/8-16*, *172.16.0.0/12-16*, *192.168.0.0/16*.
	Cidr pulumi.StringPtrInput
	// Specifies the mode of the IEC VPC. Possible values are "SYSTEM" and "CUSTOMER",
	// defaults to "SYSTEM". Changing this creates a new IEC VPC.
	Mode pulumi.StringPtrInput
	// Specifies the name of the IEC VPC. The name can contain a maximum of 64 characters. Only
	// letters, digits, underscores (_), hyphens (-), and periods (.) are allowed.
	Name pulumi.StringPtrInput
	// The region in which to create the IEC VPC. If omitted, the provider-level
	// region will be used. Changing this creates a new resource.
	Region pulumi.StringPtrInput
	// Indicates the number of subnets.
	SubnetNum pulumi.IntPtrInput
}

func (VpcState) ElementType

func (VpcState) ElementType() reflect.Type

type VpcSubnet

type VpcSubnet struct {
	pulumi.CustomResourceState

	// Specifies the network segment on which the subnet resides. The value must be in
	// CIDR format and within the CIDR block of the iec vpc. Changing this parameter creates a new subnet resource.
	Cidr pulumi.StringOutput `pulumi:"cidr"`
	// Specifies the status of subnet DHCP is enabled or not.
	// Valid values are **true** and **false**, defaults to **true**.
	DhcpEnable pulumi.BoolPtrOutput `pulumi:"dhcpEnable"`
	// Specifies the DNS server address list of a subnet. These DNS server address must be
	// valid IP addresses.
	DnsLists pulumi.StringArrayOutput `pulumi:"dnsLists"`
	// Specifies the gateway of the subnet. The value must be a valid IP address
	// and in the subnet segment. Changing this parameter creates a new subnet resource.
	GatewayIp pulumi.StringOutput `pulumi:"gatewayIp"`
	// Specifies the name of the iec vpc subnet. The value is a string of 1 to 64 characters that
	// can contain letters, digits, underscores(_), and hyphens(-).
	Name pulumi.StringOutput `pulumi:"name"`
	// The region in which to create the iec vpc subnet resource. If omitted, the
	// provider-level region will be used. Changing this creates a new resource.
	Region pulumi.StringPtrOutput `pulumi:"region"`
	// Specifies the ID of the iec site. Changing this parameter creates a new
	// subnet resource.
	SiteId pulumi.StringOutput `pulumi:"siteId"`
	// The located information of the iec site. It contains area, province and city.
	SiteInfo pulumi.StringOutput `pulumi:"siteInfo"`
	// The status of the subnet.
	Status pulumi.StringOutput `pulumi:"status"`
	// Specifies the ID of the iec **CUSTOMER**
	// vpc to which the subnet belongs. Changing this parameter creates a new subnet resource.
	VpcId pulumi.StringOutput `pulumi:"vpcId"`
}

Manages a VPC subnet resource within HuaweiCloud IEC.

## Example Usage

```go package main

import (

"github.com/huaweicloud/pulumi-huaweicloud/sdk/go/huaweicloud/Iec"
"github.com/pulumi/pulumi-huaweicloud/sdk/go/huaweicloud/Iec"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		sitesTest, err := Iec.GetSites(ctx, nil, nil)
		if err != nil {
			return err
		}
		vpcTest, err := Iec.NewVpc(ctx, "vpcTest", &Iec.VpcArgs{
			Cidr: pulumi.String("192.168.0.0/16"),
			Mode: pulumi.String("CUSTOMER"),
		})
		if err != nil {
			return err
		}
		_, err = Iec.NewVpcSubnet(ctx, "subnetTest", &Iec.VpcSubnetArgs{
			Cidr:      pulumi.String("192.168.128.0/18"),
			VpcId:     vpcTest.ID(),
			SiteId:    pulumi.String(sitesTest.Sites[0].Id),
			GatewayIp: pulumi.String("192.168.128.1"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

IEC vpc subnet can be imported using the `id`, e.g.

```sh

$ pulumi import huaweicloud:Iec/vpcSubnet:VpcSubnet subnet_demo 51be9f2b-5a3b-406a-9271-36f0c929fbcc

```

func GetVpcSubnet

func GetVpcSubnet(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *VpcSubnetState, opts ...pulumi.ResourceOption) (*VpcSubnet, error)

GetVpcSubnet gets an existing VpcSubnet 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 NewVpcSubnet

func NewVpcSubnet(ctx *pulumi.Context,
	name string, args *VpcSubnetArgs, opts ...pulumi.ResourceOption) (*VpcSubnet, error)

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

func (*VpcSubnet) ElementType

func (*VpcSubnet) ElementType() reflect.Type

func (*VpcSubnet) ToVpcSubnetOutput

func (i *VpcSubnet) ToVpcSubnetOutput() VpcSubnetOutput

func (*VpcSubnet) ToVpcSubnetOutputWithContext

func (i *VpcSubnet) ToVpcSubnetOutputWithContext(ctx context.Context) VpcSubnetOutput

type VpcSubnetArgs

type VpcSubnetArgs struct {
	// Specifies the network segment on which the subnet resides. The value must be in
	// CIDR format and within the CIDR block of the iec vpc. Changing this parameter creates a new subnet resource.
	Cidr pulumi.StringInput
	// Specifies the status of subnet DHCP is enabled or not.
	// Valid values are **true** and **false**, defaults to **true**.
	DhcpEnable pulumi.BoolPtrInput
	// Specifies the DNS server address list of a subnet. These DNS server address must be
	// valid IP addresses.
	DnsLists pulumi.StringArrayInput
	// Specifies the gateway of the subnet. The value must be a valid IP address
	// and in the subnet segment. Changing this parameter creates a new subnet resource.
	GatewayIp pulumi.StringInput
	// Specifies the name of the iec vpc subnet. The value is a string of 1 to 64 characters that
	// can contain letters, digits, underscores(_), and hyphens(-).
	Name pulumi.StringPtrInput
	// The region in which to create the iec vpc subnet resource. If omitted, the
	// provider-level region will be used. Changing this creates a new resource.
	Region pulumi.StringPtrInput
	// Specifies the ID of the iec site. Changing this parameter creates a new
	// subnet resource.
	SiteId pulumi.StringInput
	// Specifies the ID of the iec **CUSTOMER**
	// vpc to which the subnet belongs. Changing this parameter creates a new subnet resource.
	VpcId pulumi.StringInput
}

The set of arguments for constructing a VpcSubnet resource.

func (VpcSubnetArgs) ElementType

func (VpcSubnetArgs) ElementType() reflect.Type

type VpcSubnetArray

type VpcSubnetArray []VpcSubnetInput

func (VpcSubnetArray) ElementType

func (VpcSubnetArray) ElementType() reflect.Type

func (VpcSubnetArray) ToVpcSubnetArrayOutput

func (i VpcSubnetArray) ToVpcSubnetArrayOutput() VpcSubnetArrayOutput

func (VpcSubnetArray) ToVpcSubnetArrayOutputWithContext

func (i VpcSubnetArray) ToVpcSubnetArrayOutputWithContext(ctx context.Context) VpcSubnetArrayOutput

type VpcSubnetArrayInput

type VpcSubnetArrayInput interface {
	pulumi.Input

	ToVpcSubnetArrayOutput() VpcSubnetArrayOutput
	ToVpcSubnetArrayOutputWithContext(context.Context) VpcSubnetArrayOutput
}

VpcSubnetArrayInput is an input type that accepts VpcSubnetArray and VpcSubnetArrayOutput values. You can construct a concrete instance of `VpcSubnetArrayInput` via:

VpcSubnetArray{ VpcSubnetArgs{...} }

type VpcSubnetArrayOutput

type VpcSubnetArrayOutput struct{ *pulumi.OutputState }

func (VpcSubnetArrayOutput) ElementType

func (VpcSubnetArrayOutput) ElementType() reflect.Type

func (VpcSubnetArrayOutput) Index

func (VpcSubnetArrayOutput) ToVpcSubnetArrayOutput

func (o VpcSubnetArrayOutput) ToVpcSubnetArrayOutput() VpcSubnetArrayOutput

func (VpcSubnetArrayOutput) ToVpcSubnetArrayOutputWithContext

func (o VpcSubnetArrayOutput) ToVpcSubnetArrayOutputWithContext(ctx context.Context) VpcSubnetArrayOutput

type VpcSubnetInput

type VpcSubnetInput interface {
	pulumi.Input

	ToVpcSubnetOutput() VpcSubnetOutput
	ToVpcSubnetOutputWithContext(ctx context.Context) VpcSubnetOutput
}

type VpcSubnetMap

type VpcSubnetMap map[string]VpcSubnetInput

func (VpcSubnetMap) ElementType

func (VpcSubnetMap) ElementType() reflect.Type

func (VpcSubnetMap) ToVpcSubnetMapOutput

func (i VpcSubnetMap) ToVpcSubnetMapOutput() VpcSubnetMapOutput

func (VpcSubnetMap) ToVpcSubnetMapOutputWithContext

func (i VpcSubnetMap) ToVpcSubnetMapOutputWithContext(ctx context.Context) VpcSubnetMapOutput

type VpcSubnetMapInput

type VpcSubnetMapInput interface {
	pulumi.Input

	ToVpcSubnetMapOutput() VpcSubnetMapOutput
	ToVpcSubnetMapOutputWithContext(context.Context) VpcSubnetMapOutput
}

VpcSubnetMapInput is an input type that accepts VpcSubnetMap and VpcSubnetMapOutput values. You can construct a concrete instance of `VpcSubnetMapInput` via:

VpcSubnetMap{ "key": VpcSubnetArgs{...} }

type VpcSubnetMapOutput

type VpcSubnetMapOutput struct{ *pulumi.OutputState }

func (VpcSubnetMapOutput) ElementType

func (VpcSubnetMapOutput) ElementType() reflect.Type

func (VpcSubnetMapOutput) MapIndex

func (VpcSubnetMapOutput) ToVpcSubnetMapOutput

func (o VpcSubnetMapOutput) ToVpcSubnetMapOutput() VpcSubnetMapOutput

func (VpcSubnetMapOutput) ToVpcSubnetMapOutputWithContext

func (o VpcSubnetMapOutput) ToVpcSubnetMapOutputWithContext(ctx context.Context) VpcSubnetMapOutput

type VpcSubnetOutput

type VpcSubnetOutput struct{ *pulumi.OutputState }

func (VpcSubnetOutput) Cidr

Specifies the network segment on which the subnet resides. The value must be in CIDR format and within the CIDR block of the iec vpc. Changing this parameter creates a new subnet resource.

func (VpcSubnetOutput) DhcpEnable

func (o VpcSubnetOutput) DhcpEnable() pulumi.BoolPtrOutput

Specifies the status of subnet DHCP is enabled or not. Valid values are **true** and **false**, defaults to **true**.

func (VpcSubnetOutput) DnsLists

Specifies the DNS server address list of a subnet. These DNS server address must be valid IP addresses.

func (VpcSubnetOutput) ElementType

func (VpcSubnetOutput) ElementType() reflect.Type

func (VpcSubnetOutput) GatewayIp

func (o VpcSubnetOutput) GatewayIp() pulumi.StringOutput

Specifies the gateway of the subnet. The value must be a valid IP address and in the subnet segment. Changing this parameter creates a new subnet resource.

func (VpcSubnetOutput) Name

Specifies the name of the iec vpc subnet. The value is a string of 1 to 64 characters that can contain letters, digits, underscores(_), and hyphens(-).

func (VpcSubnetOutput) Region

The region in which to create the iec vpc subnet resource. If omitted, the provider-level region will be used. Changing this creates a new resource.

func (VpcSubnetOutput) SiteId

func (o VpcSubnetOutput) SiteId() pulumi.StringOutput

Specifies the ID of the iec site. Changing this parameter creates a new subnet resource.

func (VpcSubnetOutput) SiteInfo

func (o VpcSubnetOutput) SiteInfo() pulumi.StringOutput

The located information of the iec site. It contains area, province and city.

func (VpcSubnetOutput) Status

func (o VpcSubnetOutput) Status() pulumi.StringOutput

The status of the subnet.

func (VpcSubnetOutput) ToVpcSubnetOutput

func (o VpcSubnetOutput) ToVpcSubnetOutput() VpcSubnetOutput

func (VpcSubnetOutput) ToVpcSubnetOutputWithContext

func (o VpcSubnetOutput) ToVpcSubnetOutputWithContext(ctx context.Context) VpcSubnetOutput

func (VpcSubnetOutput) VpcId

Specifies the ID of the iec **CUSTOMER** vpc to which the subnet belongs. Changing this parameter creates a new subnet resource.

type VpcSubnetState

type VpcSubnetState struct {
	// Specifies the network segment on which the subnet resides. The value must be in
	// CIDR format and within the CIDR block of the iec vpc. Changing this parameter creates a new subnet resource.
	Cidr pulumi.StringPtrInput
	// Specifies the status of subnet DHCP is enabled or not.
	// Valid values are **true** and **false**, defaults to **true**.
	DhcpEnable pulumi.BoolPtrInput
	// Specifies the DNS server address list of a subnet. These DNS server address must be
	// valid IP addresses.
	DnsLists pulumi.StringArrayInput
	// Specifies the gateway of the subnet. The value must be a valid IP address
	// and in the subnet segment. Changing this parameter creates a new subnet resource.
	GatewayIp pulumi.StringPtrInput
	// Specifies the name of the iec vpc subnet. The value is a string of 1 to 64 characters that
	// can contain letters, digits, underscores(_), and hyphens(-).
	Name pulumi.StringPtrInput
	// The region in which to create the iec vpc subnet resource. If omitted, the
	// provider-level region will be used. Changing this creates a new resource.
	Region pulumi.StringPtrInput
	// Specifies the ID of the iec site. Changing this parameter creates a new
	// subnet resource.
	SiteId pulumi.StringPtrInput
	// The located information of the iec site. It contains area, province and city.
	SiteInfo pulumi.StringPtrInput
	// The status of the subnet.
	Status pulumi.StringPtrInput
	// Specifies the ID of the iec **CUSTOMER**
	// vpc to which the subnet belongs. Changing this parameter creates a new subnet resource.
	VpcId pulumi.StringPtrInput
}

func (VpcSubnetState) ElementType

func (VpcSubnetState) ElementType() reflect.Type

Jump to

Keyboard shortcuts

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