ecs

package
v0.0.1 Latest Latest
Warning

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

Go to latest
Published: Dec 21, 2022 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.1

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 Activation

type Activation struct {
	pulumi.CustomResourceState

	// The description of the activation code. The description can be 1 to 100 characters in length and cannot start with `http://` or `https://`.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// The maximum number of times that the activation code can be used to register managed instances. Valid values: `1` to `1000`. Default value: `10`.
	InstanceCount pulumi.IntOutput `pulumi:"instanceCount"`
	// The default instance name prefix. The instance name prefix must be 1 to 50 characters in length. It must start with a letter and cannot start with `http://` or `https://`. The instance name prefix can contain only letters, digits, periods (.), underscores (_), hyphens (-), and colons (:).
	// - If you use the activation code created by the CreateActivation operation to register managed instances, the instances are assigned sequential names that are prefixed by the value of this parameter. You can also specify a new instance name to override the assigned sequential name when you register a managed instance.
	// - If you specify InstanceName when you register a managed instance, an instance name in the format of `<InstanceName>-<Number>` is generated. The number of digits in the <Number> value is determined by that in the InstanceCount value. Example: 001. If you do not specify InstanceName, the hostname (Hostname) is used as the instance name.
	InstanceName pulumi.StringPtrOutput `pulumi:"instanceName"`
	// The IP addresses of hosts that are allowed to use the activation code. The value can be IPv4 addresses, IPv6 addresses, or CIDR blocks.
	IpAddressRange pulumi.StringOutput `pulumi:"ipAddressRange"`
	// The validity period of the activation code. The activation code cannot be used to register new instances after the validity period expires. Unit: hours. Valid values: `1` to `24`. Default value: `4`.
	TimeToLiveInHours pulumi.IntOutput `pulumi:"timeToLiveInHours"`
}

Provides a ECS Activation resource.

For information about ECS Activation and how to use it, see [What is Activation](https://www.alibabacloud.com/help/en/elastic-compute-service/latest/createactivation#doc-api-Ecs-CreateActivation).

> **NOTE:** Available in v1.177.0+.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ecs.NewActivation(ctx, "example", &ecs.ActivationArgs{
			Description:       pulumi.Any(_var.Name),
			InstanceCount:     pulumi.Int(10),
			InstanceName:      pulumi.Any(_var.Name),
			IpAddressRange:    pulumi.String("0.0.0.0/0"),
			TimeToLiveInHours: pulumi.Int(4),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

ECS Activation can be imported using the id, e.g.

```sh

$ pulumi import alicloud:ecs/activation:Activation example <id>

```

func GetActivation

func GetActivation(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ActivationState, opts ...pulumi.ResourceOption) (*Activation, error)

GetActivation gets an existing Activation 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 NewActivation

func NewActivation(ctx *pulumi.Context,
	name string, args *ActivationArgs, opts ...pulumi.ResourceOption) (*Activation, error)

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

func (*Activation) ElementType

func (*Activation) ElementType() reflect.Type

func (*Activation) ToActivationOutput

func (i *Activation) ToActivationOutput() ActivationOutput

func (*Activation) ToActivationOutputWithContext

func (i *Activation) ToActivationOutputWithContext(ctx context.Context) ActivationOutput

type ActivationArgs

type ActivationArgs struct {
	// The description of the activation code. The description can be 1 to 100 characters in length and cannot start with `http://` or `https://`.
	Description pulumi.StringPtrInput
	// The maximum number of times that the activation code can be used to register managed instances. Valid values: `1` to `1000`. Default value: `10`.
	InstanceCount pulumi.IntPtrInput
	// The default instance name prefix. The instance name prefix must be 1 to 50 characters in length. It must start with a letter and cannot start with `http://` or `https://`. The instance name prefix can contain only letters, digits, periods (.), underscores (_), hyphens (-), and colons (:).
	// - If you use the activation code created by the CreateActivation operation to register managed instances, the instances are assigned sequential names that are prefixed by the value of this parameter. You can also specify a new instance name to override the assigned sequential name when you register a managed instance.
	// - If you specify InstanceName when you register a managed instance, an instance name in the format of `<InstanceName>-<Number>` is generated. The number of digits in the <Number> value is determined by that in the InstanceCount value. Example: 001. If you do not specify InstanceName, the hostname (Hostname) is used as the instance name.
	InstanceName pulumi.StringPtrInput
	// The IP addresses of hosts that are allowed to use the activation code. The value can be IPv4 addresses, IPv6 addresses, or CIDR blocks.
	IpAddressRange pulumi.StringPtrInput
	// The validity period of the activation code. The activation code cannot be used to register new instances after the validity period expires. Unit: hours. Valid values: `1` to `24`. Default value: `4`.
	TimeToLiveInHours pulumi.IntPtrInput
}

The set of arguments for constructing a Activation resource.

func (ActivationArgs) ElementType

func (ActivationArgs) ElementType() reflect.Type

type ActivationArray

type ActivationArray []ActivationInput

func (ActivationArray) ElementType

func (ActivationArray) ElementType() reflect.Type

func (ActivationArray) ToActivationArrayOutput

func (i ActivationArray) ToActivationArrayOutput() ActivationArrayOutput

func (ActivationArray) ToActivationArrayOutputWithContext

func (i ActivationArray) ToActivationArrayOutputWithContext(ctx context.Context) ActivationArrayOutput

type ActivationArrayInput

type ActivationArrayInput interface {
	pulumi.Input

	ToActivationArrayOutput() ActivationArrayOutput
	ToActivationArrayOutputWithContext(context.Context) ActivationArrayOutput
}

ActivationArrayInput is an input type that accepts ActivationArray and ActivationArrayOutput values. You can construct a concrete instance of `ActivationArrayInput` via:

ActivationArray{ ActivationArgs{...} }

type ActivationArrayOutput

type ActivationArrayOutput struct{ *pulumi.OutputState }

func (ActivationArrayOutput) ElementType

func (ActivationArrayOutput) ElementType() reflect.Type

func (ActivationArrayOutput) Index

func (ActivationArrayOutput) ToActivationArrayOutput

func (o ActivationArrayOutput) ToActivationArrayOutput() ActivationArrayOutput

func (ActivationArrayOutput) ToActivationArrayOutputWithContext

func (o ActivationArrayOutput) ToActivationArrayOutputWithContext(ctx context.Context) ActivationArrayOutput

type ActivationInput

type ActivationInput interface {
	pulumi.Input

	ToActivationOutput() ActivationOutput
	ToActivationOutputWithContext(ctx context.Context) ActivationOutput
}

type ActivationMap

type ActivationMap map[string]ActivationInput

func (ActivationMap) ElementType

func (ActivationMap) ElementType() reflect.Type

func (ActivationMap) ToActivationMapOutput

func (i ActivationMap) ToActivationMapOutput() ActivationMapOutput

func (ActivationMap) ToActivationMapOutputWithContext

func (i ActivationMap) ToActivationMapOutputWithContext(ctx context.Context) ActivationMapOutput

type ActivationMapInput

type ActivationMapInput interface {
	pulumi.Input

	ToActivationMapOutput() ActivationMapOutput
	ToActivationMapOutputWithContext(context.Context) ActivationMapOutput
}

ActivationMapInput is an input type that accepts ActivationMap and ActivationMapOutput values. You can construct a concrete instance of `ActivationMapInput` via:

ActivationMap{ "key": ActivationArgs{...} }

type ActivationMapOutput

type ActivationMapOutput struct{ *pulumi.OutputState }

func (ActivationMapOutput) ElementType

func (ActivationMapOutput) ElementType() reflect.Type

func (ActivationMapOutput) MapIndex

func (ActivationMapOutput) ToActivationMapOutput

func (o ActivationMapOutput) ToActivationMapOutput() ActivationMapOutput

func (ActivationMapOutput) ToActivationMapOutputWithContext

func (o ActivationMapOutput) ToActivationMapOutputWithContext(ctx context.Context) ActivationMapOutput

type ActivationOutput

type ActivationOutput struct{ *pulumi.OutputState }

func (ActivationOutput) Description

func (o ActivationOutput) Description() pulumi.StringPtrOutput

The description of the activation code. The description can be 1 to 100 characters in length and cannot start with `http://` or `https://`.

func (ActivationOutput) ElementType

func (ActivationOutput) ElementType() reflect.Type

func (ActivationOutput) InstanceCount

func (o ActivationOutput) InstanceCount() pulumi.IntOutput

The maximum number of times that the activation code can be used to register managed instances. Valid values: `1` to `1000`. Default value: `10`.

func (ActivationOutput) InstanceName

func (o ActivationOutput) InstanceName() pulumi.StringPtrOutput

The default instance name prefix. The instance name prefix must be 1 to 50 characters in length. It must start with a letter and cannot start with `http://` or `https://`. The instance name prefix can contain only letters, digits, periods (.), underscores (_), hyphens (-), and colons (:). - If you use the activation code created by the CreateActivation operation to register managed instances, the instances are assigned sequential names that are prefixed by the value of this parameter. You can also specify a new instance name to override the assigned sequential name when you register a managed instance. - If you specify InstanceName when you register a managed instance, an instance name in the format of `<InstanceName>-<Number>` is generated. The number of digits in the <Number> value is determined by that in the InstanceCount value. Example: 001. If you do not specify InstanceName, the hostname (Hostname) is used as the instance name.

func (ActivationOutput) IpAddressRange

func (o ActivationOutput) IpAddressRange() pulumi.StringOutput

The IP addresses of hosts that are allowed to use the activation code. The value can be IPv4 addresses, IPv6 addresses, or CIDR blocks.

func (ActivationOutput) TimeToLiveInHours

func (o ActivationOutput) TimeToLiveInHours() pulumi.IntOutput

The validity period of the activation code. The activation code cannot be used to register new instances after the validity period expires. Unit: hours. Valid values: `1` to `24`. Default value: `4`.

func (ActivationOutput) ToActivationOutput

func (o ActivationOutput) ToActivationOutput() ActivationOutput

func (ActivationOutput) ToActivationOutputWithContext

func (o ActivationOutput) ToActivationOutputWithContext(ctx context.Context) ActivationOutput

type ActivationState

type ActivationState struct {
	// The description of the activation code. The description can be 1 to 100 characters in length and cannot start with `http://` or `https://`.
	Description pulumi.StringPtrInput
	// The maximum number of times that the activation code can be used to register managed instances. Valid values: `1` to `1000`. Default value: `10`.
	InstanceCount pulumi.IntPtrInput
	// The default instance name prefix. The instance name prefix must be 1 to 50 characters in length. It must start with a letter and cannot start with `http://` or `https://`. The instance name prefix can contain only letters, digits, periods (.), underscores (_), hyphens (-), and colons (:).
	// - If you use the activation code created by the CreateActivation operation to register managed instances, the instances are assigned sequential names that are prefixed by the value of this parameter. You can also specify a new instance name to override the assigned sequential name when you register a managed instance.
	// - If you specify InstanceName when you register a managed instance, an instance name in the format of `<InstanceName>-<Number>` is generated. The number of digits in the <Number> value is determined by that in the InstanceCount value. Example: 001. If you do not specify InstanceName, the hostname (Hostname) is used as the instance name.
	InstanceName pulumi.StringPtrInput
	// The IP addresses of hosts that are allowed to use the activation code. The value can be IPv4 addresses, IPv6 addresses, or CIDR blocks.
	IpAddressRange pulumi.StringPtrInput
	// The validity period of the activation code. The activation code cannot be used to register new instances after the validity period expires. Unit: hours. Valid values: `1` to `24`. Default value: `4`.
	TimeToLiveInHours pulumi.IntPtrInput
}

func (ActivationState) ElementType

func (ActivationState) ElementType() reflect.Type

type AutoProvisioningGroup

type AutoProvisioningGroup struct {
	pulumi.CustomResourceState

	// The name of the auto provisioning group to be created. It must be 2 to 128 characters in length. It must start with a letter but cannot start with http:// or https://. It can contain letters, digits, colons (:), underscores (_), and hyphens (-)
	AutoProvisioningGroupName pulumi.StringOutput `pulumi:"autoProvisioningGroupName"`
	// The type of the auto provisioning group. Valid values:`request` and `maintain`,Default value: `maintain`.
	AutoProvisioningGroupType pulumi.StringPtrOutput `pulumi:"autoProvisioningGroupType"`
	// The type of supplemental instances. When the total value of `PayAsYouGoTargetCapacity` and `SpotTargetCapacity` is smaller than the value of TotalTargetCapacity, the auto provisioning group will create instances of the specified type to meet the capacity requirements. Valid values:`PayAsYouGo`: Pay-as-you-go instances; `Spot`: Preemptible instances, Default value: `Spot`.
	DefaultTargetCapacityType pulumi.StringPtrOutput `pulumi:"defaultTargetCapacityType"`
	// The description of the auto provisioning group.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// The shutdown policy for excess preemptible instances followed when the capacity of the auto provisioning group exceeds the target capacity. Valid values: `no-termination` and `termination`,Default value: `no-termination`.
	ExcessCapacityTerminationPolicy pulumi.StringPtrOutput `pulumi:"excessCapacityTerminationPolicy"`
	// DataDisk mappings to attach to ecs instance. See Block config below for details.
	LaunchTemplateConfigs AutoProvisioningGroupLaunchTemplateConfigArrayOutput `pulumi:"launchTemplateConfigs"`
	// The ID of the instance launch template associated with the auto provisioning group.
	LaunchTemplateId pulumi.StringOutput `pulumi:"launchTemplateId"`
	// The version of the instance launch template associated with the auto provisioning group.
	LaunchTemplateVersion pulumi.StringOutput `pulumi:"launchTemplateVersion"`
	// The global maximum price for preemptible instances in the auto provisioning group. If both the `MaxSpotPrice` and `LaunchTemplateConfig.N.MaxPrice` parameters are specified, the maximum price is the lower value of the two.
	MaxSpotPrice pulumi.Float64Output `pulumi:"maxSpotPrice"`
	// The scale-out policy for pay-as-you-go instances. Valid values: `lowest-price` and `prioritized`,Default value: `lowest-price`.
	PayAsYouGoAllocationStrategy pulumi.StringPtrOutput `pulumi:"payAsYouGoAllocationStrategy"`
	// The target capacity of pay-as-you-go instances in the auto provisioning group.
	PayAsYouGoTargetCapacity pulumi.StringPtrOutput `pulumi:"payAsYouGoTargetCapacity"`
	// The scale-out policy for preemptible instances. Valid values:`lowest-price` and `diversified`,Default value: `lowest-price`.
	SpotAllocationStrategy pulumi.StringPtrOutput `pulumi:"spotAllocationStrategy"`
	// The default behavior after preemptible instances are shut down. Valid values: `stop` and `terminate`,Default value: `stop`.
	SpotInstanceInterruptionBehavior pulumi.StringPtrOutput `pulumi:"spotInstanceInterruptionBehavior"`
	// This parameter takes effect when the `SpotAllocationStrategy` parameter is set to `lowest-price`. The auto provisioning group selects instance types of the lowest cost to create instances.
	SpotInstancePoolsToUseCount pulumi.IntOutput `pulumi:"spotInstancePoolsToUseCount"`
	// The target capacity of preemptible instances in the auto provisioning group.
	SpotTargetCapacity pulumi.StringPtrOutput `pulumi:"spotTargetCapacity"`
	// Specifies whether to release instances of the auto provisioning group. Valid values:`false` and `true`, default value: `false`.
	TerminateInstances pulumi.BoolPtrOutput `pulumi:"terminateInstances"`
	// The shutdown policy for preemptible instances when the auto provisioning group expires. Valid values: `false` and `true`, default value: `false`.
	TerminateInstancesWithExpiration pulumi.BoolPtrOutput `pulumi:"terminateInstancesWithExpiration"`
	// The total target capacity of the auto provisioning group. The target capacity consists of the following three parts:PayAsYouGoTargetCapacity,SpotTargetCapacity and the supplemental capacity besides PayAsYouGoTargetCapacity and SpotTargetCapacity.
	TotalTargetCapacity pulumi.StringOutput `pulumi:"totalTargetCapacity"`
	// The time when the auto provisioning group is started. The period of time between this point in time and the point in time specified by the `validUntil` parameter is the effective time period of the auto provisioning group.By default, an auto provisioning group is immediately started after creation.
	ValidFrom pulumi.StringOutput `pulumi:"validFrom"`
	// The time when the auto provisioning group expires. The period of time between this point in time and the point in time specified by the `validFrom` parameter is the effective time period of the auto provisioning group.By default, an auto provisioning group never expires.
	ValidUntil pulumi.StringOutput `pulumi:"validUntil"`
}

Provides a ECS auto provisioning group resource which is a solution that uses preemptive instances and payAsYouGo instances to rapidly deploy clusters.

> **NOTE:** Available in 1.79.0+

## Example Usage

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		name := "auto_provisioning_group"
		if param := cfg.Get("name"); param != "" {
			name = param
		}
		defaultZones, err := alicloud.GetZones(ctx, &GetZonesArgs{
			AvailableDiskCategory:     pulumi.StringRef("cloud_efficiency"),
			AvailableResourceCreation: pulumi.StringRef("VSwitch"),
		}, nil)
		if err != nil {
			return err
		}
		defaultNetwork, err := vpc.NewNetwork(ctx, "defaultNetwork", &vpc.NetworkArgs{
			VpcName:   pulumi.String(name),
			CidrBlock: pulumi.String("172.16.0.0/16"),
		})
		if err != nil {
			return err
		}
		defaultSwitch, err := vpc.NewSwitch(ctx, "defaultSwitch", &vpc.SwitchArgs{
			VpcId:       defaultNetwork.ID(),
			CidrBlock:   pulumi.String("172.16.0.0/24"),
			ZoneId:      pulumi.String(defaultZones.Zones[0].Id),
			VswitchName: pulumi.String(name),
		})
		if err != nil {
			return err
		}
		defaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, "defaultSecurityGroup", &ecs.SecurityGroupArgs{
			VpcId: defaultNetwork.ID(),
		})
		if err != nil {
			return err
		}
		defaultImages, err := ecs.GetImages(ctx, &ecs.GetImagesArgs{
			NameRegex:  pulumi.StringRef("^ubuntu_18.*64"),
			MostRecent: pulumi.BoolRef(true),
			Owners:     pulumi.StringRef("system"),
		}, nil)
		if err != nil {
			return err
		}
		template, err := ecs.NewEcsLaunchTemplate(ctx, "template", &ecs.EcsLaunchTemplateArgs{
			ImageId:         pulumi.String(defaultImages.Images[0].Id),
			InstanceType:    pulumi.String("ecs.n1.tiny"),
			SecurityGroupId: defaultSecurityGroup.ID(),
		})
		if err != nil {
			return err
		}
		_, err = ecs.NewAutoProvisioningGroup(ctx, "defaultAutoProvisioningGroup", &ecs.AutoProvisioningGroupArgs{
			LaunchTemplateId:         template.ID(),
			TotalTargetCapacity:      pulumi.String("4"),
			PayAsYouGoTargetCapacity: pulumi.String("1"),
			SpotTargetCapacity:       pulumi.String("2"),
			LaunchTemplateConfigs: ecs.AutoProvisioningGroupLaunchTemplateConfigArray{
				&ecs.AutoProvisioningGroupLaunchTemplateConfigArgs{
					InstanceType:     pulumi.String("ecs.n1.small"),
					VswitchId:        defaultSwitch.ID(),
					WeightedCapacity: pulumi.String("2"),
					MaxPrice:         pulumi.String("2"),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ## Block config

The config mapping supports the following: * `instanceType` - (Optional) The instance type of the Nth extended configurations of the launch template. * `maxPrice` - (Required) The maximum price of the instance type specified in the Nth extended configurations of the launch template. * `vswitchId` - (Required) The ID of the VSwitch in the Nth extended configurations of the launch template. * `weightedCapacity` - (Required) The weight of the instance type specified in the Nth extended configurations of the launch template. * `priority` - (Optional) The priority of the instance type specified in the Nth extended configurations of the launch template. A value of 0 indicates the highest priority.

## Import

ECS auto provisioning group can be imported using the id, e.g.

```sh

$ pulumi import alicloud:ecs/autoProvisioningGroup:AutoProvisioningGroup example asg-abc123456

```

func GetAutoProvisioningGroup

func GetAutoProvisioningGroup(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AutoProvisioningGroupState, opts ...pulumi.ResourceOption) (*AutoProvisioningGroup, error)

GetAutoProvisioningGroup gets an existing AutoProvisioningGroup 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 NewAutoProvisioningGroup

func NewAutoProvisioningGroup(ctx *pulumi.Context,
	name string, args *AutoProvisioningGroupArgs, opts ...pulumi.ResourceOption) (*AutoProvisioningGroup, error)

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

func (*AutoProvisioningGroup) ElementType

func (*AutoProvisioningGroup) ElementType() reflect.Type

func (*AutoProvisioningGroup) ToAutoProvisioningGroupOutput

func (i *AutoProvisioningGroup) ToAutoProvisioningGroupOutput() AutoProvisioningGroupOutput

func (*AutoProvisioningGroup) ToAutoProvisioningGroupOutputWithContext

func (i *AutoProvisioningGroup) ToAutoProvisioningGroupOutputWithContext(ctx context.Context) AutoProvisioningGroupOutput

type AutoProvisioningGroupArgs

type AutoProvisioningGroupArgs struct {
	// The name of the auto provisioning group to be created. It must be 2 to 128 characters in length. It must start with a letter but cannot start with http:// or https://. It can contain letters, digits, colons (:), underscores (_), and hyphens (-)
	AutoProvisioningGroupName pulumi.StringPtrInput
	// The type of the auto provisioning group. Valid values:`request` and `maintain`,Default value: `maintain`.
	AutoProvisioningGroupType pulumi.StringPtrInput
	// The type of supplemental instances. When the total value of `PayAsYouGoTargetCapacity` and `SpotTargetCapacity` is smaller than the value of TotalTargetCapacity, the auto provisioning group will create instances of the specified type to meet the capacity requirements. Valid values:`PayAsYouGo`: Pay-as-you-go instances; `Spot`: Preemptible instances, Default value: `Spot`.
	DefaultTargetCapacityType pulumi.StringPtrInput
	// The description of the auto provisioning group.
	Description pulumi.StringPtrInput
	// The shutdown policy for excess preemptible instances followed when the capacity of the auto provisioning group exceeds the target capacity. Valid values: `no-termination` and `termination`,Default value: `no-termination`.
	ExcessCapacityTerminationPolicy pulumi.StringPtrInput
	// DataDisk mappings to attach to ecs instance. See Block config below for details.
	LaunchTemplateConfigs AutoProvisioningGroupLaunchTemplateConfigArrayInput
	// The ID of the instance launch template associated with the auto provisioning group.
	LaunchTemplateId pulumi.StringInput
	// The version of the instance launch template associated with the auto provisioning group.
	LaunchTemplateVersion pulumi.StringPtrInput
	// The global maximum price for preemptible instances in the auto provisioning group. If both the `MaxSpotPrice` and `LaunchTemplateConfig.N.MaxPrice` parameters are specified, the maximum price is the lower value of the two.
	MaxSpotPrice pulumi.Float64PtrInput
	// The scale-out policy for pay-as-you-go instances. Valid values: `lowest-price` and `prioritized`,Default value: `lowest-price`.
	PayAsYouGoAllocationStrategy pulumi.StringPtrInput
	// The target capacity of pay-as-you-go instances in the auto provisioning group.
	PayAsYouGoTargetCapacity pulumi.StringPtrInput
	// The scale-out policy for preemptible instances. Valid values:`lowest-price` and `diversified`,Default value: `lowest-price`.
	SpotAllocationStrategy pulumi.StringPtrInput
	// The default behavior after preemptible instances are shut down. Valid values: `stop` and `terminate`,Default value: `stop`.
	SpotInstanceInterruptionBehavior pulumi.StringPtrInput
	// This parameter takes effect when the `SpotAllocationStrategy` parameter is set to `lowest-price`. The auto provisioning group selects instance types of the lowest cost to create instances.
	SpotInstancePoolsToUseCount pulumi.IntPtrInput
	// The target capacity of preemptible instances in the auto provisioning group.
	SpotTargetCapacity pulumi.StringPtrInput
	// Specifies whether to release instances of the auto provisioning group. Valid values:`false` and `true`, default value: `false`.
	TerminateInstances pulumi.BoolPtrInput
	// The shutdown policy for preemptible instances when the auto provisioning group expires. Valid values: `false` and `true`, default value: `false`.
	TerminateInstancesWithExpiration pulumi.BoolPtrInput
	// The total target capacity of the auto provisioning group. The target capacity consists of the following three parts:PayAsYouGoTargetCapacity,SpotTargetCapacity and the supplemental capacity besides PayAsYouGoTargetCapacity and SpotTargetCapacity.
	TotalTargetCapacity pulumi.StringInput
	// The time when the auto provisioning group is started. The period of time between this point in time and the point in time specified by the `validUntil` parameter is the effective time period of the auto provisioning group.By default, an auto provisioning group is immediately started after creation.
	ValidFrom pulumi.StringPtrInput
	// The time when the auto provisioning group expires. The period of time between this point in time and the point in time specified by the `validFrom` parameter is the effective time period of the auto provisioning group.By default, an auto provisioning group never expires.
	ValidUntil pulumi.StringPtrInput
}

The set of arguments for constructing a AutoProvisioningGroup resource.

func (AutoProvisioningGroupArgs) ElementType

func (AutoProvisioningGroupArgs) ElementType() reflect.Type

type AutoProvisioningGroupArray

type AutoProvisioningGroupArray []AutoProvisioningGroupInput

func (AutoProvisioningGroupArray) ElementType

func (AutoProvisioningGroupArray) ElementType() reflect.Type

func (AutoProvisioningGroupArray) ToAutoProvisioningGroupArrayOutput

func (i AutoProvisioningGroupArray) ToAutoProvisioningGroupArrayOutput() AutoProvisioningGroupArrayOutput

func (AutoProvisioningGroupArray) ToAutoProvisioningGroupArrayOutputWithContext

func (i AutoProvisioningGroupArray) ToAutoProvisioningGroupArrayOutputWithContext(ctx context.Context) AutoProvisioningGroupArrayOutput

type AutoProvisioningGroupArrayInput

type AutoProvisioningGroupArrayInput interface {
	pulumi.Input

	ToAutoProvisioningGroupArrayOutput() AutoProvisioningGroupArrayOutput
	ToAutoProvisioningGroupArrayOutputWithContext(context.Context) AutoProvisioningGroupArrayOutput
}

AutoProvisioningGroupArrayInput is an input type that accepts AutoProvisioningGroupArray and AutoProvisioningGroupArrayOutput values. You can construct a concrete instance of `AutoProvisioningGroupArrayInput` via:

AutoProvisioningGroupArray{ AutoProvisioningGroupArgs{...} }

type AutoProvisioningGroupArrayOutput

type AutoProvisioningGroupArrayOutput struct{ *pulumi.OutputState }

func (AutoProvisioningGroupArrayOutput) ElementType

func (AutoProvisioningGroupArrayOutput) Index

func (AutoProvisioningGroupArrayOutput) ToAutoProvisioningGroupArrayOutput

func (o AutoProvisioningGroupArrayOutput) ToAutoProvisioningGroupArrayOutput() AutoProvisioningGroupArrayOutput

func (AutoProvisioningGroupArrayOutput) ToAutoProvisioningGroupArrayOutputWithContext

func (o AutoProvisioningGroupArrayOutput) ToAutoProvisioningGroupArrayOutputWithContext(ctx context.Context) AutoProvisioningGroupArrayOutput

type AutoProvisioningGroupInput

type AutoProvisioningGroupInput interface {
	pulumi.Input

	ToAutoProvisioningGroupOutput() AutoProvisioningGroupOutput
	ToAutoProvisioningGroupOutputWithContext(ctx context.Context) AutoProvisioningGroupOutput
}

type AutoProvisioningGroupLaunchTemplateConfig

type AutoProvisioningGroupLaunchTemplateConfig struct {
	InstanceType     *string `pulumi:"instanceType"`
	MaxPrice         string  `pulumi:"maxPrice"`
	Priority         *string `pulumi:"priority"`
	VswitchId        string  `pulumi:"vswitchId"`
	WeightedCapacity string  `pulumi:"weightedCapacity"`
}

type AutoProvisioningGroupLaunchTemplateConfigArgs

type AutoProvisioningGroupLaunchTemplateConfigArgs struct {
	InstanceType     pulumi.StringPtrInput `pulumi:"instanceType"`
	MaxPrice         pulumi.StringInput    `pulumi:"maxPrice"`
	Priority         pulumi.StringPtrInput `pulumi:"priority"`
	VswitchId        pulumi.StringInput    `pulumi:"vswitchId"`
	WeightedCapacity pulumi.StringInput    `pulumi:"weightedCapacity"`
}

func (AutoProvisioningGroupLaunchTemplateConfigArgs) ElementType

func (AutoProvisioningGroupLaunchTemplateConfigArgs) ToAutoProvisioningGroupLaunchTemplateConfigOutput

func (i AutoProvisioningGroupLaunchTemplateConfigArgs) ToAutoProvisioningGroupLaunchTemplateConfigOutput() AutoProvisioningGroupLaunchTemplateConfigOutput

func (AutoProvisioningGroupLaunchTemplateConfigArgs) ToAutoProvisioningGroupLaunchTemplateConfigOutputWithContext

func (i AutoProvisioningGroupLaunchTemplateConfigArgs) ToAutoProvisioningGroupLaunchTemplateConfigOutputWithContext(ctx context.Context) AutoProvisioningGroupLaunchTemplateConfigOutput

type AutoProvisioningGroupLaunchTemplateConfigArray

type AutoProvisioningGroupLaunchTemplateConfigArray []AutoProvisioningGroupLaunchTemplateConfigInput

func (AutoProvisioningGroupLaunchTemplateConfigArray) ElementType

func (AutoProvisioningGroupLaunchTemplateConfigArray) ToAutoProvisioningGroupLaunchTemplateConfigArrayOutput

func (i AutoProvisioningGroupLaunchTemplateConfigArray) ToAutoProvisioningGroupLaunchTemplateConfigArrayOutput() AutoProvisioningGroupLaunchTemplateConfigArrayOutput

func (AutoProvisioningGroupLaunchTemplateConfigArray) ToAutoProvisioningGroupLaunchTemplateConfigArrayOutputWithContext

func (i AutoProvisioningGroupLaunchTemplateConfigArray) ToAutoProvisioningGroupLaunchTemplateConfigArrayOutputWithContext(ctx context.Context) AutoProvisioningGroupLaunchTemplateConfigArrayOutput

type AutoProvisioningGroupLaunchTemplateConfigArrayInput

type AutoProvisioningGroupLaunchTemplateConfigArrayInput interface {
	pulumi.Input

	ToAutoProvisioningGroupLaunchTemplateConfigArrayOutput() AutoProvisioningGroupLaunchTemplateConfigArrayOutput
	ToAutoProvisioningGroupLaunchTemplateConfigArrayOutputWithContext(context.Context) AutoProvisioningGroupLaunchTemplateConfigArrayOutput
}

AutoProvisioningGroupLaunchTemplateConfigArrayInput is an input type that accepts AutoProvisioningGroupLaunchTemplateConfigArray and AutoProvisioningGroupLaunchTemplateConfigArrayOutput values. You can construct a concrete instance of `AutoProvisioningGroupLaunchTemplateConfigArrayInput` via:

AutoProvisioningGroupLaunchTemplateConfigArray{ AutoProvisioningGroupLaunchTemplateConfigArgs{...} }

type AutoProvisioningGroupLaunchTemplateConfigArrayOutput

type AutoProvisioningGroupLaunchTemplateConfigArrayOutput struct{ *pulumi.OutputState }

func (AutoProvisioningGroupLaunchTemplateConfigArrayOutput) ElementType

func (AutoProvisioningGroupLaunchTemplateConfigArrayOutput) Index

func (AutoProvisioningGroupLaunchTemplateConfigArrayOutput) ToAutoProvisioningGroupLaunchTemplateConfigArrayOutput

func (AutoProvisioningGroupLaunchTemplateConfigArrayOutput) ToAutoProvisioningGroupLaunchTemplateConfigArrayOutputWithContext

func (o AutoProvisioningGroupLaunchTemplateConfigArrayOutput) ToAutoProvisioningGroupLaunchTemplateConfigArrayOutputWithContext(ctx context.Context) AutoProvisioningGroupLaunchTemplateConfigArrayOutput

type AutoProvisioningGroupLaunchTemplateConfigInput

type AutoProvisioningGroupLaunchTemplateConfigInput interface {
	pulumi.Input

	ToAutoProvisioningGroupLaunchTemplateConfigOutput() AutoProvisioningGroupLaunchTemplateConfigOutput
	ToAutoProvisioningGroupLaunchTemplateConfigOutputWithContext(context.Context) AutoProvisioningGroupLaunchTemplateConfigOutput
}

AutoProvisioningGroupLaunchTemplateConfigInput is an input type that accepts AutoProvisioningGroupLaunchTemplateConfigArgs and AutoProvisioningGroupLaunchTemplateConfigOutput values. You can construct a concrete instance of `AutoProvisioningGroupLaunchTemplateConfigInput` via:

AutoProvisioningGroupLaunchTemplateConfigArgs{...}

type AutoProvisioningGroupLaunchTemplateConfigOutput

type AutoProvisioningGroupLaunchTemplateConfigOutput struct{ *pulumi.OutputState }

func (AutoProvisioningGroupLaunchTemplateConfigOutput) ElementType

func (AutoProvisioningGroupLaunchTemplateConfigOutput) InstanceType

func (AutoProvisioningGroupLaunchTemplateConfigOutput) MaxPrice

func (AutoProvisioningGroupLaunchTemplateConfigOutput) Priority

func (AutoProvisioningGroupLaunchTemplateConfigOutput) ToAutoProvisioningGroupLaunchTemplateConfigOutput

func (o AutoProvisioningGroupLaunchTemplateConfigOutput) ToAutoProvisioningGroupLaunchTemplateConfigOutput() AutoProvisioningGroupLaunchTemplateConfigOutput

func (AutoProvisioningGroupLaunchTemplateConfigOutput) ToAutoProvisioningGroupLaunchTemplateConfigOutputWithContext

func (o AutoProvisioningGroupLaunchTemplateConfigOutput) ToAutoProvisioningGroupLaunchTemplateConfigOutputWithContext(ctx context.Context) AutoProvisioningGroupLaunchTemplateConfigOutput

func (AutoProvisioningGroupLaunchTemplateConfigOutput) VswitchId

func (AutoProvisioningGroupLaunchTemplateConfigOutput) WeightedCapacity

type AutoProvisioningGroupMap

type AutoProvisioningGroupMap map[string]AutoProvisioningGroupInput

func (AutoProvisioningGroupMap) ElementType

func (AutoProvisioningGroupMap) ElementType() reflect.Type

func (AutoProvisioningGroupMap) ToAutoProvisioningGroupMapOutput

func (i AutoProvisioningGroupMap) ToAutoProvisioningGroupMapOutput() AutoProvisioningGroupMapOutput

func (AutoProvisioningGroupMap) ToAutoProvisioningGroupMapOutputWithContext

func (i AutoProvisioningGroupMap) ToAutoProvisioningGroupMapOutputWithContext(ctx context.Context) AutoProvisioningGroupMapOutput

type AutoProvisioningGroupMapInput

type AutoProvisioningGroupMapInput interface {
	pulumi.Input

	ToAutoProvisioningGroupMapOutput() AutoProvisioningGroupMapOutput
	ToAutoProvisioningGroupMapOutputWithContext(context.Context) AutoProvisioningGroupMapOutput
}

AutoProvisioningGroupMapInput is an input type that accepts AutoProvisioningGroupMap and AutoProvisioningGroupMapOutput values. You can construct a concrete instance of `AutoProvisioningGroupMapInput` via:

AutoProvisioningGroupMap{ "key": AutoProvisioningGroupArgs{...} }

type AutoProvisioningGroupMapOutput

type AutoProvisioningGroupMapOutput struct{ *pulumi.OutputState }

func (AutoProvisioningGroupMapOutput) ElementType

func (AutoProvisioningGroupMapOutput) MapIndex

func (AutoProvisioningGroupMapOutput) ToAutoProvisioningGroupMapOutput

func (o AutoProvisioningGroupMapOutput) ToAutoProvisioningGroupMapOutput() AutoProvisioningGroupMapOutput

func (AutoProvisioningGroupMapOutput) ToAutoProvisioningGroupMapOutputWithContext

func (o AutoProvisioningGroupMapOutput) ToAutoProvisioningGroupMapOutputWithContext(ctx context.Context) AutoProvisioningGroupMapOutput

type AutoProvisioningGroupOutput

type AutoProvisioningGroupOutput struct{ *pulumi.OutputState }

func (AutoProvisioningGroupOutput) AutoProvisioningGroupName

func (o AutoProvisioningGroupOutput) AutoProvisioningGroupName() pulumi.StringOutput

The name of the auto provisioning group to be created. It must be 2 to 128 characters in length. It must start with a letter but cannot start with http:// or https://. It can contain letters, digits, colons (:), underscores (_), and hyphens (-)

func (AutoProvisioningGroupOutput) AutoProvisioningGroupType

func (o AutoProvisioningGroupOutput) AutoProvisioningGroupType() pulumi.StringPtrOutput

The type of the auto provisioning group. Valid values:`request` and `maintain`,Default value: `maintain`.

func (AutoProvisioningGroupOutput) DefaultTargetCapacityType

func (o AutoProvisioningGroupOutput) DefaultTargetCapacityType() pulumi.StringPtrOutput

The type of supplemental instances. When the total value of `PayAsYouGoTargetCapacity` and `SpotTargetCapacity` is smaller than the value of TotalTargetCapacity, the auto provisioning group will create instances of the specified type to meet the capacity requirements. Valid values:`PayAsYouGo`: Pay-as-you-go instances; `Spot`: Preemptible instances, Default value: `Spot`.

func (AutoProvisioningGroupOutput) Description

The description of the auto provisioning group.

func (AutoProvisioningGroupOutput) ElementType

func (AutoProvisioningGroupOutput) ExcessCapacityTerminationPolicy

func (o AutoProvisioningGroupOutput) ExcessCapacityTerminationPolicy() pulumi.StringPtrOutput

The shutdown policy for excess preemptible instances followed when the capacity of the auto provisioning group exceeds the target capacity. Valid values: `no-termination` and `termination`,Default value: `no-termination`.

func (AutoProvisioningGroupOutput) LaunchTemplateConfigs

DataDisk mappings to attach to ecs instance. See Block config below for details.

func (AutoProvisioningGroupOutput) LaunchTemplateId

func (o AutoProvisioningGroupOutput) LaunchTemplateId() pulumi.StringOutput

The ID of the instance launch template associated with the auto provisioning group.

func (AutoProvisioningGroupOutput) LaunchTemplateVersion

func (o AutoProvisioningGroupOutput) LaunchTemplateVersion() pulumi.StringOutput

The version of the instance launch template associated with the auto provisioning group.

func (AutoProvisioningGroupOutput) MaxSpotPrice

The global maximum price for preemptible instances in the auto provisioning group. If both the `MaxSpotPrice` and `LaunchTemplateConfig.N.MaxPrice` parameters are specified, the maximum price is the lower value of the two.

func (AutoProvisioningGroupOutput) PayAsYouGoAllocationStrategy

func (o AutoProvisioningGroupOutput) PayAsYouGoAllocationStrategy() pulumi.StringPtrOutput

The scale-out policy for pay-as-you-go instances. Valid values: `lowest-price` and `prioritized`,Default value: `lowest-price`.

func (AutoProvisioningGroupOutput) PayAsYouGoTargetCapacity

func (o AutoProvisioningGroupOutput) PayAsYouGoTargetCapacity() pulumi.StringPtrOutput

The target capacity of pay-as-you-go instances in the auto provisioning group.

func (AutoProvisioningGroupOutput) SpotAllocationStrategy

func (o AutoProvisioningGroupOutput) SpotAllocationStrategy() pulumi.StringPtrOutput

The scale-out policy for preemptible instances. Valid values:`lowest-price` and `diversified`,Default value: `lowest-price`.

func (AutoProvisioningGroupOutput) SpotInstanceInterruptionBehavior

func (o AutoProvisioningGroupOutput) SpotInstanceInterruptionBehavior() pulumi.StringPtrOutput

The default behavior after preemptible instances are shut down. Valid values: `stop` and `terminate`,Default value: `stop`.

func (AutoProvisioningGroupOutput) SpotInstancePoolsToUseCount

func (o AutoProvisioningGroupOutput) SpotInstancePoolsToUseCount() pulumi.IntOutput

This parameter takes effect when the `SpotAllocationStrategy` parameter is set to `lowest-price`. The auto provisioning group selects instance types of the lowest cost to create instances.

func (AutoProvisioningGroupOutput) SpotTargetCapacity

func (o AutoProvisioningGroupOutput) SpotTargetCapacity() pulumi.StringPtrOutput

The target capacity of preemptible instances in the auto provisioning group.

func (AutoProvisioningGroupOutput) TerminateInstances

func (o AutoProvisioningGroupOutput) TerminateInstances() pulumi.BoolPtrOutput

Specifies whether to release instances of the auto provisioning group. Valid values:`false` and `true`, default value: `false`.

func (AutoProvisioningGroupOutput) TerminateInstancesWithExpiration

func (o AutoProvisioningGroupOutput) TerminateInstancesWithExpiration() pulumi.BoolPtrOutput

The shutdown policy for preemptible instances when the auto provisioning group expires. Valid values: `false` and `true`, default value: `false`.

func (AutoProvisioningGroupOutput) ToAutoProvisioningGroupOutput

func (o AutoProvisioningGroupOutput) ToAutoProvisioningGroupOutput() AutoProvisioningGroupOutput

func (AutoProvisioningGroupOutput) ToAutoProvisioningGroupOutputWithContext

func (o AutoProvisioningGroupOutput) ToAutoProvisioningGroupOutputWithContext(ctx context.Context) AutoProvisioningGroupOutput

func (AutoProvisioningGroupOutput) TotalTargetCapacity

func (o AutoProvisioningGroupOutput) TotalTargetCapacity() pulumi.StringOutput

The total target capacity of the auto provisioning group. The target capacity consists of the following three parts:PayAsYouGoTargetCapacity,SpotTargetCapacity and the supplemental capacity besides PayAsYouGoTargetCapacity and SpotTargetCapacity.

func (AutoProvisioningGroupOutput) ValidFrom

The time when the auto provisioning group is started. The period of time between this point in time and the point in time specified by the `validUntil` parameter is the effective time period of the auto provisioning group.By default, an auto provisioning group is immediately started after creation.

func (AutoProvisioningGroupOutput) ValidUntil

The time when the auto provisioning group expires. The period of time between this point in time and the point in time specified by the `validFrom` parameter is the effective time period of the auto provisioning group.By default, an auto provisioning group never expires.

type AutoProvisioningGroupState

type AutoProvisioningGroupState struct {
	// The name of the auto provisioning group to be created. It must be 2 to 128 characters in length. It must start with a letter but cannot start with http:// or https://. It can contain letters, digits, colons (:), underscores (_), and hyphens (-)
	AutoProvisioningGroupName pulumi.StringPtrInput
	// The type of the auto provisioning group. Valid values:`request` and `maintain`,Default value: `maintain`.
	AutoProvisioningGroupType pulumi.StringPtrInput
	// The type of supplemental instances. When the total value of `PayAsYouGoTargetCapacity` and `SpotTargetCapacity` is smaller than the value of TotalTargetCapacity, the auto provisioning group will create instances of the specified type to meet the capacity requirements. Valid values:`PayAsYouGo`: Pay-as-you-go instances; `Spot`: Preemptible instances, Default value: `Spot`.
	DefaultTargetCapacityType pulumi.StringPtrInput
	// The description of the auto provisioning group.
	Description pulumi.StringPtrInput
	// The shutdown policy for excess preemptible instances followed when the capacity of the auto provisioning group exceeds the target capacity. Valid values: `no-termination` and `termination`,Default value: `no-termination`.
	ExcessCapacityTerminationPolicy pulumi.StringPtrInput
	// DataDisk mappings to attach to ecs instance. See Block config below for details.
	LaunchTemplateConfigs AutoProvisioningGroupLaunchTemplateConfigArrayInput
	// The ID of the instance launch template associated with the auto provisioning group.
	LaunchTemplateId pulumi.StringPtrInput
	// The version of the instance launch template associated with the auto provisioning group.
	LaunchTemplateVersion pulumi.StringPtrInput
	// The global maximum price for preemptible instances in the auto provisioning group. If both the `MaxSpotPrice` and `LaunchTemplateConfig.N.MaxPrice` parameters are specified, the maximum price is the lower value of the two.
	MaxSpotPrice pulumi.Float64PtrInput
	// The scale-out policy for pay-as-you-go instances. Valid values: `lowest-price` and `prioritized`,Default value: `lowest-price`.
	PayAsYouGoAllocationStrategy pulumi.StringPtrInput
	// The target capacity of pay-as-you-go instances in the auto provisioning group.
	PayAsYouGoTargetCapacity pulumi.StringPtrInput
	// The scale-out policy for preemptible instances. Valid values:`lowest-price` and `diversified`,Default value: `lowest-price`.
	SpotAllocationStrategy pulumi.StringPtrInput
	// The default behavior after preemptible instances are shut down. Valid values: `stop` and `terminate`,Default value: `stop`.
	SpotInstanceInterruptionBehavior pulumi.StringPtrInput
	// This parameter takes effect when the `SpotAllocationStrategy` parameter is set to `lowest-price`. The auto provisioning group selects instance types of the lowest cost to create instances.
	SpotInstancePoolsToUseCount pulumi.IntPtrInput
	// The target capacity of preemptible instances in the auto provisioning group.
	SpotTargetCapacity pulumi.StringPtrInput
	// Specifies whether to release instances of the auto provisioning group. Valid values:`false` and `true`, default value: `false`.
	TerminateInstances pulumi.BoolPtrInput
	// The shutdown policy for preemptible instances when the auto provisioning group expires. Valid values: `false` and `true`, default value: `false`.
	TerminateInstancesWithExpiration pulumi.BoolPtrInput
	// The total target capacity of the auto provisioning group. The target capacity consists of the following three parts:PayAsYouGoTargetCapacity,SpotTargetCapacity and the supplemental capacity besides PayAsYouGoTargetCapacity and SpotTargetCapacity.
	TotalTargetCapacity pulumi.StringPtrInput
	// The time when the auto provisioning group is started. The period of time between this point in time and the point in time specified by the `validUntil` parameter is the effective time period of the auto provisioning group.By default, an auto provisioning group is immediately started after creation.
	ValidFrom pulumi.StringPtrInput
	// The time when the auto provisioning group expires. The period of time between this point in time and the point in time specified by the `validFrom` parameter is the effective time period of the auto provisioning group.By default, an auto provisioning group never expires.
	ValidUntil pulumi.StringPtrInput
}

func (AutoProvisioningGroupState) ElementType

func (AutoProvisioningGroupState) ElementType() reflect.Type

type AutoSnapshotPolicy

type AutoSnapshotPolicy struct {
	pulumi.CustomResourceState

	// The retention period of the snapshot copied across regions.
	// - -1: The snapshot is permanently retained.
	// - [1, 65535]: The automatic snapshot is retained for the specified number of days.
	//   Default value: -1.
	CopiedSnapshotsRetentionDays pulumi.IntPtrOutput `pulumi:"copiedSnapshotsRetentionDays"`
	// Specifies whether to enable the system to automatically copy snapshots across regions.
	EnableCrossRegionCopy pulumi.BoolPtrOutput `pulumi:"enableCrossRegionCopy"`
	// The snapshot policy name.
	Name pulumi.StringOutput `pulumi:"name"`
	// The automatic snapshot repetition dates. The unit of measurement is day and the repeating cycle is a week. Value range: [1, 7], which represents days starting from Monday to Sunday, for example 1  indicates Monday. When you want to schedule multiple automatic snapshot tasks for a disk in a week, you can set the RepeatWeekdays to an array.
	// - A maximum of seven time points can be selected.
	// - The format is  an JSON array of ["1", "2", … "7"]  and the time points are separated by commas (,).
	RepeatWeekdays pulumi.StringArrayOutput `pulumi:"repeatWeekdays"`
	// The snapshot retention time, and the unit of measurement is day. Optional values:
	// - -1: The automatic snapshots are retained permanently.
	// - [1, 65536]: The number of days retained.
	//   Default value: -1.
	RetentionDays pulumi.IntOutput `pulumi:"retentionDays"`
	// The status of Auto Snapshot Policy.
	Status pulumi.StringOutput `pulumi:"status"`
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapOutput `pulumi:"tags"`
	// The destination region to which the snapshot is copied. You can set a destination region.
	TargetCopyRegions pulumi.StringArrayOutput `pulumi:"targetCopyRegions"`
	// The automatic snapshot creation schedule, and the unit of measurement is hour. Value range: [0, 23], which represents from 00:00 to 24:00,  for example 1 indicates 01:00. When you want to schedule multiple automatic snapshot tasks for a disk in a day, you can set the TimePoints to an array.
	// - A maximum of 24 time points can be selected.
	// - The format is  an JSON array of ["0", "1", … "23"] and the time points are separated by commas (,).
	TimePoints pulumi.StringArrayOutput `pulumi:"timePoints"`
}

Provides a ECS Auto Snapshot Policy resource.

For information about ECS Auto Snapshot Policy and how to use it, see [What is Auto Snapshot Policy](https://www.alibabacloud.com/help/en/doc-detail/25527.htm).

> **NOTE:** Available in v1.117.0+.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ecs.NewAutoSnapshotPolicy(ctx, "example", &ecs.AutoSnapshotPolicyArgs{
			RepeatWeekdays: pulumi.StringArray{
				pulumi.String("1"),
				pulumi.String("2"),
				pulumi.String("3"),
			},
			RetentionDays: -1,
			TimePoints: pulumi.StringArray{
				pulumi.String("1"),
				pulumi.String("22"),
				pulumi.String("23"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

ECS Auto Snapshot Policy can be imported using the id, e.g.

```sh

$ pulumi import alicloud:ecs/autoSnapshotPolicy:AutoSnapshotPolicy example <id>

```

func GetAutoSnapshotPolicy

func GetAutoSnapshotPolicy(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AutoSnapshotPolicyState, opts ...pulumi.ResourceOption) (*AutoSnapshotPolicy, error)

GetAutoSnapshotPolicy gets an existing AutoSnapshotPolicy 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 NewAutoSnapshotPolicy

func NewAutoSnapshotPolicy(ctx *pulumi.Context,
	name string, args *AutoSnapshotPolicyArgs, opts ...pulumi.ResourceOption) (*AutoSnapshotPolicy, error)

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

func (*AutoSnapshotPolicy) ElementType

func (*AutoSnapshotPolicy) ElementType() reflect.Type

func (*AutoSnapshotPolicy) ToAutoSnapshotPolicyOutput

func (i *AutoSnapshotPolicy) ToAutoSnapshotPolicyOutput() AutoSnapshotPolicyOutput

func (*AutoSnapshotPolicy) ToAutoSnapshotPolicyOutputWithContext

func (i *AutoSnapshotPolicy) ToAutoSnapshotPolicyOutputWithContext(ctx context.Context) AutoSnapshotPolicyOutput

type AutoSnapshotPolicyArgs

type AutoSnapshotPolicyArgs struct {
	// The retention period of the snapshot copied across regions.
	// - -1: The snapshot is permanently retained.
	// - [1, 65535]: The automatic snapshot is retained for the specified number of days.
	//   Default value: -1.
	CopiedSnapshotsRetentionDays pulumi.IntPtrInput
	// Specifies whether to enable the system to automatically copy snapshots across regions.
	EnableCrossRegionCopy pulumi.BoolPtrInput
	// The snapshot policy name.
	Name pulumi.StringPtrInput
	// The automatic snapshot repetition dates. The unit of measurement is day and the repeating cycle is a week. Value range: [1, 7], which represents days starting from Monday to Sunday, for example 1  indicates Monday. When you want to schedule multiple automatic snapshot tasks for a disk in a week, you can set the RepeatWeekdays to an array.
	// - A maximum of seven time points can be selected.
	// - The format is  an JSON array of ["1", "2", … "7"]  and the time points are separated by commas (,).
	RepeatWeekdays pulumi.StringArrayInput
	// The snapshot retention time, and the unit of measurement is day. Optional values:
	// - -1: The automatic snapshots are retained permanently.
	// - [1, 65536]: The number of days retained.
	//   Default value: -1.
	RetentionDays pulumi.IntInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapInput
	// The destination region to which the snapshot is copied. You can set a destination region.
	TargetCopyRegions pulumi.StringArrayInput
	// The automatic snapshot creation schedule, and the unit of measurement is hour. Value range: [0, 23], which represents from 00:00 to 24:00,  for example 1 indicates 01:00. When you want to schedule multiple automatic snapshot tasks for a disk in a day, you can set the TimePoints to an array.
	// - A maximum of 24 time points can be selected.
	// - The format is  an JSON array of ["0", "1", … "23"] and the time points are separated by commas (,).
	TimePoints pulumi.StringArrayInput
}

The set of arguments for constructing a AutoSnapshotPolicy resource.

func (AutoSnapshotPolicyArgs) ElementType

func (AutoSnapshotPolicyArgs) ElementType() reflect.Type

type AutoSnapshotPolicyArray

type AutoSnapshotPolicyArray []AutoSnapshotPolicyInput

func (AutoSnapshotPolicyArray) ElementType

func (AutoSnapshotPolicyArray) ElementType() reflect.Type

func (AutoSnapshotPolicyArray) ToAutoSnapshotPolicyArrayOutput

func (i AutoSnapshotPolicyArray) ToAutoSnapshotPolicyArrayOutput() AutoSnapshotPolicyArrayOutput

func (AutoSnapshotPolicyArray) ToAutoSnapshotPolicyArrayOutputWithContext

func (i AutoSnapshotPolicyArray) ToAutoSnapshotPolicyArrayOutputWithContext(ctx context.Context) AutoSnapshotPolicyArrayOutput

type AutoSnapshotPolicyArrayInput

type AutoSnapshotPolicyArrayInput interface {
	pulumi.Input

	ToAutoSnapshotPolicyArrayOutput() AutoSnapshotPolicyArrayOutput
	ToAutoSnapshotPolicyArrayOutputWithContext(context.Context) AutoSnapshotPolicyArrayOutput
}

AutoSnapshotPolicyArrayInput is an input type that accepts AutoSnapshotPolicyArray and AutoSnapshotPolicyArrayOutput values. You can construct a concrete instance of `AutoSnapshotPolicyArrayInput` via:

AutoSnapshotPolicyArray{ AutoSnapshotPolicyArgs{...} }

type AutoSnapshotPolicyArrayOutput

type AutoSnapshotPolicyArrayOutput struct{ *pulumi.OutputState }

func (AutoSnapshotPolicyArrayOutput) ElementType

func (AutoSnapshotPolicyArrayOutput) Index

func (AutoSnapshotPolicyArrayOutput) ToAutoSnapshotPolicyArrayOutput

func (o AutoSnapshotPolicyArrayOutput) ToAutoSnapshotPolicyArrayOutput() AutoSnapshotPolicyArrayOutput

func (AutoSnapshotPolicyArrayOutput) ToAutoSnapshotPolicyArrayOutputWithContext

func (o AutoSnapshotPolicyArrayOutput) ToAutoSnapshotPolicyArrayOutputWithContext(ctx context.Context) AutoSnapshotPolicyArrayOutput

type AutoSnapshotPolicyInput

type AutoSnapshotPolicyInput interface {
	pulumi.Input

	ToAutoSnapshotPolicyOutput() AutoSnapshotPolicyOutput
	ToAutoSnapshotPolicyOutputWithContext(ctx context.Context) AutoSnapshotPolicyOutput
}

type AutoSnapshotPolicyMap

type AutoSnapshotPolicyMap map[string]AutoSnapshotPolicyInput

func (AutoSnapshotPolicyMap) ElementType

func (AutoSnapshotPolicyMap) ElementType() reflect.Type

func (AutoSnapshotPolicyMap) ToAutoSnapshotPolicyMapOutput

func (i AutoSnapshotPolicyMap) ToAutoSnapshotPolicyMapOutput() AutoSnapshotPolicyMapOutput

func (AutoSnapshotPolicyMap) ToAutoSnapshotPolicyMapOutputWithContext

func (i AutoSnapshotPolicyMap) ToAutoSnapshotPolicyMapOutputWithContext(ctx context.Context) AutoSnapshotPolicyMapOutput

type AutoSnapshotPolicyMapInput

type AutoSnapshotPolicyMapInput interface {
	pulumi.Input

	ToAutoSnapshotPolicyMapOutput() AutoSnapshotPolicyMapOutput
	ToAutoSnapshotPolicyMapOutputWithContext(context.Context) AutoSnapshotPolicyMapOutput
}

AutoSnapshotPolicyMapInput is an input type that accepts AutoSnapshotPolicyMap and AutoSnapshotPolicyMapOutput values. You can construct a concrete instance of `AutoSnapshotPolicyMapInput` via:

AutoSnapshotPolicyMap{ "key": AutoSnapshotPolicyArgs{...} }

type AutoSnapshotPolicyMapOutput

type AutoSnapshotPolicyMapOutput struct{ *pulumi.OutputState }

func (AutoSnapshotPolicyMapOutput) ElementType

func (AutoSnapshotPolicyMapOutput) MapIndex

func (AutoSnapshotPolicyMapOutput) ToAutoSnapshotPolicyMapOutput

func (o AutoSnapshotPolicyMapOutput) ToAutoSnapshotPolicyMapOutput() AutoSnapshotPolicyMapOutput

func (AutoSnapshotPolicyMapOutput) ToAutoSnapshotPolicyMapOutputWithContext

func (o AutoSnapshotPolicyMapOutput) ToAutoSnapshotPolicyMapOutputWithContext(ctx context.Context) AutoSnapshotPolicyMapOutput

type AutoSnapshotPolicyOutput

type AutoSnapshotPolicyOutput struct{ *pulumi.OutputState }

func (AutoSnapshotPolicyOutput) CopiedSnapshotsRetentionDays

func (o AutoSnapshotPolicyOutput) CopiedSnapshotsRetentionDays() pulumi.IntPtrOutput

The retention period of the snapshot copied across regions.

  • -1: The snapshot is permanently retained.
  • [1, 65535]: The automatic snapshot is retained for the specified number of days. Default value: -1.

func (AutoSnapshotPolicyOutput) ElementType

func (AutoSnapshotPolicyOutput) ElementType() reflect.Type

func (AutoSnapshotPolicyOutput) EnableCrossRegionCopy

func (o AutoSnapshotPolicyOutput) EnableCrossRegionCopy() pulumi.BoolPtrOutput

Specifies whether to enable the system to automatically copy snapshots across regions.

func (AutoSnapshotPolicyOutput) Name

The snapshot policy name.

func (AutoSnapshotPolicyOutput) RepeatWeekdays

The automatic snapshot repetition dates. The unit of measurement is day and the repeating cycle is a week. Value range: [1, 7], which represents days starting from Monday to Sunday, for example 1 indicates Monday. When you want to schedule multiple automatic snapshot tasks for a disk in a week, you can set the RepeatWeekdays to an array. - A maximum of seven time points can be selected. - The format is an JSON array of ["1", "2", … "7"] and the time points are separated by commas (,).

func (AutoSnapshotPolicyOutput) RetentionDays

func (o AutoSnapshotPolicyOutput) RetentionDays() pulumi.IntOutput

The snapshot retention time, and the unit of measurement is day. Optional values:

  • -1: The automatic snapshots are retained permanently.
  • [1, 65536]: The number of days retained. Default value: -1.

func (AutoSnapshotPolicyOutput) Status

The status of Auto Snapshot Policy.

func (AutoSnapshotPolicyOutput) Tags

A mapping of tags to assign to the resource.

func (AutoSnapshotPolicyOutput) TargetCopyRegions

func (o AutoSnapshotPolicyOutput) TargetCopyRegions() pulumi.StringArrayOutput

The destination region to which the snapshot is copied. You can set a destination region.

func (AutoSnapshotPolicyOutput) TimePoints

The automatic snapshot creation schedule, and the unit of measurement is hour. Value range: [0, 23], which represents from 00:00 to 24:00, for example 1 indicates 01:00. When you want to schedule multiple automatic snapshot tasks for a disk in a day, you can set the TimePoints to an array. - A maximum of 24 time points can be selected. - The format is an JSON array of ["0", "1", … "23"] and the time points are separated by commas (,).

func (AutoSnapshotPolicyOutput) ToAutoSnapshotPolicyOutput

func (o AutoSnapshotPolicyOutput) ToAutoSnapshotPolicyOutput() AutoSnapshotPolicyOutput

func (AutoSnapshotPolicyOutput) ToAutoSnapshotPolicyOutputWithContext

func (o AutoSnapshotPolicyOutput) ToAutoSnapshotPolicyOutputWithContext(ctx context.Context) AutoSnapshotPolicyOutput

type AutoSnapshotPolicyState

type AutoSnapshotPolicyState struct {
	// The retention period of the snapshot copied across regions.
	// - -1: The snapshot is permanently retained.
	// - [1, 65535]: The automatic snapshot is retained for the specified number of days.
	//   Default value: -1.
	CopiedSnapshotsRetentionDays pulumi.IntPtrInput
	// Specifies whether to enable the system to automatically copy snapshots across regions.
	EnableCrossRegionCopy pulumi.BoolPtrInput
	// The snapshot policy name.
	Name pulumi.StringPtrInput
	// The automatic snapshot repetition dates. The unit of measurement is day and the repeating cycle is a week. Value range: [1, 7], which represents days starting from Monday to Sunday, for example 1  indicates Monday. When you want to schedule multiple automatic snapshot tasks for a disk in a week, you can set the RepeatWeekdays to an array.
	// - A maximum of seven time points can be selected.
	// - The format is  an JSON array of ["1", "2", … "7"]  and the time points are separated by commas (,).
	RepeatWeekdays pulumi.StringArrayInput
	// The snapshot retention time, and the unit of measurement is day. Optional values:
	// - -1: The automatic snapshots are retained permanently.
	// - [1, 65536]: The number of days retained.
	//   Default value: -1.
	RetentionDays pulumi.IntPtrInput
	// The status of Auto Snapshot Policy.
	Status pulumi.StringPtrInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapInput
	// The destination region to which the snapshot is copied. You can set a destination region.
	TargetCopyRegions pulumi.StringArrayInput
	// The automatic snapshot creation schedule, and the unit of measurement is hour. Value range: [0, 23], which represents from 00:00 to 24:00,  for example 1 indicates 01:00. When you want to schedule multiple automatic snapshot tasks for a disk in a day, you can set the TimePoints to an array.
	// - A maximum of 24 time points can be selected.
	// - The format is  an JSON array of ["0", "1", … "23"] and the time points are separated by commas (,).
	TimePoints pulumi.StringArrayInput
}

func (AutoSnapshotPolicyState) ElementType

func (AutoSnapshotPolicyState) ElementType() reflect.Type

type Command

type Command struct {
	pulumi.CustomResourceState

	// The Base64-encoded content of the command.
	CommandContent pulumi.StringOutput `pulumi:"commandContent"`
	// The description of command.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// Specifies whether to use custom parameters in the command to be created. Default to: false.
	EnableParameter pulumi.BoolPtrOutput `pulumi:"enableParameter"`
	// The name of the command, which supports all character sets. It can be up to 128 characters in length.
	Name pulumi.StringOutput `pulumi:"name"`
	// The timeout period that is specified for the command to be run on ECS instances. Unit: seconds. Default to: `60`.
	Timeout pulumi.IntPtrOutput `pulumi:"timeout"`
	// The command type. Valid Values: `RunBatScript`, `RunPowerShellScript` and `RunShellScript`.
	Type pulumi.StringOutput `pulumi:"type"`
	// The execution path of the command in the ECS instance.
	WorkingDir pulumi.StringPtrOutput `pulumi:"workingDir"`
}

Provides a ECS Command resource.

For information about ECS Command and how to use it, see [What is Command](https://www.alibabacloud.com/help/en/doc-detail/64844.htm).

> **NOTE:** Available in v1.116.0+.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ecs.NewCommand(ctx, "example", &ecs.CommandArgs{
			CommandContent: pulumi.String("bHMK"),
			Description:    pulumi.String("For Terraform Test"),
			Type:           pulumi.String("RunShellScript"),
			WorkingDir:     pulumi.String("/root"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

ECS Command can be imported using the id, e.g.

```sh

$ pulumi import alicloud:ecs/command:Command example <id>

```

func GetCommand

func GetCommand(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *CommandState, opts ...pulumi.ResourceOption) (*Command, error)

GetCommand gets an existing Command 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 NewCommand

func NewCommand(ctx *pulumi.Context,
	name string, args *CommandArgs, opts ...pulumi.ResourceOption) (*Command, error)

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

func (*Command) ElementType

func (*Command) ElementType() reflect.Type

func (*Command) ToCommandOutput

func (i *Command) ToCommandOutput() CommandOutput

func (*Command) ToCommandOutputWithContext

func (i *Command) ToCommandOutputWithContext(ctx context.Context) CommandOutput

type CommandArgs

type CommandArgs struct {
	// The Base64-encoded content of the command.
	CommandContent pulumi.StringInput
	// The description of command.
	Description pulumi.StringPtrInput
	// Specifies whether to use custom parameters in the command to be created. Default to: false.
	EnableParameter pulumi.BoolPtrInput
	// The name of the command, which supports all character sets. It can be up to 128 characters in length.
	Name pulumi.StringPtrInput
	// The timeout period that is specified for the command to be run on ECS instances. Unit: seconds. Default to: `60`.
	Timeout pulumi.IntPtrInput
	// The command type. Valid Values: `RunBatScript`, `RunPowerShellScript` and `RunShellScript`.
	Type pulumi.StringInput
	// The execution path of the command in the ECS instance.
	WorkingDir pulumi.StringPtrInput
}

The set of arguments for constructing a Command resource.

func (CommandArgs) ElementType

func (CommandArgs) ElementType() reflect.Type

type CommandArray

type CommandArray []CommandInput

func (CommandArray) ElementType

func (CommandArray) ElementType() reflect.Type

func (CommandArray) ToCommandArrayOutput

func (i CommandArray) ToCommandArrayOutput() CommandArrayOutput

func (CommandArray) ToCommandArrayOutputWithContext

func (i CommandArray) ToCommandArrayOutputWithContext(ctx context.Context) CommandArrayOutput

type CommandArrayInput

type CommandArrayInput interface {
	pulumi.Input

	ToCommandArrayOutput() CommandArrayOutput
	ToCommandArrayOutputWithContext(context.Context) CommandArrayOutput
}

CommandArrayInput is an input type that accepts CommandArray and CommandArrayOutput values. You can construct a concrete instance of `CommandArrayInput` via:

CommandArray{ CommandArgs{...} }

type CommandArrayOutput

type CommandArrayOutput struct{ *pulumi.OutputState }

func (CommandArrayOutput) ElementType

func (CommandArrayOutput) ElementType() reflect.Type

func (CommandArrayOutput) Index

func (CommandArrayOutput) ToCommandArrayOutput

func (o CommandArrayOutput) ToCommandArrayOutput() CommandArrayOutput

func (CommandArrayOutput) ToCommandArrayOutputWithContext

func (o CommandArrayOutput) ToCommandArrayOutputWithContext(ctx context.Context) CommandArrayOutput

type CommandInput

type CommandInput interface {
	pulumi.Input

	ToCommandOutput() CommandOutput
	ToCommandOutputWithContext(ctx context.Context) CommandOutput
}

type CommandMap

type CommandMap map[string]CommandInput

func (CommandMap) ElementType

func (CommandMap) ElementType() reflect.Type

func (CommandMap) ToCommandMapOutput

func (i CommandMap) ToCommandMapOutput() CommandMapOutput

func (CommandMap) ToCommandMapOutputWithContext

func (i CommandMap) ToCommandMapOutputWithContext(ctx context.Context) CommandMapOutput

type CommandMapInput

type CommandMapInput interface {
	pulumi.Input

	ToCommandMapOutput() CommandMapOutput
	ToCommandMapOutputWithContext(context.Context) CommandMapOutput
}

CommandMapInput is an input type that accepts CommandMap and CommandMapOutput values. You can construct a concrete instance of `CommandMapInput` via:

CommandMap{ "key": CommandArgs{...} }

type CommandMapOutput

type CommandMapOutput struct{ *pulumi.OutputState }

func (CommandMapOutput) ElementType

func (CommandMapOutput) ElementType() reflect.Type

func (CommandMapOutput) MapIndex

func (CommandMapOutput) ToCommandMapOutput

func (o CommandMapOutput) ToCommandMapOutput() CommandMapOutput

func (CommandMapOutput) ToCommandMapOutputWithContext

func (o CommandMapOutput) ToCommandMapOutputWithContext(ctx context.Context) CommandMapOutput

type CommandOutput

type CommandOutput struct{ *pulumi.OutputState }

func (CommandOutput) CommandContent

func (o CommandOutput) CommandContent() pulumi.StringOutput

The Base64-encoded content of the command.

func (CommandOutput) Description

func (o CommandOutput) Description() pulumi.StringPtrOutput

The description of command.

func (CommandOutput) ElementType

func (CommandOutput) ElementType() reflect.Type

func (CommandOutput) EnableParameter

func (o CommandOutput) EnableParameter() pulumi.BoolPtrOutput

Specifies whether to use custom parameters in the command to be created. Default to: false.

func (CommandOutput) Name

The name of the command, which supports all character sets. It can be up to 128 characters in length.

func (CommandOutput) Timeout

func (o CommandOutput) Timeout() pulumi.IntPtrOutput

The timeout period that is specified for the command to be run on ECS instances. Unit: seconds. Default to: `60`.

func (CommandOutput) ToCommandOutput

func (o CommandOutput) ToCommandOutput() CommandOutput

func (CommandOutput) ToCommandOutputWithContext

func (o CommandOutput) ToCommandOutputWithContext(ctx context.Context) CommandOutput

func (CommandOutput) Type

The command type. Valid Values: `RunBatScript`, `RunPowerShellScript` and `RunShellScript`.

func (CommandOutput) WorkingDir

func (o CommandOutput) WorkingDir() pulumi.StringPtrOutput

The execution path of the command in the ECS instance.

type CommandState

type CommandState struct {
	// The Base64-encoded content of the command.
	CommandContent pulumi.StringPtrInput
	// The description of command.
	Description pulumi.StringPtrInput
	// Specifies whether to use custom parameters in the command to be created. Default to: false.
	EnableParameter pulumi.BoolPtrInput
	// The name of the command, which supports all character sets. It can be up to 128 characters in length.
	Name pulumi.StringPtrInput
	// The timeout period that is specified for the command to be run on ECS instances. Unit: seconds. Default to: `60`.
	Timeout pulumi.IntPtrInput
	// The command type. Valid Values: `RunBatScript`, `RunPowerShellScript` and `RunShellScript`.
	Type pulumi.StringPtrInput
	// The execution path of the command in the ECS instance.
	WorkingDir pulumi.StringPtrInput
}

func (CommandState) ElementType

func (CommandState) ElementType() reflect.Type

type CopyImage

type CopyImage struct {
	pulumi.CustomResourceState

	DeleteAutoSnapshot pulumi.BoolPtrOutput   `pulumi:"deleteAutoSnapshot"`
	Description        pulumi.StringPtrOutput `pulumi:"description"`
	Encrypted          pulumi.BoolPtrOutput   `pulumi:"encrypted"`
	Force              pulumi.BoolPtrOutput   `pulumi:"force"`
	ImageName          pulumi.StringOutput    `pulumi:"imageName"`
	KmsKeyId           pulumi.StringPtrOutput `pulumi:"kmsKeyId"`
	// Deprecated: Attribute 'name' has been deprecated from version 1.69.0. Use `image_name` instead.
	Name           pulumi.StringOutput `pulumi:"name"`
	SourceImageId  pulumi.StringOutput `pulumi:"sourceImageId"`
	SourceRegionId pulumi.StringOutput `pulumi:"sourceRegionId"`
	Tags           pulumi.MapOutput    `pulumi:"tags"`
}

func GetCopyImage

func GetCopyImage(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *CopyImageState, opts ...pulumi.ResourceOption) (*CopyImage, error)

GetCopyImage gets an existing CopyImage 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 NewCopyImage

func NewCopyImage(ctx *pulumi.Context,
	name string, args *CopyImageArgs, opts ...pulumi.ResourceOption) (*CopyImage, error)

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

func (*CopyImage) ElementType

func (*CopyImage) ElementType() reflect.Type

func (*CopyImage) ToCopyImageOutput

func (i *CopyImage) ToCopyImageOutput() CopyImageOutput

func (*CopyImage) ToCopyImageOutputWithContext

func (i *CopyImage) ToCopyImageOutputWithContext(ctx context.Context) CopyImageOutput

type CopyImageArgs

type CopyImageArgs struct {
	DeleteAutoSnapshot pulumi.BoolPtrInput
	Description        pulumi.StringPtrInput
	Encrypted          pulumi.BoolPtrInput
	Force              pulumi.BoolPtrInput
	ImageName          pulumi.StringPtrInput
	KmsKeyId           pulumi.StringPtrInput
	// Deprecated: Attribute 'name' has been deprecated from version 1.69.0. Use `image_name` instead.
	Name           pulumi.StringPtrInput
	SourceImageId  pulumi.StringInput
	SourceRegionId pulumi.StringInput
	Tags           pulumi.MapInput
}

The set of arguments for constructing a CopyImage resource.

func (CopyImageArgs) ElementType

func (CopyImageArgs) ElementType() reflect.Type

type CopyImageArray

type CopyImageArray []CopyImageInput

func (CopyImageArray) ElementType

func (CopyImageArray) ElementType() reflect.Type

func (CopyImageArray) ToCopyImageArrayOutput

func (i CopyImageArray) ToCopyImageArrayOutput() CopyImageArrayOutput

func (CopyImageArray) ToCopyImageArrayOutputWithContext

func (i CopyImageArray) ToCopyImageArrayOutputWithContext(ctx context.Context) CopyImageArrayOutput

type CopyImageArrayInput

type CopyImageArrayInput interface {
	pulumi.Input

	ToCopyImageArrayOutput() CopyImageArrayOutput
	ToCopyImageArrayOutputWithContext(context.Context) CopyImageArrayOutput
}

CopyImageArrayInput is an input type that accepts CopyImageArray and CopyImageArrayOutput values. You can construct a concrete instance of `CopyImageArrayInput` via:

CopyImageArray{ CopyImageArgs{...} }

type CopyImageArrayOutput

type CopyImageArrayOutput struct{ *pulumi.OutputState }

func (CopyImageArrayOutput) ElementType

func (CopyImageArrayOutput) ElementType() reflect.Type

func (CopyImageArrayOutput) Index

func (CopyImageArrayOutput) ToCopyImageArrayOutput

func (o CopyImageArrayOutput) ToCopyImageArrayOutput() CopyImageArrayOutput

func (CopyImageArrayOutput) ToCopyImageArrayOutputWithContext

func (o CopyImageArrayOutput) ToCopyImageArrayOutputWithContext(ctx context.Context) CopyImageArrayOutput

type CopyImageInput

type CopyImageInput interface {
	pulumi.Input

	ToCopyImageOutput() CopyImageOutput
	ToCopyImageOutputWithContext(ctx context.Context) CopyImageOutput
}

type CopyImageMap

type CopyImageMap map[string]CopyImageInput

func (CopyImageMap) ElementType

func (CopyImageMap) ElementType() reflect.Type

func (CopyImageMap) ToCopyImageMapOutput

func (i CopyImageMap) ToCopyImageMapOutput() CopyImageMapOutput

func (CopyImageMap) ToCopyImageMapOutputWithContext

func (i CopyImageMap) ToCopyImageMapOutputWithContext(ctx context.Context) CopyImageMapOutput

type CopyImageMapInput

type CopyImageMapInput interface {
	pulumi.Input

	ToCopyImageMapOutput() CopyImageMapOutput
	ToCopyImageMapOutputWithContext(context.Context) CopyImageMapOutput
}

CopyImageMapInput is an input type that accepts CopyImageMap and CopyImageMapOutput values. You can construct a concrete instance of `CopyImageMapInput` via:

CopyImageMap{ "key": CopyImageArgs{...} }

type CopyImageMapOutput

type CopyImageMapOutput struct{ *pulumi.OutputState }

func (CopyImageMapOutput) ElementType

func (CopyImageMapOutput) ElementType() reflect.Type

func (CopyImageMapOutput) MapIndex

func (CopyImageMapOutput) ToCopyImageMapOutput

func (o CopyImageMapOutput) ToCopyImageMapOutput() CopyImageMapOutput

func (CopyImageMapOutput) ToCopyImageMapOutputWithContext

func (o CopyImageMapOutput) ToCopyImageMapOutputWithContext(ctx context.Context) CopyImageMapOutput

type CopyImageOutput

type CopyImageOutput struct{ *pulumi.OutputState }

func (CopyImageOutput) DeleteAutoSnapshot

func (o CopyImageOutput) DeleteAutoSnapshot() pulumi.BoolPtrOutput

func (CopyImageOutput) Description

func (o CopyImageOutput) Description() pulumi.StringPtrOutput

func (CopyImageOutput) ElementType

func (CopyImageOutput) ElementType() reflect.Type

func (CopyImageOutput) Encrypted

func (o CopyImageOutput) Encrypted() pulumi.BoolPtrOutput

func (CopyImageOutput) Force

func (CopyImageOutput) ImageName

func (o CopyImageOutput) ImageName() pulumi.StringOutput

func (CopyImageOutput) KmsKeyId

func (o CopyImageOutput) KmsKeyId() pulumi.StringPtrOutput

func (CopyImageOutput) Name deprecated

Deprecated: Attribute 'name' has been deprecated from version 1.69.0. Use `image_name` instead.

func (CopyImageOutput) SourceImageId

func (o CopyImageOutput) SourceImageId() pulumi.StringOutput

func (CopyImageOutput) SourceRegionId

func (o CopyImageOutput) SourceRegionId() pulumi.StringOutput

func (CopyImageOutput) Tags

func (o CopyImageOutput) Tags() pulumi.MapOutput

func (CopyImageOutput) ToCopyImageOutput

func (o CopyImageOutput) ToCopyImageOutput() CopyImageOutput

func (CopyImageOutput) ToCopyImageOutputWithContext

func (o CopyImageOutput) ToCopyImageOutputWithContext(ctx context.Context) CopyImageOutput

type CopyImageState

type CopyImageState struct {
	DeleteAutoSnapshot pulumi.BoolPtrInput
	Description        pulumi.StringPtrInput
	Encrypted          pulumi.BoolPtrInput
	Force              pulumi.BoolPtrInput
	ImageName          pulumi.StringPtrInput
	KmsKeyId           pulumi.StringPtrInput
	// Deprecated: Attribute 'name' has been deprecated from version 1.69.0. Use `image_name` instead.
	Name           pulumi.StringPtrInput
	SourceImageId  pulumi.StringPtrInput
	SourceRegionId pulumi.StringPtrInput
	Tags           pulumi.MapInput
}

func (CopyImageState) ElementType

func (CopyImageState) ElementType() reflect.Type

type DedicatedHost

type DedicatedHost struct {
	pulumi.CustomResourceState

	// The policy used to migrate the instances from the dedicated host when the dedicated host fails or needs to be repaired online. Valid values: `Migrate`, `Stop`.
	ActionOnMaintenance pulumi.StringPtrOutput `pulumi:"actionOnMaintenance"`
	// Specifies whether to add the dedicated host to the resource pool for automatic deployment. If you do not specify the DedicatedHostId parameter when you create an instance on a dedicated host, Alibaba Cloud automatically selects a dedicated host from the resource pool to host the instance. Valid values: `on`, `off`. Default: `on`.
	AutoPlacement pulumi.StringPtrOutput `pulumi:"autoPlacement"`
	// The automatic release time of the dedicated host. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC+0.
	AutoReleaseTime pulumi.StringOutput `pulumi:"autoReleaseTime"`
	// Specifies whether to automatically renew the subscription dedicated host.
	AutoRenew pulumi.BoolPtrOutput `pulumi:"autoRenew"`
	// The auto-renewal period of the dedicated host. Unit: months. Valid values: `1`, `2`, `3`, `6`, and `12`. takes effect and is required only when the AutoRenew parameter is set to true.
	AutoRenewPeriod pulumi.IntPtrOutput `pulumi:"autoRenewPeriod"`
	// CPU oversold ratio. Only custom specifications g6s, c6s, r6s support setting the CPU oversold ratio.
	CpuOverCommitRatio pulumi.Float64PtrOutput `pulumi:"cpuOverCommitRatio"`
	// The dedicated host cluster ID to which the dedicated host belongs.
	DedicatedHostClusterId pulumi.StringPtrOutput `pulumi:"dedicatedHostClusterId"`
	// The name of the dedicated host. The name must be 2 to 128 characters in length. It must start with a letter but cannot start with http:// or https://. It can contain letters, digits, colons (:), underscores (_), and hyphens (-).
	DedicatedHostName pulumi.StringPtrOutput `pulumi:"dedicatedHostName"`
	// The type of the dedicated host. You can call the [DescribeDedicatedHostTypes](https://www.alibabacloud.com/help/doc-detail/134240.htm) operation to obtain the most recent list of dedicated host types.
	DedicatedHostType pulumi.StringOutput `pulumi:"dedicatedHostType"`
	// The description of the dedicated host. The description must be 2 to 256 characters in length and cannot start with http:// or https://.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// Specifies whether to return the billing details of the order when the billing method is changed from subscription to pay-as-you-go. Default: `false`.
	DetailFee pulumi.BoolPtrOutput `pulumi:"detailFee"`
	// Specifies whether to only validate the request. Default: `false`.
	DryRun pulumi.BoolPtrOutput `pulumi:"dryRun"`
	// The subscription period of the dedicated host. The Period parameter takes effect and is required only when the ChargeType parameter is set to PrePaid.
	ExpiredTime pulumi.StringOutput `pulumi:"expiredTime"`
	// Specify the minimum purchase quantity of a dedicated host.
	MinQuantity pulumi.IntPtrOutput `pulumi:"minQuantity"`
	// dedicated host network parameters. contains the following attributes:
	NetworkAttributes DedicatedHostNetworkAttributeArrayOutput `pulumi:"networkAttributes"`
	// The billing method of the dedicated host. Valid values: `PrePaid`, `PostPaid`. Default: `PostPaid`.
	PaymentType pulumi.StringOutput `pulumi:"paymentType"`
	// The ID of the resource group to which the dedicated host belongs.
	ResourceGroupId pulumi.StringOutput `pulumi:"resourceGroupId"`
	// The unit of the subscription period of the dedicated host.
	SaleCycle pulumi.StringOutput `pulumi:"saleCycle"`
	// The status of the dedicated host.
	Status pulumi.StringOutput `pulumi:"status"`
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapOutput `pulumi:"tags"`
	// The zone ID of the dedicated host. This parameter is empty by default. If you do not specify this parameter, the system automatically selects a zone.
	ZoneId pulumi.StringOutput `pulumi:"zoneId"`
}

## Import

Ecs dedicated host can be imported using the id, e.g.

```sh

$ pulumi import alicloud:ecs/dedicatedHost:DedicatedHost default dh-2zedmxxxx

```

func GetDedicatedHost

func GetDedicatedHost(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *DedicatedHostState, opts ...pulumi.ResourceOption) (*DedicatedHost, error)

GetDedicatedHost gets an existing DedicatedHost 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 NewDedicatedHost

func NewDedicatedHost(ctx *pulumi.Context,
	name string, args *DedicatedHostArgs, opts ...pulumi.ResourceOption) (*DedicatedHost, error)

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

func (*DedicatedHost) ElementType

func (*DedicatedHost) ElementType() reflect.Type

func (*DedicatedHost) ToDedicatedHostOutput

func (i *DedicatedHost) ToDedicatedHostOutput() DedicatedHostOutput

func (*DedicatedHost) ToDedicatedHostOutputWithContext

func (i *DedicatedHost) ToDedicatedHostOutputWithContext(ctx context.Context) DedicatedHostOutput

type DedicatedHostArgs

type DedicatedHostArgs struct {
	// The policy used to migrate the instances from the dedicated host when the dedicated host fails or needs to be repaired online. Valid values: `Migrate`, `Stop`.
	ActionOnMaintenance pulumi.StringPtrInput
	// Specifies whether to add the dedicated host to the resource pool for automatic deployment. If you do not specify the DedicatedHostId parameter when you create an instance on a dedicated host, Alibaba Cloud automatically selects a dedicated host from the resource pool to host the instance. Valid values: `on`, `off`. Default: `on`.
	AutoPlacement pulumi.StringPtrInput
	// The automatic release time of the dedicated host. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC+0.
	AutoReleaseTime pulumi.StringPtrInput
	// Specifies whether to automatically renew the subscription dedicated host.
	AutoRenew pulumi.BoolPtrInput
	// The auto-renewal period of the dedicated host. Unit: months. Valid values: `1`, `2`, `3`, `6`, and `12`. takes effect and is required only when the AutoRenew parameter is set to true.
	AutoRenewPeriod pulumi.IntPtrInput
	// CPU oversold ratio. Only custom specifications g6s, c6s, r6s support setting the CPU oversold ratio.
	CpuOverCommitRatio pulumi.Float64PtrInput
	// The dedicated host cluster ID to which the dedicated host belongs.
	DedicatedHostClusterId pulumi.StringPtrInput
	// The name of the dedicated host. The name must be 2 to 128 characters in length. It must start with a letter but cannot start with http:// or https://. It can contain letters, digits, colons (:), underscores (_), and hyphens (-).
	DedicatedHostName pulumi.StringPtrInput
	// The type of the dedicated host. You can call the [DescribeDedicatedHostTypes](https://www.alibabacloud.com/help/doc-detail/134240.htm) operation to obtain the most recent list of dedicated host types.
	DedicatedHostType pulumi.StringInput
	// The description of the dedicated host. The description must be 2 to 256 characters in length and cannot start with http:// or https://.
	Description pulumi.StringPtrInput
	// Specifies whether to return the billing details of the order when the billing method is changed from subscription to pay-as-you-go. Default: `false`.
	DetailFee pulumi.BoolPtrInput
	// Specifies whether to only validate the request. Default: `false`.
	DryRun pulumi.BoolPtrInput
	// The subscription period of the dedicated host. The Period parameter takes effect and is required only when the ChargeType parameter is set to PrePaid.
	ExpiredTime pulumi.StringPtrInput
	// Specify the minimum purchase quantity of a dedicated host.
	MinQuantity pulumi.IntPtrInput
	// dedicated host network parameters. contains the following attributes:
	NetworkAttributes DedicatedHostNetworkAttributeArrayInput
	// The billing method of the dedicated host. Valid values: `PrePaid`, `PostPaid`. Default: `PostPaid`.
	PaymentType pulumi.StringPtrInput
	// The ID of the resource group to which the dedicated host belongs.
	ResourceGroupId pulumi.StringPtrInput
	// The unit of the subscription period of the dedicated host.
	SaleCycle pulumi.StringPtrInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapInput
	// The zone ID of the dedicated host. This parameter is empty by default. If you do not specify this parameter, the system automatically selects a zone.
	ZoneId pulumi.StringPtrInput
}

The set of arguments for constructing a DedicatedHost resource.

func (DedicatedHostArgs) ElementType

func (DedicatedHostArgs) ElementType() reflect.Type

type DedicatedHostArray

type DedicatedHostArray []DedicatedHostInput

func (DedicatedHostArray) ElementType

func (DedicatedHostArray) ElementType() reflect.Type

func (DedicatedHostArray) ToDedicatedHostArrayOutput

func (i DedicatedHostArray) ToDedicatedHostArrayOutput() DedicatedHostArrayOutput

func (DedicatedHostArray) ToDedicatedHostArrayOutputWithContext

func (i DedicatedHostArray) ToDedicatedHostArrayOutputWithContext(ctx context.Context) DedicatedHostArrayOutput

type DedicatedHostArrayInput

type DedicatedHostArrayInput interface {
	pulumi.Input

	ToDedicatedHostArrayOutput() DedicatedHostArrayOutput
	ToDedicatedHostArrayOutputWithContext(context.Context) DedicatedHostArrayOutput
}

DedicatedHostArrayInput is an input type that accepts DedicatedHostArray and DedicatedHostArrayOutput values. You can construct a concrete instance of `DedicatedHostArrayInput` via:

DedicatedHostArray{ DedicatedHostArgs{...} }

type DedicatedHostArrayOutput

type DedicatedHostArrayOutput struct{ *pulumi.OutputState }

func (DedicatedHostArrayOutput) ElementType

func (DedicatedHostArrayOutput) ElementType() reflect.Type

func (DedicatedHostArrayOutput) Index

func (DedicatedHostArrayOutput) ToDedicatedHostArrayOutput

func (o DedicatedHostArrayOutput) ToDedicatedHostArrayOutput() DedicatedHostArrayOutput

func (DedicatedHostArrayOutput) ToDedicatedHostArrayOutputWithContext

func (o DedicatedHostArrayOutput) ToDedicatedHostArrayOutputWithContext(ctx context.Context) DedicatedHostArrayOutput

type DedicatedHostInput

type DedicatedHostInput interface {
	pulumi.Input

	ToDedicatedHostOutput() DedicatedHostOutput
	ToDedicatedHostOutputWithContext(ctx context.Context) DedicatedHostOutput
}

type DedicatedHostMap

type DedicatedHostMap map[string]DedicatedHostInput

func (DedicatedHostMap) ElementType

func (DedicatedHostMap) ElementType() reflect.Type

func (DedicatedHostMap) ToDedicatedHostMapOutput

func (i DedicatedHostMap) ToDedicatedHostMapOutput() DedicatedHostMapOutput

func (DedicatedHostMap) ToDedicatedHostMapOutputWithContext

func (i DedicatedHostMap) ToDedicatedHostMapOutputWithContext(ctx context.Context) DedicatedHostMapOutput

type DedicatedHostMapInput

type DedicatedHostMapInput interface {
	pulumi.Input

	ToDedicatedHostMapOutput() DedicatedHostMapOutput
	ToDedicatedHostMapOutputWithContext(context.Context) DedicatedHostMapOutput
}

DedicatedHostMapInput is an input type that accepts DedicatedHostMap and DedicatedHostMapOutput values. You can construct a concrete instance of `DedicatedHostMapInput` via:

DedicatedHostMap{ "key": DedicatedHostArgs{...} }

type DedicatedHostMapOutput

type DedicatedHostMapOutput struct{ *pulumi.OutputState }

func (DedicatedHostMapOutput) ElementType

func (DedicatedHostMapOutput) ElementType() reflect.Type

func (DedicatedHostMapOutput) MapIndex

func (DedicatedHostMapOutput) ToDedicatedHostMapOutput

func (o DedicatedHostMapOutput) ToDedicatedHostMapOutput() DedicatedHostMapOutput

func (DedicatedHostMapOutput) ToDedicatedHostMapOutputWithContext

func (o DedicatedHostMapOutput) ToDedicatedHostMapOutputWithContext(ctx context.Context) DedicatedHostMapOutput

type DedicatedHostNetworkAttribute

type DedicatedHostNetworkAttribute struct {
	// The timeout period for a UDP session between Server Load Balancer (SLB) and the dedicated host. Unit: seconds. Valid values: 15 to 310.
	SlbUdpTimeout *int `pulumi:"slbUdpTimeout"`
	// The timeout period for a UDP session between a user and an Alibaba Cloud service on the dedicated host. Unit: seconds. Valid values: 15 to 310.
	UdpTimeout *int `pulumi:"udpTimeout"`
}

type DedicatedHostNetworkAttributeArgs

type DedicatedHostNetworkAttributeArgs struct {
	// The timeout period for a UDP session between Server Load Balancer (SLB) and the dedicated host. Unit: seconds. Valid values: 15 to 310.
	SlbUdpTimeout pulumi.IntPtrInput `pulumi:"slbUdpTimeout"`
	// The timeout period for a UDP session between a user and an Alibaba Cloud service on the dedicated host. Unit: seconds. Valid values: 15 to 310.
	UdpTimeout pulumi.IntPtrInput `pulumi:"udpTimeout"`
}

func (DedicatedHostNetworkAttributeArgs) ElementType

func (DedicatedHostNetworkAttributeArgs) ToDedicatedHostNetworkAttributeOutput

func (i DedicatedHostNetworkAttributeArgs) ToDedicatedHostNetworkAttributeOutput() DedicatedHostNetworkAttributeOutput

func (DedicatedHostNetworkAttributeArgs) ToDedicatedHostNetworkAttributeOutputWithContext

func (i DedicatedHostNetworkAttributeArgs) ToDedicatedHostNetworkAttributeOutputWithContext(ctx context.Context) DedicatedHostNetworkAttributeOutput

type DedicatedHostNetworkAttributeArray

type DedicatedHostNetworkAttributeArray []DedicatedHostNetworkAttributeInput

func (DedicatedHostNetworkAttributeArray) ElementType

func (DedicatedHostNetworkAttributeArray) ToDedicatedHostNetworkAttributeArrayOutput

func (i DedicatedHostNetworkAttributeArray) ToDedicatedHostNetworkAttributeArrayOutput() DedicatedHostNetworkAttributeArrayOutput

func (DedicatedHostNetworkAttributeArray) ToDedicatedHostNetworkAttributeArrayOutputWithContext

func (i DedicatedHostNetworkAttributeArray) ToDedicatedHostNetworkAttributeArrayOutputWithContext(ctx context.Context) DedicatedHostNetworkAttributeArrayOutput

type DedicatedHostNetworkAttributeArrayInput

type DedicatedHostNetworkAttributeArrayInput interface {
	pulumi.Input

	ToDedicatedHostNetworkAttributeArrayOutput() DedicatedHostNetworkAttributeArrayOutput
	ToDedicatedHostNetworkAttributeArrayOutputWithContext(context.Context) DedicatedHostNetworkAttributeArrayOutput
}

DedicatedHostNetworkAttributeArrayInput is an input type that accepts DedicatedHostNetworkAttributeArray and DedicatedHostNetworkAttributeArrayOutput values. You can construct a concrete instance of `DedicatedHostNetworkAttributeArrayInput` via:

DedicatedHostNetworkAttributeArray{ DedicatedHostNetworkAttributeArgs{...} }

type DedicatedHostNetworkAttributeArrayOutput

type DedicatedHostNetworkAttributeArrayOutput struct{ *pulumi.OutputState }

func (DedicatedHostNetworkAttributeArrayOutput) ElementType

func (DedicatedHostNetworkAttributeArrayOutput) Index

func (DedicatedHostNetworkAttributeArrayOutput) ToDedicatedHostNetworkAttributeArrayOutput

func (o DedicatedHostNetworkAttributeArrayOutput) ToDedicatedHostNetworkAttributeArrayOutput() DedicatedHostNetworkAttributeArrayOutput

func (DedicatedHostNetworkAttributeArrayOutput) ToDedicatedHostNetworkAttributeArrayOutputWithContext

func (o DedicatedHostNetworkAttributeArrayOutput) ToDedicatedHostNetworkAttributeArrayOutputWithContext(ctx context.Context) DedicatedHostNetworkAttributeArrayOutput

type DedicatedHostNetworkAttributeInput

type DedicatedHostNetworkAttributeInput interface {
	pulumi.Input

	ToDedicatedHostNetworkAttributeOutput() DedicatedHostNetworkAttributeOutput
	ToDedicatedHostNetworkAttributeOutputWithContext(context.Context) DedicatedHostNetworkAttributeOutput
}

DedicatedHostNetworkAttributeInput is an input type that accepts DedicatedHostNetworkAttributeArgs and DedicatedHostNetworkAttributeOutput values. You can construct a concrete instance of `DedicatedHostNetworkAttributeInput` via:

DedicatedHostNetworkAttributeArgs{...}

type DedicatedHostNetworkAttributeOutput

type DedicatedHostNetworkAttributeOutput struct{ *pulumi.OutputState }

func (DedicatedHostNetworkAttributeOutput) ElementType

func (DedicatedHostNetworkAttributeOutput) SlbUdpTimeout

The timeout period for a UDP session between Server Load Balancer (SLB) and the dedicated host. Unit: seconds. Valid values: 15 to 310.

func (DedicatedHostNetworkAttributeOutput) ToDedicatedHostNetworkAttributeOutput

func (o DedicatedHostNetworkAttributeOutput) ToDedicatedHostNetworkAttributeOutput() DedicatedHostNetworkAttributeOutput

func (DedicatedHostNetworkAttributeOutput) ToDedicatedHostNetworkAttributeOutputWithContext

func (o DedicatedHostNetworkAttributeOutput) ToDedicatedHostNetworkAttributeOutputWithContext(ctx context.Context) DedicatedHostNetworkAttributeOutput

func (DedicatedHostNetworkAttributeOutput) UdpTimeout

The timeout period for a UDP session between a user and an Alibaba Cloud service on the dedicated host. Unit: seconds. Valid values: 15 to 310.

type DedicatedHostOutput

type DedicatedHostOutput struct{ *pulumi.OutputState }

func (DedicatedHostOutput) ActionOnMaintenance

func (o DedicatedHostOutput) ActionOnMaintenance() pulumi.StringPtrOutput

The policy used to migrate the instances from the dedicated host when the dedicated host fails or needs to be repaired online. Valid values: `Migrate`, `Stop`.

func (DedicatedHostOutput) AutoPlacement

func (o DedicatedHostOutput) AutoPlacement() pulumi.StringPtrOutput

Specifies whether to add the dedicated host to the resource pool for automatic deployment. If you do not specify the DedicatedHostId parameter when you create an instance on a dedicated host, Alibaba Cloud automatically selects a dedicated host from the resource pool to host the instance. Valid values: `on`, `off`. Default: `on`.

func (DedicatedHostOutput) AutoReleaseTime

func (o DedicatedHostOutput) AutoReleaseTime() pulumi.StringOutput

The automatic release time of the dedicated host. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC+0.

func (DedicatedHostOutput) AutoRenew

Specifies whether to automatically renew the subscription dedicated host.

func (DedicatedHostOutput) AutoRenewPeriod

func (o DedicatedHostOutput) AutoRenewPeriod() pulumi.IntPtrOutput

The auto-renewal period of the dedicated host. Unit: months. Valid values: `1`, `2`, `3`, `6`, and `12`. takes effect and is required only when the AutoRenew parameter is set to true.

func (DedicatedHostOutput) CpuOverCommitRatio

func (o DedicatedHostOutput) CpuOverCommitRatio() pulumi.Float64PtrOutput

CPU oversold ratio. Only custom specifications g6s, c6s, r6s support setting the CPU oversold ratio.

func (DedicatedHostOutput) DedicatedHostClusterId

func (o DedicatedHostOutput) DedicatedHostClusterId() pulumi.StringPtrOutput

The dedicated host cluster ID to which the dedicated host belongs.

func (DedicatedHostOutput) DedicatedHostName

func (o DedicatedHostOutput) DedicatedHostName() pulumi.StringPtrOutput

The name of the dedicated host. The name must be 2 to 128 characters in length. It must start with a letter but cannot start with http:// or https://. It can contain letters, digits, colons (:), underscores (_), and hyphens (-).

func (DedicatedHostOutput) DedicatedHostType

func (o DedicatedHostOutput) DedicatedHostType() pulumi.StringOutput

The type of the dedicated host. You can call the [DescribeDedicatedHostTypes](https://www.alibabacloud.com/help/doc-detail/134240.htm) operation to obtain the most recent list of dedicated host types.

func (DedicatedHostOutput) Description

func (o DedicatedHostOutput) Description() pulumi.StringPtrOutput

The description of the dedicated host. The description must be 2 to 256 characters in length and cannot start with http:// or https://.

func (DedicatedHostOutput) DetailFee

Specifies whether to return the billing details of the order when the billing method is changed from subscription to pay-as-you-go. Default: `false`.

func (DedicatedHostOutput) DryRun

Specifies whether to only validate the request. Default: `false`.

func (DedicatedHostOutput) ElementType

func (DedicatedHostOutput) ElementType() reflect.Type

func (DedicatedHostOutput) ExpiredTime

func (o DedicatedHostOutput) ExpiredTime() pulumi.StringOutput

The subscription period of the dedicated host. The Period parameter takes effect and is required only when the ChargeType parameter is set to PrePaid.

func (DedicatedHostOutput) MinQuantity

func (o DedicatedHostOutput) MinQuantity() pulumi.IntPtrOutput

Specify the minimum purchase quantity of a dedicated host.

func (DedicatedHostOutput) NetworkAttributes

dedicated host network parameters. contains the following attributes:

func (DedicatedHostOutput) PaymentType

func (o DedicatedHostOutput) PaymentType() pulumi.StringOutput

The billing method of the dedicated host. Valid values: `PrePaid`, `PostPaid`. Default: `PostPaid`.

func (DedicatedHostOutput) ResourceGroupId

func (o DedicatedHostOutput) ResourceGroupId() pulumi.StringOutput

The ID of the resource group to which the dedicated host belongs.

func (DedicatedHostOutput) SaleCycle

func (o DedicatedHostOutput) SaleCycle() pulumi.StringOutput

The unit of the subscription period of the dedicated host.

func (DedicatedHostOutput) Status

The status of the dedicated host.

func (DedicatedHostOutput) Tags

A mapping of tags to assign to the resource.

func (DedicatedHostOutput) ToDedicatedHostOutput

func (o DedicatedHostOutput) ToDedicatedHostOutput() DedicatedHostOutput

func (DedicatedHostOutput) ToDedicatedHostOutputWithContext

func (o DedicatedHostOutput) ToDedicatedHostOutputWithContext(ctx context.Context) DedicatedHostOutput

func (DedicatedHostOutput) ZoneId

The zone ID of the dedicated host. This parameter is empty by default. If you do not specify this parameter, the system automatically selects a zone.

type DedicatedHostState

type DedicatedHostState struct {
	// The policy used to migrate the instances from the dedicated host when the dedicated host fails or needs to be repaired online. Valid values: `Migrate`, `Stop`.
	ActionOnMaintenance pulumi.StringPtrInput
	// Specifies whether to add the dedicated host to the resource pool for automatic deployment. If you do not specify the DedicatedHostId parameter when you create an instance on a dedicated host, Alibaba Cloud automatically selects a dedicated host from the resource pool to host the instance. Valid values: `on`, `off`. Default: `on`.
	AutoPlacement pulumi.StringPtrInput
	// The automatic release time of the dedicated host. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC+0.
	AutoReleaseTime pulumi.StringPtrInput
	// Specifies whether to automatically renew the subscription dedicated host.
	AutoRenew pulumi.BoolPtrInput
	// The auto-renewal period of the dedicated host. Unit: months. Valid values: `1`, `2`, `3`, `6`, and `12`. takes effect and is required only when the AutoRenew parameter is set to true.
	AutoRenewPeriod pulumi.IntPtrInput
	// CPU oversold ratio. Only custom specifications g6s, c6s, r6s support setting the CPU oversold ratio.
	CpuOverCommitRatio pulumi.Float64PtrInput
	// The dedicated host cluster ID to which the dedicated host belongs.
	DedicatedHostClusterId pulumi.StringPtrInput
	// The name of the dedicated host. The name must be 2 to 128 characters in length. It must start with a letter but cannot start with http:// or https://. It can contain letters, digits, colons (:), underscores (_), and hyphens (-).
	DedicatedHostName pulumi.StringPtrInput
	// The type of the dedicated host. You can call the [DescribeDedicatedHostTypes](https://www.alibabacloud.com/help/doc-detail/134240.htm) operation to obtain the most recent list of dedicated host types.
	DedicatedHostType pulumi.StringPtrInput
	// The description of the dedicated host. The description must be 2 to 256 characters in length and cannot start with http:// or https://.
	Description pulumi.StringPtrInput
	// Specifies whether to return the billing details of the order when the billing method is changed from subscription to pay-as-you-go. Default: `false`.
	DetailFee pulumi.BoolPtrInput
	// Specifies whether to only validate the request. Default: `false`.
	DryRun pulumi.BoolPtrInput
	// The subscription period of the dedicated host. The Period parameter takes effect and is required only when the ChargeType parameter is set to PrePaid.
	ExpiredTime pulumi.StringPtrInput
	// Specify the minimum purchase quantity of a dedicated host.
	MinQuantity pulumi.IntPtrInput
	// dedicated host network parameters. contains the following attributes:
	NetworkAttributes DedicatedHostNetworkAttributeArrayInput
	// The billing method of the dedicated host. Valid values: `PrePaid`, `PostPaid`. Default: `PostPaid`.
	PaymentType pulumi.StringPtrInput
	// The ID of the resource group to which the dedicated host belongs.
	ResourceGroupId pulumi.StringPtrInput
	// The unit of the subscription period of the dedicated host.
	SaleCycle pulumi.StringPtrInput
	// The status of the dedicated host.
	Status pulumi.StringPtrInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapInput
	// The zone ID of the dedicated host. This parameter is empty by default. If you do not specify this parameter, the system automatically selects a zone.
	ZoneId pulumi.StringPtrInput
}

func (DedicatedHostState) ElementType

func (DedicatedHostState) ElementType() reflect.Type

type Disk

type Disk struct {
	pulumi.CustomResourceState

	AdvancedFeatures pulumi.StringPtrOutput `pulumi:"advancedFeatures"`
	// The Zone to create the disk in.
	//
	// Deprecated: Field 'availability_zone' has been deprecated from provider version 1.122.0. New field 'zone_id' instead
	AvailabilityZone pulumi.StringOutput `pulumi:"availabilityZone"`
	// Category of the disk. Valid values are `cloud`, `cloudEfficiency`, `cloudSsd`, `cloudEssd`. Default is `cloudEfficiency`.
	Category                       pulumi.StringPtrOutput `pulumi:"category"`
	DedicatedBlockStorageClusterId pulumi.StringPtrOutput `pulumi:"dedicatedBlockStorageClusterId"`
	// Indicates whether the automatic snapshot is deleted when the disk is released. Default value: false.
	DeleteAutoSnapshot pulumi.BoolPtrOutput `pulumi:"deleteAutoSnapshot"`
	// Indicates whether the disk is released together with the instance: Default value: false.
	DeleteWithInstance pulumi.BoolOutput `pulumi:"deleteWithInstance"`
	// Description of the disk. This description can have a string of 2 to 256 characters, It cannot begin with http:// or https://. Default value is null.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	DiskName    pulumi.StringOutput    `pulumi:"diskName"`
	DryRun      pulumi.BoolPtrOutput   `pulumi:"dryRun"`
	// Indicates whether to apply a created automatic snapshot policy to the disk. Default value: false.
	EnableAutoSnapshot pulumi.BoolOutput      `pulumi:"enableAutoSnapshot"`
	EncryptAlgorithm   pulumi.StringPtrOutput `pulumi:"encryptAlgorithm"`
	// If true, the disk will be encrypted, conflict with `snapshotId`.
	Encrypted  pulumi.BoolPtrOutput `pulumi:"encrypted"`
	InstanceId pulumi.StringOutput  `pulumi:"instanceId"`
	// The ID of the KMS key corresponding to the data disk, The specified parameter `Encrypted` must be `true` when KmsKeyId is not empty.
	KmsKeyId pulumi.StringPtrOutput `pulumi:"kmsKeyId"`
	// Name of the ECS disk. This name can have a string of 2 to 128 characters, must contain only alphanumeric characters or hyphens, such as "-",".","_", and must not begin or end with a hyphen, and must not begin with http:// or https://. Default value is null.
	//
	// Deprecated: Field 'name' has been deprecated from provider version 1.122.0. New field 'disk_name' instead.
	Name        pulumi.StringOutput `pulumi:"name"`
	PaymentType pulumi.StringOutput `pulumi:"paymentType"`
	// Specifies the performance level of an ESSD when you create the ESSD. Default value: `PL1`. Valid values:
	// * `PL1`: A single ESSD delivers up to 50,000 random read/write IOPS.
	// * `PL2`: A single ESSD delivers up to 100,000 random read/write IOPS.
	// * `PL3`: A single ESSD delivers up to 1,000,000 random read/write IOPS.
	PerformanceLevel pulumi.StringOutput `pulumi:"performanceLevel"`
	// The Id of resource group which the disk belongs.
	// > **NOTE:** Disk category `cloud` has been outdated and it only can be used none I/O Optimized ECS instances. Recommend `cloudEfficiency` and `cloudSsd` disk.
	ResourceGroupId pulumi.StringPtrOutput `pulumi:"resourceGroupId"`
	// The size of the disk in GiBs. When resize the disk, the new size must be greater than the former value, or you would get an error `InvalidDiskSize.TooSmall`.
	Size pulumi.IntOutput `pulumi:"size"`
	// A snapshot to base the disk off of. If the disk size required by snapshot is greater than `size`, the `size` will be ignored, conflict with `encrypted`.
	SnapshotId pulumi.StringPtrOutput `pulumi:"snapshotId"`
	// The disk status.
	Status                    pulumi.StringOutput    `pulumi:"status"`
	StorageSetId              pulumi.StringPtrOutput `pulumi:"storageSetId"`
	StorageSetPartitionNumber pulumi.IntPtrOutput    `pulumi:"storageSetPartitionNumber"`
	// A mapping of tags to assign to the resource.
	Tags   pulumi.MapOutput       `pulumi:"tags"`
	Type   pulumi.StringPtrOutput `pulumi:"type"`
	ZoneId pulumi.StringOutput    `pulumi:"zoneId"`
}

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ecs.NewDisk(ctx, "ecsDisk", &ecs.DiskArgs{
			AvailabilityZone: pulumi.String("cn-beijing-b"),
			Category:         pulumi.String("cloud_efficiency"),
			Description:      pulumi.String("Hello ecs disk."),
			Encrypted:        pulumi.Bool(true),
			KmsKeyId:         pulumi.String("2a6767f0-a16c-4679-a60f-13bf*****"),
			Size:             pulumi.Int(30),
			Tags: pulumi.AnyMap{
				"Name": pulumi.Any("TerraformTest"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Cloud disk can be imported using the id, e.g.

```sh

$ pulumi import alicloud:ecs/disk:Disk example d-abc12345678

```

func GetDisk

func GetDisk(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *DiskState, opts ...pulumi.ResourceOption) (*Disk, error)

GetDisk gets an existing Disk 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 NewDisk

func NewDisk(ctx *pulumi.Context,
	name string, args *DiskArgs, opts ...pulumi.ResourceOption) (*Disk, error)

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

func (*Disk) ElementType

func (*Disk) ElementType() reflect.Type

func (*Disk) ToDiskOutput

func (i *Disk) ToDiskOutput() DiskOutput

func (*Disk) ToDiskOutputWithContext

func (i *Disk) ToDiskOutputWithContext(ctx context.Context) DiskOutput

type DiskArgs

type DiskArgs struct {
	AdvancedFeatures pulumi.StringPtrInput
	// The Zone to create the disk in.
	//
	// Deprecated: Field 'availability_zone' has been deprecated from provider version 1.122.0. New field 'zone_id' instead
	AvailabilityZone pulumi.StringPtrInput
	// Category of the disk. Valid values are `cloud`, `cloudEfficiency`, `cloudSsd`, `cloudEssd`. Default is `cloudEfficiency`.
	Category                       pulumi.StringPtrInput
	DedicatedBlockStorageClusterId pulumi.StringPtrInput
	// Indicates whether the automatic snapshot is deleted when the disk is released. Default value: false.
	DeleteAutoSnapshot pulumi.BoolPtrInput
	// Indicates whether the disk is released together with the instance: Default value: false.
	DeleteWithInstance pulumi.BoolPtrInput
	// Description of the disk. This description can have a string of 2 to 256 characters, It cannot begin with http:// or https://. Default value is null.
	Description pulumi.StringPtrInput
	DiskName    pulumi.StringPtrInput
	DryRun      pulumi.BoolPtrInput
	// Indicates whether to apply a created automatic snapshot policy to the disk. Default value: false.
	EnableAutoSnapshot pulumi.BoolPtrInput
	EncryptAlgorithm   pulumi.StringPtrInput
	// If true, the disk will be encrypted, conflict with `snapshotId`.
	Encrypted  pulumi.BoolPtrInput
	InstanceId pulumi.StringPtrInput
	// The ID of the KMS key corresponding to the data disk, The specified parameter `Encrypted` must be `true` when KmsKeyId is not empty.
	KmsKeyId pulumi.StringPtrInput
	// Name of the ECS disk. This name can have a string of 2 to 128 characters, must contain only alphanumeric characters or hyphens, such as "-",".","_", and must not begin or end with a hyphen, and must not begin with http:// or https://. Default value is null.
	//
	// Deprecated: Field 'name' has been deprecated from provider version 1.122.0. New field 'disk_name' instead.
	Name        pulumi.StringPtrInput
	PaymentType pulumi.StringPtrInput
	// Specifies the performance level of an ESSD when you create the ESSD. Default value: `PL1`. Valid values:
	// * `PL1`: A single ESSD delivers up to 50,000 random read/write IOPS.
	// * `PL2`: A single ESSD delivers up to 100,000 random read/write IOPS.
	// * `PL3`: A single ESSD delivers up to 1,000,000 random read/write IOPS.
	PerformanceLevel pulumi.StringPtrInput
	// The Id of resource group which the disk belongs.
	// > **NOTE:** Disk category `cloud` has been outdated and it only can be used none I/O Optimized ECS instances. Recommend `cloudEfficiency` and `cloudSsd` disk.
	ResourceGroupId pulumi.StringPtrInput
	// The size of the disk in GiBs. When resize the disk, the new size must be greater than the former value, or you would get an error `InvalidDiskSize.TooSmall`.
	Size pulumi.IntPtrInput
	// A snapshot to base the disk off of. If the disk size required by snapshot is greater than `size`, the `size` will be ignored, conflict with `encrypted`.
	SnapshotId                pulumi.StringPtrInput
	StorageSetId              pulumi.StringPtrInput
	StorageSetPartitionNumber pulumi.IntPtrInput
	// A mapping of tags to assign to the resource.
	Tags   pulumi.MapInput
	Type   pulumi.StringPtrInput
	ZoneId pulumi.StringPtrInput
}

The set of arguments for constructing a Disk resource.

func (DiskArgs) ElementType

func (DiskArgs) ElementType() reflect.Type

type DiskArray

type DiskArray []DiskInput

func (DiskArray) ElementType

func (DiskArray) ElementType() reflect.Type

func (DiskArray) ToDiskArrayOutput

func (i DiskArray) ToDiskArrayOutput() DiskArrayOutput

func (DiskArray) ToDiskArrayOutputWithContext

func (i DiskArray) ToDiskArrayOutputWithContext(ctx context.Context) DiskArrayOutput

type DiskArrayInput

type DiskArrayInput interface {
	pulumi.Input

	ToDiskArrayOutput() DiskArrayOutput
	ToDiskArrayOutputWithContext(context.Context) DiskArrayOutput
}

DiskArrayInput is an input type that accepts DiskArray and DiskArrayOutput values. You can construct a concrete instance of `DiskArrayInput` via:

DiskArray{ DiskArgs{...} }

type DiskArrayOutput

type DiskArrayOutput struct{ *pulumi.OutputState }

func (DiskArrayOutput) ElementType

func (DiskArrayOutput) ElementType() reflect.Type

func (DiskArrayOutput) Index

func (DiskArrayOutput) ToDiskArrayOutput

func (o DiskArrayOutput) ToDiskArrayOutput() DiskArrayOutput

func (DiskArrayOutput) ToDiskArrayOutputWithContext

func (o DiskArrayOutput) ToDiskArrayOutputWithContext(ctx context.Context) DiskArrayOutput

type DiskAttachment

type DiskAttachment struct {
	pulumi.CustomResourceState

	Bootable           pulumi.BoolPtrOutput `pulumi:"bootable"`
	DeleteWithInstance pulumi.BoolPtrOutput `pulumi:"deleteWithInstance"`
	Device             pulumi.StringOutput  `pulumi:"device"`
	// ID of the Disk to be attached.
	DiskId pulumi.StringOutput `pulumi:"diskId"`
	// ID of the Instance to attach to.
	InstanceId  pulumi.StringOutput    `pulumi:"instanceId"`
	KeyPairName pulumi.StringPtrOutput `pulumi:"keyPairName"`
	Password    pulumi.StringPtrOutput `pulumi:"password"`
}

## Example Usage

Basic usage

```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		ecsSg, err := ecs.NewSecurityGroup(ctx, "ecsSg", &ecs.SecurityGroupArgs{
			Description: pulumi.String("New security group"),
		})
		if err != nil {
			return err
		}
		ecsDisk, err := ecs.NewDisk(ctx, "ecsDisk", &ecs.DiskArgs{
			AvailabilityZone: pulumi.String("cn-beijing-a"),
			Size:             pulumi.Int(50),
			Tags: pulumi.AnyMap{
				"Name": pulumi.Any("TerraformTest-disk"),
			},
		})
		if err != nil {
			return err
		}
		ecsInstance, err := ecs.NewInstance(ctx, "ecsInstance", &ecs.InstanceArgs{
			ImageId:          pulumi.String("ubuntu_18_04_64_20G_alibase_20190624.vhd"),
			InstanceType:     pulumi.String("ecs.n4.small"),
			AvailabilityZone: pulumi.String("cn-beijing-a"),
			SecurityGroups: pulumi.StringArray{
				ecsSg.ID(),
			},
			InstanceName:       pulumi.String("Hello"),
			InternetChargeType: pulumi.String("PayByBandwidth"),
			Tags: pulumi.StringMap{
				"Name": pulumi.String("TerraformTest-instance"),
			},
		})
		if err != nil {
			return err
		}
		_, err = ecs.NewDiskAttachment(ctx, "ecsDiskAtt", &ecs.DiskAttachmentArgs{
			DiskId:     ecsDisk.ID(),
			InstanceId: ecsInstance.ID(),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

The disk attachment can be imported using the id, e.g.

```sh

$ pulumi import alicloud:ecs/diskAttachment:DiskAttachment example d-abc12345678:i-abc12355

```

func GetDiskAttachment

func GetDiskAttachment(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *DiskAttachmentState, opts ...pulumi.ResourceOption) (*DiskAttachment, error)

GetDiskAttachment gets an existing DiskAttachment 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 NewDiskAttachment

func NewDiskAttachment(ctx *pulumi.Context,
	name string, args *DiskAttachmentArgs, opts ...pulumi.ResourceOption) (*DiskAttachment, error)

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

func (*DiskAttachment) ElementType

func (*DiskAttachment) ElementType() reflect.Type

func (*DiskAttachment) ToDiskAttachmentOutput

func (i *DiskAttachment) ToDiskAttachmentOutput() DiskAttachmentOutput

func (*DiskAttachment) ToDiskAttachmentOutputWithContext

func (i *DiskAttachment) ToDiskAttachmentOutputWithContext(ctx context.Context) DiskAttachmentOutput

type DiskAttachmentArgs

type DiskAttachmentArgs struct {
	Bootable           pulumi.BoolPtrInput
	DeleteWithInstance pulumi.BoolPtrInput
	// ID of the Disk to be attached.
	DiskId pulumi.StringInput
	// ID of the Instance to attach to.
	InstanceId  pulumi.StringInput
	KeyPairName pulumi.StringPtrInput
	Password    pulumi.StringPtrInput
}

The set of arguments for constructing a DiskAttachment resource.

func (DiskAttachmentArgs) ElementType

func (DiskAttachmentArgs) ElementType() reflect.Type

type DiskAttachmentArray

type DiskAttachmentArray []DiskAttachmentInput

func (DiskAttachmentArray) ElementType

func (DiskAttachmentArray) ElementType() reflect.Type

func (DiskAttachmentArray) ToDiskAttachmentArrayOutput

func (i DiskAttachmentArray) ToDiskAttachmentArrayOutput() DiskAttachmentArrayOutput

func (DiskAttachmentArray) ToDiskAttachmentArrayOutputWithContext

func (i DiskAttachmentArray) ToDiskAttachmentArrayOutputWithContext(ctx context.Context) DiskAttachmentArrayOutput

type DiskAttachmentArrayInput

type DiskAttachmentArrayInput interface {
	pulumi.Input

	ToDiskAttachmentArrayOutput() DiskAttachmentArrayOutput
	ToDiskAttachmentArrayOutputWithContext(context.Context) DiskAttachmentArrayOutput
}

DiskAttachmentArrayInput is an input type that accepts DiskAttachmentArray and DiskAttachmentArrayOutput values. You can construct a concrete instance of `DiskAttachmentArrayInput` via:

DiskAttachmentArray{ DiskAttachmentArgs{...} }

type DiskAttachmentArrayOutput

type DiskAttachmentArrayOutput struct{ *pulumi.OutputState }

func (DiskAttachmentArrayOutput) ElementType

func (DiskAttachmentArrayOutput) ElementType() reflect.Type

func (DiskAttachmentArrayOutput) Index

func (DiskAttachmentArrayOutput) ToDiskAttachmentArrayOutput

func (o DiskAttachmentArrayOutput) ToDiskAttachmentArrayOutput() DiskAttachmentArrayOutput

func (DiskAttachmentArrayOutput) ToDiskAttachmentArrayOutputWithContext

func (o DiskAttachmentArrayOutput) ToDiskAttachmentArrayOutputWithContext(ctx context.Context) DiskAttachmentArrayOutput

type DiskAttachmentInput

type DiskAttachmentInput interface {
	pulumi.Input

	ToDiskAttachmentOutput() DiskAttachmentOutput
	ToDiskAttachmentOutputWithContext(ctx context.Context) DiskAttachmentOutput
}

type DiskAttachmentMap

type DiskAttachmentMap map[string]DiskAttachmentInput

func (DiskAttachmentMap) ElementType

func (DiskAttachmentMap) ElementType() reflect.Type

func (DiskAttachmentMap) ToDiskAttachmentMapOutput

func (i DiskAttachmentMap) ToDiskAttachmentMapOutput() DiskAttachmentMapOutput

func (DiskAttachmentMap) ToDiskAttachmentMapOutputWithContext

func (i DiskAttachmentMap) ToDiskAttachmentMapOutputWithContext(ctx context.Context) DiskAttachmentMapOutput

type DiskAttachmentMapInput

type DiskAttachmentMapInput interface {
	pulumi.Input

	ToDiskAttachmentMapOutput() DiskAttachmentMapOutput
	ToDiskAttachmentMapOutputWithContext(context.Context) DiskAttachmentMapOutput
}

DiskAttachmentMapInput is an input type that accepts DiskAttachmentMap and DiskAttachmentMapOutput values. You can construct a concrete instance of `DiskAttachmentMapInput` via:

DiskAttachmentMap{ "key": DiskAttachmentArgs{...} }

type DiskAttachmentMapOutput

type DiskAttachmentMapOutput struct{ *pulumi.OutputState }

func (DiskAttachmentMapOutput) ElementType

func (DiskAttachmentMapOutput) ElementType() reflect.Type

func (DiskAttachmentMapOutput) MapIndex

func (DiskAttachmentMapOutput) ToDiskAttachmentMapOutput

func (o DiskAttachmentMapOutput) ToDiskAttachmentMapOutput() DiskAttachmentMapOutput

func (DiskAttachmentMapOutput) ToDiskAttachmentMapOutputWithContext

func (o DiskAttachmentMapOutput) ToDiskAttachmentMapOutputWithContext(ctx context.Context) DiskAttachmentMapOutput

type DiskAttachmentOutput

type DiskAttachmentOutput struct{ *pulumi.OutputState }

func (DiskAttachmentOutput) Bootable

func (DiskAttachmentOutput) DeleteWithInstance

func (o DiskAttachmentOutput) DeleteWithInstance() pulumi.BoolPtrOutput

func (DiskAttachmentOutput) Device

func (DiskAttachmentOutput) DiskId

ID of the Disk to be attached.

func (DiskAttachmentOutput) ElementType

func (DiskAttachmentOutput) ElementType() reflect.Type

func (DiskAttachmentOutput) InstanceId

func (o DiskAttachmentOutput) InstanceId() pulumi.StringOutput

ID of the Instance to attach to.

func (DiskAttachmentOutput) KeyPairName

func (DiskAttachmentOutput) Password

func (DiskAttachmentOutput) ToDiskAttachmentOutput

func (o DiskAttachmentOutput) ToDiskAttachmentOutput() DiskAttachmentOutput

func (DiskAttachmentOutput) ToDiskAttachmentOutputWithContext

func (o DiskAttachmentOutput) ToDiskAttachmentOutputWithContext(ctx context.Context) DiskAttachmentOutput

type DiskAttachmentState

type DiskAttachmentState struct {
	Bootable           pulumi.BoolPtrInput
	DeleteWithInstance pulumi.BoolPtrInput
	Device             pulumi.StringPtrInput
	// ID of the Disk to be attached.
	DiskId pulumi.StringPtrInput
	// ID of the Instance to attach to.
	InstanceId  pulumi.StringPtrInput
	KeyPairName pulumi.StringPtrInput
	Password    pulumi.StringPtrInput
}

func (DiskAttachmentState) ElementType

func (DiskAttachmentState) ElementType() reflect.Type

type DiskInput

type DiskInput interface {
	pulumi.Input

	ToDiskOutput() DiskOutput
	ToDiskOutputWithContext(ctx context.Context) DiskOutput
}

type DiskMap

type DiskMap map[string]DiskInput

func (DiskMap) ElementType

func (DiskMap) ElementType() reflect.Type

func (DiskMap) ToDiskMapOutput

func (i DiskMap) ToDiskMapOutput() DiskMapOutput

func (DiskMap) ToDiskMapOutputWithContext

func (i DiskMap) ToDiskMapOutputWithContext(ctx context.Context) DiskMapOutput

type DiskMapInput

type DiskMapInput interface {
	pulumi.Input

	ToDiskMapOutput() DiskMapOutput
	ToDiskMapOutputWithContext(context.Context) DiskMapOutput
}

DiskMapInput is an input type that accepts DiskMap and DiskMapOutput values. You can construct a concrete instance of `DiskMapInput` via:

DiskMap{ "key": DiskArgs{...} }

type DiskMapOutput

type DiskMapOutput struct{ *pulumi.OutputState }

func (DiskMapOutput) ElementType

func (DiskMapOutput) ElementType() reflect.Type

func (DiskMapOutput) MapIndex

func (DiskMapOutput) ToDiskMapOutput

func (o DiskMapOutput) ToDiskMapOutput() DiskMapOutput

func (DiskMapOutput) ToDiskMapOutputWithContext

func (o DiskMapOutput) ToDiskMapOutputWithContext(ctx context.Context) DiskMapOutput

type DiskOutput

type DiskOutput struct{ *pulumi.OutputState }

func (DiskOutput) AdvancedFeatures

func (o DiskOutput) AdvancedFeatures() pulumi.StringPtrOutput

func (DiskOutput) AvailabilityZone deprecated

func (o DiskOutput) AvailabilityZone() pulumi.StringOutput

The Zone to create the disk in.

Deprecated: Field 'availability_zone' has been deprecated from provider version 1.122.0. New field 'zone_id' instead

func (DiskOutput) Category

func (o DiskOutput) Category() pulumi.StringPtrOutput

Category of the disk. Valid values are `cloud`, `cloudEfficiency`, `cloudSsd`, `cloudEssd`. Default is `cloudEfficiency`.

func (DiskOutput) DedicatedBlockStorageClusterId

func (o DiskOutput) DedicatedBlockStorageClusterId() pulumi.StringPtrOutput

func (DiskOutput) DeleteAutoSnapshot

func (o DiskOutput) DeleteAutoSnapshot() pulumi.BoolPtrOutput

Indicates whether the automatic snapshot is deleted when the disk is released. Default value: false.

func (DiskOutput) DeleteWithInstance

func (o DiskOutput) DeleteWithInstance() pulumi.BoolOutput

Indicates whether the disk is released together with the instance: Default value: false.

func (DiskOutput) Description

func (o DiskOutput) Description() pulumi.StringPtrOutput

Description of the disk. This description can have a string of 2 to 256 characters, It cannot begin with http:// or https://. Default value is null.

func (DiskOutput) DiskName

func (o DiskOutput) DiskName() pulumi.StringOutput

func (DiskOutput) DryRun

func (o DiskOutput) DryRun() pulumi.BoolPtrOutput

func (DiskOutput) ElementType

func (DiskOutput) ElementType() reflect.Type

func (DiskOutput) EnableAutoSnapshot

func (o DiskOutput) EnableAutoSnapshot() pulumi.BoolOutput

Indicates whether to apply a created automatic snapshot policy to the disk. Default value: false.

func (DiskOutput) EncryptAlgorithm

func (o DiskOutput) EncryptAlgorithm() pulumi.StringPtrOutput

func (DiskOutput) Encrypted

func (o DiskOutput) Encrypted() pulumi.BoolPtrOutput

If true, the disk will be encrypted, conflict with `snapshotId`.

func (DiskOutput) InstanceId

func (o DiskOutput) InstanceId() pulumi.StringOutput

func (DiskOutput) KmsKeyId

func (o DiskOutput) KmsKeyId() pulumi.StringPtrOutput

The ID of the KMS key corresponding to the data disk, The specified parameter `Encrypted` must be `true` when KmsKeyId is not empty.

func (DiskOutput) Name deprecated

func (o DiskOutput) Name() pulumi.StringOutput

Name of the ECS disk. This name can have a string of 2 to 128 characters, must contain only alphanumeric characters or hyphens, such as "-",".","_", and must not begin or end with a hyphen, and must not begin with http:// or https://. Default value is null.

Deprecated: Field 'name' has been deprecated from provider version 1.122.0. New field 'disk_name' instead.

func (DiskOutput) PaymentType

func (o DiskOutput) PaymentType() pulumi.StringOutput

func (DiskOutput) PerformanceLevel

func (o DiskOutput) PerformanceLevel() pulumi.StringOutput

Specifies the performance level of an ESSD when you create the ESSD. Default value: `PL1`. Valid values: * `PL1`: A single ESSD delivers up to 50,000 random read/write IOPS. * `PL2`: A single ESSD delivers up to 100,000 random read/write IOPS. * `PL3`: A single ESSD delivers up to 1,000,000 random read/write IOPS.

func (DiskOutput) ResourceGroupId

func (o DiskOutput) ResourceGroupId() pulumi.StringPtrOutput

The Id of resource group which the disk belongs. > **NOTE:** Disk category `cloud` has been outdated and it only can be used none I/O Optimized ECS instances. Recommend `cloudEfficiency` and `cloudSsd` disk.

func (DiskOutput) Size

func (o DiskOutput) Size() pulumi.IntOutput

The size of the disk in GiBs. When resize the disk, the new size must be greater than the former value, or you would get an error `InvalidDiskSize.TooSmall`.

func (DiskOutput) SnapshotId

func (o DiskOutput) SnapshotId() pulumi.StringPtrOutput

A snapshot to base the disk off of. If the disk size required by snapshot is greater than `size`, the `size` will be ignored, conflict with `encrypted`.

func (DiskOutput) Status

func (o DiskOutput) Status() pulumi.StringOutput

The disk status.

func (DiskOutput) StorageSetId

func (o DiskOutput) StorageSetId() pulumi.StringPtrOutput

func (DiskOutput) StorageSetPartitionNumber

func (o DiskOutput) StorageSetPartitionNumber() pulumi.IntPtrOutput

func (DiskOutput) Tags

func (o DiskOutput) Tags() pulumi.MapOutput

A mapping of tags to assign to the resource.

func (DiskOutput) ToDiskOutput

func (o DiskOutput) ToDiskOutput() DiskOutput

func (DiskOutput) ToDiskOutputWithContext

func (o DiskOutput) ToDiskOutputWithContext(ctx context.Context) DiskOutput

func (DiskOutput) Type

func (DiskOutput) ZoneId

func (o DiskOutput) ZoneId() pulumi.StringOutput

type DiskState

type DiskState struct {
	AdvancedFeatures pulumi.StringPtrInput
	// The Zone to create the disk in.
	//
	// Deprecated: Field 'availability_zone' has been deprecated from provider version 1.122.0. New field 'zone_id' instead
	AvailabilityZone pulumi.StringPtrInput
	// Category of the disk. Valid values are `cloud`, `cloudEfficiency`, `cloudSsd`, `cloudEssd`. Default is `cloudEfficiency`.
	Category                       pulumi.StringPtrInput
	DedicatedBlockStorageClusterId pulumi.StringPtrInput
	// Indicates whether the automatic snapshot is deleted when the disk is released. Default value: false.
	DeleteAutoSnapshot pulumi.BoolPtrInput
	// Indicates whether the disk is released together with the instance: Default value: false.
	DeleteWithInstance pulumi.BoolPtrInput
	// Description of the disk. This description can have a string of 2 to 256 characters, It cannot begin with http:// or https://. Default value is null.
	Description pulumi.StringPtrInput
	DiskName    pulumi.StringPtrInput
	DryRun      pulumi.BoolPtrInput
	// Indicates whether to apply a created automatic snapshot policy to the disk. Default value: false.
	EnableAutoSnapshot pulumi.BoolPtrInput
	EncryptAlgorithm   pulumi.StringPtrInput
	// If true, the disk will be encrypted, conflict with `snapshotId`.
	Encrypted  pulumi.BoolPtrInput
	InstanceId pulumi.StringPtrInput
	// The ID of the KMS key corresponding to the data disk, The specified parameter `Encrypted` must be `true` when KmsKeyId is not empty.
	KmsKeyId pulumi.StringPtrInput
	// Name of the ECS disk. This name can have a string of 2 to 128 characters, must contain only alphanumeric characters or hyphens, such as "-",".","_", and must not begin or end with a hyphen, and must not begin with http:// or https://. Default value is null.
	//
	// Deprecated: Field 'name' has been deprecated from provider version 1.122.0. New field 'disk_name' instead.
	Name        pulumi.StringPtrInput
	PaymentType pulumi.StringPtrInput
	// Specifies the performance level of an ESSD when you create the ESSD. Default value: `PL1`. Valid values:
	// * `PL1`: A single ESSD delivers up to 50,000 random read/write IOPS.
	// * `PL2`: A single ESSD delivers up to 100,000 random read/write IOPS.
	// * `PL3`: A single ESSD delivers up to 1,000,000 random read/write IOPS.
	PerformanceLevel pulumi.StringPtrInput
	// The Id of resource group which the disk belongs.
	// > **NOTE:** Disk category `cloud` has been outdated and it only can be used none I/O Optimized ECS instances. Recommend `cloudEfficiency` and `cloudSsd` disk.
	ResourceGroupId pulumi.StringPtrInput
	// The size of the disk in GiBs. When resize the disk, the new size must be greater than the former value, or you would get an error `InvalidDiskSize.TooSmall`.
	Size pulumi.IntPtrInput
	// A snapshot to base the disk off of. If the disk size required by snapshot is greater than `size`, the `size` will be ignored, conflict with `encrypted`.
	SnapshotId pulumi.StringPtrInput
	// The disk status.
	Status                    pulumi.StringPtrInput
	StorageSetId              pulumi.StringPtrInput
	StorageSetPartitionNumber pulumi.IntPtrInput
	// A mapping of tags to assign to the resource.
	Tags   pulumi.MapInput
	Type   pulumi.StringPtrInput
	ZoneId pulumi.StringPtrInput
}

func (DiskState) ElementType

func (DiskState) ElementType() reflect.Type

type EcsAutoSnapshotPolicyAttachment

type EcsAutoSnapshotPolicyAttachment struct {
	pulumi.CustomResourceState

	// The auto snapshot policy id.
	AutoSnapshotPolicyId pulumi.StringOutput `pulumi:"autoSnapshotPolicyId"`
	// The disk id.
	DiskId pulumi.StringOutput `pulumi:"diskId"`
}

Provides a ECS Auto Snapshot Policy Attachment resource.

For information about ECS Auto Snapshot Policy Attachment and how to use it, see [What is Auto Snapshot Policy Attachment](https://www.alibabacloud.com/help/en/doc-detail/25531.htm).

> **NOTE:** Available in v1.122.0+.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ecs.NewEcsAutoSnapshotPolicyAttachment(ctx, "example", &ecs.EcsAutoSnapshotPolicyAttachmentArgs{
			AutoSnapshotPolicyId: pulumi.String("s-ge465xxxx"),
			DiskId:               pulumi.String("d-gw835xxxx"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

ECS Auto Snapshot Policy Attachment can be imported using the id, e.g.

```sh

$ pulumi import alicloud:ecs/ecsAutoSnapshotPolicyAttachment:EcsAutoSnapshotPolicyAttachment example s-abcd12345:d-abcd12345

```

func GetEcsAutoSnapshotPolicyAttachment

func GetEcsAutoSnapshotPolicyAttachment(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *EcsAutoSnapshotPolicyAttachmentState, opts ...pulumi.ResourceOption) (*EcsAutoSnapshotPolicyAttachment, error)

GetEcsAutoSnapshotPolicyAttachment gets an existing EcsAutoSnapshotPolicyAttachment 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 NewEcsAutoSnapshotPolicyAttachment

func NewEcsAutoSnapshotPolicyAttachment(ctx *pulumi.Context,
	name string, args *EcsAutoSnapshotPolicyAttachmentArgs, opts ...pulumi.ResourceOption) (*EcsAutoSnapshotPolicyAttachment, error)

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

func (*EcsAutoSnapshotPolicyAttachment) ElementType

func (*EcsAutoSnapshotPolicyAttachment) ToEcsAutoSnapshotPolicyAttachmentOutput

func (i *EcsAutoSnapshotPolicyAttachment) ToEcsAutoSnapshotPolicyAttachmentOutput() EcsAutoSnapshotPolicyAttachmentOutput

func (*EcsAutoSnapshotPolicyAttachment) ToEcsAutoSnapshotPolicyAttachmentOutputWithContext

func (i *EcsAutoSnapshotPolicyAttachment) ToEcsAutoSnapshotPolicyAttachmentOutputWithContext(ctx context.Context) EcsAutoSnapshotPolicyAttachmentOutput

type EcsAutoSnapshotPolicyAttachmentArgs

type EcsAutoSnapshotPolicyAttachmentArgs struct {
	// The auto snapshot policy id.
	AutoSnapshotPolicyId pulumi.StringInput
	// The disk id.
	DiskId pulumi.StringInput
}

The set of arguments for constructing a EcsAutoSnapshotPolicyAttachment resource.

func (EcsAutoSnapshotPolicyAttachmentArgs) ElementType

type EcsAutoSnapshotPolicyAttachmentArray

type EcsAutoSnapshotPolicyAttachmentArray []EcsAutoSnapshotPolicyAttachmentInput

func (EcsAutoSnapshotPolicyAttachmentArray) ElementType

func (EcsAutoSnapshotPolicyAttachmentArray) ToEcsAutoSnapshotPolicyAttachmentArrayOutput

func (i EcsAutoSnapshotPolicyAttachmentArray) ToEcsAutoSnapshotPolicyAttachmentArrayOutput() EcsAutoSnapshotPolicyAttachmentArrayOutput

func (EcsAutoSnapshotPolicyAttachmentArray) ToEcsAutoSnapshotPolicyAttachmentArrayOutputWithContext

func (i EcsAutoSnapshotPolicyAttachmentArray) ToEcsAutoSnapshotPolicyAttachmentArrayOutputWithContext(ctx context.Context) EcsAutoSnapshotPolicyAttachmentArrayOutput

type EcsAutoSnapshotPolicyAttachmentArrayInput

type EcsAutoSnapshotPolicyAttachmentArrayInput interface {
	pulumi.Input

	ToEcsAutoSnapshotPolicyAttachmentArrayOutput() EcsAutoSnapshotPolicyAttachmentArrayOutput
	ToEcsAutoSnapshotPolicyAttachmentArrayOutputWithContext(context.Context) EcsAutoSnapshotPolicyAttachmentArrayOutput
}

EcsAutoSnapshotPolicyAttachmentArrayInput is an input type that accepts EcsAutoSnapshotPolicyAttachmentArray and EcsAutoSnapshotPolicyAttachmentArrayOutput values. You can construct a concrete instance of `EcsAutoSnapshotPolicyAttachmentArrayInput` via:

EcsAutoSnapshotPolicyAttachmentArray{ EcsAutoSnapshotPolicyAttachmentArgs{...} }

type EcsAutoSnapshotPolicyAttachmentArrayOutput

type EcsAutoSnapshotPolicyAttachmentArrayOutput struct{ *pulumi.OutputState }

func (EcsAutoSnapshotPolicyAttachmentArrayOutput) ElementType

func (EcsAutoSnapshotPolicyAttachmentArrayOutput) Index

func (EcsAutoSnapshotPolicyAttachmentArrayOutput) ToEcsAutoSnapshotPolicyAttachmentArrayOutput

func (o EcsAutoSnapshotPolicyAttachmentArrayOutput) ToEcsAutoSnapshotPolicyAttachmentArrayOutput() EcsAutoSnapshotPolicyAttachmentArrayOutput

func (EcsAutoSnapshotPolicyAttachmentArrayOutput) ToEcsAutoSnapshotPolicyAttachmentArrayOutputWithContext

func (o EcsAutoSnapshotPolicyAttachmentArrayOutput) ToEcsAutoSnapshotPolicyAttachmentArrayOutputWithContext(ctx context.Context) EcsAutoSnapshotPolicyAttachmentArrayOutput

type EcsAutoSnapshotPolicyAttachmentInput

type EcsAutoSnapshotPolicyAttachmentInput interface {
	pulumi.Input

	ToEcsAutoSnapshotPolicyAttachmentOutput() EcsAutoSnapshotPolicyAttachmentOutput
	ToEcsAutoSnapshotPolicyAttachmentOutputWithContext(ctx context.Context) EcsAutoSnapshotPolicyAttachmentOutput
}

type EcsAutoSnapshotPolicyAttachmentMap

type EcsAutoSnapshotPolicyAttachmentMap map[string]EcsAutoSnapshotPolicyAttachmentInput

func (EcsAutoSnapshotPolicyAttachmentMap) ElementType

func (EcsAutoSnapshotPolicyAttachmentMap) ToEcsAutoSnapshotPolicyAttachmentMapOutput

func (i EcsAutoSnapshotPolicyAttachmentMap) ToEcsAutoSnapshotPolicyAttachmentMapOutput() EcsAutoSnapshotPolicyAttachmentMapOutput

func (EcsAutoSnapshotPolicyAttachmentMap) ToEcsAutoSnapshotPolicyAttachmentMapOutputWithContext

func (i EcsAutoSnapshotPolicyAttachmentMap) ToEcsAutoSnapshotPolicyAttachmentMapOutputWithContext(ctx context.Context) EcsAutoSnapshotPolicyAttachmentMapOutput

type EcsAutoSnapshotPolicyAttachmentMapInput

type EcsAutoSnapshotPolicyAttachmentMapInput interface {
	pulumi.Input

	ToEcsAutoSnapshotPolicyAttachmentMapOutput() EcsAutoSnapshotPolicyAttachmentMapOutput
	ToEcsAutoSnapshotPolicyAttachmentMapOutputWithContext(context.Context) EcsAutoSnapshotPolicyAttachmentMapOutput
}

EcsAutoSnapshotPolicyAttachmentMapInput is an input type that accepts EcsAutoSnapshotPolicyAttachmentMap and EcsAutoSnapshotPolicyAttachmentMapOutput values. You can construct a concrete instance of `EcsAutoSnapshotPolicyAttachmentMapInput` via:

EcsAutoSnapshotPolicyAttachmentMap{ "key": EcsAutoSnapshotPolicyAttachmentArgs{...} }

type EcsAutoSnapshotPolicyAttachmentMapOutput

type EcsAutoSnapshotPolicyAttachmentMapOutput struct{ *pulumi.OutputState }

func (EcsAutoSnapshotPolicyAttachmentMapOutput) ElementType

func (EcsAutoSnapshotPolicyAttachmentMapOutput) MapIndex

func (EcsAutoSnapshotPolicyAttachmentMapOutput) ToEcsAutoSnapshotPolicyAttachmentMapOutput

func (o EcsAutoSnapshotPolicyAttachmentMapOutput) ToEcsAutoSnapshotPolicyAttachmentMapOutput() EcsAutoSnapshotPolicyAttachmentMapOutput

func (EcsAutoSnapshotPolicyAttachmentMapOutput) ToEcsAutoSnapshotPolicyAttachmentMapOutputWithContext

func (o EcsAutoSnapshotPolicyAttachmentMapOutput) ToEcsAutoSnapshotPolicyAttachmentMapOutputWithContext(ctx context.Context) EcsAutoSnapshotPolicyAttachmentMapOutput

type EcsAutoSnapshotPolicyAttachmentOutput

type EcsAutoSnapshotPolicyAttachmentOutput struct{ *pulumi.OutputState }

func (EcsAutoSnapshotPolicyAttachmentOutput) AutoSnapshotPolicyId

The auto snapshot policy id.

func (EcsAutoSnapshotPolicyAttachmentOutput) DiskId

The disk id.

func (EcsAutoSnapshotPolicyAttachmentOutput) ElementType

func (EcsAutoSnapshotPolicyAttachmentOutput) ToEcsAutoSnapshotPolicyAttachmentOutput

func (o EcsAutoSnapshotPolicyAttachmentOutput) ToEcsAutoSnapshotPolicyAttachmentOutput() EcsAutoSnapshotPolicyAttachmentOutput

func (EcsAutoSnapshotPolicyAttachmentOutput) ToEcsAutoSnapshotPolicyAttachmentOutputWithContext

func (o EcsAutoSnapshotPolicyAttachmentOutput) ToEcsAutoSnapshotPolicyAttachmentOutputWithContext(ctx context.Context) EcsAutoSnapshotPolicyAttachmentOutput

type EcsAutoSnapshotPolicyAttachmentState

type EcsAutoSnapshotPolicyAttachmentState struct {
	// The auto snapshot policy id.
	AutoSnapshotPolicyId pulumi.StringPtrInput
	// The disk id.
	DiskId pulumi.StringPtrInput
}

func (EcsAutoSnapshotPolicyAttachmentState) ElementType

type EcsDedicatedHostCluster

type EcsDedicatedHostCluster struct {
	pulumi.CustomResourceState

	// The name of the dedicated host cluster. The name must be `2` to `128` characters in length and can contain letters, digits, periods (.), underscores (_), and hyphens (-). It must start with a letter. It cannot contain `http://` or `https://`.
	DedicatedHostClusterName pulumi.StringPtrOutput `pulumi:"dedicatedHostClusterName"`
	// The description of the dedicated host cluster. The description must be `2` to `256` characters in length. It cannot start with `http://` or `https://`.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// The dry run.
	DryRun pulumi.BoolPtrOutput `pulumi:"dryRun"`
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapOutput `pulumi:"tags"`
	// The ID of the zone in which to create the dedicated host cluster.
	ZoneId pulumi.StringOutput `pulumi:"zoneId"`
}

Provides a ECS Dedicated Host Cluster resource.

For information about ECS Dedicated Host Cluster and how to use it, see [What is Dedicated Host Cluster](https://www.alibabacloud.com/help/en/doc-detail/184667.html).

> **NOTE:** Available in v1.146.0+.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/go/alicloud"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleZones, err := alicloud.GetZones(ctx, nil, nil)
		if err != nil {
			return err
		}
		_, err = ecs.NewEcsDedicatedHostCluster(ctx, "exampleEcsDedicatedHostCluster", &ecs.EcsDedicatedHostClusterArgs{
			DedicatedHostClusterName: pulumi.String("example_value"),
			Description:              pulumi.String("example_value"),
			ZoneId:                   pulumi.String(exampleZones.Zones[0].Id),
			Tags: pulumi.AnyMap{
				"Create": pulumi.Any("TF"),
				"For":    pulumi.Any("DDH_Cluster_Test"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

ECS Dedicated Host Cluster can be imported using the id, e.g.

```sh

$ pulumi import alicloud:ecs/ecsDedicatedHostCluster:EcsDedicatedHostCluster example <id>

```

func GetEcsDedicatedHostCluster

func GetEcsDedicatedHostCluster(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *EcsDedicatedHostClusterState, opts ...pulumi.ResourceOption) (*EcsDedicatedHostCluster, error)

GetEcsDedicatedHostCluster gets an existing EcsDedicatedHostCluster 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 NewEcsDedicatedHostCluster

func NewEcsDedicatedHostCluster(ctx *pulumi.Context,
	name string, args *EcsDedicatedHostClusterArgs, opts ...pulumi.ResourceOption) (*EcsDedicatedHostCluster, error)

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

func (*EcsDedicatedHostCluster) ElementType

func (*EcsDedicatedHostCluster) ElementType() reflect.Type

func (*EcsDedicatedHostCluster) ToEcsDedicatedHostClusterOutput

func (i *EcsDedicatedHostCluster) ToEcsDedicatedHostClusterOutput() EcsDedicatedHostClusterOutput

func (*EcsDedicatedHostCluster) ToEcsDedicatedHostClusterOutputWithContext

func (i *EcsDedicatedHostCluster) ToEcsDedicatedHostClusterOutputWithContext(ctx context.Context) EcsDedicatedHostClusterOutput

type EcsDedicatedHostClusterArgs

type EcsDedicatedHostClusterArgs struct {
	// The name of the dedicated host cluster. The name must be `2` to `128` characters in length and can contain letters, digits, periods (.), underscores (_), and hyphens (-). It must start with a letter. It cannot contain `http://` or `https://`.
	DedicatedHostClusterName pulumi.StringPtrInput
	// The description of the dedicated host cluster. The description must be `2` to `256` characters in length. It cannot start with `http://` or `https://`.
	Description pulumi.StringPtrInput
	// The dry run.
	DryRun pulumi.BoolPtrInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapInput
	// The ID of the zone in which to create the dedicated host cluster.
	ZoneId pulumi.StringInput
}

The set of arguments for constructing a EcsDedicatedHostCluster resource.

func (EcsDedicatedHostClusterArgs) ElementType

type EcsDedicatedHostClusterArray

type EcsDedicatedHostClusterArray []EcsDedicatedHostClusterInput

func (EcsDedicatedHostClusterArray) ElementType

func (EcsDedicatedHostClusterArray) ToEcsDedicatedHostClusterArrayOutput

func (i EcsDedicatedHostClusterArray) ToEcsDedicatedHostClusterArrayOutput() EcsDedicatedHostClusterArrayOutput

func (EcsDedicatedHostClusterArray) ToEcsDedicatedHostClusterArrayOutputWithContext

func (i EcsDedicatedHostClusterArray) ToEcsDedicatedHostClusterArrayOutputWithContext(ctx context.Context) EcsDedicatedHostClusterArrayOutput

type EcsDedicatedHostClusterArrayInput

type EcsDedicatedHostClusterArrayInput interface {
	pulumi.Input

	ToEcsDedicatedHostClusterArrayOutput() EcsDedicatedHostClusterArrayOutput
	ToEcsDedicatedHostClusterArrayOutputWithContext(context.Context) EcsDedicatedHostClusterArrayOutput
}

EcsDedicatedHostClusterArrayInput is an input type that accepts EcsDedicatedHostClusterArray and EcsDedicatedHostClusterArrayOutput values. You can construct a concrete instance of `EcsDedicatedHostClusterArrayInput` via:

EcsDedicatedHostClusterArray{ EcsDedicatedHostClusterArgs{...} }

type EcsDedicatedHostClusterArrayOutput

type EcsDedicatedHostClusterArrayOutput struct{ *pulumi.OutputState }

func (EcsDedicatedHostClusterArrayOutput) ElementType

func (EcsDedicatedHostClusterArrayOutput) Index

func (EcsDedicatedHostClusterArrayOutput) ToEcsDedicatedHostClusterArrayOutput

func (o EcsDedicatedHostClusterArrayOutput) ToEcsDedicatedHostClusterArrayOutput() EcsDedicatedHostClusterArrayOutput

func (EcsDedicatedHostClusterArrayOutput) ToEcsDedicatedHostClusterArrayOutputWithContext

func (o EcsDedicatedHostClusterArrayOutput) ToEcsDedicatedHostClusterArrayOutputWithContext(ctx context.Context) EcsDedicatedHostClusterArrayOutput

type EcsDedicatedHostClusterInput

type EcsDedicatedHostClusterInput interface {
	pulumi.Input

	ToEcsDedicatedHostClusterOutput() EcsDedicatedHostClusterOutput
	ToEcsDedicatedHostClusterOutputWithContext(ctx context.Context) EcsDedicatedHostClusterOutput
}

type EcsDedicatedHostClusterMap

type EcsDedicatedHostClusterMap map[string]EcsDedicatedHostClusterInput

func (EcsDedicatedHostClusterMap) ElementType

func (EcsDedicatedHostClusterMap) ElementType() reflect.Type

func (EcsDedicatedHostClusterMap) ToEcsDedicatedHostClusterMapOutput

func (i EcsDedicatedHostClusterMap) ToEcsDedicatedHostClusterMapOutput() EcsDedicatedHostClusterMapOutput

func (EcsDedicatedHostClusterMap) ToEcsDedicatedHostClusterMapOutputWithContext

func (i EcsDedicatedHostClusterMap) ToEcsDedicatedHostClusterMapOutputWithContext(ctx context.Context) EcsDedicatedHostClusterMapOutput

type EcsDedicatedHostClusterMapInput

type EcsDedicatedHostClusterMapInput interface {
	pulumi.Input

	ToEcsDedicatedHostClusterMapOutput() EcsDedicatedHostClusterMapOutput
	ToEcsDedicatedHostClusterMapOutputWithContext(context.Context) EcsDedicatedHostClusterMapOutput
}

EcsDedicatedHostClusterMapInput is an input type that accepts EcsDedicatedHostClusterMap and EcsDedicatedHostClusterMapOutput values. You can construct a concrete instance of `EcsDedicatedHostClusterMapInput` via:

EcsDedicatedHostClusterMap{ "key": EcsDedicatedHostClusterArgs{...} }

type EcsDedicatedHostClusterMapOutput

type EcsDedicatedHostClusterMapOutput struct{ *pulumi.OutputState }

func (EcsDedicatedHostClusterMapOutput) ElementType

func (EcsDedicatedHostClusterMapOutput) MapIndex

func (EcsDedicatedHostClusterMapOutput) ToEcsDedicatedHostClusterMapOutput

func (o EcsDedicatedHostClusterMapOutput) ToEcsDedicatedHostClusterMapOutput() EcsDedicatedHostClusterMapOutput

func (EcsDedicatedHostClusterMapOutput) ToEcsDedicatedHostClusterMapOutputWithContext

func (o EcsDedicatedHostClusterMapOutput) ToEcsDedicatedHostClusterMapOutputWithContext(ctx context.Context) EcsDedicatedHostClusterMapOutput

type EcsDedicatedHostClusterOutput

type EcsDedicatedHostClusterOutput struct{ *pulumi.OutputState }

func (EcsDedicatedHostClusterOutput) DedicatedHostClusterName

func (o EcsDedicatedHostClusterOutput) DedicatedHostClusterName() pulumi.StringPtrOutput

The name of the dedicated host cluster. The name must be `2` to `128` characters in length and can contain letters, digits, periods (.), underscores (_), and hyphens (-). It must start with a letter. It cannot contain `http://` or `https://`.

func (EcsDedicatedHostClusterOutput) Description

The description of the dedicated host cluster. The description must be `2` to `256` characters in length. It cannot start with `http://` or `https://`.

func (EcsDedicatedHostClusterOutput) DryRun

The dry run.

func (EcsDedicatedHostClusterOutput) ElementType

func (EcsDedicatedHostClusterOutput) Tags

A mapping of tags to assign to the resource.

func (EcsDedicatedHostClusterOutput) ToEcsDedicatedHostClusterOutput

func (o EcsDedicatedHostClusterOutput) ToEcsDedicatedHostClusterOutput() EcsDedicatedHostClusterOutput

func (EcsDedicatedHostClusterOutput) ToEcsDedicatedHostClusterOutputWithContext

func (o EcsDedicatedHostClusterOutput) ToEcsDedicatedHostClusterOutputWithContext(ctx context.Context) EcsDedicatedHostClusterOutput

func (EcsDedicatedHostClusterOutput) ZoneId

The ID of the zone in which to create the dedicated host cluster.

type EcsDedicatedHostClusterState

type EcsDedicatedHostClusterState struct {
	// The name of the dedicated host cluster. The name must be `2` to `128` characters in length and can contain letters, digits, periods (.), underscores (_), and hyphens (-). It must start with a letter. It cannot contain `http://` or `https://`.
	DedicatedHostClusterName pulumi.StringPtrInput
	// The description of the dedicated host cluster. The description must be `2` to `256` characters in length. It cannot start with `http://` or `https://`.
	Description pulumi.StringPtrInput
	// The dry run.
	DryRun pulumi.BoolPtrInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapInput
	// The ID of the zone in which to create the dedicated host cluster.
	ZoneId pulumi.StringPtrInput
}

func (EcsDedicatedHostClusterState) ElementType

type EcsDeploymentSet

type EcsDeploymentSet struct {
	pulumi.CustomResourceState

	// The name of the deployment set. The name must be 2 to 128 characters in length and can contain letters, digits, colons (:), underscores (_), and hyphens (-). It must start with a letter and cannot start with `http://` or `https://`.
	DeploymentSetName pulumi.StringPtrOutput `pulumi:"deploymentSetName"`
	// The description of the deployment set. The description must be 2 to 256 characters in length and cannot start with `http://` or `https://`.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// The deployment domain. Valid values: `Default`.
	Domain pulumi.StringPtrOutput `pulumi:"domain"`
	// The deployment granularity. Valid values: `Host`.
	Granularity pulumi.StringPtrOutput `pulumi:"granularity"`
	// The on unable to redeploy failed instance. Valid values: `CancelMembershipAndStart`, `KeepStopped`.
	OnUnableToRedeployFailedInstance pulumi.StringPtrOutput `pulumi:"onUnableToRedeployFailedInstance"`
	// The deployment strategy. Valid values: `Availability`.
	Strategy pulumi.StringPtrOutput `pulumi:"strategy"`
}

Provides a ECS Deployment Set resource.

For information about ECS Deployment Set and how to use it, see [What is Deployment Set](https://www.alibabacloud.com/help/en/doc-detail/91269.htm).

> **NOTE:** Available in v1.140.0+.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ecs.NewEcsDeploymentSet(ctx, "default", &ecs.EcsDeploymentSetArgs{
			DeploymentSetName: pulumi.String("example_value"),
			Description:       pulumi.String("example_value"),
			Domain:            pulumi.String("Default"),
			Granularity:       pulumi.String("Host"),
			Strategy:          pulumi.String("Availability"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

ECS Deployment Set can be imported using the id, e.g.

```sh

$ pulumi import alicloud:ecs/ecsDeploymentSet:EcsDeploymentSet example <id>

```

func GetEcsDeploymentSet

func GetEcsDeploymentSet(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *EcsDeploymentSetState, opts ...pulumi.ResourceOption) (*EcsDeploymentSet, error)

GetEcsDeploymentSet gets an existing EcsDeploymentSet 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 NewEcsDeploymentSet

func NewEcsDeploymentSet(ctx *pulumi.Context,
	name string, args *EcsDeploymentSetArgs, opts ...pulumi.ResourceOption) (*EcsDeploymentSet, error)

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

func (*EcsDeploymentSet) ElementType

func (*EcsDeploymentSet) ElementType() reflect.Type

func (*EcsDeploymentSet) ToEcsDeploymentSetOutput

func (i *EcsDeploymentSet) ToEcsDeploymentSetOutput() EcsDeploymentSetOutput

func (*EcsDeploymentSet) ToEcsDeploymentSetOutputWithContext

func (i *EcsDeploymentSet) ToEcsDeploymentSetOutputWithContext(ctx context.Context) EcsDeploymentSetOutput

type EcsDeploymentSetArgs

type EcsDeploymentSetArgs struct {
	// The name of the deployment set. The name must be 2 to 128 characters in length and can contain letters, digits, colons (:), underscores (_), and hyphens (-). It must start with a letter and cannot start with `http://` or `https://`.
	DeploymentSetName pulumi.StringPtrInput
	// The description of the deployment set. The description must be 2 to 256 characters in length and cannot start with `http://` or `https://`.
	Description pulumi.StringPtrInput
	// The deployment domain. Valid values: `Default`.
	Domain pulumi.StringPtrInput
	// The deployment granularity. Valid values: `Host`.
	Granularity pulumi.StringPtrInput
	// The on unable to redeploy failed instance. Valid values: `CancelMembershipAndStart`, `KeepStopped`.
	OnUnableToRedeployFailedInstance pulumi.StringPtrInput
	// The deployment strategy. Valid values: `Availability`.
	Strategy pulumi.StringPtrInput
}

The set of arguments for constructing a EcsDeploymentSet resource.

func (EcsDeploymentSetArgs) ElementType

func (EcsDeploymentSetArgs) ElementType() reflect.Type

type EcsDeploymentSetArray

type EcsDeploymentSetArray []EcsDeploymentSetInput

func (EcsDeploymentSetArray) ElementType

func (EcsDeploymentSetArray) ElementType() reflect.Type

func (EcsDeploymentSetArray) ToEcsDeploymentSetArrayOutput

func (i EcsDeploymentSetArray) ToEcsDeploymentSetArrayOutput() EcsDeploymentSetArrayOutput

func (EcsDeploymentSetArray) ToEcsDeploymentSetArrayOutputWithContext

func (i EcsDeploymentSetArray) ToEcsDeploymentSetArrayOutputWithContext(ctx context.Context) EcsDeploymentSetArrayOutput

type EcsDeploymentSetArrayInput

type EcsDeploymentSetArrayInput interface {
	pulumi.Input

	ToEcsDeploymentSetArrayOutput() EcsDeploymentSetArrayOutput
	ToEcsDeploymentSetArrayOutputWithContext(context.Context) EcsDeploymentSetArrayOutput
}

EcsDeploymentSetArrayInput is an input type that accepts EcsDeploymentSetArray and EcsDeploymentSetArrayOutput values. You can construct a concrete instance of `EcsDeploymentSetArrayInput` via:

EcsDeploymentSetArray{ EcsDeploymentSetArgs{...} }

type EcsDeploymentSetArrayOutput

type EcsDeploymentSetArrayOutput struct{ *pulumi.OutputState }

func (EcsDeploymentSetArrayOutput) ElementType

func (EcsDeploymentSetArrayOutput) Index

func (EcsDeploymentSetArrayOutput) ToEcsDeploymentSetArrayOutput

func (o EcsDeploymentSetArrayOutput) ToEcsDeploymentSetArrayOutput() EcsDeploymentSetArrayOutput

func (EcsDeploymentSetArrayOutput) ToEcsDeploymentSetArrayOutputWithContext

func (o EcsDeploymentSetArrayOutput) ToEcsDeploymentSetArrayOutputWithContext(ctx context.Context) EcsDeploymentSetArrayOutput

type EcsDeploymentSetInput

type EcsDeploymentSetInput interface {
	pulumi.Input

	ToEcsDeploymentSetOutput() EcsDeploymentSetOutput
	ToEcsDeploymentSetOutputWithContext(ctx context.Context) EcsDeploymentSetOutput
}

type EcsDeploymentSetMap

type EcsDeploymentSetMap map[string]EcsDeploymentSetInput

func (EcsDeploymentSetMap) ElementType

func (EcsDeploymentSetMap) ElementType() reflect.Type

func (EcsDeploymentSetMap) ToEcsDeploymentSetMapOutput

func (i EcsDeploymentSetMap) ToEcsDeploymentSetMapOutput() EcsDeploymentSetMapOutput

func (EcsDeploymentSetMap) ToEcsDeploymentSetMapOutputWithContext

func (i EcsDeploymentSetMap) ToEcsDeploymentSetMapOutputWithContext(ctx context.Context) EcsDeploymentSetMapOutput

type EcsDeploymentSetMapInput

type EcsDeploymentSetMapInput interface {
	pulumi.Input

	ToEcsDeploymentSetMapOutput() EcsDeploymentSetMapOutput
	ToEcsDeploymentSetMapOutputWithContext(context.Context) EcsDeploymentSetMapOutput
}

EcsDeploymentSetMapInput is an input type that accepts EcsDeploymentSetMap and EcsDeploymentSetMapOutput values. You can construct a concrete instance of `EcsDeploymentSetMapInput` via:

EcsDeploymentSetMap{ "key": EcsDeploymentSetArgs{...} }

type EcsDeploymentSetMapOutput

type EcsDeploymentSetMapOutput struct{ *pulumi.OutputState }

func (EcsDeploymentSetMapOutput) ElementType

func (EcsDeploymentSetMapOutput) ElementType() reflect.Type

func (EcsDeploymentSetMapOutput) MapIndex

func (EcsDeploymentSetMapOutput) ToEcsDeploymentSetMapOutput

func (o EcsDeploymentSetMapOutput) ToEcsDeploymentSetMapOutput() EcsDeploymentSetMapOutput

func (EcsDeploymentSetMapOutput) ToEcsDeploymentSetMapOutputWithContext

func (o EcsDeploymentSetMapOutput) ToEcsDeploymentSetMapOutputWithContext(ctx context.Context) EcsDeploymentSetMapOutput

type EcsDeploymentSetOutput

type EcsDeploymentSetOutput struct{ *pulumi.OutputState }

func (EcsDeploymentSetOutput) DeploymentSetName

func (o EcsDeploymentSetOutput) DeploymentSetName() pulumi.StringPtrOutput

The name of the deployment set. The name must be 2 to 128 characters in length and can contain letters, digits, colons (:), underscores (_), and hyphens (-). It must start with a letter and cannot start with `http://` or `https://`.

func (EcsDeploymentSetOutput) Description

The description of the deployment set. The description must be 2 to 256 characters in length and cannot start with `http://` or `https://`.

func (EcsDeploymentSetOutput) Domain

The deployment domain. Valid values: `Default`.

func (EcsDeploymentSetOutput) ElementType

func (EcsDeploymentSetOutput) ElementType() reflect.Type

func (EcsDeploymentSetOutput) Granularity

The deployment granularity. Valid values: `Host`.

func (EcsDeploymentSetOutput) OnUnableToRedeployFailedInstance

func (o EcsDeploymentSetOutput) OnUnableToRedeployFailedInstance() pulumi.StringPtrOutput

The on unable to redeploy failed instance. Valid values: `CancelMembershipAndStart`, `KeepStopped`.

func (EcsDeploymentSetOutput) Strategy

The deployment strategy. Valid values: `Availability`.

func (EcsDeploymentSetOutput) ToEcsDeploymentSetOutput

func (o EcsDeploymentSetOutput) ToEcsDeploymentSetOutput() EcsDeploymentSetOutput

func (EcsDeploymentSetOutput) ToEcsDeploymentSetOutputWithContext

func (o EcsDeploymentSetOutput) ToEcsDeploymentSetOutputWithContext(ctx context.Context) EcsDeploymentSetOutput

type EcsDeploymentSetState

type EcsDeploymentSetState struct {
	// The name of the deployment set. The name must be 2 to 128 characters in length and can contain letters, digits, colons (:), underscores (_), and hyphens (-). It must start with a letter and cannot start with `http://` or `https://`.
	DeploymentSetName pulumi.StringPtrInput
	// The description of the deployment set. The description must be 2 to 256 characters in length and cannot start with `http://` or `https://`.
	Description pulumi.StringPtrInput
	// The deployment domain. Valid values: `Default`.
	Domain pulumi.StringPtrInput
	// The deployment granularity. Valid values: `Host`.
	Granularity pulumi.StringPtrInput
	// The on unable to redeploy failed instance. Valid values: `CancelMembershipAndStart`, `KeepStopped`.
	OnUnableToRedeployFailedInstance pulumi.StringPtrInput
	// The deployment strategy. Valid values: `Availability`.
	Strategy pulumi.StringPtrInput
}

func (EcsDeploymentSetState) ElementType

func (EcsDeploymentSetState) ElementType() reflect.Type

type EcsDisk

type EcsDisk struct {
	pulumi.CustomResourceState

	AdvancedFeatures pulumi.StringPtrOutput `pulumi:"advancedFeatures"`
	// Field `availabilityZone` has been deprecated from provider version 1.122.0. New field `zoneId` instead.
	//
	// Deprecated: Field 'availability_zone' has been deprecated from provider version 1.122.0. New field 'zone_id' instead
	AvailabilityZone pulumi.StringOutput `pulumi:"availabilityZone"`
	// Category of the disk. Valid values are `cloud`, `cloudEfficiency`, `cloudSsd`, `cloudEssd`. Default is `cloudEfficiency`.
	Category                       pulumi.StringPtrOutput `pulumi:"category"`
	DedicatedBlockStorageClusterId pulumi.StringPtrOutput `pulumi:"dedicatedBlockStorageClusterId"`
	// Indicates whether the automatic snapshot is deleted when the disk is released. Default value: `false`.
	DeleteAutoSnapshot pulumi.BoolPtrOutput `pulumi:"deleteAutoSnapshot"`
	// Indicates whether the disk is released together with the instance. Default value: `false`.
	DeleteWithInstance pulumi.BoolOutput `pulumi:"deleteWithInstance"`
	// Description of the disk. This description can have a string of 2 to 256 characters, It cannot begin with http:// or https://. Default value is null.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// Name of the ECS disk. This name can have a string of 2 to 128 characters, must contain only alphanumeric characters or hyphens, such as "-",".","_", and must not begin or end with a hyphen, and must not begin with `http://` or `https://`. Default value is `null`.
	DiskName pulumi.StringOutput `pulumi:"diskName"`
	// Specifies whether to check the validity of the request without actually making the request.request Default value: false. Valid values:
	// * `true`: The validity of the request is checked but the request is not made. Check items include the required parameters, request format, service limits, and available ECS resources. If the check fails, the corresponding error message is returned. If the check succeeds, the DryRunOperation error code is returned.
	// * `false`: The validity of the request is checked. If the check succeeds, a 2xx HTTP status code is returned and the request is made.
	DryRun pulumi.BoolPtrOutput `pulumi:"dryRun"`
	// Indicates whether to enable creating snapshot automatically.
	EnableAutoSnapshot pulumi.BoolOutput      `pulumi:"enableAutoSnapshot"`
	EncryptAlgorithm   pulumi.StringPtrOutput `pulumi:"encryptAlgorithm"`
	// If true, the disk will be encrypted, conflict with `snapshotId`.
	Encrypted pulumi.BoolPtrOutput `pulumi:"encrypted"`
	// The ID of the instance to which the created subscription disk is automatically attached.
	// * After you specify the instance ID, the specified `resourceGroupId`, `tags`, and `kmsKeyId` parameters are ignored.
	// * One of the `zoneId` and `instanceId` must be set but can not be set at the same time.
	InstanceId pulumi.StringOutput `pulumi:"instanceId"`
	// The ID of the KMS key corresponding to the data disk, The specified parameter `Encrypted` must be `true` when KmsKeyId is not empty.
	KmsKeyId pulumi.StringPtrOutput `pulumi:"kmsKeyId"`
	// Field `name` has been deprecated from provider version 1.122.0. New field `diskName` instead.
	//
	// Deprecated: Field 'name' has been deprecated from provider version 1.122.0. New field 'disk_name' instead.
	Name pulumi.StringOutput `pulumi:"name"`
	// Payment method for disk. Valid values: `PayAsYouGo`, `Subscription`. Default to `PayAsYouGo`. If you want to change the disk payment type, the `instanceId` is required.
	PaymentType pulumi.StringOutput `pulumi:"paymentType"`
	// Specifies the performance level of an ESSD when you create the ESSD. Valid values:
	// * `PL1`: A single ESSD delivers up to 50,000 random read/write IOPS.
	// * `PL2`: A single ESSD delivers up to 100,000 random read/write IOPS.
	// * `PL3`: A single ESSD delivers up to 1,000,000 random read/write IOPS.
	PerformanceLevel pulumi.StringOutput `pulumi:"performanceLevel"`
	// The Id of resource group which the disk belongs.
	ResourceGroupId pulumi.StringPtrOutput `pulumi:"resourceGroupId"`
	// The size of the disk in GiBs. When resize the disk, the new size must be greater than the former value, or you would get an error `InvalidDiskSize.TooSmall`.
	Size pulumi.IntOutput `pulumi:"size"`
	// A snapshot to base the disk off of. If the disk size required by snapshot is greater than `size`, the `size` will be ignored, conflict with `encrypted`.
	SnapshotId pulumi.StringPtrOutput `pulumi:"snapshotId"`
	// The disk status.
	Status pulumi.StringOutput `pulumi:"status"`
	// The ID of the storage set.
	StorageSetId pulumi.StringPtrOutput `pulumi:"storageSetId"`
	// The number of partitions in the storage set.
	StorageSetPartitionNumber pulumi.IntPtrOutput `pulumi:"storageSetPartitionNumber"`
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapOutput `pulumi:"tags"`
	// The type to expand cloud disks. Valid Values: `online`, `offline`. Default to `offline`.
	// * `offline`: After you resize a disk offline, you must restart the instance by using the console or by calling the RebootInstance operation for the resizing operation to take effect. For more information, see Restart the instance and RebootInstance.
	// * `online`: After you resize a disk online, the resizing operation takes effect immediately and you do not need to restart the instance. You can resize ultra disks, standard SSDs, and ESSDs online.
	Type pulumi.StringPtrOutput `pulumi:"type"`
	// ID of the free zone to which the disk belongs. One of the `zoneId` and `instanceId` must be set but can not be set at the same time.
	ZoneId pulumi.StringOutput `pulumi:"zoneId"`
}

Provides a ECS Disk resource.

For information about ECS Disk and how to use it, see [What is Disk](https://www.alibabacloud.com/help/en/doc-detail/25513.htm).

> **NOTE:** Available in v1.122.0+.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ecs.NewEcsDisk(ctx, "example", &ecs.EcsDiskArgs{
			Category:    pulumi.String("cloud_efficiency"),
			Description: pulumi.String("Hello ecs disk."),
			DiskName:    pulumi.String("tf-test"),
			Encrypted:   pulumi.Bool(true),
			KmsKeyId:    pulumi.String("2a6767f0-a16c-4679-a60f-13bf*****"),
			Size:        pulumi.Int(30),
			Tags: pulumi.AnyMap{
				"Name": pulumi.Any("TerraformTest"),
			},
			ZoneId: pulumi.String("cn-beijing-b"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

ECS Disk can be imported using the id, e.g.

```sh

$ pulumi import alicloud:ecs/ecsDisk:EcsDisk example d-abcd12345

```

func GetEcsDisk

func GetEcsDisk(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *EcsDiskState, opts ...pulumi.ResourceOption) (*EcsDisk, error)

GetEcsDisk gets an existing EcsDisk 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 NewEcsDisk

func NewEcsDisk(ctx *pulumi.Context,
	name string, args *EcsDiskArgs, opts ...pulumi.ResourceOption) (*EcsDisk, error)

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

func (*EcsDisk) ElementType

func (*EcsDisk) ElementType() reflect.Type

func (*EcsDisk) ToEcsDiskOutput

func (i *EcsDisk) ToEcsDiskOutput() EcsDiskOutput

func (*EcsDisk) ToEcsDiskOutputWithContext

func (i *EcsDisk) ToEcsDiskOutputWithContext(ctx context.Context) EcsDiskOutput

type EcsDiskArgs

type EcsDiskArgs struct {
	AdvancedFeatures pulumi.StringPtrInput
	// Field `availabilityZone` has been deprecated from provider version 1.122.0. New field `zoneId` instead.
	//
	// Deprecated: Field 'availability_zone' has been deprecated from provider version 1.122.0. New field 'zone_id' instead
	AvailabilityZone pulumi.StringPtrInput
	// Category of the disk. Valid values are `cloud`, `cloudEfficiency`, `cloudSsd`, `cloudEssd`. Default is `cloudEfficiency`.
	Category                       pulumi.StringPtrInput
	DedicatedBlockStorageClusterId pulumi.StringPtrInput
	// Indicates whether the automatic snapshot is deleted when the disk is released. Default value: `false`.
	DeleteAutoSnapshot pulumi.BoolPtrInput
	// Indicates whether the disk is released together with the instance. Default value: `false`.
	DeleteWithInstance pulumi.BoolPtrInput
	// Description of the disk. This description can have a string of 2 to 256 characters, It cannot begin with http:// or https://. Default value is null.
	Description pulumi.StringPtrInput
	// Name of the ECS disk. This name can have a string of 2 to 128 characters, must contain only alphanumeric characters or hyphens, such as "-",".","_", and must not begin or end with a hyphen, and must not begin with `http://` or `https://`. Default value is `null`.
	DiskName pulumi.StringPtrInput
	// Specifies whether to check the validity of the request without actually making the request.request Default value: false. Valid values:
	// * `true`: The validity of the request is checked but the request is not made. Check items include the required parameters, request format, service limits, and available ECS resources. If the check fails, the corresponding error message is returned. If the check succeeds, the DryRunOperation error code is returned.
	// * `false`: The validity of the request is checked. If the check succeeds, a 2xx HTTP status code is returned and the request is made.
	DryRun pulumi.BoolPtrInput
	// Indicates whether to enable creating snapshot automatically.
	EnableAutoSnapshot pulumi.BoolPtrInput
	EncryptAlgorithm   pulumi.StringPtrInput
	// If true, the disk will be encrypted, conflict with `snapshotId`.
	Encrypted pulumi.BoolPtrInput
	// The ID of the instance to which the created subscription disk is automatically attached.
	// * After you specify the instance ID, the specified `resourceGroupId`, `tags`, and `kmsKeyId` parameters are ignored.
	// * One of the `zoneId` and `instanceId` must be set but can not be set at the same time.
	InstanceId pulumi.StringPtrInput
	// The ID of the KMS key corresponding to the data disk, The specified parameter `Encrypted` must be `true` when KmsKeyId is not empty.
	KmsKeyId pulumi.StringPtrInput
	// Field `name` has been deprecated from provider version 1.122.0. New field `diskName` instead.
	//
	// Deprecated: Field 'name' has been deprecated from provider version 1.122.0. New field 'disk_name' instead.
	Name pulumi.StringPtrInput
	// Payment method for disk. Valid values: `PayAsYouGo`, `Subscription`. Default to `PayAsYouGo`. If you want to change the disk payment type, the `instanceId` is required.
	PaymentType pulumi.StringPtrInput
	// Specifies the performance level of an ESSD when you create the ESSD. Valid values:
	// * `PL1`: A single ESSD delivers up to 50,000 random read/write IOPS.
	// * `PL2`: A single ESSD delivers up to 100,000 random read/write IOPS.
	// * `PL3`: A single ESSD delivers up to 1,000,000 random read/write IOPS.
	PerformanceLevel pulumi.StringPtrInput
	// The Id of resource group which the disk belongs.
	ResourceGroupId pulumi.StringPtrInput
	// The size of the disk in GiBs. When resize the disk, the new size must be greater than the former value, or you would get an error `InvalidDiskSize.TooSmall`.
	Size pulumi.IntPtrInput
	// A snapshot to base the disk off of. If the disk size required by snapshot is greater than `size`, the `size` will be ignored, conflict with `encrypted`.
	SnapshotId pulumi.StringPtrInput
	// The ID of the storage set.
	StorageSetId pulumi.StringPtrInput
	// The number of partitions in the storage set.
	StorageSetPartitionNumber pulumi.IntPtrInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapInput
	// The type to expand cloud disks. Valid Values: `online`, `offline`. Default to `offline`.
	// * `offline`: After you resize a disk offline, you must restart the instance by using the console or by calling the RebootInstance operation for the resizing operation to take effect. For more information, see Restart the instance and RebootInstance.
	// * `online`: After you resize a disk online, the resizing operation takes effect immediately and you do not need to restart the instance. You can resize ultra disks, standard SSDs, and ESSDs online.
	Type pulumi.StringPtrInput
	// ID of the free zone to which the disk belongs. One of the `zoneId` and `instanceId` must be set but can not be set at the same time.
	ZoneId pulumi.StringPtrInput
}

The set of arguments for constructing a EcsDisk resource.

func (EcsDiskArgs) ElementType

func (EcsDiskArgs) ElementType() reflect.Type

type EcsDiskArray

type EcsDiskArray []EcsDiskInput

func (EcsDiskArray) ElementType

func (EcsDiskArray) ElementType() reflect.Type

func (EcsDiskArray) ToEcsDiskArrayOutput

func (i EcsDiskArray) ToEcsDiskArrayOutput() EcsDiskArrayOutput

func (EcsDiskArray) ToEcsDiskArrayOutputWithContext

func (i EcsDiskArray) ToEcsDiskArrayOutputWithContext(ctx context.Context) EcsDiskArrayOutput

type EcsDiskArrayInput

type EcsDiskArrayInput interface {
	pulumi.Input

	ToEcsDiskArrayOutput() EcsDiskArrayOutput
	ToEcsDiskArrayOutputWithContext(context.Context) EcsDiskArrayOutput
}

EcsDiskArrayInput is an input type that accepts EcsDiskArray and EcsDiskArrayOutput values. You can construct a concrete instance of `EcsDiskArrayInput` via:

EcsDiskArray{ EcsDiskArgs{...} }

type EcsDiskArrayOutput

type EcsDiskArrayOutput struct{ *pulumi.OutputState }

func (EcsDiskArrayOutput) ElementType

func (EcsDiskArrayOutput) ElementType() reflect.Type

func (EcsDiskArrayOutput) Index

func (EcsDiskArrayOutput) ToEcsDiskArrayOutput

func (o EcsDiskArrayOutput) ToEcsDiskArrayOutput() EcsDiskArrayOutput

func (EcsDiskArrayOutput) ToEcsDiskArrayOutputWithContext

func (o EcsDiskArrayOutput) ToEcsDiskArrayOutputWithContext(ctx context.Context) EcsDiskArrayOutput

type EcsDiskAttachment

type EcsDiskAttachment struct {
	pulumi.CustomResourceState

	// Whether to mount as a system disk. Default to: `false`.
	Bootable pulumi.BoolPtrOutput `pulumi:"bootable"`
	// Indicates whether the disk is released together with the instance. Default to: `false`.
	DeleteWithInstance pulumi.BoolPtrOutput `pulumi:"deleteWithInstance"`
	Device             pulumi.StringOutput  `pulumi:"device"`
	// ID of the Disk to be attached.
	DiskId pulumi.StringOutput `pulumi:"diskId"`
	// ID of the Instance to attach to.
	InstanceId pulumi.StringOutput `pulumi:"instanceId"`
	// The name of key pair
	KeyPairName pulumi.StringPtrOutput `pulumi:"keyPairName"`
	// When mounting the system disk, setting the user name and password of the instance is only effective for the administrator and root user names, and other user names are not effective.
	Password pulumi.StringPtrOutput `pulumi:"password"`
}

Provides an Alicloud ECS Disk Attachment as a resource, to attach and detach disks from ECS Instances.

For information about ECS Disk Attachment and how to use it, see [What is Disk Attachment](https://www.alibabacloud.com/help/en/doc-detail/25515.htm).

> **NOTE:** Available in v1.122.0+.

## Example Usage

Basic usage

```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		ecsSg, err := ecs.NewSecurityGroup(ctx, "ecsSg", &ecs.SecurityGroupArgs{
			Description: pulumi.String("New security group"),
		})
		if err != nil {
			return err
		}
		ecsDisk, err := ecs.NewEcsDisk(ctx, "ecsDisk", &ecs.EcsDiskArgs{
			AvailabilityZone: pulumi.String("cn-beijing-a"),
			Size:             pulumi.Int(50),
			Tags: pulumi.AnyMap{
				"Name": pulumi.Any("TerraformTest-disk"),
			},
		})
		if err != nil {
			return err
		}
		ecsInstance, err := ecs.NewInstance(ctx, "ecsInstance", &ecs.InstanceArgs{
			ImageId:          pulumi.String("ubuntu_18_04_64_20G_alibase_20190624.vhd"),
			InstanceType:     pulumi.String("ecs.n4.small"),
			AvailabilityZone: pulumi.String("cn-beijing-a"),
			SecurityGroups: pulumi.StringArray{
				ecsSg.ID(),
			},
			InstanceName:       pulumi.String("Hello"),
			InternetChargeType: pulumi.String("PayByBandwidth"),
			Tags: pulumi.StringMap{
				"Name": pulumi.String("TerraformTest-instance"),
			},
		})
		if err != nil {
			return err
		}
		_, err = ecs.NewEcsDiskAttachment(ctx, "ecsDiskAtt", &ecs.EcsDiskAttachmentArgs{
			DiskId:     ecsDisk.ID(),
			InstanceId: ecsInstance.ID(),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

The disk attachment can be imported using the id, e.g.

```sh

$ pulumi import alicloud:ecs/ecsDiskAttachment:EcsDiskAttachment example d-abc12345678:i-abc12355

```

func GetEcsDiskAttachment

func GetEcsDiskAttachment(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *EcsDiskAttachmentState, opts ...pulumi.ResourceOption) (*EcsDiskAttachment, error)

GetEcsDiskAttachment gets an existing EcsDiskAttachment 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 NewEcsDiskAttachment

func NewEcsDiskAttachment(ctx *pulumi.Context,
	name string, args *EcsDiskAttachmentArgs, opts ...pulumi.ResourceOption) (*EcsDiskAttachment, error)

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

func (*EcsDiskAttachment) ElementType

func (*EcsDiskAttachment) ElementType() reflect.Type

func (*EcsDiskAttachment) ToEcsDiskAttachmentOutput

func (i *EcsDiskAttachment) ToEcsDiskAttachmentOutput() EcsDiskAttachmentOutput

func (*EcsDiskAttachment) ToEcsDiskAttachmentOutputWithContext

func (i *EcsDiskAttachment) ToEcsDiskAttachmentOutputWithContext(ctx context.Context) EcsDiskAttachmentOutput

type EcsDiskAttachmentArgs

type EcsDiskAttachmentArgs struct {
	// Whether to mount as a system disk. Default to: `false`.
	Bootable pulumi.BoolPtrInput
	// Indicates whether the disk is released together with the instance. Default to: `false`.
	DeleteWithInstance pulumi.BoolPtrInput
	// ID of the Disk to be attached.
	DiskId pulumi.StringInput
	// ID of the Instance to attach to.
	InstanceId pulumi.StringInput
	// The name of key pair
	KeyPairName pulumi.StringPtrInput
	// When mounting the system disk, setting the user name and password of the instance is only effective for the administrator and root user names, and other user names are not effective.
	Password pulumi.StringPtrInput
}

The set of arguments for constructing a EcsDiskAttachment resource.

func (EcsDiskAttachmentArgs) ElementType

func (EcsDiskAttachmentArgs) ElementType() reflect.Type

type EcsDiskAttachmentArray

type EcsDiskAttachmentArray []EcsDiskAttachmentInput

func (EcsDiskAttachmentArray) ElementType

func (EcsDiskAttachmentArray) ElementType() reflect.Type

func (EcsDiskAttachmentArray) ToEcsDiskAttachmentArrayOutput

func (i EcsDiskAttachmentArray) ToEcsDiskAttachmentArrayOutput() EcsDiskAttachmentArrayOutput

func (EcsDiskAttachmentArray) ToEcsDiskAttachmentArrayOutputWithContext

func (i EcsDiskAttachmentArray) ToEcsDiskAttachmentArrayOutputWithContext(ctx context.Context) EcsDiskAttachmentArrayOutput

type EcsDiskAttachmentArrayInput

type EcsDiskAttachmentArrayInput interface {
	pulumi.Input

	ToEcsDiskAttachmentArrayOutput() EcsDiskAttachmentArrayOutput
	ToEcsDiskAttachmentArrayOutputWithContext(context.Context) EcsDiskAttachmentArrayOutput
}

EcsDiskAttachmentArrayInput is an input type that accepts EcsDiskAttachmentArray and EcsDiskAttachmentArrayOutput values. You can construct a concrete instance of `EcsDiskAttachmentArrayInput` via:

EcsDiskAttachmentArray{ EcsDiskAttachmentArgs{...} }

type EcsDiskAttachmentArrayOutput

type EcsDiskAttachmentArrayOutput struct{ *pulumi.OutputState }

func (EcsDiskAttachmentArrayOutput) ElementType

func (EcsDiskAttachmentArrayOutput) Index

func (EcsDiskAttachmentArrayOutput) ToEcsDiskAttachmentArrayOutput

func (o EcsDiskAttachmentArrayOutput) ToEcsDiskAttachmentArrayOutput() EcsDiskAttachmentArrayOutput

func (EcsDiskAttachmentArrayOutput) ToEcsDiskAttachmentArrayOutputWithContext

func (o EcsDiskAttachmentArrayOutput) ToEcsDiskAttachmentArrayOutputWithContext(ctx context.Context) EcsDiskAttachmentArrayOutput

type EcsDiskAttachmentInput

type EcsDiskAttachmentInput interface {
	pulumi.Input

	ToEcsDiskAttachmentOutput() EcsDiskAttachmentOutput
	ToEcsDiskAttachmentOutputWithContext(ctx context.Context) EcsDiskAttachmentOutput
}

type EcsDiskAttachmentMap

type EcsDiskAttachmentMap map[string]EcsDiskAttachmentInput

func (EcsDiskAttachmentMap) ElementType

func (EcsDiskAttachmentMap) ElementType() reflect.Type

func (EcsDiskAttachmentMap) ToEcsDiskAttachmentMapOutput

func (i EcsDiskAttachmentMap) ToEcsDiskAttachmentMapOutput() EcsDiskAttachmentMapOutput

func (EcsDiskAttachmentMap) ToEcsDiskAttachmentMapOutputWithContext

func (i EcsDiskAttachmentMap) ToEcsDiskAttachmentMapOutputWithContext(ctx context.Context) EcsDiskAttachmentMapOutput

type EcsDiskAttachmentMapInput

type EcsDiskAttachmentMapInput interface {
	pulumi.Input

	ToEcsDiskAttachmentMapOutput() EcsDiskAttachmentMapOutput
	ToEcsDiskAttachmentMapOutputWithContext(context.Context) EcsDiskAttachmentMapOutput
}

EcsDiskAttachmentMapInput is an input type that accepts EcsDiskAttachmentMap and EcsDiskAttachmentMapOutput values. You can construct a concrete instance of `EcsDiskAttachmentMapInput` via:

EcsDiskAttachmentMap{ "key": EcsDiskAttachmentArgs{...} }

type EcsDiskAttachmentMapOutput

type EcsDiskAttachmentMapOutput struct{ *pulumi.OutputState }

func (EcsDiskAttachmentMapOutput) ElementType

func (EcsDiskAttachmentMapOutput) ElementType() reflect.Type

func (EcsDiskAttachmentMapOutput) MapIndex

func (EcsDiskAttachmentMapOutput) ToEcsDiskAttachmentMapOutput

func (o EcsDiskAttachmentMapOutput) ToEcsDiskAttachmentMapOutput() EcsDiskAttachmentMapOutput

func (EcsDiskAttachmentMapOutput) ToEcsDiskAttachmentMapOutputWithContext

func (o EcsDiskAttachmentMapOutput) ToEcsDiskAttachmentMapOutputWithContext(ctx context.Context) EcsDiskAttachmentMapOutput

type EcsDiskAttachmentOutput

type EcsDiskAttachmentOutput struct{ *pulumi.OutputState }

func (EcsDiskAttachmentOutput) Bootable

Whether to mount as a system disk. Default to: `false`.

func (EcsDiskAttachmentOutput) DeleteWithInstance

func (o EcsDiskAttachmentOutput) DeleteWithInstance() pulumi.BoolPtrOutput

Indicates whether the disk is released together with the instance. Default to: `false`.

func (EcsDiskAttachmentOutput) Device

func (EcsDiskAttachmentOutput) DiskId

ID of the Disk to be attached.

func (EcsDiskAttachmentOutput) ElementType

func (EcsDiskAttachmentOutput) ElementType() reflect.Type

func (EcsDiskAttachmentOutput) InstanceId

ID of the Instance to attach to.

func (EcsDiskAttachmentOutput) KeyPairName

The name of key pair

func (EcsDiskAttachmentOutput) Password

When mounting the system disk, setting the user name and password of the instance is only effective for the administrator and root user names, and other user names are not effective.

func (EcsDiskAttachmentOutput) ToEcsDiskAttachmentOutput

func (o EcsDiskAttachmentOutput) ToEcsDiskAttachmentOutput() EcsDiskAttachmentOutput

func (EcsDiskAttachmentOutput) ToEcsDiskAttachmentOutputWithContext

func (o EcsDiskAttachmentOutput) ToEcsDiskAttachmentOutputWithContext(ctx context.Context) EcsDiskAttachmentOutput

type EcsDiskAttachmentState

type EcsDiskAttachmentState struct {
	// Whether to mount as a system disk. Default to: `false`.
	Bootable pulumi.BoolPtrInput
	// Indicates whether the disk is released together with the instance. Default to: `false`.
	DeleteWithInstance pulumi.BoolPtrInput
	Device             pulumi.StringPtrInput
	// ID of the Disk to be attached.
	DiskId pulumi.StringPtrInput
	// ID of the Instance to attach to.
	InstanceId pulumi.StringPtrInput
	// The name of key pair
	KeyPairName pulumi.StringPtrInput
	// When mounting the system disk, setting the user name and password of the instance is only effective for the administrator and root user names, and other user names are not effective.
	Password pulumi.StringPtrInput
}

func (EcsDiskAttachmentState) ElementType

func (EcsDiskAttachmentState) ElementType() reflect.Type

type EcsDiskInput

type EcsDiskInput interface {
	pulumi.Input

	ToEcsDiskOutput() EcsDiskOutput
	ToEcsDiskOutputWithContext(ctx context.Context) EcsDiskOutput
}

type EcsDiskMap

type EcsDiskMap map[string]EcsDiskInput

func (EcsDiskMap) ElementType

func (EcsDiskMap) ElementType() reflect.Type

func (EcsDiskMap) ToEcsDiskMapOutput

func (i EcsDiskMap) ToEcsDiskMapOutput() EcsDiskMapOutput

func (EcsDiskMap) ToEcsDiskMapOutputWithContext

func (i EcsDiskMap) ToEcsDiskMapOutputWithContext(ctx context.Context) EcsDiskMapOutput

type EcsDiskMapInput

type EcsDiskMapInput interface {
	pulumi.Input

	ToEcsDiskMapOutput() EcsDiskMapOutput
	ToEcsDiskMapOutputWithContext(context.Context) EcsDiskMapOutput
}

EcsDiskMapInput is an input type that accepts EcsDiskMap and EcsDiskMapOutput values. You can construct a concrete instance of `EcsDiskMapInput` via:

EcsDiskMap{ "key": EcsDiskArgs{...} }

type EcsDiskMapOutput

type EcsDiskMapOutput struct{ *pulumi.OutputState }

func (EcsDiskMapOutput) ElementType

func (EcsDiskMapOutput) ElementType() reflect.Type

func (EcsDiskMapOutput) MapIndex

func (EcsDiskMapOutput) ToEcsDiskMapOutput

func (o EcsDiskMapOutput) ToEcsDiskMapOutput() EcsDiskMapOutput

func (EcsDiskMapOutput) ToEcsDiskMapOutputWithContext

func (o EcsDiskMapOutput) ToEcsDiskMapOutputWithContext(ctx context.Context) EcsDiskMapOutput

type EcsDiskOutput

type EcsDiskOutput struct{ *pulumi.OutputState }

func (EcsDiskOutput) AdvancedFeatures

func (o EcsDiskOutput) AdvancedFeatures() pulumi.StringPtrOutput

func (EcsDiskOutput) AvailabilityZone deprecated

func (o EcsDiskOutput) AvailabilityZone() pulumi.StringOutput

Field `availabilityZone` has been deprecated from provider version 1.122.0. New field `zoneId` instead.

Deprecated: Field 'availability_zone' has been deprecated from provider version 1.122.0. New field 'zone_id' instead

func (EcsDiskOutput) Category

func (o EcsDiskOutput) Category() pulumi.StringPtrOutput

Category of the disk. Valid values are `cloud`, `cloudEfficiency`, `cloudSsd`, `cloudEssd`. Default is `cloudEfficiency`.

func (EcsDiskOutput) DedicatedBlockStorageClusterId

func (o EcsDiskOutput) DedicatedBlockStorageClusterId() pulumi.StringPtrOutput

func (EcsDiskOutput) DeleteAutoSnapshot

func (o EcsDiskOutput) DeleteAutoSnapshot() pulumi.BoolPtrOutput

Indicates whether the automatic snapshot is deleted when the disk is released. Default value: `false`.

func (EcsDiskOutput) DeleteWithInstance

func (o EcsDiskOutput) DeleteWithInstance() pulumi.BoolOutput

Indicates whether the disk is released together with the instance. Default value: `false`.

func (EcsDiskOutput) Description

func (o EcsDiskOutput) Description() pulumi.StringPtrOutput

Description of the disk. This description can have a string of 2 to 256 characters, It cannot begin with http:// or https://. Default value is null.

func (EcsDiskOutput) DiskName

func (o EcsDiskOutput) DiskName() pulumi.StringOutput

Name of the ECS disk. This name can have a string of 2 to 128 characters, must contain only alphanumeric characters or hyphens, such as "-",".","_", and must not begin or end with a hyphen, and must not begin with `http://` or `https://`. Default value is `null`.

func (EcsDiskOutput) DryRun

func (o EcsDiskOutput) DryRun() pulumi.BoolPtrOutput

Specifies whether to check the validity of the request without actually making the request.request Default value: false. Valid values: * `true`: The validity of the request is checked but the request is not made. Check items include the required parameters, request format, service limits, and available ECS resources. If the check fails, the corresponding error message is returned. If the check succeeds, the DryRunOperation error code is returned. * `false`: The validity of the request is checked. If the check succeeds, a 2xx HTTP status code is returned and the request is made.

func (EcsDiskOutput) ElementType

func (EcsDiskOutput) ElementType() reflect.Type

func (EcsDiskOutput) EnableAutoSnapshot

func (o EcsDiskOutput) EnableAutoSnapshot() pulumi.BoolOutput

Indicates whether to enable creating snapshot automatically.

func (EcsDiskOutput) EncryptAlgorithm

func (o EcsDiskOutput) EncryptAlgorithm() pulumi.StringPtrOutput

func (EcsDiskOutput) Encrypted

func (o EcsDiskOutput) Encrypted() pulumi.BoolPtrOutput

If true, the disk will be encrypted, conflict with `snapshotId`.

func (EcsDiskOutput) InstanceId

func (o EcsDiskOutput) InstanceId() pulumi.StringOutput

The ID of the instance to which the created subscription disk is automatically attached. * After you specify the instance ID, the specified `resourceGroupId`, `tags`, and `kmsKeyId` parameters are ignored. * One of the `zoneId` and `instanceId` must be set but can not be set at the same time.

func (EcsDiskOutput) KmsKeyId

func (o EcsDiskOutput) KmsKeyId() pulumi.StringPtrOutput

The ID of the KMS key corresponding to the data disk, The specified parameter `Encrypted` must be `true` when KmsKeyId is not empty.

func (EcsDiskOutput) Name deprecated

Field `name` has been deprecated from provider version 1.122.0. New field `diskName` instead.

Deprecated: Field 'name' has been deprecated from provider version 1.122.0. New field 'disk_name' instead.

func (EcsDiskOutput) PaymentType

func (o EcsDiskOutput) PaymentType() pulumi.StringOutput

Payment method for disk. Valid values: `PayAsYouGo`, `Subscription`. Default to `PayAsYouGo`. If you want to change the disk payment type, the `instanceId` is required.

func (EcsDiskOutput) PerformanceLevel

func (o EcsDiskOutput) PerformanceLevel() pulumi.StringOutput

Specifies the performance level of an ESSD when you create the ESSD. Valid values: * `PL1`: A single ESSD delivers up to 50,000 random read/write IOPS. * `PL2`: A single ESSD delivers up to 100,000 random read/write IOPS. * `PL3`: A single ESSD delivers up to 1,000,000 random read/write IOPS.

func (EcsDiskOutput) ResourceGroupId

func (o EcsDiskOutput) ResourceGroupId() pulumi.StringPtrOutput

The Id of resource group which the disk belongs.

func (EcsDiskOutput) Size

func (o EcsDiskOutput) Size() pulumi.IntOutput

The size of the disk in GiBs. When resize the disk, the new size must be greater than the former value, or you would get an error `InvalidDiskSize.TooSmall`.

func (EcsDiskOutput) SnapshotId

func (o EcsDiskOutput) SnapshotId() pulumi.StringPtrOutput

A snapshot to base the disk off of. If the disk size required by snapshot is greater than `size`, the `size` will be ignored, conflict with `encrypted`.

func (EcsDiskOutput) Status

func (o EcsDiskOutput) Status() pulumi.StringOutput

The disk status.

func (EcsDiskOutput) StorageSetId

func (o EcsDiskOutput) StorageSetId() pulumi.StringPtrOutput

The ID of the storage set.

func (EcsDiskOutput) StorageSetPartitionNumber

func (o EcsDiskOutput) StorageSetPartitionNumber() pulumi.IntPtrOutput

The number of partitions in the storage set.

func (EcsDiskOutput) Tags

func (o EcsDiskOutput) Tags() pulumi.MapOutput

A mapping of tags to assign to the resource.

func (EcsDiskOutput) ToEcsDiskOutput

func (o EcsDiskOutput) ToEcsDiskOutput() EcsDiskOutput

func (EcsDiskOutput) ToEcsDiskOutputWithContext

func (o EcsDiskOutput) ToEcsDiskOutputWithContext(ctx context.Context) EcsDiskOutput

func (EcsDiskOutput) Type

The type to expand cloud disks. Valid Values: `online`, `offline`. Default to `offline`. * `offline`: After you resize a disk offline, you must restart the instance by using the console or by calling the RebootInstance operation for the resizing operation to take effect. For more information, see Restart the instance and RebootInstance. * `online`: After you resize a disk online, the resizing operation takes effect immediately and you do not need to restart the instance. You can resize ultra disks, standard SSDs, and ESSDs online.

func (EcsDiskOutput) ZoneId

func (o EcsDiskOutput) ZoneId() pulumi.StringOutput

ID of the free zone to which the disk belongs. One of the `zoneId` and `instanceId` must be set but can not be set at the same time.

type EcsDiskState

type EcsDiskState struct {
	AdvancedFeatures pulumi.StringPtrInput
	// Field `availabilityZone` has been deprecated from provider version 1.122.0. New field `zoneId` instead.
	//
	// Deprecated: Field 'availability_zone' has been deprecated from provider version 1.122.0. New field 'zone_id' instead
	AvailabilityZone pulumi.StringPtrInput
	// Category of the disk. Valid values are `cloud`, `cloudEfficiency`, `cloudSsd`, `cloudEssd`. Default is `cloudEfficiency`.
	Category                       pulumi.StringPtrInput
	DedicatedBlockStorageClusterId pulumi.StringPtrInput
	// Indicates whether the automatic snapshot is deleted when the disk is released. Default value: `false`.
	DeleteAutoSnapshot pulumi.BoolPtrInput
	// Indicates whether the disk is released together with the instance. Default value: `false`.
	DeleteWithInstance pulumi.BoolPtrInput
	// Description of the disk. This description can have a string of 2 to 256 characters, It cannot begin with http:// or https://. Default value is null.
	Description pulumi.StringPtrInput
	// Name of the ECS disk. This name can have a string of 2 to 128 characters, must contain only alphanumeric characters or hyphens, such as "-",".","_", and must not begin or end with a hyphen, and must not begin with `http://` or `https://`. Default value is `null`.
	DiskName pulumi.StringPtrInput
	// Specifies whether to check the validity of the request without actually making the request.request Default value: false. Valid values:
	// * `true`: The validity of the request is checked but the request is not made. Check items include the required parameters, request format, service limits, and available ECS resources. If the check fails, the corresponding error message is returned. If the check succeeds, the DryRunOperation error code is returned.
	// * `false`: The validity of the request is checked. If the check succeeds, a 2xx HTTP status code is returned and the request is made.
	DryRun pulumi.BoolPtrInput
	// Indicates whether to enable creating snapshot automatically.
	EnableAutoSnapshot pulumi.BoolPtrInput
	EncryptAlgorithm   pulumi.StringPtrInput
	// If true, the disk will be encrypted, conflict with `snapshotId`.
	Encrypted pulumi.BoolPtrInput
	// The ID of the instance to which the created subscription disk is automatically attached.
	// * After you specify the instance ID, the specified `resourceGroupId`, `tags`, and `kmsKeyId` parameters are ignored.
	// * One of the `zoneId` and `instanceId` must be set but can not be set at the same time.
	InstanceId pulumi.StringPtrInput
	// The ID of the KMS key corresponding to the data disk, The specified parameter `Encrypted` must be `true` when KmsKeyId is not empty.
	KmsKeyId pulumi.StringPtrInput
	// Field `name` has been deprecated from provider version 1.122.0. New field `diskName` instead.
	//
	// Deprecated: Field 'name' has been deprecated from provider version 1.122.0. New field 'disk_name' instead.
	Name pulumi.StringPtrInput
	// Payment method for disk. Valid values: `PayAsYouGo`, `Subscription`. Default to `PayAsYouGo`. If you want to change the disk payment type, the `instanceId` is required.
	PaymentType pulumi.StringPtrInput
	// Specifies the performance level of an ESSD when you create the ESSD. Valid values:
	// * `PL1`: A single ESSD delivers up to 50,000 random read/write IOPS.
	// * `PL2`: A single ESSD delivers up to 100,000 random read/write IOPS.
	// * `PL3`: A single ESSD delivers up to 1,000,000 random read/write IOPS.
	PerformanceLevel pulumi.StringPtrInput
	// The Id of resource group which the disk belongs.
	ResourceGroupId pulumi.StringPtrInput
	// The size of the disk in GiBs. When resize the disk, the new size must be greater than the former value, or you would get an error `InvalidDiskSize.TooSmall`.
	Size pulumi.IntPtrInput
	// A snapshot to base the disk off of. If the disk size required by snapshot is greater than `size`, the `size` will be ignored, conflict with `encrypted`.
	SnapshotId pulumi.StringPtrInput
	// The disk status.
	Status pulumi.StringPtrInput
	// The ID of the storage set.
	StorageSetId pulumi.StringPtrInput
	// The number of partitions in the storage set.
	StorageSetPartitionNumber pulumi.IntPtrInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapInput
	// The type to expand cloud disks. Valid Values: `online`, `offline`. Default to `offline`.
	// * `offline`: After you resize a disk offline, you must restart the instance by using the console or by calling the RebootInstance operation for the resizing operation to take effect. For more information, see Restart the instance and RebootInstance.
	// * `online`: After you resize a disk online, the resizing operation takes effect immediately and you do not need to restart the instance. You can resize ultra disks, standard SSDs, and ESSDs online.
	Type pulumi.StringPtrInput
	// ID of the free zone to which the disk belongs. One of the `zoneId` and `instanceId` must be set but can not be set at the same time.
	ZoneId pulumi.StringPtrInput
}

func (EcsDiskState) ElementType

func (EcsDiskState) ElementType() reflect.Type

type EcsImageComponent

type EcsImageComponent struct {
	pulumi.CustomResourceState

	// The type of the image component. Only image building components are supported. Valid values: `Build`.
	ComponentType pulumi.StringOutput `pulumi:"componentType"`
	// The content of the image component. The content can consist of up to 127 commands.
	Content pulumi.StringOutput `pulumi:"content"`
	// The description of the image component. The description must be `2` to `256` characters in length and cannot start with `http://` or `https://`.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// The name of the image component. The name must be `2` to `128` characters in length. It must start with a letter and cannot start with `http://` or `https://`. It can contain letters, digits, colons (:), underscores (_), periods (.), and hyphens (-).
	ImageComponentName pulumi.StringOutput `pulumi:"imageComponentName"`
	// The ID of the resource group to which to assign the image component.
	ResourceGroupId pulumi.StringPtrOutput `pulumi:"resourceGroupId"`
	// The operating system type supported by the image component. Only Linux is supported. Valid values: `Linux`.
	SystemType pulumi.StringOutput `pulumi:"systemType"`
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapOutput `pulumi:"tags"`
}

Provides a ECS Image Component resource.

For information about ECS Image Component and how to use it, see [What is Image Component](https://www.alibabacloud.com/help/en/doc-detail/200424.htm).

> **NOTE:** Available in v1.159.0+.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/go/alicloud/resourcemanager"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/resourcemanager"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_default, err := resourcemanager.GetResourceGroups(ctx, &resourcemanager.GetResourceGroupsArgs{
			NameRegex: pulumi.StringRef("default"),
		}, nil)
		if err != nil {
			return err
		}
		_, err = ecs.NewEcsImageComponent(ctx, "example", &ecs.EcsImageComponentArgs{
			ComponentType:      pulumi.String("Build"),
			Content:            pulumi.String("RUN yum update -y"),
			Description:        pulumi.String("example_value"),
			ImageComponentName: pulumi.String("example_value"),
			ResourceGroupId:    pulumi.String(_default.Groups[0].Id),
			SystemType:         pulumi.String("Linux"),
			Tags: pulumi.AnyMap{
				"Created": pulumi.Any("TF"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

ECS Image Component can be imported using the id, e.g.

```sh

$ pulumi import alicloud:ecs/ecsImageComponent:EcsImageComponent example <id>

```

func GetEcsImageComponent

func GetEcsImageComponent(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *EcsImageComponentState, opts ...pulumi.ResourceOption) (*EcsImageComponent, error)

GetEcsImageComponent gets an existing EcsImageComponent 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 NewEcsImageComponent

func NewEcsImageComponent(ctx *pulumi.Context,
	name string, args *EcsImageComponentArgs, opts ...pulumi.ResourceOption) (*EcsImageComponent, error)

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

func (*EcsImageComponent) ElementType

func (*EcsImageComponent) ElementType() reflect.Type

func (*EcsImageComponent) ToEcsImageComponentOutput

func (i *EcsImageComponent) ToEcsImageComponentOutput() EcsImageComponentOutput

func (*EcsImageComponent) ToEcsImageComponentOutputWithContext

func (i *EcsImageComponent) ToEcsImageComponentOutputWithContext(ctx context.Context) EcsImageComponentOutput

type EcsImageComponentArgs

type EcsImageComponentArgs struct {
	// The type of the image component. Only image building components are supported. Valid values: `Build`.
	ComponentType pulumi.StringPtrInput
	// The content of the image component. The content can consist of up to 127 commands.
	Content pulumi.StringInput
	// The description of the image component. The description must be `2` to `256` characters in length and cannot start with `http://` or `https://`.
	Description pulumi.StringPtrInput
	// The name of the image component. The name must be `2` to `128` characters in length. It must start with a letter and cannot start with `http://` or `https://`. It can contain letters, digits, colons (:), underscores (_), periods (.), and hyphens (-).
	ImageComponentName pulumi.StringPtrInput
	// The ID of the resource group to which to assign the image component.
	ResourceGroupId pulumi.StringPtrInput
	// The operating system type supported by the image component. Only Linux is supported. Valid values: `Linux`.
	SystemType pulumi.StringPtrInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapInput
}

The set of arguments for constructing a EcsImageComponent resource.

func (EcsImageComponentArgs) ElementType

func (EcsImageComponentArgs) ElementType() reflect.Type

type EcsImageComponentArray

type EcsImageComponentArray []EcsImageComponentInput

func (EcsImageComponentArray) ElementType

func (EcsImageComponentArray) ElementType() reflect.Type

func (EcsImageComponentArray) ToEcsImageComponentArrayOutput

func (i EcsImageComponentArray) ToEcsImageComponentArrayOutput() EcsImageComponentArrayOutput

func (EcsImageComponentArray) ToEcsImageComponentArrayOutputWithContext

func (i EcsImageComponentArray) ToEcsImageComponentArrayOutputWithContext(ctx context.Context) EcsImageComponentArrayOutput

type EcsImageComponentArrayInput

type EcsImageComponentArrayInput interface {
	pulumi.Input

	ToEcsImageComponentArrayOutput() EcsImageComponentArrayOutput
	ToEcsImageComponentArrayOutputWithContext(context.Context) EcsImageComponentArrayOutput
}

EcsImageComponentArrayInput is an input type that accepts EcsImageComponentArray and EcsImageComponentArrayOutput values. You can construct a concrete instance of `EcsImageComponentArrayInput` via:

EcsImageComponentArray{ EcsImageComponentArgs{...} }

type EcsImageComponentArrayOutput

type EcsImageComponentArrayOutput struct{ *pulumi.OutputState }

func (EcsImageComponentArrayOutput) ElementType

func (EcsImageComponentArrayOutput) Index

func (EcsImageComponentArrayOutput) ToEcsImageComponentArrayOutput

func (o EcsImageComponentArrayOutput) ToEcsImageComponentArrayOutput() EcsImageComponentArrayOutput

func (EcsImageComponentArrayOutput) ToEcsImageComponentArrayOutputWithContext

func (o EcsImageComponentArrayOutput) ToEcsImageComponentArrayOutputWithContext(ctx context.Context) EcsImageComponentArrayOutput

type EcsImageComponentInput

type EcsImageComponentInput interface {
	pulumi.Input

	ToEcsImageComponentOutput() EcsImageComponentOutput
	ToEcsImageComponentOutputWithContext(ctx context.Context) EcsImageComponentOutput
}

type EcsImageComponentMap

type EcsImageComponentMap map[string]EcsImageComponentInput

func (EcsImageComponentMap) ElementType

func (EcsImageComponentMap) ElementType() reflect.Type

func (EcsImageComponentMap) ToEcsImageComponentMapOutput

func (i EcsImageComponentMap) ToEcsImageComponentMapOutput() EcsImageComponentMapOutput

func (EcsImageComponentMap) ToEcsImageComponentMapOutputWithContext

func (i EcsImageComponentMap) ToEcsImageComponentMapOutputWithContext(ctx context.Context) EcsImageComponentMapOutput

type EcsImageComponentMapInput

type EcsImageComponentMapInput interface {
	pulumi.Input

	ToEcsImageComponentMapOutput() EcsImageComponentMapOutput
	ToEcsImageComponentMapOutputWithContext(context.Context) EcsImageComponentMapOutput
}

EcsImageComponentMapInput is an input type that accepts EcsImageComponentMap and EcsImageComponentMapOutput values. You can construct a concrete instance of `EcsImageComponentMapInput` via:

EcsImageComponentMap{ "key": EcsImageComponentArgs{...} }

type EcsImageComponentMapOutput

type EcsImageComponentMapOutput struct{ *pulumi.OutputState }

func (EcsImageComponentMapOutput) ElementType

func (EcsImageComponentMapOutput) ElementType() reflect.Type

func (EcsImageComponentMapOutput) MapIndex

func (EcsImageComponentMapOutput) ToEcsImageComponentMapOutput

func (o EcsImageComponentMapOutput) ToEcsImageComponentMapOutput() EcsImageComponentMapOutput

func (EcsImageComponentMapOutput) ToEcsImageComponentMapOutputWithContext

func (o EcsImageComponentMapOutput) ToEcsImageComponentMapOutputWithContext(ctx context.Context) EcsImageComponentMapOutput

type EcsImageComponentOutput

type EcsImageComponentOutput struct{ *pulumi.OutputState }

func (EcsImageComponentOutput) ComponentType

func (o EcsImageComponentOutput) ComponentType() pulumi.StringOutput

The type of the image component. Only image building components are supported. Valid values: `Build`.

func (EcsImageComponentOutput) Content

The content of the image component. The content can consist of up to 127 commands.

func (EcsImageComponentOutput) Description

The description of the image component. The description must be `2` to `256` characters in length and cannot start with `http://` or `https://`.

func (EcsImageComponentOutput) ElementType

func (EcsImageComponentOutput) ElementType() reflect.Type

func (EcsImageComponentOutput) ImageComponentName

func (o EcsImageComponentOutput) ImageComponentName() pulumi.StringOutput

The name of the image component. The name must be `2` to `128` characters in length. It must start with a letter and cannot start with `http://` or `https://`. It can contain letters, digits, colons (:), underscores (_), periods (.), and hyphens (-).

func (EcsImageComponentOutput) ResourceGroupId

func (o EcsImageComponentOutput) ResourceGroupId() pulumi.StringPtrOutput

The ID of the resource group to which to assign the image component.

func (EcsImageComponentOutput) SystemType

The operating system type supported by the image component. Only Linux is supported. Valid values: `Linux`.

func (EcsImageComponentOutput) Tags

A mapping of tags to assign to the resource.

func (EcsImageComponentOutput) ToEcsImageComponentOutput

func (o EcsImageComponentOutput) ToEcsImageComponentOutput() EcsImageComponentOutput

func (EcsImageComponentOutput) ToEcsImageComponentOutputWithContext

func (o EcsImageComponentOutput) ToEcsImageComponentOutputWithContext(ctx context.Context) EcsImageComponentOutput

type EcsImageComponentState

type EcsImageComponentState struct {
	// The type of the image component. Only image building components are supported. Valid values: `Build`.
	ComponentType pulumi.StringPtrInput
	// The content of the image component. The content can consist of up to 127 commands.
	Content pulumi.StringPtrInput
	// The description of the image component. The description must be `2` to `256` characters in length and cannot start with `http://` or `https://`.
	Description pulumi.StringPtrInput
	// The name of the image component. The name must be `2` to `128` characters in length. It must start with a letter and cannot start with `http://` or `https://`. It can contain letters, digits, colons (:), underscores (_), periods (.), and hyphens (-).
	ImageComponentName pulumi.StringPtrInput
	// The ID of the resource group to which to assign the image component.
	ResourceGroupId pulumi.StringPtrInput
	// The operating system type supported by the image component. Only Linux is supported. Valid values: `Linux`.
	SystemType pulumi.StringPtrInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapInput
}

func (EcsImageComponentState) ElementType

func (EcsImageComponentState) ElementType() reflect.Type

type EcsImagePipeline

type EcsImagePipeline struct {
	pulumi.CustomResourceState

	// The ID of Alibaba Cloud account to which to share the created image.
	AddAccounts pulumi.StringArrayOutput `pulumi:"addAccounts"`
	// The source image. When you set `baseImageType` to `IMAGE`, set `baseImage` to the ID of a custom image. When you set `baseImageType` to `IMAGE_FAMILY`, set `baseImage` to the name of an image family.
	BaseImage pulumi.StringOutput `pulumi:"baseImage"`
	// The type of the source image. Valid values: `IMAGE`, `IMAGE_FAMILY`.
	// - IMAGE: custom image.
	// - IMAGE_FAMILY: image family.
	BaseImageType pulumi.StringOutput `pulumi:"baseImageType"`
	// The content of the image template. The content cannot be greater than 16 KB in size, and can contain up to 127 commands.
	BuildContent pulumi.StringPtrOutput `pulumi:"buildContent"`
	// Specifies whether to release the intermediate instance if the image cannot be created.
	DeleteInstanceOnFailure pulumi.BoolOutput `pulumi:"deleteInstanceOnFailure"`
	// The description of the image template. The description must be `2` to `256` characters in length and cannot start with `http://` or `https://`. **Note:** If the intermediate instance cannot be started, the instance is released by default.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// The name prefix of the image to be created. The prefix must be `2` to `64` characters in length. It must start with a letter and cannot start with `http://` or `https://`. It can contain letters, digits, colons (:), underscores (_), periods (.),and hyphens (-).
	ImageName pulumi.StringPtrOutput `pulumi:"imageName"`
	// The instance type of the instance. You can call the DescribeInstanceTypes operation to query instance types. If you do not specify this parameter, an instance type that provides the fewest vCPUs and memory resources is automatically selected. This configuration is subject to resource availability of instance types. For example, the `ecs.g6.large` instance type is selected by default. If available `ecs.g6.large` resources are insufficient, the `ecs.g6.xlarge` instance type is selected.
	InstanceType pulumi.StringPtrOutput `pulumi:"instanceType"`
	// The size of the outbound public bandwidth for the intermediate instance. Unit: `Mbit/s`. Valid values: `0` to `100`. Default value: `0`.
	InternetMaxBandwidthOut pulumi.IntOutput `pulumi:"internetMaxBandwidthOut"`
	// The name of the image template. The name must be `2` to `128` characters in length. It must start with a letter and cannot start with `http://` or `https://`. It can contain letters, digits, colons (:), underscores (_), periods (.),and hyphens (-).
	Name pulumi.StringOutput `pulumi:"name"`
	// The ID of the resource group.
	ResourceGroupId pulumi.StringOutput `pulumi:"resourceGroupId"`
	// The size of the system disk of the intermediate instance. Unit: GiB. Valid values: `20` to `500`. Default value: `40`.
	SystemDiskSize pulumi.IntOutput `pulumi:"systemDiskSize"`
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapOutput `pulumi:"tags"`
	// The ID of region to which to distribute the created image.
	ToRegionIds pulumi.StringArrayOutput `pulumi:"toRegionIds"`
	// The ID of the vSwitch. If you do not specify this parameter, a virtual private cloud (VPC) and a vSwitch are created by default.
	VswitchId pulumi.StringPtrOutput `pulumi:"vswitchId"`
}

Provides a ECS Image Pipeline resource.

For information about ECS Image Pipeline and how to use it, see [What is Image Pipeline](https://www.alibabacloud.com/help/en/doc-detail/200427.html).

> **NOTE:** Available in v1.163.0+.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/go/alicloud"
"github.com/pulumi/pulumi-alicloud/sdk/go/alicloud/ecs"
"github.com/pulumi/pulumi-alicloud/sdk/go/alicloud/resourcemanager"
"github.com/pulumi/pulumi-alicloud/sdk/go/alicloud/vpc"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/resourcemanager"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/vpc"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		defaultResourceGroups, err := resourcemanager.GetResourceGroups(ctx, &resourcemanager.GetResourceGroupsArgs{
			NameRegex: pulumi.StringRef("default"),
		}, nil)
		if err != nil {
			return err
		}
		defaultZones, err := alicloud.GetZones(ctx, nil, nil)
		if err != nil {
			return err
		}
		defaultNetworks, err := vpc.GetNetworks(ctx, &vpc.GetNetworksArgs{
			NameRegex: pulumi.StringRef("default-NODELETING"),
		}, nil)
		if err != nil {
			return err
		}
		defaultSwitches, err := vpc.GetSwitches(ctx, &vpc.GetSwitchesArgs{
			VpcId:  pulumi.StringRef(defaultNetworks.Ids[0]),
			ZoneId: pulumi.StringRef(defaultZones.Zones[0].Id),
		}, nil)
		if err != nil {
			return err
		}
		defaultImages, err := ecs.GetImages(ctx, &ecs.GetImagesArgs{
			NameRegex:  pulumi.StringRef("^ubuntu_[0-9]+_[0-9]+_x64*"),
			MostRecent: pulumi.BoolRef(true),
			Owners:     pulumi.StringRef("system"),
		}, nil)
		if err != nil {
			return err
		}
		defaultInstanceTypes, err := ecs.GetInstanceTypes(ctx, &ecs.GetInstanceTypesArgs{
			ImageId: pulumi.StringRef(defaultImages.Ids[0]),
		}, nil)
		if err != nil {
			return err
		}
		_, err = ecs.NewEcsImagePipeline(ctx, "defaultEcsImagePipeline", &ecs.EcsImagePipelineArgs{
			AddAccounts: pulumi.StringArray{
				pulumi.String("example_value"),
			},
			BaseImage:               pulumi.String(defaultImages.Ids[0]),
			BaseImageType:           pulumi.String("IMAGE"),
			BuildContent:            pulumi.String("RUN yum update -y"),
			DeleteInstanceOnFailure: pulumi.Bool(false),
			ImageName:               pulumi.String("example_value"),
			Description:             pulumi.String("example_value"),
			InstanceType:            pulumi.String(defaultInstanceTypes.Ids[0]),
			ResourceGroupId:         pulumi.String(defaultResourceGroups.Groups[0].Id),
			InternetMaxBandwidthOut: pulumi.Int(20),
			SystemDiskSize:          pulumi.Int(40),
			ToRegionIds: pulumi.StringArray{
				pulumi.String("cn-qingdao"),
				pulumi.String("cn-zhangjiakou"),
			},
			VswitchId: pulumi.String(defaultSwitches.Ids[0]),
			Tags: pulumi.AnyMap{
				"Created": pulumi.Any("TF"),
				"For":     pulumi.Any("Acceptance-test"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

ECS Image Pipeline can be imported using the id, e.g.

```sh

$ pulumi import alicloud:ecs/ecsImagePipeline:EcsImagePipeline example <id>

```

func GetEcsImagePipeline

func GetEcsImagePipeline(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *EcsImagePipelineState, opts ...pulumi.ResourceOption) (*EcsImagePipeline, error)

GetEcsImagePipeline gets an existing EcsImagePipeline 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 NewEcsImagePipeline

func NewEcsImagePipeline(ctx *pulumi.Context,
	name string, args *EcsImagePipelineArgs, opts ...pulumi.ResourceOption) (*EcsImagePipeline, error)

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

func (*EcsImagePipeline) ElementType

func (*EcsImagePipeline) ElementType() reflect.Type

func (*EcsImagePipeline) ToEcsImagePipelineOutput

func (i *EcsImagePipeline) ToEcsImagePipelineOutput() EcsImagePipelineOutput

func (*EcsImagePipeline) ToEcsImagePipelineOutputWithContext

func (i *EcsImagePipeline) ToEcsImagePipelineOutputWithContext(ctx context.Context) EcsImagePipelineOutput

type EcsImagePipelineArgs

type EcsImagePipelineArgs struct {
	// The ID of Alibaba Cloud account to which to share the created image.
	AddAccounts pulumi.StringArrayInput
	// The source image. When you set `baseImageType` to `IMAGE`, set `baseImage` to the ID of a custom image. When you set `baseImageType` to `IMAGE_FAMILY`, set `baseImage` to the name of an image family.
	BaseImage pulumi.StringInput
	// The type of the source image. Valid values: `IMAGE`, `IMAGE_FAMILY`.
	// - IMAGE: custom image.
	// - IMAGE_FAMILY: image family.
	BaseImageType pulumi.StringInput
	// The content of the image template. The content cannot be greater than 16 KB in size, and can contain up to 127 commands.
	BuildContent pulumi.StringPtrInput
	// Specifies whether to release the intermediate instance if the image cannot be created.
	DeleteInstanceOnFailure pulumi.BoolPtrInput
	// The description of the image template. The description must be `2` to `256` characters in length and cannot start with `http://` or `https://`. **Note:** If the intermediate instance cannot be started, the instance is released by default.
	Description pulumi.StringPtrInput
	// The name prefix of the image to be created. The prefix must be `2` to `64` characters in length. It must start with a letter and cannot start with `http://` or `https://`. It can contain letters, digits, colons (:), underscores (_), periods (.),and hyphens (-).
	ImageName pulumi.StringPtrInput
	// The instance type of the instance. You can call the DescribeInstanceTypes operation to query instance types. If you do not specify this parameter, an instance type that provides the fewest vCPUs and memory resources is automatically selected. This configuration is subject to resource availability of instance types. For example, the `ecs.g6.large` instance type is selected by default. If available `ecs.g6.large` resources are insufficient, the `ecs.g6.xlarge` instance type is selected.
	InstanceType pulumi.StringPtrInput
	// The size of the outbound public bandwidth for the intermediate instance. Unit: `Mbit/s`. Valid values: `0` to `100`. Default value: `0`.
	InternetMaxBandwidthOut pulumi.IntPtrInput
	// The name of the image template. The name must be `2` to `128` characters in length. It must start with a letter and cannot start with `http://` or `https://`. It can contain letters, digits, colons (:), underscores (_), periods (.),and hyphens (-).
	Name pulumi.StringPtrInput
	// The ID of the resource group.
	ResourceGroupId pulumi.StringPtrInput
	// The size of the system disk of the intermediate instance. Unit: GiB. Valid values: `20` to `500`. Default value: `40`.
	SystemDiskSize pulumi.IntPtrInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapInput
	// The ID of region to which to distribute the created image.
	ToRegionIds pulumi.StringArrayInput
	// The ID of the vSwitch. If you do not specify this parameter, a virtual private cloud (VPC) and a vSwitch are created by default.
	VswitchId pulumi.StringPtrInput
}

The set of arguments for constructing a EcsImagePipeline resource.

func (EcsImagePipelineArgs) ElementType

func (EcsImagePipelineArgs) ElementType() reflect.Type

type EcsImagePipelineArray

type EcsImagePipelineArray []EcsImagePipelineInput

func (EcsImagePipelineArray) ElementType

func (EcsImagePipelineArray) ElementType() reflect.Type

func (EcsImagePipelineArray) ToEcsImagePipelineArrayOutput

func (i EcsImagePipelineArray) ToEcsImagePipelineArrayOutput() EcsImagePipelineArrayOutput

func (EcsImagePipelineArray) ToEcsImagePipelineArrayOutputWithContext

func (i EcsImagePipelineArray) ToEcsImagePipelineArrayOutputWithContext(ctx context.Context) EcsImagePipelineArrayOutput

type EcsImagePipelineArrayInput

type EcsImagePipelineArrayInput interface {
	pulumi.Input

	ToEcsImagePipelineArrayOutput() EcsImagePipelineArrayOutput
	ToEcsImagePipelineArrayOutputWithContext(context.Context) EcsImagePipelineArrayOutput
}

EcsImagePipelineArrayInput is an input type that accepts EcsImagePipelineArray and EcsImagePipelineArrayOutput values. You can construct a concrete instance of `EcsImagePipelineArrayInput` via:

EcsImagePipelineArray{ EcsImagePipelineArgs{...} }

type EcsImagePipelineArrayOutput

type EcsImagePipelineArrayOutput struct{ *pulumi.OutputState }

func (EcsImagePipelineArrayOutput) ElementType

func (EcsImagePipelineArrayOutput) Index

func (EcsImagePipelineArrayOutput) ToEcsImagePipelineArrayOutput

func (o EcsImagePipelineArrayOutput) ToEcsImagePipelineArrayOutput() EcsImagePipelineArrayOutput

func (EcsImagePipelineArrayOutput) ToEcsImagePipelineArrayOutputWithContext

func (o EcsImagePipelineArrayOutput) ToEcsImagePipelineArrayOutputWithContext(ctx context.Context) EcsImagePipelineArrayOutput

type EcsImagePipelineInput

type EcsImagePipelineInput interface {
	pulumi.Input

	ToEcsImagePipelineOutput() EcsImagePipelineOutput
	ToEcsImagePipelineOutputWithContext(ctx context.Context) EcsImagePipelineOutput
}

type EcsImagePipelineMap

type EcsImagePipelineMap map[string]EcsImagePipelineInput

func (EcsImagePipelineMap) ElementType

func (EcsImagePipelineMap) ElementType() reflect.Type

func (EcsImagePipelineMap) ToEcsImagePipelineMapOutput

func (i EcsImagePipelineMap) ToEcsImagePipelineMapOutput() EcsImagePipelineMapOutput

func (EcsImagePipelineMap) ToEcsImagePipelineMapOutputWithContext

func (i EcsImagePipelineMap) ToEcsImagePipelineMapOutputWithContext(ctx context.Context) EcsImagePipelineMapOutput

type EcsImagePipelineMapInput

type EcsImagePipelineMapInput interface {
	pulumi.Input

	ToEcsImagePipelineMapOutput() EcsImagePipelineMapOutput
	ToEcsImagePipelineMapOutputWithContext(context.Context) EcsImagePipelineMapOutput
}

EcsImagePipelineMapInput is an input type that accepts EcsImagePipelineMap and EcsImagePipelineMapOutput values. You can construct a concrete instance of `EcsImagePipelineMapInput` via:

EcsImagePipelineMap{ "key": EcsImagePipelineArgs{...} }

type EcsImagePipelineMapOutput

type EcsImagePipelineMapOutput struct{ *pulumi.OutputState }

func (EcsImagePipelineMapOutput) ElementType

func (EcsImagePipelineMapOutput) ElementType() reflect.Type

func (EcsImagePipelineMapOutput) MapIndex

func (EcsImagePipelineMapOutput) ToEcsImagePipelineMapOutput

func (o EcsImagePipelineMapOutput) ToEcsImagePipelineMapOutput() EcsImagePipelineMapOutput

func (EcsImagePipelineMapOutput) ToEcsImagePipelineMapOutputWithContext

func (o EcsImagePipelineMapOutput) ToEcsImagePipelineMapOutputWithContext(ctx context.Context) EcsImagePipelineMapOutput

type EcsImagePipelineOutput

type EcsImagePipelineOutput struct{ *pulumi.OutputState }

func (EcsImagePipelineOutput) AddAccounts

The ID of Alibaba Cloud account to which to share the created image.

func (EcsImagePipelineOutput) BaseImage

The source image. When you set `baseImageType` to `IMAGE`, set `baseImage` to the ID of a custom image. When you set `baseImageType` to `IMAGE_FAMILY`, set `baseImage` to the name of an image family.

func (EcsImagePipelineOutput) BaseImageType

func (o EcsImagePipelineOutput) BaseImageType() pulumi.StringOutput

The type of the source image. Valid values: `IMAGE`, `IMAGE_FAMILY`. - IMAGE: custom image. - IMAGE_FAMILY: image family.

func (EcsImagePipelineOutput) BuildContent

The content of the image template. The content cannot be greater than 16 KB in size, and can contain up to 127 commands.

func (EcsImagePipelineOutput) DeleteInstanceOnFailure

func (o EcsImagePipelineOutput) DeleteInstanceOnFailure() pulumi.BoolOutput

Specifies whether to release the intermediate instance if the image cannot be created.

func (EcsImagePipelineOutput) Description

The description of the image template. The description must be `2` to `256` characters in length and cannot start with `http://` or `https://`. **Note:** If the intermediate instance cannot be started, the instance is released by default.

func (EcsImagePipelineOutput) ElementType

func (EcsImagePipelineOutput) ElementType() reflect.Type

func (EcsImagePipelineOutput) ImageName

The name prefix of the image to be created. The prefix must be `2` to `64` characters in length. It must start with a letter and cannot start with `http://` or `https://`. It can contain letters, digits, colons (:), underscores (_), periods (.),and hyphens (-).

func (EcsImagePipelineOutput) InstanceType

The instance type of the instance. You can call the DescribeInstanceTypes operation to query instance types. If you do not specify this parameter, an instance type that provides the fewest vCPUs and memory resources is automatically selected. This configuration is subject to resource availability of instance types. For example, the `ecs.g6.large` instance type is selected by default. If available `ecs.g6.large` resources are insufficient, the `ecs.g6.xlarge` instance type is selected.

func (EcsImagePipelineOutput) InternetMaxBandwidthOut

func (o EcsImagePipelineOutput) InternetMaxBandwidthOut() pulumi.IntOutput

The size of the outbound public bandwidth for the intermediate instance. Unit: `Mbit/s`. Valid values: `0` to `100`. Default value: `0`.

func (EcsImagePipelineOutput) Name

The name of the image template. The name must be `2` to `128` characters in length. It must start with a letter and cannot start with `http://` or `https://`. It can contain letters, digits, colons (:), underscores (_), periods (.),and hyphens (-).

func (EcsImagePipelineOutput) ResourceGroupId

func (o EcsImagePipelineOutput) ResourceGroupId() pulumi.StringOutput

The ID of the resource group.

func (EcsImagePipelineOutput) SystemDiskSize

func (o EcsImagePipelineOutput) SystemDiskSize() pulumi.IntOutput

The size of the system disk of the intermediate instance. Unit: GiB. Valid values: `20` to `500`. Default value: `40`.

func (EcsImagePipelineOutput) Tags

A mapping of tags to assign to the resource.

func (EcsImagePipelineOutput) ToEcsImagePipelineOutput

func (o EcsImagePipelineOutput) ToEcsImagePipelineOutput() EcsImagePipelineOutput

func (EcsImagePipelineOutput) ToEcsImagePipelineOutputWithContext

func (o EcsImagePipelineOutput) ToEcsImagePipelineOutputWithContext(ctx context.Context) EcsImagePipelineOutput

func (EcsImagePipelineOutput) ToRegionIds

The ID of region to which to distribute the created image.

func (EcsImagePipelineOutput) VswitchId

The ID of the vSwitch. If you do not specify this parameter, a virtual private cloud (VPC) and a vSwitch are created by default.

type EcsImagePipelineState

type EcsImagePipelineState struct {
	// The ID of Alibaba Cloud account to which to share the created image.
	AddAccounts pulumi.StringArrayInput
	// The source image. When you set `baseImageType` to `IMAGE`, set `baseImage` to the ID of a custom image. When you set `baseImageType` to `IMAGE_FAMILY`, set `baseImage` to the name of an image family.
	BaseImage pulumi.StringPtrInput
	// The type of the source image. Valid values: `IMAGE`, `IMAGE_FAMILY`.
	// - IMAGE: custom image.
	// - IMAGE_FAMILY: image family.
	BaseImageType pulumi.StringPtrInput
	// The content of the image template. The content cannot be greater than 16 KB in size, and can contain up to 127 commands.
	BuildContent pulumi.StringPtrInput
	// Specifies whether to release the intermediate instance if the image cannot be created.
	DeleteInstanceOnFailure pulumi.BoolPtrInput
	// The description of the image template. The description must be `2` to `256` characters in length and cannot start with `http://` or `https://`. **Note:** If the intermediate instance cannot be started, the instance is released by default.
	Description pulumi.StringPtrInput
	// The name prefix of the image to be created. The prefix must be `2` to `64` characters in length. It must start with a letter and cannot start with `http://` or `https://`. It can contain letters, digits, colons (:), underscores (_), periods (.),and hyphens (-).
	ImageName pulumi.StringPtrInput
	// The instance type of the instance. You can call the DescribeInstanceTypes operation to query instance types. If you do not specify this parameter, an instance type that provides the fewest vCPUs and memory resources is automatically selected. This configuration is subject to resource availability of instance types. For example, the `ecs.g6.large` instance type is selected by default. If available `ecs.g6.large` resources are insufficient, the `ecs.g6.xlarge` instance type is selected.
	InstanceType pulumi.StringPtrInput
	// The size of the outbound public bandwidth for the intermediate instance. Unit: `Mbit/s`. Valid values: `0` to `100`. Default value: `0`.
	InternetMaxBandwidthOut pulumi.IntPtrInput
	// The name of the image template. The name must be `2` to `128` characters in length. It must start with a letter and cannot start with `http://` or `https://`. It can contain letters, digits, colons (:), underscores (_), periods (.),and hyphens (-).
	Name pulumi.StringPtrInput
	// The ID of the resource group.
	ResourceGroupId pulumi.StringPtrInput
	// The size of the system disk of the intermediate instance. Unit: GiB. Valid values: `20` to `500`. Default value: `40`.
	SystemDiskSize pulumi.IntPtrInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapInput
	// The ID of region to which to distribute the created image.
	ToRegionIds pulumi.StringArrayInput
	// The ID of the vSwitch. If you do not specify this parameter, a virtual private cloud (VPC) and a vSwitch are created by default.
	VswitchId pulumi.StringPtrInput
}

func (EcsImagePipelineState) ElementType

func (EcsImagePipelineState) ElementType() reflect.Type

type EcsInstanceSet

type EcsInstanceSet struct {
	pulumi.CustomResourceState

	// The number of instances that you want to create. Valid values: `1` to `100`.
	Amount pulumi.IntPtrOutput `pulumi:"amount"`
	// The automatic release time of the `PostPaid` instance.
	AutoReleaseTime pulumi.StringPtrOutput `pulumi:"autoReleaseTime"`
	// Whether to enable auto-renewal for the instance. This parameter is valid only when the `instanceChargeType` is set to `PrePaid`.
	AutoRenew pulumi.BoolPtrOutput `pulumi:"autoRenew"`
	// Auto renewal period of an instance, in the unit of month. It is valid when `instanceChargeType` is `PrePaid`.
	// - When `periodUnit` is `Month`, Valid values: `1`, `2`, `3`, `6`, `12`.
	// - When `periodUnit` is `Week`, Valid values: `1`, `2`, `3`.
	AutoRenewPeriod pulumi.IntPtrOutput `pulumi:"autoRenewPeriod"`
	// Indicate how to check instance ready to use.
	// - `false`: Default value. Means that the instances are ready when their DescribeInstances status is Running, at which time guestOS(Ecs os) may not be ready yet.
	// - `true`: Checking instance ready with Ecs assistant, which means guestOs boots successfully. Premise is that the specified image `imageId` has built-in Ecs assistant. Most of the public images have assistant installed already.
	BootCheckOsWithAssistant pulumi.BoolPtrOutput `pulumi:"bootCheckOsWithAssistant"`
	// The list of data disks created with instance. See the following `Block dataDisks`.
	DataDisks EcsInstanceSetDataDiskArrayOutput `pulumi:"dataDisks"`
	// The ID of the dedicated host on which to create the instance. If the `dedicatedHostId` is specified, the `spotStrategy` and `spotPriceLimit`  are ignored. This is because preemptible instances cannot be created on dedicated hosts.
	DedicatedHostId pulumi.StringPtrOutput `pulumi:"dedicatedHostId"`
	// Whether to enable release protection for the instance.
	DeletionProtection pulumi.BoolOutput `pulumi:"deletionProtection"`
	// The ID of the deployment set to which to deploy the instance.
	DeploymentSetId pulumi.StringPtrOutput `pulumi:"deploymentSetId"`
	// The description of the instance, This description can have a string of 2 to 256 characters, It cannot begin with `http://` or `https://`.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// The instances that need to be excluded from the Instance Set. See the following `Block excludeInstanceFilter`.
	ExcludeInstanceFilter EcsInstanceSetExcludeInstanceFilterPtrOutput `pulumi:"excludeInstanceFilter"`
	// The hostname of instance.
	HostName pulumi.StringOutput `pulumi:"hostName"`
	// The ID of the Elastic High Performance Computing (E-HPC) cluster to which to assign the instance.
	HpcClusterId pulumi.StringPtrOutput `pulumi:"hpcClusterId"`
	// The Image to use for the instance.
	ImageId pulumi.StringOutput `pulumi:"imageId"`
	// The billing method of the instance. Valid values: `PrePaid`, `PostPaid`.
	InstanceChargeType pulumi.StringPtrOutput `pulumi:"instanceChargeType"`
	// A list of ECS Instance ID.
	InstanceIds pulumi.StringArrayOutput `pulumi:"instanceIds"`
	// The name of the ECS. This instanceName can have a string of 2 to 128 characters, must contain only alphanumeric characters or hyphens, such as "-",".","_", and must not begin with a hyphen, and must not begin with `http://` or `https://`.
	InstanceName pulumi.StringPtrOutput `pulumi:"instanceName"`
	// The type of instance to start.
	InstanceType pulumi.StringOutput `pulumi:"instanceType"`
	// The Internet charge type of the instance. Valid values are `PayByBandwidth`, `PayByTraffic`.
	InternetChargeType pulumi.StringOutput `pulumi:"internetChargeType"`
	// The Maximum outgoing bandwidth to the public network, measured in Mbps (Mega bit per second). Valid values: `1` to `100`.
	InternetMaxBandwidthOut pulumi.IntOutput `pulumi:"internetMaxBandwidthOut"`
	// The name of key pair that can login ECS instance successfully without password.
	KeyPairName pulumi.StringPtrOutput `pulumi:"keyPairName"`
	// The ID of the launch template.
	LaunchTemplateId pulumi.StringPtrOutput `pulumi:"launchTemplateId"`
	// The name of the launch template. To use a launch template to create an instance, you must use the `launchTemplateId` or `launchTemplateName` parameter to specify the launch template.
	LaunchTemplateName pulumi.StringPtrOutput `pulumi:"launchTemplateName"`
	// The version of the launch template.
	LaunchTemplateVersion pulumi.StringPtrOutput `pulumi:"launchTemplateVersion"`
	// A list of NetworkInterface. See the following `Block networkInterfaces`.
	NetworkInterfaces EcsInstanceSetNetworkInterfaceArrayOutput `pulumi:"networkInterfaces"`
	// The password to an instance is a string of 8 to 30 characters. It must contain uppercase/lowercase letters and numerals, but cannot contain special symbols.
	Password pulumi.StringPtrOutput `pulumi:"password"`
	// Whether to use the password preset in the image.
	PasswordInherit pulumi.BoolPtrOutput `pulumi:"passwordInherit"`
	// The duration that you will buy the resource, in month. It is valid when `instanceChargeType` is `PrePaid`.
	// - When `periodUnit` is `Month`, Valid values: `1`, `2`, `3`, `4`, `5`, `6`, `7`, `8`, `9`, `12`, `24`, `36`, `48`, `60`.
	// - When `periodUnit` is `Week`, Valid values: `1`, `2`, `3`.
	Period pulumi.IntPtrOutput `pulumi:"period"`
	// The duration unit that you will buy the resource. It is valid when `instanceChargeType` is 'PrePaid'. Valid value: `Week`, `Month`.
	PeriodUnit pulumi.StringPtrOutput `pulumi:"periodUnit"`
	// The Instance RAM role name.
	RamRoleName pulumi.StringPtrOutput `pulumi:"ramRoleName"`
	// The ID of resource group which the instance belongs.
	ResourceGroupId pulumi.StringPtrOutput `pulumi:"resourceGroupId"`
	// The security enhancement strategy.
	// - `Active`: Enable security enhancement strategy, it only works on system images.
	// - `Deactive`: Disable security enhancement strategy, it works on all images.
	SecurityEnhancementStrategy pulumi.StringPtrOutput `pulumi:"securityEnhancementStrategy"`
	// A list of security group ids to associate with.
	SecurityGroupIds pulumi.StringArrayOutput `pulumi:"securityGroupIds"`
	// The hourly price threshold of a instance, and it takes effect only when parameter 'spot_strategy' is 'SpotWithPriceLimit'. Three decimals is allowed at most.
	SpotPriceLimit pulumi.Float64Output `pulumi:"spotPriceLimit"`
	// The spot strategy of a Pay-As-You-Go instance, and it takes effect only when parameter `instanceChargeType` is 'PostPaid'.
	// - `NoSpot`: A regular Pay-As-You-Go instance.
	// - `SpotWithPriceLimit`: A price threshold for a spot instance.
	// - `SpotAsPriceGo`: A price that is based on the highest Pay-As-You-Go instance
	SpotStrategy pulumi.StringOutput `pulumi:"spotStrategy"`
	// The ID of the automatic snapshot policy applied to the system disk.
	SystemDiskAutoSnapshotPolicyId pulumi.StringPtrOutput `pulumi:"systemDiskAutoSnapshotPolicyId"`
	// The category of the system disk. Valid values are `cloudEfficiency`, `cloudSsd`, `cloudEssd`, `cloud`.
	SystemDiskCategory pulumi.StringOutput `pulumi:"systemDiskCategory"`
	// The description of the system disk. The description must be 2 to 256 characters in length and cannot start with `http://` or `https://`.
	SystemDiskDescription pulumi.StringPtrOutput `pulumi:"systemDiskDescription"`
	// The name of the system disk.
	SystemDiskName pulumi.StringPtrOutput `pulumi:"systemDiskName"`
	// The performance level of the ESSD used as the system disk. Valid values: `PL0`, `PL1`, `PL2`, `PL3`.
	SystemDiskPerformanceLevel pulumi.StringOutput `pulumi:"systemDiskPerformanceLevel"`
	// The size of the system disk, measured in GiB. Value range:  values: `20` to `500`.
	SystemDiskSize pulumi.IntOutput `pulumi:"systemDiskSize"`
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// Whether to automatically append incremental suffixes to the hostname specified by the HostName parameter and to the instance name specified by the InstanceName parameter when you batch create instances. The incremental suffixes can range from `001` to `999`.
	UniqueSuffix pulumi.BoolPtrOutput `pulumi:"uniqueSuffix"`
	// The virtual switch ID to launch in VPC.
	VswitchId pulumi.StringPtrOutput `pulumi:"vswitchId"`
	// The ID of the zone in which to create the instance.
	ZoneId pulumi.StringOutput `pulumi:"zoneId"`
}

Provides a ECS Instance Set resource.

For information about ECS Instance Set and how to use it, see [What is Instance Set](https://www.alibabacloud.com/help/en/elastic-compute-service/latest/runinstances).

> **NOTE:** Available in v1.173.0+.

> **NOTE:** This resource is used to batch create a group of instance resources with the same configuration. However, this resource is not recommended. `ecs.Instance` is preferred.

> **NOTE:** In the instances managed by this resource, names are automatically generated based on `instanceName` and `uniqueSuffix`.

> **NOTE:** Only `tags` support batch modification.

func GetEcsInstanceSet

func GetEcsInstanceSet(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *EcsInstanceSetState, opts ...pulumi.ResourceOption) (*EcsInstanceSet, error)

GetEcsInstanceSet gets an existing EcsInstanceSet 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 NewEcsInstanceSet

func NewEcsInstanceSet(ctx *pulumi.Context,
	name string, args *EcsInstanceSetArgs, opts ...pulumi.ResourceOption) (*EcsInstanceSet, error)

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

func (*EcsInstanceSet) ElementType

func (*EcsInstanceSet) ElementType() reflect.Type

func (*EcsInstanceSet) ToEcsInstanceSetOutput

func (i *EcsInstanceSet) ToEcsInstanceSetOutput() EcsInstanceSetOutput

func (*EcsInstanceSet) ToEcsInstanceSetOutputWithContext

func (i *EcsInstanceSet) ToEcsInstanceSetOutputWithContext(ctx context.Context) EcsInstanceSetOutput

type EcsInstanceSetArgs

type EcsInstanceSetArgs struct {
	// The number of instances that you want to create. Valid values: `1` to `100`.
	Amount pulumi.IntPtrInput
	// The automatic release time of the `PostPaid` instance.
	AutoReleaseTime pulumi.StringPtrInput
	// Whether to enable auto-renewal for the instance. This parameter is valid only when the `instanceChargeType` is set to `PrePaid`.
	AutoRenew pulumi.BoolPtrInput
	// Auto renewal period of an instance, in the unit of month. It is valid when `instanceChargeType` is `PrePaid`.
	// - When `periodUnit` is `Month`, Valid values: `1`, `2`, `3`, `6`, `12`.
	// - When `periodUnit` is `Week`, Valid values: `1`, `2`, `3`.
	AutoRenewPeriod pulumi.IntPtrInput
	// Indicate how to check instance ready to use.
	// - `false`: Default value. Means that the instances are ready when their DescribeInstances status is Running, at which time guestOS(Ecs os) may not be ready yet.
	// - `true`: Checking instance ready with Ecs assistant, which means guestOs boots successfully. Premise is that the specified image `imageId` has built-in Ecs assistant. Most of the public images have assistant installed already.
	BootCheckOsWithAssistant pulumi.BoolPtrInput
	// The list of data disks created with instance. See the following `Block dataDisks`.
	DataDisks EcsInstanceSetDataDiskArrayInput
	// The ID of the dedicated host on which to create the instance. If the `dedicatedHostId` is specified, the `spotStrategy` and `spotPriceLimit`  are ignored. This is because preemptible instances cannot be created on dedicated hosts.
	DedicatedHostId pulumi.StringPtrInput
	// Whether to enable release protection for the instance.
	DeletionProtection pulumi.BoolPtrInput
	// The ID of the deployment set to which to deploy the instance.
	DeploymentSetId pulumi.StringPtrInput
	// The description of the instance, This description can have a string of 2 to 256 characters, It cannot begin with `http://` or `https://`.
	Description pulumi.StringPtrInput
	// The instances that need to be excluded from the Instance Set. See the following `Block excludeInstanceFilter`.
	ExcludeInstanceFilter EcsInstanceSetExcludeInstanceFilterPtrInput
	// The hostname of instance.
	HostName pulumi.StringPtrInput
	// The ID of the Elastic High Performance Computing (E-HPC) cluster to which to assign the instance.
	HpcClusterId pulumi.StringPtrInput
	// The Image to use for the instance.
	ImageId pulumi.StringInput
	// The billing method of the instance. Valid values: `PrePaid`, `PostPaid`.
	InstanceChargeType pulumi.StringPtrInput
	// The name of the ECS. This instanceName can have a string of 2 to 128 characters, must contain only alphanumeric characters or hyphens, such as "-",".","_", and must not begin with a hyphen, and must not begin with `http://` or `https://`.
	InstanceName pulumi.StringPtrInput
	// The type of instance to start.
	InstanceType pulumi.StringInput
	// The Internet charge type of the instance. Valid values are `PayByBandwidth`, `PayByTraffic`.
	InternetChargeType pulumi.StringPtrInput
	// The Maximum outgoing bandwidth to the public network, measured in Mbps (Mega bit per second). Valid values: `1` to `100`.
	InternetMaxBandwidthOut pulumi.IntPtrInput
	// The name of key pair that can login ECS instance successfully without password.
	KeyPairName pulumi.StringPtrInput
	// The ID of the launch template.
	LaunchTemplateId pulumi.StringPtrInput
	// The name of the launch template. To use a launch template to create an instance, you must use the `launchTemplateId` or `launchTemplateName` parameter to specify the launch template.
	LaunchTemplateName pulumi.StringPtrInput
	// The version of the launch template.
	LaunchTemplateVersion pulumi.StringPtrInput
	// A list of NetworkInterface. See the following `Block networkInterfaces`.
	NetworkInterfaces EcsInstanceSetNetworkInterfaceArrayInput
	// The password to an instance is a string of 8 to 30 characters. It must contain uppercase/lowercase letters and numerals, but cannot contain special symbols.
	Password pulumi.StringPtrInput
	// Whether to use the password preset in the image.
	PasswordInherit pulumi.BoolPtrInput
	// The duration that you will buy the resource, in month. It is valid when `instanceChargeType` is `PrePaid`.
	// - When `periodUnit` is `Month`, Valid values: `1`, `2`, `3`, `4`, `5`, `6`, `7`, `8`, `9`, `12`, `24`, `36`, `48`, `60`.
	// - When `periodUnit` is `Week`, Valid values: `1`, `2`, `3`.
	Period pulumi.IntPtrInput
	// The duration unit that you will buy the resource. It is valid when `instanceChargeType` is 'PrePaid'. Valid value: `Week`, `Month`.
	PeriodUnit pulumi.StringPtrInput
	// The Instance RAM role name.
	RamRoleName pulumi.StringPtrInput
	// The ID of resource group which the instance belongs.
	ResourceGroupId pulumi.StringPtrInput
	// The security enhancement strategy.
	// - `Active`: Enable security enhancement strategy, it only works on system images.
	// - `Deactive`: Disable security enhancement strategy, it works on all images.
	SecurityEnhancementStrategy pulumi.StringPtrInput
	// A list of security group ids to associate with.
	SecurityGroupIds pulumi.StringArrayInput
	// The hourly price threshold of a instance, and it takes effect only when parameter 'spot_strategy' is 'SpotWithPriceLimit'. Three decimals is allowed at most.
	SpotPriceLimit pulumi.Float64PtrInput
	// The spot strategy of a Pay-As-You-Go instance, and it takes effect only when parameter `instanceChargeType` is 'PostPaid'.
	// - `NoSpot`: A regular Pay-As-You-Go instance.
	// - `SpotWithPriceLimit`: A price threshold for a spot instance.
	// - `SpotAsPriceGo`: A price that is based on the highest Pay-As-You-Go instance
	SpotStrategy pulumi.StringPtrInput
	// The ID of the automatic snapshot policy applied to the system disk.
	SystemDiskAutoSnapshotPolicyId pulumi.StringPtrInput
	// The category of the system disk. Valid values are `cloudEfficiency`, `cloudSsd`, `cloudEssd`, `cloud`.
	SystemDiskCategory pulumi.StringPtrInput
	// The description of the system disk. The description must be 2 to 256 characters in length and cannot start with `http://` or `https://`.
	SystemDiskDescription pulumi.StringPtrInput
	// The name of the system disk.
	SystemDiskName pulumi.StringPtrInput
	// The performance level of the ESSD used as the system disk. Valid values: `PL0`, `PL1`, `PL2`, `PL3`.
	SystemDiskPerformanceLevel pulumi.StringPtrInput
	// The size of the system disk, measured in GiB. Value range:  values: `20` to `500`.
	SystemDiskSize pulumi.IntPtrInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapInput
	// Whether to automatically append incremental suffixes to the hostname specified by the HostName parameter and to the instance name specified by the InstanceName parameter when you batch create instances. The incremental suffixes can range from `001` to `999`.
	UniqueSuffix pulumi.BoolPtrInput
	// The virtual switch ID to launch in VPC.
	VswitchId pulumi.StringPtrInput
	// The ID of the zone in which to create the instance.
	ZoneId pulumi.StringPtrInput
}

The set of arguments for constructing a EcsInstanceSet resource.

func (EcsInstanceSetArgs) ElementType

func (EcsInstanceSetArgs) ElementType() reflect.Type

type EcsInstanceSetArray

type EcsInstanceSetArray []EcsInstanceSetInput

func (EcsInstanceSetArray) ElementType

func (EcsInstanceSetArray) ElementType() reflect.Type

func (EcsInstanceSetArray) ToEcsInstanceSetArrayOutput

func (i EcsInstanceSetArray) ToEcsInstanceSetArrayOutput() EcsInstanceSetArrayOutput

func (EcsInstanceSetArray) ToEcsInstanceSetArrayOutputWithContext

func (i EcsInstanceSetArray) ToEcsInstanceSetArrayOutputWithContext(ctx context.Context) EcsInstanceSetArrayOutput

type EcsInstanceSetArrayInput

type EcsInstanceSetArrayInput interface {
	pulumi.Input

	ToEcsInstanceSetArrayOutput() EcsInstanceSetArrayOutput
	ToEcsInstanceSetArrayOutputWithContext(context.Context) EcsInstanceSetArrayOutput
}

EcsInstanceSetArrayInput is an input type that accepts EcsInstanceSetArray and EcsInstanceSetArrayOutput values. You can construct a concrete instance of `EcsInstanceSetArrayInput` via:

EcsInstanceSetArray{ EcsInstanceSetArgs{...} }

type EcsInstanceSetArrayOutput

type EcsInstanceSetArrayOutput struct{ *pulumi.OutputState }

func (EcsInstanceSetArrayOutput) ElementType

func (EcsInstanceSetArrayOutput) ElementType() reflect.Type

func (EcsInstanceSetArrayOutput) Index

func (EcsInstanceSetArrayOutput) ToEcsInstanceSetArrayOutput

func (o EcsInstanceSetArrayOutput) ToEcsInstanceSetArrayOutput() EcsInstanceSetArrayOutput

func (EcsInstanceSetArrayOutput) ToEcsInstanceSetArrayOutputWithContext

func (o EcsInstanceSetArrayOutput) ToEcsInstanceSetArrayOutputWithContext(ctx context.Context) EcsInstanceSetArrayOutput

type EcsInstanceSetDataDisk

type EcsInstanceSetDataDisk struct {
	// The ID of the automatic snapshot policy applied to the system disk.
	AutoSnapshotPolicyId *string `pulumi:"autoSnapshotPolicyId"`
	// The category of the disk. Valid values: `cloudEfficiency`, `cloudSsd`, `cloudEssd`, `cloud`.
	DiskCategory *string `pulumi:"diskCategory"`
	// The description of the data disk.
	DiskDescription *string `pulumi:"diskDescription"`
	// The name of the data disk.
	DiskName *string `pulumi:"diskName"`
	// The size of the data disk. Unit: GiB.
	// - When `diskCategory` is `cloudEfficiency`, Valid values: `20` to `32768`.
	// - When `diskCategory` is `cloudSsd`, Valid values: `20` to `32768`.
	// - When `diskCategory` is `cloudEssd`, Valid values: `20` to `32768`.
	// - When `diskCategory` is `cloud`, Valid values: `5` to `200`.
	DiskSize  int   `pulumi:"diskSize"`
	Encrypted *bool `pulumi:"encrypted"`
	// The KMS key ID corresponding to the data disk.
	KmsKeyId *string `pulumi:"kmsKeyId"`
	// The performance level of the ESSD used as data disk. Valid values: `PL0`, `PL1`, `PL2`, `PL3`.
	PerformanceLevel *string `pulumi:"performanceLevel"`
	// The snapshot ID used to initialize the data disk. If the size specified by snapshot is greater that the size of the disk, use the size specified by snapshot as the size of the data disk.
	SnapshotId *string `pulumi:"snapshotId"`
}

type EcsInstanceSetDataDiskArgs

type EcsInstanceSetDataDiskArgs struct {
	// The ID of the automatic snapshot policy applied to the system disk.
	AutoSnapshotPolicyId pulumi.StringPtrInput `pulumi:"autoSnapshotPolicyId"`
	// The category of the disk. Valid values: `cloudEfficiency`, `cloudSsd`, `cloudEssd`, `cloud`.
	DiskCategory pulumi.StringPtrInput `pulumi:"diskCategory"`
	// The description of the data disk.
	DiskDescription pulumi.StringPtrInput `pulumi:"diskDescription"`
	// The name of the data disk.
	DiskName pulumi.StringPtrInput `pulumi:"diskName"`
	// The size of the data disk. Unit: GiB.
	// - When `diskCategory` is `cloudEfficiency`, Valid values: `20` to `32768`.
	// - When `diskCategory` is `cloudSsd`, Valid values: `20` to `32768`.
	// - When `diskCategory` is `cloudEssd`, Valid values: `20` to `32768`.
	// - When `diskCategory` is `cloud`, Valid values: `5` to `200`.
	DiskSize  pulumi.IntInput     `pulumi:"diskSize"`
	Encrypted pulumi.BoolPtrInput `pulumi:"encrypted"`
	// The KMS key ID corresponding to the data disk.
	KmsKeyId pulumi.StringPtrInput `pulumi:"kmsKeyId"`
	// The performance level of the ESSD used as data disk. Valid values: `PL0`, `PL1`, `PL2`, `PL3`.
	PerformanceLevel pulumi.StringPtrInput `pulumi:"performanceLevel"`
	// The snapshot ID used to initialize the data disk. If the size specified by snapshot is greater that the size of the disk, use the size specified by snapshot as the size of the data disk.
	SnapshotId pulumi.StringPtrInput `pulumi:"snapshotId"`
}

func (EcsInstanceSetDataDiskArgs) ElementType

func (EcsInstanceSetDataDiskArgs) ElementType() reflect.Type

func (EcsInstanceSetDataDiskArgs) ToEcsInstanceSetDataDiskOutput

func (i EcsInstanceSetDataDiskArgs) ToEcsInstanceSetDataDiskOutput() EcsInstanceSetDataDiskOutput

func (EcsInstanceSetDataDiskArgs) ToEcsInstanceSetDataDiskOutputWithContext

func (i EcsInstanceSetDataDiskArgs) ToEcsInstanceSetDataDiskOutputWithContext(ctx context.Context) EcsInstanceSetDataDiskOutput

type EcsInstanceSetDataDiskArray

type EcsInstanceSetDataDiskArray []EcsInstanceSetDataDiskInput

func (EcsInstanceSetDataDiskArray) ElementType

func (EcsInstanceSetDataDiskArray) ToEcsInstanceSetDataDiskArrayOutput

func (i EcsInstanceSetDataDiskArray) ToEcsInstanceSetDataDiskArrayOutput() EcsInstanceSetDataDiskArrayOutput

func (EcsInstanceSetDataDiskArray) ToEcsInstanceSetDataDiskArrayOutputWithContext

func (i EcsInstanceSetDataDiskArray) ToEcsInstanceSetDataDiskArrayOutputWithContext(ctx context.Context) EcsInstanceSetDataDiskArrayOutput

type EcsInstanceSetDataDiskArrayInput

type EcsInstanceSetDataDiskArrayInput interface {
	pulumi.Input

	ToEcsInstanceSetDataDiskArrayOutput() EcsInstanceSetDataDiskArrayOutput
	ToEcsInstanceSetDataDiskArrayOutputWithContext(context.Context) EcsInstanceSetDataDiskArrayOutput
}

EcsInstanceSetDataDiskArrayInput is an input type that accepts EcsInstanceSetDataDiskArray and EcsInstanceSetDataDiskArrayOutput values. You can construct a concrete instance of `EcsInstanceSetDataDiskArrayInput` via:

EcsInstanceSetDataDiskArray{ EcsInstanceSetDataDiskArgs{...} }

type EcsInstanceSetDataDiskArrayOutput

type EcsInstanceSetDataDiskArrayOutput struct{ *pulumi.OutputState }

func (EcsInstanceSetDataDiskArrayOutput) ElementType

func (EcsInstanceSetDataDiskArrayOutput) Index

func (EcsInstanceSetDataDiskArrayOutput) ToEcsInstanceSetDataDiskArrayOutput

func (o EcsInstanceSetDataDiskArrayOutput) ToEcsInstanceSetDataDiskArrayOutput() EcsInstanceSetDataDiskArrayOutput

func (EcsInstanceSetDataDiskArrayOutput) ToEcsInstanceSetDataDiskArrayOutputWithContext

func (o EcsInstanceSetDataDiskArrayOutput) ToEcsInstanceSetDataDiskArrayOutputWithContext(ctx context.Context) EcsInstanceSetDataDiskArrayOutput

type EcsInstanceSetDataDiskInput

type EcsInstanceSetDataDiskInput interface {
	pulumi.Input

	ToEcsInstanceSetDataDiskOutput() EcsInstanceSetDataDiskOutput
	ToEcsInstanceSetDataDiskOutputWithContext(context.Context) EcsInstanceSetDataDiskOutput
}

EcsInstanceSetDataDiskInput is an input type that accepts EcsInstanceSetDataDiskArgs and EcsInstanceSetDataDiskOutput values. You can construct a concrete instance of `EcsInstanceSetDataDiskInput` via:

EcsInstanceSetDataDiskArgs{...}

type EcsInstanceSetDataDiskOutput

type EcsInstanceSetDataDiskOutput struct{ *pulumi.OutputState }

func (EcsInstanceSetDataDiskOutput) AutoSnapshotPolicyId

func (o EcsInstanceSetDataDiskOutput) AutoSnapshotPolicyId() pulumi.StringPtrOutput

The ID of the automatic snapshot policy applied to the system disk.

func (EcsInstanceSetDataDiskOutput) DiskCategory

The category of the disk. Valid values: `cloudEfficiency`, `cloudSsd`, `cloudEssd`, `cloud`.

func (EcsInstanceSetDataDiskOutput) DiskDescription

The description of the data disk.

func (EcsInstanceSetDataDiskOutput) DiskName

The name of the data disk.

func (EcsInstanceSetDataDiskOutput) DiskSize

The size of the data disk. Unit: GiB. - When `diskCategory` is `cloudEfficiency`, Valid values: `20` to `32768`. - When `diskCategory` is `cloudSsd`, Valid values: `20` to `32768`. - When `diskCategory` is `cloudEssd`, Valid values: `20` to `32768`. - When `diskCategory` is `cloud`, Valid values: `5` to `200`.

func (EcsInstanceSetDataDiskOutput) ElementType

func (EcsInstanceSetDataDiskOutput) Encrypted

func (EcsInstanceSetDataDiskOutput) KmsKeyId

The KMS key ID corresponding to the data disk.

func (EcsInstanceSetDataDiskOutput) PerformanceLevel

The performance level of the ESSD used as data disk. Valid values: `PL0`, `PL1`, `PL2`, `PL3`.

func (EcsInstanceSetDataDiskOutput) SnapshotId

The snapshot ID used to initialize the data disk. If the size specified by snapshot is greater that the size of the disk, use the size specified by snapshot as the size of the data disk.

func (EcsInstanceSetDataDiskOutput) ToEcsInstanceSetDataDiskOutput

func (o EcsInstanceSetDataDiskOutput) ToEcsInstanceSetDataDiskOutput() EcsInstanceSetDataDiskOutput

func (EcsInstanceSetDataDiskOutput) ToEcsInstanceSetDataDiskOutputWithContext

func (o EcsInstanceSetDataDiskOutput) ToEcsInstanceSetDataDiskOutputWithContext(ctx context.Context) EcsInstanceSetDataDiskOutput

type EcsInstanceSetExcludeInstanceFilter

type EcsInstanceSetExcludeInstanceFilter struct {
	// The type of the excluded. Valid values: `InstanceId`, `InstanceName`.
	Key string `pulumi:"key"`
	// The value of the excluded. The identification of the excluded instances. It is a list of instance Ids or names.
	Values []string `pulumi:"values"`
}

type EcsInstanceSetExcludeInstanceFilterArgs

type EcsInstanceSetExcludeInstanceFilterArgs struct {
	// The type of the excluded. Valid values: `InstanceId`, `InstanceName`.
	Key pulumi.StringInput `pulumi:"key"`
	// The value of the excluded. The identification of the excluded instances. It is a list of instance Ids or names.
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (EcsInstanceSetExcludeInstanceFilterArgs) ElementType

func (EcsInstanceSetExcludeInstanceFilterArgs) ToEcsInstanceSetExcludeInstanceFilterOutput

func (i EcsInstanceSetExcludeInstanceFilterArgs) ToEcsInstanceSetExcludeInstanceFilterOutput() EcsInstanceSetExcludeInstanceFilterOutput

func (EcsInstanceSetExcludeInstanceFilterArgs) ToEcsInstanceSetExcludeInstanceFilterOutputWithContext

func (i EcsInstanceSetExcludeInstanceFilterArgs) ToEcsInstanceSetExcludeInstanceFilterOutputWithContext(ctx context.Context) EcsInstanceSetExcludeInstanceFilterOutput

func (EcsInstanceSetExcludeInstanceFilterArgs) ToEcsInstanceSetExcludeInstanceFilterPtrOutput

func (i EcsInstanceSetExcludeInstanceFilterArgs) ToEcsInstanceSetExcludeInstanceFilterPtrOutput() EcsInstanceSetExcludeInstanceFilterPtrOutput

func (EcsInstanceSetExcludeInstanceFilterArgs) ToEcsInstanceSetExcludeInstanceFilterPtrOutputWithContext

func (i EcsInstanceSetExcludeInstanceFilterArgs) ToEcsInstanceSetExcludeInstanceFilterPtrOutputWithContext(ctx context.Context) EcsInstanceSetExcludeInstanceFilterPtrOutput

type EcsInstanceSetExcludeInstanceFilterInput

type EcsInstanceSetExcludeInstanceFilterInput interface {
	pulumi.Input

	ToEcsInstanceSetExcludeInstanceFilterOutput() EcsInstanceSetExcludeInstanceFilterOutput
	ToEcsInstanceSetExcludeInstanceFilterOutputWithContext(context.Context) EcsInstanceSetExcludeInstanceFilterOutput
}

EcsInstanceSetExcludeInstanceFilterInput is an input type that accepts EcsInstanceSetExcludeInstanceFilterArgs and EcsInstanceSetExcludeInstanceFilterOutput values. You can construct a concrete instance of `EcsInstanceSetExcludeInstanceFilterInput` via:

EcsInstanceSetExcludeInstanceFilterArgs{...}

type EcsInstanceSetExcludeInstanceFilterOutput

type EcsInstanceSetExcludeInstanceFilterOutput struct{ *pulumi.OutputState }

func (EcsInstanceSetExcludeInstanceFilterOutput) ElementType

func (EcsInstanceSetExcludeInstanceFilterOutput) Key

The type of the excluded. Valid values: `InstanceId`, `InstanceName`.

func (EcsInstanceSetExcludeInstanceFilterOutput) ToEcsInstanceSetExcludeInstanceFilterOutput

func (o EcsInstanceSetExcludeInstanceFilterOutput) ToEcsInstanceSetExcludeInstanceFilterOutput() EcsInstanceSetExcludeInstanceFilterOutput

func (EcsInstanceSetExcludeInstanceFilterOutput) ToEcsInstanceSetExcludeInstanceFilterOutputWithContext

func (o EcsInstanceSetExcludeInstanceFilterOutput) ToEcsInstanceSetExcludeInstanceFilterOutputWithContext(ctx context.Context) EcsInstanceSetExcludeInstanceFilterOutput

func (EcsInstanceSetExcludeInstanceFilterOutput) ToEcsInstanceSetExcludeInstanceFilterPtrOutput

func (o EcsInstanceSetExcludeInstanceFilterOutput) ToEcsInstanceSetExcludeInstanceFilterPtrOutput() EcsInstanceSetExcludeInstanceFilterPtrOutput

func (EcsInstanceSetExcludeInstanceFilterOutput) ToEcsInstanceSetExcludeInstanceFilterPtrOutputWithContext

func (o EcsInstanceSetExcludeInstanceFilterOutput) ToEcsInstanceSetExcludeInstanceFilterPtrOutputWithContext(ctx context.Context) EcsInstanceSetExcludeInstanceFilterPtrOutput

func (EcsInstanceSetExcludeInstanceFilterOutput) Values

The value of the excluded. The identification of the excluded instances. It is a list of instance Ids or names.

type EcsInstanceSetExcludeInstanceFilterPtrInput

type EcsInstanceSetExcludeInstanceFilterPtrInput interface {
	pulumi.Input

	ToEcsInstanceSetExcludeInstanceFilterPtrOutput() EcsInstanceSetExcludeInstanceFilterPtrOutput
	ToEcsInstanceSetExcludeInstanceFilterPtrOutputWithContext(context.Context) EcsInstanceSetExcludeInstanceFilterPtrOutput
}

EcsInstanceSetExcludeInstanceFilterPtrInput is an input type that accepts EcsInstanceSetExcludeInstanceFilterArgs, EcsInstanceSetExcludeInstanceFilterPtr and EcsInstanceSetExcludeInstanceFilterPtrOutput values. You can construct a concrete instance of `EcsInstanceSetExcludeInstanceFilterPtrInput` via:

        EcsInstanceSetExcludeInstanceFilterArgs{...}

or:

        nil

type EcsInstanceSetExcludeInstanceFilterPtrOutput

type EcsInstanceSetExcludeInstanceFilterPtrOutput struct{ *pulumi.OutputState }

func (EcsInstanceSetExcludeInstanceFilterPtrOutput) Elem

func (EcsInstanceSetExcludeInstanceFilterPtrOutput) ElementType

func (EcsInstanceSetExcludeInstanceFilterPtrOutput) Key

The type of the excluded. Valid values: `InstanceId`, `InstanceName`.

func (EcsInstanceSetExcludeInstanceFilterPtrOutput) ToEcsInstanceSetExcludeInstanceFilterPtrOutput

func (o EcsInstanceSetExcludeInstanceFilterPtrOutput) ToEcsInstanceSetExcludeInstanceFilterPtrOutput() EcsInstanceSetExcludeInstanceFilterPtrOutput

func (EcsInstanceSetExcludeInstanceFilterPtrOutput) ToEcsInstanceSetExcludeInstanceFilterPtrOutputWithContext

func (o EcsInstanceSetExcludeInstanceFilterPtrOutput) ToEcsInstanceSetExcludeInstanceFilterPtrOutputWithContext(ctx context.Context) EcsInstanceSetExcludeInstanceFilterPtrOutput

func (EcsInstanceSetExcludeInstanceFilterPtrOutput) Values

The value of the excluded. The identification of the excluded instances. It is a list of instance Ids or names.

type EcsInstanceSetInput

type EcsInstanceSetInput interface {
	pulumi.Input

	ToEcsInstanceSetOutput() EcsInstanceSetOutput
	ToEcsInstanceSetOutputWithContext(ctx context.Context) EcsInstanceSetOutput
}

type EcsInstanceSetMap

type EcsInstanceSetMap map[string]EcsInstanceSetInput

func (EcsInstanceSetMap) ElementType

func (EcsInstanceSetMap) ElementType() reflect.Type

func (EcsInstanceSetMap) ToEcsInstanceSetMapOutput

func (i EcsInstanceSetMap) ToEcsInstanceSetMapOutput() EcsInstanceSetMapOutput

func (EcsInstanceSetMap) ToEcsInstanceSetMapOutputWithContext

func (i EcsInstanceSetMap) ToEcsInstanceSetMapOutputWithContext(ctx context.Context) EcsInstanceSetMapOutput

type EcsInstanceSetMapInput

type EcsInstanceSetMapInput interface {
	pulumi.Input

	ToEcsInstanceSetMapOutput() EcsInstanceSetMapOutput
	ToEcsInstanceSetMapOutputWithContext(context.Context) EcsInstanceSetMapOutput
}

EcsInstanceSetMapInput is an input type that accepts EcsInstanceSetMap and EcsInstanceSetMapOutput values. You can construct a concrete instance of `EcsInstanceSetMapInput` via:

EcsInstanceSetMap{ "key": EcsInstanceSetArgs{...} }

type EcsInstanceSetMapOutput

type EcsInstanceSetMapOutput struct{ *pulumi.OutputState }

func (EcsInstanceSetMapOutput) ElementType

func (EcsInstanceSetMapOutput) ElementType() reflect.Type

func (EcsInstanceSetMapOutput) MapIndex

func (EcsInstanceSetMapOutput) ToEcsInstanceSetMapOutput

func (o EcsInstanceSetMapOutput) ToEcsInstanceSetMapOutput() EcsInstanceSetMapOutput

func (EcsInstanceSetMapOutput) ToEcsInstanceSetMapOutputWithContext

func (o EcsInstanceSetMapOutput) ToEcsInstanceSetMapOutputWithContext(ctx context.Context) EcsInstanceSetMapOutput

type EcsInstanceSetNetworkInterface

type EcsInstanceSetNetworkInterface struct {
	// The description of ENI.
	Description *string `pulumi:"description"`
	// The name of ENI.
	NetworkInterfaceName *string `pulumi:"networkInterfaceName"`
	// The primary private IP address of ENI.
	PrimaryIpAddress *string `pulumi:"primaryIpAddress"`
	// -(Required, ForceNew) The ID of the security group to which to assign secondary ENI.
	SecurityGroupId string `pulumi:"securityGroupId"`
	// The ID of the vSwitch to which to connect ENI.
	VswitchId *string `pulumi:"vswitchId"`
}

type EcsInstanceSetNetworkInterfaceArgs

type EcsInstanceSetNetworkInterfaceArgs struct {
	// The description of ENI.
	Description pulumi.StringPtrInput `pulumi:"description"`
	// The name of ENI.
	NetworkInterfaceName pulumi.StringPtrInput `pulumi:"networkInterfaceName"`
	// The primary private IP address of ENI.
	PrimaryIpAddress pulumi.StringPtrInput `pulumi:"primaryIpAddress"`
	// -(Required, ForceNew) The ID of the security group to which to assign secondary ENI.
	SecurityGroupId pulumi.StringInput `pulumi:"securityGroupId"`
	// The ID of the vSwitch to which to connect ENI.
	VswitchId pulumi.StringPtrInput `pulumi:"vswitchId"`
}

func (EcsInstanceSetNetworkInterfaceArgs) ElementType

func (EcsInstanceSetNetworkInterfaceArgs) ToEcsInstanceSetNetworkInterfaceOutput

func (i EcsInstanceSetNetworkInterfaceArgs) ToEcsInstanceSetNetworkInterfaceOutput() EcsInstanceSetNetworkInterfaceOutput

func (EcsInstanceSetNetworkInterfaceArgs) ToEcsInstanceSetNetworkInterfaceOutputWithContext

func (i EcsInstanceSetNetworkInterfaceArgs) ToEcsInstanceSetNetworkInterfaceOutputWithContext(ctx context.Context) EcsInstanceSetNetworkInterfaceOutput

type EcsInstanceSetNetworkInterfaceArray

type EcsInstanceSetNetworkInterfaceArray []EcsInstanceSetNetworkInterfaceInput

func (EcsInstanceSetNetworkInterfaceArray) ElementType

func (EcsInstanceSetNetworkInterfaceArray) ToEcsInstanceSetNetworkInterfaceArrayOutput

func (i EcsInstanceSetNetworkInterfaceArray) ToEcsInstanceSetNetworkInterfaceArrayOutput() EcsInstanceSetNetworkInterfaceArrayOutput

func (EcsInstanceSetNetworkInterfaceArray) ToEcsInstanceSetNetworkInterfaceArrayOutputWithContext

func (i EcsInstanceSetNetworkInterfaceArray) ToEcsInstanceSetNetworkInterfaceArrayOutputWithContext(ctx context.Context) EcsInstanceSetNetworkInterfaceArrayOutput

type EcsInstanceSetNetworkInterfaceArrayInput

type EcsInstanceSetNetworkInterfaceArrayInput interface {
	pulumi.Input

	ToEcsInstanceSetNetworkInterfaceArrayOutput() EcsInstanceSetNetworkInterfaceArrayOutput
	ToEcsInstanceSetNetworkInterfaceArrayOutputWithContext(context.Context) EcsInstanceSetNetworkInterfaceArrayOutput
}

EcsInstanceSetNetworkInterfaceArrayInput is an input type that accepts EcsInstanceSetNetworkInterfaceArray and EcsInstanceSetNetworkInterfaceArrayOutput values. You can construct a concrete instance of `EcsInstanceSetNetworkInterfaceArrayInput` via:

EcsInstanceSetNetworkInterfaceArray{ EcsInstanceSetNetworkInterfaceArgs{...} }

type EcsInstanceSetNetworkInterfaceArrayOutput

type EcsInstanceSetNetworkInterfaceArrayOutput struct{ *pulumi.OutputState }

func (EcsInstanceSetNetworkInterfaceArrayOutput) ElementType

func (EcsInstanceSetNetworkInterfaceArrayOutput) Index

func (EcsInstanceSetNetworkInterfaceArrayOutput) ToEcsInstanceSetNetworkInterfaceArrayOutput

func (o EcsInstanceSetNetworkInterfaceArrayOutput) ToEcsInstanceSetNetworkInterfaceArrayOutput() EcsInstanceSetNetworkInterfaceArrayOutput

func (EcsInstanceSetNetworkInterfaceArrayOutput) ToEcsInstanceSetNetworkInterfaceArrayOutputWithContext

func (o EcsInstanceSetNetworkInterfaceArrayOutput) ToEcsInstanceSetNetworkInterfaceArrayOutputWithContext(ctx context.Context) EcsInstanceSetNetworkInterfaceArrayOutput

type EcsInstanceSetNetworkInterfaceInput

type EcsInstanceSetNetworkInterfaceInput interface {
	pulumi.Input

	ToEcsInstanceSetNetworkInterfaceOutput() EcsInstanceSetNetworkInterfaceOutput
	ToEcsInstanceSetNetworkInterfaceOutputWithContext(context.Context) EcsInstanceSetNetworkInterfaceOutput
}

EcsInstanceSetNetworkInterfaceInput is an input type that accepts EcsInstanceSetNetworkInterfaceArgs and EcsInstanceSetNetworkInterfaceOutput values. You can construct a concrete instance of `EcsInstanceSetNetworkInterfaceInput` via:

EcsInstanceSetNetworkInterfaceArgs{...}

type EcsInstanceSetNetworkInterfaceOutput

type EcsInstanceSetNetworkInterfaceOutput struct{ *pulumi.OutputState }

func (EcsInstanceSetNetworkInterfaceOutput) Description

The description of ENI.

func (EcsInstanceSetNetworkInterfaceOutput) ElementType

func (EcsInstanceSetNetworkInterfaceOutput) NetworkInterfaceName

The name of ENI.

func (EcsInstanceSetNetworkInterfaceOutput) PrimaryIpAddress

The primary private IP address of ENI.

func (EcsInstanceSetNetworkInterfaceOutput) SecurityGroupId

-(Required, ForceNew) The ID of the security group to which to assign secondary ENI.

func (EcsInstanceSetNetworkInterfaceOutput) ToEcsInstanceSetNetworkInterfaceOutput

func (o EcsInstanceSetNetworkInterfaceOutput) ToEcsInstanceSetNetworkInterfaceOutput() EcsInstanceSetNetworkInterfaceOutput

func (EcsInstanceSetNetworkInterfaceOutput) ToEcsInstanceSetNetworkInterfaceOutputWithContext

func (o EcsInstanceSetNetworkInterfaceOutput) ToEcsInstanceSetNetworkInterfaceOutputWithContext(ctx context.Context) EcsInstanceSetNetworkInterfaceOutput

func (EcsInstanceSetNetworkInterfaceOutput) VswitchId

The ID of the vSwitch to which to connect ENI.

type EcsInstanceSetOutput

type EcsInstanceSetOutput struct{ *pulumi.OutputState }

func (EcsInstanceSetOutput) Amount

The number of instances that you want to create. Valid values: `1` to `100`.

func (EcsInstanceSetOutput) AutoReleaseTime

func (o EcsInstanceSetOutput) AutoReleaseTime() pulumi.StringPtrOutput

The automatic release time of the `PostPaid` instance.

func (EcsInstanceSetOutput) AutoRenew

Whether to enable auto-renewal for the instance. This parameter is valid only when the `instanceChargeType` is set to `PrePaid`.

func (EcsInstanceSetOutput) AutoRenewPeriod

func (o EcsInstanceSetOutput) AutoRenewPeriod() pulumi.IntPtrOutput

Auto renewal period of an instance, in the unit of month. It is valid when `instanceChargeType` is `PrePaid`. - When `periodUnit` is `Month`, Valid values: `1`, `2`, `3`, `6`, `12`. - When `periodUnit` is `Week`, Valid values: `1`, `2`, `3`.

func (EcsInstanceSetOutput) BootCheckOsWithAssistant

func (o EcsInstanceSetOutput) BootCheckOsWithAssistant() pulumi.BoolPtrOutput

Indicate how to check instance ready to use. - `false`: Default value. Means that the instances are ready when their DescribeInstances status is Running, at which time guestOS(Ecs os) may not be ready yet. - `true`: Checking instance ready with Ecs assistant, which means guestOs boots successfully. Premise is that the specified image `imageId` has built-in Ecs assistant. Most of the public images have assistant installed already.

func (EcsInstanceSetOutput) DataDisks

The list of data disks created with instance. See the following `Block dataDisks`.

func (EcsInstanceSetOutput) DedicatedHostId

func (o EcsInstanceSetOutput) DedicatedHostId() pulumi.StringPtrOutput

The ID of the dedicated host on which to create the instance. If the `dedicatedHostId` is specified, the `spotStrategy` and `spotPriceLimit` are ignored. This is because preemptible instances cannot be created on dedicated hosts.

func (EcsInstanceSetOutput) DeletionProtection

func (o EcsInstanceSetOutput) DeletionProtection() pulumi.BoolOutput

Whether to enable release protection for the instance.

func (EcsInstanceSetOutput) DeploymentSetId

func (o EcsInstanceSetOutput) DeploymentSetId() pulumi.StringPtrOutput

The ID of the deployment set to which to deploy the instance.

func (EcsInstanceSetOutput) Description

The description of the instance, This description can have a string of 2 to 256 characters, It cannot begin with `http://` or `https://`.

func (EcsInstanceSetOutput) ElementType

func (EcsInstanceSetOutput) ElementType() reflect.Type

func (EcsInstanceSetOutput) ExcludeInstanceFilter

The instances that need to be excluded from the Instance Set. See the following `Block excludeInstanceFilter`.

func (EcsInstanceSetOutput) HostName

The hostname of instance.

func (EcsInstanceSetOutput) HpcClusterId

func (o EcsInstanceSetOutput) HpcClusterId() pulumi.StringPtrOutput

The ID of the Elastic High Performance Computing (E-HPC) cluster to which to assign the instance.

func (EcsInstanceSetOutput) ImageId

The Image to use for the instance.

func (EcsInstanceSetOutput) InstanceChargeType

func (o EcsInstanceSetOutput) InstanceChargeType() pulumi.StringPtrOutput

The billing method of the instance. Valid values: `PrePaid`, `PostPaid`.

func (EcsInstanceSetOutput) InstanceIds

A list of ECS Instance ID.

func (EcsInstanceSetOutput) InstanceName

func (o EcsInstanceSetOutput) InstanceName() pulumi.StringPtrOutput

The name of the ECS. This instanceName can have a string of 2 to 128 characters, must contain only alphanumeric characters or hyphens, such as "-",".","_", and must not begin with a hyphen, and must not begin with `http://` or `https://`.

func (EcsInstanceSetOutput) InstanceType

func (o EcsInstanceSetOutput) InstanceType() pulumi.StringOutput

The type of instance to start.

func (EcsInstanceSetOutput) InternetChargeType

func (o EcsInstanceSetOutput) InternetChargeType() pulumi.StringOutput

The Internet charge type of the instance. Valid values are `PayByBandwidth`, `PayByTraffic`.

func (EcsInstanceSetOutput) InternetMaxBandwidthOut

func (o EcsInstanceSetOutput) InternetMaxBandwidthOut() pulumi.IntOutput

The Maximum outgoing bandwidth to the public network, measured in Mbps (Mega bit per second). Valid values: `1` to `100`.

func (EcsInstanceSetOutput) KeyPairName

The name of key pair that can login ECS instance successfully without password.

func (EcsInstanceSetOutput) LaunchTemplateId

func (o EcsInstanceSetOutput) LaunchTemplateId() pulumi.StringPtrOutput

The ID of the launch template.

func (EcsInstanceSetOutput) LaunchTemplateName

func (o EcsInstanceSetOutput) LaunchTemplateName() pulumi.StringPtrOutput

The name of the launch template. To use a launch template to create an instance, you must use the `launchTemplateId` or `launchTemplateName` parameter to specify the launch template.

func (EcsInstanceSetOutput) LaunchTemplateVersion

func (o EcsInstanceSetOutput) LaunchTemplateVersion() pulumi.StringPtrOutput

The version of the launch template.

func (EcsInstanceSetOutput) NetworkInterfaces

A list of NetworkInterface. See the following `Block networkInterfaces`.

func (EcsInstanceSetOutput) Password

The password to an instance is a string of 8 to 30 characters. It must contain uppercase/lowercase letters and numerals, but cannot contain special symbols.

func (EcsInstanceSetOutput) PasswordInherit

func (o EcsInstanceSetOutput) PasswordInherit() pulumi.BoolPtrOutput

Whether to use the password preset in the image.

func (EcsInstanceSetOutput) Period

The duration that you will buy the resource, in month. It is valid when `instanceChargeType` is `PrePaid`. - When `periodUnit` is `Month`, Valid values: `1`, `2`, `3`, `4`, `5`, `6`, `7`, `8`, `9`, `12`, `24`, `36`, `48`, `60`. - When `periodUnit` is `Week`, Valid values: `1`, `2`, `3`.

func (EcsInstanceSetOutput) PeriodUnit

The duration unit that you will buy the resource. It is valid when `instanceChargeType` is 'PrePaid'. Valid value: `Week`, `Month`.

func (EcsInstanceSetOutput) RamRoleName

The Instance RAM role name.

func (EcsInstanceSetOutput) ResourceGroupId

func (o EcsInstanceSetOutput) ResourceGroupId() pulumi.StringPtrOutput

The ID of resource group which the instance belongs.

func (EcsInstanceSetOutput) SecurityEnhancementStrategy

func (o EcsInstanceSetOutput) SecurityEnhancementStrategy() pulumi.StringPtrOutput

The security enhancement strategy. - `Active`: Enable security enhancement strategy, it only works on system images. - `Deactive`: Disable security enhancement strategy, it works on all images.

func (EcsInstanceSetOutput) SecurityGroupIds

func (o EcsInstanceSetOutput) SecurityGroupIds() pulumi.StringArrayOutput

A list of security group ids to associate with.

func (EcsInstanceSetOutput) SpotPriceLimit

func (o EcsInstanceSetOutput) SpotPriceLimit() pulumi.Float64Output

The hourly price threshold of a instance, and it takes effect only when parameter 'spot_strategy' is 'SpotWithPriceLimit'. Three decimals is allowed at most.

func (EcsInstanceSetOutput) SpotStrategy

func (o EcsInstanceSetOutput) SpotStrategy() pulumi.StringOutput

The spot strategy of a Pay-As-You-Go instance, and it takes effect only when parameter `instanceChargeType` is 'PostPaid'. - `NoSpot`: A regular Pay-As-You-Go instance. - `SpotWithPriceLimit`: A price threshold for a spot instance. - `SpotAsPriceGo`: A price that is based on the highest Pay-As-You-Go instance

func (EcsInstanceSetOutput) SystemDiskAutoSnapshotPolicyId

func (o EcsInstanceSetOutput) SystemDiskAutoSnapshotPolicyId() pulumi.StringPtrOutput

The ID of the automatic snapshot policy applied to the system disk.

func (EcsInstanceSetOutput) SystemDiskCategory

func (o EcsInstanceSetOutput) SystemDiskCategory() pulumi.StringOutput

The category of the system disk. Valid values are `cloudEfficiency`, `cloudSsd`, `cloudEssd`, `cloud`.

func (EcsInstanceSetOutput) SystemDiskDescription

func (o EcsInstanceSetOutput) SystemDiskDescription() pulumi.StringPtrOutput

The description of the system disk. The description must be 2 to 256 characters in length and cannot start with `http://` or `https://`.

func (EcsInstanceSetOutput) SystemDiskName

func (o EcsInstanceSetOutput) SystemDiskName() pulumi.StringPtrOutput

The name of the system disk.

func (EcsInstanceSetOutput) SystemDiskPerformanceLevel

func (o EcsInstanceSetOutput) SystemDiskPerformanceLevel() pulumi.StringOutput

The performance level of the ESSD used as the system disk. Valid values: `PL0`, `PL1`, `PL2`, `PL3`.

func (EcsInstanceSetOutput) SystemDiskSize

func (o EcsInstanceSetOutput) SystemDiskSize() pulumi.IntOutput

The size of the system disk, measured in GiB. Value range: values: `20` to `500`.

func (EcsInstanceSetOutput) Tags

A mapping of tags to assign to the resource.

func (EcsInstanceSetOutput) ToEcsInstanceSetOutput

func (o EcsInstanceSetOutput) ToEcsInstanceSetOutput() EcsInstanceSetOutput

func (EcsInstanceSetOutput) ToEcsInstanceSetOutputWithContext

func (o EcsInstanceSetOutput) ToEcsInstanceSetOutputWithContext(ctx context.Context) EcsInstanceSetOutput

func (EcsInstanceSetOutput) UniqueSuffix

func (o EcsInstanceSetOutput) UniqueSuffix() pulumi.BoolPtrOutput

Whether to automatically append incremental suffixes to the hostname specified by the HostName parameter and to the instance name specified by the InstanceName parameter when you batch create instances. The incremental suffixes can range from `001` to `999`.

func (EcsInstanceSetOutput) VswitchId

The virtual switch ID to launch in VPC.

func (EcsInstanceSetOutput) ZoneId

The ID of the zone in which to create the instance.

type EcsInstanceSetState

type EcsInstanceSetState struct {
	// The number of instances that you want to create. Valid values: `1` to `100`.
	Amount pulumi.IntPtrInput
	// The automatic release time of the `PostPaid` instance.
	AutoReleaseTime pulumi.StringPtrInput
	// Whether to enable auto-renewal for the instance. This parameter is valid only when the `instanceChargeType` is set to `PrePaid`.
	AutoRenew pulumi.BoolPtrInput
	// Auto renewal period of an instance, in the unit of month. It is valid when `instanceChargeType` is `PrePaid`.
	// - When `periodUnit` is `Month`, Valid values: `1`, `2`, `3`, `6`, `12`.
	// - When `periodUnit` is `Week`, Valid values: `1`, `2`, `3`.
	AutoRenewPeriod pulumi.IntPtrInput
	// Indicate how to check instance ready to use.
	// - `false`: Default value. Means that the instances are ready when their DescribeInstances status is Running, at which time guestOS(Ecs os) may not be ready yet.
	// - `true`: Checking instance ready with Ecs assistant, which means guestOs boots successfully. Premise is that the specified image `imageId` has built-in Ecs assistant. Most of the public images have assistant installed already.
	BootCheckOsWithAssistant pulumi.BoolPtrInput
	// The list of data disks created with instance. See the following `Block dataDisks`.
	DataDisks EcsInstanceSetDataDiskArrayInput
	// The ID of the dedicated host on which to create the instance. If the `dedicatedHostId` is specified, the `spotStrategy` and `spotPriceLimit`  are ignored. This is because preemptible instances cannot be created on dedicated hosts.
	DedicatedHostId pulumi.StringPtrInput
	// Whether to enable release protection for the instance.
	DeletionProtection pulumi.BoolPtrInput
	// The ID of the deployment set to which to deploy the instance.
	DeploymentSetId pulumi.StringPtrInput
	// The description of the instance, This description can have a string of 2 to 256 characters, It cannot begin with `http://` or `https://`.
	Description pulumi.StringPtrInput
	// The instances that need to be excluded from the Instance Set. See the following `Block excludeInstanceFilter`.
	ExcludeInstanceFilter EcsInstanceSetExcludeInstanceFilterPtrInput
	// The hostname of instance.
	HostName pulumi.StringPtrInput
	// The ID of the Elastic High Performance Computing (E-HPC) cluster to which to assign the instance.
	HpcClusterId pulumi.StringPtrInput
	// The Image to use for the instance.
	ImageId pulumi.StringPtrInput
	// The billing method of the instance. Valid values: `PrePaid`, `PostPaid`.
	InstanceChargeType pulumi.StringPtrInput
	// A list of ECS Instance ID.
	InstanceIds pulumi.StringArrayInput
	// The name of the ECS. This instanceName can have a string of 2 to 128 characters, must contain only alphanumeric characters or hyphens, such as "-",".","_", and must not begin with a hyphen, and must not begin with `http://` or `https://`.
	InstanceName pulumi.StringPtrInput
	// The type of instance to start.
	InstanceType pulumi.StringPtrInput
	// The Internet charge type of the instance. Valid values are `PayByBandwidth`, `PayByTraffic`.
	InternetChargeType pulumi.StringPtrInput
	// The Maximum outgoing bandwidth to the public network, measured in Mbps (Mega bit per second). Valid values: `1` to `100`.
	InternetMaxBandwidthOut pulumi.IntPtrInput
	// The name of key pair that can login ECS instance successfully without password.
	KeyPairName pulumi.StringPtrInput
	// The ID of the launch template.
	LaunchTemplateId pulumi.StringPtrInput
	// The name of the launch template. To use a launch template to create an instance, you must use the `launchTemplateId` or `launchTemplateName` parameter to specify the launch template.
	LaunchTemplateName pulumi.StringPtrInput
	// The version of the launch template.
	LaunchTemplateVersion pulumi.StringPtrInput
	// A list of NetworkInterface. See the following `Block networkInterfaces`.
	NetworkInterfaces EcsInstanceSetNetworkInterfaceArrayInput
	// The password to an instance is a string of 8 to 30 characters. It must contain uppercase/lowercase letters and numerals, but cannot contain special symbols.
	Password pulumi.StringPtrInput
	// Whether to use the password preset in the image.
	PasswordInherit pulumi.BoolPtrInput
	// The duration that you will buy the resource, in month. It is valid when `instanceChargeType` is `PrePaid`.
	// - When `periodUnit` is `Month`, Valid values: `1`, `2`, `3`, `4`, `5`, `6`, `7`, `8`, `9`, `12`, `24`, `36`, `48`, `60`.
	// - When `periodUnit` is `Week`, Valid values: `1`, `2`, `3`.
	Period pulumi.IntPtrInput
	// The duration unit that you will buy the resource. It is valid when `instanceChargeType` is 'PrePaid'. Valid value: `Week`, `Month`.
	PeriodUnit pulumi.StringPtrInput
	// The Instance RAM role name.
	RamRoleName pulumi.StringPtrInput
	// The ID of resource group which the instance belongs.
	ResourceGroupId pulumi.StringPtrInput
	// The security enhancement strategy.
	// - `Active`: Enable security enhancement strategy, it only works on system images.
	// - `Deactive`: Disable security enhancement strategy, it works on all images.
	SecurityEnhancementStrategy pulumi.StringPtrInput
	// A list of security group ids to associate with.
	SecurityGroupIds pulumi.StringArrayInput
	// The hourly price threshold of a instance, and it takes effect only when parameter 'spot_strategy' is 'SpotWithPriceLimit'. Three decimals is allowed at most.
	SpotPriceLimit pulumi.Float64PtrInput
	// The spot strategy of a Pay-As-You-Go instance, and it takes effect only when parameter `instanceChargeType` is 'PostPaid'.
	// - `NoSpot`: A regular Pay-As-You-Go instance.
	// - `SpotWithPriceLimit`: A price threshold for a spot instance.
	// - `SpotAsPriceGo`: A price that is based on the highest Pay-As-You-Go instance
	SpotStrategy pulumi.StringPtrInput
	// The ID of the automatic snapshot policy applied to the system disk.
	SystemDiskAutoSnapshotPolicyId pulumi.StringPtrInput
	// The category of the system disk. Valid values are `cloudEfficiency`, `cloudSsd`, `cloudEssd`, `cloud`.
	SystemDiskCategory pulumi.StringPtrInput
	// The description of the system disk. The description must be 2 to 256 characters in length and cannot start with `http://` or `https://`.
	SystemDiskDescription pulumi.StringPtrInput
	// The name of the system disk.
	SystemDiskName pulumi.StringPtrInput
	// The performance level of the ESSD used as the system disk. Valid values: `PL0`, `PL1`, `PL2`, `PL3`.
	SystemDiskPerformanceLevel pulumi.StringPtrInput
	// The size of the system disk, measured in GiB. Value range:  values: `20` to `500`.
	SystemDiskSize pulumi.IntPtrInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapInput
	// Whether to automatically append incremental suffixes to the hostname specified by the HostName parameter and to the instance name specified by the InstanceName parameter when you batch create instances. The incremental suffixes can range from `001` to `999`.
	UniqueSuffix pulumi.BoolPtrInput
	// The virtual switch ID to launch in VPC.
	VswitchId pulumi.StringPtrInput
	// The ID of the zone in which to create the instance.
	ZoneId pulumi.StringPtrInput
}

func (EcsInstanceSetState) ElementType

func (EcsInstanceSetState) ElementType() reflect.Type

type EcsInvocation

type EcsInvocation struct {
	pulumi.CustomResourceState

	// The ID of the command.
	CommandId pulumi.StringOutput `pulumi:"commandId"`
	// The schedule on which the recurring execution of the command takes place. Take note of the following items:
	// * The interval between two consecutive executions must be 10 seconds or longer. The minimum interval cannot be less than the timeout period of the execution.
	// * When you set Timed to true, you must specify Frequency.
	// * The value of the Frequency parameter is a cron expression. For more information, see [Cron expression](https://www.alibabacloud.com/help/en/elastic-compute-service/latest/cron-expression).
	Frequency pulumi.StringPtrOutput `pulumi:"frequency"`
	// The list of instances to execute the command. You can specify up to 50 instance IDs.
	InstanceIds pulumi.StringArrayOutput `pulumi:"instanceIds"`
	// The key-value pairs of custom parameters to be passed in when the custom parameter feature is enabled.  Number of custom parameters: 0 to 10.
	Parameters pulumi.MapOutput `pulumi:"parameters"`
	// Specifies how to run the command. Valid values: `Once`, `Period`, `NextRebootOnly`, `EveryReboot`. Default value: When `timed` is set to false and Frequency is not specified, the default value of `repeatMode` is `Once`. When `Timed` is set to true and Frequency is specified, `period` is used as the value of RepeatMode regardless of whether `repeatMode` is specified.
	RepeatMode pulumi.StringOutput `pulumi:"repeatMode"`
	// The status of the resource.
	Status pulumi.StringOutput `pulumi:"status"`
	// Specifies whether to periodically run the command. Default value: `false`.
	Timed pulumi.BoolOutput `pulumi:"timed"`
	// The username that is used to run the command on the ECS instance.
	// * For Linux instances, the root username is used.
	// * For Windows instances, the System username is used.
	// * You can also specify other usernames that already exist in the ECS instance to run the command. It is more secure to run Cloud Assistant commands as a regular user. For more information, see [Configure a regular user to run Cloud Assistant commands](https://www.alibabacloud.com/help/en/elastic-compute-service/latest/run-cloud-assistant-commands-as-a-regular-user).
	Username pulumi.StringOutput `pulumi:"username"`
	// The name of the password used to run the command on a Windows instance.
	WindowsPasswordName pulumi.StringPtrOutput `pulumi:"windowsPasswordName"`
}

Provides a ECS Invocation resource.

For information about ECS Invocation and how to use it, see [What is Invocation](https://www.alibabacloud.com/help/en/elastic-compute-service/latest/invokecommand#t9958.html).

> **NOTE:** Available in v1.168.0+.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/go/alicloud/ecs"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		defaultCommand, err := ecs.NewCommand(ctx, "defaultCommand", &ecs.CommandArgs{
			CommandContent: pulumi.String("bHMK"),
			Description:    pulumi.String("For Terraform Test"),
			Type:           pulumi.String("RunShellScript"),
			WorkingDir:     pulumi.String("/root"),
		})
		if err != nil {
			return err
		}
		defaultInstances, err := ecs.GetInstances(ctx, &ecs.GetInstancesArgs{
			Status: pulumi.StringRef("Running"),
		}, nil)
		if err != nil {
			return err
		}
		_, err = ecs.NewEcsInvocation(ctx, "defaultEcsInvocation", &ecs.EcsInvocationArgs{
			CommandId: defaultCommand.ID(),
			InstanceIds: pulumi.StringArray{
				pulumi.String(defaultInstances.Ids[0]),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

ECS Invocation can be imported using the id, e.g.

```sh

$ pulumi import alicloud:ecs/ecsInvocation:EcsInvocation example <id>

```

func GetEcsInvocation

func GetEcsInvocation(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *EcsInvocationState, opts ...pulumi.ResourceOption) (*EcsInvocation, error)

GetEcsInvocation gets an existing EcsInvocation 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 NewEcsInvocation

func NewEcsInvocation(ctx *pulumi.Context,
	name string, args *EcsInvocationArgs, opts ...pulumi.ResourceOption) (*EcsInvocation, error)

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

func (*EcsInvocation) ElementType

func (*EcsInvocation) ElementType() reflect.Type

func (*EcsInvocation) ToEcsInvocationOutput

func (i *EcsInvocation) ToEcsInvocationOutput() EcsInvocationOutput

func (*EcsInvocation) ToEcsInvocationOutputWithContext

func (i *EcsInvocation) ToEcsInvocationOutputWithContext(ctx context.Context) EcsInvocationOutput

type EcsInvocationArgs

type EcsInvocationArgs struct {
	// The ID of the command.
	CommandId pulumi.StringInput
	// The schedule on which the recurring execution of the command takes place. Take note of the following items:
	// * The interval between two consecutive executions must be 10 seconds or longer. The minimum interval cannot be less than the timeout period of the execution.
	// * When you set Timed to true, you must specify Frequency.
	// * The value of the Frequency parameter is a cron expression. For more information, see [Cron expression](https://www.alibabacloud.com/help/en/elastic-compute-service/latest/cron-expression).
	Frequency pulumi.StringPtrInput
	// The list of instances to execute the command. You can specify up to 50 instance IDs.
	InstanceIds pulumi.StringArrayInput
	// The key-value pairs of custom parameters to be passed in when the custom parameter feature is enabled.  Number of custom parameters: 0 to 10.
	Parameters pulumi.MapInput
	// Specifies how to run the command. Valid values: `Once`, `Period`, `NextRebootOnly`, `EveryReboot`. Default value: When `timed` is set to false and Frequency is not specified, the default value of `repeatMode` is `Once`. When `Timed` is set to true and Frequency is specified, `period` is used as the value of RepeatMode regardless of whether `repeatMode` is specified.
	RepeatMode pulumi.StringPtrInput
	// Specifies whether to periodically run the command. Default value: `false`.
	Timed pulumi.BoolPtrInput
	// The username that is used to run the command on the ECS instance.
	// * For Linux instances, the root username is used.
	// * For Windows instances, the System username is used.
	// * You can also specify other usernames that already exist in the ECS instance to run the command. It is more secure to run Cloud Assistant commands as a regular user. For more information, see [Configure a regular user to run Cloud Assistant commands](https://www.alibabacloud.com/help/en/elastic-compute-service/latest/run-cloud-assistant-commands-as-a-regular-user).
	Username pulumi.StringPtrInput
	// The name of the password used to run the command on a Windows instance.
	WindowsPasswordName pulumi.StringPtrInput
}

The set of arguments for constructing a EcsInvocation resource.

func (EcsInvocationArgs) ElementType

func (EcsInvocationArgs) ElementType() reflect.Type

type EcsInvocationArray

type EcsInvocationArray []EcsInvocationInput

func (EcsInvocationArray) ElementType

func (EcsInvocationArray) ElementType() reflect.Type

func (EcsInvocationArray) ToEcsInvocationArrayOutput

func (i EcsInvocationArray) ToEcsInvocationArrayOutput() EcsInvocationArrayOutput

func (EcsInvocationArray) ToEcsInvocationArrayOutputWithContext

func (i EcsInvocationArray) ToEcsInvocationArrayOutputWithContext(ctx context.Context) EcsInvocationArrayOutput

type EcsInvocationArrayInput

type EcsInvocationArrayInput interface {
	pulumi.Input

	ToEcsInvocationArrayOutput() EcsInvocationArrayOutput
	ToEcsInvocationArrayOutputWithContext(context.Context) EcsInvocationArrayOutput
}

EcsInvocationArrayInput is an input type that accepts EcsInvocationArray and EcsInvocationArrayOutput values. You can construct a concrete instance of `EcsInvocationArrayInput` via:

EcsInvocationArray{ EcsInvocationArgs{...} }

type EcsInvocationArrayOutput

type EcsInvocationArrayOutput struct{ *pulumi.OutputState }

func (EcsInvocationArrayOutput) ElementType

func (EcsInvocationArrayOutput) ElementType() reflect.Type

func (EcsInvocationArrayOutput) Index

func (EcsInvocationArrayOutput) ToEcsInvocationArrayOutput

func (o EcsInvocationArrayOutput) ToEcsInvocationArrayOutput() EcsInvocationArrayOutput

func (EcsInvocationArrayOutput) ToEcsInvocationArrayOutputWithContext

func (o EcsInvocationArrayOutput) ToEcsInvocationArrayOutputWithContext(ctx context.Context) EcsInvocationArrayOutput

type EcsInvocationInput

type EcsInvocationInput interface {
	pulumi.Input

	ToEcsInvocationOutput() EcsInvocationOutput
	ToEcsInvocationOutputWithContext(ctx context.Context) EcsInvocationOutput
}

type EcsInvocationMap

type EcsInvocationMap map[string]EcsInvocationInput

func (EcsInvocationMap) ElementType

func (EcsInvocationMap) ElementType() reflect.Type

func (EcsInvocationMap) ToEcsInvocationMapOutput

func (i EcsInvocationMap) ToEcsInvocationMapOutput() EcsInvocationMapOutput

func (EcsInvocationMap) ToEcsInvocationMapOutputWithContext

func (i EcsInvocationMap) ToEcsInvocationMapOutputWithContext(ctx context.Context) EcsInvocationMapOutput

type EcsInvocationMapInput

type EcsInvocationMapInput interface {
	pulumi.Input

	ToEcsInvocationMapOutput() EcsInvocationMapOutput
	ToEcsInvocationMapOutputWithContext(context.Context) EcsInvocationMapOutput
}

EcsInvocationMapInput is an input type that accepts EcsInvocationMap and EcsInvocationMapOutput values. You can construct a concrete instance of `EcsInvocationMapInput` via:

EcsInvocationMap{ "key": EcsInvocationArgs{...} }

type EcsInvocationMapOutput

type EcsInvocationMapOutput struct{ *pulumi.OutputState }

func (EcsInvocationMapOutput) ElementType

func (EcsInvocationMapOutput) ElementType() reflect.Type

func (EcsInvocationMapOutput) MapIndex

func (EcsInvocationMapOutput) ToEcsInvocationMapOutput

func (o EcsInvocationMapOutput) ToEcsInvocationMapOutput() EcsInvocationMapOutput

func (EcsInvocationMapOutput) ToEcsInvocationMapOutputWithContext

func (o EcsInvocationMapOutput) ToEcsInvocationMapOutputWithContext(ctx context.Context) EcsInvocationMapOutput

type EcsInvocationOutput

type EcsInvocationOutput struct{ *pulumi.OutputState }

func (EcsInvocationOutput) CommandId

func (o EcsInvocationOutput) CommandId() pulumi.StringOutput

The ID of the command.

func (EcsInvocationOutput) ElementType

func (EcsInvocationOutput) ElementType() reflect.Type

func (EcsInvocationOutput) Frequency

The schedule on which the recurring execution of the command takes place. Take note of the following items: * The interval between two consecutive executions must be 10 seconds or longer. The minimum interval cannot be less than the timeout period of the execution. * When you set Timed to true, you must specify Frequency. * The value of the Frequency parameter is a cron expression. For more information, see [Cron expression](https://www.alibabacloud.com/help/en/elastic-compute-service/latest/cron-expression).

func (EcsInvocationOutput) InstanceIds

The list of instances to execute the command. You can specify up to 50 instance IDs.

func (EcsInvocationOutput) Parameters

func (o EcsInvocationOutput) Parameters() pulumi.MapOutput

The key-value pairs of custom parameters to be passed in when the custom parameter feature is enabled. Number of custom parameters: 0 to 10.

func (EcsInvocationOutput) RepeatMode

func (o EcsInvocationOutput) RepeatMode() pulumi.StringOutput

Specifies how to run the command. Valid values: `Once`, `Period`, `NextRebootOnly`, `EveryReboot`. Default value: When `timed` is set to false and Frequency is not specified, the default value of `repeatMode` is `Once`. When `Timed` is set to true and Frequency is specified, `period` is used as the value of RepeatMode regardless of whether `repeatMode` is specified.

func (EcsInvocationOutput) Status

The status of the resource.

func (EcsInvocationOutput) Timed

Specifies whether to periodically run the command. Default value: `false`.

func (EcsInvocationOutput) ToEcsInvocationOutput

func (o EcsInvocationOutput) ToEcsInvocationOutput() EcsInvocationOutput

func (EcsInvocationOutput) ToEcsInvocationOutputWithContext

func (o EcsInvocationOutput) ToEcsInvocationOutputWithContext(ctx context.Context) EcsInvocationOutput

func (EcsInvocationOutput) Username

The username that is used to run the command on the ECS instance. * For Linux instances, the root username is used. * For Windows instances, the System username is used. * You can also specify other usernames that already exist in the ECS instance to run the command. It is more secure to run Cloud Assistant commands as a regular user. For more information, see [Configure a regular user to run Cloud Assistant commands](https://www.alibabacloud.com/help/en/elastic-compute-service/latest/run-cloud-assistant-commands-as-a-regular-user).

func (EcsInvocationOutput) WindowsPasswordName

func (o EcsInvocationOutput) WindowsPasswordName() pulumi.StringPtrOutput

The name of the password used to run the command on a Windows instance.

type EcsInvocationState

type EcsInvocationState struct {
	// The ID of the command.
	CommandId pulumi.StringPtrInput
	// The schedule on which the recurring execution of the command takes place. Take note of the following items:
	// * The interval between two consecutive executions must be 10 seconds or longer. The minimum interval cannot be less than the timeout period of the execution.
	// * When you set Timed to true, you must specify Frequency.
	// * The value of the Frequency parameter is a cron expression. For more information, see [Cron expression](https://www.alibabacloud.com/help/en/elastic-compute-service/latest/cron-expression).
	Frequency pulumi.StringPtrInput
	// The list of instances to execute the command. You can specify up to 50 instance IDs.
	InstanceIds pulumi.StringArrayInput
	// The key-value pairs of custom parameters to be passed in when the custom parameter feature is enabled.  Number of custom parameters: 0 to 10.
	Parameters pulumi.MapInput
	// Specifies how to run the command. Valid values: `Once`, `Period`, `NextRebootOnly`, `EveryReboot`. Default value: When `timed` is set to false and Frequency is not specified, the default value of `repeatMode` is `Once`. When `Timed` is set to true and Frequency is specified, `period` is used as the value of RepeatMode regardless of whether `repeatMode` is specified.
	RepeatMode pulumi.StringPtrInput
	// The status of the resource.
	Status pulumi.StringPtrInput
	// Specifies whether to periodically run the command. Default value: `false`.
	Timed pulumi.BoolPtrInput
	// The username that is used to run the command on the ECS instance.
	// * For Linux instances, the root username is used.
	// * For Windows instances, the System username is used.
	// * You can also specify other usernames that already exist in the ECS instance to run the command. It is more secure to run Cloud Assistant commands as a regular user. For more information, see [Configure a regular user to run Cloud Assistant commands](https://www.alibabacloud.com/help/en/elastic-compute-service/latest/run-cloud-assistant-commands-as-a-regular-user).
	Username pulumi.StringPtrInput
	// The name of the password used to run the command on a Windows instance.
	WindowsPasswordName pulumi.StringPtrInput
}

func (EcsInvocationState) ElementType

func (EcsInvocationState) ElementType() reflect.Type

type EcsKeyPair

type EcsKeyPair struct {
	pulumi.CustomResourceState

	FingerPrint pulumi.StringOutput `pulumi:"fingerPrint"`
	// The key file.
	KeyFile pulumi.StringPtrOutput `pulumi:"keyFile"`
	// Field `keyName` has been deprecated from provider version 1.121.0. New field `keyPairName` instead.
	//
	// Deprecated: Field 'key_name' has been deprecated from provider version 1.121.0. New field 'key_pair_name' instead.
	KeyName       pulumi.StringOutput    `pulumi:"keyName"`
	KeyNamePrefix pulumi.StringPtrOutput `pulumi:"keyNamePrefix"`
	// The key pair's name. It is the only in one Alicloud account, the key pair's name. must be 2 to 128 characters in length, and can contain letters, digits, periods (.), underscores (_), and hyphens (-). The name must start with a letter.
	KeyPairName pulumi.StringOutput `pulumi:"keyPairName"`
	// You can import an existing public key and using Alicloud key pair to manage it. If this parameter is specified, `resourceGroupId` is the key pair belongs.
	PublicKey pulumi.StringPtrOutput `pulumi:"publicKey"`
	// The Id of resource group which the key pair belongs.
	ResourceGroupId pulumi.StringPtrOutput `pulumi:"resourceGroupId"`
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapOutput `pulumi:"tags"`
}

Provides a ECS Key Pair resource.

For information about ECS Key Pair and how to use it, see [What is Key Pair](https://www.alibabacloud.com/help/en/doc-detail/51771.htm).

> **NOTE:** Available in v1.121.0+.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ecs.NewEcsKeyPair(ctx, "example", &ecs.EcsKeyPairArgs{
			KeyPairName: pulumi.String("key_pair_name"),
		})
		if err != nil {
			return err
		}
		_, err = ecs.NewEcsKeyPair(ctx, "prefix", &ecs.EcsKeyPairArgs{
			KeyNamePrefix: pulumi.String("terraform-test-key-pair-prefix"),
		})
		if err != nil {
			return err
		}
		_, err = ecs.NewEcsKeyPair(ctx, "publickey", &ecs.EcsKeyPairArgs{
			KeyPairName: pulumi.String("my_public_key"),
			PublicKey:   pulumi.String("ssh-rsa AAAAB3Nza12345678qwertyuudsfsg"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

ECS Key Pair can be imported using the id, e.g.

```sh

$ pulumi import alicloud:ecs/ecsKeyPair:EcsKeyPair example <key_name>

```

func GetEcsKeyPair

func GetEcsKeyPair(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *EcsKeyPairState, opts ...pulumi.ResourceOption) (*EcsKeyPair, error)

GetEcsKeyPair gets an existing EcsKeyPair 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 NewEcsKeyPair

func NewEcsKeyPair(ctx *pulumi.Context,
	name string, args *EcsKeyPairArgs, opts ...pulumi.ResourceOption) (*EcsKeyPair, error)

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

func (*EcsKeyPair) ElementType

func (*EcsKeyPair) ElementType() reflect.Type

func (*EcsKeyPair) ToEcsKeyPairOutput

func (i *EcsKeyPair) ToEcsKeyPairOutput() EcsKeyPairOutput

func (*EcsKeyPair) ToEcsKeyPairOutputWithContext

func (i *EcsKeyPair) ToEcsKeyPairOutputWithContext(ctx context.Context) EcsKeyPairOutput

type EcsKeyPairArgs

type EcsKeyPairArgs struct {
	// The key file.
	KeyFile pulumi.StringPtrInput
	// Field `keyName` has been deprecated from provider version 1.121.0. New field `keyPairName` instead.
	//
	// Deprecated: Field 'key_name' has been deprecated from provider version 1.121.0. New field 'key_pair_name' instead.
	KeyName       pulumi.StringPtrInput
	KeyNamePrefix pulumi.StringPtrInput
	// The key pair's name. It is the only in one Alicloud account, the key pair's name. must be 2 to 128 characters in length, and can contain letters, digits, periods (.), underscores (_), and hyphens (-). The name must start with a letter.
	KeyPairName pulumi.StringPtrInput
	// You can import an existing public key and using Alicloud key pair to manage it. If this parameter is specified, `resourceGroupId` is the key pair belongs.
	PublicKey pulumi.StringPtrInput
	// The Id of resource group which the key pair belongs.
	ResourceGroupId pulumi.StringPtrInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapInput
}

The set of arguments for constructing a EcsKeyPair resource.

func (EcsKeyPairArgs) ElementType

func (EcsKeyPairArgs) ElementType() reflect.Type

type EcsKeyPairArray

type EcsKeyPairArray []EcsKeyPairInput

func (EcsKeyPairArray) ElementType

func (EcsKeyPairArray) ElementType() reflect.Type

func (EcsKeyPairArray) ToEcsKeyPairArrayOutput

func (i EcsKeyPairArray) ToEcsKeyPairArrayOutput() EcsKeyPairArrayOutput

func (EcsKeyPairArray) ToEcsKeyPairArrayOutputWithContext

func (i EcsKeyPairArray) ToEcsKeyPairArrayOutputWithContext(ctx context.Context) EcsKeyPairArrayOutput

type EcsKeyPairArrayInput

type EcsKeyPairArrayInput interface {
	pulumi.Input

	ToEcsKeyPairArrayOutput() EcsKeyPairArrayOutput
	ToEcsKeyPairArrayOutputWithContext(context.Context) EcsKeyPairArrayOutput
}

EcsKeyPairArrayInput is an input type that accepts EcsKeyPairArray and EcsKeyPairArrayOutput values. You can construct a concrete instance of `EcsKeyPairArrayInput` via:

EcsKeyPairArray{ EcsKeyPairArgs{...} }

type EcsKeyPairArrayOutput

type EcsKeyPairArrayOutput struct{ *pulumi.OutputState }

func (EcsKeyPairArrayOutput) ElementType

func (EcsKeyPairArrayOutput) ElementType() reflect.Type

func (EcsKeyPairArrayOutput) Index

func (EcsKeyPairArrayOutput) ToEcsKeyPairArrayOutput

func (o EcsKeyPairArrayOutput) ToEcsKeyPairArrayOutput() EcsKeyPairArrayOutput

func (EcsKeyPairArrayOutput) ToEcsKeyPairArrayOutputWithContext

func (o EcsKeyPairArrayOutput) ToEcsKeyPairArrayOutputWithContext(ctx context.Context) EcsKeyPairArrayOutput

type EcsKeyPairAttachment

type EcsKeyPairAttachment struct {
	pulumi.CustomResourceState

	// Set it to true and it will reboot instances which attached with the key pair to make key pair affect immediately.
	Force pulumi.BoolPtrOutput `pulumi:"force"`
	// The list of ECS instance's IDs.
	InstanceIds pulumi.StringArrayOutput `pulumi:"instanceIds"`
	// Deprecated: Field 'key_name' has been deprecated from provider version 1.121.0. New field 'key_pair_name' instead.
	KeyName pulumi.StringOutput `pulumi:"keyName"`
	// The name of key pair used to bind.
	KeyPairName pulumi.StringOutput `pulumi:"keyPairName"`
}

Provides a ECS Key Pair Attachment resource.

For information about ECS Key Pair Attachment and how to use it, see [What is Key Pair Attachment](https://www.alibabacloud.com/help/en/doc-detail/51775.htm).

> **NOTE:** Available in v1.121.0+.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ecs.NewEcsKeyPairAttachment(ctx, "example", &ecs.EcsKeyPairAttachmentArgs{
			KeyPairName: pulumi.String("key_pair_name"),
			InstanceIds: pulumi.StringArray{
				pulumi.Any(i_gw80pxxxxxxxxxx),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

ECS Key Pair Attachment can be imported using the id, e.g.

```sh

$ pulumi import alicloud:ecs/ecsKeyPairAttachment:EcsKeyPairAttachment example <key_pair_name>:<instance_ids>

```

func GetEcsKeyPairAttachment

func GetEcsKeyPairAttachment(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *EcsKeyPairAttachmentState, opts ...pulumi.ResourceOption) (*EcsKeyPairAttachment, error)

GetEcsKeyPairAttachment gets an existing EcsKeyPairAttachment 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 NewEcsKeyPairAttachment

func NewEcsKeyPairAttachment(ctx *pulumi.Context,
	name string, args *EcsKeyPairAttachmentArgs, opts ...pulumi.ResourceOption) (*EcsKeyPairAttachment, error)

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

func (*EcsKeyPairAttachment) ElementType

func (*EcsKeyPairAttachment) ElementType() reflect.Type

func (*EcsKeyPairAttachment) ToEcsKeyPairAttachmentOutput

func (i *EcsKeyPairAttachment) ToEcsKeyPairAttachmentOutput() EcsKeyPairAttachmentOutput

func (*EcsKeyPairAttachment) ToEcsKeyPairAttachmentOutputWithContext

func (i *EcsKeyPairAttachment) ToEcsKeyPairAttachmentOutputWithContext(ctx context.Context) EcsKeyPairAttachmentOutput

type EcsKeyPairAttachmentArgs

type EcsKeyPairAttachmentArgs struct {
	// Set it to true and it will reboot instances which attached with the key pair to make key pair affect immediately.
	Force pulumi.BoolPtrInput
	// The list of ECS instance's IDs.
	InstanceIds pulumi.StringArrayInput
	// Deprecated: Field 'key_name' has been deprecated from provider version 1.121.0. New field 'key_pair_name' instead.
	KeyName pulumi.StringPtrInput
	// The name of key pair used to bind.
	KeyPairName pulumi.StringPtrInput
}

The set of arguments for constructing a EcsKeyPairAttachment resource.

func (EcsKeyPairAttachmentArgs) ElementType

func (EcsKeyPairAttachmentArgs) ElementType() reflect.Type

type EcsKeyPairAttachmentArray

type EcsKeyPairAttachmentArray []EcsKeyPairAttachmentInput

func (EcsKeyPairAttachmentArray) ElementType

func (EcsKeyPairAttachmentArray) ElementType() reflect.Type

func (EcsKeyPairAttachmentArray) ToEcsKeyPairAttachmentArrayOutput

func (i EcsKeyPairAttachmentArray) ToEcsKeyPairAttachmentArrayOutput() EcsKeyPairAttachmentArrayOutput

func (EcsKeyPairAttachmentArray) ToEcsKeyPairAttachmentArrayOutputWithContext

func (i EcsKeyPairAttachmentArray) ToEcsKeyPairAttachmentArrayOutputWithContext(ctx context.Context) EcsKeyPairAttachmentArrayOutput

type EcsKeyPairAttachmentArrayInput

type EcsKeyPairAttachmentArrayInput interface {
	pulumi.Input

	ToEcsKeyPairAttachmentArrayOutput() EcsKeyPairAttachmentArrayOutput
	ToEcsKeyPairAttachmentArrayOutputWithContext(context.Context) EcsKeyPairAttachmentArrayOutput
}

EcsKeyPairAttachmentArrayInput is an input type that accepts EcsKeyPairAttachmentArray and EcsKeyPairAttachmentArrayOutput values. You can construct a concrete instance of `EcsKeyPairAttachmentArrayInput` via:

EcsKeyPairAttachmentArray{ EcsKeyPairAttachmentArgs{...} }

type EcsKeyPairAttachmentArrayOutput

type EcsKeyPairAttachmentArrayOutput struct{ *pulumi.OutputState }

func (EcsKeyPairAttachmentArrayOutput) ElementType

func (EcsKeyPairAttachmentArrayOutput) Index

func (EcsKeyPairAttachmentArrayOutput) ToEcsKeyPairAttachmentArrayOutput

func (o EcsKeyPairAttachmentArrayOutput) ToEcsKeyPairAttachmentArrayOutput() EcsKeyPairAttachmentArrayOutput

func (EcsKeyPairAttachmentArrayOutput) ToEcsKeyPairAttachmentArrayOutputWithContext

func (o EcsKeyPairAttachmentArrayOutput) ToEcsKeyPairAttachmentArrayOutputWithContext(ctx context.Context) EcsKeyPairAttachmentArrayOutput

type EcsKeyPairAttachmentInput

type EcsKeyPairAttachmentInput interface {
	pulumi.Input

	ToEcsKeyPairAttachmentOutput() EcsKeyPairAttachmentOutput
	ToEcsKeyPairAttachmentOutputWithContext(ctx context.Context) EcsKeyPairAttachmentOutput
}

type EcsKeyPairAttachmentMap

type EcsKeyPairAttachmentMap map[string]EcsKeyPairAttachmentInput

func (EcsKeyPairAttachmentMap) ElementType

func (EcsKeyPairAttachmentMap) ElementType() reflect.Type

func (EcsKeyPairAttachmentMap) ToEcsKeyPairAttachmentMapOutput

func (i EcsKeyPairAttachmentMap) ToEcsKeyPairAttachmentMapOutput() EcsKeyPairAttachmentMapOutput

func (EcsKeyPairAttachmentMap) ToEcsKeyPairAttachmentMapOutputWithContext

func (i EcsKeyPairAttachmentMap) ToEcsKeyPairAttachmentMapOutputWithContext(ctx context.Context) EcsKeyPairAttachmentMapOutput

type EcsKeyPairAttachmentMapInput

type EcsKeyPairAttachmentMapInput interface {
	pulumi.Input

	ToEcsKeyPairAttachmentMapOutput() EcsKeyPairAttachmentMapOutput
	ToEcsKeyPairAttachmentMapOutputWithContext(context.Context) EcsKeyPairAttachmentMapOutput
}

EcsKeyPairAttachmentMapInput is an input type that accepts EcsKeyPairAttachmentMap and EcsKeyPairAttachmentMapOutput values. You can construct a concrete instance of `EcsKeyPairAttachmentMapInput` via:

EcsKeyPairAttachmentMap{ "key": EcsKeyPairAttachmentArgs{...} }

type EcsKeyPairAttachmentMapOutput

type EcsKeyPairAttachmentMapOutput struct{ *pulumi.OutputState }

func (EcsKeyPairAttachmentMapOutput) ElementType

func (EcsKeyPairAttachmentMapOutput) MapIndex

func (EcsKeyPairAttachmentMapOutput) ToEcsKeyPairAttachmentMapOutput

func (o EcsKeyPairAttachmentMapOutput) ToEcsKeyPairAttachmentMapOutput() EcsKeyPairAttachmentMapOutput

func (EcsKeyPairAttachmentMapOutput) ToEcsKeyPairAttachmentMapOutputWithContext

func (o EcsKeyPairAttachmentMapOutput) ToEcsKeyPairAttachmentMapOutputWithContext(ctx context.Context) EcsKeyPairAttachmentMapOutput

type EcsKeyPairAttachmentOutput

type EcsKeyPairAttachmentOutput struct{ *pulumi.OutputState }

func (EcsKeyPairAttachmentOutput) ElementType

func (EcsKeyPairAttachmentOutput) ElementType() reflect.Type

func (EcsKeyPairAttachmentOutput) Force

Set it to true and it will reboot instances which attached with the key pair to make key pair affect immediately.

func (EcsKeyPairAttachmentOutput) InstanceIds

The list of ECS instance's IDs.

func (EcsKeyPairAttachmentOutput) KeyName deprecated

Deprecated: Field 'key_name' has been deprecated from provider version 1.121.0. New field 'key_pair_name' instead.

func (EcsKeyPairAttachmentOutput) KeyPairName

The name of key pair used to bind.

func (EcsKeyPairAttachmentOutput) ToEcsKeyPairAttachmentOutput

func (o EcsKeyPairAttachmentOutput) ToEcsKeyPairAttachmentOutput() EcsKeyPairAttachmentOutput

func (EcsKeyPairAttachmentOutput) ToEcsKeyPairAttachmentOutputWithContext

func (o EcsKeyPairAttachmentOutput) ToEcsKeyPairAttachmentOutputWithContext(ctx context.Context) EcsKeyPairAttachmentOutput

type EcsKeyPairAttachmentState

type EcsKeyPairAttachmentState struct {
	// Set it to true and it will reboot instances which attached with the key pair to make key pair affect immediately.
	Force pulumi.BoolPtrInput
	// The list of ECS instance's IDs.
	InstanceIds pulumi.StringArrayInput
	// Deprecated: Field 'key_name' has been deprecated from provider version 1.121.0. New field 'key_pair_name' instead.
	KeyName pulumi.StringPtrInput
	// The name of key pair used to bind.
	KeyPairName pulumi.StringPtrInput
}

func (EcsKeyPairAttachmentState) ElementType

func (EcsKeyPairAttachmentState) ElementType() reflect.Type

type EcsKeyPairInput

type EcsKeyPairInput interface {
	pulumi.Input

	ToEcsKeyPairOutput() EcsKeyPairOutput
	ToEcsKeyPairOutputWithContext(ctx context.Context) EcsKeyPairOutput
}

type EcsKeyPairMap

type EcsKeyPairMap map[string]EcsKeyPairInput

func (EcsKeyPairMap) ElementType

func (EcsKeyPairMap) ElementType() reflect.Type

func (EcsKeyPairMap) ToEcsKeyPairMapOutput

func (i EcsKeyPairMap) ToEcsKeyPairMapOutput() EcsKeyPairMapOutput

func (EcsKeyPairMap) ToEcsKeyPairMapOutputWithContext

func (i EcsKeyPairMap) ToEcsKeyPairMapOutputWithContext(ctx context.Context) EcsKeyPairMapOutput

type EcsKeyPairMapInput

type EcsKeyPairMapInput interface {
	pulumi.Input

	ToEcsKeyPairMapOutput() EcsKeyPairMapOutput
	ToEcsKeyPairMapOutputWithContext(context.Context) EcsKeyPairMapOutput
}

EcsKeyPairMapInput is an input type that accepts EcsKeyPairMap and EcsKeyPairMapOutput values. You can construct a concrete instance of `EcsKeyPairMapInput` via:

EcsKeyPairMap{ "key": EcsKeyPairArgs{...} }

type EcsKeyPairMapOutput

type EcsKeyPairMapOutput struct{ *pulumi.OutputState }

func (EcsKeyPairMapOutput) ElementType

func (EcsKeyPairMapOutput) ElementType() reflect.Type

func (EcsKeyPairMapOutput) MapIndex

func (EcsKeyPairMapOutput) ToEcsKeyPairMapOutput

func (o EcsKeyPairMapOutput) ToEcsKeyPairMapOutput() EcsKeyPairMapOutput

func (EcsKeyPairMapOutput) ToEcsKeyPairMapOutputWithContext

func (o EcsKeyPairMapOutput) ToEcsKeyPairMapOutputWithContext(ctx context.Context) EcsKeyPairMapOutput

type EcsKeyPairOutput

type EcsKeyPairOutput struct{ *pulumi.OutputState }

func (EcsKeyPairOutput) ElementType

func (EcsKeyPairOutput) ElementType() reflect.Type

func (EcsKeyPairOutput) FingerPrint

func (o EcsKeyPairOutput) FingerPrint() pulumi.StringOutput

func (EcsKeyPairOutput) KeyFile

The key file.

func (EcsKeyPairOutput) KeyName deprecated

func (o EcsKeyPairOutput) KeyName() pulumi.StringOutput

Field `keyName` has been deprecated from provider version 1.121.0. New field `keyPairName` instead.

Deprecated: Field 'key_name' has been deprecated from provider version 1.121.0. New field 'key_pair_name' instead.

func (EcsKeyPairOutput) KeyNamePrefix

func (o EcsKeyPairOutput) KeyNamePrefix() pulumi.StringPtrOutput

func (EcsKeyPairOutput) KeyPairName

func (o EcsKeyPairOutput) KeyPairName() pulumi.StringOutput

The key pair's name. It is the only in one Alicloud account, the key pair's name. must be 2 to 128 characters in length, and can contain letters, digits, periods (.), underscores (_), and hyphens (-). The name must start with a letter.

func (EcsKeyPairOutput) PublicKey

func (o EcsKeyPairOutput) PublicKey() pulumi.StringPtrOutput

You can import an existing public key and using Alicloud key pair to manage it. If this parameter is specified, `resourceGroupId` is the key pair belongs.

func (EcsKeyPairOutput) ResourceGroupId

func (o EcsKeyPairOutput) ResourceGroupId() pulumi.StringPtrOutput

The Id of resource group which the key pair belongs.

func (EcsKeyPairOutput) Tags

A mapping of tags to assign to the resource.

func (EcsKeyPairOutput) ToEcsKeyPairOutput

func (o EcsKeyPairOutput) ToEcsKeyPairOutput() EcsKeyPairOutput

func (EcsKeyPairOutput) ToEcsKeyPairOutputWithContext

func (o EcsKeyPairOutput) ToEcsKeyPairOutputWithContext(ctx context.Context) EcsKeyPairOutput

type EcsKeyPairState

type EcsKeyPairState struct {
	FingerPrint pulumi.StringPtrInput
	// The key file.
	KeyFile pulumi.StringPtrInput
	// Field `keyName` has been deprecated from provider version 1.121.0. New field `keyPairName` instead.
	//
	// Deprecated: Field 'key_name' has been deprecated from provider version 1.121.0. New field 'key_pair_name' instead.
	KeyName       pulumi.StringPtrInput
	KeyNamePrefix pulumi.StringPtrInput
	// The key pair's name. It is the only in one Alicloud account, the key pair's name. must be 2 to 128 characters in length, and can contain letters, digits, periods (.), underscores (_), and hyphens (-). The name must start with a letter.
	KeyPairName pulumi.StringPtrInput
	// You can import an existing public key and using Alicloud key pair to manage it. If this parameter is specified, `resourceGroupId` is the key pair belongs.
	PublicKey pulumi.StringPtrInput
	// The Id of resource group which the key pair belongs.
	ResourceGroupId pulumi.StringPtrInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapInput
}

func (EcsKeyPairState) ElementType

func (EcsKeyPairState) ElementType() reflect.Type

type EcsLaunchTemplate

type EcsLaunchTemplate struct {
	pulumi.CustomResourceState

	// Instance auto release time. The time is presented using the ISO8601 standard and in UTC time. The format is  YYYY-MM-DDTHH:MM:SSZ.
	AutoReleaseTime pulumi.StringPtrOutput `pulumi:"autoReleaseTime"`
	// The list of data disks created with instance.
	DataDisks EcsLaunchTemplateDataDiskArrayOutput `pulumi:"dataDisks"`
	// The Deployment Set Id.
	DeploymentSetId pulumi.StringPtrOutput `pulumi:"deploymentSetId"`
	// The description of the data disk.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// Whether to enable the instance operating system configuration.
	EnableVmOsConfig pulumi.BoolPtrOutput `pulumi:"enableVmOsConfig"`
	// Instance host name.It cannot start or end with a period (.) or a hyphen (-) and it cannot have two or more consecutive periods (.) or hyphens (-).For Windows: The host name can be [2, 15] characters in length. It can contain A-Z, a-z, numbers, periods (.), and hyphens (-). It cannot only contain numbers. For other operating systems: The host name can be [2, 64] characters in length. It can be segments separated by periods (.). It can contain A-Z, a-z, numbers, and hyphens (-).
	HostName pulumi.StringPtrOutput `pulumi:"hostName"`
	// The Image ID.
	ImageId pulumi.StringPtrOutput `pulumi:"imageId"`
	// Mirror source. Valid values: `system`, `self`, `others`, `marketplace`, `""`. Default to: `""`.
	ImageOwnerAlias pulumi.StringPtrOutput `pulumi:"imageOwnerAlias"`
	// Billing methods. Valid values: `PostPaid`, `PrePaid`.
	InstanceChargeType pulumi.StringPtrOutput `pulumi:"instanceChargeType"`
	// The name of the instance. The name must be 2 to 128 characters in length. It must start with a letter and cannot start with http:// or https://. It can contain letters, digits, colons (:), underscores (_), and hyphens (-).
	InstanceName pulumi.StringPtrOutput `pulumi:"instanceName"`
	// Instance type. For more information, call resourceAlicloudInstances to obtain the latest instance type list.
	InstanceType pulumi.StringPtrOutput `pulumi:"instanceType"`
	// Internet bandwidth billing method. Valid values: `PayByTraffic`, `PayByBandwidth`.
	InternetChargeType pulumi.StringPtrOutput `pulumi:"internetChargeType"`
	// The maximum inbound bandwidth from the Internet network, measured in Mbit/s. Value range: [1, 200].
	InternetMaxBandwidthIn pulumi.IntOutput `pulumi:"internetMaxBandwidthIn"`
	// Maximum outbound bandwidth from the Internet, its unit of measurement is Mbit/s. Value range: [0, 100].
	InternetMaxBandwidthOut pulumi.IntPtrOutput `pulumi:"internetMaxBandwidthOut"`
	// Whether it is an I/O-optimized instance or not. Valid values: `none`, `optimized`.
	IoOptimized pulumi.StringPtrOutput `pulumi:"ioOptimized"`
	// The name of the key pair.
	// - Ignore this parameter for Windows instances. It is null by default. Even if you enter this parameter, only the  Password content is used.
	// - The password logon method for Linux instances is set to forbidden upon initialization.
	KeyPairName pulumi.StringPtrOutput `pulumi:"keyPairName"`
	// The name of Launch Template.
	LaunchTemplateName pulumi.StringOutput `pulumi:"launchTemplateName"`
	// The name of the data disk.
	//
	// Deprecated: Field 'name' has been deprecated from provider version 1.120.0. New field 'launch_template_name' instead.
	Name pulumi.StringOutput `pulumi:"name"`
	// The list of network interfaces created with instance.
	NetworkInterfaces EcsLaunchTemplateNetworkInterfacesPtrOutput `pulumi:"networkInterfaces"`
	// Network type of the instance. Valid values: `classic`, `vpc`.
	NetworkType pulumi.StringPtrOutput `pulumi:"networkType"`
	// Whether to use the password preset by the mirror.
	PasswordInherit pulumi.BoolPtrOutput `pulumi:"passwordInherit"`
	// The subscription period of the instance. Unit: months. This parameter takes effect and is required only when InstanceChargeType is set to PrePaid. If the DedicatedHostId parameter is specified, the value of the Period parameter must be within the subscription period of the dedicated host.
	// - When the PeriodUnit parameter is set to `Week`, the valid values of the Period parameter are `1`, `2`, `3`, and `4`.
	// - When the PeriodUnit parameter is set to `Month`, the valid values of the Period parameter are `1`, `2`, `3`, `4`, `5`, `6`, `7`, `8`, `9`, `12`, `24`, `36`, `48`, and `60`.
	Period pulumi.IntPtrOutput `pulumi:"period"`
	// The private IP address of the instance.
	PrivateIpAddress pulumi.StringPtrOutput `pulumi:"privateIpAddress"`
	// The RAM role name of the instance. You can use the RAM API ListRoles to query instance RAM role names.
	RamRoleName pulumi.StringPtrOutput `pulumi:"ramRoleName"`
	// The ID of the resource group to which to assign the instance, Elastic Block Storage (EBS) device, and ENI.
	ResourceGroupId pulumi.StringPtrOutput `pulumi:"resourceGroupId"`
	// Whether or not to activate the security enhancement feature and install network security software free of charge. Valid values: `Active`, `Deactive`.
	SecurityEnhancementStrategy pulumi.StringPtrOutput `pulumi:"securityEnhancementStrategy"`
	// The security group ID must be one in the same VPC.
	SecurityGroupId pulumi.StringPtrOutput `pulumi:"securityGroupId"`
	// The ID of security group N to which to assign the instance.
	SecurityGroupIds pulumi.StringArrayOutput `pulumi:"securityGroupIds"`
	// The protection period of the preemptible instance. Unit: hours. Valid values: `0`, `1`, `2`, `3`, `4`, `5`, and `6`. Default to: `1`.
	SpotDuration pulumi.StringPtrOutput `pulumi:"spotDuration"`
	// -(Optional) Sets the maximum hourly instance price. Supports up to three decimal places.
	SpotPriceLimit pulumi.Float64PtrOutput `pulumi:"spotPriceLimit"`
	// The spot strategy for a Pay-As-You-Go instance. This parameter is valid and required only when InstanceChargeType is set to PostPaid. Valid values: `NoSpot`, `SpotAsPriceGo`, `SpotWithPriceLimit`.
	SpotStrategy pulumi.StringPtrOutput `pulumi:"spotStrategy"`
	// The System Disk.
	SystemDisk EcsLaunchTemplateSystemDiskOutput `pulumi:"systemDisk"`
	// It has been deprecated from version 1.120.0, and use field `systemDisk` instead.
	//
	// Deprecated: Field 'system_disk_category' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.
	SystemDiskCategory pulumi.StringOutput `pulumi:"systemDiskCategory"`
	// It has been deprecated from version 1.120.0, and use field `systemDisk` instead.
	//
	// Deprecated: Field 'system_disk_description' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.
	SystemDiskDescription pulumi.StringOutput `pulumi:"systemDiskDescription"`
	// It has been deprecated from version 1.120.0, and use field `systemDisk` instead.
	//
	// Deprecated: Field 'system_disk_name' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.
	SystemDiskName pulumi.StringOutput `pulumi:"systemDiskName"`
	// It has been deprecated from version 1.120.0, and use field `systemDisk` instead.
	//
	// Deprecated: Field 'system_disk_size' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.
	SystemDiskSize pulumi.IntOutput `pulumi:"systemDiskSize"`
	// A mapping of tags to assign to instance, block storage, and elastic network.
	// - Key: It can be up to 64 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It cannot be a null string.
	// - Value: It can be up to 128 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It can be a null string.
	Tags pulumi.MapOutput `pulumi:"tags"`
	// The template resource group id.
	TemplateResourceGroupId pulumi.StringPtrOutput `pulumi:"templateResourceGroupId"`
	// A mapping of tags to assign to the launch template.
	TemplateTags pulumi.MapOutput `pulumi:"templateTags"`
	// The User Data.
	UserData pulumi.StringOutput `pulumi:"userData"`
	// It has been deprecated from version 1.120.0, and use field `userData` instead.
	//
	// Deprecated: Field 'userdata' has been deprecated from provider version 1.120.0. New field 'user_data' instead.
	Userdata pulumi.StringOutput `pulumi:"userdata"`
	// The description of the launch template version. The description must be 2 to 256 characters in length and cannot start with http:// or https://.
	VersionDescription pulumi.StringPtrOutput `pulumi:"versionDescription"`
	// The ID of the VPC.
	VpcId pulumi.StringOutput `pulumi:"vpcId"`
	// The VSwitch ID for ENI. The instance must be in the same zone of the same VPC network as the ENI, but they may belong to different VSwitches.
	VswitchId pulumi.StringPtrOutput `pulumi:"vswitchId"`
	// The zone ID of the instance.
	ZoneId pulumi.StringOutput `pulumi:"zoneId"`
}

Provides a ECS Launch Template resource.

For information about ECS Launch Template and how to use it, see [What is Launch Template](https://www.alibabacloud.com/help/en/doc-detail/74686.htm).

> **NOTE:** Available in v1.120.0+.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/go/alicloud/ecs"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ecs.NewEcsLaunchTemplate(ctx, "default", &ecs.EcsLaunchTemplateArgs{
			DataDisks: ecs.EcsLaunchTemplateDataDiskArray{
				&ecs.EcsLaunchTemplateDataDiskArgs{
					Category:           pulumi.String("cloud"),
					DeleteWithInstance: pulumi.Bool(true),
					Description:        pulumi.String("test1"),
					Encrypted:          pulumi.Bool(false),
					Name:               pulumi.String("disk1"),
					PerformanceLevel:   pulumi.String("PL0"),
					Size:               pulumi.Int(20),
				},
				&ecs.EcsLaunchTemplateDataDiskArgs{
					Category:           pulumi.String("cloud"),
					DeleteWithInstance: pulumi.Bool(true),
					Description:        pulumi.String("test2"),
					Encrypted:          pulumi.Bool(false),
					Name:               pulumi.String("disk2"),
					PerformanceLevel:   pulumi.String("PL0"),
					Size:               pulumi.Int(20),
				},
			},
			Description:             pulumi.String("Test For Terraform"),
			HostName:                pulumi.String("host_name"),
			ImageId:                 pulumi.String("m-bp1i3ucxxxxx"),
			InstanceChargeType:      pulumi.String("PrePaid"),
			InstanceName:            pulumi.String("instance_name"),
			InstanceType:            pulumi.String("instance_type"),
			InternetChargeType:      pulumi.String("PayByBandwidth"),
			InternetMaxBandwidthIn:  pulumi.Int(5),
			InternetMaxBandwidthOut: pulumi.Int(0),
			IoOptimized:             pulumi.String("optimized"),
			KeyPairName:             pulumi.String("key_pair_name"),
			LaunchTemplateName:      pulumi.String("tf_test_name"),
			NetworkInterfaces: &ecs.EcsLaunchTemplateNetworkInterfacesArgs{
				Description:     pulumi.String("hello1"),
				Name:            pulumi.String("eth0"),
				PrimaryIp:       pulumi.String("10.0.0.2"),
				SecurityGroupId: pulumi.String("sg-asdfnbgxxxxxxx"),
				VswitchId:       pulumi.String("vw-zkdfjaxxxxxx"),
			},
			NetworkType:                 pulumi.String("vpc"),
			RamRoleName:                 pulumi.String("ram_role_name"),
			ResourceGroupId:             pulumi.String("rg-zkdfjaxxxxxx"),
			SecurityEnhancementStrategy: pulumi.String("Active"),
			SecurityGroupIds: pulumi.StringArray{
				pulumi.String("sg-zkdfjaxxxxxx"),
			},
			SpotPriceLimit: pulumi.Float64(5),
			SpotStrategy:   pulumi.String("SpotWithPriceLimit"),
			SystemDisk: &ecs.EcsLaunchTemplateSystemDiskArgs{
				Category:           pulumi.String("cloud_ssd"),
				DeleteWithInstance: pulumi.Bool(false),
				Description:        pulumi.String("Test For Terraform"),
				Name:               pulumi.String("tf_test_name"),
				Size:               pulumi.Int(40),
			},
			TemplateTags: pulumi.AnyMap{
				"Create": pulumi.Any("Terraform"),
				"For":    pulumi.Any("Test"),
			},
			UserData:  pulumi.String("xxxxxxx"),
			VpcId:     pulumi.String("vpc-asdfnbgxxxxxxx"),
			VswitchId: pulumi.String("vw-zwxscaxxxxxx"),
			ZoneId:    pulumi.String("cn-hangzhou-i"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

ECS Launch Template can be imported using the id, e.g.

```sh

$ pulumi import alicloud:ecs/ecsLaunchTemplate:EcsLaunchTemplate example <id>

```

func GetEcsLaunchTemplate

func GetEcsLaunchTemplate(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *EcsLaunchTemplateState, opts ...pulumi.ResourceOption) (*EcsLaunchTemplate, error)

GetEcsLaunchTemplate gets an existing EcsLaunchTemplate 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 NewEcsLaunchTemplate

func NewEcsLaunchTemplate(ctx *pulumi.Context,
	name string, args *EcsLaunchTemplateArgs, opts ...pulumi.ResourceOption) (*EcsLaunchTemplate, error)

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

func (*EcsLaunchTemplate) ElementType

func (*EcsLaunchTemplate) ElementType() reflect.Type

func (*EcsLaunchTemplate) ToEcsLaunchTemplateOutput

func (i *EcsLaunchTemplate) ToEcsLaunchTemplateOutput() EcsLaunchTemplateOutput

func (*EcsLaunchTemplate) ToEcsLaunchTemplateOutputWithContext

func (i *EcsLaunchTemplate) ToEcsLaunchTemplateOutputWithContext(ctx context.Context) EcsLaunchTemplateOutput

type EcsLaunchTemplateArgs

type EcsLaunchTemplateArgs struct {
	// Instance auto release time. The time is presented using the ISO8601 standard and in UTC time. The format is  YYYY-MM-DDTHH:MM:SSZ.
	AutoReleaseTime pulumi.StringPtrInput
	// The list of data disks created with instance.
	DataDisks EcsLaunchTemplateDataDiskArrayInput
	// The Deployment Set Id.
	DeploymentSetId pulumi.StringPtrInput
	// The description of the data disk.
	Description pulumi.StringPtrInput
	// Whether to enable the instance operating system configuration.
	EnableVmOsConfig pulumi.BoolPtrInput
	// Instance host name.It cannot start or end with a period (.) or a hyphen (-) and it cannot have two or more consecutive periods (.) or hyphens (-).For Windows: The host name can be [2, 15] characters in length. It can contain A-Z, a-z, numbers, periods (.), and hyphens (-). It cannot only contain numbers. For other operating systems: The host name can be [2, 64] characters in length. It can be segments separated by periods (.). It can contain A-Z, a-z, numbers, and hyphens (-).
	HostName pulumi.StringPtrInput
	// The Image ID.
	ImageId pulumi.StringPtrInput
	// Mirror source. Valid values: `system`, `self`, `others`, `marketplace`, `""`. Default to: `""`.
	ImageOwnerAlias pulumi.StringPtrInput
	// Billing methods. Valid values: `PostPaid`, `PrePaid`.
	InstanceChargeType pulumi.StringPtrInput
	// The name of the instance. The name must be 2 to 128 characters in length. It must start with a letter and cannot start with http:// or https://. It can contain letters, digits, colons (:), underscores (_), and hyphens (-).
	InstanceName pulumi.StringPtrInput
	// Instance type. For more information, call resourceAlicloudInstances to obtain the latest instance type list.
	InstanceType pulumi.StringPtrInput
	// Internet bandwidth billing method. Valid values: `PayByTraffic`, `PayByBandwidth`.
	InternetChargeType pulumi.StringPtrInput
	// The maximum inbound bandwidth from the Internet network, measured in Mbit/s. Value range: [1, 200].
	InternetMaxBandwidthIn pulumi.IntPtrInput
	// Maximum outbound bandwidth from the Internet, its unit of measurement is Mbit/s. Value range: [0, 100].
	InternetMaxBandwidthOut pulumi.IntPtrInput
	// Whether it is an I/O-optimized instance or not. Valid values: `none`, `optimized`.
	IoOptimized pulumi.StringPtrInput
	// The name of the key pair.
	// - Ignore this parameter for Windows instances. It is null by default. Even if you enter this parameter, only the  Password content is used.
	// - The password logon method for Linux instances is set to forbidden upon initialization.
	KeyPairName pulumi.StringPtrInput
	// The name of Launch Template.
	LaunchTemplateName pulumi.StringPtrInput
	// The name of the data disk.
	//
	// Deprecated: Field 'name' has been deprecated from provider version 1.120.0. New field 'launch_template_name' instead.
	Name pulumi.StringPtrInput
	// The list of network interfaces created with instance.
	NetworkInterfaces EcsLaunchTemplateNetworkInterfacesPtrInput
	// Network type of the instance. Valid values: `classic`, `vpc`.
	NetworkType pulumi.StringPtrInput
	// Whether to use the password preset by the mirror.
	PasswordInherit pulumi.BoolPtrInput
	// The subscription period of the instance. Unit: months. This parameter takes effect and is required only when InstanceChargeType is set to PrePaid. If the DedicatedHostId parameter is specified, the value of the Period parameter must be within the subscription period of the dedicated host.
	// - When the PeriodUnit parameter is set to `Week`, the valid values of the Period parameter are `1`, `2`, `3`, and `4`.
	// - When the PeriodUnit parameter is set to `Month`, the valid values of the Period parameter are `1`, `2`, `3`, `4`, `5`, `6`, `7`, `8`, `9`, `12`, `24`, `36`, `48`, and `60`.
	Period pulumi.IntPtrInput
	// The private IP address of the instance.
	PrivateIpAddress pulumi.StringPtrInput
	// The RAM role name of the instance. You can use the RAM API ListRoles to query instance RAM role names.
	RamRoleName pulumi.StringPtrInput
	// The ID of the resource group to which to assign the instance, Elastic Block Storage (EBS) device, and ENI.
	ResourceGroupId pulumi.StringPtrInput
	// Whether or not to activate the security enhancement feature and install network security software free of charge. Valid values: `Active`, `Deactive`.
	SecurityEnhancementStrategy pulumi.StringPtrInput
	// The security group ID must be one in the same VPC.
	SecurityGroupId pulumi.StringPtrInput
	// The ID of security group N to which to assign the instance.
	SecurityGroupIds pulumi.StringArrayInput
	// The protection period of the preemptible instance. Unit: hours. Valid values: `0`, `1`, `2`, `3`, `4`, `5`, and `6`. Default to: `1`.
	SpotDuration pulumi.StringPtrInput
	// -(Optional) Sets the maximum hourly instance price. Supports up to three decimal places.
	SpotPriceLimit pulumi.Float64PtrInput
	// The spot strategy for a Pay-As-You-Go instance. This parameter is valid and required only when InstanceChargeType is set to PostPaid. Valid values: `NoSpot`, `SpotAsPriceGo`, `SpotWithPriceLimit`.
	SpotStrategy pulumi.StringPtrInput
	// The System Disk.
	SystemDisk EcsLaunchTemplateSystemDiskPtrInput
	// It has been deprecated from version 1.120.0, and use field `systemDisk` instead.
	//
	// Deprecated: Field 'system_disk_category' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.
	SystemDiskCategory pulumi.StringPtrInput
	// It has been deprecated from version 1.120.0, and use field `systemDisk` instead.
	//
	// Deprecated: Field 'system_disk_description' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.
	SystemDiskDescription pulumi.StringPtrInput
	// It has been deprecated from version 1.120.0, and use field `systemDisk` instead.
	//
	// Deprecated: Field 'system_disk_name' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.
	SystemDiskName pulumi.StringPtrInput
	// It has been deprecated from version 1.120.0, and use field `systemDisk` instead.
	//
	// Deprecated: Field 'system_disk_size' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.
	SystemDiskSize pulumi.IntPtrInput
	// A mapping of tags to assign to instance, block storage, and elastic network.
	// - Key: It can be up to 64 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It cannot be a null string.
	// - Value: It can be up to 128 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It can be a null string.
	Tags pulumi.MapInput
	// The template resource group id.
	TemplateResourceGroupId pulumi.StringPtrInput
	// A mapping of tags to assign to the launch template.
	TemplateTags pulumi.MapInput
	// The User Data.
	UserData pulumi.StringPtrInput
	// It has been deprecated from version 1.120.0, and use field `userData` instead.
	//
	// Deprecated: Field 'userdata' has been deprecated from provider version 1.120.0. New field 'user_data' instead.
	Userdata pulumi.StringPtrInput
	// The description of the launch template version. The description must be 2 to 256 characters in length and cannot start with http:// or https://.
	VersionDescription pulumi.StringPtrInput
	// The ID of the VPC.
	VpcId pulumi.StringPtrInput
	// The VSwitch ID for ENI. The instance must be in the same zone of the same VPC network as the ENI, but they may belong to different VSwitches.
	VswitchId pulumi.StringPtrInput
	// The zone ID of the instance.
	ZoneId pulumi.StringPtrInput
}

The set of arguments for constructing a EcsLaunchTemplate resource.

func (EcsLaunchTemplateArgs) ElementType

func (EcsLaunchTemplateArgs) ElementType() reflect.Type

type EcsLaunchTemplateArray

type EcsLaunchTemplateArray []EcsLaunchTemplateInput

func (EcsLaunchTemplateArray) ElementType

func (EcsLaunchTemplateArray) ElementType() reflect.Type

func (EcsLaunchTemplateArray) ToEcsLaunchTemplateArrayOutput

func (i EcsLaunchTemplateArray) ToEcsLaunchTemplateArrayOutput() EcsLaunchTemplateArrayOutput

func (EcsLaunchTemplateArray) ToEcsLaunchTemplateArrayOutputWithContext

func (i EcsLaunchTemplateArray) ToEcsLaunchTemplateArrayOutputWithContext(ctx context.Context) EcsLaunchTemplateArrayOutput

type EcsLaunchTemplateArrayInput

type EcsLaunchTemplateArrayInput interface {
	pulumi.Input

	ToEcsLaunchTemplateArrayOutput() EcsLaunchTemplateArrayOutput
	ToEcsLaunchTemplateArrayOutputWithContext(context.Context) EcsLaunchTemplateArrayOutput
}

EcsLaunchTemplateArrayInput is an input type that accepts EcsLaunchTemplateArray and EcsLaunchTemplateArrayOutput values. You can construct a concrete instance of `EcsLaunchTemplateArrayInput` via:

EcsLaunchTemplateArray{ EcsLaunchTemplateArgs{...} }

type EcsLaunchTemplateArrayOutput

type EcsLaunchTemplateArrayOutput struct{ *pulumi.OutputState }

func (EcsLaunchTemplateArrayOutput) ElementType

func (EcsLaunchTemplateArrayOutput) Index

func (EcsLaunchTemplateArrayOutput) ToEcsLaunchTemplateArrayOutput

func (o EcsLaunchTemplateArrayOutput) ToEcsLaunchTemplateArrayOutput() EcsLaunchTemplateArrayOutput

func (EcsLaunchTemplateArrayOutput) ToEcsLaunchTemplateArrayOutputWithContext

func (o EcsLaunchTemplateArrayOutput) ToEcsLaunchTemplateArrayOutputWithContext(ctx context.Context) EcsLaunchTemplateArrayOutput

type EcsLaunchTemplateDataDisk

type EcsLaunchTemplateDataDisk struct {
	// The category of the disk.
	Category *string `pulumi:"category"`
	// Indicates whether the data disk is released with the instance.
	DeleteWithInstance *bool `pulumi:"deleteWithInstance"`
	// The description of the data disk.
	Description *string `pulumi:"description"`
	// Encrypted the data in this disk.
	Encrypted *bool `pulumi:"encrypted"`
	// The name of the data disk.
	Name *string `pulumi:"name"`
	// The performance level of the ESSD used as the data disk.
	PerformanceLevel *string `pulumi:"performanceLevel"`
	// The size of the data disk.
	Size *int `pulumi:"size"`
	// The snapshot ID used to initialize the data disk. If the size specified by snapshot is greater that the size of the disk, use the size specified by snapshot as the size of the data disk.
	SnapshotId *string `pulumi:"snapshotId"`
}

type EcsLaunchTemplateDataDiskArgs

type EcsLaunchTemplateDataDiskArgs struct {
	// The category of the disk.
	Category pulumi.StringPtrInput `pulumi:"category"`
	// Indicates whether the data disk is released with the instance.
	DeleteWithInstance pulumi.BoolPtrInput `pulumi:"deleteWithInstance"`
	// The description of the data disk.
	Description pulumi.StringPtrInput `pulumi:"description"`
	// Encrypted the data in this disk.
	Encrypted pulumi.BoolPtrInput `pulumi:"encrypted"`
	// The name of the data disk.
	Name pulumi.StringPtrInput `pulumi:"name"`
	// The performance level of the ESSD used as the data disk.
	PerformanceLevel pulumi.StringPtrInput `pulumi:"performanceLevel"`
	// The size of the data disk.
	Size pulumi.IntPtrInput `pulumi:"size"`
	// The snapshot ID used to initialize the data disk. If the size specified by snapshot is greater that the size of the disk, use the size specified by snapshot as the size of the data disk.
	SnapshotId pulumi.StringPtrInput `pulumi:"snapshotId"`
}

func (EcsLaunchTemplateDataDiskArgs) ElementType

func (EcsLaunchTemplateDataDiskArgs) ToEcsLaunchTemplateDataDiskOutput

func (i EcsLaunchTemplateDataDiskArgs) ToEcsLaunchTemplateDataDiskOutput() EcsLaunchTemplateDataDiskOutput

func (EcsLaunchTemplateDataDiskArgs) ToEcsLaunchTemplateDataDiskOutputWithContext

func (i EcsLaunchTemplateDataDiskArgs) ToEcsLaunchTemplateDataDiskOutputWithContext(ctx context.Context) EcsLaunchTemplateDataDiskOutput

type EcsLaunchTemplateDataDiskArray

type EcsLaunchTemplateDataDiskArray []EcsLaunchTemplateDataDiskInput

func (EcsLaunchTemplateDataDiskArray) ElementType

func (EcsLaunchTemplateDataDiskArray) ToEcsLaunchTemplateDataDiskArrayOutput

func (i EcsLaunchTemplateDataDiskArray) ToEcsLaunchTemplateDataDiskArrayOutput() EcsLaunchTemplateDataDiskArrayOutput

func (EcsLaunchTemplateDataDiskArray) ToEcsLaunchTemplateDataDiskArrayOutputWithContext

func (i EcsLaunchTemplateDataDiskArray) ToEcsLaunchTemplateDataDiskArrayOutputWithContext(ctx context.Context) EcsLaunchTemplateDataDiskArrayOutput

type EcsLaunchTemplateDataDiskArrayInput

type EcsLaunchTemplateDataDiskArrayInput interface {
	pulumi.Input

	ToEcsLaunchTemplateDataDiskArrayOutput() EcsLaunchTemplateDataDiskArrayOutput
	ToEcsLaunchTemplateDataDiskArrayOutputWithContext(context.Context) EcsLaunchTemplateDataDiskArrayOutput
}

EcsLaunchTemplateDataDiskArrayInput is an input type that accepts EcsLaunchTemplateDataDiskArray and EcsLaunchTemplateDataDiskArrayOutput values. You can construct a concrete instance of `EcsLaunchTemplateDataDiskArrayInput` via:

EcsLaunchTemplateDataDiskArray{ EcsLaunchTemplateDataDiskArgs{...} }

type EcsLaunchTemplateDataDiskArrayOutput

type EcsLaunchTemplateDataDiskArrayOutput struct{ *pulumi.OutputState }

func (EcsLaunchTemplateDataDiskArrayOutput) ElementType

func (EcsLaunchTemplateDataDiskArrayOutput) Index

func (EcsLaunchTemplateDataDiskArrayOutput) ToEcsLaunchTemplateDataDiskArrayOutput

func (o EcsLaunchTemplateDataDiskArrayOutput) ToEcsLaunchTemplateDataDiskArrayOutput() EcsLaunchTemplateDataDiskArrayOutput

func (EcsLaunchTemplateDataDiskArrayOutput) ToEcsLaunchTemplateDataDiskArrayOutputWithContext

func (o EcsLaunchTemplateDataDiskArrayOutput) ToEcsLaunchTemplateDataDiskArrayOutputWithContext(ctx context.Context) EcsLaunchTemplateDataDiskArrayOutput

type EcsLaunchTemplateDataDiskInput

type EcsLaunchTemplateDataDiskInput interface {
	pulumi.Input

	ToEcsLaunchTemplateDataDiskOutput() EcsLaunchTemplateDataDiskOutput
	ToEcsLaunchTemplateDataDiskOutputWithContext(context.Context) EcsLaunchTemplateDataDiskOutput
}

EcsLaunchTemplateDataDiskInput is an input type that accepts EcsLaunchTemplateDataDiskArgs and EcsLaunchTemplateDataDiskOutput values. You can construct a concrete instance of `EcsLaunchTemplateDataDiskInput` via:

EcsLaunchTemplateDataDiskArgs{...}

type EcsLaunchTemplateDataDiskOutput

type EcsLaunchTemplateDataDiskOutput struct{ *pulumi.OutputState }

func (EcsLaunchTemplateDataDiskOutput) Category

The category of the disk.

func (EcsLaunchTemplateDataDiskOutput) DeleteWithInstance

func (o EcsLaunchTemplateDataDiskOutput) DeleteWithInstance() pulumi.BoolPtrOutput

Indicates whether the data disk is released with the instance.

func (EcsLaunchTemplateDataDiskOutput) Description

The description of the data disk.

func (EcsLaunchTemplateDataDiskOutput) ElementType

func (EcsLaunchTemplateDataDiskOutput) Encrypted

Encrypted the data in this disk.

func (EcsLaunchTemplateDataDiskOutput) Name

The name of the data disk.

func (EcsLaunchTemplateDataDiskOutput) PerformanceLevel

The performance level of the ESSD used as the data disk.

func (EcsLaunchTemplateDataDiskOutput) Size

The size of the data disk.

func (EcsLaunchTemplateDataDiskOutput) SnapshotId

The snapshot ID used to initialize the data disk. If the size specified by snapshot is greater that the size of the disk, use the size specified by snapshot as the size of the data disk.

func (EcsLaunchTemplateDataDiskOutput) ToEcsLaunchTemplateDataDiskOutput

func (o EcsLaunchTemplateDataDiskOutput) ToEcsLaunchTemplateDataDiskOutput() EcsLaunchTemplateDataDiskOutput

func (EcsLaunchTemplateDataDiskOutput) ToEcsLaunchTemplateDataDiskOutputWithContext

func (o EcsLaunchTemplateDataDiskOutput) ToEcsLaunchTemplateDataDiskOutputWithContext(ctx context.Context) EcsLaunchTemplateDataDiskOutput

type EcsLaunchTemplateInput

type EcsLaunchTemplateInput interface {
	pulumi.Input

	ToEcsLaunchTemplateOutput() EcsLaunchTemplateOutput
	ToEcsLaunchTemplateOutputWithContext(ctx context.Context) EcsLaunchTemplateOutput
}

type EcsLaunchTemplateMap

type EcsLaunchTemplateMap map[string]EcsLaunchTemplateInput

func (EcsLaunchTemplateMap) ElementType

func (EcsLaunchTemplateMap) ElementType() reflect.Type

func (EcsLaunchTemplateMap) ToEcsLaunchTemplateMapOutput

func (i EcsLaunchTemplateMap) ToEcsLaunchTemplateMapOutput() EcsLaunchTemplateMapOutput

func (EcsLaunchTemplateMap) ToEcsLaunchTemplateMapOutputWithContext

func (i EcsLaunchTemplateMap) ToEcsLaunchTemplateMapOutputWithContext(ctx context.Context) EcsLaunchTemplateMapOutput

type EcsLaunchTemplateMapInput

type EcsLaunchTemplateMapInput interface {
	pulumi.Input

	ToEcsLaunchTemplateMapOutput() EcsLaunchTemplateMapOutput
	ToEcsLaunchTemplateMapOutputWithContext(context.Context) EcsLaunchTemplateMapOutput
}

EcsLaunchTemplateMapInput is an input type that accepts EcsLaunchTemplateMap and EcsLaunchTemplateMapOutput values. You can construct a concrete instance of `EcsLaunchTemplateMapInput` via:

EcsLaunchTemplateMap{ "key": EcsLaunchTemplateArgs{...} }

type EcsLaunchTemplateMapOutput

type EcsLaunchTemplateMapOutput struct{ *pulumi.OutputState }

func (EcsLaunchTemplateMapOutput) ElementType

func (EcsLaunchTemplateMapOutput) ElementType() reflect.Type

func (EcsLaunchTemplateMapOutput) MapIndex

func (EcsLaunchTemplateMapOutput) ToEcsLaunchTemplateMapOutput

func (o EcsLaunchTemplateMapOutput) ToEcsLaunchTemplateMapOutput() EcsLaunchTemplateMapOutput

func (EcsLaunchTemplateMapOutput) ToEcsLaunchTemplateMapOutputWithContext

func (o EcsLaunchTemplateMapOutput) ToEcsLaunchTemplateMapOutputWithContext(ctx context.Context) EcsLaunchTemplateMapOutput

type EcsLaunchTemplateNetworkInterfaces

type EcsLaunchTemplateNetworkInterfaces struct {
	// The description of the data disk.
	Description *string `pulumi:"description"`
	// The name of the data disk.
	Name *string `pulumi:"name"`
	// The primary private IP address of the ENI.
	PrimaryIp *string `pulumi:"primaryIp"`
	// The security group ID must be one in the same VPC.
	SecurityGroupId *string `pulumi:"securityGroupId"`
	// The VSwitch ID for ENI. The instance must be in the same zone of the same VPC network as the ENI, but they may belong to different VSwitches.
	VswitchId *string `pulumi:"vswitchId"`
}

type EcsLaunchTemplateNetworkInterfacesArgs

type EcsLaunchTemplateNetworkInterfacesArgs struct {
	// The description of the data disk.
	Description pulumi.StringPtrInput `pulumi:"description"`
	// The name of the data disk.
	Name pulumi.StringPtrInput `pulumi:"name"`
	// The primary private IP address of the ENI.
	PrimaryIp pulumi.StringPtrInput `pulumi:"primaryIp"`
	// The security group ID must be one in the same VPC.
	SecurityGroupId pulumi.StringPtrInput `pulumi:"securityGroupId"`
	// The VSwitch ID for ENI. The instance must be in the same zone of the same VPC network as the ENI, but they may belong to different VSwitches.
	VswitchId pulumi.StringPtrInput `pulumi:"vswitchId"`
}

func (EcsLaunchTemplateNetworkInterfacesArgs) ElementType

func (EcsLaunchTemplateNetworkInterfacesArgs) ToEcsLaunchTemplateNetworkInterfacesOutput

func (i EcsLaunchTemplateNetworkInterfacesArgs) ToEcsLaunchTemplateNetworkInterfacesOutput() EcsLaunchTemplateNetworkInterfacesOutput

func (EcsLaunchTemplateNetworkInterfacesArgs) ToEcsLaunchTemplateNetworkInterfacesOutputWithContext

func (i EcsLaunchTemplateNetworkInterfacesArgs) ToEcsLaunchTemplateNetworkInterfacesOutputWithContext(ctx context.Context) EcsLaunchTemplateNetworkInterfacesOutput

func (EcsLaunchTemplateNetworkInterfacesArgs) ToEcsLaunchTemplateNetworkInterfacesPtrOutput

func (i EcsLaunchTemplateNetworkInterfacesArgs) ToEcsLaunchTemplateNetworkInterfacesPtrOutput() EcsLaunchTemplateNetworkInterfacesPtrOutput

func (EcsLaunchTemplateNetworkInterfacesArgs) ToEcsLaunchTemplateNetworkInterfacesPtrOutputWithContext

func (i EcsLaunchTemplateNetworkInterfacesArgs) ToEcsLaunchTemplateNetworkInterfacesPtrOutputWithContext(ctx context.Context) EcsLaunchTemplateNetworkInterfacesPtrOutput

type EcsLaunchTemplateNetworkInterfacesInput

type EcsLaunchTemplateNetworkInterfacesInput interface {
	pulumi.Input

	ToEcsLaunchTemplateNetworkInterfacesOutput() EcsLaunchTemplateNetworkInterfacesOutput
	ToEcsLaunchTemplateNetworkInterfacesOutputWithContext(context.Context) EcsLaunchTemplateNetworkInterfacesOutput
}

EcsLaunchTemplateNetworkInterfacesInput is an input type that accepts EcsLaunchTemplateNetworkInterfacesArgs and EcsLaunchTemplateNetworkInterfacesOutput values. You can construct a concrete instance of `EcsLaunchTemplateNetworkInterfacesInput` via:

EcsLaunchTemplateNetworkInterfacesArgs{...}

type EcsLaunchTemplateNetworkInterfacesOutput

type EcsLaunchTemplateNetworkInterfacesOutput struct{ *pulumi.OutputState }

func (EcsLaunchTemplateNetworkInterfacesOutput) Description

The description of the data disk.

func (EcsLaunchTemplateNetworkInterfacesOutput) ElementType

func (EcsLaunchTemplateNetworkInterfacesOutput) Name

The name of the data disk.

func (EcsLaunchTemplateNetworkInterfacesOutput) PrimaryIp

The primary private IP address of the ENI.

func (EcsLaunchTemplateNetworkInterfacesOutput) SecurityGroupId

The security group ID must be one in the same VPC.

func (EcsLaunchTemplateNetworkInterfacesOutput) ToEcsLaunchTemplateNetworkInterfacesOutput

func (o EcsLaunchTemplateNetworkInterfacesOutput) ToEcsLaunchTemplateNetworkInterfacesOutput() EcsLaunchTemplateNetworkInterfacesOutput

func (EcsLaunchTemplateNetworkInterfacesOutput) ToEcsLaunchTemplateNetworkInterfacesOutputWithContext

func (o EcsLaunchTemplateNetworkInterfacesOutput) ToEcsLaunchTemplateNetworkInterfacesOutputWithContext(ctx context.Context) EcsLaunchTemplateNetworkInterfacesOutput

func (EcsLaunchTemplateNetworkInterfacesOutput) ToEcsLaunchTemplateNetworkInterfacesPtrOutput

func (o EcsLaunchTemplateNetworkInterfacesOutput) ToEcsLaunchTemplateNetworkInterfacesPtrOutput() EcsLaunchTemplateNetworkInterfacesPtrOutput

func (EcsLaunchTemplateNetworkInterfacesOutput) ToEcsLaunchTemplateNetworkInterfacesPtrOutputWithContext

func (o EcsLaunchTemplateNetworkInterfacesOutput) ToEcsLaunchTemplateNetworkInterfacesPtrOutputWithContext(ctx context.Context) EcsLaunchTemplateNetworkInterfacesPtrOutput

func (EcsLaunchTemplateNetworkInterfacesOutput) VswitchId

The VSwitch ID for ENI. The instance must be in the same zone of the same VPC network as the ENI, but they may belong to different VSwitches.

type EcsLaunchTemplateNetworkInterfacesPtrInput

type EcsLaunchTemplateNetworkInterfacesPtrInput interface {
	pulumi.Input

	ToEcsLaunchTemplateNetworkInterfacesPtrOutput() EcsLaunchTemplateNetworkInterfacesPtrOutput
	ToEcsLaunchTemplateNetworkInterfacesPtrOutputWithContext(context.Context) EcsLaunchTemplateNetworkInterfacesPtrOutput
}

EcsLaunchTemplateNetworkInterfacesPtrInput is an input type that accepts EcsLaunchTemplateNetworkInterfacesArgs, EcsLaunchTemplateNetworkInterfacesPtr and EcsLaunchTemplateNetworkInterfacesPtrOutput values. You can construct a concrete instance of `EcsLaunchTemplateNetworkInterfacesPtrInput` via:

        EcsLaunchTemplateNetworkInterfacesArgs{...}

or:

        nil

type EcsLaunchTemplateNetworkInterfacesPtrOutput

type EcsLaunchTemplateNetworkInterfacesPtrOutput struct{ *pulumi.OutputState }

func (EcsLaunchTemplateNetworkInterfacesPtrOutput) Description

The description of the data disk.

func (EcsLaunchTemplateNetworkInterfacesPtrOutput) Elem

func (EcsLaunchTemplateNetworkInterfacesPtrOutput) ElementType

func (EcsLaunchTemplateNetworkInterfacesPtrOutput) Name

The name of the data disk.

func (EcsLaunchTemplateNetworkInterfacesPtrOutput) PrimaryIp

The primary private IP address of the ENI.

func (EcsLaunchTemplateNetworkInterfacesPtrOutput) SecurityGroupId

The security group ID must be one in the same VPC.

func (EcsLaunchTemplateNetworkInterfacesPtrOutput) ToEcsLaunchTemplateNetworkInterfacesPtrOutput

func (o EcsLaunchTemplateNetworkInterfacesPtrOutput) ToEcsLaunchTemplateNetworkInterfacesPtrOutput() EcsLaunchTemplateNetworkInterfacesPtrOutput

func (EcsLaunchTemplateNetworkInterfacesPtrOutput) ToEcsLaunchTemplateNetworkInterfacesPtrOutputWithContext

func (o EcsLaunchTemplateNetworkInterfacesPtrOutput) ToEcsLaunchTemplateNetworkInterfacesPtrOutputWithContext(ctx context.Context) EcsLaunchTemplateNetworkInterfacesPtrOutput

func (EcsLaunchTemplateNetworkInterfacesPtrOutput) VswitchId

The VSwitch ID for ENI. The instance must be in the same zone of the same VPC network as the ENI, but they may belong to different VSwitches.

type EcsLaunchTemplateOutput

type EcsLaunchTemplateOutput struct{ *pulumi.OutputState }

func (EcsLaunchTemplateOutput) AutoReleaseTime

func (o EcsLaunchTemplateOutput) AutoReleaseTime() pulumi.StringPtrOutput

Instance auto release time. The time is presented using the ISO8601 standard and in UTC time. The format is YYYY-MM-DDTHH:MM:SSZ.

func (EcsLaunchTemplateOutput) DataDisks

The list of data disks created with instance.

func (EcsLaunchTemplateOutput) DeploymentSetId

func (o EcsLaunchTemplateOutput) DeploymentSetId() pulumi.StringPtrOutput

The Deployment Set Id.

func (EcsLaunchTemplateOutput) Description

The description of the data disk.

func (EcsLaunchTemplateOutput) ElementType

func (EcsLaunchTemplateOutput) ElementType() reflect.Type

func (EcsLaunchTemplateOutput) EnableVmOsConfig

func (o EcsLaunchTemplateOutput) EnableVmOsConfig() pulumi.BoolPtrOutput

Whether to enable the instance operating system configuration.

func (EcsLaunchTemplateOutput) HostName

Instance host name.It cannot start or end with a period (.) or a hyphen (-) and it cannot have two or more consecutive periods (.) or hyphens (-).For Windows: The host name can be [2, 15] characters in length. It can contain A-Z, a-z, numbers, periods (.), and hyphens (-). It cannot only contain numbers. For other operating systems: The host name can be [2, 64] characters in length. It can be segments separated by periods (.). It can contain A-Z, a-z, numbers, and hyphens (-).

func (EcsLaunchTemplateOutput) ImageId

The Image ID.

func (EcsLaunchTemplateOutput) ImageOwnerAlias

func (o EcsLaunchTemplateOutput) ImageOwnerAlias() pulumi.StringPtrOutput

Mirror source. Valid values: `system`, `self`, `others`, `marketplace`, `""`. Default to: `""`.

func (EcsLaunchTemplateOutput) InstanceChargeType

func (o EcsLaunchTemplateOutput) InstanceChargeType() pulumi.StringPtrOutput

Billing methods. Valid values: `PostPaid`, `PrePaid`.

func (EcsLaunchTemplateOutput) InstanceName

The name of the instance. The name must be 2 to 128 characters in length. It must start with a letter and cannot start with http:// or https://. It can contain letters, digits, colons (:), underscores (_), and hyphens (-).

func (EcsLaunchTemplateOutput) InstanceType

Instance type. For more information, call resourceAlicloudInstances to obtain the latest instance type list.

func (EcsLaunchTemplateOutput) InternetChargeType

func (o EcsLaunchTemplateOutput) InternetChargeType() pulumi.StringPtrOutput

Internet bandwidth billing method. Valid values: `PayByTraffic`, `PayByBandwidth`.

func (EcsLaunchTemplateOutput) InternetMaxBandwidthIn

func (o EcsLaunchTemplateOutput) InternetMaxBandwidthIn() pulumi.IntOutput

The maximum inbound bandwidth from the Internet network, measured in Mbit/s. Value range: [1, 200].

func (EcsLaunchTemplateOutput) InternetMaxBandwidthOut

func (o EcsLaunchTemplateOutput) InternetMaxBandwidthOut() pulumi.IntPtrOutput

Maximum outbound bandwidth from the Internet, its unit of measurement is Mbit/s. Value range: [0, 100].

func (EcsLaunchTemplateOutput) IoOptimized

Whether it is an I/O-optimized instance or not. Valid values: `none`, `optimized`.

func (EcsLaunchTemplateOutput) KeyPairName

The name of the key pair. - Ignore this parameter for Windows instances. It is null by default. Even if you enter this parameter, only the Password content is used. - The password logon method for Linux instances is set to forbidden upon initialization.

func (EcsLaunchTemplateOutput) LaunchTemplateName

func (o EcsLaunchTemplateOutput) LaunchTemplateName() pulumi.StringOutput

The name of Launch Template.

func (EcsLaunchTemplateOutput) Name deprecated

The name of the data disk.

Deprecated: Field 'name' has been deprecated from provider version 1.120.0. New field 'launch_template_name' instead.

func (EcsLaunchTemplateOutput) NetworkInterfaces

The list of network interfaces created with instance.

func (EcsLaunchTemplateOutput) NetworkType

Network type of the instance. Valid values: `classic`, `vpc`.

func (EcsLaunchTemplateOutput) PasswordInherit

func (o EcsLaunchTemplateOutput) PasswordInherit() pulumi.BoolPtrOutput

Whether to use the password preset by the mirror.

func (EcsLaunchTemplateOutput) Period

The subscription period of the instance. Unit: months. This parameter takes effect and is required only when InstanceChargeType is set to PrePaid. If the DedicatedHostId parameter is specified, the value of the Period parameter must be within the subscription period of the dedicated host. - When the PeriodUnit parameter is set to `Week`, the valid values of the Period parameter are `1`, `2`, `3`, and `4`. - When the PeriodUnit parameter is set to `Month`, the valid values of the Period parameter are `1`, `2`, `3`, `4`, `5`, `6`, `7`, `8`, `9`, `12`, `24`, `36`, `48`, and `60`.

func (EcsLaunchTemplateOutput) PrivateIpAddress

func (o EcsLaunchTemplateOutput) PrivateIpAddress() pulumi.StringPtrOutput

The private IP address of the instance.

func (EcsLaunchTemplateOutput) RamRoleName

The RAM role name of the instance. You can use the RAM API ListRoles to query instance RAM role names.

func (EcsLaunchTemplateOutput) ResourceGroupId

func (o EcsLaunchTemplateOutput) ResourceGroupId() pulumi.StringPtrOutput

The ID of the resource group to which to assign the instance, Elastic Block Storage (EBS) device, and ENI.

func (EcsLaunchTemplateOutput) SecurityEnhancementStrategy

func (o EcsLaunchTemplateOutput) SecurityEnhancementStrategy() pulumi.StringPtrOutput

Whether or not to activate the security enhancement feature and install network security software free of charge. Valid values: `Active`, `Deactive`.

func (EcsLaunchTemplateOutput) SecurityGroupId

func (o EcsLaunchTemplateOutput) SecurityGroupId() pulumi.StringPtrOutput

The security group ID must be one in the same VPC.

func (EcsLaunchTemplateOutput) SecurityGroupIds

func (o EcsLaunchTemplateOutput) SecurityGroupIds() pulumi.StringArrayOutput

The ID of security group N to which to assign the instance.

func (EcsLaunchTemplateOutput) SpotDuration

The protection period of the preemptible instance. Unit: hours. Valid values: `0`, `1`, `2`, `3`, `4`, `5`, and `6`. Default to: `1`.

func (EcsLaunchTemplateOutput) SpotPriceLimit

func (o EcsLaunchTemplateOutput) SpotPriceLimit() pulumi.Float64PtrOutput

-(Optional) Sets the maximum hourly instance price. Supports up to three decimal places.

func (EcsLaunchTemplateOutput) SpotStrategy

The spot strategy for a Pay-As-You-Go instance. This parameter is valid and required only when InstanceChargeType is set to PostPaid. Valid values: `NoSpot`, `SpotAsPriceGo`, `SpotWithPriceLimit`.

func (EcsLaunchTemplateOutput) SystemDisk

The System Disk.

func (EcsLaunchTemplateOutput) SystemDiskCategory deprecated

func (o EcsLaunchTemplateOutput) SystemDiskCategory() pulumi.StringOutput

It has been deprecated from version 1.120.0, and use field `systemDisk` instead.

Deprecated: Field 'system_disk_category' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.

func (EcsLaunchTemplateOutput) SystemDiskDescription deprecated

func (o EcsLaunchTemplateOutput) SystemDiskDescription() pulumi.StringOutput

It has been deprecated from version 1.120.0, and use field `systemDisk` instead.

Deprecated: Field 'system_disk_description' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.

func (EcsLaunchTemplateOutput) SystemDiskName deprecated

func (o EcsLaunchTemplateOutput) SystemDiskName() pulumi.StringOutput

It has been deprecated from version 1.120.0, and use field `systemDisk` instead.

Deprecated: Field 'system_disk_name' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.

func (EcsLaunchTemplateOutput) SystemDiskSize deprecated

func (o EcsLaunchTemplateOutput) SystemDiskSize() pulumi.IntOutput

It has been deprecated from version 1.120.0, and use field `systemDisk` instead.

Deprecated: Field 'system_disk_size' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.

func (EcsLaunchTemplateOutput) Tags

A mapping of tags to assign to instance, block storage, and elastic network. - Key: It can be up to 64 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It cannot be a null string. - Value: It can be up to 128 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It can be a null string.

func (EcsLaunchTemplateOutput) TemplateResourceGroupId

func (o EcsLaunchTemplateOutput) TemplateResourceGroupId() pulumi.StringPtrOutput

The template resource group id.

func (EcsLaunchTemplateOutput) TemplateTags

func (o EcsLaunchTemplateOutput) TemplateTags() pulumi.MapOutput

A mapping of tags to assign to the launch template.

func (EcsLaunchTemplateOutput) ToEcsLaunchTemplateOutput

func (o EcsLaunchTemplateOutput) ToEcsLaunchTemplateOutput() EcsLaunchTemplateOutput

func (EcsLaunchTemplateOutput) ToEcsLaunchTemplateOutputWithContext

func (o EcsLaunchTemplateOutput) ToEcsLaunchTemplateOutputWithContext(ctx context.Context) EcsLaunchTemplateOutput

func (EcsLaunchTemplateOutput) UserData

The User Data.

func (EcsLaunchTemplateOutput) Userdata deprecated

It has been deprecated from version 1.120.0, and use field `userData` instead.

Deprecated: Field 'userdata' has been deprecated from provider version 1.120.0. New field 'user_data' instead.

func (EcsLaunchTemplateOutput) VersionDescription

func (o EcsLaunchTemplateOutput) VersionDescription() pulumi.StringPtrOutput

The description of the launch template version. The description must be 2 to 256 characters in length and cannot start with http:// or https://.

func (EcsLaunchTemplateOutput) VpcId

The ID of the VPC.

func (EcsLaunchTemplateOutput) VswitchId

The VSwitch ID for ENI. The instance must be in the same zone of the same VPC network as the ENI, but they may belong to different VSwitches.

func (EcsLaunchTemplateOutput) ZoneId

The zone ID of the instance.

type EcsLaunchTemplateState

type EcsLaunchTemplateState struct {
	// Instance auto release time. The time is presented using the ISO8601 standard and in UTC time. The format is  YYYY-MM-DDTHH:MM:SSZ.
	AutoReleaseTime pulumi.StringPtrInput
	// The list of data disks created with instance.
	DataDisks EcsLaunchTemplateDataDiskArrayInput
	// The Deployment Set Id.
	DeploymentSetId pulumi.StringPtrInput
	// The description of the data disk.
	Description pulumi.StringPtrInput
	// Whether to enable the instance operating system configuration.
	EnableVmOsConfig pulumi.BoolPtrInput
	// Instance host name.It cannot start or end with a period (.) or a hyphen (-) and it cannot have two or more consecutive periods (.) or hyphens (-).For Windows: The host name can be [2, 15] characters in length. It can contain A-Z, a-z, numbers, periods (.), and hyphens (-). It cannot only contain numbers. For other operating systems: The host name can be [2, 64] characters in length. It can be segments separated by periods (.). It can contain A-Z, a-z, numbers, and hyphens (-).
	HostName pulumi.StringPtrInput
	// The Image ID.
	ImageId pulumi.StringPtrInput
	// Mirror source. Valid values: `system`, `self`, `others`, `marketplace`, `""`. Default to: `""`.
	ImageOwnerAlias pulumi.StringPtrInput
	// Billing methods. Valid values: `PostPaid`, `PrePaid`.
	InstanceChargeType pulumi.StringPtrInput
	// The name of the instance. The name must be 2 to 128 characters in length. It must start with a letter and cannot start with http:// or https://. It can contain letters, digits, colons (:), underscores (_), and hyphens (-).
	InstanceName pulumi.StringPtrInput
	// Instance type. For more information, call resourceAlicloudInstances to obtain the latest instance type list.
	InstanceType pulumi.StringPtrInput
	// Internet bandwidth billing method. Valid values: `PayByTraffic`, `PayByBandwidth`.
	InternetChargeType pulumi.StringPtrInput
	// The maximum inbound bandwidth from the Internet network, measured in Mbit/s. Value range: [1, 200].
	InternetMaxBandwidthIn pulumi.IntPtrInput
	// Maximum outbound bandwidth from the Internet, its unit of measurement is Mbit/s. Value range: [0, 100].
	InternetMaxBandwidthOut pulumi.IntPtrInput
	// Whether it is an I/O-optimized instance or not. Valid values: `none`, `optimized`.
	IoOptimized pulumi.StringPtrInput
	// The name of the key pair.
	// - Ignore this parameter for Windows instances. It is null by default. Even if you enter this parameter, only the  Password content is used.
	// - The password logon method for Linux instances is set to forbidden upon initialization.
	KeyPairName pulumi.StringPtrInput
	// The name of Launch Template.
	LaunchTemplateName pulumi.StringPtrInput
	// The name of the data disk.
	//
	// Deprecated: Field 'name' has been deprecated from provider version 1.120.0. New field 'launch_template_name' instead.
	Name pulumi.StringPtrInput
	// The list of network interfaces created with instance.
	NetworkInterfaces EcsLaunchTemplateNetworkInterfacesPtrInput
	// Network type of the instance. Valid values: `classic`, `vpc`.
	NetworkType pulumi.StringPtrInput
	// Whether to use the password preset by the mirror.
	PasswordInherit pulumi.BoolPtrInput
	// The subscription period of the instance. Unit: months. This parameter takes effect and is required only when InstanceChargeType is set to PrePaid. If the DedicatedHostId parameter is specified, the value of the Period parameter must be within the subscription period of the dedicated host.
	// - When the PeriodUnit parameter is set to `Week`, the valid values of the Period parameter are `1`, `2`, `3`, and `4`.
	// - When the PeriodUnit parameter is set to `Month`, the valid values of the Period parameter are `1`, `2`, `3`, `4`, `5`, `6`, `7`, `8`, `9`, `12`, `24`, `36`, `48`, and `60`.
	Period pulumi.IntPtrInput
	// The private IP address of the instance.
	PrivateIpAddress pulumi.StringPtrInput
	// The RAM role name of the instance. You can use the RAM API ListRoles to query instance RAM role names.
	RamRoleName pulumi.StringPtrInput
	// The ID of the resource group to which to assign the instance, Elastic Block Storage (EBS) device, and ENI.
	ResourceGroupId pulumi.StringPtrInput
	// Whether or not to activate the security enhancement feature and install network security software free of charge. Valid values: `Active`, `Deactive`.
	SecurityEnhancementStrategy pulumi.StringPtrInput
	// The security group ID must be one in the same VPC.
	SecurityGroupId pulumi.StringPtrInput
	// The ID of security group N to which to assign the instance.
	SecurityGroupIds pulumi.StringArrayInput
	// The protection period of the preemptible instance. Unit: hours. Valid values: `0`, `1`, `2`, `3`, `4`, `5`, and `6`. Default to: `1`.
	SpotDuration pulumi.StringPtrInput
	// -(Optional) Sets the maximum hourly instance price. Supports up to three decimal places.
	SpotPriceLimit pulumi.Float64PtrInput
	// The spot strategy for a Pay-As-You-Go instance. This parameter is valid and required only when InstanceChargeType is set to PostPaid. Valid values: `NoSpot`, `SpotAsPriceGo`, `SpotWithPriceLimit`.
	SpotStrategy pulumi.StringPtrInput
	// The System Disk.
	SystemDisk EcsLaunchTemplateSystemDiskPtrInput
	// It has been deprecated from version 1.120.0, and use field `systemDisk` instead.
	//
	// Deprecated: Field 'system_disk_category' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.
	SystemDiskCategory pulumi.StringPtrInput
	// It has been deprecated from version 1.120.0, and use field `systemDisk` instead.
	//
	// Deprecated: Field 'system_disk_description' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.
	SystemDiskDescription pulumi.StringPtrInput
	// It has been deprecated from version 1.120.0, and use field `systemDisk` instead.
	//
	// Deprecated: Field 'system_disk_name' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.
	SystemDiskName pulumi.StringPtrInput
	// It has been deprecated from version 1.120.0, and use field `systemDisk` instead.
	//
	// Deprecated: Field 'system_disk_size' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.
	SystemDiskSize pulumi.IntPtrInput
	// A mapping of tags to assign to instance, block storage, and elastic network.
	// - Key: It can be up to 64 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It cannot be a null string.
	// - Value: It can be up to 128 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It can be a null string.
	Tags pulumi.MapInput
	// The template resource group id.
	TemplateResourceGroupId pulumi.StringPtrInput
	// A mapping of tags to assign to the launch template.
	TemplateTags pulumi.MapInput
	// The User Data.
	UserData pulumi.StringPtrInput
	// It has been deprecated from version 1.120.0, and use field `userData` instead.
	//
	// Deprecated: Field 'userdata' has been deprecated from provider version 1.120.0. New field 'user_data' instead.
	Userdata pulumi.StringPtrInput
	// The description of the launch template version. The description must be 2 to 256 characters in length and cannot start with http:// or https://.
	VersionDescription pulumi.StringPtrInput
	// The ID of the VPC.
	VpcId pulumi.StringPtrInput
	// The VSwitch ID for ENI. The instance must be in the same zone of the same VPC network as the ENI, but they may belong to different VSwitches.
	VswitchId pulumi.StringPtrInput
	// The zone ID of the instance.
	ZoneId pulumi.StringPtrInput
}

func (EcsLaunchTemplateState) ElementType

func (EcsLaunchTemplateState) ElementType() reflect.Type

type EcsLaunchTemplateSystemDisk

type EcsLaunchTemplateSystemDisk struct {
	// The category of the disk.
	Category *string `pulumi:"category"`
	// Indicates whether the data disk is released with the instance.
	DeleteWithInstance *bool `pulumi:"deleteWithInstance"`
	// The description of the data disk.
	Description *string `pulumi:"description"`
	// The Iops.
	Iops *string `pulumi:"iops"`
	// The name of the data disk.
	Name *string `pulumi:"name"`
	// The performance level of the ESSD used as the data disk.
	PerformanceLevel *string `pulumi:"performanceLevel"`
	// The size of the data disk.
	Size *int `pulumi:"size"`
}

type EcsLaunchTemplateSystemDiskArgs

type EcsLaunchTemplateSystemDiskArgs struct {
	// The category of the disk.
	Category pulumi.StringPtrInput `pulumi:"category"`
	// Indicates whether the data disk is released with the instance.
	DeleteWithInstance pulumi.BoolPtrInput `pulumi:"deleteWithInstance"`
	// The description of the data disk.
	Description pulumi.StringPtrInput `pulumi:"description"`
	// The Iops.
	Iops pulumi.StringPtrInput `pulumi:"iops"`
	// The name of the data disk.
	Name pulumi.StringPtrInput `pulumi:"name"`
	// The performance level of the ESSD used as the data disk.
	PerformanceLevel pulumi.StringPtrInput `pulumi:"performanceLevel"`
	// The size of the data disk.
	Size pulumi.IntPtrInput `pulumi:"size"`
}

func (EcsLaunchTemplateSystemDiskArgs) ElementType

func (EcsLaunchTemplateSystemDiskArgs) ToEcsLaunchTemplateSystemDiskOutput

func (i EcsLaunchTemplateSystemDiskArgs) ToEcsLaunchTemplateSystemDiskOutput() EcsLaunchTemplateSystemDiskOutput

func (EcsLaunchTemplateSystemDiskArgs) ToEcsLaunchTemplateSystemDiskOutputWithContext

func (i EcsLaunchTemplateSystemDiskArgs) ToEcsLaunchTemplateSystemDiskOutputWithContext(ctx context.Context) EcsLaunchTemplateSystemDiskOutput

func (EcsLaunchTemplateSystemDiskArgs) ToEcsLaunchTemplateSystemDiskPtrOutput

func (i EcsLaunchTemplateSystemDiskArgs) ToEcsLaunchTemplateSystemDiskPtrOutput() EcsLaunchTemplateSystemDiskPtrOutput

func (EcsLaunchTemplateSystemDiskArgs) ToEcsLaunchTemplateSystemDiskPtrOutputWithContext

func (i EcsLaunchTemplateSystemDiskArgs) ToEcsLaunchTemplateSystemDiskPtrOutputWithContext(ctx context.Context) EcsLaunchTemplateSystemDiskPtrOutput

type EcsLaunchTemplateSystemDiskInput

type EcsLaunchTemplateSystemDiskInput interface {
	pulumi.Input

	ToEcsLaunchTemplateSystemDiskOutput() EcsLaunchTemplateSystemDiskOutput
	ToEcsLaunchTemplateSystemDiskOutputWithContext(context.Context) EcsLaunchTemplateSystemDiskOutput
}

EcsLaunchTemplateSystemDiskInput is an input type that accepts EcsLaunchTemplateSystemDiskArgs and EcsLaunchTemplateSystemDiskOutput values. You can construct a concrete instance of `EcsLaunchTemplateSystemDiskInput` via:

EcsLaunchTemplateSystemDiskArgs{...}

type EcsLaunchTemplateSystemDiskOutput

type EcsLaunchTemplateSystemDiskOutput struct{ *pulumi.OutputState }

func (EcsLaunchTemplateSystemDiskOutput) Category

The category of the disk.

func (EcsLaunchTemplateSystemDiskOutput) DeleteWithInstance

Indicates whether the data disk is released with the instance.

func (EcsLaunchTemplateSystemDiskOutput) Description

The description of the data disk.

func (EcsLaunchTemplateSystemDiskOutput) ElementType

func (EcsLaunchTemplateSystemDiskOutput) Iops

The Iops.

func (EcsLaunchTemplateSystemDiskOutput) Name

The name of the data disk.

func (EcsLaunchTemplateSystemDiskOutput) PerformanceLevel

The performance level of the ESSD used as the data disk.

func (EcsLaunchTemplateSystemDiskOutput) Size

The size of the data disk.

func (EcsLaunchTemplateSystemDiskOutput) ToEcsLaunchTemplateSystemDiskOutput

func (o EcsLaunchTemplateSystemDiskOutput) ToEcsLaunchTemplateSystemDiskOutput() EcsLaunchTemplateSystemDiskOutput

func (EcsLaunchTemplateSystemDiskOutput) ToEcsLaunchTemplateSystemDiskOutputWithContext

func (o EcsLaunchTemplateSystemDiskOutput) ToEcsLaunchTemplateSystemDiskOutputWithContext(ctx context.Context) EcsLaunchTemplateSystemDiskOutput

func (EcsLaunchTemplateSystemDiskOutput) ToEcsLaunchTemplateSystemDiskPtrOutput

func (o EcsLaunchTemplateSystemDiskOutput) ToEcsLaunchTemplateSystemDiskPtrOutput() EcsLaunchTemplateSystemDiskPtrOutput

func (EcsLaunchTemplateSystemDiskOutput) ToEcsLaunchTemplateSystemDiskPtrOutputWithContext

func (o EcsLaunchTemplateSystemDiskOutput) ToEcsLaunchTemplateSystemDiskPtrOutputWithContext(ctx context.Context) EcsLaunchTemplateSystemDiskPtrOutput

type EcsLaunchTemplateSystemDiskPtrInput

type EcsLaunchTemplateSystemDiskPtrInput interface {
	pulumi.Input

	ToEcsLaunchTemplateSystemDiskPtrOutput() EcsLaunchTemplateSystemDiskPtrOutput
	ToEcsLaunchTemplateSystemDiskPtrOutputWithContext(context.Context) EcsLaunchTemplateSystemDiskPtrOutput
}

EcsLaunchTemplateSystemDiskPtrInput is an input type that accepts EcsLaunchTemplateSystemDiskArgs, EcsLaunchTemplateSystemDiskPtr and EcsLaunchTemplateSystemDiskPtrOutput values. You can construct a concrete instance of `EcsLaunchTemplateSystemDiskPtrInput` via:

        EcsLaunchTemplateSystemDiskArgs{...}

or:

        nil

type EcsLaunchTemplateSystemDiskPtrOutput

type EcsLaunchTemplateSystemDiskPtrOutput struct{ *pulumi.OutputState }

func (EcsLaunchTemplateSystemDiskPtrOutput) Category

The category of the disk.

func (EcsLaunchTemplateSystemDiskPtrOutput) DeleteWithInstance

Indicates whether the data disk is released with the instance.

func (EcsLaunchTemplateSystemDiskPtrOutput) Description

The description of the data disk.

func (EcsLaunchTemplateSystemDiskPtrOutput) Elem

func (EcsLaunchTemplateSystemDiskPtrOutput) ElementType

func (EcsLaunchTemplateSystemDiskPtrOutput) Iops

The Iops.

func (EcsLaunchTemplateSystemDiskPtrOutput) Name

The name of the data disk.

func (EcsLaunchTemplateSystemDiskPtrOutput) PerformanceLevel

The performance level of the ESSD used as the data disk.

func (EcsLaunchTemplateSystemDiskPtrOutput) Size

The size of the data disk.

func (EcsLaunchTemplateSystemDiskPtrOutput) ToEcsLaunchTemplateSystemDiskPtrOutput

func (o EcsLaunchTemplateSystemDiskPtrOutput) ToEcsLaunchTemplateSystemDiskPtrOutput() EcsLaunchTemplateSystemDiskPtrOutput

func (EcsLaunchTemplateSystemDiskPtrOutput) ToEcsLaunchTemplateSystemDiskPtrOutputWithContext

func (o EcsLaunchTemplateSystemDiskPtrOutput) ToEcsLaunchTemplateSystemDiskPtrOutputWithContext(ctx context.Context) EcsLaunchTemplateSystemDiskPtrOutput

type EcsNetworkInterface

type EcsNetworkInterface struct {
	pulumi.CustomResourceState

	// The description of the ENI. The description must be 2 to 256 characters in length and cannot start with http:// or https://.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// The number of IPv6 addresses to randomly generate for the primary ENI. Valid values: 1 to 10. **NOTE:** You cannot specify both the `ipv6Addresses` and `ipv6AddressCount` parameters.
	Ipv6AddressCount pulumi.IntOutput `pulumi:"ipv6AddressCount"`
	// A list of IPv6 address to be assigned to the primary ENI. Support up to 10.
	Ipv6Addresses pulumi.StringArrayOutput `pulumi:"ipv6Addresses"`
	// The MAC address of the ENI.
	Mac pulumi.StringOutput `pulumi:"mac"`
	// Field `name` has been deprecated from provider version 1.123.1. New field `networkInterfaceName` instead
	//
	// Deprecated: Field 'name' has been deprecated from provider version 1.123.1. New field 'network_interface_name' instead
	Name pulumi.StringOutput `pulumi:"name"`
	// The name of the ENI. The name must be 2 to 128 characters in length, and can contain letters, digits, colons (:), underscores (_), and hyphens (-). It must start with a letter and cannot start with http:// or https://.
	NetworkInterfaceName pulumi.StringOutput `pulumi:"networkInterfaceName"`
	// The primary private IP address of the ENI. The specified IP address must be available within the CIDR block of the VSwitch. If this parameter is not specified, an available IP address is assigned from the VSwitch CIDR block at random.
	PrimaryIpAddress pulumi.StringOutput `pulumi:"primaryIpAddress"`
	// Field `privateIp` has been deprecated from provider version 1.123.1. New field `primaryIpAddress` instead
	//
	// Deprecated: Field 'private_ip' has been deprecated from provider version 1.123.1. New field 'primary_ip_address' instead
	PrivateIp pulumi.StringOutput `pulumi:"privateIp"`
	// Specifies secondary private IP address N of the ENI. This IP address must be an available IP address within the CIDR block of the VSwitch to which the ENI belongs.
	PrivateIpAddresses pulumi.StringArrayOutput `pulumi:"privateIpAddresses"`
	// Field `privateIps` has been deprecated from provider version 1.123.1. New field `privateIpAddresses` instead
	//
	// Deprecated: Field 'private_ips' has been deprecated from provider version 1.123.1. New field 'private_ip_addresses' instead
	PrivateIps pulumi.StringArrayOutput `pulumi:"privateIps"`
	// Field `privateIpsCount` has been deprecated from provider version 1.123.1. New field `secondaryPrivateIpAddressCount` instead
	//
	// Deprecated: Field 'private_ips_count' has been deprecated from provider version 1.123.1. New field 'secondary_private_ip_address_count' instead
	PrivateIpsCount pulumi.IntOutput `pulumi:"privateIpsCount"`
	// The queue number of the ENI.
	QueueNumber pulumi.IntOutput `pulumi:"queueNumber"`
	// The resource group id.
	ResourceGroupId pulumi.StringPtrOutput `pulumi:"resourceGroupId"`
	// The number of private IP addresses that can be automatically created by ECS.
	SecondaryPrivateIpAddressCount pulumi.IntOutput `pulumi:"secondaryPrivateIpAddressCount"`
	// The ID of security group N. The security groups and the ENI must belong to the same VPC. The valid values of N are based on the maximum number of security groups to which an ENI can be added.
	SecurityGroupIds pulumi.StringArrayOutput `pulumi:"securityGroupIds"`
	// Field `securityGroups` has been deprecated from provider version 1.123.1. New field `securityGroupIds` instead
	//
	// Deprecated: Field 'security_groups' has been deprecated from provider version 1.123.1. New field 'security_group_ids' instead
	SecurityGroups pulumi.StringArrayOutput `pulumi:"securityGroups"`
	// The status of the ENI.
	Status pulumi.StringOutput `pulumi:"status"`
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapOutput `pulumi:"tags"`
	// The ID of the VSwitch in the specified VPC. The private IP addresses assigned to the ENI must be available IP addresses within the CIDR block of the VSwitch.
	VswitchId pulumi.StringOutput `pulumi:"vswitchId"`
}

Provides a ECS Network Interface resource.

For information about ECS Network Interface and how to use it, see [What is Network Interface](https://www.alibabacloud.com/help/en/doc-detail/58504.htm).

> **NOTE:** Available in v1.123.1+.

> **NOTE** Only one of `privateIpAddresses` or `secondaryPrivateIpAddressCount` can be specified when assign private IPs.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/go/alicloud"
"github.com/pulumi/pulumi-alicloud/sdk/go/alicloud/resourcemanager"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/resourcemanager"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/vpc"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		name := "tf-testAcc"
		if param := cfg.Get("name"); param != "" {
			name = param
		}
		defaultNetwork, err := vpc.NewNetwork(ctx, "defaultNetwork", &vpc.NetworkArgs{
			VpcName:   pulumi.String(name),
			CidrBlock: pulumi.String("192.168.0.0/24"),
		})
		if err != nil {
			return err
		}
		defaultZones, err := alicloud.GetZones(ctx, &GetZonesArgs{
			AvailableResourceCreation: pulumi.StringRef("VSwitch"),
		}, nil)
		if err != nil {
			return err
		}
		defaultSwitch, err := vpc.NewSwitch(ctx, "defaultSwitch", &vpc.SwitchArgs{
			VswitchName: pulumi.String(name),
			CidrBlock:   pulumi.String("192.168.0.0/24"),
			ZoneId:      pulumi.String(defaultZones.Zones[0].Id),
			VpcId:       defaultNetwork.ID(),
		})
		if err != nil {
			return err
		}
		defaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, "defaultSecurityGroup", &ecs.SecurityGroupArgs{
			VpcId: defaultNetwork.ID(),
		})
		if err != nil {
			return err
		}
		defaultResourceGroups, err := resourcemanager.GetResourceGroups(ctx, &resourcemanager.GetResourceGroupsArgs{
			Status: pulumi.StringRef("OK"),
		}, nil)
		if err != nil {
			return err
		}
		_, err = ecs.NewEcsNetworkInterface(ctx, "defaultEcsNetworkInterface", &ecs.EcsNetworkInterfaceArgs{
			NetworkInterfaceName: pulumi.String(name),
			VswitchId:            defaultSwitch.ID(),
			SecurityGroupIds: pulumi.StringArray{
				defaultSecurityGroup.ID(),
			},
			Description:      pulumi.String("Basic test"),
			PrimaryIpAddress: pulumi.String("192.168.0.2"),
			Tags: pulumi.AnyMap{
				"Created": pulumi.Any("TF"),
				"For":     pulumi.Any("Test"),
			},
			ResourceGroupId: pulumi.String(defaultResourceGroups.Ids[0]),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

ECS Network Interface can be imported using the id, e.g.

```sh

$ pulumi import alicloud:ecs/ecsNetworkInterface:EcsNetworkInterface example eni-abcd12345

```

func GetEcsNetworkInterface

func GetEcsNetworkInterface(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *EcsNetworkInterfaceState, opts ...pulumi.ResourceOption) (*EcsNetworkInterface, error)

GetEcsNetworkInterface gets an existing EcsNetworkInterface 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 NewEcsNetworkInterface

func NewEcsNetworkInterface(ctx *pulumi.Context,
	name string, args *EcsNetworkInterfaceArgs, opts ...pulumi.ResourceOption) (*EcsNetworkInterface, error)

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

func (*EcsNetworkInterface) ElementType

func (*EcsNetworkInterface) ElementType() reflect.Type

func (*EcsNetworkInterface) ToEcsNetworkInterfaceOutput

func (i *EcsNetworkInterface) ToEcsNetworkInterfaceOutput() EcsNetworkInterfaceOutput

func (*EcsNetworkInterface) ToEcsNetworkInterfaceOutputWithContext

func (i *EcsNetworkInterface) ToEcsNetworkInterfaceOutputWithContext(ctx context.Context) EcsNetworkInterfaceOutput

type EcsNetworkInterfaceArgs

type EcsNetworkInterfaceArgs struct {
	// The description of the ENI. The description must be 2 to 256 characters in length and cannot start with http:// or https://.
	Description pulumi.StringPtrInput
	// The number of IPv6 addresses to randomly generate for the primary ENI. Valid values: 1 to 10. **NOTE:** You cannot specify both the `ipv6Addresses` and `ipv6AddressCount` parameters.
	Ipv6AddressCount pulumi.IntPtrInput
	// A list of IPv6 address to be assigned to the primary ENI. Support up to 10.
	Ipv6Addresses pulumi.StringArrayInput
	// Field `name` has been deprecated from provider version 1.123.1. New field `networkInterfaceName` instead
	//
	// Deprecated: Field 'name' has been deprecated from provider version 1.123.1. New field 'network_interface_name' instead
	Name pulumi.StringPtrInput
	// The name of the ENI. The name must be 2 to 128 characters in length, and can contain letters, digits, colons (:), underscores (_), and hyphens (-). It must start with a letter and cannot start with http:// or https://.
	NetworkInterfaceName pulumi.StringPtrInput
	// The primary private IP address of the ENI. The specified IP address must be available within the CIDR block of the VSwitch. If this parameter is not specified, an available IP address is assigned from the VSwitch CIDR block at random.
	PrimaryIpAddress pulumi.StringPtrInput
	// Field `privateIp` has been deprecated from provider version 1.123.1. New field `primaryIpAddress` instead
	//
	// Deprecated: Field 'private_ip' has been deprecated from provider version 1.123.1. New field 'primary_ip_address' instead
	PrivateIp pulumi.StringPtrInput
	// Specifies secondary private IP address N of the ENI. This IP address must be an available IP address within the CIDR block of the VSwitch to which the ENI belongs.
	PrivateIpAddresses pulumi.StringArrayInput
	// Field `privateIps` has been deprecated from provider version 1.123.1. New field `privateIpAddresses` instead
	//
	// Deprecated: Field 'private_ips' has been deprecated from provider version 1.123.1. New field 'private_ip_addresses' instead
	PrivateIps pulumi.StringArrayInput
	// Field `privateIpsCount` has been deprecated from provider version 1.123.1. New field `secondaryPrivateIpAddressCount` instead
	//
	// Deprecated: Field 'private_ips_count' has been deprecated from provider version 1.123.1. New field 'secondary_private_ip_address_count' instead
	PrivateIpsCount pulumi.IntPtrInput
	// The queue number of the ENI.
	QueueNumber pulumi.IntPtrInput
	// The resource group id.
	ResourceGroupId pulumi.StringPtrInput
	// The number of private IP addresses that can be automatically created by ECS.
	SecondaryPrivateIpAddressCount pulumi.IntPtrInput
	// The ID of security group N. The security groups and the ENI must belong to the same VPC. The valid values of N are based on the maximum number of security groups to which an ENI can be added.
	SecurityGroupIds pulumi.StringArrayInput
	// Field `securityGroups` has been deprecated from provider version 1.123.1. New field `securityGroupIds` instead
	//
	// Deprecated: Field 'security_groups' has been deprecated from provider version 1.123.1. New field 'security_group_ids' instead
	SecurityGroups pulumi.StringArrayInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapInput
	// The ID of the VSwitch in the specified VPC. The private IP addresses assigned to the ENI must be available IP addresses within the CIDR block of the VSwitch.
	VswitchId pulumi.StringInput
}

The set of arguments for constructing a EcsNetworkInterface resource.

func (EcsNetworkInterfaceArgs) ElementType

func (EcsNetworkInterfaceArgs) ElementType() reflect.Type

type EcsNetworkInterfaceArray

type EcsNetworkInterfaceArray []EcsNetworkInterfaceInput

func (EcsNetworkInterfaceArray) ElementType

func (EcsNetworkInterfaceArray) ElementType() reflect.Type

func (EcsNetworkInterfaceArray) ToEcsNetworkInterfaceArrayOutput

func (i EcsNetworkInterfaceArray) ToEcsNetworkInterfaceArrayOutput() EcsNetworkInterfaceArrayOutput

func (EcsNetworkInterfaceArray) ToEcsNetworkInterfaceArrayOutputWithContext

func (i EcsNetworkInterfaceArray) ToEcsNetworkInterfaceArrayOutputWithContext(ctx context.Context) EcsNetworkInterfaceArrayOutput

type EcsNetworkInterfaceArrayInput

type EcsNetworkInterfaceArrayInput interface {
	pulumi.Input

	ToEcsNetworkInterfaceArrayOutput() EcsNetworkInterfaceArrayOutput
	ToEcsNetworkInterfaceArrayOutputWithContext(context.Context) EcsNetworkInterfaceArrayOutput
}

EcsNetworkInterfaceArrayInput is an input type that accepts EcsNetworkInterfaceArray and EcsNetworkInterfaceArrayOutput values. You can construct a concrete instance of `EcsNetworkInterfaceArrayInput` via:

EcsNetworkInterfaceArray{ EcsNetworkInterfaceArgs{...} }

type EcsNetworkInterfaceArrayOutput

type EcsNetworkInterfaceArrayOutput struct{ *pulumi.OutputState }

func (EcsNetworkInterfaceArrayOutput) ElementType

func (EcsNetworkInterfaceArrayOutput) Index

func (EcsNetworkInterfaceArrayOutput) ToEcsNetworkInterfaceArrayOutput

func (o EcsNetworkInterfaceArrayOutput) ToEcsNetworkInterfaceArrayOutput() EcsNetworkInterfaceArrayOutput

func (EcsNetworkInterfaceArrayOutput) ToEcsNetworkInterfaceArrayOutputWithContext

func (o EcsNetworkInterfaceArrayOutput) ToEcsNetworkInterfaceArrayOutputWithContext(ctx context.Context) EcsNetworkInterfaceArrayOutput

type EcsNetworkInterfaceAttachment

type EcsNetworkInterfaceAttachment struct {
	pulumi.CustomResourceState

	// The instance id.
	InstanceId pulumi.StringOutput `pulumi:"instanceId"`
	// The network interface id.
	NetworkInterfaceId pulumi.StringOutput `pulumi:"networkInterfaceId"`
	// The trunk network instance id.
	TrunkNetworkInstanceId pulumi.StringPtrOutput `pulumi:"trunkNetworkInstanceId"`
	// The wait for network configuration ready.
	WaitForNetworkConfigurationReady pulumi.BoolPtrOutput `pulumi:"waitForNetworkConfigurationReady"`
}

Provides a ECS Network Interface Attachment resource.

For information about ECS Network Interface Attachment and how to use it, see [What is Network Interface Attachment](https://www.alibabacloud.com/help/en/doc-detail/58515.htm).

> **NOTE:** Available in v1.123.1+.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/go/alicloud"
"github.com/pulumi/pulumi-alicloud/sdk/go/alicloud/ecs"
"github.com/pulumi/pulumi-alicloud/sdk/go/alicloud/resourcemanager"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/resourcemanager"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/vpc"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		name := "tf-testAcc"
		if param := cfg.Get("name"); param != "" {
			name = param
		}
		defaultZones, err := alicloud.GetZones(ctx, &GetZonesArgs{
			AvailableResourceCreation: pulumi.StringRef("Instance"),
		}, nil)
		if err != nil {
			return err
		}
		defaultInstanceTypes, err := ecs.GetInstanceTypes(ctx, &ecs.GetInstanceTypesArgs{
			AvailabilityZone: pulumi.StringRef(defaultZones.Zones[0].Id),
			EniAmount:        pulumi.IntRef(3),
		}, nil)
		if err != nil {
			return err
		}
		defaultNetwork, err := vpc.NewNetwork(ctx, "defaultNetwork", &vpc.NetworkArgs{
			VpcName:   pulumi.String(name),
			CidrBlock: pulumi.String("192.168.0.0/24"),
		})
		if err != nil {
			return err
		}
		defaultSwitch, err := vpc.NewSwitch(ctx, "defaultSwitch", &vpc.SwitchArgs{
			VswitchName: pulumi.String(name),
			CidrBlock:   pulumi.String("192.168.0.0/24"),
			ZoneId:      pulumi.String(defaultZones.Zones[0].Id),
			VpcId:       defaultNetwork.ID(),
		})
		if err != nil {
			return err
		}
		defaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, "defaultSecurityGroup", &ecs.SecurityGroupArgs{
			Description: pulumi.String("New security group"),
			VpcId:       defaultNetwork.ID(),
		})
		if err != nil {
			return err
		}
		defaultImages, err := ecs.GetImages(ctx, &ecs.GetImagesArgs{
			NameRegex:  pulumi.StringRef("^ubuntu_[0-9]+_[0-9]+_x64*"),
			MostRecent: pulumi.BoolRef(true),
			Owners:     pulumi.StringRef("system"),
		}, nil)
		if err != nil {
			return err
		}
		defaultInstance, err := ecs.NewInstance(ctx, "defaultInstance", &ecs.InstanceArgs{
			AvailabilityZone: pulumi.String(defaultZones.Zones[0].Id),
			InstanceName:     pulumi.String(name),
			HostName:         pulumi.String("tf-testAcc"),
			ImageId:          pulumi.String(defaultImages.Images[0].Id),
			InstanceType:     pulumi.String(defaultInstanceTypes.InstanceTypes[0].Id),
			SecurityGroups: pulumi.StringArray{
				defaultSecurityGroup.ID(),
			},
			VswitchId: defaultSwitch.ID(),
		})
		if err != nil {
			return err
		}
		defaultResourceGroups, err := resourcemanager.GetResourceGroups(ctx, &resourcemanager.GetResourceGroupsArgs{
			Status: pulumi.StringRef("OK"),
		}, nil)
		if err != nil {
			return err
		}
		defaultEcsNetworkInterface, err := ecs.NewEcsNetworkInterface(ctx, "defaultEcsNetworkInterface", &ecs.EcsNetworkInterfaceArgs{
			NetworkInterfaceName: pulumi.String(name),
			VswitchId:            defaultSwitch.ID(),
			SecurityGroupIds: pulumi.StringArray{
				defaultSecurityGroup.ID(),
			},
			Description:      pulumi.String("Basic test"),
			PrimaryIpAddress: pulumi.String("192.168.0.2"),
			Tags: pulumi.AnyMap{
				"Created": pulumi.Any("TF"),
				"For":     pulumi.Any("Test"),
			},
			ResourceGroupId: pulumi.String(defaultResourceGroups.Ids[0]),
		})
		if err != nil {
			return err
		}
		_, err = ecs.NewEcsNetworkInterfaceAttachment(ctx, "defaultEcsNetworkInterfaceAttachment", &ecs.EcsNetworkInterfaceAttachmentArgs{
			NetworkInterfaceId: defaultEcsNetworkInterface.ID(),
			InstanceId:         defaultInstance.ID(),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

ECS Network Interface Attachment can be imported using the id, e.g.

```sh

$ pulumi import alicloud:ecs/ecsNetworkInterfaceAttachment:EcsNetworkInterfaceAttachment example eni-abcd1234:i-abcd1234

```

func GetEcsNetworkInterfaceAttachment

func GetEcsNetworkInterfaceAttachment(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *EcsNetworkInterfaceAttachmentState, opts ...pulumi.ResourceOption) (*EcsNetworkInterfaceAttachment, error)

GetEcsNetworkInterfaceAttachment gets an existing EcsNetworkInterfaceAttachment 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 NewEcsNetworkInterfaceAttachment

func NewEcsNetworkInterfaceAttachment(ctx *pulumi.Context,
	name string, args *EcsNetworkInterfaceAttachmentArgs, opts ...pulumi.ResourceOption) (*EcsNetworkInterfaceAttachment, error)

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

func (*EcsNetworkInterfaceAttachment) ElementType

func (*EcsNetworkInterfaceAttachment) ToEcsNetworkInterfaceAttachmentOutput

func (i *EcsNetworkInterfaceAttachment) ToEcsNetworkInterfaceAttachmentOutput() EcsNetworkInterfaceAttachmentOutput

func (*EcsNetworkInterfaceAttachment) ToEcsNetworkInterfaceAttachmentOutputWithContext

func (i *EcsNetworkInterfaceAttachment) ToEcsNetworkInterfaceAttachmentOutputWithContext(ctx context.Context) EcsNetworkInterfaceAttachmentOutput

type EcsNetworkInterfaceAttachmentArgs

type EcsNetworkInterfaceAttachmentArgs struct {
	// The instance id.
	InstanceId pulumi.StringInput
	// The network interface id.
	NetworkInterfaceId pulumi.StringInput
	// The trunk network instance id.
	TrunkNetworkInstanceId pulumi.StringPtrInput
	// The wait for network configuration ready.
	WaitForNetworkConfigurationReady pulumi.BoolPtrInput
}

The set of arguments for constructing a EcsNetworkInterfaceAttachment resource.

func (EcsNetworkInterfaceAttachmentArgs) ElementType

type EcsNetworkInterfaceAttachmentArray

type EcsNetworkInterfaceAttachmentArray []EcsNetworkInterfaceAttachmentInput

func (EcsNetworkInterfaceAttachmentArray) ElementType

func (EcsNetworkInterfaceAttachmentArray) ToEcsNetworkInterfaceAttachmentArrayOutput

func (i EcsNetworkInterfaceAttachmentArray) ToEcsNetworkInterfaceAttachmentArrayOutput() EcsNetworkInterfaceAttachmentArrayOutput

func (EcsNetworkInterfaceAttachmentArray) ToEcsNetworkInterfaceAttachmentArrayOutputWithContext

func (i EcsNetworkInterfaceAttachmentArray) ToEcsNetworkInterfaceAttachmentArrayOutputWithContext(ctx context.Context) EcsNetworkInterfaceAttachmentArrayOutput

type EcsNetworkInterfaceAttachmentArrayInput

type EcsNetworkInterfaceAttachmentArrayInput interface {
	pulumi.Input

	ToEcsNetworkInterfaceAttachmentArrayOutput() EcsNetworkInterfaceAttachmentArrayOutput
	ToEcsNetworkInterfaceAttachmentArrayOutputWithContext(context.Context) EcsNetworkInterfaceAttachmentArrayOutput
}

EcsNetworkInterfaceAttachmentArrayInput is an input type that accepts EcsNetworkInterfaceAttachmentArray and EcsNetworkInterfaceAttachmentArrayOutput values. You can construct a concrete instance of `EcsNetworkInterfaceAttachmentArrayInput` via:

EcsNetworkInterfaceAttachmentArray{ EcsNetworkInterfaceAttachmentArgs{...} }

type EcsNetworkInterfaceAttachmentArrayOutput

type EcsNetworkInterfaceAttachmentArrayOutput struct{ *pulumi.OutputState }

func (EcsNetworkInterfaceAttachmentArrayOutput) ElementType

func (EcsNetworkInterfaceAttachmentArrayOutput) Index

func (EcsNetworkInterfaceAttachmentArrayOutput) ToEcsNetworkInterfaceAttachmentArrayOutput

func (o EcsNetworkInterfaceAttachmentArrayOutput) ToEcsNetworkInterfaceAttachmentArrayOutput() EcsNetworkInterfaceAttachmentArrayOutput

func (EcsNetworkInterfaceAttachmentArrayOutput) ToEcsNetworkInterfaceAttachmentArrayOutputWithContext

func (o EcsNetworkInterfaceAttachmentArrayOutput) ToEcsNetworkInterfaceAttachmentArrayOutputWithContext(ctx context.Context) EcsNetworkInterfaceAttachmentArrayOutput

type EcsNetworkInterfaceAttachmentInput

type EcsNetworkInterfaceAttachmentInput interface {
	pulumi.Input

	ToEcsNetworkInterfaceAttachmentOutput() EcsNetworkInterfaceAttachmentOutput
	ToEcsNetworkInterfaceAttachmentOutputWithContext(ctx context.Context) EcsNetworkInterfaceAttachmentOutput
}

type EcsNetworkInterfaceAttachmentMap

type EcsNetworkInterfaceAttachmentMap map[string]EcsNetworkInterfaceAttachmentInput

func (EcsNetworkInterfaceAttachmentMap) ElementType

func (EcsNetworkInterfaceAttachmentMap) ToEcsNetworkInterfaceAttachmentMapOutput

func (i EcsNetworkInterfaceAttachmentMap) ToEcsNetworkInterfaceAttachmentMapOutput() EcsNetworkInterfaceAttachmentMapOutput

func (EcsNetworkInterfaceAttachmentMap) ToEcsNetworkInterfaceAttachmentMapOutputWithContext

func (i EcsNetworkInterfaceAttachmentMap) ToEcsNetworkInterfaceAttachmentMapOutputWithContext(ctx context.Context) EcsNetworkInterfaceAttachmentMapOutput

type EcsNetworkInterfaceAttachmentMapInput

type EcsNetworkInterfaceAttachmentMapInput interface {
	pulumi.Input

	ToEcsNetworkInterfaceAttachmentMapOutput() EcsNetworkInterfaceAttachmentMapOutput
	ToEcsNetworkInterfaceAttachmentMapOutputWithContext(context.Context) EcsNetworkInterfaceAttachmentMapOutput
}

EcsNetworkInterfaceAttachmentMapInput is an input type that accepts EcsNetworkInterfaceAttachmentMap and EcsNetworkInterfaceAttachmentMapOutput values. You can construct a concrete instance of `EcsNetworkInterfaceAttachmentMapInput` via:

EcsNetworkInterfaceAttachmentMap{ "key": EcsNetworkInterfaceAttachmentArgs{...} }

type EcsNetworkInterfaceAttachmentMapOutput

type EcsNetworkInterfaceAttachmentMapOutput struct{ *pulumi.OutputState }

func (EcsNetworkInterfaceAttachmentMapOutput) ElementType

func (EcsNetworkInterfaceAttachmentMapOutput) MapIndex

func (EcsNetworkInterfaceAttachmentMapOutput) ToEcsNetworkInterfaceAttachmentMapOutput

func (o EcsNetworkInterfaceAttachmentMapOutput) ToEcsNetworkInterfaceAttachmentMapOutput() EcsNetworkInterfaceAttachmentMapOutput

func (EcsNetworkInterfaceAttachmentMapOutput) ToEcsNetworkInterfaceAttachmentMapOutputWithContext

func (o EcsNetworkInterfaceAttachmentMapOutput) ToEcsNetworkInterfaceAttachmentMapOutputWithContext(ctx context.Context) EcsNetworkInterfaceAttachmentMapOutput

type EcsNetworkInterfaceAttachmentOutput

type EcsNetworkInterfaceAttachmentOutput struct{ *pulumi.OutputState }

func (EcsNetworkInterfaceAttachmentOutput) ElementType

func (EcsNetworkInterfaceAttachmentOutput) InstanceId

The instance id.

func (EcsNetworkInterfaceAttachmentOutput) NetworkInterfaceId

The network interface id.

func (EcsNetworkInterfaceAttachmentOutput) ToEcsNetworkInterfaceAttachmentOutput

func (o EcsNetworkInterfaceAttachmentOutput) ToEcsNetworkInterfaceAttachmentOutput() EcsNetworkInterfaceAttachmentOutput

func (EcsNetworkInterfaceAttachmentOutput) ToEcsNetworkInterfaceAttachmentOutputWithContext

func (o EcsNetworkInterfaceAttachmentOutput) ToEcsNetworkInterfaceAttachmentOutputWithContext(ctx context.Context) EcsNetworkInterfaceAttachmentOutput

func (EcsNetworkInterfaceAttachmentOutput) TrunkNetworkInstanceId

func (o EcsNetworkInterfaceAttachmentOutput) TrunkNetworkInstanceId() pulumi.StringPtrOutput

The trunk network instance id.

func (EcsNetworkInterfaceAttachmentOutput) WaitForNetworkConfigurationReady

func (o EcsNetworkInterfaceAttachmentOutput) WaitForNetworkConfigurationReady() pulumi.BoolPtrOutput

The wait for network configuration ready.

type EcsNetworkInterfaceAttachmentState

type EcsNetworkInterfaceAttachmentState struct {
	// The instance id.
	InstanceId pulumi.StringPtrInput
	// The network interface id.
	NetworkInterfaceId pulumi.StringPtrInput
	// The trunk network instance id.
	TrunkNetworkInstanceId pulumi.StringPtrInput
	// The wait for network configuration ready.
	WaitForNetworkConfigurationReady pulumi.BoolPtrInput
}

func (EcsNetworkInterfaceAttachmentState) ElementType

type EcsNetworkInterfaceInput

type EcsNetworkInterfaceInput interface {
	pulumi.Input

	ToEcsNetworkInterfaceOutput() EcsNetworkInterfaceOutput
	ToEcsNetworkInterfaceOutputWithContext(ctx context.Context) EcsNetworkInterfaceOutput
}

type EcsNetworkInterfaceMap

type EcsNetworkInterfaceMap map[string]EcsNetworkInterfaceInput

func (EcsNetworkInterfaceMap) ElementType

func (EcsNetworkInterfaceMap) ElementType() reflect.Type

func (EcsNetworkInterfaceMap) ToEcsNetworkInterfaceMapOutput

func (i EcsNetworkInterfaceMap) ToEcsNetworkInterfaceMapOutput() EcsNetworkInterfaceMapOutput

func (EcsNetworkInterfaceMap) ToEcsNetworkInterfaceMapOutputWithContext

func (i EcsNetworkInterfaceMap) ToEcsNetworkInterfaceMapOutputWithContext(ctx context.Context) EcsNetworkInterfaceMapOutput

type EcsNetworkInterfaceMapInput

type EcsNetworkInterfaceMapInput interface {
	pulumi.Input

	ToEcsNetworkInterfaceMapOutput() EcsNetworkInterfaceMapOutput
	ToEcsNetworkInterfaceMapOutputWithContext(context.Context) EcsNetworkInterfaceMapOutput
}

EcsNetworkInterfaceMapInput is an input type that accepts EcsNetworkInterfaceMap and EcsNetworkInterfaceMapOutput values. You can construct a concrete instance of `EcsNetworkInterfaceMapInput` via:

EcsNetworkInterfaceMap{ "key": EcsNetworkInterfaceArgs{...} }

type EcsNetworkInterfaceMapOutput

type EcsNetworkInterfaceMapOutput struct{ *pulumi.OutputState }

func (EcsNetworkInterfaceMapOutput) ElementType

func (EcsNetworkInterfaceMapOutput) MapIndex

func (EcsNetworkInterfaceMapOutput) ToEcsNetworkInterfaceMapOutput

func (o EcsNetworkInterfaceMapOutput) ToEcsNetworkInterfaceMapOutput() EcsNetworkInterfaceMapOutput

func (EcsNetworkInterfaceMapOutput) ToEcsNetworkInterfaceMapOutputWithContext

func (o EcsNetworkInterfaceMapOutput) ToEcsNetworkInterfaceMapOutputWithContext(ctx context.Context) EcsNetworkInterfaceMapOutput

type EcsNetworkInterfaceOutput

type EcsNetworkInterfaceOutput struct{ *pulumi.OutputState }

func (EcsNetworkInterfaceOutput) Description

The description of the ENI. The description must be 2 to 256 characters in length and cannot start with http:// or https://.

func (EcsNetworkInterfaceOutput) ElementType

func (EcsNetworkInterfaceOutput) ElementType() reflect.Type

func (EcsNetworkInterfaceOutput) Ipv6AddressCount

func (o EcsNetworkInterfaceOutput) Ipv6AddressCount() pulumi.IntOutput

The number of IPv6 addresses to randomly generate for the primary ENI. Valid values: 1 to 10. **NOTE:** You cannot specify both the `ipv6Addresses` and `ipv6AddressCount` parameters.

func (EcsNetworkInterfaceOutput) Ipv6Addresses

A list of IPv6 address to be assigned to the primary ENI. Support up to 10.

func (EcsNetworkInterfaceOutput) Mac

The MAC address of the ENI.

func (EcsNetworkInterfaceOutput) Name deprecated

Field `name` has been deprecated from provider version 1.123.1. New field `networkInterfaceName` instead

Deprecated: Field 'name' has been deprecated from provider version 1.123.1. New field 'network_interface_name' instead

func (EcsNetworkInterfaceOutput) NetworkInterfaceName

func (o EcsNetworkInterfaceOutput) NetworkInterfaceName() pulumi.StringOutput

The name of the ENI. The name must be 2 to 128 characters in length, and can contain letters, digits, colons (:), underscores (_), and hyphens (-). It must start with a letter and cannot start with http:// or https://.

func (EcsNetworkInterfaceOutput) PrimaryIpAddress

func (o EcsNetworkInterfaceOutput) PrimaryIpAddress() pulumi.StringOutput

The primary private IP address of the ENI. The specified IP address must be available within the CIDR block of the VSwitch. If this parameter is not specified, an available IP address is assigned from the VSwitch CIDR block at random.

func (EcsNetworkInterfaceOutput) PrivateIp deprecated

Field `privateIp` has been deprecated from provider version 1.123.1. New field `primaryIpAddress` instead

Deprecated: Field 'private_ip' has been deprecated from provider version 1.123.1. New field 'primary_ip_address' instead

func (EcsNetworkInterfaceOutput) PrivateIpAddresses

func (o EcsNetworkInterfaceOutput) PrivateIpAddresses() pulumi.StringArrayOutput

Specifies secondary private IP address N of the ENI. This IP address must be an available IP address within the CIDR block of the VSwitch to which the ENI belongs.

func (EcsNetworkInterfaceOutput) PrivateIps deprecated

Field `privateIps` has been deprecated from provider version 1.123.1. New field `privateIpAddresses` instead

Deprecated: Field 'private_ips' has been deprecated from provider version 1.123.1. New field 'private_ip_addresses' instead

func (EcsNetworkInterfaceOutput) PrivateIpsCount deprecated

func (o EcsNetworkInterfaceOutput) PrivateIpsCount() pulumi.IntOutput

Field `privateIpsCount` has been deprecated from provider version 1.123.1. New field `secondaryPrivateIpAddressCount` instead

Deprecated: Field 'private_ips_count' has been deprecated from provider version 1.123.1. New field 'secondary_private_ip_address_count' instead

func (EcsNetworkInterfaceOutput) QueueNumber

func (o EcsNetworkInterfaceOutput) QueueNumber() pulumi.IntOutput

The queue number of the ENI.

func (EcsNetworkInterfaceOutput) ResourceGroupId

func (o EcsNetworkInterfaceOutput) ResourceGroupId() pulumi.StringPtrOutput

The resource group id.

func (EcsNetworkInterfaceOutput) SecondaryPrivateIpAddressCount

func (o EcsNetworkInterfaceOutput) SecondaryPrivateIpAddressCount() pulumi.IntOutput

The number of private IP addresses that can be automatically created by ECS.

func (EcsNetworkInterfaceOutput) SecurityGroupIds

func (o EcsNetworkInterfaceOutput) SecurityGroupIds() pulumi.StringArrayOutput

The ID of security group N. The security groups and the ENI must belong to the same VPC. The valid values of N are based on the maximum number of security groups to which an ENI can be added.

func (EcsNetworkInterfaceOutput) SecurityGroups deprecated

Field `securityGroups` has been deprecated from provider version 1.123.1. New field `securityGroupIds` instead

Deprecated: Field 'security_groups' has been deprecated from provider version 1.123.1. New field 'security_group_ids' instead

func (EcsNetworkInterfaceOutput) Status

The status of the ENI.

func (EcsNetworkInterfaceOutput) Tags

A mapping of tags to assign to the resource.

func (EcsNetworkInterfaceOutput) ToEcsNetworkInterfaceOutput

func (o EcsNetworkInterfaceOutput) ToEcsNetworkInterfaceOutput() EcsNetworkInterfaceOutput

func (EcsNetworkInterfaceOutput) ToEcsNetworkInterfaceOutputWithContext

func (o EcsNetworkInterfaceOutput) ToEcsNetworkInterfaceOutputWithContext(ctx context.Context) EcsNetworkInterfaceOutput

func (EcsNetworkInterfaceOutput) VswitchId

The ID of the VSwitch in the specified VPC. The private IP addresses assigned to the ENI must be available IP addresses within the CIDR block of the VSwitch.

type EcsNetworkInterfacePermission

type EcsNetworkInterfacePermission struct {
	pulumi.CustomResourceState

	// Alibaba Cloud Partner (Certified ISV) account ID or individual user ID.
	AccountId pulumi.StringOutput `pulumi:"accountId"`
	// Whether to force deletion of Network Interface Permission. Default value: `true`.
	Force pulumi.BoolPtrOutput `pulumi:"force"`
	// The ID of the network interface.
	NetworkInterfaceId pulumi.StringOutput `pulumi:"networkInterfaceId"`
	// The permissions of the Network Interface. Valid values: `InstanceAttach`. `InstanceAttach`: Allows authorized users to mount your ENI to the other ECS instance. The ECS instance must be in the same zone as the ENI.
	Permission pulumi.StringOutput `pulumi:"permission"`
	// The Status of the Network Interface Permissions. Valid values: `Pending`, `Granted`, `Revoking`, `Revoked`.
	Status pulumi.StringOutput `pulumi:"status"`
}

Provides a ECS Network Interface Permission resource.

For information about ECS Network Interface Permission and how to use it, see [What is Network Interface Permission](https://www.alibabacloud.com/help/en/elastic-compute-service/latest/elastic-network-interfaces-overview).

> **NOTE:** Available in v1.166.0+.

## Import

ECS Network Interface Permission can be imported using the id, e.g.

```sh

$ pulumi import alicloud:ecs/ecsNetworkInterfacePermission:EcsNetworkInterfacePermission example <id>

```

func GetEcsNetworkInterfacePermission

func GetEcsNetworkInterfacePermission(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *EcsNetworkInterfacePermissionState, opts ...pulumi.ResourceOption) (*EcsNetworkInterfacePermission, error)

GetEcsNetworkInterfacePermission gets an existing EcsNetworkInterfacePermission 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 NewEcsNetworkInterfacePermission

func NewEcsNetworkInterfacePermission(ctx *pulumi.Context,
	name string, args *EcsNetworkInterfacePermissionArgs, opts ...pulumi.ResourceOption) (*EcsNetworkInterfacePermission, error)

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

func (*EcsNetworkInterfacePermission) ElementType

func (*EcsNetworkInterfacePermission) ToEcsNetworkInterfacePermissionOutput

func (i *EcsNetworkInterfacePermission) ToEcsNetworkInterfacePermissionOutput() EcsNetworkInterfacePermissionOutput

func (*EcsNetworkInterfacePermission) ToEcsNetworkInterfacePermissionOutputWithContext

func (i *EcsNetworkInterfacePermission) ToEcsNetworkInterfacePermissionOutputWithContext(ctx context.Context) EcsNetworkInterfacePermissionOutput

type EcsNetworkInterfacePermissionArgs

type EcsNetworkInterfacePermissionArgs struct {
	// Alibaba Cloud Partner (Certified ISV) account ID or individual user ID.
	AccountId pulumi.StringInput
	// Whether to force deletion of Network Interface Permission. Default value: `true`.
	Force pulumi.BoolPtrInput
	// The ID of the network interface.
	NetworkInterfaceId pulumi.StringInput
	// The permissions of the Network Interface. Valid values: `InstanceAttach`. `InstanceAttach`: Allows authorized users to mount your ENI to the other ECS instance. The ECS instance must be in the same zone as the ENI.
	Permission pulumi.StringInput
}

The set of arguments for constructing a EcsNetworkInterfacePermission resource.

func (EcsNetworkInterfacePermissionArgs) ElementType

type EcsNetworkInterfacePermissionArray

type EcsNetworkInterfacePermissionArray []EcsNetworkInterfacePermissionInput

func (EcsNetworkInterfacePermissionArray) ElementType

func (EcsNetworkInterfacePermissionArray) ToEcsNetworkInterfacePermissionArrayOutput

func (i EcsNetworkInterfacePermissionArray) ToEcsNetworkInterfacePermissionArrayOutput() EcsNetworkInterfacePermissionArrayOutput

func (EcsNetworkInterfacePermissionArray) ToEcsNetworkInterfacePermissionArrayOutputWithContext

func (i EcsNetworkInterfacePermissionArray) ToEcsNetworkInterfacePermissionArrayOutputWithContext(ctx context.Context) EcsNetworkInterfacePermissionArrayOutput

type EcsNetworkInterfacePermissionArrayInput

type EcsNetworkInterfacePermissionArrayInput interface {
	pulumi.Input

	ToEcsNetworkInterfacePermissionArrayOutput() EcsNetworkInterfacePermissionArrayOutput
	ToEcsNetworkInterfacePermissionArrayOutputWithContext(context.Context) EcsNetworkInterfacePermissionArrayOutput
}

EcsNetworkInterfacePermissionArrayInput is an input type that accepts EcsNetworkInterfacePermissionArray and EcsNetworkInterfacePermissionArrayOutput values. You can construct a concrete instance of `EcsNetworkInterfacePermissionArrayInput` via:

EcsNetworkInterfacePermissionArray{ EcsNetworkInterfacePermissionArgs{...} }

type EcsNetworkInterfacePermissionArrayOutput

type EcsNetworkInterfacePermissionArrayOutput struct{ *pulumi.OutputState }

func (EcsNetworkInterfacePermissionArrayOutput) ElementType

func (EcsNetworkInterfacePermissionArrayOutput) Index

func (EcsNetworkInterfacePermissionArrayOutput) ToEcsNetworkInterfacePermissionArrayOutput

func (o EcsNetworkInterfacePermissionArrayOutput) ToEcsNetworkInterfacePermissionArrayOutput() EcsNetworkInterfacePermissionArrayOutput

func (EcsNetworkInterfacePermissionArrayOutput) ToEcsNetworkInterfacePermissionArrayOutputWithContext

func (o EcsNetworkInterfacePermissionArrayOutput) ToEcsNetworkInterfacePermissionArrayOutputWithContext(ctx context.Context) EcsNetworkInterfacePermissionArrayOutput

type EcsNetworkInterfacePermissionInput

type EcsNetworkInterfacePermissionInput interface {
	pulumi.Input

	ToEcsNetworkInterfacePermissionOutput() EcsNetworkInterfacePermissionOutput
	ToEcsNetworkInterfacePermissionOutputWithContext(ctx context.Context) EcsNetworkInterfacePermissionOutput
}

type EcsNetworkInterfacePermissionMap

type EcsNetworkInterfacePermissionMap map[string]EcsNetworkInterfacePermissionInput

func (EcsNetworkInterfacePermissionMap) ElementType

func (EcsNetworkInterfacePermissionMap) ToEcsNetworkInterfacePermissionMapOutput

func (i EcsNetworkInterfacePermissionMap) ToEcsNetworkInterfacePermissionMapOutput() EcsNetworkInterfacePermissionMapOutput

func (EcsNetworkInterfacePermissionMap) ToEcsNetworkInterfacePermissionMapOutputWithContext

func (i EcsNetworkInterfacePermissionMap) ToEcsNetworkInterfacePermissionMapOutputWithContext(ctx context.Context) EcsNetworkInterfacePermissionMapOutput

type EcsNetworkInterfacePermissionMapInput

type EcsNetworkInterfacePermissionMapInput interface {
	pulumi.Input

	ToEcsNetworkInterfacePermissionMapOutput() EcsNetworkInterfacePermissionMapOutput
	ToEcsNetworkInterfacePermissionMapOutputWithContext(context.Context) EcsNetworkInterfacePermissionMapOutput
}

EcsNetworkInterfacePermissionMapInput is an input type that accepts EcsNetworkInterfacePermissionMap and EcsNetworkInterfacePermissionMapOutput values. You can construct a concrete instance of `EcsNetworkInterfacePermissionMapInput` via:

EcsNetworkInterfacePermissionMap{ "key": EcsNetworkInterfacePermissionArgs{...} }

type EcsNetworkInterfacePermissionMapOutput

type EcsNetworkInterfacePermissionMapOutput struct{ *pulumi.OutputState }

func (EcsNetworkInterfacePermissionMapOutput) ElementType

func (EcsNetworkInterfacePermissionMapOutput) MapIndex

func (EcsNetworkInterfacePermissionMapOutput) ToEcsNetworkInterfacePermissionMapOutput

func (o EcsNetworkInterfacePermissionMapOutput) ToEcsNetworkInterfacePermissionMapOutput() EcsNetworkInterfacePermissionMapOutput

func (EcsNetworkInterfacePermissionMapOutput) ToEcsNetworkInterfacePermissionMapOutputWithContext

func (o EcsNetworkInterfacePermissionMapOutput) ToEcsNetworkInterfacePermissionMapOutputWithContext(ctx context.Context) EcsNetworkInterfacePermissionMapOutput

type EcsNetworkInterfacePermissionOutput

type EcsNetworkInterfacePermissionOutput struct{ *pulumi.OutputState }

func (EcsNetworkInterfacePermissionOutput) AccountId

Alibaba Cloud Partner (Certified ISV) account ID or individual user ID.

func (EcsNetworkInterfacePermissionOutput) ElementType

func (EcsNetworkInterfacePermissionOutput) Force

Whether to force deletion of Network Interface Permission. Default value: `true`.

func (EcsNetworkInterfacePermissionOutput) NetworkInterfaceId

The ID of the network interface.

func (EcsNetworkInterfacePermissionOutput) Permission

The permissions of the Network Interface. Valid values: `InstanceAttach`. `InstanceAttach`: Allows authorized users to mount your ENI to the other ECS instance. The ECS instance must be in the same zone as the ENI.

func (EcsNetworkInterfacePermissionOutput) Status

The Status of the Network Interface Permissions. Valid values: `Pending`, `Granted`, `Revoking`, `Revoked`.

func (EcsNetworkInterfacePermissionOutput) ToEcsNetworkInterfacePermissionOutput

func (o EcsNetworkInterfacePermissionOutput) ToEcsNetworkInterfacePermissionOutput() EcsNetworkInterfacePermissionOutput

func (EcsNetworkInterfacePermissionOutput) ToEcsNetworkInterfacePermissionOutputWithContext

func (o EcsNetworkInterfacePermissionOutput) ToEcsNetworkInterfacePermissionOutputWithContext(ctx context.Context) EcsNetworkInterfacePermissionOutput

type EcsNetworkInterfacePermissionState

type EcsNetworkInterfacePermissionState struct {
	// Alibaba Cloud Partner (Certified ISV) account ID or individual user ID.
	AccountId pulumi.StringPtrInput
	// Whether to force deletion of Network Interface Permission. Default value: `true`.
	Force pulumi.BoolPtrInput
	// The ID of the network interface.
	NetworkInterfaceId pulumi.StringPtrInput
	// The permissions of the Network Interface. Valid values: `InstanceAttach`. `InstanceAttach`: Allows authorized users to mount your ENI to the other ECS instance. The ECS instance must be in the same zone as the ENI.
	Permission pulumi.StringPtrInput
	// The Status of the Network Interface Permissions. Valid values: `Pending`, `Granted`, `Revoking`, `Revoked`.
	Status pulumi.StringPtrInput
}

func (EcsNetworkInterfacePermissionState) ElementType

type EcsNetworkInterfaceState

type EcsNetworkInterfaceState struct {
	// The description of the ENI. The description must be 2 to 256 characters in length and cannot start with http:// or https://.
	Description pulumi.StringPtrInput
	// The number of IPv6 addresses to randomly generate for the primary ENI. Valid values: 1 to 10. **NOTE:** You cannot specify both the `ipv6Addresses` and `ipv6AddressCount` parameters.
	Ipv6AddressCount pulumi.IntPtrInput
	// A list of IPv6 address to be assigned to the primary ENI. Support up to 10.
	Ipv6Addresses pulumi.StringArrayInput
	// The MAC address of the ENI.
	Mac pulumi.StringPtrInput
	// Field `name` has been deprecated from provider version 1.123.1. New field `networkInterfaceName` instead
	//
	// Deprecated: Field 'name' has been deprecated from provider version 1.123.1. New field 'network_interface_name' instead
	Name pulumi.StringPtrInput
	// The name of the ENI. The name must be 2 to 128 characters in length, and can contain letters, digits, colons (:), underscores (_), and hyphens (-). It must start with a letter and cannot start with http:// or https://.
	NetworkInterfaceName pulumi.StringPtrInput
	// The primary private IP address of the ENI. The specified IP address must be available within the CIDR block of the VSwitch. If this parameter is not specified, an available IP address is assigned from the VSwitch CIDR block at random.
	PrimaryIpAddress pulumi.StringPtrInput
	// Field `privateIp` has been deprecated from provider version 1.123.1. New field `primaryIpAddress` instead
	//
	// Deprecated: Field 'private_ip' has been deprecated from provider version 1.123.1. New field 'primary_ip_address' instead
	PrivateIp pulumi.StringPtrInput
	// Specifies secondary private IP address N of the ENI. This IP address must be an available IP address within the CIDR block of the VSwitch to which the ENI belongs.
	PrivateIpAddresses pulumi.StringArrayInput
	// Field `privateIps` has been deprecated from provider version 1.123.1. New field `privateIpAddresses` instead
	//
	// Deprecated: Field 'private_ips' has been deprecated from provider version 1.123.1. New field 'private_ip_addresses' instead
	PrivateIps pulumi.StringArrayInput
	// Field `privateIpsCount` has been deprecated from provider version 1.123.1. New field `secondaryPrivateIpAddressCount` instead
	//
	// Deprecated: Field 'private_ips_count' has been deprecated from provider version 1.123.1. New field 'secondary_private_ip_address_count' instead
	PrivateIpsCount pulumi.IntPtrInput
	// The queue number of the ENI.
	QueueNumber pulumi.IntPtrInput
	// The resource group id.
	ResourceGroupId pulumi.StringPtrInput
	// The number of private IP addresses that can be automatically created by ECS.
	SecondaryPrivateIpAddressCount pulumi.IntPtrInput
	// The ID of security group N. The security groups and the ENI must belong to the same VPC. The valid values of N are based on the maximum number of security groups to which an ENI can be added.
	SecurityGroupIds pulumi.StringArrayInput
	// Field `securityGroups` has been deprecated from provider version 1.123.1. New field `securityGroupIds` instead
	//
	// Deprecated: Field 'security_groups' has been deprecated from provider version 1.123.1. New field 'security_group_ids' instead
	SecurityGroups pulumi.StringArrayInput
	// The status of the ENI.
	Status pulumi.StringPtrInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapInput
	// The ID of the VSwitch in the specified VPC. The private IP addresses assigned to the ENI must be available IP addresses within the CIDR block of the VSwitch.
	VswitchId pulumi.StringPtrInput
}

func (EcsNetworkInterfaceState) ElementType

func (EcsNetworkInterfaceState) ElementType() reflect.Type

type EcsPrefixList

type EcsPrefixList struct {
	pulumi.CustomResourceState

	// The IP address family. Valid values: `IPv4`,`IPv6`.
	AddressFamily pulumi.StringOutput `pulumi:"addressFamily"`
	// The description in entry. The description must be 2 to 32 characters in length and cannot start with `http://` or `https://`.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// The Entry. The details see Block `entry`.
	Entries EcsPrefixListEntryArrayOutput `pulumi:"entries"`
	// The maximum number of entries that the prefix list can contain.  Valid values: 1 to 200.
	MaxEntries pulumi.IntOutput `pulumi:"maxEntries"`
	// The name of the prefix. The name must be 2 to 128 characters in length. It must start with a letter and cannot start with `http://`, `https://`, `com.aliyun`, or `com.alibabacloud`. It can contain letters, digits, colons (:), underscores (_), periods (.), and hyphens (-).
	PrefixListName pulumi.StringOutput `pulumi:"prefixListName"`
}

Provides a ECS Prefix List resource.

For information about ECS Prefix List and how to use it, see [What is Prefix List.](https://www.alibabacloud.com/help/en/doc-detail/207969.html).

> **NOTE:** Available in v1.152.0+.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/go/alicloud/ecs"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ecs.NewEcsPrefixList(ctx, "default", &ecs.EcsPrefixListArgs{
			AddressFamily: pulumi.String("IPv4"),
			Description:   pulumi.String("description"),
			Entries: ecs.EcsPrefixListEntryArray{
				&ecs.EcsPrefixListEntryArgs{
					Cidr:        pulumi.String("192.168.0.0/24"),
					Description: pulumi.String("description"),
				},
			},
			MaxEntries:     pulumi.Int(2),
			PrefixListName: pulumi.String("tftest"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

ECS Prefix List can be imported using the id, e.g.

```sh

$ pulumi import alicloud:ecs/ecsPrefixList:EcsPrefixList example <id>

```

func GetEcsPrefixList

func GetEcsPrefixList(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *EcsPrefixListState, opts ...pulumi.ResourceOption) (*EcsPrefixList, error)

GetEcsPrefixList gets an existing EcsPrefixList 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 NewEcsPrefixList

func NewEcsPrefixList(ctx *pulumi.Context,
	name string, args *EcsPrefixListArgs, opts ...pulumi.ResourceOption) (*EcsPrefixList, error)

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

func (*EcsPrefixList) ElementType

func (*EcsPrefixList) ElementType() reflect.Type

func (*EcsPrefixList) ToEcsPrefixListOutput

func (i *EcsPrefixList) ToEcsPrefixListOutput() EcsPrefixListOutput

func (*EcsPrefixList) ToEcsPrefixListOutputWithContext

func (i *EcsPrefixList) ToEcsPrefixListOutputWithContext(ctx context.Context) EcsPrefixListOutput

type EcsPrefixListArgs

type EcsPrefixListArgs struct {
	// The IP address family. Valid values: `IPv4`,`IPv6`.
	AddressFamily pulumi.StringInput
	// The description in entry. The description must be 2 to 32 characters in length and cannot start with `http://` or `https://`.
	Description pulumi.StringPtrInput
	// The Entry. The details see Block `entry`.
	Entries EcsPrefixListEntryArrayInput
	// The maximum number of entries that the prefix list can contain.  Valid values: 1 to 200.
	MaxEntries pulumi.IntInput
	// The name of the prefix. The name must be 2 to 128 characters in length. It must start with a letter and cannot start with `http://`, `https://`, `com.aliyun`, or `com.alibabacloud`. It can contain letters, digits, colons (:), underscores (_), periods (.), and hyphens (-).
	PrefixListName pulumi.StringInput
}

The set of arguments for constructing a EcsPrefixList resource.

func (EcsPrefixListArgs) ElementType

func (EcsPrefixListArgs) ElementType() reflect.Type

type EcsPrefixListArray

type EcsPrefixListArray []EcsPrefixListInput

func (EcsPrefixListArray) ElementType

func (EcsPrefixListArray) ElementType() reflect.Type

func (EcsPrefixListArray) ToEcsPrefixListArrayOutput

func (i EcsPrefixListArray) ToEcsPrefixListArrayOutput() EcsPrefixListArrayOutput

func (EcsPrefixListArray) ToEcsPrefixListArrayOutputWithContext

func (i EcsPrefixListArray) ToEcsPrefixListArrayOutputWithContext(ctx context.Context) EcsPrefixListArrayOutput

type EcsPrefixListArrayInput

type EcsPrefixListArrayInput interface {
	pulumi.Input

	ToEcsPrefixListArrayOutput() EcsPrefixListArrayOutput
	ToEcsPrefixListArrayOutputWithContext(context.Context) EcsPrefixListArrayOutput
}

EcsPrefixListArrayInput is an input type that accepts EcsPrefixListArray and EcsPrefixListArrayOutput values. You can construct a concrete instance of `EcsPrefixListArrayInput` via:

EcsPrefixListArray{ EcsPrefixListArgs{...} }

type EcsPrefixListArrayOutput

type EcsPrefixListArrayOutput struct{ *pulumi.OutputState }

func (EcsPrefixListArrayOutput) ElementType

func (EcsPrefixListArrayOutput) ElementType() reflect.Type

func (EcsPrefixListArrayOutput) Index

func (EcsPrefixListArrayOutput) ToEcsPrefixListArrayOutput

func (o EcsPrefixListArrayOutput) ToEcsPrefixListArrayOutput() EcsPrefixListArrayOutput

func (EcsPrefixListArrayOutput) ToEcsPrefixListArrayOutputWithContext

func (o EcsPrefixListArrayOutput) ToEcsPrefixListArrayOutputWithContext(ctx context.Context) EcsPrefixListArrayOutput

type EcsPrefixListEntry

type EcsPrefixListEntry struct {
	// The CIDR block in entry. This parameter is empty by default.  Take note of the following items:
	// * The total number of entries must not exceed the `maxEntries` value.
	// * CIDR block types are determined by the IP address family. You cannot combine `IPv4` and `IPv6` CIDR blocks in a single entry.
	// * CIDR blocks must be unique across all entries in a prefix list. For example, you cannot specify 192.168.1.0/24 twice in the entries of the prefix list.
	// * IP addresses are supported. The system converts IP addresses into CIDR blocks. For example, if you specify 192.168.1.100, the system converts it into the 192.168.1.100/32 CIDR block.
	// * If an IPv6 CIDR block is used, the system converts it to the zero compression format and changes uppercase letters into lowercase ones. For example, if you specify 2001:0DB8:0000:0000:0000:0000:0000:0000/32, the system converts it into 2001:db8::/32.
	// * For more information about CIDR blocks, see the "What is CIDR block?" section of the [Network FAQ](https://www.alibabacloud.com/help/doc-detail/40637.htm) topic.  * The total number of entries must not exceed the `maxEntries` value.
	Cidr *string `pulumi:"cidr"`
	// The description in entry. The description must be 2 to 32 characters in length and cannot start with `http://` or `https://`.
	Description *string `pulumi:"description"`
}

type EcsPrefixListEntryArgs

type EcsPrefixListEntryArgs struct {
	// The CIDR block in entry. This parameter is empty by default.  Take note of the following items:
	// * The total number of entries must not exceed the `maxEntries` value.
	// * CIDR block types are determined by the IP address family. You cannot combine `IPv4` and `IPv6` CIDR blocks in a single entry.
	// * CIDR blocks must be unique across all entries in a prefix list. For example, you cannot specify 192.168.1.0/24 twice in the entries of the prefix list.
	// * IP addresses are supported. The system converts IP addresses into CIDR blocks. For example, if you specify 192.168.1.100, the system converts it into the 192.168.1.100/32 CIDR block.
	// * If an IPv6 CIDR block is used, the system converts it to the zero compression format and changes uppercase letters into lowercase ones. For example, if you specify 2001:0DB8:0000:0000:0000:0000:0000:0000/32, the system converts it into 2001:db8::/32.
	// * For more information about CIDR blocks, see the "What is CIDR block?" section of the [Network FAQ](https://www.alibabacloud.com/help/doc-detail/40637.htm) topic.  * The total number of entries must not exceed the `maxEntries` value.
	Cidr pulumi.StringPtrInput `pulumi:"cidr"`
	// The description in entry. The description must be 2 to 32 characters in length and cannot start with `http://` or `https://`.
	Description pulumi.StringPtrInput `pulumi:"description"`
}

func (EcsPrefixListEntryArgs) ElementType

func (EcsPrefixListEntryArgs) ElementType() reflect.Type

func (EcsPrefixListEntryArgs) ToEcsPrefixListEntryOutput

func (i EcsPrefixListEntryArgs) ToEcsPrefixListEntryOutput() EcsPrefixListEntryOutput

func (EcsPrefixListEntryArgs) ToEcsPrefixListEntryOutputWithContext

func (i EcsPrefixListEntryArgs) ToEcsPrefixListEntryOutputWithContext(ctx context.Context) EcsPrefixListEntryOutput

type EcsPrefixListEntryArray

type EcsPrefixListEntryArray []EcsPrefixListEntryInput

func (EcsPrefixListEntryArray) ElementType

func (EcsPrefixListEntryArray) ElementType() reflect.Type

func (EcsPrefixListEntryArray) ToEcsPrefixListEntryArrayOutput

func (i EcsPrefixListEntryArray) ToEcsPrefixListEntryArrayOutput() EcsPrefixListEntryArrayOutput

func (EcsPrefixListEntryArray) ToEcsPrefixListEntryArrayOutputWithContext

func (i EcsPrefixListEntryArray) ToEcsPrefixListEntryArrayOutputWithContext(ctx context.Context) EcsPrefixListEntryArrayOutput

type EcsPrefixListEntryArrayInput

type EcsPrefixListEntryArrayInput interface {
	pulumi.Input

	ToEcsPrefixListEntryArrayOutput() EcsPrefixListEntryArrayOutput
	ToEcsPrefixListEntryArrayOutputWithContext(context.Context) EcsPrefixListEntryArrayOutput
}

EcsPrefixListEntryArrayInput is an input type that accepts EcsPrefixListEntryArray and EcsPrefixListEntryArrayOutput values. You can construct a concrete instance of `EcsPrefixListEntryArrayInput` via:

EcsPrefixListEntryArray{ EcsPrefixListEntryArgs{...} }

type EcsPrefixListEntryArrayOutput

type EcsPrefixListEntryArrayOutput struct{ *pulumi.OutputState }

func (EcsPrefixListEntryArrayOutput) ElementType

func (EcsPrefixListEntryArrayOutput) Index

func (EcsPrefixListEntryArrayOutput) ToEcsPrefixListEntryArrayOutput

func (o EcsPrefixListEntryArrayOutput) ToEcsPrefixListEntryArrayOutput() EcsPrefixListEntryArrayOutput

func (EcsPrefixListEntryArrayOutput) ToEcsPrefixListEntryArrayOutputWithContext

func (o EcsPrefixListEntryArrayOutput) ToEcsPrefixListEntryArrayOutputWithContext(ctx context.Context) EcsPrefixListEntryArrayOutput

type EcsPrefixListEntryInput

type EcsPrefixListEntryInput interface {
	pulumi.Input

	ToEcsPrefixListEntryOutput() EcsPrefixListEntryOutput
	ToEcsPrefixListEntryOutputWithContext(context.Context) EcsPrefixListEntryOutput
}

EcsPrefixListEntryInput is an input type that accepts EcsPrefixListEntryArgs and EcsPrefixListEntryOutput values. You can construct a concrete instance of `EcsPrefixListEntryInput` via:

EcsPrefixListEntryArgs{...}

type EcsPrefixListEntryOutput

type EcsPrefixListEntryOutput struct{ *pulumi.OutputState }

func (EcsPrefixListEntryOutput) Cidr

The CIDR block in entry. This parameter is empty by default. Take note of the following items: * The total number of entries must not exceed the `maxEntries` value. * CIDR block types are determined by the IP address family. You cannot combine `IPv4` and `IPv6` CIDR blocks in a single entry. * CIDR blocks must be unique across all entries in a prefix list. For example, you cannot specify 192.168.1.0/24 twice in the entries of the prefix list. * IP addresses are supported. The system converts IP addresses into CIDR blocks. For example, if you specify 192.168.1.100, the system converts it into the 192.168.1.100/32 CIDR block. * If an IPv6 CIDR block is used, the system converts it to the zero compression format and changes uppercase letters into lowercase ones. For example, if you specify 2001:0DB8:0000:0000:0000:0000:0000:0000/32, the system converts it into 2001:db8::/32. * For more information about CIDR blocks, see the "What is CIDR block?" section of the [Network FAQ](https://www.alibabacloud.com/help/doc-detail/40637.htm) topic. * The total number of entries must not exceed the `maxEntries` value.

func (EcsPrefixListEntryOutput) Description

The description in entry. The description must be 2 to 32 characters in length and cannot start with `http://` or `https://`.

func (EcsPrefixListEntryOutput) ElementType

func (EcsPrefixListEntryOutput) ElementType() reflect.Type

func (EcsPrefixListEntryOutput) ToEcsPrefixListEntryOutput

func (o EcsPrefixListEntryOutput) ToEcsPrefixListEntryOutput() EcsPrefixListEntryOutput

func (EcsPrefixListEntryOutput) ToEcsPrefixListEntryOutputWithContext

func (o EcsPrefixListEntryOutput) ToEcsPrefixListEntryOutputWithContext(ctx context.Context) EcsPrefixListEntryOutput

type EcsPrefixListInput

type EcsPrefixListInput interface {
	pulumi.Input

	ToEcsPrefixListOutput() EcsPrefixListOutput
	ToEcsPrefixListOutputWithContext(ctx context.Context) EcsPrefixListOutput
}

type EcsPrefixListMap

type EcsPrefixListMap map[string]EcsPrefixListInput

func (EcsPrefixListMap) ElementType

func (EcsPrefixListMap) ElementType() reflect.Type

func (EcsPrefixListMap) ToEcsPrefixListMapOutput

func (i EcsPrefixListMap) ToEcsPrefixListMapOutput() EcsPrefixListMapOutput

func (EcsPrefixListMap) ToEcsPrefixListMapOutputWithContext

func (i EcsPrefixListMap) ToEcsPrefixListMapOutputWithContext(ctx context.Context) EcsPrefixListMapOutput

type EcsPrefixListMapInput

type EcsPrefixListMapInput interface {
	pulumi.Input

	ToEcsPrefixListMapOutput() EcsPrefixListMapOutput
	ToEcsPrefixListMapOutputWithContext(context.Context) EcsPrefixListMapOutput
}

EcsPrefixListMapInput is an input type that accepts EcsPrefixListMap and EcsPrefixListMapOutput values. You can construct a concrete instance of `EcsPrefixListMapInput` via:

EcsPrefixListMap{ "key": EcsPrefixListArgs{...} }

type EcsPrefixListMapOutput

type EcsPrefixListMapOutput struct{ *pulumi.OutputState }

func (EcsPrefixListMapOutput) ElementType

func (EcsPrefixListMapOutput) ElementType() reflect.Type

func (EcsPrefixListMapOutput) MapIndex

func (EcsPrefixListMapOutput) ToEcsPrefixListMapOutput

func (o EcsPrefixListMapOutput) ToEcsPrefixListMapOutput() EcsPrefixListMapOutput

func (EcsPrefixListMapOutput) ToEcsPrefixListMapOutputWithContext

func (o EcsPrefixListMapOutput) ToEcsPrefixListMapOutputWithContext(ctx context.Context) EcsPrefixListMapOutput

type EcsPrefixListOutput

type EcsPrefixListOutput struct{ *pulumi.OutputState }

func (EcsPrefixListOutput) AddressFamily

func (o EcsPrefixListOutput) AddressFamily() pulumi.StringOutput

The IP address family. Valid values: `IPv4`,`IPv6`.

func (EcsPrefixListOutput) Description

func (o EcsPrefixListOutput) Description() pulumi.StringPtrOutput

The description in entry. The description must be 2 to 32 characters in length and cannot start with `http://` or `https://`.

func (EcsPrefixListOutput) ElementType

func (EcsPrefixListOutput) ElementType() reflect.Type

func (EcsPrefixListOutput) Entries

The Entry. The details see Block `entry`.

func (EcsPrefixListOutput) MaxEntries

func (o EcsPrefixListOutput) MaxEntries() pulumi.IntOutput

The maximum number of entries that the prefix list can contain. Valid values: 1 to 200.

func (EcsPrefixListOutput) PrefixListName

func (o EcsPrefixListOutput) PrefixListName() pulumi.StringOutput

The name of the prefix. The name must be 2 to 128 characters in length. It must start with a letter and cannot start with `http://`, `https://`, `com.aliyun`, or `com.alibabacloud`. It can contain letters, digits, colons (:), underscores (_), periods (.), and hyphens (-).

func (EcsPrefixListOutput) ToEcsPrefixListOutput

func (o EcsPrefixListOutput) ToEcsPrefixListOutput() EcsPrefixListOutput

func (EcsPrefixListOutput) ToEcsPrefixListOutputWithContext

func (o EcsPrefixListOutput) ToEcsPrefixListOutputWithContext(ctx context.Context) EcsPrefixListOutput

type EcsPrefixListState

type EcsPrefixListState struct {
	// The IP address family. Valid values: `IPv4`,`IPv6`.
	AddressFamily pulumi.StringPtrInput
	// The description in entry. The description must be 2 to 32 characters in length and cannot start with `http://` or `https://`.
	Description pulumi.StringPtrInput
	// The Entry. The details see Block `entry`.
	Entries EcsPrefixListEntryArrayInput
	// The maximum number of entries that the prefix list can contain.  Valid values: 1 to 200.
	MaxEntries pulumi.IntPtrInput
	// The name of the prefix. The name must be 2 to 128 characters in length. It must start with a letter and cannot start with `http://`, `https://`, `com.aliyun`, or `com.alibabacloud`. It can contain letters, digits, colons (:), underscores (_), periods (.), and hyphens (-).
	PrefixListName pulumi.StringPtrInput
}

func (EcsPrefixListState) ElementType

func (EcsPrefixListState) ElementType() reflect.Type

type EcsSessionManagerStatus

type EcsSessionManagerStatus struct {
	pulumi.CustomResourceState

	// The name of the resource. Valid values: `sessionManagerStatus`.
	SessionManagerStatusName pulumi.StringOutput `pulumi:"sessionManagerStatusName"`
	// The status of the resource. Valid values: `Disabled`, `Enabled`.
	Status pulumi.StringOutput `pulumi:"status"`
}

Provides a ECS Session Manager Status resource.

For information about ECS Session Manager Status and how to use it, see [What is Session Manager Status](https://www.alibabacloud.com/help/zh/doc-detail/337915.html).

> **NOTE:** Available in v1.148.0+.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ecs.NewEcsSessionManagerStatus(ctx, "default", &ecs.EcsSessionManagerStatusArgs{
			SessionManagerStatusName: pulumi.String("sessionManagerStatus"),
			Status:                   pulumi.String("Disabled"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

ECS Session Manager Status can be imported using the id, e.g.

```sh

$ pulumi import alicloud:ecs/ecsSessionManagerStatus:EcsSessionManagerStatus example <session_manager_status_name>

```

func GetEcsSessionManagerStatus

func GetEcsSessionManagerStatus(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *EcsSessionManagerStatusState, opts ...pulumi.ResourceOption) (*EcsSessionManagerStatus, error)

GetEcsSessionManagerStatus gets an existing EcsSessionManagerStatus 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 NewEcsSessionManagerStatus

func NewEcsSessionManagerStatus(ctx *pulumi.Context,
	name string, args *EcsSessionManagerStatusArgs, opts ...pulumi.ResourceOption) (*EcsSessionManagerStatus, error)

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

func (*EcsSessionManagerStatus) ElementType

func (*EcsSessionManagerStatus) ElementType() reflect.Type

func (*EcsSessionManagerStatus) ToEcsSessionManagerStatusOutput

func (i *EcsSessionManagerStatus) ToEcsSessionManagerStatusOutput() EcsSessionManagerStatusOutput

func (*EcsSessionManagerStatus) ToEcsSessionManagerStatusOutputWithContext

func (i *EcsSessionManagerStatus) ToEcsSessionManagerStatusOutputWithContext(ctx context.Context) EcsSessionManagerStatusOutput

type EcsSessionManagerStatusArgs

type EcsSessionManagerStatusArgs struct {
	// The name of the resource. Valid values: `sessionManagerStatus`.
	SessionManagerStatusName pulumi.StringInput
	// The status of the resource. Valid values: `Disabled`, `Enabled`.
	Status pulumi.StringInput
}

The set of arguments for constructing a EcsSessionManagerStatus resource.

func (EcsSessionManagerStatusArgs) ElementType

type EcsSessionManagerStatusArray

type EcsSessionManagerStatusArray []EcsSessionManagerStatusInput

func (EcsSessionManagerStatusArray) ElementType

func (EcsSessionManagerStatusArray) ToEcsSessionManagerStatusArrayOutput

func (i EcsSessionManagerStatusArray) ToEcsSessionManagerStatusArrayOutput() EcsSessionManagerStatusArrayOutput

func (EcsSessionManagerStatusArray) ToEcsSessionManagerStatusArrayOutputWithContext

func (i EcsSessionManagerStatusArray) ToEcsSessionManagerStatusArrayOutputWithContext(ctx context.Context) EcsSessionManagerStatusArrayOutput

type EcsSessionManagerStatusArrayInput

type EcsSessionManagerStatusArrayInput interface {
	pulumi.Input

	ToEcsSessionManagerStatusArrayOutput() EcsSessionManagerStatusArrayOutput
	ToEcsSessionManagerStatusArrayOutputWithContext(context.Context) EcsSessionManagerStatusArrayOutput
}

EcsSessionManagerStatusArrayInput is an input type that accepts EcsSessionManagerStatusArray and EcsSessionManagerStatusArrayOutput values. You can construct a concrete instance of `EcsSessionManagerStatusArrayInput` via:

EcsSessionManagerStatusArray{ EcsSessionManagerStatusArgs{...} }

type EcsSessionManagerStatusArrayOutput

type EcsSessionManagerStatusArrayOutput struct{ *pulumi.OutputState }

func (EcsSessionManagerStatusArrayOutput) ElementType

func (EcsSessionManagerStatusArrayOutput) Index

func (EcsSessionManagerStatusArrayOutput) ToEcsSessionManagerStatusArrayOutput

func (o EcsSessionManagerStatusArrayOutput) ToEcsSessionManagerStatusArrayOutput() EcsSessionManagerStatusArrayOutput

func (EcsSessionManagerStatusArrayOutput) ToEcsSessionManagerStatusArrayOutputWithContext

func (o EcsSessionManagerStatusArrayOutput) ToEcsSessionManagerStatusArrayOutputWithContext(ctx context.Context) EcsSessionManagerStatusArrayOutput

type EcsSessionManagerStatusInput

type EcsSessionManagerStatusInput interface {
	pulumi.Input

	ToEcsSessionManagerStatusOutput() EcsSessionManagerStatusOutput
	ToEcsSessionManagerStatusOutputWithContext(ctx context.Context) EcsSessionManagerStatusOutput
}

type EcsSessionManagerStatusMap

type EcsSessionManagerStatusMap map[string]EcsSessionManagerStatusInput

func (EcsSessionManagerStatusMap) ElementType

func (EcsSessionManagerStatusMap) ElementType() reflect.Type

func (EcsSessionManagerStatusMap) ToEcsSessionManagerStatusMapOutput

func (i EcsSessionManagerStatusMap) ToEcsSessionManagerStatusMapOutput() EcsSessionManagerStatusMapOutput

func (EcsSessionManagerStatusMap) ToEcsSessionManagerStatusMapOutputWithContext

func (i EcsSessionManagerStatusMap) ToEcsSessionManagerStatusMapOutputWithContext(ctx context.Context) EcsSessionManagerStatusMapOutput

type EcsSessionManagerStatusMapInput

type EcsSessionManagerStatusMapInput interface {
	pulumi.Input

	ToEcsSessionManagerStatusMapOutput() EcsSessionManagerStatusMapOutput
	ToEcsSessionManagerStatusMapOutputWithContext(context.Context) EcsSessionManagerStatusMapOutput
}

EcsSessionManagerStatusMapInput is an input type that accepts EcsSessionManagerStatusMap and EcsSessionManagerStatusMapOutput values. You can construct a concrete instance of `EcsSessionManagerStatusMapInput` via:

EcsSessionManagerStatusMap{ "key": EcsSessionManagerStatusArgs{...} }

type EcsSessionManagerStatusMapOutput

type EcsSessionManagerStatusMapOutput struct{ *pulumi.OutputState }

func (EcsSessionManagerStatusMapOutput) ElementType

func (EcsSessionManagerStatusMapOutput) MapIndex

func (EcsSessionManagerStatusMapOutput) ToEcsSessionManagerStatusMapOutput

func (o EcsSessionManagerStatusMapOutput) ToEcsSessionManagerStatusMapOutput() EcsSessionManagerStatusMapOutput

func (EcsSessionManagerStatusMapOutput) ToEcsSessionManagerStatusMapOutputWithContext

func (o EcsSessionManagerStatusMapOutput) ToEcsSessionManagerStatusMapOutputWithContext(ctx context.Context) EcsSessionManagerStatusMapOutput

type EcsSessionManagerStatusOutput

type EcsSessionManagerStatusOutput struct{ *pulumi.OutputState }

func (EcsSessionManagerStatusOutput) ElementType

func (EcsSessionManagerStatusOutput) SessionManagerStatusName

func (o EcsSessionManagerStatusOutput) SessionManagerStatusName() pulumi.StringOutput

The name of the resource. Valid values: `sessionManagerStatus`.

func (EcsSessionManagerStatusOutput) Status

The status of the resource. Valid values: `Disabled`, `Enabled`.

func (EcsSessionManagerStatusOutput) ToEcsSessionManagerStatusOutput

func (o EcsSessionManagerStatusOutput) ToEcsSessionManagerStatusOutput() EcsSessionManagerStatusOutput

func (EcsSessionManagerStatusOutput) ToEcsSessionManagerStatusOutputWithContext

func (o EcsSessionManagerStatusOutput) ToEcsSessionManagerStatusOutputWithContext(ctx context.Context) EcsSessionManagerStatusOutput

type EcsSessionManagerStatusState

type EcsSessionManagerStatusState struct {
	// The name of the resource. Valid values: `sessionManagerStatus`.
	SessionManagerStatusName pulumi.StringPtrInput
	// The status of the resource. Valid values: `Disabled`, `Enabled`.
	Status pulumi.StringPtrInput
}

func (EcsSessionManagerStatusState) ElementType

type EcsSnapshot

type EcsSnapshot struct {
	pulumi.CustomResourceState

	// The category of the snapshot. Valid Values: `standard` and `flash`.
	Category pulumi.StringPtrOutput `pulumi:"category"`
	// The description of the snapshot.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// The ID of the disk.
	DiskId pulumi.StringOutput `pulumi:"diskId"`
	// Specifies whether to forcibly delete the snapshot that has been used to create disks.
	Force pulumi.BoolPtrOutput `pulumi:"force"`
	// Specifies whether to enable the instant access feature.
	InstantAccess pulumi.BoolPtrOutput `pulumi:"instantAccess"`
	// Specifies the retention period of the instant access feature. After the retention period ends, the snapshot is automatically released.
	InstantAccessRetentionDays pulumi.IntPtrOutput `pulumi:"instantAccessRetentionDays"`
	// Field `name` has been deprecated from provider version 1.120.0. New field `snapshotName` instead.
	//
	// Deprecated: Field 'name' has been deprecated from provider version 1.120.0. New field 'snapshot_name' instead.
	Name pulumi.StringOutput `pulumi:"name"`
	// The resource group id.
	ResourceGroupId pulumi.StringPtrOutput `pulumi:"resourceGroupId"`
	// The retention period of the snapshot.
	RetentionDays pulumi.IntPtrOutput `pulumi:"retentionDays"`
	// The name of the snapshot.
	SnapshotName pulumi.StringOutput `pulumi:"snapshotName"`
	// The status of snapshot.
	Status pulumi.StringOutput `pulumi:"status"`
	// A mapping of tags to assign to the snapshot.
	Tags pulumi.MapOutput `pulumi:"tags"`
}

Provides a ECS Snapshot resource.

For information about ECS Snapshot and how to use it, see [What is Snapshot](https://www.alibabacloud.com/help/en/doc-detail/25524.htm).

> **NOTE:** Available in v1.120.0+.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ecs.NewEcsSnapshot(ctx, "default", &ecs.EcsSnapshotArgs{
			Category:      pulumi.String("standard"),
			Description:   pulumi.String("Test For Terraform"),
			DiskId:        pulumi.String("d-gw8csgxxxxxxxxx"),
			RetentionDays: pulumi.Int(20),
			SnapshotName:  pulumi.String("tf-test"),
			Tags: pulumi.AnyMap{
				"Created": pulumi.Any("TF"),
				"For":     pulumi.Any("Acceptance-test"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

ECS Snapshot can be imported using the id, e.g.

```sh

$ pulumi import alicloud:ecs/ecsSnapshot:EcsSnapshot example <id>

```

func GetEcsSnapshot

func GetEcsSnapshot(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *EcsSnapshotState, opts ...pulumi.ResourceOption) (*EcsSnapshot, error)

GetEcsSnapshot gets an existing EcsSnapshot 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 NewEcsSnapshot

func NewEcsSnapshot(ctx *pulumi.Context,
	name string, args *EcsSnapshotArgs, opts ...pulumi.ResourceOption) (*EcsSnapshot, error)

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

func (*EcsSnapshot) ElementType

func (*EcsSnapshot) ElementType() reflect.Type

func (*EcsSnapshot) ToEcsSnapshotOutput

func (i *EcsSnapshot) ToEcsSnapshotOutput() EcsSnapshotOutput

func (*EcsSnapshot) ToEcsSnapshotOutputWithContext

func (i *EcsSnapshot) ToEcsSnapshotOutputWithContext(ctx context.Context) EcsSnapshotOutput

type EcsSnapshotArgs

type EcsSnapshotArgs struct {
	// The category of the snapshot. Valid Values: `standard` and `flash`.
	Category pulumi.StringPtrInput
	// The description of the snapshot.
	Description pulumi.StringPtrInput
	// The ID of the disk.
	DiskId pulumi.StringInput
	// Specifies whether to forcibly delete the snapshot that has been used to create disks.
	Force pulumi.BoolPtrInput
	// Specifies whether to enable the instant access feature.
	InstantAccess pulumi.BoolPtrInput
	// Specifies the retention period of the instant access feature. After the retention period ends, the snapshot is automatically released.
	InstantAccessRetentionDays pulumi.IntPtrInput
	// Field `name` has been deprecated from provider version 1.120.0. New field `snapshotName` instead.
	//
	// Deprecated: Field 'name' has been deprecated from provider version 1.120.0. New field 'snapshot_name' instead.
	Name pulumi.StringPtrInput
	// The resource group id.
	ResourceGroupId pulumi.StringPtrInput
	// The retention period of the snapshot.
	RetentionDays pulumi.IntPtrInput
	// The name of the snapshot.
	SnapshotName pulumi.StringPtrInput
	// A mapping of tags to assign to the snapshot.
	Tags pulumi.MapInput
}

The set of arguments for constructing a EcsSnapshot resource.

func (EcsSnapshotArgs) ElementType

func (EcsSnapshotArgs) ElementType() reflect.Type

type EcsSnapshotArray

type EcsSnapshotArray []EcsSnapshotInput

func (EcsSnapshotArray) ElementType

func (EcsSnapshotArray) ElementType() reflect.Type

func (EcsSnapshotArray) ToEcsSnapshotArrayOutput

func (i EcsSnapshotArray) ToEcsSnapshotArrayOutput() EcsSnapshotArrayOutput

func (EcsSnapshotArray) ToEcsSnapshotArrayOutputWithContext

func (i EcsSnapshotArray) ToEcsSnapshotArrayOutputWithContext(ctx context.Context) EcsSnapshotArrayOutput

type EcsSnapshotArrayInput

type EcsSnapshotArrayInput interface {
	pulumi.Input

	ToEcsSnapshotArrayOutput() EcsSnapshotArrayOutput
	ToEcsSnapshotArrayOutputWithContext(context.Context) EcsSnapshotArrayOutput
}

EcsSnapshotArrayInput is an input type that accepts EcsSnapshotArray and EcsSnapshotArrayOutput values. You can construct a concrete instance of `EcsSnapshotArrayInput` via:

EcsSnapshotArray{ EcsSnapshotArgs{...} }

type EcsSnapshotArrayOutput

type EcsSnapshotArrayOutput struct{ *pulumi.OutputState }

func (EcsSnapshotArrayOutput) ElementType

func (EcsSnapshotArrayOutput) ElementType() reflect.Type

func (EcsSnapshotArrayOutput) Index

func (EcsSnapshotArrayOutput) ToEcsSnapshotArrayOutput

func (o EcsSnapshotArrayOutput) ToEcsSnapshotArrayOutput() EcsSnapshotArrayOutput

func (EcsSnapshotArrayOutput) ToEcsSnapshotArrayOutputWithContext

func (o EcsSnapshotArrayOutput) ToEcsSnapshotArrayOutputWithContext(ctx context.Context) EcsSnapshotArrayOutput

type EcsSnapshotGroup

type EcsSnapshotGroup struct {
	pulumi.CustomResourceState

	// The description of the snapshot-consistent group. The description must be 2 to 256 characters in length and cannot start with http:// or https://.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// The ID of disk for which to create snapshots. You can specify multiple disk IDs across instances with the same zone.
	DiskIds pulumi.StringArrayOutput `pulumi:"diskIds"`
	// The ID of disk N for which you do not need to create snapshots. After this parameter is specified, the created snapshot-consistent group does not contain snapshots of the disk.
	ExcludeDiskIds pulumi.StringArrayOutput `pulumi:"excludeDiskIds"`
	// The ID of the instance.
	InstanceId pulumi.StringPtrOutput `pulumi:"instanceId"`
	// Specifies whether to enable the instant access feature.
	InstantAccess pulumi.BoolPtrOutput `pulumi:"instantAccess"`
	// Specify the number of days for which the instant access feature is available. Unit: days. Valid values: `1` to `65535`.
	InstantAccessRetentionDays pulumi.IntPtrOutput `pulumi:"instantAccessRetentionDays"`
	// The ID of the resource group to which the snapshot consistency group belongs.
	ResourceGroupId pulumi.StringOutput `pulumi:"resourceGroupId"`
	// The name of the snapshot-consistent group. The name must be `2` to `128` characters in length, and can contain letters, digits, periods (.), underscores (_), hyphens (-), and colons (:). It must start with a letter or a digit and cannot start with `http://` or `https://`.
	SnapshotGroupName pulumi.StringPtrOutput `pulumi:"snapshotGroupName"`
	// The status of the resource.
	Status pulumi.StringOutput `pulumi:"status"`
	// A mapping of tags to assign to the snapshot group.
	Tags pulumi.MapOutput `pulumi:"tags"`
}

Provides a ECS Snapshot Group resource.

For information about ECS Snapshot Group and how to use it, see [What is Snapshot Group](https://www.alibabacloud.com/help/en/doc-detail/210939.html).

> **NOTE:** Available in v1.160.0+.

## Import

ECS Snapshot Group can be imported using the id, e.g.

```sh

$ pulumi import alicloud:ecs/ecsSnapshotGroup:EcsSnapshotGroup example <id>

```

func GetEcsSnapshotGroup

func GetEcsSnapshotGroup(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *EcsSnapshotGroupState, opts ...pulumi.ResourceOption) (*EcsSnapshotGroup, error)

GetEcsSnapshotGroup gets an existing EcsSnapshotGroup 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 NewEcsSnapshotGroup

func NewEcsSnapshotGroup(ctx *pulumi.Context,
	name string, args *EcsSnapshotGroupArgs, opts ...pulumi.ResourceOption) (*EcsSnapshotGroup, error)

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

func (*EcsSnapshotGroup) ElementType

func (*EcsSnapshotGroup) ElementType() reflect.Type

func (*EcsSnapshotGroup) ToEcsSnapshotGroupOutput

func (i *EcsSnapshotGroup) ToEcsSnapshotGroupOutput() EcsSnapshotGroupOutput

func (*EcsSnapshotGroup) ToEcsSnapshotGroupOutputWithContext

func (i *EcsSnapshotGroup) ToEcsSnapshotGroupOutputWithContext(ctx context.Context) EcsSnapshotGroupOutput

type EcsSnapshotGroupArgs

type EcsSnapshotGroupArgs struct {
	// The description of the snapshot-consistent group. The description must be 2 to 256 characters in length and cannot start with http:// or https://.
	Description pulumi.StringPtrInput
	// The ID of disk for which to create snapshots. You can specify multiple disk IDs across instances with the same zone.
	DiskIds pulumi.StringArrayInput
	// The ID of disk N for which you do not need to create snapshots. After this parameter is specified, the created snapshot-consistent group does not contain snapshots of the disk.
	ExcludeDiskIds pulumi.StringArrayInput
	// The ID of the instance.
	InstanceId pulumi.StringPtrInput
	// Specifies whether to enable the instant access feature.
	InstantAccess pulumi.BoolPtrInput
	// Specify the number of days for which the instant access feature is available. Unit: days. Valid values: `1` to `65535`.
	InstantAccessRetentionDays pulumi.IntPtrInput
	// The ID of the resource group to which the snapshot consistency group belongs.
	ResourceGroupId pulumi.StringPtrInput
	// The name of the snapshot-consistent group. The name must be `2` to `128` characters in length, and can contain letters, digits, periods (.), underscores (_), hyphens (-), and colons (:). It must start with a letter or a digit and cannot start with `http://` or `https://`.
	SnapshotGroupName pulumi.StringPtrInput
	// A mapping of tags to assign to the snapshot group.
	Tags pulumi.MapInput
}

The set of arguments for constructing a EcsSnapshotGroup resource.

func (EcsSnapshotGroupArgs) ElementType

func (EcsSnapshotGroupArgs) ElementType() reflect.Type

type EcsSnapshotGroupArray

type EcsSnapshotGroupArray []EcsSnapshotGroupInput

func (EcsSnapshotGroupArray) ElementType

func (EcsSnapshotGroupArray) ElementType() reflect.Type

func (EcsSnapshotGroupArray) ToEcsSnapshotGroupArrayOutput

func (i EcsSnapshotGroupArray) ToEcsSnapshotGroupArrayOutput() EcsSnapshotGroupArrayOutput

func (EcsSnapshotGroupArray) ToEcsSnapshotGroupArrayOutputWithContext

func (i EcsSnapshotGroupArray) ToEcsSnapshotGroupArrayOutputWithContext(ctx context.Context) EcsSnapshotGroupArrayOutput

type EcsSnapshotGroupArrayInput

type EcsSnapshotGroupArrayInput interface {
	pulumi.Input

	ToEcsSnapshotGroupArrayOutput() EcsSnapshotGroupArrayOutput
	ToEcsSnapshotGroupArrayOutputWithContext(context.Context) EcsSnapshotGroupArrayOutput
}

EcsSnapshotGroupArrayInput is an input type that accepts EcsSnapshotGroupArray and EcsSnapshotGroupArrayOutput values. You can construct a concrete instance of `EcsSnapshotGroupArrayInput` via:

EcsSnapshotGroupArray{ EcsSnapshotGroupArgs{...} }

type EcsSnapshotGroupArrayOutput

type EcsSnapshotGroupArrayOutput struct{ *pulumi.OutputState }

func (EcsSnapshotGroupArrayOutput) ElementType

func (EcsSnapshotGroupArrayOutput) Index

func (EcsSnapshotGroupArrayOutput) ToEcsSnapshotGroupArrayOutput

func (o EcsSnapshotGroupArrayOutput) ToEcsSnapshotGroupArrayOutput() EcsSnapshotGroupArrayOutput

func (EcsSnapshotGroupArrayOutput) ToEcsSnapshotGroupArrayOutputWithContext

func (o EcsSnapshotGroupArrayOutput) ToEcsSnapshotGroupArrayOutputWithContext(ctx context.Context) EcsSnapshotGroupArrayOutput

type EcsSnapshotGroupInput

type EcsSnapshotGroupInput interface {
	pulumi.Input

	ToEcsSnapshotGroupOutput() EcsSnapshotGroupOutput
	ToEcsSnapshotGroupOutputWithContext(ctx context.Context) EcsSnapshotGroupOutput
}

type EcsSnapshotGroupMap

type EcsSnapshotGroupMap map[string]EcsSnapshotGroupInput

func (EcsSnapshotGroupMap) ElementType

func (EcsSnapshotGroupMap) ElementType() reflect.Type

func (EcsSnapshotGroupMap) ToEcsSnapshotGroupMapOutput

func (i EcsSnapshotGroupMap) ToEcsSnapshotGroupMapOutput() EcsSnapshotGroupMapOutput

func (EcsSnapshotGroupMap) ToEcsSnapshotGroupMapOutputWithContext

func (i EcsSnapshotGroupMap) ToEcsSnapshotGroupMapOutputWithContext(ctx context.Context) EcsSnapshotGroupMapOutput

type EcsSnapshotGroupMapInput

type EcsSnapshotGroupMapInput interface {
	pulumi.Input

	ToEcsSnapshotGroupMapOutput() EcsSnapshotGroupMapOutput
	ToEcsSnapshotGroupMapOutputWithContext(context.Context) EcsSnapshotGroupMapOutput
}

EcsSnapshotGroupMapInput is an input type that accepts EcsSnapshotGroupMap and EcsSnapshotGroupMapOutput values. You can construct a concrete instance of `EcsSnapshotGroupMapInput` via:

EcsSnapshotGroupMap{ "key": EcsSnapshotGroupArgs{...} }

type EcsSnapshotGroupMapOutput

type EcsSnapshotGroupMapOutput struct{ *pulumi.OutputState }

func (EcsSnapshotGroupMapOutput) ElementType

func (EcsSnapshotGroupMapOutput) ElementType() reflect.Type

func (EcsSnapshotGroupMapOutput) MapIndex

func (EcsSnapshotGroupMapOutput) ToEcsSnapshotGroupMapOutput

func (o EcsSnapshotGroupMapOutput) ToEcsSnapshotGroupMapOutput() EcsSnapshotGroupMapOutput

func (EcsSnapshotGroupMapOutput) ToEcsSnapshotGroupMapOutputWithContext

func (o EcsSnapshotGroupMapOutput) ToEcsSnapshotGroupMapOutputWithContext(ctx context.Context) EcsSnapshotGroupMapOutput

type EcsSnapshotGroupOutput

type EcsSnapshotGroupOutput struct{ *pulumi.OutputState }

func (EcsSnapshotGroupOutput) Description

The description of the snapshot-consistent group. The description must be 2 to 256 characters in length and cannot start with http:// or https://.

func (EcsSnapshotGroupOutput) DiskIds

The ID of disk for which to create snapshots. You can specify multiple disk IDs across instances with the same zone.

func (EcsSnapshotGroupOutput) ElementType

func (EcsSnapshotGroupOutput) ElementType() reflect.Type

func (EcsSnapshotGroupOutput) ExcludeDiskIds

func (o EcsSnapshotGroupOutput) ExcludeDiskIds() pulumi.StringArrayOutput

The ID of disk N for which you do not need to create snapshots. After this parameter is specified, the created snapshot-consistent group does not contain snapshots of the disk.

func (EcsSnapshotGroupOutput) InstanceId

The ID of the instance.

func (EcsSnapshotGroupOutput) InstantAccess

func (o EcsSnapshotGroupOutput) InstantAccess() pulumi.BoolPtrOutput

Specifies whether to enable the instant access feature.

func (EcsSnapshotGroupOutput) InstantAccessRetentionDays

func (o EcsSnapshotGroupOutput) InstantAccessRetentionDays() pulumi.IntPtrOutput

Specify the number of days for which the instant access feature is available. Unit: days. Valid values: `1` to `65535`.

func (EcsSnapshotGroupOutput) ResourceGroupId

func (o EcsSnapshotGroupOutput) ResourceGroupId() pulumi.StringOutput

The ID of the resource group to which the snapshot consistency group belongs.

func (EcsSnapshotGroupOutput) SnapshotGroupName

func (o EcsSnapshotGroupOutput) SnapshotGroupName() pulumi.StringPtrOutput

The name of the snapshot-consistent group. The name must be `2` to `128` characters in length, and can contain letters, digits, periods (.), underscores (_), hyphens (-), and colons (:). It must start with a letter or a digit and cannot start with `http://` or `https://`.

func (EcsSnapshotGroupOutput) Status

The status of the resource.

func (EcsSnapshotGroupOutput) Tags

A mapping of tags to assign to the snapshot group.

func (EcsSnapshotGroupOutput) ToEcsSnapshotGroupOutput

func (o EcsSnapshotGroupOutput) ToEcsSnapshotGroupOutput() EcsSnapshotGroupOutput

func (EcsSnapshotGroupOutput) ToEcsSnapshotGroupOutputWithContext

func (o EcsSnapshotGroupOutput) ToEcsSnapshotGroupOutputWithContext(ctx context.Context) EcsSnapshotGroupOutput

type EcsSnapshotGroupState

type EcsSnapshotGroupState struct {
	// The description of the snapshot-consistent group. The description must be 2 to 256 characters in length and cannot start with http:// or https://.
	Description pulumi.StringPtrInput
	// The ID of disk for which to create snapshots. You can specify multiple disk IDs across instances with the same zone.
	DiskIds pulumi.StringArrayInput
	// The ID of disk N for which you do not need to create snapshots. After this parameter is specified, the created snapshot-consistent group does not contain snapshots of the disk.
	ExcludeDiskIds pulumi.StringArrayInput
	// The ID of the instance.
	InstanceId pulumi.StringPtrInput
	// Specifies whether to enable the instant access feature.
	InstantAccess pulumi.BoolPtrInput
	// Specify the number of days for which the instant access feature is available. Unit: days. Valid values: `1` to `65535`.
	InstantAccessRetentionDays pulumi.IntPtrInput
	// The ID of the resource group to which the snapshot consistency group belongs.
	ResourceGroupId pulumi.StringPtrInput
	// The name of the snapshot-consistent group. The name must be `2` to `128` characters in length, and can contain letters, digits, periods (.), underscores (_), hyphens (-), and colons (:). It must start with a letter or a digit and cannot start with `http://` or `https://`.
	SnapshotGroupName pulumi.StringPtrInput
	// The status of the resource.
	Status pulumi.StringPtrInput
	// A mapping of tags to assign to the snapshot group.
	Tags pulumi.MapInput
}

func (EcsSnapshotGroupState) ElementType

func (EcsSnapshotGroupState) ElementType() reflect.Type

type EcsSnapshotInput

type EcsSnapshotInput interface {
	pulumi.Input

	ToEcsSnapshotOutput() EcsSnapshotOutput
	ToEcsSnapshotOutputWithContext(ctx context.Context) EcsSnapshotOutput
}

type EcsSnapshotMap

type EcsSnapshotMap map[string]EcsSnapshotInput

func (EcsSnapshotMap) ElementType

func (EcsSnapshotMap) ElementType() reflect.Type

func (EcsSnapshotMap) ToEcsSnapshotMapOutput

func (i EcsSnapshotMap) ToEcsSnapshotMapOutput() EcsSnapshotMapOutput

func (EcsSnapshotMap) ToEcsSnapshotMapOutputWithContext

func (i EcsSnapshotMap) ToEcsSnapshotMapOutputWithContext(ctx context.Context) EcsSnapshotMapOutput

type EcsSnapshotMapInput

type EcsSnapshotMapInput interface {
	pulumi.Input

	ToEcsSnapshotMapOutput() EcsSnapshotMapOutput
	ToEcsSnapshotMapOutputWithContext(context.Context) EcsSnapshotMapOutput
}

EcsSnapshotMapInput is an input type that accepts EcsSnapshotMap and EcsSnapshotMapOutput values. You can construct a concrete instance of `EcsSnapshotMapInput` via:

EcsSnapshotMap{ "key": EcsSnapshotArgs{...} }

type EcsSnapshotMapOutput

type EcsSnapshotMapOutput struct{ *pulumi.OutputState }

func (EcsSnapshotMapOutput) ElementType

func (EcsSnapshotMapOutput) ElementType() reflect.Type

func (EcsSnapshotMapOutput) MapIndex

func (EcsSnapshotMapOutput) ToEcsSnapshotMapOutput

func (o EcsSnapshotMapOutput) ToEcsSnapshotMapOutput() EcsSnapshotMapOutput

func (EcsSnapshotMapOutput) ToEcsSnapshotMapOutputWithContext

func (o EcsSnapshotMapOutput) ToEcsSnapshotMapOutputWithContext(ctx context.Context) EcsSnapshotMapOutput

type EcsSnapshotOutput

type EcsSnapshotOutput struct{ *pulumi.OutputState }

func (EcsSnapshotOutput) Category

The category of the snapshot. Valid Values: `standard` and `flash`.

func (EcsSnapshotOutput) Description

func (o EcsSnapshotOutput) Description() pulumi.StringPtrOutput

The description of the snapshot.

func (EcsSnapshotOutput) DiskId

The ID of the disk.

func (EcsSnapshotOutput) ElementType

func (EcsSnapshotOutput) ElementType() reflect.Type

func (EcsSnapshotOutput) Force

Specifies whether to forcibly delete the snapshot that has been used to create disks.

func (EcsSnapshotOutput) InstantAccess

func (o EcsSnapshotOutput) InstantAccess() pulumi.BoolPtrOutput

Specifies whether to enable the instant access feature.

func (EcsSnapshotOutput) InstantAccessRetentionDays

func (o EcsSnapshotOutput) InstantAccessRetentionDays() pulumi.IntPtrOutput

Specifies the retention period of the instant access feature. After the retention period ends, the snapshot is automatically released.

func (EcsSnapshotOutput) Name deprecated

Field `name` has been deprecated from provider version 1.120.0. New field `snapshotName` instead.

Deprecated: Field 'name' has been deprecated from provider version 1.120.0. New field 'snapshot_name' instead.

func (EcsSnapshotOutput) ResourceGroupId

func (o EcsSnapshotOutput) ResourceGroupId() pulumi.StringPtrOutput

The resource group id.

func (EcsSnapshotOutput) RetentionDays

func (o EcsSnapshotOutput) RetentionDays() pulumi.IntPtrOutput

The retention period of the snapshot.

func (EcsSnapshotOutput) SnapshotName

func (o EcsSnapshotOutput) SnapshotName() pulumi.StringOutput

The name of the snapshot.

func (EcsSnapshotOutput) Status

The status of snapshot.

func (EcsSnapshotOutput) Tags

A mapping of tags to assign to the snapshot.

func (EcsSnapshotOutput) ToEcsSnapshotOutput

func (o EcsSnapshotOutput) ToEcsSnapshotOutput() EcsSnapshotOutput

func (EcsSnapshotOutput) ToEcsSnapshotOutputWithContext

func (o EcsSnapshotOutput) ToEcsSnapshotOutputWithContext(ctx context.Context) EcsSnapshotOutput

type EcsSnapshotState

type EcsSnapshotState struct {
	// The category of the snapshot. Valid Values: `standard` and `flash`.
	Category pulumi.StringPtrInput
	// The description of the snapshot.
	Description pulumi.StringPtrInput
	// The ID of the disk.
	DiskId pulumi.StringPtrInput
	// Specifies whether to forcibly delete the snapshot that has been used to create disks.
	Force pulumi.BoolPtrInput
	// Specifies whether to enable the instant access feature.
	InstantAccess pulumi.BoolPtrInput
	// Specifies the retention period of the instant access feature. After the retention period ends, the snapshot is automatically released.
	InstantAccessRetentionDays pulumi.IntPtrInput
	// Field `name` has been deprecated from provider version 1.120.0. New field `snapshotName` instead.
	//
	// Deprecated: Field 'name' has been deprecated from provider version 1.120.0. New field 'snapshot_name' instead.
	Name pulumi.StringPtrInput
	// The resource group id.
	ResourceGroupId pulumi.StringPtrInput
	// The retention period of the snapshot.
	RetentionDays pulumi.IntPtrInput
	// The name of the snapshot.
	SnapshotName pulumi.StringPtrInput
	// The status of snapshot.
	Status pulumi.StringPtrInput
	// A mapping of tags to assign to the snapshot.
	Tags pulumi.MapInput
}

func (EcsSnapshotState) ElementType

func (EcsSnapshotState) ElementType() reflect.Type

type Eip deprecated

type Eip struct {
	pulumi.CustomResourceState

	ActivityId pulumi.StringPtrOutput `pulumi:"activityId"`
	// The name of the EIP instance. This name can have a string of 2 to 128 characters, must contain only alphanumeric characters or hyphens, such as "-",".","_", and must not begin or end with a hyphen, and must not begin with http:// or https://.
	AddressName pulumi.StringOutput  `pulumi:"addressName"`
	AutoPay     pulumi.BoolPtrOutput `pulumi:"autoPay"`
	// Maximum bandwidth to the elastic public network, measured in Mbps (Mega bit per second). If this value is not specified, then automatically sets it to 5 Mbps.
	Bandwidth pulumi.StringOutput `pulumi:"bandwidth"`
	// Whether enable the deletion protection or not. Default value: `false`.
	// - true: Enable deletion protection.
	// - false: Disable deletion protection.
	DeletionProtection pulumi.BoolOutput `pulumi:"deletionProtection"`
	// Description of the EIP instance, This description can have a string of 2 to 256 characters, It cannot begin with http:// or https://. Default value is null.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// (It has been deprecated from version 1.126.0 and using new attribute `paymentType` instead) Elastic IP instance charge type. Valid values are "PrePaid" and "PostPaid". Default to "PostPaid".
	//
	// Deprecated: Field 'instance_charge_type' has been deprecated from provider version 1.126.0 and it will be remove in the future version. Please use the new attribute 'payment_type' instead.
	InstanceChargeType pulumi.StringOutput `pulumi:"instanceChargeType"`
	// Internet charge type of the EIP, Valid values are `PayByBandwidth`, `PayByTraffic`. Default to `PayByBandwidth`. **NOTE:** From version `1.7.1` to `1.125.0`, it defaults to `PayByTraffic`. It is only "PayByBandwidth" when `instanceChargeType` is PrePaid.
	InternetChargeType pulumi.StringOutput `pulumi:"internetChargeType"`
	// The elastic ip address
	IpAddress pulumi.StringOutput `pulumi:"ipAddress"`
	// The line type of the Elastic IP instance. Default to `BGP`. Other type of the isp need to open a whitelist.
	Isp pulumi.StringOutput `pulumi:"isp"`
	// It has been deprecated from version 1.126.0 and using new attribute `addressName` instead.
	//
	// Deprecated: Field 'name' has been deprecated from provider version 1.126.0 and it will be remove in the future version. Please use the new attribute 'address_name' instead.
	Name    pulumi.StringOutput    `pulumi:"name"`
	Netmode pulumi.StringPtrOutput `pulumi:"netmode"`
	// The billing method of the EIP. Valid values: `Subscription` and `PayAsYouGo`. Default value is `PayAsYouGo`.
	PaymentType           pulumi.StringOutput    `pulumi:"paymentType"`
	Period                pulumi.IntPtrOutput    `pulumi:"period"`
	PublicIpAddressPoolId pulumi.StringPtrOutput `pulumi:"publicIpAddressPoolId"`
	// The Id of resource group which the eip belongs.
	ResourceGroupId         pulumi.StringOutput      `pulumi:"resourceGroupId"`
	SecurityProtectionTypes pulumi.StringArrayOutput `pulumi:"securityProtectionTypes"`
	// The EIP current status.
	Status pulumi.StringOutput `pulumi:"status"`
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapOutput `pulumi:"tags"`
}

## Import

Elastic IP address can be imported using the id, e.g.

```sh

$ pulumi import alicloud:ecs/eip:Eip example eip-abc12345678

```

Deprecated: This resource has been deprecated in favour of the EipAddress aliResource

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 EipAddress

type EipAddress struct {
	pulumi.CustomResourceState

	// The activity id.
	ActivityId pulumi.StringPtrOutput `pulumi:"activityId"`
	// The name of the EIP instance. This name can have a string of 2 to 128 characters, must contain only alphanumeric characters or hyphens, such as "-",".","_", and must not begin or end with a hyphen, and must not begin with http:// or https://.
	AddressName pulumi.StringOutput `pulumi:"addressName"`
	// Whether to pay automatically. Valid values: `true` and `false`. Default value: `true`. When `autoPay` is `true`, The order will be automatically paid. When `autoPay` is `false`, The order needs to go to the order center to complete the payment. **NOTE:** When `paymentType` is `Subscription`, this parameter is valid.
	AutoPay pulumi.BoolPtrOutput `pulumi:"autoPay"`
	// The maximum bandwidth of the EIP. Valid values: `1` to `200`. Unit: Mbit/s. Default value: `5`.
	Bandwidth pulumi.StringOutput `pulumi:"bandwidth"`
	// Whether enable the deletion protection or not. Default value: `false`.
	DeletionProtection pulumi.BoolOutput `pulumi:"deletionProtection"`
	// The description of the EIP.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// Field `instanceChargeType` has been deprecated from provider version 1.126.0, and it will be removed in the future version. Please use the new attribute `paymentType` instead.
	//
	// Deprecated: Field 'instance_charge_type' has been deprecated from provider version 1.126.0 and it will be remove in the future version. Please use the new attribute 'payment_type' instead.
	InstanceChargeType pulumi.StringOutput `pulumi:"instanceChargeType"`
	// The metering method of the EIP.
	// Valid values: `PayByDominantTraffic`, `PayByBandwidth` and `PayByTraffic`. Default to `PayByBandwidth`. **NOTE:** It must be set to "PayByBandwidth" when `paymentType` is "Subscription".
	InternetChargeType pulumi.StringOutput `pulumi:"internetChargeType"`
	// The address of the EIP.
	IpAddress pulumi.StringOutput `pulumi:"ipAddress"`
	// The line type. You can set this parameter only when you create a `PayAsYouGo` EIP. Valid values: `BGP`: BGP (Multi-ISP) lines.Up to 89 high-quality BGP lines are available worldwide. Direct connections with multiple Internet Service Providers (ISPs), including Telecom, Unicom, Mobile, Railcom, Netcom, CERNET, China Broadcast Network, Dr. Peng, and Founder, can be established in all regions in mainland China. `BGP_PRO`:  BGP (Multi-ISP) Pro lines optimize data transmission to mainland China and improve connection quality for international services. Compared with BGP (Multi-ISP), when BGP (Multi-ISP) Pro provides services to clients in mainland China (excluding data centers), cross-border connections are established without using international ISP services. This reduces network latency.
	Isp pulumi.StringOutput `pulumi:"isp"`
	// Field `name` has been deprecated from provider version 1.126.0, and it will be removed in the future version. Please use the new attribute `addressName` instead.
	//
	// Deprecated: Field 'name' has been deprecated from provider version 1.126.0 and it will be remove in the future version. Please use the new attribute 'address_name' instead.
	Name pulumi.StringOutput `pulumi:"name"`
	// The type of the network. Valid value is `public` (Internet).
	Netmode pulumi.StringPtrOutput `pulumi:"netmode"`
	// The billing method of the EIP. Valid values: `Subscription` and `PayAsYouGo`. Default value is `PayAsYouGo`.
	PaymentType pulumi.StringOutput `pulumi:"paymentType"`
	// The duration that you will buy the resource, in month. It is valid when `paymentType` is `Subscription`. Valid values: [1-9, 12, 24, 36]. At present, the provider does not support modify "period" and you can do that via web console.
	Period pulumi.IntPtrOutput `pulumi:"period"`
	// The ID of the IP address pool. The EIP is allocated from the IP address pool. **NOTE:** The feature is available only to users whose accounts are included in the whitelist. If you want to use the feature,[submit a ticket](https://www.alibabacloud.com/help/en/virtual-private-cloud/latest/429100).
	PublicIpAddressPoolId pulumi.StringPtrOutput `pulumi:"publicIpAddressPoolId"`
	// The ID of the resource group.
	ResourceGroupId pulumi.StringOutput `pulumi:"resourceGroupId"`
	// The edition of Anti-DDoS. If you do not set this parameter, Anti-DDoS Origin Basic is used. If you set the value to `AntiDDoS_Enhanced`, Anti-DDoS Pro(Premium) is used.
	SecurityProtectionTypes pulumi.StringArrayOutput `pulumi:"securityProtectionTypes"`
	// The status of the EIP. Valid values:  `Associating`: The EIP is being associated. `Unassociating`: The EIP is being disassociated. `InUse`: The EIP is allocated. `Available`:The EIP is available.
	Status pulumi.StringOutput `pulumi:"status"`
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapOutput `pulumi:"tags"`
}

Provides a EIP Address resource.

For information about EIP Address and how to use it, see [What is EIP Address](https://www.alibabacloud.com/help/en/doc-detail/36016.htm).

> **NOTE:** Available in v1.126.0+.

> **NOTE:** BGP (Multi-ISP) lines are supported in all regions. BGP (Multi-ISP) Pro lines are supported only in the China (Hong Kong) region.

> **NOTE:** The resource only supports to create `PayAsYouGo PayByTraffic` or `Subscription PayByBandwidth` elastic IP for international account. Otherwise, you will happened error `COMMODITY.INVALID_COMPONENT`. Your account is international if you can use it to login in [International Web Console](https://account.alibabacloud.com/login/login.htm).

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ecs.NewEipAddress(ctx, "example", &ecs.EipAddressArgs{
			AddressName:        pulumi.String("tf-testAcc1234"),
			InternetChargeType: pulumi.String("PayByBandwidth"),
			Isp:                pulumi.String("BGP"),
			PaymentType:        pulumi.String("PayAsYouGo"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

EIP Address can be imported using the id, e.g.

```sh

$ pulumi import alicloud:ecs/eipAddress:EipAddress example <id>

```

func GetEipAddress

func GetEipAddress(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *EipAddressState, opts ...pulumi.ResourceOption) (*EipAddress, error)

GetEipAddress gets an existing EipAddress 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 NewEipAddress

func NewEipAddress(ctx *pulumi.Context,
	name string, args *EipAddressArgs, opts ...pulumi.ResourceOption) (*EipAddress, error)

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

func (*EipAddress) ElementType

func (*EipAddress) ElementType() reflect.Type

func (*EipAddress) ToEipAddressOutput

func (i *EipAddress) ToEipAddressOutput() EipAddressOutput

func (*EipAddress) ToEipAddressOutputWithContext

func (i *EipAddress) ToEipAddressOutputWithContext(ctx context.Context) EipAddressOutput

type EipAddressArgs

type EipAddressArgs struct {
	// The activity id.
	ActivityId pulumi.StringPtrInput
	// The name of the EIP instance. This name can have a string of 2 to 128 characters, must contain only alphanumeric characters or hyphens, such as "-",".","_", and must not begin or end with a hyphen, and must not begin with http:// or https://.
	AddressName pulumi.StringPtrInput
	// Whether to pay automatically. Valid values: `true` and `false`. Default value: `true`. When `autoPay` is `true`, The order will be automatically paid. When `autoPay` is `false`, The order needs to go to the order center to complete the payment. **NOTE:** When `paymentType` is `Subscription`, this parameter is valid.
	AutoPay pulumi.BoolPtrInput
	// The maximum bandwidth of the EIP. Valid values: `1` to `200`. Unit: Mbit/s. Default value: `5`.
	Bandwidth pulumi.StringPtrInput
	// Whether enable the deletion protection or not. Default value: `false`.
	DeletionProtection pulumi.BoolPtrInput
	// The description of the EIP.
	Description pulumi.StringPtrInput
	// Field `instanceChargeType` has been deprecated from provider version 1.126.0, and it will be removed in the future version. Please use the new attribute `paymentType` instead.
	//
	// Deprecated: Field 'instance_charge_type' has been deprecated from provider version 1.126.0 and it will be remove in the future version. Please use the new attribute 'payment_type' instead.
	InstanceChargeType pulumi.StringPtrInput
	// The metering method of the EIP.
	// Valid values: `PayByDominantTraffic`, `PayByBandwidth` and `PayByTraffic`. Default to `PayByBandwidth`. **NOTE:** It must be set to "PayByBandwidth" when `paymentType` is "Subscription".
	InternetChargeType pulumi.StringPtrInput
	// The line type. You can set this parameter only when you create a `PayAsYouGo` EIP. Valid values: `BGP`: BGP (Multi-ISP) lines.Up to 89 high-quality BGP lines are available worldwide. Direct connections with multiple Internet Service Providers (ISPs), including Telecom, Unicom, Mobile, Railcom, Netcom, CERNET, China Broadcast Network, Dr. Peng, and Founder, can be established in all regions in mainland China. `BGP_PRO`:  BGP (Multi-ISP) Pro lines optimize data transmission to mainland China and improve connection quality for international services. Compared with BGP (Multi-ISP), when BGP (Multi-ISP) Pro provides services to clients in mainland China (excluding data centers), cross-border connections are established without using international ISP services. This reduces network latency.
	Isp pulumi.StringPtrInput
	// Field `name` has been deprecated from provider version 1.126.0, and it will be removed in the future version. Please use the new attribute `addressName` instead.
	//
	// Deprecated: Field 'name' has been deprecated from provider version 1.126.0 and it will be remove in the future version. Please use the new attribute 'address_name' instead.
	Name pulumi.StringPtrInput
	// The type of the network. Valid value is `public` (Internet).
	Netmode pulumi.StringPtrInput
	// The billing method of the EIP. Valid values: `Subscription` and `PayAsYouGo`. Default value is `PayAsYouGo`.
	PaymentType pulumi.StringPtrInput
	// The duration that you will buy the resource, in month. It is valid when `paymentType` is `Subscription`. Valid values: [1-9, 12, 24, 36]. At present, the provider does not support modify "period" and you can do that via web console.
	Period pulumi.IntPtrInput
	// The ID of the IP address pool. The EIP is allocated from the IP address pool. **NOTE:** The feature is available only to users whose accounts are included in the whitelist. If you want to use the feature,[submit a ticket](https://www.alibabacloud.com/help/en/virtual-private-cloud/latest/429100).
	PublicIpAddressPoolId pulumi.StringPtrInput
	// The ID of the resource group.
	ResourceGroupId pulumi.StringPtrInput
	// The edition of Anti-DDoS. If you do not set this parameter, Anti-DDoS Origin Basic is used. If you set the value to `AntiDDoS_Enhanced`, Anti-DDoS Pro(Premium) is used.
	SecurityProtectionTypes pulumi.StringArrayInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapInput
}

The set of arguments for constructing a EipAddress resource.

func (EipAddressArgs) ElementType

func (EipAddressArgs) ElementType() reflect.Type

type EipAddressArray

type EipAddressArray []EipAddressInput

func (EipAddressArray) ElementType

func (EipAddressArray) ElementType() reflect.Type

func (EipAddressArray) ToEipAddressArrayOutput

func (i EipAddressArray) ToEipAddressArrayOutput() EipAddressArrayOutput

func (EipAddressArray) ToEipAddressArrayOutputWithContext

func (i EipAddressArray) ToEipAddressArrayOutputWithContext(ctx context.Context) EipAddressArrayOutput

type EipAddressArrayInput

type EipAddressArrayInput interface {
	pulumi.Input

	ToEipAddressArrayOutput() EipAddressArrayOutput
	ToEipAddressArrayOutputWithContext(context.Context) EipAddressArrayOutput
}

EipAddressArrayInput is an input type that accepts EipAddressArray and EipAddressArrayOutput values. You can construct a concrete instance of `EipAddressArrayInput` via:

EipAddressArray{ EipAddressArgs{...} }

type EipAddressArrayOutput

type EipAddressArrayOutput struct{ *pulumi.OutputState }

func (EipAddressArrayOutput) ElementType

func (EipAddressArrayOutput) ElementType() reflect.Type

func (EipAddressArrayOutput) Index

func (EipAddressArrayOutput) ToEipAddressArrayOutput

func (o EipAddressArrayOutput) ToEipAddressArrayOutput() EipAddressArrayOutput

func (EipAddressArrayOutput) ToEipAddressArrayOutputWithContext

func (o EipAddressArrayOutput) ToEipAddressArrayOutputWithContext(ctx context.Context) EipAddressArrayOutput

type EipAddressInput

type EipAddressInput interface {
	pulumi.Input

	ToEipAddressOutput() EipAddressOutput
	ToEipAddressOutputWithContext(ctx context.Context) EipAddressOutput
}

type EipAddressMap

type EipAddressMap map[string]EipAddressInput

func (EipAddressMap) ElementType

func (EipAddressMap) ElementType() reflect.Type

func (EipAddressMap) ToEipAddressMapOutput

func (i EipAddressMap) ToEipAddressMapOutput() EipAddressMapOutput

func (EipAddressMap) ToEipAddressMapOutputWithContext

func (i EipAddressMap) ToEipAddressMapOutputWithContext(ctx context.Context) EipAddressMapOutput

type EipAddressMapInput

type EipAddressMapInput interface {
	pulumi.Input

	ToEipAddressMapOutput() EipAddressMapOutput
	ToEipAddressMapOutputWithContext(context.Context) EipAddressMapOutput
}

EipAddressMapInput is an input type that accepts EipAddressMap and EipAddressMapOutput values. You can construct a concrete instance of `EipAddressMapInput` via:

EipAddressMap{ "key": EipAddressArgs{...} }

type EipAddressMapOutput

type EipAddressMapOutput struct{ *pulumi.OutputState }

func (EipAddressMapOutput) ElementType

func (EipAddressMapOutput) ElementType() reflect.Type

func (EipAddressMapOutput) MapIndex

func (EipAddressMapOutput) ToEipAddressMapOutput

func (o EipAddressMapOutput) ToEipAddressMapOutput() EipAddressMapOutput

func (EipAddressMapOutput) ToEipAddressMapOutputWithContext

func (o EipAddressMapOutput) ToEipAddressMapOutputWithContext(ctx context.Context) EipAddressMapOutput

type EipAddressOutput

type EipAddressOutput struct{ *pulumi.OutputState }

func (EipAddressOutput) ActivityId

func (o EipAddressOutput) ActivityId() pulumi.StringPtrOutput

The activity id.

func (EipAddressOutput) AddressName

func (o EipAddressOutput) AddressName() pulumi.StringOutput

The name of the EIP instance. This name can have a string of 2 to 128 characters, must contain only alphanumeric characters or hyphens, such as "-",".","_", and must not begin or end with a hyphen, and must not begin with http:// or https://.

func (EipAddressOutput) AutoPay

Whether to pay automatically. Valid values: `true` and `false`. Default value: `true`. When `autoPay` is `true`, The order will be automatically paid. When `autoPay` is `false`, The order needs to go to the order center to complete the payment. **NOTE:** When `paymentType` is `Subscription`, this parameter is valid.

func (EipAddressOutput) Bandwidth

func (o EipAddressOutput) Bandwidth() pulumi.StringOutput

The maximum bandwidth of the EIP. Valid values: `1` to `200`. Unit: Mbit/s. Default value: `5`.

func (EipAddressOutput) DeletionProtection

func (o EipAddressOutput) DeletionProtection() pulumi.BoolOutput

Whether enable the deletion protection or not. Default value: `false`.

func (EipAddressOutput) Description

func (o EipAddressOutput) Description() pulumi.StringPtrOutput

The description of the EIP.

func (EipAddressOutput) ElementType

func (EipAddressOutput) ElementType() reflect.Type

func (EipAddressOutput) InstanceChargeType deprecated

func (o EipAddressOutput) InstanceChargeType() pulumi.StringOutput

Field `instanceChargeType` has been deprecated from provider version 1.126.0, and it will be removed in the future version. Please use the new attribute `paymentType` instead.

Deprecated: Field 'instance_charge_type' has been deprecated from provider version 1.126.0 and it will be remove in the future version. Please use the new attribute 'payment_type' instead.

func (EipAddressOutput) InternetChargeType

func (o EipAddressOutput) InternetChargeType() pulumi.StringOutput

The metering method of the EIP. Valid values: `PayByDominantTraffic`, `PayByBandwidth` and `PayByTraffic`. Default to `PayByBandwidth`. **NOTE:** It must be set to "PayByBandwidth" when `paymentType` is "Subscription".

func (EipAddressOutput) IpAddress

func (o EipAddressOutput) IpAddress() pulumi.StringOutput

The address of the EIP.

func (EipAddressOutput) Isp

The line type. You can set this parameter only when you create a `PayAsYouGo` EIP. Valid values: `BGP`: BGP (Multi-ISP) lines.Up to 89 high-quality BGP lines are available worldwide. Direct connections with multiple Internet Service Providers (ISPs), including Telecom, Unicom, Mobile, Railcom, Netcom, CERNET, China Broadcast Network, Dr. Peng, and Founder, can be established in all regions in mainland China. `BGP_PRO`: BGP (Multi-ISP) Pro lines optimize data transmission to mainland China and improve connection quality for international services. Compared with BGP (Multi-ISP), when BGP (Multi-ISP) Pro provides services to clients in mainland China (excluding data centers), cross-border connections are established without using international ISP services. This reduces network latency.

func (EipAddressOutput) Name deprecated

Field `name` has been deprecated from provider version 1.126.0, and it will be removed in the future version. Please use the new attribute `addressName` instead.

Deprecated: Field 'name' has been deprecated from provider version 1.126.0 and it will be remove in the future version. Please use the new attribute 'address_name' instead.

func (EipAddressOutput) Netmode

The type of the network. Valid value is `public` (Internet).

func (EipAddressOutput) PaymentType

func (o EipAddressOutput) PaymentType() pulumi.StringOutput

The billing method of the EIP. Valid values: `Subscription` and `PayAsYouGo`. Default value is `PayAsYouGo`.

func (EipAddressOutput) Period

The duration that you will buy the resource, in month. It is valid when `paymentType` is `Subscription`. Valid values: [1-9, 12, 24, 36]. At present, the provider does not support modify "period" and you can do that via web console.

func (EipAddressOutput) PublicIpAddressPoolId

func (o EipAddressOutput) PublicIpAddressPoolId() pulumi.StringPtrOutput

The ID of the IP address pool. The EIP is allocated from the IP address pool. **NOTE:** The feature is available only to users whose accounts are included in the whitelist. If you want to use the feature,[submit a ticket](https://www.alibabacloud.com/help/en/virtual-private-cloud/latest/429100).

func (EipAddressOutput) ResourceGroupId

func (o EipAddressOutput) ResourceGroupId() pulumi.StringOutput

The ID of the resource group.

func (EipAddressOutput) SecurityProtectionTypes

func (o EipAddressOutput) SecurityProtectionTypes() pulumi.StringArrayOutput

The edition of Anti-DDoS. If you do not set this parameter, Anti-DDoS Origin Basic is used. If you set the value to `AntiDDoS_Enhanced`, Anti-DDoS Pro(Premium) is used.

func (EipAddressOutput) Status

The status of the EIP. Valid values: `Associating`: The EIP is being associated. `Unassociating`: The EIP is being disassociated. `InUse`: The EIP is allocated. `Available`:The EIP is available.

func (EipAddressOutput) Tags

A mapping of tags to assign to the resource.

func (EipAddressOutput) ToEipAddressOutput

func (o EipAddressOutput) ToEipAddressOutput() EipAddressOutput

func (EipAddressOutput) ToEipAddressOutputWithContext

func (o EipAddressOutput) ToEipAddressOutputWithContext(ctx context.Context) EipAddressOutput

type EipAddressState

type EipAddressState struct {
	// The activity id.
	ActivityId pulumi.StringPtrInput
	// The name of the EIP instance. This name can have a string of 2 to 128 characters, must contain only alphanumeric characters or hyphens, such as "-",".","_", and must not begin or end with a hyphen, and must not begin with http:// or https://.
	AddressName pulumi.StringPtrInput
	// Whether to pay automatically. Valid values: `true` and `false`. Default value: `true`. When `autoPay` is `true`, The order will be automatically paid. When `autoPay` is `false`, The order needs to go to the order center to complete the payment. **NOTE:** When `paymentType` is `Subscription`, this parameter is valid.
	AutoPay pulumi.BoolPtrInput
	// The maximum bandwidth of the EIP. Valid values: `1` to `200`. Unit: Mbit/s. Default value: `5`.
	Bandwidth pulumi.StringPtrInput
	// Whether enable the deletion protection or not. Default value: `false`.
	DeletionProtection pulumi.BoolPtrInput
	// The description of the EIP.
	Description pulumi.StringPtrInput
	// Field `instanceChargeType` has been deprecated from provider version 1.126.0, and it will be removed in the future version. Please use the new attribute `paymentType` instead.
	//
	// Deprecated: Field 'instance_charge_type' has been deprecated from provider version 1.126.0 and it will be remove in the future version. Please use the new attribute 'payment_type' instead.
	InstanceChargeType pulumi.StringPtrInput
	// The metering method of the EIP.
	// Valid values: `PayByDominantTraffic`, `PayByBandwidth` and `PayByTraffic`. Default to `PayByBandwidth`. **NOTE:** It must be set to "PayByBandwidth" when `paymentType` is "Subscription".
	InternetChargeType pulumi.StringPtrInput
	// The address of the EIP.
	IpAddress pulumi.StringPtrInput
	// The line type. You can set this parameter only when you create a `PayAsYouGo` EIP. Valid values: `BGP`: BGP (Multi-ISP) lines.Up to 89 high-quality BGP lines are available worldwide. Direct connections with multiple Internet Service Providers (ISPs), including Telecom, Unicom, Mobile, Railcom, Netcom, CERNET, China Broadcast Network, Dr. Peng, and Founder, can be established in all regions in mainland China. `BGP_PRO`:  BGP (Multi-ISP) Pro lines optimize data transmission to mainland China and improve connection quality for international services. Compared with BGP (Multi-ISP), when BGP (Multi-ISP) Pro provides services to clients in mainland China (excluding data centers), cross-border connections are established without using international ISP services. This reduces network latency.
	Isp pulumi.StringPtrInput
	// Field `name` has been deprecated from provider version 1.126.0, and it will be removed in the future version. Please use the new attribute `addressName` instead.
	//
	// Deprecated: Field 'name' has been deprecated from provider version 1.126.0 and it will be remove in the future version. Please use the new attribute 'address_name' instead.
	Name pulumi.StringPtrInput
	// The type of the network. Valid value is `public` (Internet).
	Netmode pulumi.StringPtrInput
	// The billing method of the EIP. Valid values: `Subscription` and `PayAsYouGo`. Default value is `PayAsYouGo`.
	PaymentType pulumi.StringPtrInput
	// The duration that you will buy the resource, in month. It is valid when `paymentType` is `Subscription`. Valid values: [1-9, 12, 24, 36]. At present, the provider does not support modify "period" and you can do that via web console.
	Period pulumi.IntPtrInput
	// The ID of the IP address pool. The EIP is allocated from the IP address pool. **NOTE:** The feature is available only to users whose accounts are included in the whitelist. If you want to use the feature,[submit a ticket](https://www.alibabacloud.com/help/en/virtual-private-cloud/latest/429100).
	PublicIpAddressPoolId pulumi.StringPtrInput
	// The ID of the resource group.
	ResourceGroupId pulumi.StringPtrInput
	// The edition of Anti-DDoS. If you do not set this parameter, Anti-DDoS Origin Basic is used. If you set the value to `AntiDDoS_Enhanced`, Anti-DDoS Pro(Premium) is used.
	SecurityProtectionTypes pulumi.StringArrayInput
	// The status of the EIP. Valid values:  `Associating`: The EIP is being associated. `Unassociating`: The EIP is being disassociated. `InUse`: The EIP is allocated. `Available`:The EIP is available.
	Status pulumi.StringPtrInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapInput
}

func (EipAddressState) ElementType

func (EipAddressState) ElementType() reflect.Type

type EipArgs

type EipArgs struct {
	ActivityId pulumi.StringPtrInput
	// The name of the EIP instance. This name can have a string of 2 to 128 characters, must contain only alphanumeric characters or hyphens, such as "-",".","_", and must not begin or end with a hyphen, and must not begin with http:// or https://.
	AddressName pulumi.StringPtrInput
	AutoPay     pulumi.BoolPtrInput
	// Maximum bandwidth to the elastic public network, measured in Mbps (Mega bit per second). If this value is not specified, then automatically sets it to 5 Mbps.
	Bandwidth pulumi.StringPtrInput
	// Whether enable the deletion protection or not. Default value: `false`.
	// - true: Enable deletion protection.
	// - false: Disable deletion protection.
	DeletionProtection pulumi.BoolPtrInput
	// Description of the EIP instance, This description can have a string of 2 to 256 characters, It cannot begin with http:// or https://. Default value is null.
	Description pulumi.StringPtrInput
	// (It has been deprecated from version 1.126.0 and using new attribute `paymentType` instead) Elastic IP instance charge type. Valid values are "PrePaid" and "PostPaid". Default to "PostPaid".
	//
	// Deprecated: Field 'instance_charge_type' has been deprecated from provider version 1.126.0 and it will be remove in the future version. Please use the new attribute 'payment_type' instead.
	InstanceChargeType pulumi.StringPtrInput
	// Internet charge type of the EIP, Valid values are `PayByBandwidth`, `PayByTraffic`. Default to `PayByBandwidth`. **NOTE:** From version `1.7.1` to `1.125.0`, it defaults to `PayByTraffic`. It is only "PayByBandwidth" when `instanceChargeType` is PrePaid.
	InternetChargeType pulumi.StringPtrInput
	// The line type of the Elastic IP instance. Default to `BGP`. Other type of the isp need to open a whitelist.
	Isp pulumi.StringPtrInput
	// It has been deprecated from version 1.126.0 and using new attribute `addressName` instead.
	//
	// Deprecated: Field 'name' has been deprecated from provider version 1.126.0 and it will be remove in the future version. Please use the new attribute 'address_name' instead.
	Name    pulumi.StringPtrInput
	Netmode pulumi.StringPtrInput
	// The billing method of the EIP. Valid values: `Subscription` and `PayAsYouGo`. Default value is `PayAsYouGo`.
	PaymentType           pulumi.StringPtrInput
	Period                pulumi.IntPtrInput
	PublicIpAddressPoolId pulumi.StringPtrInput
	// The Id of resource group which the eip belongs.
	ResourceGroupId         pulumi.StringPtrInput
	SecurityProtectionTypes pulumi.StringArrayInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapInput
}

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 EipAssociation

type EipAssociation struct {
	pulumi.CustomResourceState

	// The allocation EIP ID.
	AllocationId pulumi.StringOutput `pulumi:"allocationId"`
	// When EIP is bound to a NAT gateway, and the NAT gateway adds a DNAT or SNAT entry, set it for `true` can unassociation any way. Default to `false`.
	Force pulumi.BoolPtrOutput `pulumi:"force"`
	// The ID of the ECS or SLB instance or Nat Gateway or NetworkInterface or HaVip.
	InstanceId pulumi.StringOutput `pulumi:"instanceId"`
	// The type of cloud product that the eip instance to bind. Valid values: `EcsInstance`, `SlbInstance`, `Nat`, `NetworkInterface` and `HaVip`.
	InstanceType pulumi.StringOutput `pulumi:"instanceType"`
	// The private IP address in the network segment of the vswitch which has been assigned.
	PrivateIpAddress pulumi.StringOutput `pulumi:"privateIpAddress"`
}

## Import

Elastic IP address association can be imported using the id, e.g.

```sh

$ pulumi import alicloud:ecs/eipAssociation:EipAssociation example eip-abc12345678:i-abc12355

```

func GetEipAssociation

func GetEipAssociation(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *EipAssociationState, opts ...pulumi.ResourceOption) (*EipAssociation, error)

GetEipAssociation gets an existing EipAssociation 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 NewEipAssociation

func NewEipAssociation(ctx *pulumi.Context,
	name string, args *EipAssociationArgs, opts ...pulumi.ResourceOption) (*EipAssociation, error)

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

func (*EipAssociation) ElementType

func (*EipAssociation) ElementType() reflect.Type

func (*EipAssociation) ToEipAssociationOutput

func (i *EipAssociation) ToEipAssociationOutput() EipAssociationOutput

func (*EipAssociation) ToEipAssociationOutputWithContext

func (i *EipAssociation) ToEipAssociationOutputWithContext(ctx context.Context) EipAssociationOutput

type EipAssociationArgs

type EipAssociationArgs struct {
	// The allocation EIP ID.
	AllocationId pulumi.StringInput
	// When EIP is bound to a NAT gateway, and the NAT gateway adds a DNAT or SNAT entry, set it for `true` can unassociation any way. Default to `false`.
	Force pulumi.BoolPtrInput
	// The ID of the ECS or SLB instance or Nat Gateway or NetworkInterface or HaVip.
	InstanceId pulumi.StringInput
	// The type of cloud product that the eip instance to bind. Valid values: `EcsInstance`, `SlbInstance`, `Nat`, `NetworkInterface` and `HaVip`.
	InstanceType pulumi.StringPtrInput
	// The private IP address in the network segment of the vswitch which has been assigned.
	PrivateIpAddress pulumi.StringPtrInput
}

The set of arguments for constructing a EipAssociation resource.

func (EipAssociationArgs) ElementType

func (EipAssociationArgs) ElementType() reflect.Type

type EipAssociationArray

type EipAssociationArray []EipAssociationInput

func (EipAssociationArray) ElementType

func (EipAssociationArray) ElementType() reflect.Type

func (EipAssociationArray) ToEipAssociationArrayOutput

func (i EipAssociationArray) ToEipAssociationArrayOutput() EipAssociationArrayOutput

func (EipAssociationArray) ToEipAssociationArrayOutputWithContext

func (i EipAssociationArray) ToEipAssociationArrayOutputWithContext(ctx context.Context) EipAssociationArrayOutput

type EipAssociationArrayInput

type EipAssociationArrayInput interface {
	pulumi.Input

	ToEipAssociationArrayOutput() EipAssociationArrayOutput
	ToEipAssociationArrayOutputWithContext(context.Context) EipAssociationArrayOutput
}

EipAssociationArrayInput is an input type that accepts EipAssociationArray and EipAssociationArrayOutput values. You can construct a concrete instance of `EipAssociationArrayInput` via:

EipAssociationArray{ EipAssociationArgs{...} }

type EipAssociationArrayOutput

type EipAssociationArrayOutput struct{ *pulumi.OutputState }

func (EipAssociationArrayOutput) ElementType

func (EipAssociationArrayOutput) ElementType() reflect.Type

func (EipAssociationArrayOutput) Index

func (EipAssociationArrayOutput) ToEipAssociationArrayOutput

func (o EipAssociationArrayOutput) ToEipAssociationArrayOutput() EipAssociationArrayOutput

func (EipAssociationArrayOutput) ToEipAssociationArrayOutputWithContext

func (o EipAssociationArrayOutput) ToEipAssociationArrayOutputWithContext(ctx context.Context) EipAssociationArrayOutput

type EipAssociationInput

type EipAssociationInput interface {
	pulumi.Input

	ToEipAssociationOutput() EipAssociationOutput
	ToEipAssociationOutputWithContext(ctx context.Context) EipAssociationOutput
}

type EipAssociationMap

type EipAssociationMap map[string]EipAssociationInput

func (EipAssociationMap) ElementType

func (EipAssociationMap) ElementType() reflect.Type

func (EipAssociationMap) ToEipAssociationMapOutput

func (i EipAssociationMap) ToEipAssociationMapOutput() EipAssociationMapOutput

func (EipAssociationMap) ToEipAssociationMapOutputWithContext

func (i EipAssociationMap) ToEipAssociationMapOutputWithContext(ctx context.Context) EipAssociationMapOutput

type EipAssociationMapInput

type EipAssociationMapInput interface {
	pulumi.Input

	ToEipAssociationMapOutput() EipAssociationMapOutput
	ToEipAssociationMapOutputWithContext(context.Context) EipAssociationMapOutput
}

EipAssociationMapInput is an input type that accepts EipAssociationMap and EipAssociationMapOutput values. You can construct a concrete instance of `EipAssociationMapInput` via:

EipAssociationMap{ "key": EipAssociationArgs{...} }

type EipAssociationMapOutput

type EipAssociationMapOutput struct{ *pulumi.OutputState }

func (EipAssociationMapOutput) ElementType

func (EipAssociationMapOutput) ElementType() reflect.Type

func (EipAssociationMapOutput) MapIndex

func (EipAssociationMapOutput) ToEipAssociationMapOutput

func (o EipAssociationMapOutput) ToEipAssociationMapOutput() EipAssociationMapOutput

func (EipAssociationMapOutput) ToEipAssociationMapOutputWithContext

func (o EipAssociationMapOutput) ToEipAssociationMapOutputWithContext(ctx context.Context) EipAssociationMapOutput

type EipAssociationOutput

type EipAssociationOutput struct{ *pulumi.OutputState }

func (EipAssociationOutput) AllocationId

func (o EipAssociationOutput) AllocationId() pulumi.StringOutput

The allocation EIP ID.

func (EipAssociationOutput) ElementType

func (EipAssociationOutput) ElementType() reflect.Type

func (EipAssociationOutput) Force

When EIP is bound to a NAT gateway, and the NAT gateway adds a DNAT or SNAT entry, set it for `true` can unassociation any way. Default to `false`.

func (EipAssociationOutput) InstanceId

func (o EipAssociationOutput) InstanceId() pulumi.StringOutput

The ID of the ECS or SLB instance or Nat Gateway or NetworkInterface or HaVip.

func (EipAssociationOutput) InstanceType

func (o EipAssociationOutput) InstanceType() pulumi.StringOutput

The type of cloud product that the eip instance to bind. Valid values: `EcsInstance`, `SlbInstance`, `Nat`, `NetworkInterface` and `HaVip`.

func (EipAssociationOutput) PrivateIpAddress

func (o EipAssociationOutput) PrivateIpAddress() pulumi.StringOutput

The private IP address in the network segment of the vswitch which has been assigned.

func (EipAssociationOutput) ToEipAssociationOutput

func (o EipAssociationOutput) ToEipAssociationOutput() EipAssociationOutput

func (EipAssociationOutput) ToEipAssociationOutputWithContext

func (o EipAssociationOutput) ToEipAssociationOutputWithContext(ctx context.Context) EipAssociationOutput

type EipAssociationState

type EipAssociationState struct {
	// The allocation EIP ID.
	AllocationId pulumi.StringPtrInput
	// When EIP is bound to a NAT gateway, and the NAT gateway adds a DNAT or SNAT entry, set it for `true` can unassociation any way. Default to `false`.
	Force pulumi.BoolPtrInput
	// The ID of the ECS or SLB instance or Nat Gateway or NetworkInterface or HaVip.
	InstanceId pulumi.StringPtrInput
	// The type of cloud product that the eip instance to bind. Valid values: `EcsInstance`, `SlbInstance`, `Nat`, `NetworkInterface` and `HaVip`.
	InstanceType pulumi.StringPtrInput
	// The private IP address in the network segment of the vswitch which has been assigned.
	PrivateIpAddress pulumi.StringPtrInput
}

func (EipAssociationState) ElementType

func (EipAssociationState) ElementType() reflect.Type

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) ActivityId

func (o EipOutput) ActivityId() pulumi.StringPtrOutput

func (EipOutput) AddressName

func (o EipOutput) AddressName() pulumi.StringOutput

The name of the EIP instance. This name can have a string of 2 to 128 characters, must contain only alphanumeric characters or hyphens, such as "-",".","_", and must not begin or end with a hyphen, and must not begin with http:// or https://.

func (EipOutput) AutoPay

func (o EipOutput) AutoPay() pulumi.BoolPtrOutput

func (EipOutput) Bandwidth

func (o EipOutput) Bandwidth() pulumi.StringOutput

Maximum bandwidth to the elastic public network, measured in Mbps (Mega bit per second). If this value is not specified, then automatically sets it to 5 Mbps.

func (EipOutput) DeletionProtection

func (o EipOutput) DeletionProtection() pulumi.BoolOutput

Whether enable the deletion protection or not. Default value: `false`. - true: Enable deletion protection. - false: Disable deletion protection.

func (EipOutput) Description

func (o EipOutput) Description() pulumi.StringPtrOutput

Description of the EIP instance, This description can have a string of 2 to 256 characters, It cannot begin with http:// or https://. Default value is null.

func (EipOutput) ElementType

func (EipOutput) ElementType() reflect.Type

func (EipOutput) InstanceChargeType deprecated

func (o EipOutput) InstanceChargeType() pulumi.StringOutput

(It has been deprecated from version 1.126.0 and using new attribute `paymentType` instead) Elastic IP instance charge type. Valid values are "PrePaid" and "PostPaid". Default to "PostPaid".

Deprecated: Field 'instance_charge_type' has been deprecated from provider version 1.126.0 and it will be remove in the future version. Please use the new attribute 'payment_type' instead.

func (EipOutput) InternetChargeType

func (o EipOutput) InternetChargeType() pulumi.StringOutput

Internet charge type of the EIP, Valid values are `PayByBandwidth`, `PayByTraffic`. Default to `PayByBandwidth`. **NOTE:** From version `1.7.1` to `1.125.0`, it defaults to `PayByTraffic`. It is only "PayByBandwidth" when `instanceChargeType` is PrePaid.

func (EipOutput) IpAddress

func (o EipOutput) IpAddress() pulumi.StringOutput

The elastic ip address

func (EipOutput) Isp

func (o EipOutput) Isp() pulumi.StringOutput

The line type of the Elastic IP instance. Default to `BGP`. Other type of the isp need to open a whitelist.

func (EipOutput) Name deprecated

func (o EipOutput) Name() pulumi.StringOutput

It has been deprecated from version 1.126.0 and using new attribute `addressName` instead.

Deprecated: Field 'name' has been deprecated from provider version 1.126.0 and it will be remove in the future version. Please use the new attribute 'address_name' instead.

func (EipOutput) Netmode

func (o EipOutput) Netmode() pulumi.StringPtrOutput

func (EipOutput) PaymentType

func (o EipOutput) PaymentType() pulumi.StringOutput

The billing method of the EIP. Valid values: `Subscription` and `PayAsYouGo`. Default value is `PayAsYouGo`.

func (EipOutput) Period

func (o EipOutput) Period() pulumi.IntPtrOutput

func (EipOutput) PublicIpAddressPoolId

func (o EipOutput) PublicIpAddressPoolId() pulumi.StringPtrOutput

func (EipOutput) ResourceGroupId

func (o EipOutput) ResourceGroupId() pulumi.StringOutput

The Id of resource group which the eip belongs.

func (EipOutput) SecurityProtectionTypes

func (o EipOutput) SecurityProtectionTypes() pulumi.StringArrayOutput

func (EipOutput) Status

func (o EipOutput) Status() pulumi.StringOutput

The EIP current status.

func (EipOutput) Tags

func (o EipOutput) Tags() pulumi.MapOutput

A mapping of tags to assign to the resource.

func (EipOutput) ToEipOutput

func (o EipOutput) ToEipOutput() EipOutput

func (EipOutput) ToEipOutputWithContext

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

type EipState

type EipState struct {
	ActivityId pulumi.StringPtrInput
	// The name of the EIP instance. This name can have a string of 2 to 128 characters, must contain only alphanumeric characters or hyphens, such as "-",".","_", and must not begin or end with a hyphen, and must not begin with http:// or https://.
	AddressName pulumi.StringPtrInput
	AutoPay     pulumi.BoolPtrInput
	// Maximum bandwidth to the elastic public network, measured in Mbps (Mega bit per second). If this value is not specified, then automatically sets it to 5 Mbps.
	Bandwidth pulumi.StringPtrInput
	// Whether enable the deletion protection or not. Default value: `false`.
	// - true: Enable deletion protection.
	// - false: Disable deletion protection.
	DeletionProtection pulumi.BoolPtrInput
	// Description of the EIP instance, This description can have a string of 2 to 256 characters, It cannot begin with http:// or https://. Default value is null.
	Description pulumi.StringPtrInput
	// (It has been deprecated from version 1.126.0 and using new attribute `paymentType` instead) Elastic IP instance charge type. Valid values are "PrePaid" and "PostPaid". Default to "PostPaid".
	//
	// Deprecated: Field 'instance_charge_type' has been deprecated from provider version 1.126.0 and it will be remove in the future version. Please use the new attribute 'payment_type' instead.
	InstanceChargeType pulumi.StringPtrInput
	// Internet charge type of the EIP, Valid values are `PayByBandwidth`, `PayByTraffic`. Default to `PayByBandwidth`. **NOTE:** From version `1.7.1` to `1.125.0`, it defaults to `PayByTraffic`. It is only "PayByBandwidth" when `instanceChargeType` is PrePaid.
	InternetChargeType pulumi.StringPtrInput
	// The elastic ip address
	IpAddress pulumi.StringPtrInput
	// The line type of the Elastic IP instance. Default to `BGP`. Other type of the isp need to open a whitelist.
	Isp pulumi.StringPtrInput
	// It has been deprecated from version 1.126.0 and using new attribute `addressName` instead.
	//
	// Deprecated: Field 'name' has been deprecated from provider version 1.126.0 and it will be remove in the future version. Please use the new attribute 'address_name' instead.
	Name    pulumi.StringPtrInput
	Netmode pulumi.StringPtrInput
	// The billing method of the EIP. Valid values: `Subscription` and `PayAsYouGo`. Default value is `PayAsYouGo`.
	PaymentType           pulumi.StringPtrInput
	Period                pulumi.IntPtrInput
	PublicIpAddressPoolId pulumi.StringPtrInput
	// The Id of resource group which the eip belongs.
	ResourceGroupId         pulumi.StringPtrInput
	SecurityProtectionTypes pulumi.StringArrayInput
	// The EIP current status.
	Status pulumi.StringPtrInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapInput
}

func (EipState) ElementType

func (EipState) ElementType() reflect.Type

type GetActivationsActivation

type GetActivationsActivation struct {
	// The ID of the activation code.
	ActivationId string `pulumi:"activationId"`
	// The time when the activation code was created.
	CreateTime string `pulumi:"createTime"`
	// The number of instances that have been logged out.
	DeregisteredCount int `pulumi:"deregisteredCount"`
	// Description of the corresponding activation code.
	Description string `pulumi:"description"`
	// Indicates whether the activation code is disabled.
	Disabled bool `pulumi:"disabled"`
	// The ID of the Activation.
	Id string `pulumi:"id"`
	// The maximum number of times the activation code is used to register a managed instance.
	InstanceCount int `pulumi:"instanceCount"`
	// The default prefix of the instance name.
	InstanceName string `pulumi:"instanceName"`
	// The IP address of the host that allows the activation code to be used.
	IpAddressRange string `pulumi:"ipAddressRange"`
	// The number of instances that were registered.
	RegisteredCount int `pulumi:"registeredCount"`
	// The validity period of the activation code. Unit: hours.
	TimeToLiveInHours int `pulumi:"timeToLiveInHours"`
}

type GetActivationsActivationArgs

type GetActivationsActivationArgs struct {
	// The ID of the activation code.
	ActivationId pulumi.StringInput `pulumi:"activationId"`
	// The time when the activation code was created.
	CreateTime pulumi.StringInput `pulumi:"createTime"`
	// The number of instances that have been logged out.
	DeregisteredCount pulumi.IntInput `pulumi:"deregisteredCount"`
	// Description of the corresponding activation code.
	Description pulumi.StringInput `pulumi:"description"`
	// Indicates whether the activation code is disabled.
	Disabled pulumi.BoolInput `pulumi:"disabled"`
	// The ID of the Activation.
	Id pulumi.StringInput `pulumi:"id"`
	// The maximum number of times the activation code is used to register a managed instance.
	InstanceCount pulumi.IntInput `pulumi:"instanceCount"`
	// The default prefix of the instance name.
	InstanceName pulumi.StringInput `pulumi:"instanceName"`
	// The IP address of the host that allows the activation code to be used.
	IpAddressRange pulumi.StringInput `pulumi:"ipAddressRange"`
	// The number of instances that were registered.
	RegisteredCount pulumi.IntInput `pulumi:"registeredCount"`
	// The validity period of the activation code. Unit: hours.
	TimeToLiveInHours pulumi.IntInput `pulumi:"timeToLiveInHours"`
}

func (GetActivationsActivationArgs) ElementType

func (GetActivationsActivationArgs) ToGetActivationsActivationOutput

func (i GetActivationsActivationArgs) ToGetActivationsActivationOutput() GetActivationsActivationOutput

func (GetActivationsActivationArgs) ToGetActivationsActivationOutputWithContext

func (i GetActivationsActivationArgs) ToGetActivationsActivationOutputWithContext(ctx context.Context) GetActivationsActivationOutput

type GetActivationsActivationArray

type GetActivationsActivationArray []GetActivationsActivationInput

func (GetActivationsActivationArray) ElementType

func (GetActivationsActivationArray) ToGetActivationsActivationArrayOutput

func (i GetActivationsActivationArray) ToGetActivationsActivationArrayOutput() GetActivationsActivationArrayOutput

func (GetActivationsActivationArray) ToGetActivationsActivationArrayOutputWithContext

func (i GetActivationsActivationArray) ToGetActivationsActivationArrayOutputWithContext(ctx context.Context) GetActivationsActivationArrayOutput

type GetActivationsActivationArrayInput

type GetActivationsActivationArrayInput interface {
	pulumi.Input

	ToGetActivationsActivationArrayOutput() GetActivationsActivationArrayOutput
	ToGetActivationsActivationArrayOutputWithContext(context.Context) GetActivationsActivationArrayOutput
}

GetActivationsActivationArrayInput is an input type that accepts GetActivationsActivationArray and GetActivationsActivationArrayOutput values. You can construct a concrete instance of `GetActivationsActivationArrayInput` via:

GetActivationsActivationArray{ GetActivationsActivationArgs{...} }

type GetActivationsActivationArrayOutput

type GetActivationsActivationArrayOutput struct{ *pulumi.OutputState }

func (GetActivationsActivationArrayOutput) ElementType

func (GetActivationsActivationArrayOutput) Index

func (GetActivationsActivationArrayOutput) ToGetActivationsActivationArrayOutput

func (o GetActivationsActivationArrayOutput) ToGetActivationsActivationArrayOutput() GetActivationsActivationArrayOutput

func (GetActivationsActivationArrayOutput) ToGetActivationsActivationArrayOutputWithContext

func (o GetActivationsActivationArrayOutput) ToGetActivationsActivationArrayOutputWithContext(ctx context.Context) GetActivationsActivationArrayOutput

type GetActivationsActivationInput

type GetActivationsActivationInput interface {
	pulumi.Input

	ToGetActivationsActivationOutput() GetActivationsActivationOutput
	ToGetActivationsActivationOutputWithContext(context.Context) GetActivationsActivationOutput
}

GetActivationsActivationInput is an input type that accepts GetActivationsActivationArgs and GetActivationsActivationOutput values. You can construct a concrete instance of `GetActivationsActivationInput` via:

GetActivationsActivationArgs{...}

type GetActivationsActivationOutput

type GetActivationsActivationOutput struct{ *pulumi.OutputState }

func (GetActivationsActivationOutput) ActivationId

The ID of the activation code.

func (GetActivationsActivationOutput) CreateTime

The time when the activation code was created.

func (GetActivationsActivationOutput) DeregisteredCount

func (o GetActivationsActivationOutput) DeregisteredCount() pulumi.IntOutput

The number of instances that have been logged out.

func (GetActivationsActivationOutput) Description

Description of the corresponding activation code.

func (GetActivationsActivationOutput) Disabled

Indicates whether the activation code is disabled.

func (GetActivationsActivationOutput) ElementType

func (GetActivationsActivationOutput) Id

The ID of the Activation.

func (GetActivationsActivationOutput) InstanceCount

The maximum number of times the activation code is used to register a managed instance.

func (GetActivationsActivationOutput) InstanceName

The default prefix of the instance name.

func (GetActivationsActivationOutput) IpAddressRange

The IP address of the host that allows the activation code to be used.

func (GetActivationsActivationOutput) RegisteredCount

func (o GetActivationsActivationOutput) RegisteredCount() pulumi.IntOutput

The number of instances that were registered.

func (GetActivationsActivationOutput) TimeToLiveInHours

func (o GetActivationsActivationOutput) TimeToLiveInHours() pulumi.IntOutput

The validity period of the activation code. Unit: hours.

func (GetActivationsActivationOutput) ToGetActivationsActivationOutput

func (o GetActivationsActivationOutput) ToGetActivationsActivationOutput() GetActivationsActivationOutput

func (GetActivationsActivationOutput) ToGetActivationsActivationOutputWithContext

func (o GetActivationsActivationOutput) ToGetActivationsActivationOutputWithContext(ctx context.Context) GetActivationsActivationOutput

type GetActivationsArgs

type GetActivationsArgs struct {
	// A list of Activation IDs.
	Ids []string `pulumi:"ids"`
	// The default prefix of the instance name.
	InstanceName *string `pulumi:"instanceName"`
	OutputFile   *string `pulumi:"outputFile"`
	PageNumber   *int    `pulumi:"pageNumber"`
	PageSize     *int    `pulumi:"pageSize"`
}

A collection of arguments for invoking getActivations.

type GetActivationsOutputArgs

type GetActivationsOutputArgs struct {
	// A list of Activation IDs.
	Ids pulumi.StringArrayInput `pulumi:"ids"`
	// The default prefix of the instance name.
	InstanceName pulumi.StringPtrInput `pulumi:"instanceName"`
	OutputFile   pulumi.StringPtrInput `pulumi:"outputFile"`
	PageNumber   pulumi.IntPtrInput    `pulumi:"pageNumber"`
	PageSize     pulumi.IntPtrInput    `pulumi:"pageSize"`
}

A collection of arguments for invoking getActivations.

func (GetActivationsOutputArgs) ElementType

func (GetActivationsOutputArgs) ElementType() reflect.Type

type GetActivationsResult

type GetActivationsResult struct {
	Activations []GetActivationsActivation `pulumi:"activations"`
	// The provider-assigned unique ID for this managed resource.
	Id           string   `pulumi:"id"`
	Ids          []string `pulumi:"ids"`
	InstanceName *string  `pulumi:"instanceName"`
	OutputFile   *string  `pulumi:"outputFile"`
	PageNumber   *int     `pulumi:"pageNumber"`
	PageSize     *int     `pulumi:"pageSize"`
	TotalCount   int      `pulumi:"totalCount"`
}

A collection of values returned by getActivations.

func GetActivations

func GetActivations(ctx *pulumi.Context, args *GetActivationsArgs, opts ...pulumi.InvokeOption) (*GetActivationsResult, error)

This data source provides the Ecs Activations of the current Alibaba Cloud user.

> **NOTE:** Available in v1.177.0+.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/go/alicloud/ecs"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		ids, err := ecs.GetActivations(ctx, nil, nil)
		if err != nil {
			return err
		}
		ctx.Export("ecsActivationId1", ids.Activations[0].Id)
		return nil
	})
}

```

type GetActivationsResultOutput

type GetActivationsResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getActivations.

func (GetActivationsResultOutput) Activations

func (GetActivationsResultOutput) ElementType

func (GetActivationsResultOutput) ElementType() reflect.Type

func (GetActivationsResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetActivationsResultOutput) Ids

func (GetActivationsResultOutput) InstanceName

func (GetActivationsResultOutput) OutputFile

func (GetActivationsResultOutput) PageNumber

func (GetActivationsResultOutput) PageSize

func (GetActivationsResultOutput) ToGetActivationsResultOutput

func (o GetActivationsResultOutput) ToGetActivationsResultOutput() GetActivationsResultOutput

func (GetActivationsResultOutput) ToGetActivationsResultOutputWithContext

func (o GetActivationsResultOutput) ToGetActivationsResultOutputWithContext(ctx context.Context) GetActivationsResultOutput

func (GetActivationsResultOutput) TotalCount

type GetAutoSnapshotPoliciesArgs

type GetAutoSnapshotPoliciesArgs struct {
	// A list of Auto Snapshot Policy IDs.
	Ids []string `pulumi:"ids"`
	// A regex string to filter results by Auto Snapshot Policy name.
	NameRegex  *string `pulumi:"nameRegex"`
	OutputFile *string `pulumi:"outputFile"`
	// The status of Auto Snapshot Policy.
	Status *string `pulumi:"status"`
	// A mapping of tags to assign to the resource.
	Tags map[string]interface{} `pulumi:"tags"`
}

A collection of arguments for invoking getAutoSnapshotPolicies.

type GetAutoSnapshotPoliciesOutputArgs

type GetAutoSnapshotPoliciesOutputArgs struct {
	// A list of Auto Snapshot Policy IDs.
	Ids pulumi.StringArrayInput `pulumi:"ids"`
	// A regex string to filter results by Auto Snapshot Policy name.
	NameRegex  pulumi.StringPtrInput `pulumi:"nameRegex"`
	OutputFile pulumi.StringPtrInput `pulumi:"outputFile"`
	// The status of Auto Snapshot Policy.
	Status pulumi.StringPtrInput `pulumi:"status"`
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapInput `pulumi:"tags"`
}

A collection of arguments for invoking getAutoSnapshotPolicies.

func (GetAutoSnapshotPoliciesOutputArgs) ElementType

type GetAutoSnapshotPoliciesPolicy

type GetAutoSnapshotPoliciesPolicy struct {
	// The ID of the Auto Snapshot Policy.
	AutoSnapshotPolicyId string `pulumi:"autoSnapshotPolicyId"`
	// The retention period of the snapshot copied across regions.
	CopiedSnapshotsRetentionDays int `pulumi:"copiedSnapshotsRetentionDays"`
	// The number of disks to which the automatic snapshot policy is applied.
	DiskNums int `pulumi:"diskNums"`
	// Specifies whether to enable the system to automatically copy snapshots across regions.
	EnableCrossRegionCopy bool `pulumi:"enableCrossRegionCopy"`
	// The ID of the Auto Snapshot Policy.
	Id string `pulumi:"id"`
	// The snapshot policy name..
	Name string `pulumi:"name"`
	// The automatic snapshot repetition dates.
	RepeatWeekdays []string `pulumi:"repeatWeekdays"`
	// The snapshot retention time, and the unit of measurement is day.
	RetentionDays int `pulumi:"retentionDays"`
	// The status of Auto Snapshot Policy.
	Status string `pulumi:"status"`
	// A mapping of tags to assign to the resource.
	Tags map[string]interface{} `pulumi:"tags"`
	// The destination region to which the snapshot is copied.
	TargetCopyRegions []string `pulumi:"targetCopyRegions"`
	// The automatic snapshot creation schedule, and the unit of measurement is hour.
	TimePoints []string `pulumi:"timePoints"`
	// The number of extended volumes on which this policy is enabled.
	VolumeNums int `pulumi:"volumeNums"`
}

type GetAutoSnapshotPoliciesPolicyArgs

type GetAutoSnapshotPoliciesPolicyArgs struct {
	// The ID of the Auto Snapshot Policy.
	AutoSnapshotPolicyId pulumi.StringInput `pulumi:"autoSnapshotPolicyId"`
	// The retention period of the snapshot copied across regions.
	CopiedSnapshotsRetentionDays pulumi.IntInput `pulumi:"copiedSnapshotsRetentionDays"`
	// The number of disks to which the automatic snapshot policy is applied.
	DiskNums pulumi.IntInput `pulumi:"diskNums"`
	// Specifies whether to enable the system to automatically copy snapshots across regions.
	EnableCrossRegionCopy pulumi.BoolInput `pulumi:"enableCrossRegionCopy"`
	// The ID of the Auto Snapshot Policy.
	Id pulumi.StringInput `pulumi:"id"`
	// The snapshot policy name..
	Name pulumi.StringInput `pulumi:"name"`
	// The automatic snapshot repetition dates.
	RepeatWeekdays pulumi.StringArrayInput `pulumi:"repeatWeekdays"`
	// The snapshot retention time, and the unit of measurement is day.
	RetentionDays pulumi.IntInput `pulumi:"retentionDays"`
	// The status of Auto Snapshot Policy.
	Status pulumi.StringInput `pulumi:"status"`
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapInput `pulumi:"tags"`
	// The destination region to which the snapshot is copied.
	TargetCopyRegions pulumi.StringArrayInput `pulumi:"targetCopyRegions"`
	// The automatic snapshot creation schedule, and the unit of measurement is hour.
	TimePoints pulumi.StringArrayInput `pulumi:"timePoints"`
	// The number of extended volumes on which this policy is enabled.
	VolumeNums pulumi.IntInput `pulumi:"volumeNums"`
}

func (GetAutoSnapshotPoliciesPolicyArgs) ElementType

func (GetAutoSnapshotPoliciesPolicyArgs) ToGetAutoSnapshotPoliciesPolicyOutput

func (i GetAutoSnapshotPoliciesPolicyArgs) ToGetAutoSnapshotPoliciesPolicyOutput() GetAutoSnapshotPoliciesPolicyOutput

func (GetAutoSnapshotPoliciesPolicyArgs) ToGetAutoSnapshotPoliciesPolicyOutputWithContext

func (i GetAutoSnapshotPoliciesPolicyArgs) ToGetAutoSnapshotPoliciesPolicyOutputWithContext(ctx context.Context) GetAutoSnapshotPoliciesPolicyOutput

type GetAutoSnapshotPoliciesPolicyArray

type GetAutoSnapshotPoliciesPolicyArray []GetAutoSnapshotPoliciesPolicyInput

func (GetAutoSnapshotPoliciesPolicyArray) ElementType

func (GetAutoSnapshotPoliciesPolicyArray) ToGetAutoSnapshotPoliciesPolicyArrayOutput

func (i GetAutoSnapshotPoliciesPolicyArray) ToGetAutoSnapshotPoliciesPolicyArrayOutput() GetAutoSnapshotPoliciesPolicyArrayOutput

func (GetAutoSnapshotPoliciesPolicyArray) ToGetAutoSnapshotPoliciesPolicyArrayOutputWithContext

func (i GetAutoSnapshotPoliciesPolicyArray) ToGetAutoSnapshotPoliciesPolicyArrayOutputWithContext(ctx context.Context) GetAutoSnapshotPoliciesPolicyArrayOutput

type GetAutoSnapshotPoliciesPolicyArrayInput

type GetAutoSnapshotPoliciesPolicyArrayInput interface {
	pulumi.Input

	ToGetAutoSnapshotPoliciesPolicyArrayOutput() GetAutoSnapshotPoliciesPolicyArrayOutput
	ToGetAutoSnapshotPoliciesPolicyArrayOutputWithContext(context.Context) GetAutoSnapshotPoliciesPolicyArrayOutput
}

GetAutoSnapshotPoliciesPolicyArrayInput is an input type that accepts GetAutoSnapshotPoliciesPolicyArray and GetAutoSnapshotPoliciesPolicyArrayOutput values. You can construct a concrete instance of `GetAutoSnapshotPoliciesPolicyArrayInput` via:

GetAutoSnapshotPoliciesPolicyArray{ GetAutoSnapshotPoliciesPolicyArgs{...} }

type GetAutoSnapshotPoliciesPolicyArrayOutput

type GetAutoSnapshotPoliciesPolicyArrayOutput struct{ *pulumi.OutputState }

func (GetAutoSnapshotPoliciesPolicyArrayOutput) ElementType

func (GetAutoSnapshotPoliciesPolicyArrayOutput) Index

func (GetAutoSnapshotPoliciesPolicyArrayOutput) ToGetAutoSnapshotPoliciesPolicyArrayOutput

func (o GetAutoSnapshotPoliciesPolicyArrayOutput) ToGetAutoSnapshotPoliciesPolicyArrayOutput() GetAutoSnapshotPoliciesPolicyArrayOutput

func (GetAutoSnapshotPoliciesPolicyArrayOutput) ToGetAutoSnapshotPoliciesPolicyArrayOutputWithContext

func (o GetAutoSnapshotPoliciesPolicyArrayOutput) ToGetAutoSnapshotPoliciesPolicyArrayOutputWithContext(ctx context.Context) GetAutoSnapshotPoliciesPolicyArrayOutput

type GetAutoSnapshotPoliciesPolicyInput

type GetAutoSnapshotPoliciesPolicyInput interface {
	pulumi.Input

	ToGetAutoSnapshotPoliciesPolicyOutput() GetAutoSnapshotPoliciesPolicyOutput
	ToGetAutoSnapshotPoliciesPolicyOutputWithContext(context.Context) GetAutoSnapshotPoliciesPolicyOutput
}

GetAutoSnapshotPoliciesPolicyInput is an input type that accepts GetAutoSnapshotPoliciesPolicyArgs and GetAutoSnapshotPoliciesPolicyOutput values. You can construct a concrete instance of `GetAutoSnapshotPoliciesPolicyInput` via:

GetAutoSnapshotPoliciesPolicyArgs{...}

type GetAutoSnapshotPoliciesPolicyOutput

type GetAutoSnapshotPoliciesPolicyOutput struct{ *pulumi.OutputState }

func (GetAutoSnapshotPoliciesPolicyOutput) AutoSnapshotPolicyId

func (o GetAutoSnapshotPoliciesPolicyOutput) AutoSnapshotPolicyId() pulumi.StringOutput

The ID of the Auto Snapshot Policy.

func (GetAutoSnapshotPoliciesPolicyOutput) CopiedSnapshotsRetentionDays

func (o GetAutoSnapshotPoliciesPolicyOutput) CopiedSnapshotsRetentionDays() pulumi.IntOutput

The retention period of the snapshot copied across regions.

func (GetAutoSnapshotPoliciesPolicyOutput) DiskNums

The number of disks to which the automatic snapshot policy is applied.

func (GetAutoSnapshotPoliciesPolicyOutput) ElementType

func (GetAutoSnapshotPoliciesPolicyOutput) EnableCrossRegionCopy

func (o GetAutoSnapshotPoliciesPolicyOutput) EnableCrossRegionCopy() pulumi.BoolOutput

Specifies whether to enable the system to automatically copy snapshots across regions.

func (GetAutoSnapshotPoliciesPolicyOutput) Id

The ID of the Auto Snapshot Policy.

func (GetAutoSnapshotPoliciesPolicyOutput) Name

The snapshot policy name..

func (GetAutoSnapshotPoliciesPolicyOutput) RepeatWeekdays

The automatic snapshot repetition dates.

func (GetAutoSnapshotPoliciesPolicyOutput) RetentionDays

The snapshot retention time, and the unit of measurement is day.

func (GetAutoSnapshotPoliciesPolicyOutput) Status

The status of Auto Snapshot Policy.

func (GetAutoSnapshotPoliciesPolicyOutput) Tags

A mapping of tags to assign to the resource.

func (GetAutoSnapshotPoliciesPolicyOutput) TargetCopyRegions

The destination region to which the snapshot is copied.

func (GetAutoSnapshotPoliciesPolicyOutput) TimePoints

The automatic snapshot creation schedule, and the unit of measurement is hour.

func (GetAutoSnapshotPoliciesPolicyOutput) ToGetAutoSnapshotPoliciesPolicyOutput

func (o GetAutoSnapshotPoliciesPolicyOutput) ToGetAutoSnapshotPoliciesPolicyOutput() GetAutoSnapshotPoliciesPolicyOutput

func (GetAutoSnapshotPoliciesPolicyOutput) ToGetAutoSnapshotPoliciesPolicyOutputWithContext

func (o GetAutoSnapshotPoliciesPolicyOutput) ToGetAutoSnapshotPoliciesPolicyOutputWithContext(ctx context.Context) GetAutoSnapshotPoliciesPolicyOutput

func (GetAutoSnapshotPoliciesPolicyOutput) VolumeNums

The number of extended volumes on which this policy is enabled.

type GetAutoSnapshotPoliciesResult

type GetAutoSnapshotPoliciesResult struct {
	// The provider-assigned unique ID for this managed resource.
	Id         string                          `pulumi:"id"`
	Ids        []string                        `pulumi:"ids"`
	NameRegex  *string                         `pulumi:"nameRegex"`
	Names      []string                        `pulumi:"names"`
	OutputFile *string                         `pulumi:"outputFile"`
	Policies   []GetAutoSnapshotPoliciesPolicy `pulumi:"policies"`
	Status     *string                         `pulumi:"status"`
	Tags       map[string]interface{}          `pulumi:"tags"`
}

A collection of values returned by getAutoSnapshotPolicies.

func GetAutoSnapshotPolicies

func GetAutoSnapshotPolicies(ctx *pulumi.Context, args *GetAutoSnapshotPoliciesArgs, opts ...pulumi.InvokeOption) (*GetAutoSnapshotPoliciesResult, error)

This data source provides the Ecs Auto Snapshot Policies of the current Alibaba Cloud user.

> **NOTE:** Available in v1.117.0+.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/go/alicloud/ecs"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := ecs.GetAutoSnapshotPolicies(ctx, &ecs.GetAutoSnapshotPoliciesArgs{
			Ids: []string{
				"sp-bp14e66xxxxxxxx",
			},
			NameRegex: pulumi.StringRef("tf-testAcc"),
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("firstEcsAutoSnapshotPolicyId", example.Policies[0].Id)
		return nil
	})
}

```

type GetAutoSnapshotPoliciesResultOutput

type GetAutoSnapshotPoliciesResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getAutoSnapshotPolicies.

func (GetAutoSnapshotPoliciesResultOutput) ElementType

func (GetAutoSnapshotPoliciesResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetAutoSnapshotPoliciesResultOutput) Ids

func (GetAutoSnapshotPoliciesResultOutput) NameRegex

func (GetAutoSnapshotPoliciesResultOutput) Names

func (GetAutoSnapshotPoliciesResultOutput) OutputFile

func (GetAutoSnapshotPoliciesResultOutput) Policies

func (GetAutoSnapshotPoliciesResultOutput) Status

func (GetAutoSnapshotPoliciesResultOutput) Tags

func (GetAutoSnapshotPoliciesResultOutput) ToGetAutoSnapshotPoliciesResultOutput

func (o GetAutoSnapshotPoliciesResultOutput) ToGetAutoSnapshotPoliciesResultOutput() GetAutoSnapshotPoliciesResultOutput

func (GetAutoSnapshotPoliciesResultOutput) ToGetAutoSnapshotPoliciesResultOutputWithContext

func (o GetAutoSnapshotPoliciesResultOutput) ToGetAutoSnapshotPoliciesResultOutputWithContext(ctx context.Context) GetAutoSnapshotPoliciesResultOutput

type GetCommandsArgs

type GetCommandsArgs struct {
	// Public order provider.
	CommandProvider *string `pulumi:"commandProvider"`
	// The Base64-encoded content of the command.
	ContentEncoding *string `pulumi:"contentEncoding"`
	// The description of command.
	Description *string `pulumi:"description"`
	// A list of Command IDs.
	Ids []string `pulumi:"ids"`
	// The name of the command
	Name *string `pulumi:"name"`
	// A regex string to filter results by Command name.
	NameRegex  *string `pulumi:"nameRegex"`
	OutputFile *string `pulumi:"outputFile"`
	// The command type.
	Type *string `pulumi:"type"`
}

A collection of arguments for invoking getCommands.

type GetCommandsCommand

type GetCommandsCommand struct {
	// The Base64-encoded content of the command.
	CommandContent string `pulumi:"commandContent"`
	// The ID of the Command.
	CommandId string `pulumi:"commandId"`
	// The description of command.
	Description string `pulumi:"description"`
	// Specifies whether to use custom parameters in the command to be created.
	EnableParameter bool `pulumi:"enableParameter"`
	// The ID of the Command.
	Id string `pulumi:"id"`
	// The name of the command
	Name string `pulumi:"name"`
	// A list of custom parameter names which are parsed from the command content specified when the command was being created.
	ParameterNames []string `pulumi:"parameterNames"`
	// The timeout period that is specified for the command to be run on ECS instances.
	Timeout int `pulumi:"timeout"`
	// The command type.
	Type string `pulumi:"type"`
	// The execution path of the command in the ECS instance.
	WorkingDir string `pulumi:"workingDir"`
}

type GetCommandsCommandArgs

type GetCommandsCommandArgs struct {
	// The Base64-encoded content of the command.
	CommandContent pulumi.StringInput `pulumi:"commandContent"`
	// The ID of the Command.
	CommandId pulumi.StringInput `pulumi:"commandId"`
	// The description of command.
	Description pulumi.StringInput `pulumi:"description"`
	// Specifies whether to use custom parameters in the command to be created.
	EnableParameter pulumi.BoolInput `pulumi:"enableParameter"`
	// The ID of the Command.
	Id pulumi.StringInput `pulumi:"id"`
	// The name of the command
	Name pulumi.StringInput `pulumi:"name"`
	// A list of custom parameter names which are parsed from the command content specified when the command was being created.
	ParameterNames pulumi.StringArrayInput `pulumi:"parameterNames"`
	// The timeout period that is specified for the command to be run on ECS instances.
	Timeout pulumi.IntInput `pulumi:"timeout"`
	// The command type.
	Type pulumi.StringInput `pulumi:"type"`
	// The execution path of the command in the ECS instance.
	WorkingDir pulumi.StringInput `pulumi:"workingDir"`
}

func (GetCommandsCommandArgs) ElementType

func (GetCommandsCommandArgs) ElementType() reflect.Type

func (GetCommandsCommandArgs) ToGetCommandsCommandOutput

func (i GetCommandsCommandArgs) ToGetCommandsCommandOutput() GetCommandsCommandOutput

func (GetCommandsCommandArgs) ToGetCommandsCommandOutputWithContext

func (i GetCommandsCommandArgs) ToGetCommandsCommandOutputWithContext(ctx context.Context) GetCommandsCommandOutput

type GetCommandsCommandArray

type GetCommandsCommandArray []GetCommandsCommandInput

func (GetCommandsCommandArray) ElementType

func (GetCommandsCommandArray) ElementType() reflect.Type

func (GetCommandsCommandArray) ToGetCommandsCommandArrayOutput

func (i GetCommandsCommandArray) ToGetCommandsCommandArrayOutput() GetCommandsCommandArrayOutput

func (GetCommandsCommandArray) ToGetCommandsCommandArrayOutputWithContext

func (i GetCommandsCommandArray) ToGetCommandsCommandArrayOutputWithContext(ctx context.Context) GetCommandsCommandArrayOutput

type GetCommandsCommandArrayInput

type GetCommandsCommandArrayInput interface {
	pulumi.Input

	ToGetCommandsCommandArrayOutput() GetCommandsCommandArrayOutput
	ToGetCommandsCommandArrayOutputWithContext(context.Context) GetCommandsCommandArrayOutput
}

GetCommandsCommandArrayInput is an input type that accepts GetCommandsCommandArray and GetCommandsCommandArrayOutput values. You can construct a concrete instance of `GetCommandsCommandArrayInput` via:

GetCommandsCommandArray{ GetCommandsCommandArgs{...} }

type GetCommandsCommandArrayOutput

type GetCommandsCommandArrayOutput struct{ *pulumi.OutputState }

func (GetCommandsCommandArrayOutput) ElementType

func (GetCommandsCommandArrayOutput) Index

func (GetCommandsCommandArrayOutput) ToGetCommandsCommandArrayOutput

func (o GetCommandsCommandArrayOutput) ToGetCommandsCommandArrayOutput() GetCommandsCommandArrayOutput

func (GetCommandsCommandArrayOutput) ToGetCommandsCommandArrayOutputWithContext

func (o GetCommandsCommandArrayOutput) ToGetCommandsCommandArrayOutputWithContext(ctx context.Context) GetCommandsCommandArrayOutput

type GetCommandsCommandInput

type GetCommandsCommandInput interface {
	pulumi.Input

	ToGetCommandsCommandOutput() GetCommandsCommandOutput
	ToGetCommandsCommandOutputWithContext(context.Context) GetCommandsCommandOutput
}

GetCommandsCommandInput is an input type that accepts GetCommandsCommandArgs and GetCommandsCommandOutput values. You can construct a concrete instance of `GetCommandsCommandInput` via:

GetCommandsCommandArgs{...}

type GetCommandsCommandOutput

type GetCommandsCommandOutput struct{ *pulumi.OutputState }

func (GetCommandsCommandOutput) CommandContent

func (o GetCommandsCommandOutput) CommandContent() pulumi.StringOutput

The Base64-encoded content of the command.

func (GetCommandsCommandOutput) CommandId

The ID of the Command.

func (GetCommandsCommandOutput) Description

The description of command.

func (GetCommandsCommandOutput) ElementType

func (GetCommandsCommandOutput) ElementType() reflect.Type

func (GetCommandsCommandOutput) EnableParameter

func (o GetCommandsCommandOutput) EnableParameter() pulumi.BoolOutput

Specifies whether to use custom parameters in the command to be created.

func (GetCommandsCommandOutput) Id

The ID of the Command.

func (GetCommandsCommandOutput) Name

The name of the command

func (GetCommandsCommandOutput) ParameterNames

A list of custom parameter names which are parsed from the command content specified when the command was being created.

func (GetCommandsCommandOutput) Timeout

The timeout period that is specified for the command to be run on ECS instances.

func (GetCommandsCommandOutput) ToGetCommandsCommandOutput

func (o GetCommandsCommandOutput) ToGetCommandsCommandOutput() GetCommandsCommandOutput

func (GetCommandsCommandOutput) ToGetCommandsCommandOutputWithContext

func (o GetCommandsCommandOutput) ToGetCommandsCommandOutputWithContext(ctx context.Context) GetCommandsCommandOutput

func (GetCommandsCommandOutput) Type

The command type.

func (GetCommandsCommandOutput) WorkingDir

The execution path of the command in the ECS instance.

type GetCommandsOutputArgs

type GetCommandsOutputArgs struct {
	// Public order provider.
	CommandProvider pulumi.StringPtrInput `pulumi:"commandProvider"`
	// The Base64-encoded content of the command.
	ContentEncoding pulumi.StringPtrInput `pulumi:"contentEncoding"`
	// The description of command.
	Description pulumi.StringPtrInput `pulumi:"description"`
	// A list of Command IDs.
	Ids pulumi.StringArrayInput `pulumi:"ids"`
	// The name of the command
	Name pulumi.StringPtrInput `pulumi:"name"`
	// A regex string to filter results by Command name.
	NameRegex  pulumi.StringPtrInput `pulumi:"nameRegex"`
	OutputFile pulumi.StringPtrInput `pulumi:"outputFile"`
	// The command type.
	Type pulumi.StringPtrInput `pulumi:"type"`
}

A collection of arguments for invoking getCommands.

func (GetCommandsOutputArgs) ElementType

func (GetCommandsOutputArgs) ElementType() reflect.Type

type GetCommandsResult

type GetCommandsResult struct {
	CommandProvider *string              `pulumi:"commandProvider"`
	Commands        []GetCommandsCommand `pulumi:"commands"`
	ContentEncoding *string              `pulumi:"contentEncoding"`
	Description     *string              `pulumi:"description"`
	// The provider-assigned unique ID for this managed resource.
	Id         string   `pulumi:"id"`
	Ids        []string `pulumi:"ids"`
	Name       *string  `pulumi:"name"`
	NameRegex  *string  `pulumi:"nameRegex"`
	Names      []string `pulumi:"names"`
	OutputFile *string  `pulumi:"outputFile"`
	Type       *string  `pulumi:"type"`
}

A collection of values returned by getCommands.

func GetCommands

func GetCommands(ctx *pulumi.Context, args *GetCommandsArgs, opts ...pulumi.InvokeOption) (*GetCommandsResult, error)

This data source provides the Ecs Commands of the current Alibaba Cloud user.

> **NOTE:** Available in v1.116.0+.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/go/alicloud/ecs"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := ecs.GetCommands(ctx, &ecs.GetCommandsArgs{
			Ids: []string{
				"E2RY53-xxxx",
			},
			NameRegex: pulumi.StringRef("tf-testAcc"),
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("firstEcsCommandId", example.Commands[0].Id)
		return nil
	})
}

```

type GetCommandsResultOutput

type GetCommandsResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getCommands.

func (GetCommandsResultOutput) CommandProvider

func (o GetCommandsResultOutput) CommandProvider() pulumi.StringPtrOutput

func (GetCommandsResultOutput) Commands

func (GetCommandsResultOutput) ContentEncoding

func (o GetCommandsResultOutput) ContentEncoding() pulumi.StringPtrOutput

func (GetCommandsResultOutput) Description

func (GetCommandsResultOutput) ElementType

func (GetCommandsResultOutput) ElementType() reflect.Type

func (GetCommandsResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetCommandsResultOutput) Ids

func (GetCommandsResultOutput) Name

func (GetCommandsResultOutput) NameRegex

func (GetCommandsResultOutput) Names

func (GetCommandsResultOutput) OutputFile

func (GetCommandsResultOutput) ToGetCommandsResultOutput

func (o GetCommandsResultOutput) ToGetCommandsResultOutput() GetCommandsResultOutput

func (GetCommandsResultOutput) ToGetCommandsResultOutputWithContext

func (o GetCommandsResultOutput) ToGetCommandsResultOutputWithContext(ctx context.Context) GetCommandsResultOutput

func (GetCommandsResultOutput) Type

type GetDedicatedHostsArgs

type GetDedicatedHostsArgs struct {
	// The ID of ECS Dedicated Host.
	DedicatedHostId *string `pulumi:"dedicatedHostId"`
	// The name of ECS Dedicated Host.
	DedicatedHostName *string `pulumi:"dedicatedHostName"`
	// The type of the dedicated host.
	DedicatedHostType *string `pulumi:"dedicatedHostType"`
	// A list of ECS Dedicated Host ids.
	Ids []string `pulumi:"ids"`
	// A regex string to filter results by the ECS Dedicated Host name.
	NameRegex *string `pulumi:"nameRegex"`
	// The reason why the dedicated host resource is locked.
	OperationLocks []GetDedicatedHostsOperationLock `pulumi:"operationLocks"`
	// Save the result to the file.
	OutputFile *string `pulumi:"outputFile"`
	// The ID of the resource group to which the ECS Dedicated Host belongs.
	ResourceGroupId *string `pulumi:"resourceGroupId"`
	// The status of the ECS Dedicated Host. validate value: `Available`, `Creating`, `PermanentFailure`, `Released`, `UnderAssessment`.
	Status *string `pulumi:"status"`
	// A mapping of tags to assign to the resource.
	Tags map[string]interface{} `pulumi:"tags"`
	// The zone ID of the ECS Dedicated Host.
	ZoneId *string `pulumi:"zoneId"`
}

A collection of arguments for invoking getDedicatedHosts.

type GetDedicatedHostsHost

type GetDedicatedHostsHost struct {
	// The policy used to migrate the instances from the dedicated host when the dedicated host fails or needs to be repaired online.
	ActionOnMaintenance string `pulumi:"actionOnMaintenance"`
	// Specifies whether to add the dedicated host to the resource pool for automatic deployment.
	AutoPlacement string `pulumi:"autoPlacement"`
	// The automatic release time of the dedicated host.
	AutoReleaseTime string `pulumi:"autoReleaseTime"`
	// (Available in 1.123.1+) A collection of proprietary host performance indicators.
	Capacities []GetDedicatedHostsHostCapacity `pulumi:"capacities"`
	// A mapping of tags to assign to the resource.
	Cores int `pulumi:"cores"`
	// (Available in 1.123.1+) CPU oversold ratio.
	CpuOverCommitRatio float64 `pulumi:"cpuOverCommitRatio"`
	// The ID of ECS Dedicated Host.
	DedicatedHostId string `pulumi:"dedicatedHostId"`
	// The name of ECS Dedicated Host.
	DedicatedHostName string `pulumi:"dedicatedHostName"`
	// The type of the dedicated host.
	DedicatedHostType string `pulumi:"dedicatedHostType"`
	// The description of the dedicated host.
	Description string `pulumi:"description"`
	// The expiration time of the subscription dedicated host.
	ExpiredTime string `pulumi:"expiredTime"`
	// The GPU model.
	GpuSpec string `pulumi:"gpuSpec"`
	// ID of the ECS Dedicated Host.
	Id string `pulumi:"id"`
	// The machine code of the dedicated host.
	MachineId string `pulumi:"machineId"`
	// dedicated host network parameters. contains the following attributes:
	NetworkAttributes []GetDedicatedHostsHostNetworkAttribute `pulumi:"networkAttributes"`
	// The reason why the dedicated host resource is locked.
	OperationLocks []GetDedicatedHostsHostOperationLock `pulumi:"operationLocks"`
	// The billing method of the dedicated host.
	PaymentType string `pulumi:"paymentType"`
	// The number of physical GPUs.
	PhysicalGpus int `pulumi:"physicalGpus"`
	// The ID of the resource group to which the ECS Dedicated Host belongs.
	ResourceGroupId string `pulumi:"resourceGroupId"`
	// The unit of the subscription billing method.
	SaleCycle string `pulumi:"saleCycle"`
	// The number of physical CPUs.
	Sockets int `pulumi:"sockets"`
	// The status of the ECS Dedicated Host. validate value: `Available`, `Creating`, `PermanentFailure`, `Released`, `UnderAssessment`.
	Status string `pulumi:"status"`
	// (Available in 1.123.1+) A custom instance type family supported by a dedicated host.
	SupportedCustomInstanceTypeFamilies []string `pulumi:"supportedCustomInstanceTypeFamilies"`
	// (Available in 1.123.1+) ECS instance type family supported by the dedicated host.
	SupportedInstanceTypeFamilies []string `pulumi:"supportedInstanceTypeFamilies"`
	// The list of ECS instance
	SupportedInstanceTypesLists []string `pulumi:"supportedInstanceTypesLists"`
	// A mapping of tags to assign to the resource.
	Tags map[string]interface{} `pulumi:"tags"`
	// The zone ID of the ECS Dedicated Host.
	ZoneId string `pulumi:"zoneId"`
}

type GetDedicatedHostsHostArgs

type GetDedicatedHostsHostArgs struct {
	// The policy used to migrate the instances from the dedicated host when the dedicated host fails or needs to be repaired online.
	ActionOnMaintenance pulumi.StringInput `pulumi:"actionOnMaintenance"`
	// Specifies whether to add the dedicated host to the resource pool for automatic deployment.
	AutoPlacement pulumi.StringInput `pulumi:"autoPlacement"`
	// The automatic release time of the dedicated host.
	AutoReleaseTime pulumi.StringInput `pulumi:"autoReleaseTime"`
	// (Available in 1.123.1+) A collection of proprietary host performance indicators.
	Capacities GetDedicatedHostsHostCapacityArrayInput `pulumi:"capacities"`
	// A mapping of tags to assign to the resource.
	Cores pulumi.IntInput `pulumi:"cores"`
	// (Available in 1.123.1+) CPU oversold ratio.
	CpuOverCommitRatio pulumi.Float64Input `pulumi:"cpuOverCommitRatio"`
	// The ID of ECS Dedicated Host.
	DedicatedHostId pulumi.StringInput `pulumi:"dedicatedHostId"`
	// The name of ECS Dedicated Host.
	DedicatedHostName pulumi.StringInput `pulumi:"dedicatedHostName"`
	// The type of the dedicated host.
	DedicatedHostType pulumi.StringInput `pulumi:"dedicatedHostType"`
	// The description of the dedicated host.
	Description pulumi.StringInput `pulumi:"description"`
	// The expiration time of the subscription dedicated host.
	ExpiredTime pulumi.StringInput `pulumi:"expiredTime"`
	// The GPU model.
	GpuSpec pulumi.StringInput `pulumi:"gpuSpec"`
	// ID of the ECS Dedicated Host.
	Id pulumi.StringInput `pulumi:"id"`
	// The machine code of the dedicated host.
	MachineId pulumi.StringInput `pulumi:"machineId"`
	// dedicated host network parameters. contains the following attributes:
	NetworkAttributes GetDedicatedHostsHostNetworkAttributeArrayInput `pulumi:"networkAttributes"`
	// The reason why the dedicated host resource is locked.
	OperationLocks GetDedicatedHostsHostOperationLockArrayInput `pulumi:"operationLocks"`
	// The billing method of the dedicated host.
	PaymentType pulumi.StringInput `pulumi:"paymentType"`
	// The number of physical GPUs.
	PhysicalGpus pulumi.IntInput `pulumi:"physicalGpus"`
	// The ID of the resource group to which the ECS Dedicated Host belongs.
	ResourceGroupId pulumi.StringInput `pulumi:"resourceGroupId"`
	// The unit of the subscription billing method.
	SaleCycle pulumi.StringInput `pulumi:"saleCycle"`
	// The number of physical CPUs.
	Sockets pulumi.IntInput `pulumi:"sockets"`
	// The status of the ECS Dedicated Host. validate value: `Available`, `Creating`, `PermanentFailure`, `Released`, `UnderAssessment`.
	Status pulumi.StringInput `pulumi:"status"`
	// (Available in 1.123.1+) A custom instance type family supported by a dedicated host.
	SupportedCustomInstanceTypeFamilies pulumi.StringArrayInput `pulumi:"supportedCustomInstanceTypeFamilies"`
	// (Available in 1.123.1+) ECS instance type family supported by the dedicated host.
	SupportedInstanceTypeFamilies pulumi.StringArrayInput `pulumi:"supportedInstanceTypeFamilies"`
	// The list of ECS instance
	SupportedInstanceTypesLists pulumi.StringArrayInput `pulumi:"supportedInstanceTypesLists"`
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapInput `pulumi:"tags"`
	// The zone ID of the ECS Dedicated Host.
	ZoneId pulumi.StringInput `pulumi:"zoneId"`
}

func (GetDedicatedHostsHostArgs) ElementType

func (GetDedicatedHostsHostArgs) ElementType() reflect.Type

func (GetDedicatedHostsHostArgs) ToGetDedicatedHostsHostOutput

func (i GetDedicatedHostsHostArgs) ToGetDedicatedHostsHostOutput() GetDedicatedHostsHostOutput

func (GetDedicatedHostsHostArgs) ToGetDedicatedHostsHostOutputWithContext

func (i GetDedicatedHostsHostArgs) ToGetDedicatedHostsHostOutputWithContext(ctx context.Context) GetDedicatedHostsHostOutput

type GetDedicatedHostsHostArray

type GetDedicatedHostsHostArray []GetDedicatedHostsHostInput

func (GetDedicatedHostsHostArray) ElementType

func (GetDedicatedHostsHostArray) ElementType() reflect.Type

func (GetDedicatedHostsHostArray) ToGetDedicatedHostsHostArrayOutput

func (i GetDedicatedHostsHostArray) ToGetDedicatedHostsHostArrayOutput() GetDedicatedHostsHostArrayOutput

func (GetDedicatedHostsHostArray) ToGetDedicatedHostsHostArrayOutputWithContext

func (i GetDedicatedHostsHostArray) ToGetDedicatedHostsHostArrayOutputWithContext(ctx context.Context) GetDedicatedHostsHostArrayOutput

type GetDedicatedHostsHostArrayInput

type GetDedicatedHostsHostArrayInput interface {
	pulumi.Input

	ToGetDedicatedHostsHostArrayOutput() GetDedicatedHostsHostArrayOutput
	ToGetDedicatedHostsHostArrayOutputWithContext(context.Context) GetDedicatedHostsHostArrayOutput
}

GetDedicatedHostsHostArrayInput is an input type that accepts GetDedicatedHostsHostArray and GetDedicatedHostsHostArrayOutput values. You can construct a concrete instance of `GetDedicatedHostsHostArrayInput` via:

GetDedicatedHostsHostArray{ GetDedicatedHostsHostArgs{...} }

type GetDedicatedHostsHostArrayOutput

type GetDedicatedHostsHostArrayOutput struct{ *pulumi.OutputState }

func (GetDedicatedHostsHostArrayOutput) ElementType

func (GetDedicatedHostsHostArrayOutput) Index

func (GetDedicatedHostsHostArrayOutput) ToGetDedicatedHostsHostArrayOutput

func (o GetDedicatedHostsHostArrayOutput) ToGetDedicatedHostsHostArrayOutput() GetDedicatedHostsHostArrayOutput

func (GetDedicatedHostsHostArrayOutput) ToGetDedicatedHostsHostArrayOutputWithContext

func (o GetDedicatedHostsHostArrayOutput) ToGetDedicatedHostsHostArrayOutputWithContext(ctx context.Context) GetDedicatedHostsHostArrayOutput

type GetDedicatedHostsHostCapacity

type GetDedicatedHostsHostCapacity struct {
	// The remaining local disk capacity. Unit: GiB.
	AvailableLocalStorage int `pulumi:"availableLocalStorage"`
	// The remaining memory capacity, unit: GiB.
	AvailableMemory float64 `pulumi:"availableMemory"`
	// The number of remaining vCPU cores.
	AvailableVcpus int `pulumi:"availableVcpus"`
	// The number of available virtual GPUs.
	AvailableVgpus int `pulumi:"availableVgpus"`
	// Local disk type.
	LocalStorageCategory string `pulumi:"localStorageCategory"`
	// The total capacity of the local disk, in GiB.
	TotalLocalStorage int `pulumi:"totalLocalStorage"`
	// The total memory capacity, unit: GiB.
	TotalMemory float64 `pulumi:"totalMemory"`
	// The total number of vCPU cores.
	TotalVcpus int `pulumi:"totalVcpus"`
	// The total number of virtual GPUs.
	TotalVgpus int `pulumi:"totalVgpus"`
}

type GetDedicatedHostsHostCapacityArgs

type GetDedicatedHostsHostCapacityArgs struct {
	// The remaining local disk capacity. Unit: GiB.
	AvailableLocalStorage pulumi.IntInput `pulumi:"availableLocalStorage"`
	// The remaining memory capacity, unit: GiB.
	AvailableMemory pulumi.Float64Input `pulumi:"availableMemory"`
	// The number of remaining vCPU cores.
	AvailableVcpus pulumi.IntInput `pulumi:"availableVcpus"`
	// The number of available virtual GPUs.
	AvailableVgpus pulumi.IntInput `pulumi:"availableVgpus"`
	// Local disk type.
	LocalStorageCategory pulumi.StringInput `pulumi:"localStorageCategory"`
	// The total capacity of the local disk, in GiB.
	TotalLocalStorage pulumi.IntInput `pulumi:"totalLocalStorage"`
	// The total memory capacity, unit: GiB.
	TotalMemory pulumi.Float64Input `pulumi:"totalMemory"`
	// The total number of vCPU cores.
	TotalVcpus pulumi.IntInput `pulumi:"totalVcpus"`
	// The total number of virtual GPUs.
	TotalVgpus pulumi.IntInput `pulumi:"totalVgpus"`
}

func (GetDedicatedHostsHostCapacityArgs) ElementType

func (GetDedicatedHostsHostCapacityArgs) ToGetDedicatedHostsHostCapacityOutput

func (i GetDedicatedHostsHostCapacityArgs) ToGetDedicatedHostsHostCapacityOutput() GetDedicatedHostsHostCapacityOutput

func (GetDedicatedHostsHostCapacityArgs) ToGetDedicatedHostsHostCapacityOutputWithContext

func (i GetDedicatedHostsHostCapacityArgs) ToGetDedicatedHostsHostCapacityOutputWithContext(ctx context.Context) GetDedicatedHostsHostCapacityOutput

type GetDedicatedHostsHostCapacityArray

type GetDedicatedHostsHostCapacityArray []GetDedicatedHostsHostCapacityInput

func (GetDedicatedHostsHostCapacityArray) ElementType

func (GetDedicatedHostsHostCapacityArray) ToGetDedicatedHostsHostCapacityArrayOutput

func (i GetDedicatedHostsHostCapacityArray) ToGetDedicatedHostsHostCapacityArrayOutput() GetDedicatedHostsHostCapacityArrayOutput

func (GetDedicatedHostsHostCapacityArray) ToGetDedicatedHostsHostCapacityArrayOutputWithContext

func (i GetDedicatedHostsHostCapacityArray) ToGetDedicatedHostsHostCapacityArrayOutputWithContext(ctx context.Context) GetDedicatedHostsHostCapacityArrayOutput

type GetDedicatedHostsHostCapacityArrayInput

type GetDedicatedHostsHostCapacityArrayInput interface {
	pulumi.Input

	ToGetDedicatedHostsHostCapacityArrayOutput() GetDedicatedHostsHostCapacityArrayOutput
	ToGetDedicatedHostsHostCapacityArrayOutputWithContext(context.Context) GetDedicatedHostsHostCapacityArrayOutput
}

GetDedicatedHostsHostCapacityArrayInput is an input type that accepts GetDedicatedHostsHostCapacityArray and GetDedicatedHostsHostCapacityArrayOutput values. You can construct a concrete instance of `GetDedicatedHostsHostCapacityArrayInput` via:

GetDedicatedHostsHostCapacityArray{ GetDedicatedHostsHostCapacityArgs{...} }

type GetDedicatedHostsHostCapacityArrayOutput

type GetDedicatedHostsHostCapacityArrayOutput struct{ *pulumi.OutputState }

func (GetDedicatedHostsHostCapacityArrayOutput) ElementType

func (GetDedicatedHostsHostCapacityArrayOutput) Index

func (GetDedicatedHostsHostCapacityArrayOutput) ToGetDedicatedHostsHostCapacityArrayOutput

func (o GetDedicatedHostsHostCapacityArrayOutput) ToGetDedicatedHostsHostCapacityArrayOutput() GetDedicatedHostsHostCapacityArrayOutput

func (GetDedicatedHostsHostCapacityArrayOutput) ToGetDedicatedHostsHostCapacityArrayOutputWithContext

func (o GetDedicatedHostsHostCapacityArrayOutput) ToGetDedicatedHostsHostCapacityArrayOutputWithContext(ctx context.Context) GetDedicatedHostsHostCapacityArrayOutput

type GetDedicatedHostsHostCapacityInput

type GetDedicatedHostsHostCapacityInput interface {
	pulumi.Input

	ToGetDedicatedHostsHostCapacityOutput() GetDedicatedHostsHostCapacityOutput
	ToGetDedicatedHostsHostCapacityOutputWithContext(context.Context) GetDedicatedHostsHostCapacityOutput
}

GetDedicatedHostsHostCapacityInput is an input type that accepts GetDedicatedHostsHostCapacityArgs and GetDedicatedHostsHostCapacityOutput values. You can construct a concrete instance of `GetDedicatedHostsHostCapacityInput` via:

GetDedicatedHostsHostCapacityArgs{...}

type GetDedicatedHostsHostCapacityOutput

type GetDedicatedHostsHostCapacityOutput struct{ *pulumi.OutputState }

func (GetDedicatedHostsHostCapacityOutput) AvailableLocalStorage

func (o GetDedicatedHostsHostCapacityOutput) AvailableLocalStorage() pulumi.IntOutput

The remaining local disk capacity. Unit: GiB.

func (GetDedicatedHostsHostCapacityOutput) AvailableMemory

The remaining memory capacity, unit: GiB.

func (GetDedicatedHostsHostCapacityOutput) AvailableVcpus

The number of remaining vCPU cores.

func (GetDedicatedHostsHostCapacityOutput) AvailableVgpus

The number of available virtual GPUs.

func (GetDedicatedHostsHostCapacityOutput) ElementType

func (GetDedicatedHostsHostCapacityOutput) LocalStorageCategory

func (o GetDedicatedHostsHostCapacityOutput) LocalStorageCategory() pulumi.StringOutput

Local disk type.

func (GetDedicatedHostsHostCapacityOutput) ToGetDedicatedHostsHostCapacityOutput

func (o GetDedicatedHostsHostCapacityOutput) ToGetDedicatedHostsHostCapacityOutput() GetDedicatedHostsHostCapacityOutput

func (GetDedicatedHostsHostCapacityOutput) ToGetDedicatedHostsHostCapacityOutputWithContext

func (o GetDedicatedHostsHostCapacityOutput) ToGetDedicatedHostsHostCapacityOutputWithContext(ctx context.Context) GetDedicatedHostsHostCapacityOutput

func (GetDedicatedHostsHostCapacityOutput) TotalLocalStorage

The total capacity of the local disk, in GiB.

func (GetDedicatedHostsHostCapacityOutput) TotalMemory

The total memory capacity, unit: GiB.

func (GetDedicatedHostsHostCapacityOutput) TotalVcpus

The total number of vCPU cores.

func (GetDedicatedHostsHostCapacityOutput) TotalVgpus

The total number of virtual GPUs.

type GetDedicatedHostsHostInput

type GetDedicatedHostsHostInput interface {
	pulumi.Input

	ToGetDedicatedHostsHostOutput() GetDedicatedHostsHostOutput
	ToGetDedicatedHostsHostOutputWithContext(context.Context) GetDedicatedHostsHostOutput
}

GetDedicatedHostsHostInput is an input type that accepts GetDedicatedHostsHostArgs and GetDedicatedHostsHostOutput values. You can construct a concrete instance of `GetDedicatedHostsHostInput` via:

GetDedicatedHostsHostArgs{...}

type GetDedicatedHostsHostNetworkAttribute

type GetDedicatedHostsHostNetworkAttribute struct {
	// The timeout period for a UDP session between Server Load Balancer (SLB) and the dedicated host. Unit: seconds.
	SlbUdpTimeout int `pulumi:"slbUdpTimeout"`
	// (Available in 1.123.1+) The timeout period for a UDP session between a user and an Alibaba Cloud service on the dedicated host. Unit: seconds.
	UdpTimeout int `pulumi:"udpTimeout"`
}

type GetDedicatedHostsHostNetworkAttributeArgs

type GetDedicatedHostsHostNetworkAttributeArgs struct {
	// The timeout period for a UDP session between Server Load Balancer (SLB) and the dedicated host. Unit: seconds.
	SlbUdpTimeout pulumi.IntInput `pulumi:"slbUdpTimeout"`
	// (Available in 1.123.1+) The timeout period for a UDP session between a user and an Alibaba Cloud service on the dedicated host. Unit: seconds.
	UdpTimeout pulumi.IntInput `pulumi:"udpTimeout"`
}

func (GetDedicatedHostsHostNetworkAttributeArgs) ElementType

func (GetDedicatedHostsHostNetworkAttributeArgs) ToGetDedicatedHostsHostNetworkAttributeOutput

func (i GetDedicatedHostsHostNetworkAttributeArgs) ToGetDedicatedHostsHostNetworkAttributeOutput() GetDedicatedHostsHostNetworkAttributeOutput

func (GetDedicatedHostsHostNetworkAttributeArgs) ToGetDedicatedHostsHostNetworkAttributeOutputWithContext

func (i GetDedicatedHostsHostNetworkAttributeArgs) ToGetDedicatedHostsHostNetworkAttributeOutputWithContext(ctx context.Context) GetDedicatedHostsHostNetworkAttributeOutput

type GetDedicatedHostsHostNetworkAttributeArray

type GetDedicatedHostsHostNetworkAttributeArray []GetDedicatedHostsHostNetworkAttributeInput

func (GetDedicatedHostsHostNetworkAttributeArray) ElementType

func (GetDedicatedHostsHostNetworkAttributeArray) ToGetDedicatedHostsHostNetworkAttributeArrayOutput

func (i GetDedicatedHostsHostNetworkAttributeArray) ToGetDedicatedHostsHostNetworkAttributeArrayOutput() GetDedicatedHostsHostNetworkAttributeArrayOutput

func (GetDedicatedHostsHostNetworkAttributeArray) ToGetDedicatedHostsHostNetworkAttributeArrayOutputWithContext

func (i GetDedicatedHostsHostNetworkAttributeArray) ToGetDedicatedHostsHostNetworkAttributeArrayOutputWithContext(ctx context.Context) GetDedicatedHostsHostNetworkAttributeArrayOutput

type GetDedicatedHostsHostNetworkAttributeArrayInput

type GetDedicatedHostsHostNetworkAttributeArrayInput interface {
	pulumi.Input

	ToGetDedicatedHostsHostNetworkAttributeArrayOutput() GetDedicatedHostsHostNetworkAttributeArrayOutput
	ToGetDedicatedHostsHostNetworkAttributeArrayOutputWithContext(context.Context) GetDedicatedHostsHostNetworkAttributeArrayOutput
}

GetDedicatedHostsHostNetworkAttributeArrayInput is an input type that accepts GetDedicatedHostsHostNetworkAttributeArray and GetDedicatedHostsHostNetworkAttributeArrayOutput values. You can construct a concrete instance of `GetDedicatedHostsHostNetworkAttributeArrayInput` via:

GetDedicatedHostsHostNetworkAttributeArray{ GetDedicatedHostsHostNetworkAttributeArgs{...} }

type GetDedicatedHostsHostNetworkAttributeArrayOutput

type GetDedicatedHostsHostNetworkAttributeArrayOutput struct{ *pulumi.OutputState }

func (GetDedicatedHostsHostNetworkAttributeArrayOutput) ElementType

func (GetDedicatedHostsHostNetworkAttributeArrayOutput) Index

func (GetDedicatedHostsHostNetworkAttributeArrayOutput) ToGetDedicatedHostsHostNetworkAttributeArrayOutput

func (o GetDedicatedHostsHostNetworkAttributeArrayOutput) ToGetDedicatedHostsHostNetworkAttributeArrayOutput() GetDedicatedHostsHostNetworkAttributeArrayOutput

func (GetDedicatedHostsHostNetworkAttributeArrayOutput) ToGetDedicatedHostsHostNetworkAttributeArrayOutputWithContext

func (o GetDedicatedHostsHostNetworkAttributeArrayOutput) ToGetDedicatedHostsHostNetworkAttributeArrayOutputWithContext(ctx context.Context) GetDedicatedHostsHostNetworkAttributeArrayOutput

type GetDedicatedHostsHostNetworkAttributeInput

type GetDedicatedHostsHostNetworkAttributeInput interface {
	pulumi.Input

	ToGetDedicatedHostsHostNetworkAttributeOutput() GetDedicatedHostsHostNetworkAttributeOutput
	ToGetDedicatedHostsHostNetworkAttributeOutputWithContext(context.Context) GetDedicatedHostsHostNetworkAttributeOutput
}

GetDedicatedHostsHostNetworkAttributeInput is an input type that accepts GetDedicatedHostsHostNetworkAttributeArgs and GetDedicatedHostsHostNetworkAttributeOutput values. You can construct a concrete instance of `GetDedicatedHostsHostNetworkAttributeInput` via:

GetDedicatedHostsHostNetworkAttributeArgs{...}

type GetDedicatedHostsHostNetworkAttributeOutput

type GetDedicatedHostsHostNetworkAttributeOutput struct{ *pulumi.OutputState }

func (GetDedicatedHostsHostNetworkAttributeOutput) ElementType

func (GetDedicatedHostsHostNetworkAttributeOutput) SlbUdpTimeout

The timeout period for a UDP session between Server Load Balancer (SLB) and the dedicated host. Unit: seconds.

func (GetDedicatedHostsHostNetworkAttributeOutput) ToGetDedicatedHostsHostNetworkAttributeOutput

func (o GetDedicatedHostsHostNetworkAttributeOutput) ToGetDedicatedHostsHostNetworkAttributeOutput() GetDedicatedHostsHostNetworkAttributeOutput

func (GetDedicatedHostsHostNetworkAttributeOutput) ToGetDedicatedHostsHostNetworkAttributeOutputWithContext

func (o GetDedicatedHostsHostNetworkAttributeOutput) ToGetDedicatedHostsHostNetworkAttributeOutputWithContext(ctx context.Context) GetDedicatedHostsHostNetworkAttributeOutput

func (GetDedicatedHostsHostNetworkAttributeOutput) UdpTimeout

(Available in 1.123.1+) The timeout period for a UDP session between a user and an Alibaba Cloud service on the dedicated host. Unit: seconds.

type GetDedicatedHostsHostOperationLock

type GetDedicatedHostsHostOperationLock struct {
	// The reason why the dedicated host resource is locked.
	LockReason string `pulumi:"lockReason"`
}

type GetDedicatedHostsHostOperationLockArgs

type GetDedicatedHostsHostOperationLockArgs struct {
	// The reason why the dedicated host resource is locked.
	LockReason pulumi.StringInput `pulumi:"lockReason"`
}

func (GetDedicatedHostsHostOperationLockArgs) ElementType

func (GetDedicatedHostsHostOperationLockArgs) ToGetDedicatedHostsHostOperationLockOutput

func (i GetDedicatedHostsHostOperationLockArgs) ToGetDedicatedHostsHostOperationLockOutput() GetDedicatedHostsHostOperationLockOutput

func (GetDedicatedHostsHostOperationLockArgs) ToGetDedicatedHostsHostOperationLockOutputWithContext

func (i GetDedicatedHostsHostOperationLockArgs) ToGetDedicatedHostsHostOperationLockOutputWithContext(ctx context.Context) GetDedicatedHostsHostOperationLockOutput

type GetDedicatedHostsHostOperationLockArray

type GetDedicatedHostsHostOperationLockArray []GetDedicatedHostsHostOperationLockInput

func (GetDedicatedHostsHostOperationLockArray) ElementType

func (GetDedicatedHostsHostOperationLockArray) ToGetDedicatedHostsHostOperationLockArrayOutput

func (i GetDedicatedHostsHostOperationLockArray) ToGetDedicatedHostsHostOperationLockArrayOutput() GetDedicatedHostsHostOperationLockArrayOutput

func (GetDedicatedHostsHostOperationLockArray) ToGetDedicatedHostsHostOperationLockArrayOutputWithContext

func (i GetDedicatedHostsHostOperationLockArray) ToGetDedicatedHostsHostOperationLockArrayOutputWithContext(ctx context.Context) GetDedicatedHostsHostOperationLockArrayOutput

type GetDedicatedHostsHostOperationLockArrayInput

type GetDedicatedHostsHostOperationLockArrayInput interface {
	pulumi.Input

	ToGetDedicatedHostsHostOperationLockArrayOutput() GetDedicatedHostsHostOperationLockArrayOutput
	ToGetDedicatedHostsHostOperationLockArrayOutputWithContext(context.Context) GetDedicatedHostsHostOperationLockArrayOutput
}

GetDedicatedHostsHostOperationLockArrayInput is an input type that accepts GetDedicatedHostsHostOperationLockArray and GetDedicatedHostsHostOperationLockArrayOutput values. You can construct a concrete instance of `GetDedicatedHostsHostOperationLockArrayInput` via:

GetDedicatedHostsHostOperationLockArray{ GetDedicatedHostsHostOperationLockArgs{...} }

type GetDedicatedHostsHostOperationLockArrayOutput

type GetDedicatedHostsHostOperationLockArrayOutput struct{ *pulumi.OutputState }

func (GetDedicatedHostsHostOperationLockArrayOutput) ElementType

func (GetDedicatedHostsHostOperationLockArrayOutput) Index

func (GetDedicatedHostsHostOperationLockArrayOutput) ToGetDedicatedHostsHostOperationLockArrayOutput

func (o GetDedicatedHostsHostOperationLockArrayOutput) ToGetDedicatedHostsHostOperationLockArrayOutput() GetDedicatedHostsHostOperationLockArrayOutput

func (GetDedicatedHostsHostOperationLockArrayOutput) ToGetDedicatedHostsHostOperationLockArrayOutputWithContext

func (o GetDedicatedHostsHostOperationLockArrayOutput) ToGetDedicatedHostsHostOperationLockArrayOutputWithContext(ctx context.Context) GetDedicatedHostsHostOperationLockArrayOutput

type GetDedicatedHostsHostOperationLockInput

type GetDedicatedHostsHostOperationLockInput interface {
	pulumi.Input

	ToGetDedicatedHostsHostOperationLockOutput() GetDedicatedHostsHostOperationLockOutput
	ToGetDedicatedHostsHostOperationLockOutputWithContext(context.Context) GetDedicatedHostsHostOperationLockOutput
}

GetDedicatedHostsHostOperationLockInput is an input type that accepts GetDedicatedHostsHostOperationLockArgs and GetDedicatedHostsHostOperationLockOutput values. You can construct a concrete instance of `GetDedicatedHostsHostOperationLockInput` via:

GetDedicatedHostsHostOperationLockArgs{...}

type GetDedicatedHostsHostOperationLockOutput

type GetDedicatedHostsHostOperationLockOutput struct{ *pulumi.OutputState }

func (GetDedicatedHostsHostOperationLockOutput) ElementType

func (GetDedicatedHostsHostOperationLockOutput) LockReason

The reason why the dedicated host resource is locked.

func (GetDedicatedHostsHostOperationLockOutput) ToGetDedicatedHostsHostOperationLockOutput

func (o GetDedicatedHostsHostOperationLockOutput) ToGetDedicatedHostsHostOperationLockOutput() GetDedicatedHostsHostOperationLockOutput

func (GetDedicatedHostsHostOperationLockOutput) ToGetDedicatedHostsHostOperationLockOutputWithContext

func (o GetDedicatedHostsHostOperationLockOutput) ToGetDedicatedHostsHostOperationLockOutputWithContext(ctx context.Context) GetDedicatedHostsHostOperationLockOutput

type GetDedicatedHostsHostOutput

type GetDedicatedHostsHostOutput struct{ *pulumi.OutputState }

func (GetDedicatedHostsHostOutput) ActionOnMaintenance

func (o GetDedicatedHostsHostOutput) ActionOnMaintenance() pulumi.StringOutput

The policy used to migrate the instances from the dedicated host when the dedicated host fails or needs to be repaired online.

func (GetDedicatedHostsHostOutput) AutoPlacement

Specifies whether to add the dedicated host to the resource pool for automatic deployment.

func (GetDedicatedHostsHostOutput) AutoReleaseTime

func (o GetDedicatedHostsHostOutput) AutoReleaseTime() pulumi.StringOutput

The automatic release time of the dedicated host.

func (GetDedicatedHostsHostOutput) Capacities

(Available in 1.123.1+) A collection of proprietary host performance indicators.

func (GetDedicatedHostsHostOutput) Cores

A mapping of tags to assign to the resource.

func (GetDedicatedHostsHostOutput) CpuOverCommitRatio

func (o GetDedicatedHostsHostOutput) CpuOverCommitRatio() pulumi.Float64Output

(Available in 1.123.1+) CPU oversold ratio.

func (GetDedicatedHostsHostOutput) DedicatedHostId

func (o GetDedicatedHostsHostOutput) DedicatedHostId() pulumi.StringOutput

The ID of ECS Dedicated Host.

func (GetDedicatedHostsHostOutput) DedicatedHostName

func (o GetDedicatedHostsHostOutput) DedicatedHostName() pulumi.StringOutput

The name of ECS Dedicated Host.

func (GetDedicatedHostsHostOutput) DedicatedHostType

func (o GetDedicatedHostsHostOutput) DedicatedHostType() pulumi.StringOutput

The type of the dedicated host.

func (GetDedicatedHostsHostOutput) Description

The description of the dedicated host.

func (GetDedicatedHostsHostOutput) ElementType

func (GetDedicatedHostsHostOutput) ExpiredTime

The expiration time of the subscription dedicated host.

func (GetDedicatedHostsHostOutput) GpuSpec

The GPU model.

func (GetDedicatedHostsHostOutput) Id

ID of the ECS Dedicated Host.

func (GetDedicatedHostsHostOutput) MachineId

The machine code of the dedicated host.

func (GetDedicatedHostsHostOutput) NetworkAttributes

dedicated host network parameters. contains the following attributes:

func (GetDedicatedHostsHostOutput) OperationLocks

The reason why the dedicated host resource is locked.

func (GetDedicatedHostsHostOutput) PaymentType

The billing method of the dedicated host.

func (GetDedicatedHostsHostOutput) PhysicalGpus

func (o GetDedicatedHostsHostOutput) PhysicalGpus() pulumi.IntOutput

The number of physical GPUs.

func (GetDedicatedHostsHostOutput) ResourceGroupId

func (o GetDedicatedHostsHostOutput) ResourceGroupId() pulumi.StringOutput

The ID of the resource group to which the ECS Dedicated Host belongs.

func (GetDedicatedHostsHostOutput) SaleCycle

The unit of the subscription billing method.

func (GetDedicatedHostsHostOutput) Sockets

The number of physical CPUs.

func (GetDedicatedHostsHostOutput) Status

The status of the ECS Dedicated Host. validate value: `Available`, `Creating`, `PermanentFailure`, `Released`, `UnderAssessment`.

func (GetDedicatedHostsHostOutput) SupportedCustomInstanceTypeFamilies

func (o GetDedicatedHostsHostOutput) SupportedCustomInstanceTypeFamilies() pulumi.StringArrayOutput

(Available in 1.123.1+) A custom instance type family supported by a dedicated host.

func (GetDedicatedHostsHostOutput) SupportedInstanceTypeFamilies

func (o GetDedicatedHostsHostOutput) SupportedInstanceTypeFamilies() pulumi.StringArrayOutput

(Available in 1.123.1+) ECS instance type family supported by the dedicated host.

func (GetDedicatedHostsHostOutput) SupportedInstanceTypesLists

func (o GetDedicatedHostsHostOutput) SupportedInstanceTypesLists() pulumi.StringArrayOutput

The list of ECS instance

func (GetDedicatedHostsHostOutput) Tags

A mapping of tags to assign to the resource.

func (GetDedicatedHostsHostOutput) ToGetDedicatedHostsHostOutput

func (o GetDedicatedHostsHostOutput) ToGetDedicatedHostsHostOutput() GetDedicatedHostsHostOutput

func (GetDedicatedHostsHostOutput) ToGetDedicatedHostsHostOutputWithContext

func (o GetDedicatedHostsHostOutput) ToGetDedicatedHostsHostOutputWithContext(ctx context.Context) GetDedicatedHostsHostOutput

func (GetDedicatedHostsHostOutput) ZoneId

The zone ID of the ECS Dedicated Host.

type GetDedicatedHostsOperationLock

type GetDedicatedHostsOperationLock struct {
	// The reason why the dedicated host resource is locked.
	LockReason *string `pulumi:"lockReason"`
}

type GetDedicatedHostsOperationLockArgs

type GetDedicatedHostsOperationLockArgs struct {
	// The reason why the dedicated host resource is locked.
	LockReason pulumi.StringPtrInput `pulumi:"lockReason"`
}

func (GetDedicatedHostsOperationLockArgs) ElementType

func (GetDedicatedHostsOperationLockArgs) ToGetDedicatedHostsOperationLockOutput

func (i GetDedicatedHostsOperationLockArgs) ToGetDedicatedHostsOperationLockOutput() GetDedicatedHostsOperationLockOutput

func (GetDedicatedHostsOperationLockArgs) ToGetDedicatedHostsOperationLockOutputWithContext

func (i GetDedicatedHostsOperationLockArgs) ToGetDedicatedHostsOperationLockOutputWithContext(ctx context.Context) GetDedicatedHostsOperationLockOutput

type GetDedicatedHostsOperationLockArray

type GetDedicatedHostsOperationLockArray []GetDedicatedHostsOperationLockInput

func (GetDedicatedHostsOperationLockArray) ElementType

func (GetDedicatedHostsOperationLockArray) ToGetDedicatedHostsOperationLockArrayOutput

func (i GetDedicatedHostsOperationLockArray) ToGetDedicatedHostsOperationLockArrayOutput() GetDedicatedHostsOperationLockArrayOutput

func (GetDedicatedHostsOperationLockArray) ToGetDedicatedHostsOperationLockArrayOutputWithContext

func (i GetDedicatedHostsOperationLockArray) ToGetDedicatedHostsOperationLockArrayOutputWithContext(ctx context.Context) GetDedicatedHostsOperationLockArrayOutput

type GetDedicatedHostsOperationLockArrayInput

type GetDedicatedHostsOperationLockArrayInput interface {
	pulumi.Input

	ToGetDedicatedHostsOperationLockArrayOutput() GetDedicatedHostsOperationLockArrayOutput
	ToGetDedicatedHostsOperationLockArrayOutputWithContext(context.Context) GetDedicatedHostsOperationLockArrayOutput
}

GetDedicatedHostsOperationLockArrayInput is an input type that accepts GetDedicatedHostsOperationLockArray and GetDedicatedHostsOperationLockArrayOutput values. You can construct a concrete instance of `GetDedicatedHostsOperationLockArrayInput` via:

GetDedicatedHostsOperationLockArray{ GetDedicatedHostsOperationLockArgs{...} }

type GetDedicatedHostsOperationLockArrayOutput

type GetDedicatedHostsOperationLockArrayOutput struct{ *pulumi.OutputState }

func (GetDedicatedHostsOperationLockArrayOutput) ElementType

func (GetDedicatedHostsOperationLockArrayOutput) Index

func (GetDedicatedHostsOperationLockArrayOutput) ToGetDedicatedHostsOperationLockArrayOutput

func (o GetDedicatedHostsOperationLockArrayOutput) ToGetDedicatedHostsOperationLockArrayOutput() GetDedicatedHostsOperationLockArrayOutput

func (GetDedicatedHostsOperationLockArrayOutput) ToGetDedicatedHostsOperationLockArrayOutputWithContext

func (o GetDedicatedHostsOperationLockArrayOutput) ToGetDedicatedHostsOperationLockArrayOutputWithContext(ctx context.Context) GetDedicatedHostsOperationLockArrayOutput

type GetDedicatedHostsOperationLockInput

type GetDedicatedHostsOperationLockInput interface {
	pulumi.Input

	ToGetDedicatedHostsOperationLockOutput() GetDedicatedHostsOperationLockOutput
	ToGetDedicatedHostsOperationLockOutputWithContext(context.Context) GetDedicatedHostsOperationLockOutput
}

GetDedicatedHostsOperationLockInput is an input type that accepts GetDedicatedHostsOperationLockArgs and GetDedicatedHostsOperationLockOutput values. You can construct a concrete instance of `GetDedicatedHostsOperationLockInput` via:

GetDedicatedHostsOperationLockArgs{...}

type GetDedicatedHostsOperationLockOutput

type GetDedicatedHostsOperationLockOutput struct{ *pulumi.OutputState }

func (GetDedicatedHostsOperationLockOutput) ElementType

func (GetDedicatedHostsOperationLockOutput) LockReason

The reason why the dedicated host resource is locked.

func (GetDedicatedHostsOperationLockOutput) ToGetDedicatedHostsOperationLockOutput

func (o GetDedicatedHostsOperationLockOutput) ToGetDedicatedHostsOperationLockOutput() GetDedicatedHostsOperationLockOutput

func (GetDedicatedHostsOperationLockOutput) ToGetDedicatedHostsOperationLockOutputWithContext

func (o GetDedicatedHostsOperationLockOutput) ToGetDedicatedHostsOperationLockOutputWithContext(ctx context.Context) GetDedicatedHostsOperationLockOutput

type GetDedicatedHostsOutputArgs

type GetDedicatedHostsOutputArgs struct {
	// The ID of ECS Dedicated Host.
	DedicatedHostId pulumi.StringPtrInput `pulumi:"dedicatedHostId"`
	// The name of ECS Dedicated Host.
	DedicatedHostName pulumi.StringPtrInput `pulumi:"dedicatedHostName"`
	// The type of the dedicated host.
	DedicatedHostType pulumi.StringPtrInput `pulumi:"dedicatedHostType"`
	// A list of ECS Dedicated Host ids.
	Ids pulumi.StringArrayInput `pulumi:"ids"`
	// A regex string to filter results by the ECS Dedicated Host name.
	NameRegex pulumi.StringPtrInput `pulumi:"nameRegex"`
	// The reason why the dedicated host resource is locked.
	OperationLocks GetDedicatedHostsOperationLockArrayInput `pulumi:"operationLocks"`
	// Save the result to the file.
	OutputFile pulumi.StringPtrInput `pulumi:"outputFile"`
	// The ID of the resource group to which the ECS Dedicated Host belongs.
	ResourceGroupId pulumi.StringPtrInput `pulumi:"resourceGroupId"`
	// The status of the ECS Dedicated Host. validate value: `Available`, `Creating`, `PermanentFailure`, `Released`, `UnderAssessment`.
	Status pulumi.StringPtrInput `pulumi:"status"`
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapInput `pulumi:"tags"`
	// The zone ID of the ECS Dedicated Host.
	ZoneId pulumi.StringPtrInput `pulumi:"zoneId"`
}

A collection of arguments for invoking getDedicatedHosts.

func (GetDedicatedHostsOutputArgs) ElementType

type GetDedicatedHostsResult

type GetDedicatedHostsResult struct {
	// ID of the ECS Dedicated Host.
	DedicatedHostId *string `pulumi:"dedicatedHostId"`
	// The name of the dedicated host.
	DedicatedHostName *string `pulumi:"dedicatedHostName"`
	// The type of the dedicated host.
	DedicatedHostType *string `pulumi:"dedicatedHostType"`
	// A list of ECS Dedicated Hosts. Each element contains the following attributes:
	Hosts []GetDedicatedHostsHost `pulumi:"hosts"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// A list of ECS Dedicated Host ids.
	Ids       []string `pulumi:"ids"`
	NameRegex *string  `pulumi:"nameRegex"`
	// A list of ECS Dedicated Host names.
	Names []string `pulumi:"names"`
	// (Available in 1.123.1+) The operation_locks. contains the following attribute:
	OperationLocks []GetDedicatedHostsOperationLock `pulumi:"operationLocks"`
	OutputFile     *string                          `pulumi:"outputFile"`
	// The ID of the resource group to which the dedicated host belongs.
	ResourceGroupId *string `pulumi:"resourceGroupId"`
	// The service status of the dedicated host.
	Status *string                `pulumi:"status"`
	Tags   map[string]interface{} `pulumi:"tags"`
	ZoneId *string                `pulumi:"zoneId"`
}

A collection of values returned by getDedicatedHosts.

func GetDedicatedHosts

func GetDedicatedHosts(ctx *pulumi.Context, args *GetDedicatedHostsArgs, opts ...pulumi.InvokeOption) (*GetDedicatedHostsResult, error)

This data source provides a list of ECS Dedicated Hosts in an Alibaba Cloud account according to the specified filters.

> **NOTE:** Available in v1.91.0+.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/go/alicloud/ecs"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		dedicatedHostsDs, err := ecs.GetDedicatedHosts(ctx, &ecs.GetDedicatedHostsArgs{
			DedicatedHostType: pulumi.StringRef("ddh.g5"),
			NameRegex:         pulumi.StringRef("tf-testAcc"),
			Status:            pulumi.StringRef("Available"),
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("firstDedicatedHostsId", dedicatedHostsDs.Hosts[0].Id)
		return nil
	})
}

```

type GetDedicatedHostsResultOutput

type GetDedicatedHostsResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getDedicatedHosts.

func (GetDedicatedHostsResultOutput) DedicatedHostId

ID of the ECS Dedicated Host.

func (GetDedicatedHostsResultOutput) DedicatedHostName

The name of the dedicated host.

func (GetDedicatedHostsResultOutput) DedicatedHostType

The type of the dedicated host.

func (GetDedicatedHostsResultOutput) ElementType

func (GetDedicatedHostsResultOutput) Hosts

A list of ECS Dedicated Hosts. Each element contains the following attributes:

func (GetDedicatedHostsResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetDedicatedHostsResultOutput) Ids

A list of ECS Dedicated Host ids.

func (GetDedicatedHostsResultOutput) NameRegex

func (GetDedicatedHostsResultOutput) Names

A list of ECS Dedicated Host names.

func (GetDedicatedHostsResultOutput) OperationLocks

(Available in 1.123.1+) The operation_locks. contains the following attribute:

func (GetDedicatedHostsResultOutput) OutputFile

func (GetDedicatedHostsResultOutput) ResourceGroupId

The ID of the resource group to which the dedicated host belongs.

func (GetDedicatedHostsResultOutput) Status

The service status of the dedicated host.

func (GetDedicatedHostsResultOutput) Tags

func (GetDedicatedHostsResultOutput) ToGetDedicatedHostsResultOutput

func (o GetDedicatedHostsResultOutput) ToGetDedicatedHostsResultOutput() GetDedicatedHostsResultOutput

func (GetDedicatedHostsResultOutput) ToGetDedicatedHostsResultOutputWithContext

func (o GetDedicatedHostsResultOutput) ToGetDedicatedHostsResultOutputWithContext(ctx context.Context) GetDedicatedHostsResultOutput

func (GetDedicatedHostsResultOutput) ZoneId

type GetDisksArgs

type GetDisksArgs struct {
	AdditionalAttributes []string `pulumi:"additionalAttributes"`
	AutoSnapshotPolicyId *string  `pulumi:"autoSnapshotPolicyId"`
	// Availability zone of the disk.
	//
	// Deprecated: Field 'availability_zone' has been deprecated from provider version 1.122.0. New field 'zone_id' instead
	AvailabilityZone *string `pulumi:"availabilityZone"`
	// Disk category. Possible values: `cloud` (basic cloud disk), `cloudEfficiency` (ultra cloud disk), `ephemeralSsd` (local SSD cloud disk), `cloudSsd` (SSD cloud disk), and `cloudEssd` (ESSD cloud disk).
	Category                      *string `pulumi:"category"`
	DeleteAutoSnapshot            *bool   `pulumi:"deleteAutoSnapshot"`
	DeleteWithInstance            *bool   `pulumi:"deleteWithInstance"`
	DiskName                      *string `pulumi:"diskName"`
	DiskType                      *string `pulumi:"diskType"`
	DryRun                        *bool   `pulumi:"dryRun"`
	EnableAutoSnapshot            *bool   `pulumi:"enableAutoSnapshot"`
	EnableAutomatedSnapshotPolicy *bool   `pulumi:"enableAutomatedSnapshotPolicy"`
	EnableShared                  *bool   `pulumi:"enableShared"`
	// Indicate whether the disk is encrypted or not. Possible values: `on` and `off`.
	Encrypted *string `pulumi:"encrypted"`
	// A list of disks IDs.
	Ids []string `pulumi:"ids"`
	// Filter the results by the specified ECS instance ID.
	InstanceId *string `pulumi:"instanceId"`
	KmsKeyId   *string `pulumi:"kmsKeyId"`
	// A regex string to filter results by disk name.
	NameRegex      *string                 `pulumi:"nameRegex"`
	OperationLocks []GetDisksOperationLock `pulumi:"operationLocks"`
	OutputFile     *string                 `pulumi:"outputFile"`
	PageNumber     *int                    `pulumi:"pageNumber"`
	PageSize       *int                    `pulumi:"pageSize"`
	PaymentType    *string                 `pulumi:"paymentType"`
	Portable       *bool                   `pulumi:"portable"`
	// The Id of resource group which the disk belongs.
	ResourceGroupId *string `pulumi:"resourceGroupId"`
	// Snapshot used to create the disk. It is null if no snapshot is used to create the disk.
	SnapshotId *string `pulumi:"snapshotId"`
	// Current status. Possible values: `In_use`, `Available`, `Attaching`, `Detaching`, `Creating` and `ReIniting`.
	Status *string `pulumi:"status"`
	// A map of tags assigned to the disks. It must be in the format:
	// “`go
	// package main
	//
	// import (
	// 	"github.com/pulumi/pulumi-alicloud/sdk/go/alicloud/ecs"
	// 	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
	// 	"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"
	// )
	//
	// func main() {
	// 	pulumi.Run(func(ctx *pulumi.Context) error {
	// 		_, err := ecs.GetDisks(ctx, &ecs.GetDisksArgs{
	// 			Tags: map[string]interface{}{
	// 				"tagKey1": "tagValue1",
	// 				"tagKey2": "tagValue2",
	// 			},
	// 		}, nil)
	// 		if err != nil {
	// 			return err
	// 		}
	// 		return nil
	// 	})
	// }
	// “`
	Tags map[string]interface{} `pulumi:"tags"`
	// Disk type. Possible values: `system` and `data`.
	//
	// Deprecated: Field 'type' has been deprecated from provider version 1.122.0. New field 'disk_type' instead.
	Type   *string `pulumi:"type"`
	ZoneId *string `pulumi:"zoneId"`
}

A collection of arguments for invoking getDisks.

type GetDisksDisk

type GetDisksDisk struct {
	// Disk attachment time.
	AttachedTime         string `pulumi:"attachedTime"`
	AutoSnapshotPolicyId string `pulumi:"autoSnapshotPolicyId"`
	// Availability zone of the disk.
	AvailabilityZone string `pulumi:"availabilityZone"`
	// Disk category. Possible values: `cloud` (basic cloud disk), `cloudEfficiency` (ultra cloud disk), `ephemeralSsd` (local SSD cloud disk), `cloudSsd` (SSD cloud disk), and `cloudEssd` (ESSD cloud disk).
	Category string `pulumi:"category"`
	// Disk creation time.
	CreationTime       string `pulumi:"creationTime"`
	DeleteAutoSnapshot bool   `pulumi:"deleteAutoSnapshot"`
	DeleteWithInstance bool   `pulumi:"deleteWithInstance"`
	// Disk description.
	Description string `pulumi:"description"`
	// Disk detachment time.
	DetachedTime                  string `pulumi:"detachedTime"`
	Device                        string `pulumi:"device"`
	DiskId                        string `pulumi:"diskId"`
	DiskName                      string `pulumi:"diskName"`
	DiskType                      string `pulumi:"diskType"`
	EnableAutoSnapshot            bool   `pulumi:"enableAutoSnapshot"`
	EnableAutomatedSnapshotPolicy bool   `pulumi:"enableAutomatedSnapshotPolicy"`
	// Indicate whether the disk is encrypted or not. Possible values: `on` and `off`.
	Encrypted   string `pulumi:"encrypted"`
	ExpiredTime string `pulumi:"expiredTime"`
	// ID of the disk.
	Id string `pulumi:"id"`
	// ID of the image from which the disk is created. It is null unless the disk is created using an image.
	ImageId string `pulumi:"imageId"`
	// Filter the results by the specified ECS instance ID.
	InstanceId       string                      `pulumi:"instanceId"`
	Iops             int                         `pulumi:"iops"`
	IopsRead         int                         `pulumi:"iopsRead"`
	IopsWrite        int                         `pulumi:"iopsWrite"`
	KmsKeyId         string                      `pulumi:"kmsKeyId"`
	MountInstanceNum int                         `pulumi:"mountInstanceNum"`
	MountInstances   []GetDisksDiskMountInstance `pulumi:"mountInstances"`
	// Disk name.
	Name             string                      `pulumi:"name"`
	OperationLocks   []GetDisksDiskOperationLock `pulumi:"operationLocks"`
	PaymentType      string                      `pulumi:"paymentType"`
	PerformanceLevel string                      `pulumi:"performanceLevel"`
	Portable         bool                        `pulumi:"portable"`
	ProductCode      string                      `pulumi:"productCode"`
	// Region ID the disk belongs to.
	RegionId string `pulumi:"regionId"`
	// The Id of resource group which the disk belongs.
	ResourceGroupId string `pulumi:"resourceGroupId"`
	// Disk size in GiB.
	Size int `pulumi:"size"`
	// Snapshot used to create the disk. It is null if no snapshot is used to create the disk.
	SnapshotId string `pulumi:"snapshotId"`
	// Current status. Possible values: `In_use`, `Available`, `Attaching`, `Detaching`, `Creating` and `ReIniting`.
	Status string `pulumi:"status"`
	// A map of tags assigned to the disks. It must be in the format:
	// “`go
	// package main
	//
	// import (
	// 	"github.com/pulumi/pulumi-alicloud/sdk/go/alicloud/ecs"
	// 	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
	// 	"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"
	// )
	//
	// func main() {
	// 	pulumi.Run(func(ctx *pulumi.Context) error {
	// 		_, err := ecs.GetDisks(ctx, &ecs.GetDisksArgs{
	// 			Tags: map[string]interface{}{
	// 				"tagKey1": "tagValue1",
	// 				"tagKey2": "tagValue2",
	// 			},
	// 		}, nil)
	// 		if err != nil {
	// 			return err
	// 		}
	// 		return nil
	// 	})
	// }
	// “`
	Tags map[string]interface{} `pulumi:"tags"`
	// Disk type. Possible values: `system` and `data`.
	Type   string `pulumi:"type"`
	ZoneId string `pulumi:"zoneId"`
}

type GetDisksDiskArgs

type GetDisksDiskArgs struct {
	// Disk attachment time.
	AttachedTime         pulumi.StringInput `pulumi:"attachedTime"`
	AutoSnapshotPolicyId pulumi.StringInput `pulumi:"autoSnapshotPolicyId"`
	// Availability zone of the disk.
	AvailabilityZone pulumi.StringInput `pulumi:"availabilityZone"`
	// Disk category. Possible values: `cloud` (basic cloud disk), `cloudEfficiency` (ultra cloud disk), `ephemeralSsd` (local SSD cloud disk), `cloudSsd` (SSD cloud disk), and `cloudEssd` (ESSD cloud disk).
	Category pulumi.StringInput `pulumi:"category"`
	// Disk creation time.
	CreationTime       pulumi.StringInput `pulumi:"creationTime"`
	DeleteAutoSnapshot pulumi.BoolInput   `pulumi:"deleteAutoSnapshot"`
	DeleteWithInstance pulumi.BoolInput   `pulumi:"deleteWithInstance"`
	// Disk description.
	Description pulumi.StringInput `pulumi:"description"`
	// Disk detachment time.
	DetachedTime                  pulumi.StringInput `pulumi:"detachedTime"`
	Device                        pulumi.StringInput `pulumi:"device"`
	DiskId                        pulumi.StringInput `pulumi:"diskId"`
	DiskName                      pulumi.StringInput `pulumi:"diskName"`
	DiskType                      pulumi.StringInput `pulumi:"diskType"`
	EnableAutoSnapshot            pulumi.BoolInput   `pulumi:"enableAutoSnapshot"`
	EnableAutomatedSnapshotPolicy pulumi.BoolInput   `pulumi:"enableAutomatedSnapshotPolicy"`
	// Indicate whether the disk is encrypted or not. Possible values: `on` and `off`.
	Encrypted   pulumi.StringInput `pulumi:"encrypted"`
	ExpiredTime pulumi.StringInput `pulumi:"expiredTime"`
	// ID of the disk.
	Id pulumi.StringInput `pulumi:"id"`
	// ID of the image from which the disk is created. It is null unless the disk is created using an image.
	ImageId pulumi.StringInput `pulumi:"imageId"`
	// Filter the results by the specified ECS instance ID.
	InstanceId       pulumi.StringInput                  `pulumi:"instanceId"`
	Iops             pulumi.IntInput                     `pulumi:"iops"`
	IopsRead         pulumi.IntInput                     `pulumi:"iopsRead"`
	IopsWrite        pulumi.IntInput                     `pulumi:"iopsWrite"`
	KmsKeyId         pulumi.StringInput                  `pulumi:"kmsKeyId"`
	MountInstanceNum pulumi.IntInput                     `pulumi:"mountInstanceNum"`
	MountInstances   GetDisksDiskMountInstanceArrayInput `pulumi:"mountInstances"`
	// Disk name.
	Name             pulumi.StringInput                  `pulumi:"name"`
	OperationLocks   GetDisksDiskOperationLockArrayInput `pulumi:"operationLocks"`
	PaymentType      pulumi.StringInput                  `pulumi:"paymentType"`
	PerformanceLevel pulumi.StringInput                  `pulumi:"performanceLevel"`
	Portable         pulumi.BoolInput                    `pulumi:"portable"`
	ProductCode      pulumi.StringInput                  `pulumi:"productCode"`
	// Region ID the disk belongs to.
	RegionId pulumi.StringInput `pulumi:"regionId"`
	// The Id of resource group which the disk belongs.
	ResourceGroupId pulumi.StringInput `pulumi:"resourceGroupId"`
	// Disk size in GiB.
	Size pulumi.IntInput `pulumi:"size"`
	// Snapshot used to create the disk. It is null if no snapshot is used to create the disk.
	SnapshotId pulumi.StringInput `pulumi:"snapshotId"`
	// Current status. Possible values: `In_use`, `Available`, `Attaching`, `Detaching`, `Creating` and `ReIniting`.
	Status pulumi.StringInput `pulumi:"status"`
	// A map of tags assigned to the disks. It must be in the format:
	// “`go
	// package main
	//
	// import (
	// 	"github.com/pulumi/pulumi-alicloud/sdk/go/alicloud/ecs"
	// 	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
	// 	"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"
	// )
	//
	// func main() {
	// 	pulumi.Run(func(ctx *pulumi.Context) error {
	// 		_, err := ecs.GetDisks(ctx, &ecs.GetDisksArgs{
	// 			Tags: map[string]interface{}{
	// 				"tagKey1": "tagValue1",
	// 				"tagKey2": "tagValue2",
	// 			},
	// 		}, nil)
	// 		if err != nil {
	// 			return err
	// 		}
	// 		return nil
	// 	})
	// }
	// “`
	Tags pulumi.MapInput `pulumi:"tags"`
	// Disk type. Possible values: `system` and `data`.
	Type   pulumi.StringInput `pulumi:"type"`
	ZoneId pulumi.StringInput `pulumi:"zoneId"`
}

func (GetDisksDiskArgs) ElementType

func (GetDisksDiskArgs) ElementType() reflect.Type

func (GetDisksDiskArgs) ToGetDisksDiskOutput

func (i GetDisksDiskArgs) ToGetDisksDiskOutput() GetDisksDiskOutput

func (GetDisksDiskArgs) ToGetDisksDiskOutputWithContext

func (i GetDisksDiskArgs) ToGetDisksDiskOutputWithContext(ctx context.Context) GetDisksDiskOutput

type GetDisksDiskArray

type GetDisksDiskArray []GetDisksDiskInput

func (GetDisksDiskArray) ElementType

func (GetDisksDiskArray) ElementType() reflect.Type

func (GetDisksDiskArray) ToGetDisksDiskArrayOutput

func (i GetDisksDiskArray) ToGetDisksDiskArrayOutput() GetDisksDiskArrayOutput

func (GetDisksDiskArray) ToGetDisksDiskArrayOutputWithContext

func (i GetDisksDiskArray) ToGetDisksDiskArrayOutputWithContext(ctx context.Context) GetDisksDiskArrayOutput

type GetDisksDiskArrayInput

type GetDisksDiskArrayInput interface {
	pulumi.Input

	ToGetDisksDiskArrayOutput() GetDisksDiskArrayOutput
	ToGetDisksDiskArrayOutputWithContext(context.Context) GetDisksDiskArrayOutput
}

GetDisksDiskArrayInput is an input type that accepts GetDisksDiskArray and GetDisksDiskArrayOutput values. You can construct a concrete instance of `GetDisksDiskArrayInput` via:

GetDisksDiskArray{ GetDisksDiskArgs{...} }

type GetDisksDiskArrayOutput

type GetDisksDiskArrayOutput struct{ *pulumi.OutputState }

func (GetDisksDiskArrayOutput) ElementType

func (GetDisksDiskArrayOutput) ElementType() reflect.Type

func (GetDisksDiskArrayOutput) Index

func (GetDisksDiskArrayOutput) ToGetDisksDiskArrayOutput

func (o GetDisksDiskArrayOutput) ToGetDisksDiskArrayOutput() GetDisksDiskArrayOutput

func (GetDisksDiskArrayOutput) ToGetDisksDiskArrayOutputWithContext

func (o GetDisksDiskArrayOutput) ToGetDisksDiskArrayOutputWithContext(ctx context.Context) GetDisksDiskArrayOutput

type GetDisksDiskInput

type GetDisksDiskInput interface {
	pulumi.Input

	ToGetDisksDiskOutput() GetDisksDiskOutput
	ToGetDisksDiskOutputWithContext(context.Context) GetDisksDiskOutput
}

GetDisksDiskInput is an input type that accepts GetDisksDiskArgs and GetDisksDiskOutput values. You can construct a concrete instance of `GetDisksDiskInput` via:

GetDisksDiskArgs{...}

type GetDisksDiskMountInstance

type GetDisksDiskMountInstance struct {
	// Disk attachment time.
	AttachedTime string `pulumi:"attachedTime"`
	Device       string `pulumi:"device"`
	// Filter the results by the specified ECS instance ID.
	InstanceId string `pulumi:"instanceId"`
}

type GetDisksDiskMountInstanceArgs

type GetDisksDiskMountInstanceArgs struct {
	// Disk attachment time.
	AttachedTime pulumi.StringInput `pulumi:"attachedTime"`
	Device       pulumi.StringInput `pulumi:"device"`
	// Filter the results by the specified ECS instance ID.
	InstanceId pulumi.StringInput `pulumi:"instanceId"`
}

func (GetDisksDiskMountInstanceArgs) ElementType

func (GetDisksDiskMountInstanceArgs) ToGetDisksDiskMountInstanceOutput

func (i GetDisksDiskMountInstanceArgs) ToGetDisksDiskMountInstanceOutput() GetDisksDiskMountInstanceOutput

func (GetDisksDiskMountInstanceArgs) ToGetDisksDiskMountInstanceOutputWithContext

func (i GetDisksDiskMountInstanceArgs) ToGetDisksDiskMountInstanceOutputWithContext(ctx context.Context) GetDisksDiskMountInstanceOutput

type GetDisksDiskMountInstanceArray

type GetDisksDiskMountInstanceArray []GetDisksDiskMountInstanceInput

func (GetDisksDiskMountInstanceArray) ElementType

func (GetDisksDiskMountInstanceArray) ToGetDisksDiskMountInstanceArrayOutput

func (i GetDisksDiskMountInstanceArray) ToGetDisksDiskMountInstanceArrayOutput() GetDisksDiskMountInstanceArrayOutput

func (GetDisksDiskMountInstanceArray) ToGetDisksDiskMountInstanceArrayOutputWithContext

func (i GetDisksDiskMountInstanceArray) ToGetDisksDiskMountInstanceArrayOutputWithContext(ctx context.Context) GetDisksDiskMountInstanceArrayOutput

type GetDisksDiskMountInstanceArrayInput

type GetDisksDiskMountInstanceArrayInput interface {
	pulumi.Input

	ToGetDisksDiskMountInstanceArrayOutput() GetDisksDiskMountInstanceArrayOutput
	ToGetDisksDiskMountInstanceArrayOutputWithContext(context.Context) GetDisksDiskMountInstanceArrayOutput
}

GetDisksDiskMountInstanceArrayInput is an input type that accepts GetDisksDiskMountInstanceArray and GetDisksDiskMountInstanceArrayOutput values. You can construct a concrete instance of `GetDisksDiskMountInstanceArrayInput` via:

GetDisksDiskMountInstanceArray{ GetDisksDiskMountInstanceArgs{...} }

type GetDisksDiskMountInstanceArrayOutput

type GetDisksDiskMountInstanceArrayOutput struct{ *pulumi.OutputState }

func (GetDisksDiskMountInstanceArrayOutput) ElementType

func (GetDisksDiskMountInstanceArrayOutput) Index

func (GetDisksDiskMountInstanceArrayOutput) ToGetDisksDiskMountInstanceArrayOutput

func (o GetDisksDiskMountInstanceArrayOutput) ToGetDisksDiskMountInstanceArrayOutput() GetDisksDiskMountInstanceArrayOutput

func (GetDisksDiskMountInstanceArrayOutput) ToGetDisksDiskMountInstanceArrayOutputWithContext

func (o GetDisksDiskMountInstanceArrayOutput) ToGetDisksDiskMountInstanceArrayOutputWithContext(ctx context.Context) GetDisksDiskMountInstanceArrayOutput

type GetDisksDiskMountInstanceInput

type GetDisksDiskMountInstanceInput interface {
	pulumi.Input

	ToGetDisksDiskMountInstanceOutput() GetDisksDiskMountInstanceOutput
	ToGetDisksDiskMountInstanceOutputWithContext(context.Context) GetDisksDiskMountInstanceOutput
}

GetDisksDiskMountInstanceInput is an input type that accepts GetDisksDiskMountInstanceArgs and GetDisksDiskMountInstanceOutput values. You can construct a concrete instance of `GetDisksDiskMountInstanceInput` via:

GetDisksDiskMountInstanceArgs{...}

type GetDisksDiskMountInstanceOutput

type GetDisksDiskMountInstanceOutput struct{ *pulumi.OutputState }

func (GetDisksDiskMountInstanceOutput) AttachedTime

Disk attachment time.

func (GetDisksDiskMountInstanceOutput) Device

func (GetDisksDiskMountInstanceOutput) ElementType

func (GetDisksDiskMountInstanceOutput) InstanceId

Filter the results by the specified ECS instance ID.

func (GetDisksDiskMountInstanceOutput) ToGetDisksDiskMountInstanceOutput

func (o GetDisksDiskMountInstanceOutput) ToGetDisksDiskMountInstanceOutput() GetDisksDiskMountInstanceOutput

func (GetDisksDiskMountInstanceOutput) ToGetDisksDiskMountInstanceOutputWithContext

func (o GetDisksDiskMountInstanceOutput) ToGetDisksDiskMountInstanceOutputWithContext(ctx context.Context) GetDisksDiskMountInstanceOutput

type GetDisksDiskOperationLock

type GetDisksDiskOperationLock struct {
	LockReason string `pulumi:"lockReason"`
}

type GetDisksDiskOperationLockArgs

type GetDisksDiskOperationLockArgs struct {
	LockReason pulumi.StringInput `pulumi:"lockReason"`
}

func (GetDisksDiskOperationLockArgs) ElementType

func (GetDisksDiskOperationLockArgs) ToGetDisksDiskOperationLockOutput

func (i GetDisksDiskOperationLockArgs) ToGetDisksDiskOperationLockOutput() GetDisksDiskOperationLockOutput

func (GetDisksDiskOperationLockArgs) ToGetDisksDiskOperationLockOutputWithContext

func (i GetDisksDiskOperationLockArgs) ToGetDisksDiskOperationLockOutputWithContext(ctx context.Context) GetDisksDiskOperationLockOutput

type GetDisksDiskOperationLockArray

type GetDisksDiskOperationLockArray []GetDisksDiskOperationLockInput

func (GetDisksDiskOperationLockArray) ElementType

func (GetDisksDiskOperationLockArray) ToGetDisksDiskOperationLockArrayOutput

func (i GetDisksDiskOperationLockArray) ToGetDisksDiskOperationLockArrayOutput() GetDisksDiskOperationLockArrayOutput

func (GetDisksDiskOperationLockArray) ToGetDisksDiskOperationLockArrayOutputWithContext

func (i GetDisksDiskOperationLockArray) ToGetDisksDiskOperationLockArrayOutputWithContext(ctx context.Context) GetDisksDiskOperationLockArrayOutput

type GetDisksDiskOperationLockArrayInput

type GetDisksDiskOperationLockArrayInput interface {
	pulumi.Input

	ToGetDisksDiskOperationLockArrayOutput() GetDisksDiskOperationLockArrayOutput
	ToGetDisksDiskOperationLockArrayOutputWithContext(context.Context) GetDisksDiskOperationLockArrayOutput
}

GetDisksDiskOperationLockArrayInput is an input type that accepts GetDisksDiskOperationLockArray and GetDisksDiskOperationLockArrayOutput values. You can construct a concrete instance of `GetDisksDiskOperationLockArrayInput` via:

GetDisksDiskOperationLockArray{ GetDisksDiskOperationLockArgs{...} }

type GetDisksDiskOperationLockArrayOutput

type GetDisksDiskOperationLockArrayOutput struct{ *pulumi.OutputState }

func (GetDisksDiskOperationLockArrayOutput) ElementType

func (GetDisksDiskOperationLockArrayOutput) Index

func (GetDisksDiskOperationLockArrayOutput) ToGetDisksDiskOperationLockArrayOutput

func (o GetDisksDiskOperationLockArrayOutput) ToGetDisksDiskOperationLockArrayOutput() GetDisksDiskOperationLockArrayOutput

func (GetDisksDiskOperationLockArrayOutput) ToGetDisksDiskOperationLockArrayOutputWithContext

func (o GetDisksDiskOperationLockArrayOutput) ToGetDisksDiskOperationLockArrayOutputWithContext(ctx context.Context) GetDisksDiskOperationLockArrayOutput

type GetDisksDiskOperationLockInput

type GetDisksDiskOperationLockInput interface {
	pulumi.Input

	ToGetDisksDiskOperationLockOutput() GetDisksDiskOperationLockOutput
	ToGetDisksDiskOperationLockOutputWithContext(context.Context) GetDisksDiskOperationLockOutput
}

GetDisksDiskOperationLockInput is an input type that accepts GetDisksDiskOperationLockArgs and GetDisksDiskOperationLockOutput values. You can construct a concrete instance of `GetDisksDiskOperationLockInput` via:

GetDisksDiskOperationLockArgs{...}

type GetDisksDiskOperationLockOutput

type GetDisksDiskOperationLockOutput struct{ *pulumi.OutputState }

func (GetDisksDiskOperationLockOutput) ElementType

func (GetDisksDiskOperationLockOutput) LockReason

func (GetDisksDiskOperationLockOutput) ToGetDisksDiskOperationLockOutput

func (o GetDisksDiskOperationLockOutput) ToGetDisksDiskOperationLockOutput() GetDisksDiskOperationLockOutput

func (GetDisksDiskOperationLockOutput) ToGetDisksDiskOperationLockOutputWithContext

func (o GetDisksDiskOperationLockOutput) ToGetDisksDiskOperationLockOutputWithContext(ctx context.Context) GetDisksDiskOperationLockOutput

type GetDisksDiskOutput

type GetDisksDiskOutput struct{ *pulumi.OutputState }

func (GetDisksDiskOutput) AttachedTime

func (o GetDisksDiskOutput) AttachedTime() pulumi.StringOutput

Disk attachment time.

func (GetDisksDiskOutput) AutoSnapshotPolicyId

func (o GetDisksDiskOutput) AutoSnapshotPolicyId() pulumi.StringOutput

func (GetDisksDiskOutput) AvailabilityZone

func (o GetDisksDiskOutput) AvailabilityZone() pulumi.StringOutput

Availability zone of the disk.

func (GetDisksDiskOutput) Category

func (o GetDisksDiskOutput) Category() pulumi.StringOutput

Disk category. Possible values: `cloud` (basic cloud disk), `cloudEfficiency` (ultra cloud disk), `ephemeralSsd` (local SSD cloud disk), `cloudSsd` (SSD cloud disk), and `cloudEssd` (ESSD cloud disk).

func (GetDisksDiskOutput) CreationTime

func (o GetDisksDiskOutput) CreationTime() pulumi.StringOutput

Disk creation time.

func (GetDisksDiskOutput) DeleteAutoSnapshot

func (o GetDisksDiskOutput) DeleteAutoSnapshot() pulumi.BoolOutput

func (GetDisksDiskOutput) DeleteWithInstance

func (o GetDisksDiskOutput) DeleteWithInstance() pulumi.BoolOutput

func (GetDisksDiskOutput) Description

func (o GetDisksDiskOutput) Description() pulumi.StringOutput

Disk description.

func (GetDisksDiskOutput) DetachedTime

func (o GetDisksDiskOutput) DetachedTime() pulumi.StringOutput

Disk detachment time.

func (GetDisksDiskOutput) Device

func (GetDisksDiskOutput) DiskId

func (GetDisksDiskOutput) DiskName

func (o GetDisksDiskOutput) DiskName() pulumi.StringOutput

func (GetDisksDiskOutput) DiskType

func (o GetDisksDiskOutput) DiskType() pulumi.StringOutput

func (GetDisksDiskOutput) ElementType

func (GetDisksDiskOutput) ElementType() reflect.Type

func (GetDisksDiskOutput) EnableAutoSnapshot

func (o GetDisksDiskOutput) EnableAutoSnapshot() pulumi.BoolOutput

func (GetDisksDiskOutput) EnableAutomatedSnapshotPolicy

func (o GetDisksDiskOutput) EnableAutomatedSnapshotPolicy() pulumi.BoolOutput

func (GetDisksDiskOutput) Encrypted

func (o GetDisksDiskOutput) Encrypted() pulumi.StringOutput

Indicate whether the disk is encrypted or not. Possible values: `on` and `off`.

func (GetDisksDiskOutput) ExpiredTime

func (o GetDisksDiskOutput) ExpiredTime() pulumi.StringOutput

func (GetDisksDiskOutput) Id

ID of the disk.

func (GetDisksDiskOutput) ImageId

ID of the image from which the disk is created. It is null unless the disk is created using an image.

func (GetDisksDiskOutput) InstanceId

func (o GetDisksDiskOutput) InstanceId() pulumi.StringOutput

Filter the results by the specified ECS instance ID.

func (GetDisksDiskOutput) Iops

func (GetDisksDiskOutput) IopsRead

func (o GetDisksDiskOutput) IopsRead() pulumi.IntOutput

func (GetDisksDiskOutput) IopsWrite

func (o GetDisksDiskOutput) IopsWrite() pulumi.IntOutput

func (GetDisksDiskOutput) KmsKeyId

func (o GetDisksDiskOutput) KmsKeyId() pulumi.StringOutput

func (GetDisksDiskOutput) MountInstanceNum

func (o GetDisksDiskOutput) MountInstanceNum() pulumi.IntOutput

func (GetDisksDiskOutput) MountInstances

func (GetDisksDiskOutput) Name

Disk name.

func (GetDisksDiskOutput) OperationLocks

func (GetDisksDiskOutput) PaymentType

func (o GetDisksDiskOutput) PaymentType() pulumi.StringOutput

func (GetDisksDiskOutput) PerformanceLevel

func (o GetDisksDiskOutput) PerformanceLevel() pulumi.StringOutput

func (GetDisksDiskOutput) Portable

func (o GetDisksDiskOutput) Portable() pulumi.BoolOutput

func (GetDisksDiskOutput) ProductCode

func (o GetDisksDiskOutput) ProductCode() pulumi.StringOutput

func (GetDisksDiskOutput) RegionId

func (o GetDisksDiskOutput) RegionId() pulumi.StringOutput

Region ID the disk belongs to.

func (GetDisksDiskOutput) ResourceGroupId

func (o GetDisksDiskOutput) ResourceGroupId() pulumi.StringOutput

The Id of resource group which the disk belongs.

func (GetDisksDiskOutput) Size

Disk size in GiB.

func (GetDisksDiskOutput) SnapshotId

func (o GetDisksDiskOutput) SnapshotId() pulumi.StringOutput

Snapshot used to create the disk. It is null if no snapshot is used to create the disk.

func (GetDisksDiskOutput) Status

Current status. Possible values: `In_use`, `Available`, `Attaching`, `Detaching`, `Creating` and `ReIniting`.

func (GetDisksDiskOutput) Tags

A map of tags assigned to the disks. It must be in the format: ```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/go/alicloud/ecs"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ecs.GetDisks(ctx, &ecs.GetDisksArgs{
			Tags: map[string]interface{}{
				"tagKey1": "tagValue1",
				"tagKey2": "tagValue2",
			},
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

func (GetDisksDiskOutput) ToGetDisksDiskOutput

func (o GetDisksDiskOutput) ToGetDisksDiskOutput() GetDisksDiskOutput

func (GetDisksDiskOutput) ToGetDisksDiskOutputWithContext

func (o GetDisksDiskOutput) ToGetDisksDiskOutputWithContext(ctx context.Context) GetDisksDiskOutput

func (GetDisksDiskOutput) Type

Disk type. Possible values: `system` and `data`.

func (GetDisksDiskOutput) ZoneId

type GetDisksOperationLock

type GetDisksOperationLock struct {
	LockReason *string `pulumi:"lockReason"`
}

type GetDisksOperationLockArgs

type GetDisksOperationLockArgs struct {
	LockReason pulumi.StringPtrInput `pulumi:"lockReason"`
}

func (GetDisksOperationLockArgs) ElementType

func (GetDisksOperationLockArgs) ElementType() reflect.Type

func (GetDisksOperationLockArgs) ToGetDisksOperationLockOutput

func (i GetDisksOperationLockArgs) ToGetDisksOperationLockOutput() GetDisksOperationLockOutput

func (GetDisksOperationLockArgs) ToGetDisksOperationLockOutputWithContext

func (i GetDisksOperationLockArgs) ToGetDisksOperationLockOutputWithContext(ctx context.Context) GetDisksOperationLockOutput

type GetDisksOperationLockArray

type GetDisksOperationLockArray []GetDisksOperationLockInput

func (GetDisksOperationLockArray) ElementType

func (GetDisksOperationLockArray) ElementType() reflect.Type

func (GetDisksOperationLockArray) ToGetDisksOperationLockArrayOutput

func (i GetDisksOperationLockArray) ToGetDisksOperationLockArrayOutput() GetDisksOperationLockArrayOutput

func (GetDisksOperationLockArray) ToGetDisksOperationLockArrayOutputWithContext

func (i GetDisksOperationLockArray) ToGetDisksOperationLockArrayOutputWithContext(ctx context.Context) GetDisksOperationLockArrayOutput

type GetDisksOperationLockArrayInput

type GetDisksOperationLockArrayInput interface {
	pulumi.Input

	ToGetDisksOperationLockArrayOutput() GetDisksOperationLockArrayOutput
	ToGetDisksOperationLockArrayOutputWithContext(context.Context) GetDisksOperationLockArrayOutput
}

GetDisksOperationLockArrayInput is an input type that accepts GetDisksOperationLockArray and GetDisksOperationLockArrayOutput values. You can construct a concrete instance of `GetDisksOperationLockArrayInput` via:

GetDisksOperationLockArray{ GetDisksOperationLockArgs{...} }

type GetDisksOperationLockArrayOutput

type GetDisksOperationLockArrayOutput struct{ *pulumi.OutputState }

func (GetDisksOperationLockArrayOutput) ElementType

func (GetDisksOperationLockArrayOutput) Index

func (GetDisksOperationLockArrayOutput) ToGetDisksOperationLockArrayOutput

func (o GetDisksOperationLockArrayOutput) ToGetDisksOperationLockArrayOutput() GetDisksOperationLockArrayOutput

func (GetDisksOperationLockArrayOutput) ToGetDisksOperationLockArrayOutputWithContext

func (o GetDisksOperationLockArrayOutput) ToGetDisksOperationLockArrayOutputWithContext(ctx context.Context) GetDisksOperationLockArrayOutput

type GetDisksOperationLockInput

type GetDisksOperationLockInput interface {
	pulumi.Input

	ToGetDisksOperationLockOutput() GetDisksOperationLockOutput
	ToGetDisksOperationLockOutputWithContext(context.Context) GetDisksOperationLockOutput
}

GetDisksOperationLockInput is an input type that accepts GetDisksOperationLockArgs and GetDisksOperationLockOutput values. You can construct a concrete instance of `GetDisksOperationLockInput` via:

GetDisksOperationLockArgs{...}

type GetDisksOperationLockOutput

type GetDisksOperationLockOutput struct{ *pulumi.OutputState }

func (GetDisksOperationLockOutput) ElementType

func (GetDisksOperationLockOutput) LockReason

func (GetDisksOperationLockOutput) ToGetDisksOperationLockOutput

func (o GetDisksOperationLockOutput) ToGetDisksOperationLockOutput() GetDisksOperationLockOutput

func (GetDisksOperationLockOutput) ToGetDisksOperationLockOutputWithContext

func (o GetDisksOperationLockOutput) ToGetDisksOperationLockOutputWithContext(ctx context.Context) GetDisksOperationLockOutput

type GetDisksOutputArgs

type GetDisksOutputArgs struct {
	AdditionalAttributes pulumi.StringArrayInput `pulumi:"additionalAttributes"`
	AutoSnapshotPolicyId pulumi.StringPtrInput   `pulumi:"autoSnapshotPolicyId"`
	// Availability zone of the disk.
	//
	// Deprecated: Field 'availability_zone' has been deprecated from provider version 1.122.0. New field 'zone_id' instead
	AvailabilityZone pulumi.StringPtrInput `pulumi:"availabilityZone"`
	// Disk category. Possible values: `cloud` (basic cloud disk), `cloudEfficiency` (ultra cloud disk), `ephemeralSsd` (local SSD cloud disk), `cloudSsd` (SSD cloud disk), and `cloudEssd` (ESSD cloud disk).
	Category                      pulumi.StringPtrInput `pulumi:"category"`
	DeleteAutoSnapshot            pulumi.BoolPtrInput   `pulumi:"deleteAutoSnapshot"`
	DeleteWithInstance            pulumi.BoolPtrInput   `pulumi:"deleteWithInstance"`
	DiskName                      pulumi.StringPtrInput `pulumi:"diskName"`
	DiskType                      pulumi.StringPtrInput `pulumi:"diskType"`
	DryRun                        pulumi.BoolPtrInput   `pulumi:"dryRun"`
	EnableAutoSnapshot            pulumi.BoolPtrInput   `pulumi:"enableAutoSnapshot"`
	EnableAutomatedSnapshotPolicy pulumi.BoolPtrInput   `pulumi:"enableAutomatedSnapshotPolicy"`
	EnableShared                  pulumi.BoolPtrInput   `pulumi:"enableShared"`
	// Indicate whether the disk is encrypted or not. Possible values: `on` and `off`.
	Encrypted pulumi.StringPtrInput `pulumi:"encrypted"`
	// A list of disks IDs.
	Ids pulumi.StringArrayInput `pulumi:"ids"`
	// Filter the results by the specified ECS instance ID.
	InstanceId pulumi.StringPtrInput `pulumi:"instanceId"`
	KmsKeyId   pulumi.StringPtrInput `pulumi:"kmsKeyId"`
	// A regex string to filter results by disk name.
	NameRegex      pulumi.StringPtrInput           `pulumi:"nameRegex"`
	OperationLocks GetDisksOperationLockArrayInput `pulumi:"operationLocks"`
	OutputFile     pulumi.StringPtrInput           `pulumi:"outputFile"`
	PageNumber     pulumi.IntPtrInput              `pulumi:"pageNumber"`
	PageSize       pulumi.IntPtrInput              `pulumi:"pageSize"`
	PaymentType    pulumi.StringPtrInput           `pulumi:"paymentType"`
	Portable       pulumi.BoolPtrInput             `pulumi:"portable"`
	// The Id of resource group which the disk belongs.
	ResourceGroupId pulumi.StringPtrInput `pulumi:"resourceGroupId"`
	// Snapshot used to create the disk. It is null if no snapshot is used to create the disk.
	SnapshotId pulumi.StringPtrInput `pulumi:"snapshotId"`
	// Current status. Possible values: `In_use`, `Available`, `Attaching`, `Detaching`, `Creating` and `ReIniting`.
	Status pulumi.StringPtrInput `pulumi:"status"`
	// A map of tags assigned to the disks. It must be in the format:
	// “`go
	// package main
	//
	// import (
	// 	"github.com/pulumi/pulumi-alicloud/sdk/go/alicloud/ecs"
	// 	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
	// 	"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"
	// )
	//
	// func main() {
	// 	pulumi.Run(func(ctx *pulumi.Context) error {
	// 		_, err := ecs.GetDisks(ctx, &ecs.GetDisksArgs{
	// 			Tags: map[string]interface{}{
	// 				"tagKey1": "tagValue1",
	// 				"tagKey2": "tagValue2",
	// 			},
	// 		}, nil)
	// 		if err != nil {
	// 			return err
	// 		}
	// 		return nil
	// 	})
	// }
	// “`
	Tags pulumi.MapInput `pulumi:"tags"`
	// Disk type. Possible values: `system` and `data`.
	//
	// Deprecated: Field 'type' has been deprecated from provider version 1.122.0. New field 'disk_type' instead.
	Type   pulumi.StringPtrInput `pulumi:"type"`
	ZoneId pulumi.StringPtrInput `pulumi:"zoneId"`
}

A collection of arguments for invoking getDisks.

func (GetDisksOutputArgs) ElementType

func (GetDisksOutputArgs) ElementType() reflect.Type

type GetDisksResult

type GetDisksResult struct {
	AdditionalAttributes []string `pulumi:"additionalAttributes"`
	AutoSnapshotPolicyId *string  `pulumi:"autoSnapshotPolicyId"`
	// Availability zone of the disk.
	//
	// Deprecated: Field 'availability_zone' has been deprecated from provider version 1.122.0. New field 'zone_id' instead
	AvailabilityZone *string `pulumi:"availabilityZone"`
	// Disk category. Possible values: `cloud` (basic cloud disk), `cloudEfficiency` (ultra cloud disk), `ephemeralSsd` (local SSD cloud disk), `cloudSsd` (SSD cloud disk), and `cloudEssd` (ESSD cloud disk).
	Category           *string `pulumi:"category"`
	DeleteAutoSnapshot *bool   `pulumi:"deleteAutoSnapshot"`
	DeleteWithInstance *bool   `pulumi:"deleteWithInstance"`
	DiskName           *string `pulumi:"diskName"`
	DiskType           *string `pulumi:"diskType"`
	// A list of disks. Each element contains the following attributes:
	Disks                         []GetDisksDisk `pulumi:"disks"`
	DryRun                        *bool          `pulumi:"dryRun"`
	EnableAutoSnapshot            *bool          `pulumi:"enableAutoSnapshot"`
	EnableAutomatedSnapshotPolicy *bool          `pulumi:"enableAutomatedSnapshotPolicy"`
	EnableShared                  *bool          `pulumi:"enableShared"`
	// Indicate whether the disk is encrypted or not. Possible values: `on` and `off`.
	Encrypted *string `pulumi:"encrypted"`
	// The provider-assigned unique ID for this managed resource.
	Id  string   `pulumi:"id"`
	Ids []string `pulumi:"ids"`
	// ID of the related instance. It is `null` unless the `status` is `In_use`.
	InstanceId     *string                 `pulumi:"instanceId"`
	KmsKeyId       *string                 `pulumi:"kmsKeyId"`
	NameRegex      *string                 `pulumi:"nameRegex"`
	Names          []string                `pulumi:"names"`
	OperationLocks []GetDisksOperationLock `pulumi:"operationLocks"`
	OutputFile     *string                 `pulumi:"outputFile"`
	PageNumber     *int                    `pulumi:"pageNumber"`
	PageSize       *int                    `pulumi:"pageSize"`
	PaymentType    *string                 `pulumi:"paymentType"`
	Portable       *bool                   `pulumi:"portable"`
	// The Id of resource group.
	ResourceGroupId *string `pulumi:"resourceGroupId"`
	// Snapshot used to create the disk. It is null if no snapshot is used to create the disk.
	SnapshotId *string `pulumi:"snapshotId"`
	// Current status. Possible values: `In_use`, `Available`, `Attaching`, `Detaching`, `Creating` and `ReIniting`.
	Status *string `pulumi:"status"`
	// A map of tags assigned to the disk.
	Tags       map[string]interface{} `pulumi:"tags"`
	TotalCount int                    `pulumi:"totalCount"`
	// Disk type. Possible values: `system` and `data`.
	//
	// Deprecated: Field 'type' has been deprecated from provider version 1.122.0. New field 'disk_type' instead.
	Type   *string `pulumi:"type"`
	ZoneId *string `pulumi:"zoneId"`
}

A collection of values returned by getDisks.

func GetDisks

func GetDisks(ctx *pulumi.Context, args *GetDisksArgs, opts ...pulumi.InvokeOption) (*GetDisksResult, error)

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/go/alicloud/ecs"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		disksDs, err := ecs.GetDisks(ctx, &ecs.GetDisksArgs{
			NameRegex: pulumi.StringRef("sample_disk"),
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("firstDiskId", disksDs.Disks[0].Id)
		return nil
	})
}

```

type GetDisksResultOutput

type GetDisksResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getDisks.

func (GetDisksResultOutput) AdditionalAttributes

func (o GetDisksResultOutput) AdditionalAttributes() pulumi.StringArrayOutput

func (GetDisksResultOutput) AutoSnapshotPolicyId

func (o GetDisksResultOutput) AutoSnapshotPolicyId() pulumi.StringPtrOutput

func (GetDisksResultOutput) AvailabilityZone deprecated

func (o GetDisksResultOutput) AvailabilityZone() pulumi.StringPtrOutput

Availability zone of the disk.

Deprecated: Field 'availability_zone' has been deprecated from provider version 1.122.0. New field 'zone_id' instead

func (GetDisksResultOutput) Category

Disk category. Possible values: `cloud` (basic cloud disk), `cloudEfficiency` (ultra cloud disk), `ephemeralSsd` (local SSD cloud disk), `cloudSsd` (SSD cloud disk), and `cloudEssd` (ESSD cloud disk).

func (GetDisksResultOutput) DeleteAutoSnapshot

func (o GetDisksResultOutput) DeleteAutoSnapshot() pulumi.BoolPtrOutput

func (GetDisksResultOutput) DeleteWithInstance

func (o GetDisksResultOutput) DeleteWithInstance() pulumi.BoolPtrOutput

func (GetDisksResultOutput) DiskName

func (GetDisksResultOutput) DiskType

func (GetDisksResultOutput) Disks

A list of disks. Each element contains the following attributes:

func (GetDisksResultOutput) DryRun

func (GetDisksResultOutput) ElementType

func (GetDisksResultOutput) ElementType() reflect.Type

func (GetDisksResultOutput) EnableAutoSnapshot

func (o GetDisksResultOutput) EnableAutoSnapshot() pulumi.BoolPtrOutput

func (GetDisksResultOutput) EnableAutomatedSnapshotPolicy

func (o GetDisksResultOutput) EnableAutomatedSnapshotPolicy() pulumi.BoolPtrOutput

func (GetDisksResultOutput) EnableShared

func (o GetDisksResultOutput) EnableShared() pulumi.BoolPtrOutput

func (GetDisksResultOutput) Encrypted

Indicate whether the disk is encrypted or not. Possible values: `on` and `off`.

func (GetDisksResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetDisksResultOutput) Ids

func (GetDisksResultOutput) InstanceId

ID of the related instance. It is `null` unless the `status` is `In_use`.

func (GetDisksResultOutput) KmsKeyId

func (GetDisksResultOutput) NameRegex

func (GetDisksResultOutput) Names

func (GetDisksResultOutput) OperationLocks

func (GetDisksResultOutput) OutputFile

func (GetDisksResultOutput) PageNumber

func (o GetDisksResultOutput) PageNumber() pulumi.IntPtrOutput

func (GetDisksResultOutput) PageSize

func (GetDisksResultOutput) PaymentType

func (GetDisksResultOutput) Portable

func (GetDisksResultOutput) ResourceGroupId

func (o GetDisksResultOutput) ResourceGroupId() pulumi.StringPtrOutput

The Id of resource group.

func (GetDisksResultOutput) SnapshotId

Snapshot used to create the disk. It is null if no snapshot is used to create the disk.

func (GetDisksResultOutput) Status

Current status. Possible values: `In_use`, `Available`, `Attaching`, `Detaching`, `Creating` and `ReIniting`.

func (GetDisksResultOutput) Tags

A map of tags assigned to the disk.

func (GetDisksResultOutput) ToGetDisksResultOutput

func (o GetDisksResultOutput) ToGetDisksResultOutput() GetDisksResultOutput

func (GetDisksResultOutput) ToGetDisksResultOutputWithContext

func (o GetDisksResultOutput) ToGetDisksResultOutputWithContext(ctx context.Context) GetDisksResultOutput

func (GetDisksResultOutput) TotalCount

func (o GetDisksResultOutput) TotalCount() pulumi.IntOutput

func (GetDisksResultOutput) Type deprecated

Disk type. Possible values: `system` and `data`.

Deprecated: Field 'type' has been deprecated from provider version 1.122.0. New field 'disk_type' instead.

func (GetDisksResultOutput) ZoneId

type GetEcsDedicatedHostClustersArgs

type GetEcsDedicatedHostClustersArgs struct {
	// The IDs of dedicated host clusters.
	DedicatedHostClusterIds []string `pulumi:"dedicatedHostClusterIds"`
	// The name of the dedicated host cluster.
	DedicatedHostClusterName *string `pulumi:"dedicatedHostClusterName"`
	// A list of Dedicated Host Cluster IDs.
	Ids []string `pulumi:"ids"`
	// A regex string to filter results by Dedicated Host Cluster name.
	NameRegex  *string `pulumi:"nameRegex"`
	OutputFile *string `pulumi:"outputFile"`
	// A mapping of tags to assign to the resource.
	Tags map[string]interface{} `pulumi:"tags"`
	// The zone ID of the dedicated host cluster.
	ZoneId *string `pulumi:"zoneId"`
}

A collection of arguments for invoking getEcsDedicatedHostClusters.

type GetEcsDedicatedHostClustersCluster

type GetEcsDedicatedHostClustersCluster struct {
	// The capacity of the dedicated host cluster.
	DedicatedHostClusterCapacities []GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacity `pulumi:"dedicatedHostClusterCapacities"`
	// The ID of the dedicated host cluster.
	DedicatedHostClusterId string `pulumi:"dedicatedHostClusterId"`
	// The name of the dedicated host cluster.
	DedicatedHostClusterName string `pulumi:"dedicatedHostClusterName"`
	// The IDs of dedicated hosts in the dedicated host cluster.
	DedicatedHostIds []string `pulumi:"dedicatedHostIds"`
	// The description of the dedicated host cluster.
	Description string `pulumi:"description"`
	// The ID of the Dedicated Host Cluster.
	Id string `pulumi:"id"`
	// The ID of the resource group to which the dedicated host cluster belongs.
	ResourceGroupId string `pulumi:"resourceGroupId"`
	// A mapping of tags to assign to the resource.
	Tags map[string]interface{} `pulumi:"tags"`
	// The zone ID of the dedicated host cluster.
	ZoneId string `pulumi:"zoneId"`
}

type GetEcsDedicatedHostClustersClusterArgs

type GetEcsDedicatedHostClustersClusterArgs struct {
	// The capacity of the dedicated host cluster.
	DedicatedHostClusterCapacities GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityArrayInput `pulumi:"dedicatedHostClusterCapacities"`
	// The ID of the dedicated host cluster.
	DedicatedHostClusterId pulumi.StringInput `pulumi:"dedicatedHostClusterId"`
	// The name of the dedicated host cluster.
	DedicatedHostClusterName pulumi.StringInput `pulumi:"dedicatedHostClusterName"`
	// The IDs of dedicated hosts in the dedicated host cluster.
	DedicatedHostIds pulumi.StringArrayInput `pulumi:"dedicatedHostIds"`
	// The description of the dedicated host cluster.
	Description pulumi.StringInput `pulumi:"description"`
	// The ID of the Dedicated Host Cluster.
	Id pulumi.StringInput `pulumi:"id"`
	// The ID of the resource group to which the dedicated host cluster belongs.
	ResourceGroupId pulumi.StringInput `pulumi:"resourceGroupId"`
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapInput `pulumi:"tags"`
	// The zone ID of the dedicated host cluster.
	ZoneId pulumi.StringInput `pulumi:"zoneId"`
}

func (GetEcsDedicatedHostClustersClusterArgs) ElementType

func (GetEcsDedicatedHostClustersClusterArgs) ToGetEcsDedicatedHostClustersClusterOutput

func (i GetEcsDedicatedHostClustersClusterArgs) ToGetEcsDedicatedHostClustersClusterOutput() GetEcsDedicatedHostClustersClusterOutput

func (GetEcsDedicatedHostClustersClusterArgs) ToGetEcsDedicatedHostClustersClusterOutputWithContext

func (i GetEcsDedicatedHostClustersClusterArgs) ToGetEcsDedicatedHostClustersClusterOutputWithContext(ctx context.Context) GetEcsDedicatedHostClustersClusterOutput

type GetEcsDedicatedHostClustersClusterArray

type GetEcsDedicatedHostClustersClusterArray []GetEcsDedicatedHostClustersClusterInput

func (GetEcsDedicatedHostClustersClusterArray) ElementType

func (GetEcsDedicatedHostClustersClusterArray) ToGetEcsDedicatedHostClustersClusterArrayOutput

func (i GetEcsDedicatedHostClustersClusterArray) ToGetEcsDedicatedHostClustersClusterArrayOutput() GetEcsDedicatedHostClustersClusterArrayOutput

func (GetEcsDedicatedHostClustersClusterArray) ToGetEcsDedicatedHostClustersClusterArrayOutputWithContext

func (i GetEcsDedicatedHostClustersClusterArray) ToGetEcsDedicatedHostClustersClusterArrayOutputWithContext(ctx context.Context) GetEcsDedicatedHostClustersClusterArrayOutput

type GetEcsDedicatedHostClustersClusterArrayInput

type GetEcsDedicatedHostClustersClusterArrayInput interface {
	pulumi.Input

	ToGetEcsDedicatedHostClustersClusterArrayOutput() GetEcsDedicatedHostClustersClusterArrayOutput
	ToGetEcsDedicatedHostClustersClusterArrayOutputWithContext(context.Context) GetEcsDedicatedHostClustersClusterArrayOutput
}

GetEcsDedicatedHostClustersClusterArrayInput is an input type that accepts GetEcsDedicatedHostClustersClusterArray and GetEcsDedicatedHostClustersClusterArrayOutput values. You can construct a concrete instance of `GetEcsDedicatedHostClustersClusterArrayInput` via:

GetEcsDedicatedHostClustersClusterArray{ GetEcsDedicatedHostClustersClusterArgs{...} }

type GetEcsDedicatedHostClustersClusterArrayOutput

type GetEcsDedicatedHostClustersClusterArrayOutput struct{ *pulumi.OutputState }

func (GetEcsDedicatedHostClustersClusterArrayOutput) ElementType

func (GetEcsDedicatedHostClustersClusterArrayOutput) Index

func (GetEcsDedicatedHostClustersClusterArrayOutput) ToGetEcsDedicatedHostClustersClusterArrayOutput

func (o GetEcsDedicatedHostClustersClusterArrayOutput) ToGetEcsDedicatedHostClustersClusterArrayOutput() GetEcsDedicatedHostClustersClusterArrayOutput

func (GetEcsDedicatedHostClustersClusterArrayOutput) ToGetEcsDedicatedHostClustersClusterArrayOutputWithContext

func (o GetEcsDedicatedHostClustersClusterArrayOutput) ToGetEcsDedicatedHostClustersClusterArrayOutputWithContext(ctx context.Context) GetEcsDedicatedHostClustersClusterArrayOutput

type GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacity

type GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacity struct {
	// The available memory size. Unit: `GiB`.
	AvailableMemory int `pulumi:"availableMemory"`
	// The number of available vCPUs.
	AvailableVcpus int `pulumi:"availableVcpus"`
	// The local storage.
	LocalStorageCapacities []GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityLocalStorageCapacity `pulumi:"localStorageCapacities"`
	// The total memory size. Unit: `GiB`.
	TotalMemory int `pulumi:"totalMemory"`
	// The total number of vCPUs.
	TotalVcpus int `pulumi:"totalVcpus"`
}

type GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityArgs

type GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityArgs struct {
	// The available memory size. Unit: `GiB`.
	AvailableMemory pulumi.IntInput `pulumi:"availableMemory"`
	// The number of available vCPUs.
	AvailableVcpus pulumi.IntInput `pulumi:"availableVcpus"`
	// The local storage.
	LocalStorageCapacities GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityLocalStorageCapacityArrayInput `pulumi:"localStorageCapacities"`
	// The total memory size. Unit: `GiB`.
	TotalMemory pulumi.IntInput `pulumi:"totalMemory"`
	// The total number of vCPUs.
	TotalVcpus pulumi.IntInput `pulumi:"totalVcpus"`
}

func (GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityArgs) ElementType

func (GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityArgs) ToGetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityOutput

func (GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityArgs) ToGetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityOutputWithContext

func (i GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityArgs) ToGetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityOutputWithContext(ctx context.Context) GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityOutput

type GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityArray

type GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityArray []GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityInput

func (GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityArray) ElementType

func (GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityArray) ToGetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityArrayOutput

func (GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityArray) ToGetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityArrayOutputWithContext

func (i GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityArray) ToGetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityArrayOutputWithContext(ctx context.Context) GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityArrayOutput

type GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityArrayInput

type GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityArrayInput interface {
	pulumi.Input

	ToGetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityArrayOutput() GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityArrayOutput
	ToGetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityArrayOutputWithContext(context.Context) GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityArrayOutput
}

GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityArrayInput is an input type that accepts GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityArray and GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityArrayOutput values. You can construct a concrete instance of `GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityArrayInput` via:

GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityArray{ GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityArgs{...} }

type GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityArrayOutput

type GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityArrayOutput struct{ *pulumi.OutputState }

func (GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityArrayOutput) ElementType

func (GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityArrayOutput) ToGetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityArrayOutput

func (GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityArrayOutput) ToGetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityArrayOutputWithContext

type GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityInput

type GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityInput interface {
	pulumi.Input

	ToGetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityOutput() GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityOutput
	ToGetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityOutputWithContext(context.Context) GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityOutput
}

GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityInput is an input type that accepts GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityArgs and GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityOutput values. You can construct a concrete instance of `GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityInput` via:

GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityArgs{...}

type GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityLocalStorageCapacity

type GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityLocalStorageCapacity struct {
	// The available capacity of the local disk. Unit: `GiB`.
	AvailableDisk int `pulumi:"availableDisk"`
	// The category of the data disk. Valid values:`cloud`, `cloudEfficiency`, `cloudSsd`, `ephemeralSsd`, `cloudEssd`.
	DataDiskCategory string `pulumi:"dataDiskCategory"`
	// The total capacity of the local disk. Unit: `GiB`.
	TotalDisk int `pulumi:"totalDisk"`
}

type GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityLocalStorageCapacityArgs

type GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityLocalStorageCapacityArgs struct {
	// The available capacity of the local disk. Unit: `GiB`.
	AvailableDisk pulumi.IntInput `pulumi:"availableDisk"`
	// The category of the data disk. Valid values:`cloud`, `cloudEfficiency`, `cloudSsd`, `ephemeralSsd`, `cloudEssd`.
	DataDiskCategory pulumi.StringInput `pulumi:"dataDiskCategory"`
	// The total capacity of the local disk. Unit: `GiB`.
	TotalDisk pulumi.IntInput `pulumi:"totalDisk"`
}

func (GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityLocalStorageCapacityArgs) ElementType

func (GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityLocalStorageCapacityArgs) ToGetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityLocalStorageCapacityOutput

func (GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityLocalStorageCapacityArgs) ToGetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityLocalStorageCapacityOutputWithContext

type GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityLocalStorageCapacityArray

type GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityLocalStorageCapacityArray []GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityLocalStorageCapacityInput

func (GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityLocalStorageCapacityArray) ElementType

func (GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityLocalStorageCapacityArray) ToGetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityLocalStorageCapacityArrayOutput

func (GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityLocalStorageCapacityArray) ToGetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityLocalStorageCapacityArrayOutputWithContext

type GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityLocalStorageCapacityArrayInput

type GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityLocalStorageCapacityArrayInput interface {
	pulumi.Input

	ToGetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityLocalStorageCapacityArrayOutput() GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityLocalStorageCapacityArrayOutput
	ToGetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityLocalStorageCapacityArrayOutputWithContext(context.Context) GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityLocalStorageCapacityArrayOutput
}

GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityLocalStorageCapacityArrayInput is an input type that accepts GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityLocalStorageCapacityArray and GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityLocalStorageCapacityArrayOutput values. You can construct a concrete instance of `GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityLocalStorageCapacityArrayInput` via:

GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityLocalStorageCapacityArray{ GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityLocalStorageCapacityArgs{...} }

type GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityLocalStorageCapacityArrayOutput

type GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityLocalStorageCapacityArrayOutput struct{ *pulumi.OutputState }

func (GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityLocalStorageCapacityArrayOutput) ElementType

func (GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityLocalStorageCapacityArrayOutput) ToGetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityLocalStorageCapacityArrayOutput

func (GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityLocalStorageCapacityArrayOutput) ToGetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityLocalStorageCapacityArrayOutputWithContext

type GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityLocalStorageCapacityInput

type GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityLocalStorageCapacityInput interface {
	pulumi.Input

	ToGetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityLocalStorageCapacityOutput() GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityLocalStorageCapacityOutput
	ToGetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityLocalStorageCapacityOutputWithContext(context.Context) GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityLocalStorageCapacityOutput
}

GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityLocalStorageCapacityInput is an input type that accepts GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityLocalStorageCapacityArgs and GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityLocalStorageCapacityOutput values. You can construct a concrete instance of `GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityLocalStorageCapacityInput` via:

GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityLocalStorageCapacityArgs{...}

type GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityLocalStorageCapacityOutput

type GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityLocalStorageCapacityOutput struct{ *pulumi.OutputState }

func (GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityLocalStorageCapacityOutput) AvailableDisk

The available capacity of the local disk. Unit: `GiB`.

func (GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityLocalStorageCapacityOutput) DataDiskCategory

The category of the data disk. Valid values:`cloud`, `cloudEfficiency`, `cloudSsd`, `ephemeralSsd`, `cloudEssd`.

func (GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityLocalStorageCapacityOutput) ElementType

func (GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityLocalStorageCapacityOutput) ToGetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityLocalStorageCapacityOutput

func (GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityLocalStorageCapacityOutput) ToGetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityLocalStorageCapacityOutputWithContext

func (GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityLocalStorageCapacityOutput) TotalDisk

The total capacity of the local disk. Unit: `GiB`.

type GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityOutput

type GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityOutput struct{ *pulumi.OutputState }

func (GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityOutput) AvailableMemory

The available memory size. Unit: `GiB`.

func (GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityOutput) AvailableVcpus

The number of available vCPUs.

func (GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityOutput) ElementType

func (GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityOutput) LocalStorageCapacities

The local storage.

func (GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityOutput) ToGetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityOutput

func (GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityOutput) ToGetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityOutputWithContext

func (o GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityOutput) ToGetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityOutputWithContext(ctx context.Context) GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityOutput

func (GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityOutput) TotalMemory

The total memory size. Unit: `GiB`.

func (GetEcsDedicatedHostClustersClusterDedicatedHostClusterCapacityOutput) TotalVcpus

The total number of vCPUs.

type GetEcsDedicatedHostClustersClusterInput

type GetEcsDedicatedHostClustersClusterInput interface {
	pulumi.Input

	ToGetEcsDedicatedHostClustersClusterOutput() GetEcsDedicatedHostClustersClusterOutput
	ToGetEcsDedicatedHostClustersClusterOutputWithContext(context.Context) GetEcsDedicatedHostClustersClusterOutput
}

GetEcsDedicatedHostClustersClusterInput is an input type that accepts GetEcsDedicatedHostClustersClusterArgs and GetEcsDedicatedHostClustersClusterOutput values. You can construct a concrete instance of `GetEcsDedicatedHostClustersClusterInput` via:

GetEcsDedicatedHostClustersClusterArgs{...}

type GetEcsDedicatedHostClustersClusterOutput

type GetEcsDedicatedHostClustersClusterOutput struct{ *pulumi.OutputState }

func (GetEcsDedicatedHostClustersClusterOutput) DedicatedHostClusterCapacities

The capacity of the dedicated host cluster.

func (GetEcsDedicatedHostClustersClusterOutput) DedicatedHostClusterId

The ID of the dedicated host cluster.

func (GetEcsDedicatedHostClustersClusterOutput) DedicatedHostClusterName

func (o GetEcsDedicatedHostClustersClusterOutput) DedicatedHostClusterName() pulumi.StringOutput

The name of the dedicated host cluster.

func (GetEcsDedicatedHostClustersClusterOutput) DedicatedHostIds

The IDs of dedicated hosts in the dedicated host cluster.

func (GetEcsDedicatedHostClustersClusterOutput) Description

The description of the dedicated host cluster.

func (GetEcsDedicatedHostClustersClusterOutput) ElementType

func (GetEcsDedicatedHostClustersClusterOutput) Id

The ID of the Dedicated Host Cluster.

func (GetEcsDedicatedHostClustersClusterOutput) ResourceGroupId

The ID of the resource group to which the dedicated host cluster belongs.

func (GetEcsDedicatedHostClustersClusterOutput) Tags

A mapping of tags to assign to the resource.

func (GetEcsDedicatedHostClustersClusterOutput) ToGetEcsDedicatedHostClustersClusterOutput

func (o GetEcsDedicatedHostClustersClusterOutput) ToGetEcsDedicatedHostClustersClusterOutput() GetEcsDedicatedHostClustersClusterOutput

func (GetEcsDedicatedHostClustersClusterOutput) ToGetEcsDedicatedHostClustersClusterOutputWithContext

func (o GetEcsDedicatedHostClustersClusterOutput) ToGetEcsDedicatedHostClustersClusterOutputWithContext(ctx context.Context) GetEcsDedicatedHostClustersClusterOutput

func (GetEcsDedicatedHostClustersClusterOutput) ZoneId

The zone ID of the dedicated host cluster.

type GetEcsDedicatedHostClustersOutputArgs

type GetEcsDedicatedHostClustersOutputArgs struct {
	// The IDs of dedicated host clusters.
	DedicatedHostClusterIds pulumi.StringArrayInput `pulumi:"dedicatedHostClusterIds"`
	// The name of the dedicated host cluster.
	DedicatedHostClusterName pulumi.StringPtrInput `pulumi:"dedicatedHostClusterName"`
	// A list of Dedicated Host Cluster IDs.
	Ids pulumi.StringArrayInput `pulumi:"ids"`
	// A regex string to filter results by Dedicated Host Cluster name.
	NameRegex  pulumi.StringPtrInput `pulumi:"nameRegex"`
	OutputFile pulumi.StringPtrInput `pulumi:"outputFile"`
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapInput `pulumi:"tags"`
	// The zone ID of the dedicated host cluster.
	ZoneId pulumi.StringPtrInput `pulumi:"zoneId"`
}

A collection of arguments for invoking getEcsDedicatedHostClusters.

func (GetEcsDedicatedHostClustersOutputArgs) ElementType

type GetEcsDedicatedHostClustersResult

type GetEcsDedicatedHostClustersResult struct {
	Clusters                 []GetEcsDedicatedHostClustersCluster `pulumi:"clusters"`
	DedicatedHostClusterIds  []string                             `pulumi:"dedicatedHostClusterIds"`
	DedicatedHostClusterName *string                              `pulumi:"dedicatedHostClusterName"`
	// The provider-assigned unique ID for this managed resource.
	Id         string                 `pulumi:"id"`
	Ids        []string               `pulumi:"ids"`
	NameRegex  *string                `pulumi:"nameRegex"`
	Names      []string               `pulumi:"names"`
	OutputFile *string                `pulumi:"outputFile"`
	Tags       map[string]interface{} `pulumi:"tags"`
	ZoneId     *string                `pulumi:"zoneId"`
}

A collection of values returned by getEcsDedicatedHostClusters.

func GetEcsDedicatedHostClusters

func GetEcsDedicatedHostClusters(ctx *pulumi.Context, args *GetEcsDedicatedHostClustersArgs, opts ...pulumi.InvokeOption) (*GetEcsDedicatedHostClustersResult, error)

This data source provides the Ecs Dedicated Host Clusters of the current Alibaba Cloud user.

> **NOTE:** Available in v1.146.0+.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/go/alicloud/ecs"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		ids, err := ecs.GetEcsDedicatedHostClusters(ctx, &ecs.GetEcsDedicatedHostClustersArgs{
			Ids: []string{
				"example_id",
			},
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("ecsDedicatedHostClusterId1", ids.Clusters[0].Id)
		nameRegex, err := ecs.GetEcsDedicatedHostClusters(ctx, &ecs.GetEcsDedicatedHostClustersArgs{
			NameRegex: pulumi.StringRef("^my-DedicatedHostCluster"),
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("ecsDedicatedHostClusterId2", nameRegex.Clusters[0].Id)
		zoneId, err := ecs.GetEcsDedicatedHostClusters(ctx, &ecs.GetEcsDedicatedHostClustersArgs{
			ZoneId: pulumi.StringRef("example_value"),
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("ecsDedicatedHostClusterId3", zoneId.Clusters[0].Id)
		clusterName, err := ecs.GetEcsDedicatedHostClusters(ctx, &ecs.GetEcsDedicatedHostClustersArgs{
			DedicatedHostClusterName: pulumi.StringRef("example_value"),
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("ecsDedicatedHostClusterId4", clusterName.Clusters[0].Id)
		clusterIds, err := ecs.GetEcsDedicatedHostClusters(ctx, &ecs.GetEcsDedicatedHostClustersArgs{
			DedicatedHostClusterIds: []string{
				"example_id",
			},
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("ecsDedicatedHostClusterId5", clusterIds.Clusters[0].Id)
		return nil
	})
}

```

type GetEcsDedicatedHostClustersResultOutput

type GetEcsDedicatedHostClustersResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getEcsDedicatedHostClusters.

func (GetEcsDedicatedHostClustersResultOutput) Clusters

func (GetEcsDedicatedHostClustersResultOutput) DedicatedHostClusterIds

func (GetEcsDedicatedHostClustersResultOutput) DedicatedHostClusterName

func (o GetEcsDedicatedHostClustersResultOutput) DedicatedHostClusterName() pulumi.StringPtrOutput

func (GetEcsDedicatedHostClustersResultOutput) ElementType

func (GetEcsDedicatedHostClustersResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetEcsDedicatedHostClustersResultOutput) Ids

func (GetEcsDedicatedHostClustersResultOutput) NameRegex

func (GetEcsDedicatedHostClustersResultOutput) Names

func (GetEcsDedicatedHostClustersResultOutput) OutputFile

func (GetEcsDedicatedHostClustersResultOutput) Tags

func (GetEcsDedicatedHostClustersResultOutput) ToGetEcsDedicatedHostClustersResultOutput

func (o GetEcsDedicatedHostClustersResultOutput) ToGetEcsDedicatedHostClustersResultOutput() GetEcsDedicatedHostClustersResultOutput

func (GetEcsDedicatedHostClustersResultOutput) ToGetEcsDedicatedHostClustersResultOutputWithContext

func (o GetEcsDedicatedHostClustersResultOutput) ToGetEcsDedicatedHostClustersResultOutputWithContext(ctx context.Context) GetEcsDedicatedHostClustersResultOutput

func (GetEcsDedicatedHostClustersResultOutput) ZoneId

type GetEcsDeploymentSetsArgs

type GetEcsDeploymentSetsArgs struct {
	// The name of the deployment set.
	DeploymentSetName *string `pulumi:"deploymentSetName"`
	// A list of Deployment Set IDs.
	Ids []string `pulumi:"ids"`
	// A regex string to filter results by Deployment Set name.
	NameRegex  *string `pulumi:"nameRegex"`
	OutputFile *string `pulumi:"outputFile"`
	// The deployment strategy.
	Strategy *string `pulumi:"strategy"`
}

A collection of arguments for invoking getEcsDeploymentSets.

type GetEcsDeploymentSetsOutputArgs

type GetEcsDeploymentSetsOutputArgs struct {
	// The name of the deployment set.
	DeploymentSetName pulumi.StringPtrInput `pulumi:"deploymentSetName"`
	// A list of Deployment Set IDs.
	Ids pulumi.StringArrayInput `pulumi:"ids"`
	// A regex string to filter results by Deployment Set name.
	NameRegex  pulumi.StringPtrInput `pulumi:"nameRegex"`
	OutputFile pulumi.StringPtrInput `pulumi:"outputFile"`
	// The deployment strategy.
	Strategy pulumi.StringPtrInput `pulumi:"strategy"`
}

A collection of arguments for invoking getEcsDeploymentSets.

func (GetEcsDeploymentSetsOutputArgs) ElementType

type GetEcsDeploymentSetsResult

type GetEcsDeploymentSetsResult struct {
	DeploymentSetName *string `pulumi:"deploymentSetName"`
	// The provider-assigned unique ID for this managed resource.
	Id         string                    `pulumi:"id"`
	Ids        []string                  `pulumi:"ids"`
	NameRegex  *string                   `pulumi:"nameRegex"`
	Names      []string                  `pulumi:"names"`
	OutputFile *string                   `pulumi:"outputFile"`
	Sets       []GetEcsDeploymentSetsSet `pulumi:"sets"`
	Strategy   *string                   `pulumi:"strategy"`
}

A collection of values returned by getEcsDeploymentSets.

func GetEcsDeploymentSets

func GetEcsDeploymentSets(ctx *pulumi.Context, args *GetEcsDeploymentSetsArgs, opts ...pulumi.InvokeOption) (*GetEcsDeploymentSetsResult, error)

This data source provides the Ecs Deployment Sets of the current Alibaba Cloud user.

> **NOTE:** Available in v1.140.0+.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/go/alicloud/ecs"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		ids, err := ecs.GetEcsDeploymentSets(ctx, &ecs.GetEcsDeploymentSetsArgs{
			Ids: []string{
				"example_id",
			},
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("ecsDeploymentSetId1", ids.Sets[0].Id)
		nameRegex, err := ecs.GetEcsDeploymentSets(ctx, &ecs.GetEcsDeploymentSetsArgs{
			NameRegex: pulumi.StringRef("^my-DeploymentSet"),
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("ecsDeploymentSetId2", nameRegex.Sets[0].Id)
		return nil
	})
}

```

type GetEcsDeploymentSetsResultOutput

type GetEcsDeploymentSetsResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getEcsDeploymentSets.

func (GetEcsDeploymentSetsResultOutput) DeploymentSetName

func (GetEcsDeploymentSetsResultOutput) ElementType

func (GetEcsDeploymentSetsResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetEcsDeploymentSetsResultOutput) Ids

func (GetEcsDeploymentSetsResultOutput) NameRegex

func (GetEcsDeploymentSetsResultOutput) Names

func (GetEcsDeploymentSetsResultOutput) OutputFile

func (GetEcsDeploymentSetsResultOutput) Sets

func (GetEcsDeploymentSetsResultOutput) Strategy

func (GetEcsDeploymentSetsResultOutput) ToGetEcsDeploymentSetsResultOutput

func (o GetEcsDeploymentSetsResultOutput) ToGetEcsDeploymentSetsResultOutput() GetEcsDeploymentSetsResultOutput

func (GetEcsDeploymentSetsResultOutput) ToGetEcsDeploymentSetsResultOutputWithContext

func (o GetEcsDeploymentSetsResultOutput) ToGetEcsDeploymentSetsResultOutputWithContext(ctx context.Context) GetEcsDeploymentSetsResultOutput

type GetEcsDeploymentSetsSet

type GetEcsDeploymentSetsSet struct {
	// The time when the deployment set was created.
	CreateTime string `pulumi:"createTime"`
	// The ID of the Deployment Set.
	DeploymentSetId string `pulumi:"deploymentSetId"`
	// The name of the deployment set.
	DeploymentSetName string `pulumi:"deploymentSetName"`
	// The description of the deployment set.
	Description string `pulumi:"description"`
	// The deployment domain.
	Domain string `pulumi:"domain"`
	// The deployment granularity.
	Granularity string `pulumi:"granularity"`
	// The ID of the Deployment Set.
	Id string `pulumi:"id"`
	// The number of instances in the deployment set.
	InstanceAmount int `pulumi:"instanceAmount"`
	// The IDs of the instances in the deployment set.
	InstanceIds []string `pulumi:"instanceIds"`
	// The deployment strategy.
	Strategy string `pulumi:"strategy"`
}

type GetEcsDeploymentSetsSetArgs

type GetEcsDeploymentSetsSetArgs struct {
	// The time when the deployment set was created.
	CreateTime pulumi.StringInput `pulumi:"createTime"`
	// The ID of the Deployment Set.
	DeploymentSetId pulumi.StringInput `pulumi:"deploymentSetId"`
	// The name of the deployment set.
	DeploymentSetName pulumi.StringInput `pulumi:"deploymentSetName"`
	// The description of the deployment set.
	Description pulumi.StringInput `pulumi:"description"`
	// The deployment domain.
	Domain pulumi.StringInput `pulumi:"domain"`
	// The deployment granularity.
	Granularity pulumi.StringInput `pulumi:"granularity"`
	// The ID of the Deployment Set.
	Id pulumi.StringInput `pulumi:"id"`
	// The number of instances in the deployment set.
	InstanceAmount pulumi.IntInput `pulumi:"instanceAmount"`
	// The IDs of the instances in the deployment set.
	InstanceIds pulumi.StringArrayInput `pulumi:"instanceIds"`
	// The deployment strategy.
	Strategy pulumi.StringInput `pulumi:"strategy"`
}

func (GetEcsDeploymentSetsSetArgs) ElementType

func (GetEcsDeploymentSetsSetArgs) ToGetEcsDeploymentSetsSetOutput

func (i GetEcsDeploymentSetsSetArgs) ToGetEcsDeploymentSetsSetOutput() GetEcsDeploymentSetsSetOutput

func (GetEcsDeploymentSetsSetArgs) ToGetEcsDeploymentSetsSetOutputWithContext

func (i GetEcsDeploymentSetsSetArgs) ToGetEcsDeploymentSetsSetOutputWithContext(ctx context.Context) GetEcsDeploymentSetsSetOutput

type GetEcsDeploymentSetsSetArray

type GetEcsDeploymentSetsSetArray []GetEcsDeploymentSetsSetInput

func (GetEcsDeploymentSetsSetArray) ElementType

func (GetEcsDeploymentSetsSetArray) ToGetEcsDeploymentSetsSetArrayOutput

func (i GetEcsDeploymentSetsSetArray) ToGetEcsDeploymentSetsSetArrayOutput() GetEcsDeploymentSetsSetArrayOutput

func (GetEcsDeploymentSetsSetArray) ToGetEcsDeploymentSetsSetArrayOutputWithContext

func (i GetEcsDeploymentSetsSetArray) ToGetEcsDeploymentSetsSetArrayOutputWithContext(ctx context.Context) GetEcsDeploymentSetsSetArrayOutput

type GetEcsDeploymentSetsSetArrayInput

type GetEcsDeploymentSetsSetArrayInput interface {
	pulumi.Input

	ToGetEcsDeploymentSetsSetArrayOutput() GetEcsDeploymentSetsSetArrayOutput
	ToGetEcsDeploymentSetsSetArrayOutputWithContext(context.Context) GetEcsDeploymentSetsSetArrayOutput
}

GetEcsDeploymentSetsSetArrayInput is an input type that accepts GetEcsDeploymentSetsSetArray and GetEcsDeploymentSetsSetArrayOutput values. You can construct a concrete instance of `GetEcsDeploymentSetsSetArrayInput` via:

GetEcsDeploymentSetsSetArray{ GetEcsDeploymentSetsSetArgs{...} }

type GetEcsDeploymentSetsSetArrayOutput

type GetEcsDeploymentSetsSetArrayOutput struct{ *pulumi.OutputState }

func (GetEcsDeploymentSetsSetArrayOutput) ElementType

func (GetEcsDeploymentSetsSetArrayOutput) Index

func (GetEcsDeploymentSetsSetArrayOutput) ToGetEcsDeploymentSetsSetArrayOutput

func (o GetEcsDeploymentSetsSetArrayOutput) ToGetEcsDeploymentSetsSetArrayOutput() GetEcsDeploymentSetsSetArrayOutput

func (GetEcsDeploymentSetsSetArrayOutput) ToGetEcsDeploymentSetsSetArrayOutputWithContext

func (o GetEcsDeploymentSetsSetArrayOutput) ToGetEcsDeploymentSetsSetArrayOutputWithContext(ctx context.Context) GetEcsDeploymentSetsSetArrayOutput

type GetEcsDeploymentSetsSetInput

type GetEcsDeploymentSetsSetInput interface {
	pulumi.Input

	ToGetEcsDeploymentSetsSetOutput() GetEcsDeploymentSetsSetOutput
	ToGetEcsDeploymentSetsSetOutputWithContext(context.Context) GetEcsDeploymentSetsSetOutput
}

GetEcsDeploymentSetsSetInput is an input type that accepts GetEcsDeploymentSetsSetArgs and GetEcsDeploymentSetsSetOutput values. You can construct a concrete instance of `GetEcsDeploymentSetsSetInput` via:

GetEcsDeploymentSetsSetArgs{...}

type GetEcsDeploymentSetsSetOutput

type GetEcsDeploymentSetsSetOutput struct{ *pulumi.OutputState }

func (GetEcsDeploymentSetsSetOutput) CreateTime

The time when the deployment set was created.

func (GetEcsDeploymentSetsSetOutput) DeploymentSetId

The ID of the Deployment Set.

func (GetEcsDeploymentSetsSetOutput) DeploymentSetName

func (o GetEcsDeploymentSetsSetOutput) DeploymentSetName() pulumi.StringOutput

The name of the deployment set.

func (GetEcsDeploymentSetsSetOutput) Description

The description of the deployment set.

func (GetEcsDeploymentSetsSetOutput) Domain

The deployment domain.

func (GetEcsDeploymentSetsSetOutput) ElementType

func (GetEcsDeploymentSetsSetOutput) Granularity

The deployment granularity.

func (GetEcsDeploymentSetsSetOutput) Id

The ID of the Deployment Set.

func (GetEcsDeploymentSetsSetOutput) InstanceAmount

func (o GetEcsDeploymentSetsSetOutput) InstanceAmount() pulumi.IntOutput

The number of instances in the deployment set.

func (GetEcsDeploymentSetsSetOutput) InstanceIds

The IDs of the instances in the deployment set.

func (GetEcsDeploymentSetsSetOutput) Strategy

The deployment strategy.

func (GetEcsDeploymentSetsSetOutput) ToGetEcsDeploymentSetsSetOutput

func (o GetEcsDeploymentSetsSetOutput) ToGetEcsDeploymentSetsSetOutput() GetEcsDeploymentSetsSetOutput

func (GetEcsDeploymentSetsSetOutput) ToGetEcsDeploymentSetsSetOutputWithContext

func (o GetEcsDeploymentSetsSetOutput) ToGetEcsDeploymentSetsSetOutputWithContext(ctx context.Context) GetEcsDeploymentSetsSetOutput

type GetEcsDisksArgs

type GetEcsDisksArgs struct {
	// Other attribute values. Currently, only the incoming value of IOPS is supported, which means to query the IOPS upper limit of the current disk.
	AdditionalAttributes []string `pulumi:"additionalAttributes"`
	// Query cloud disks based on the automatic snapshot policy ID.
	AutoSnapshotPolicyId *string `pulumi:"autoSnapshotPolicyId"`
	// Availability zone of the disk.
	//
	// Deprecated: Field 'availability_zone' has been deprecated from provider version 1.122.0. New field 'zone_id' instead
	AvailabilityZone *string `pulumi:"availabilityZone"`
	// Disk category.
	Category *string `pulumi:"category"`
	// Indicates whether the automatic snapshot is deleted when the disk is released.
	DeleteAutoSnapshot *bool `pulumi:"deleteAutoSnapshot"`
	// Indicates whether the disk is released together with the instance.
	DeleteWithInstance *bool `pulumi:"deleteWithInstance"`
	// The disk name.
	DiskName *string `pulumi:"diskName"`
	// The disk type.
	DiskType *string `pulumi:"diskType"`
	// Specifies whether to check the validity of the request without actually making the request.request Default value: false. Valid values:
	// * `true`: The validity of the request is checked but the request is not made. Check items include the required parameters, request format, service limits, and available ECS resources. If the check fails, the corresponding error message is returned. If the check succeeds, the DryRunOperation error code is returned.
	// * `false`: The validity of the request is checked. If the check succeeds, a 2xx HTTP status code is returned and the request is made.
	DryRun *bool `pulumi:"dryRun"`
	// Whether the disk implements an automatic snapshot policy.
	EnableAutoSnapshot *bool `pulumi:"enableAutoSnapshot"`
	// Whether the disk implements an automatic snapshot policy.
	EnableAutomatedSnapshotPolicy *bool `pulumi:"enableAutomatedSnapshotPolicy"`
	// Whether it is shared block storage.
	EnableShared *bool `pulumi:"enableShared"`
	// Indicate whether the disk is encrypted or not.
	Encrypted *string `pulumi:"encrypted"`
	// A list of Disk IDs.
	Ids []string `pulumi:"ids"`
	// The instance ID of the disk mount.
	InstanceId *string `pulumi:"instanceId"`
	// The kms key id.
	KmsKeyId *string `pulumi:"kmsKeyId"`
	// A regex string to filter results by Disk name.
	NameRegex      *string                    `pulumi:"nameRegex"`
	OperationLocks []GetEcsDisksOperationLock `pulumi:"operationLocks"`
	OutputFile     *string                    `pulumi:"outputFile"`
	PageNumber     *int                       `pulumi:"pageNumber"`
	PageSize       *int                       `pulumi:"pageSize"`
	// Payment method for disk.
	PaymentType *string `pulumi:"paymentType"`
	// Whether the disk is unmountable.
	Portable *bool `pulumi:"portable"`
	// The Id of resource group.
	ResourceGroupId *string `pulumi:"resourceGroupId"`
	// Snapshot used to create the disk. It is null if no snapshot is used to create the disk.
	SnapshotId *string `pulumi:"snapshotId"`
	// Current status.
	Status *string `pulumi:"status"`
	// A map of tags assigned to the disk.
	Tags map[string]interface{} `pulumi:"tags"`
	// Disk type.
	//
	// Deprecated: Field 'type' has been deprecated from provider version 1.122.0. New field 'disk_type' instead.
	Type *string `pulumi:"type"`
	// The zone id.
	ZoneId *string `pulumi:"zoneId"`
}

A collection of arguments for invoking getEcsDisks.

type GetEcsDisksDisk

type GetEcsDisksDisk struct {
	// A mount of time.
	AttachedTime string `pulumi:"attachedTime"`
	// Query cloud disks based on the automatic snapshot policy ID.
	AutoSnapshotPolicyId string `pulumi:"autoSnapshotPolicyId"`
	// Availability zone of the disk.
	AvailabilityZone string `pulumi:"availabilityZone"`
	// Disk category.
	Category string `pulumi:"category"`
	// Disk creation time.
	CreationTime string `pulumi:"creationTime"`
	// Indicates whether the automatic snapshot is deleted when the disk is released.
	DeleteAutoSnapshot bool `pulumi:"deleteAutoSnapshot"`
	// Indicates whether the disk is released together with the instance.
	DeleteWithInstance bool `pulumi:"deleteWithInstance"`
	// Disk description.
	Description string `pulumi:"description"`
	// Disk detachment time.
	DetachedTime string `pulumi:"detachedTime"`
	// The mount point of the disk.
	Device string `pulumi:"device"`
	// ID of the disk.
	DiskId string `pulumi:"diskId"`
	// The disk name.
	DiskName string `pulumi:"diskName"`
	// The disk type.
	DiskType string `pulumi:"diskType"`
	// Whether the disk implements an automatic snapshot policy.
	EnableAutoSnapshot bool `pulumi:"enableAutoSnapshot"`
	// Whether the disk implements an automatic snapshot policy.
	EnableAutomatedSnapshotPolicy bool `pulumi:"enableAutomatedSnapshotPolicy"`
	// Indicate whether the disk is encrypted or not.
	Encrypted   string `pulumi:"encrypted"`
	ExpiredTime string `pulumi:"expiredTime"`
	// ID of the disk.
	Id string `pulumi:"id"`
	// ID of the image from which the disk is created. It is null unless the disk is created using an image.
	ImageId string `pulumi:"imageId"`
	// The instance ID of the disk mount.
	InstanceId string `pulumi:"instanceId"`
	Iops       int    `pulumi:"iops"`
	IopsRead   int    `pulumi:"iopsRead"`
	IopsWrite  int    `pulumi:"iopsWrite"`
	// The kms key id.
	KmsKeyId string `pulumi:"kmsKeyId"`
	// Number of instances mounted on shared storage.
	MountInstanceNum int `pulumi:"mountInstanceNum"`
	// Disk mount instances.
	MountInstances []GetEcsDisksDiskMountInstance `pulumi:"mountInstances"`
	// Disk name.
	Name           string                         `pulumi:"name"`
	OperationLocks []GetEcsDisksDiskOperationLock `pulumi:"operationLocks"`
	// Payment method for disk.
	PaymentType string `pulumi:"paymentType"`
	// Performance levels of ESSD cloud disk.
	PerformanceLevel string `pulumi:"performanceLevel"`
	// Whether the disk is unmountable.
	Portable bool `pulumi:"portable"`
	// The product logo of the cloud market.
	ProductCode string `pulumi:"productCode"`
	// Region ID the disk belongs to.
	RegionId string `pulumi:"regionId"`
	// The Id of resource group.
	ResourceGroupId string `pulumi:"resourceGroupId"`
	// Disk size in GiB.
	Size int `pulumi:"size"`
	// Snapshot used to create the disk. It is null if no snapshot is used to create the disk.
	SnapshotId string `pulumi:"snapshotId"`
	// Current status.
	Status string `pulumi:"status"`
	// A map of tags assigned to the disk.
	Tags map[string]interface{} `pulumi:"tags"`
	// Disk type.
	Type string `pulumi:"type"`
	// The zone id.
	ZoneId string `pulumi:"zoneId"`
}

type GetEcsDisksDiskArgs

type GetEcsDisksDiskArgs struct {
	// A mount of time.
	AttachedTime pulumi.StringInput `pulumi:"attachedTime"`
	// Query cloud disks based on the automatic snapshot policy ID.
	AutoSnapshotPolicyId pulumi.StringInput `pulumi:"autoSnapshotPolicyId"`
	// Availability zone of the disk.
	AvailabilityZone pulumi.StringInput `pulumi:"availabilityZone"`
	// Disk category.
	Category pulumi.StringInput `pulumi:"category"`
	// Disk creation time.
	CreationTime pulumi.StringInput `pulumi:"creationTime"`
	// Indicates whether the automatic snapshot is deleted when the disk is released.
	DeleteAutoSnapshot pulumi.BoolInput `pulumi:"deleteAutoSnapshot"`
	// Indicates whether the disk is released together with the instance.
	DeleteWithInstance pulumi.BoolInput `pulumi:"deleteWithInstance"`
	// Disk description.
	Description pulumi.StringInput `pulumi:"description"`
	// Disk detachment time.
	DetachedTime pulumi.StringInput `pulumi:"detachedTime"`
	// The mount point of the disk.
	Device pulumi.StringInput `pulumi:"device"`
	// ID of the disk.
	DiskId pulumi.StringInput `pulumi:"diskId"`
	// The disk name.
	DiskName pulumi.StringInput `pulumi:"diskName"`
	// The disk type.
	DiskType pulumi.StringInput `pulumi:"diskType"`
	// Whether the disk implements an automatic snapshot policy.
	EnableAutoSnapshot pulumi.BoolInput `pulumi:"enableAutoSnapshot"`
	// Whether the disk implements an automatic snapshot policy.
	EnableAutomatedSnapshotPolicy pulumi.BoolInput `pulumi:"enableAutomatedSnapshotPolicy"`
	// Indicate whether the disk is encrypted or not.
	Encrypted   pulumi.StringInput `pulumi:"encrypted"`
	ExpiredTime pulumi.StringInput `pulumi:"expiredTime"`
	// ID of the disk.
	Id pulumi.StringInput `pulumi:"id"`
	// ID of the image from which the disk is created. It is null unless the disk is created using an image.
	ImageId pulumi.StringInput `pulumi:"imageId"`
	// The instance ID of the disk mount.
	InstanceId pulumi.StringInput `pulumi:"instanceId"`
	Iops       pulumi.IntInput    `pulumi:"iops"`
	IopsRead   pulumi.IntInput    `pulumi:"iopsRead"`
	IopsWrite  pulumi.IntInput    `pulumi:"iopsWrite"`
	// The kms key id.
	KmsKeyId pulumi.StringInput `pulumi:"kmsKeyId"`
	// Number of instances mounted on shared storage.
	MountInstanceNum pulumi.IntInput `pulumi:"mountInstanceNum"`
	// Disk mount instances.
	MountInstances GetEcsDisksDiskMountInstanceArrayInput `pulumi:"mountInstances"`
	// Disk name.
	Name           pulumi.StringInput                     `pulumi:"name"`
	OperationLocks GetEcsDisksDiskOperationLockArrayInput `pulumi:"operationLocks"`
	// Payment method for disk.
	PaymentType pulumi.StringInput `pulumi:"paymentType"`
	// Performance levels of ESSD cloud disk.
	PerformanceLevel pulumi.StringInput `pulumi:"performanceLevel"`
	// Whether the disk is unmountable.
	Portable pulumi.BoolInput `pulumi:"portable"`
	// The product logo of the cloud market.
	ProductCode pulumi.StringInput `pulumi:"productCode"`
	// Region ID the disk belongs to.
	RegionId pulumi.StringInput `pulumi:"regionId"`
	// The Id of resource group.
	ResourceGroupId pulumi.StringInput `pulumi:"resourceGroupId"`
	// Disk size in GiB.
	Size pulumi.IntInput `pulumi:"size"`
	// Snapshot used to create the disk. It is null if no snapshot is used to create the disk.
	SnapshotId pulumi.StringInput `pulumi:"snapshotId"`
	// Current status.
	Status pulumi.StringInput `pulumi:"status"`
	// A map of tags assigned to the disk.
	Tags pulumi.MapInput `pulumi:"tags"`
	// Disk type.
	Type pulumi.StringInput `pulumi:"type"`
	// The zone id.
	ZoneId pulumi.StringInput `pulumi:"zoneId"`
}

func (GetEcsDisksDiskArgs) ElementType

func (GetEcsDisksDiskArgs) ElementType() reflect.Type

func (GetEcsDisksDiskArgs) ToGetEcsDisksDiskOutput

func (i GetEcsDisksDiskArgs) ToGetEcsDisksDiskOutput() GetEcsDisksDiskOutput

func (GetEcsDisksDiskArgs) ToGetEcsDisksDiskOutputWithContext

func (i GetEcsDisksDiskArgs) ToGetEcsDisksDiskOutputWithContext(ctx context.Context) GetEcsDisksDiskOutput

type GetEcsDisksDiskArray

type GetEcsDisksDiskArray []GetEcsDisksDiskInput

func (GetEcsDisksDiskArray) ElementType

func (GetEcsDisksDiskArray) ElementType() reflect.Type

func (GetEcsDisksDiskArray) ToGetEcsDisksDiskArrayOutput

func (i GetEcsDisksDiskArray) ToGetEcsDisksDiskArrayOutput() GetEcsDisksDiskArrayOutput

func (GetEcsDisksDiskArray) ToGetEcsDisksDiskArrayOutputWithContext

func (i GetEcsDisksDiskArray) ToGetEcsDisksDiskArrayOutputWithContext(ctx context.Context) GetEcsDisksDiskArrayOutput

type GetEcsDisksDiskArrayInput

type GetEcsDisksDiskArrayInput interface {
	pulumi.Input

	ToGetEcsDisksDiskArrayOutput() GetEcsDisksDiskArrayOutput
	ToGetEcsDisksDiskArrayOutputWithContext(context.Context) GetEcsDisksDiskArrayOutput
}

GetEcsDisksDiskArrayInput is an input type that accepts GetEcsDisksDiskArray and GetEcsDisksDiskArrayOutput values. You can construct a concrete instance of `GetEcsDisksDiskArrayInput` via:

GetEcsDisksDiskArray{ GetEcsDisksDiskArgs{...} }

type GetEcsDisksDiskArrayOutput

type GetEcsDisksDiskArrayOutput struct{ *pulumi.OutputState }

func (GetEcsDisksDiskArrayOutput) ElementType

func (GetEcsDisksDiskArrayOutput) ElementType() reflect.Type

func (GetEcsDisksDiskArrayOutput) Index

func (GetEcsDisksDiskArrayOutput) ToGetEcsDisksDiskArrayOutput

func (o GetEcsDisksDiskArrayOutput) ToGetEcsDisksDiskArrayOutput() GetEcsDisksDiskArrayOutput

func (GetEcsDisksDiskArrayOutput) ToGetEcsDisksDiskArrayOutputWithContext

func (o GetEcsDisksDiskArrayOutput) ToGetEcsDisksDiskArrayOutputWithContext(ctx context.Context) GetEcsDisksDiskArrayOutput

type GetEcsDisksDiskInput

type GetEcsDisksDiskInput interface {
	pulumi.Input

	ToGetEcsDisksDiskOutput() GetEcsDisksDiskOutput
	ToGetEcsDisksDiskOutputWithContext(context.Context) GetEcsDisksDiskOutput
}

GetEcsDisksDiskInput is an input type that accepts GetEcsDisksDiskArgs and GetEcsDisksDiskOutput values. You can construct a concrete instance of `GetEcsDisksDiskInput` via:

GetEcsDisksDiskArgs{...}

type GetEcsDisksDiskMountInstance

type GetEcsDisksDiskMountInstance struct {
	// A mount of time.
	AttachedTime string `pulumi:"attachedTime"`
	// The mount point of the disk.
	Device string `pulumi:"device"`
	// The instance ID of the disk mount.
	InstanceId string `pulumi:"instanceId"`
}

type GetEcsDisksDiskMountInstanceArgs

type GetEcsDisksDiskMountInstanceArgs struct {
	// A mount of time.
	AttachedTime pulumi.StringInput `pulumi:"attachedTime"`
	// The mount point of the disk.
	Device pulumi.StringInput `pulumi:"device"`
	// The instance ID of the disk mount.
	InstanceId pulumi.StringInput `pulumi:"instanceId"`
}

func (GetEcsDisksDiskMountInstanceArgs) ElementType

func (GetEcsDisksDiskMountInstanceArgs) ToGetEcsDisksDiskMountInstanceOutput

func (i GetEcsDisksDiskMountInstanceArgs) ToGetEcsDisksDiskMountInstanceOutput() GetEcsDisksDiskMountInstanceOutput

func (GetEcsDisksDiskMountInstanceArgs) ToGetEcsDisksDiskMountInstanceOutputWithContext

func (i GetEcsDisksDiskMountInstanceArgs) ToGetEcsDisksDiskMountInstanceOutputWithContext(ctx context.Context) GetEcsDisksDiskMountInstanceOutput

type GetEcsDisksDiskMountInstanceArray

type GetEcsDisksDiskMountInstanceArray []GetEcsDisksDiskMountInstanceInput

func (GetEcsDisksDiskMountInstanceArray) ElementType

func (GetEcsDisksDiskMountInstanceArray) ToGetEcsDisksDiskMountInstanceArrayOutput

func (i GetEcsDisksDiskMountInstanceArray) ToGetEcsDisksDiskMountInstanceArrayOutput() GetEcsDisksDiskMountInstanceArrayOutput

func (GetEcsDisksDiskMountInstanceArray) ToGetEcsDisksDiskMountInstanceArrayOutputWithContext

func (i GetEcsDisksDiskMountInstanceArray) ToGetEcsDisksDiskMountInstanceArrayOutputWithContext(ctx context.Context) GetEcsDisksDiskMountInstanceArrayOutput

type GetEcsDisksDiskMountInstanceArrayInput

type GetEcsDisksDiskMountInstanceArrayInput interface {
	pulumi.Input

	ToGetEcsDisksDiskMountInstanceArrayOutput() GetEcsDisksDiskMountInstanceArrayOutput
	ToGetEcsDisksDiskMountInstanceArrayOutputWithContext(context.Context) GetEcsDisksDiskMountInstanceArrayOutput
}

GetEcsDisksDiskMountInstanceArrayInput is an input type that accepts GetEcsDisksDiskMountInstanceArray and GetEcsDisksDiskMountInstanceArrayOutput values. You can construct a concrete instance of `GetEcsDisksDiskMountInstanceArrayInput` via:

GetEcsDisksDiskMountInstanceArray{ GetEcsDisksDiskMountInstanceArgs{...} }

type GetEcsDisksDiskMountInstanceArrayOutput

type GetEcsDisksDiskMountInstanceArrayOutput struct{ *pulumi.OutputState }

func (GetEcsDisksDiskMountInstanceArrayOutput) ElementType

func (GetEcsDisksDiskMountInstanceArrayOutput) Index

func (GetEcsDisksDiskMountInstanceArrayOutput) ToGetEcsDisksDiskMountInstanceArrayOutput

func (o GetEcsDisksDiskMountInstanceArrayOutput) ToGetEcsDisksDiskMountInstanceArrayOutput() GetEcsDisksDiskMountInstanceArrayOutput

func (GetEcsDisksDiskMountInstanceArrayOutput) ToGetEcsDisksDiskMountInstanceArrayOutputWithContext

func (o GetEcsDisksDiskMountInstanceArrayOutput) ToGetEcsDisksDiskMountInstanceArrayOutputWithContext(ctx context.Context) GetEcsDisksDiskMountInstanceArrayOutput

type GetEcsDisksDiskMountInstanceInput

type GetEcsDisksDiskMountInstanceInput interface {
	pulumi.Input

	ToGetEcsDisksDiskMountInstanceOutput() GetEcsDisksDiskMountInstanceOutput
	ToGetEcsDisksDiskMountInstanceOutputWithContext(context.Context) GetEcsDisksDiskMountInstanceOutput
}

GetEcsDisksDiskMountInstanceInput is an input type that accepts GetEcsDisksDiskMountInstanceArgs and GetEcsDisksDiskMountInstanceOutput values. You can construct a concrete instance of `GetEcsDisksDiskMountInstanceInput` via:

GetEcsDisksDiskMountInstanceArgs{...}

type GetEcsDisksDiskMountInstanceOutput

type GetEcsDisksDiskMountInstanceOutput struct{ *pulumi.OutputState }

func (GetEcsDisksDiskMountInstanceOutput) AttachedTime

A mount of time.

func (GetEcsDisksDiskMountInstanceOutput) Device

The mount point of the disk.

func (GetEcsDisksDiskMountInstanceOutput) ElementType

func (GetEcsDisksDiskMountInstanceOutput) InstanceId

The instance ID of the disk mount.

func (GetEcsDisksDiskMountInstanceOutput) ToGetEcsDisksDiskMountInstanceOutput

func (o GetEcsDisksDiskMountInstanceOutput) ToGetEcsDisksDiskMountInstanceOutput() GetEcsDisksDiskMountInstanceOutput

func (GetEcsDisksDiskMountInstanceOutput) ToGetEcsDisksDiskMountInstanceOutputWithContext

func (o GetEcsDisksDiskMountInstanceOutput) ToGetEcsDisksDiskMountInstanceOutputWithContext(ctx context.Context) GetEcsDisksDiskMountInstanceOutput

type GetEcsDisksDiskOperationLock

type GetEcsDisksDiskOperationLock struct {
	LockReason string `pulumi:"lockReason"`
}

type GetEcsDisksDiskOperationLockArgs

type GetEcsDisksDiskOperationLockArgs struct {
	LockReason pulumi.StringInput `pulumi:"lockReason"`
}

func (GetEcsDisksDiskOperationLockArgs) ElementType

func (GetEcsDisksDiskOperationLockArgs) ToGetEcsDisksDiskOperationLockOutput

func (i GetEcsDisksDiskOperationLockArgs) ToGetEcsDisksDiskOperationLockOutput() GetEcsDisksDiskOperationLockOutput

func (GetEcsDisksDiskOperationLockArgs) ToGetEcsDisksDiskOperationLockOutputWithContext

func (i GetEcsDisksDiskOperationLockArgs) ToGetEcsDisksDiskOperationLockOutputWithContext(ctx context.Context) GetEcsDisksDiskOperationLockOutput

type GetEcsDisksDiskOperationLockArray

type GetEcsDisksDiskOperationLockArray []GetEcsDisksDiskOperationLockInput

func (GetEcsDisksDiskOperationLockArray) ElementType

func (GetEcsDisksDiskOperationLockArray) ToGetEcsDisksDiskOperationLockArrayOutput

func (i GetEcsDisksDiskOperationLockArray) ToGetEcsDisksDiskOperationLockArrayOutput() GetEcsDisksDiskOperationLockArrayOutput

func (GetEcsDisksDiskOperationLockArray) ToGetEcsDisksDiskOperationLockArrayOutputWithContext

func (i GetEcsDisksDiskOperationLockArray) ToGetEcsDisksDiskOperationLockArrayOutputWithContext(ctx context.Context) GetEcsDisksDiskOperationLockArrayOutput

type GetEcsDisksDiskOperationLockArrayInput

type GetEcsDisksDiskOperationLockArrayInput interface {
	pulumi.Input

	ToGetEcsDisksDiskOperationLockArrayOutput() GetEcsDisksDiskOperationLockArrayOutput
	ToGetEcsDisksDiskOperationLockArrayOutputWithContext(context.Context) GetEcsDisksDiskOperationLockArrayOutput
}

GetEcsDisksDiskOperationLockArrayInput is an input type that accepts GetEcsDisksDiskOperationLockArray and GetEcsDisksDiskOperationLockArrayOutput values. You can construct a concrete instance of `GetEcsDisksDiskOperationLockArrayInput` via:

GetEcsDisksDiskOperationLockArray{ GetEcsDisksDiskOperationLockArgs{...} }

type GetEcsDisksDiskOperationLockArrayOutput

type GetEcsDisksDiskOperationLockArrayOutput struct{ *pulumi.OutputState }

func (GetEcsDisksDiskOperationLockArrayOutput) ElementType

func (GetEcsDisksDiskOperationLockArrayOutput) Index

func (GetEcsDisksDiskOperationLockArrayOutput) ToGetEcsDisksDiskOperationLockArrayOutput

func (o GetEcsDisksDiskOperationLockArrayOutput) ToGetEcsDisksDiskOperationLockArrayOutput() GetEcsDisksDiskOperationLockArrayOutput

func (GetEcsDisksDiskOperationLockArrayOutput) ToGetEcsDisksDiskOperationLockArrayOutputWithContext

func (o GetEcsDisksDiskOperationLockArrayOutput) ToGetEcsDisksDiskOperationLockArrayOutputWithContext(ctx context.Context) GetEcsDisksDiskOperationLockArrayOutput

type GetEcsDisksDiskOperationLockInput

type GetEcsDisksDiskOperationLockInput interface {
	pulumi.Input

	ToGetEcsDisksDiskOperationLockOutput() GetEcsDisksDiskOperationLockOutput
	ToGetEcsDisksDiskOperationLockOutputWithContext(context.Context) GetEcsDisksDiskOperationLockOutput
}

GetEcsDisksDiskOperationLockInput is an input type that accepts GetEcsDisksDiskOperationLockArgs and GetEcsDisksDiskOperationLockOutput values. You can construct a concrete instance of `GetEcsDisksDiskOperationLockInput` via:

GetEcsDisksDiskOperationLockArgs{...}

type GetEcsDisksDiskOperationLockOutput

type GetEcsDisksDiskOperationLockOutput struct{ *pulumi.OutputState }

func (GetEcsDisksDiskOperationLockOutput) ElementType

func (GetEcsDisksDiskOperationLockOutput) LockReason

func (GetEcsDisksDiskOperationLockOutput) ToGetEcsDisksDiskOperationLockOutput

func (o GetEcsDisksDiskOperationLockOutput) ToGetEcsDisksDiskOperationLockOutput() GetEcsDisksDiskOperationLockOutput

func (GetEcsDisksDiskOperationLockOutput) ToGetEcsDisksDiskOperationLockOutputWithContext

func (o GetEcsDisksDiskOperationLockOutput) ToGetEcsDisksDiskOperationLockOutputWithContext(ctx context.Context) GetEcsDisksDiskOperationLockOutput

type GetEcsDisksDiskOutput

type GetEcsDisksDiskOutput struct{ *pulumi.OutputState }

func (GetEcsDisksDiskOutput) AttachedTime

func (o GetEcsDisksDiskOutput) AttachedTime() pulumi.StringOutput

A mount of time.

func (GetEcsDisksDiskOutput) AutoSnapshotPolicyId

func (o GetEcsDisksDiskOutput) AutoSnapshotPolicyId() pulumi.StringOutput

Query cloud disks based on the automatic snapshot policy ID.

func (GetEcsDisksDiskOutput) AvailabilityZone

func (o GetEcsDisksDiskOutput) AvailabilityZone() pulumi.StringOutput

Availability zone of the disk.

func (GetEcsDisksDiskOutput) Category

Disk category.

func (GetEcsDisksDiskOutput) CreationTime

func (o GetEcsDisksDiskOutput) CreationTime() pulumi.StringOutput

Disk creation time.

func (GetEcsDisksDiskOutput) DeleteAutoSnapshot

func (o GetEcsDisksDiskOutput) DeleteAutoSnapshot() pulumi.BoolOutput

Indicates whether the automatic snapshot is deleted when the disk is released.

func (GetEcsDisksDiskOutput) DeleteWithInstance

func (o GetEcsDisksDiskOutput) DeleteWithInstance() pulumi.BoolOutput

Indicates whether the disk is released together with the instance.

func (GetEcsDisksDiskOutput) Description

func (o GetEcsDisksDiskOutput) Description() pulumi.StringOutput

Disk description.

func (GetEcsDisksDiskOutput) DetachedTime

func (o GetEcsDisksDiskOutput) DetachedTime() pulumi.StringOutput

Disk detachment time.

func (GetEcsDisksDiskOutput) Device

The mount point of the disk.

func (GetEcsDisksDiskOutput) DiskId

ID of the disk.

func (GetEcsDisksDiskOutput) DiskName

The disk name.

func (GetEcsDisksDiskOutput) DiskType

The disk type.

func (GetEcsDisksDiskOutput) ElementType

func (GetEcsDisksDiskOutput) ElementType() reflect.Type

func (GetEcsDisksDiskOutput) EnableAutoSnapshot

func (o GetEcsDisksDiskOutput) EnableAutoSnapshot() pulumi.BoolOutput

Whether the disk implements an automatic snapshot policy.

func (GetEcsDisksDiskOutput) EnableAutomatedSnapshotPolicy

func (o GetEcsDisksDiskOutput) EnableAutomatedSnapshotPolicy() pulumi.BoolOutput

Whether the disk implements an automatic snapshot policy.

func (GetEcsDisksDiskOutput) Encrypted

Indicate whether the disk is encrypted or not.

func (GetEcsDisksDiskOutput) ExpiredTime

func (o GetEcsDisksDiskOutput) ExpiredTime() pulumi.StringOutput

func (GetEcsDisksDiskOutput) Id

ID of the disk.

func (GetEcsDisksDiskOutput) ImageId

ID of the image from which the disk is created. It is null unless the disk is created using an image.

func (GetEcsDisksDiskOutput) InstanceId

func (o GetEcsDisksDiskOutput) InstanceId() pulumi.StringOutput

The instance ID of the disk mount.

func (GetEcsDisksDiskOutput) Iops

func (GetEcsDisksDiskOutput) IopsRead

func (o GetEcsDisksDiskOutput) IopsRead() pulumi.IntOutput

func (GetEcsDisksDiskOutput) IopsWrite

func (o GetEcsDisksDiskOutput) IopsWrite() pulumi.IntOutput

func (GetEcsDisksDiskOutput) KmsKeyId

The kms key id.

func (GetEcsDisksDiskOutput) MountInstanceNum

func (o GetEcsDisksDiskOutput) MountInstanceNum() pulumi.IntOutput

Number of instances mounted on shared storage.

func (GetEcsDisksDiskOutput) MountInstances

Disk mount instances.

func (GetEcsDisksDiskOutput) Name

Disk name.

func (GetEcsDisksDiskOutput) OperationLocks

func (GetEcsDisksDiskOutput) PaymentType

func (o GetEcsDisksDiskOutput) PaymentType() pulumi.StringOutput

Payment method for disk.

func (GetEcsDisksDiskOutput) PerformanceLevel

func (o GetEcsDisksDiskOutput) PerformanceLevel() pulumi.StringOutput

Performance levels of ESSD cloud disk.

func (GetEcsDisksDiskOutput) Portable

Whether the disk is unmountable.

func (GetEcsDisksDiskOutput) ProductCode

func (o GetEcsDisksDiskOutput) ProductCode() pulumi.StringOutput

The product logo of the cloud market.

func (GetEcsDisksDiskOutput) RegionId

Region ID the disk belongs to.

func (GetEcsDisksDiskOutput) ResourceGroupId

func (o GetEcsDisksDiskOutput) ResourceGroupId() pulumi.StringOutput

The Id of resource group.

func (GetEcsDisksDiskOutput) Size

Disk size in GiB.

func (GetEcsDisksDiskOutput) SnapshotId

func (o GetEcsDisksDiskOutput) SnapshotId() pulumi.StringOutput

Snapshot used to create the disk. It is null if no snapshot is used to create the disk.

func (GetEcsDisksDiskOutput) Status

Current status.

func (GetEcsDisksDiskOutput) Tags

A map of tags assigned to the disk.

func (GetEcsDisksDiskOutput) ToGetEcsDisksDiskOutput

func (o GetEcsDisksDiskOutput) ToGetEcsDisksDiskOutput() GetEcsDisksDiskOutput

func (GetEcsDisksDiskOutput) ToGetEcsDisksDiskOutputWithContext

func (o GetEcsDisksDiskOutput) ToGetEcsDisksDiskOutputWithContext(ctx context.Context) GetEcsDisksDiskOutput

func (GetEcsDisksDiskOutput) Type

Disk type.

func (GetEcsDisksDiskOutput) ZoneId

The zone id.

type GetEcsDisksOperationLock

type GetEcsDisksOperationLock struct {
	LockReason *string `pulumi:"lockReason"`
}

type GetEcsDisksOperationLockArgs

type GetEcsDisksOperationLockArgs struct {
	LockReason pulumi.StringPtrInput `pulumi:"lockReason"`
}

func (GetEcsDisksOperationLockArgs) ElementType

func (GetEcsDisksOperationLockArgs) ToGetEcsDisksOperationLockOutput

func (i GetEcsDisksOperationLockArgs) ToGetEcsDisksOperationLockOutput() GetEcsDisksOperationLockOutput

func (GetEcsDisksOperationLockArgs) ToGetEcsDisksOperationLockOutputWithContext

func (i GetEcsDisksOperationLockArgs) ToGetEcsDisksOperationLockOutputWithContext(ctx context.Context) GetEcsDisksOperationLockOutput

type GetEcsDisksOperationLockArray

type GetEcsDisksOperationLockArray []GetEcsDisksOperationLockInput

func (GetEcsDisksOperationLockArray) ElementType

func (GetEcsDisksOperationLockArray) ToGetEcsDisksOperationLockArrayOutput

func (i GetEcsDisksOperationLockArray) ToGetEcsDisksOperationLockArrayOutput() GetEcsDisksOperationLockArrayOutput

func (GetEcsDisksOperationLockArray) ToGetEcsDisksOperationLockArrayOutputWithContext

func (i GetEcsDisksOperationLockArray) ToGetEcsDisksOperationLockArrayOutputWithContext(ctx context.Context) GetEcsDisksOperationLockArrayOutput

type GetEcsDisksOperationLockArrayInput

type GetEcsDisksOperationLockArrayInput interface {
	pulumi.Input

	ToGetEcsDisksOperationLockArrayOutput() GetEcsDisksOperationLockArrayOutput
	ToGetEcsDisksOperationLockArrayOutputWithContext(context.Context) GetEcsDisksOperationLockArrayOutput
}

GetEcsDisksOperationLockArrayInput is an input type that accepts GetEcsDisksOperationLockArray and GetEcsDisksOperationLockArrayOutput values. You can construct a concrete instance of `GetEcsDisksOperationLockArrayInput` via:

GetEcsDisksOperationLockArray{ GetEcsDisksOperationLockArgs{...} }

type GetEcsDisksOperationLockArrayOutput

type GetEcsDisksOperationLockArrayOutput struct{ *pulumi.OutputState }

func (GetEcsDisksOperationLockArrayOutput) ElementType

func (GetEcsDisksOperationLockArrayOutput) Index

func (GetEcsDisksOperationLockArrayOutput) ToGetEcsDisksOperationLockArrayOutput

func (o GetEcsDisksOperationLockArrayOutput) ToGetEcsDisksOperationLockArrayOutput() GetEcsDisksOperationLockArrayOutput

func (GetEcsDisksOperationLockArrayOutput) ToGetEcsDisksOperationLockArrayOutputWithContext

func (o GetEcsDisksOperationLockArrayOutput) ToGetEcsDisksOperationLockArrayOutputWithContext(ctx context.Context) GetEcsDisksOperationLockArrayOutput

type GetEcsDisksOperationLockInput

type GetEcsDisksOperationLockInput interface {
	pulumi.Input

	ToGetEcsDisksOperationLockOutput() GetEcsDisksOperationLockOutput
	ToGetEcsDisksOperationLockOutputWithContext(context.Context) GetEcsDisksOperationLockOutput
}

GetEcsDisksOperationLockInput is an input type that accepts GetEcsDisksOperationLockArgs and GetEcsDisksOperationLockOutput values. You can construct a concrete instance of `GetEcsDisksOperationLockInput` via:

GetEcsDisksOperationLockArgs{...}

type GetEcsDisksOperationLockOutput

type GetEcsDisksOperationLockOutput struct{ *pulumi.OutputState }

func (GetEcsDisksOperationLockOutput) ElementType

func (GetEcsDisksOperationLockOutput) LockReason

func (GetEcsDisksOperationLockOutput) ToGetEcsDisksOperationLockOutput

func (o GetEcsDisksOperationLockOutput) ToGetEcsDisksOperationLockOutput() GetEcsDisksOperationLockOutput

func (GetEcsDisksOperationLockOutput) ToGetEcsDisksOperationLockOutputWithContext

func (o GetEcsDisksOperationLockOutput) ToGetEcsDisksOperationLockOutputWithContext(ctx context.Context) GetEcsDisksOperationLockOutput

type GetEcsDisksOutputArgs

type GetEcsDisksOutputArgs struct {
	// Other attribute values. Currently, only the incoming value of IOPS is supported, which means to query the IOPS upper limit of the current disk.
	AdditionalAttributes pulumi.StringArrayInput `pulumi:"additionalAttributes"`
	// Query cloud disks based on the automatic snapshot policy ID.
	AutoSnapshotPolicyId pulumi.StringPtrInput `pulumi:"autoSnapshotPolicyId"`
	// Availability zone of the disk.
	//
	// Deprecated: Field 'availability_zone' has been deprecated from provider version 1.122.0. New field 'zone_id' instead
	AvailabilityZone pulumi.StringPtrInput `pulumi:"availabilityZone"`
	// Disk category.
	Category pulumi.StringPtrInput `pulumi:"category"`
	// Indicates whether the automatic snapshot is deleted when the disk is released.
	DeleteAutoSnapshot pulumi.BoolPtrInput `pulumi:"deleteAutoSnapshot"`
	// Indicates whether the disk is released together with the instance.
	DeleteWithInstance pulumi.BoolPtrInput `pulumi:"deleteWithInstance"`
	// The disk name.
	DiskName pulumi.StringPtrInput `pulumi:"diskName"`
	// The disk type.
	DiskType pulumi.StringPtrInput `pulumi:"diskType"`
	// Specifies whether to check the validity of the request without actually making the request.request Default value: false. Valid values:
	// * `true`: The validity of the request is checked but the request is not made. Check items include the required parameters, request format, service limits, and available ECS resources. If the check fails, the corresponding error message is returned. If the check succeeds, the DryRunOperation error code is returned.
	// * `false`: The validity of the request is checked. If the check succeeds, a 2xx HTTP status code is returned and the request is made.
	DryRun pulumi.BoolPtrInput `pulumi:"dryRun"`
	// Whether the disk implements an automatic snapshot policy.
	EnableAutoSnapshot pulumi.BoolPtrInput `pulumi:"enableAutoSnapshot"`
	// Whether the disk implements an automatic snapshot policy.
	EnableAutomatedSnapshotPolicy pulumi.BoolPtrInput `pulumi:"enableAutomatedSnapshotPolicy"`
	// Whether it is shared block storage.
	EnableShared pulumi.BoolPtrInput `pulumi:"enableShared"`
	// Indicate whether the disk is encrypted or not.
	Encrypted pulumi.StringPtrInput `pulumi:"encrypted"`
	// A list of Disk IDs.
	Ids pulumi.StringArrayInput `pulumi:"ids"`
	// The instance ID of the disk mount.
	InstanceId pulumi.StringPtrInput `pulumi:"instanceId"`
	// The kms key id.
	KmsKeyId pulumi.StringPtrInput `pulumi:"kmsKeyId"`
	// A regex string to filter results by Disk name.
	NameRegex      pulumi.StringPtrInput              `pulumi:"nameRegex"`
	OperationLocks GetEcsDisksOperationLockArrayInput `pulumi:"operationLocks"`
	OutputFile     pulumi.StringPtrInput              `pulumi:"outputFile"`
	PageNumber     pulumi.IntPtrInput                 `pulumi:"pageNumber"`
	PageSize       pulumi.IntPtrInput                 `pulumi:"pageSize"`
	// Payment method for disk.
	PaymentType pulumi.StringPtrInput `pulumi:"paymentType"`
	// Whether the disk is unmountable.
	Portable pulumi.BoolPtrInput `pulumi:"portable"`
	// The Id of resource group.
	ResourceGroupId pulumi.StringPtrInput `pulumi:"resourceGroupId"`
	// Snapshot used to create the disk. It is null if no snapshot is used to create the disk.
	SnapshotId pulumi.StringPtrInput `pulumi:"snapshotId"`
	// Current status.
	Status pulumi.StringPtrInput `pulumi:"status"`
	// A map of tags assigned to the disk.
	Tags pulumi.MapInput `pulumi:"tags"`
	// Disk type.
	//
	// Deprecated: Field 'type' has been deprecated from provider version 1.122.0. New field 'disk_type' instead.
	Type pulumi.StringPtrInput `pulumi:"type"`
	// The zone id.
	ZoneId pulumi.StringPtrInput `pulumi:"zoneId"`
}

A collection of arguments for invoking getEcsDisks.

func (GetEcsDisksOutputArgs) ElementType

func (GetEcsDisksOutputArgs) ElementType() reflect.Type

type GetEcsDisksResult

type GetEcsDisksResult struct {
	AdditionalAttributes []string `pulumi:"additionalAttributes"`
	AutoSnapshotPolicyId *string  `pulumi:"autoSnapshotPolicyId"`
	// Deprecated: Field 'availability_zone' has been deprecated from provider version 1.122.0. New field 'zone_id' instead
	AvailabilityZone              *string           `pulumi:"availabilityZone"`
	Category                      *string           `pulumi:"category"`
	DeleteAutoSnapshot            *bool             `pulumi:"deleteAutoSnapshot"`
	DeleteWithInstance            *bool             `pulumi:"deleteWithInstance"`
	DiskName                      *string           `pulumi:"diskName"`
	DiskType                      *string           `pulumi:"diskType"`
	Disks                         []GetEcsDisksDisk `pulumi:"disks"`
	DryRun                        *bool             `pulumi:"dryRun"`
	EnableAutoSnapshot            *bool             `pulumi:"enableAutoSnapshot"`
	EnableAutomatedSnapshotPolicy *bool             `pulumi:"enableAutomatedSnapshotPolicy"`
	EnableShared                  *bool             `pulumi:"enableShared"`
	Encrypted                     *string           `pulumi:"encrypted"`
	// The provider-assigned unique ID for this managed resource.
	Id              string                     `pulumi:"id"`
	Ids             []string                   `pulumi:"ids"`
	InstanceId      *string                    `pulumi:"instanceId"`
	KmsKeyId        *string                    `pulumi:"kmsKeyId"`
	NameRegex       *string                    `pulumi:"nameRegex"`
	Names           []string                   `pulumi:"names"`
	OperationLocks  []GetEcsDisksOperationLock `pulumi:"operationLocks"`
	OutputFile      *string                    `pulumi:"outputFile"`
	PageNumber      *int                       `pulumi:"pageNumber"`
	PageSize        *int                       `pulumi:"pageSize"`
	PaymentType     *string                    `pulumi:"paymentType"`
	Portable        *bool                      `pulumi:"portable"`
	ResourceGroupId *string                    `pulumi:"resourceGroupId"`
	SnapshotId      *string                    `pulumi:"snapshotId"`
	Status          *string                    `pulumi:"status"`
	Tags            map[string]interface{}     `pulumi:"tags"`
	TotalCount      int                        `pulumi:"totalCount"`
	// Deprecated: Field 'type' has been deprecated from provider version 1.122.0. New field 'disk_type' instead.
	Type   *string `pulumi:"type"`
	ZoneId *string `pulumi:"zoneId"`
}

A collection of values returned by getEcsDisks.

func GetEcsDisks

func GetEcsDisks(ctx *pulumi.Context, args *GetEcsDisksArgs, opts ...pulumi.InvokeOption) (*GetEcsDisksResult, error)

This data source provides the Ecs Disks of the current Alibaba Cloud user.

> **NOTE:** Available in v1.122.0+.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/go/alicloud/ecs"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := ecs.GetEcsDisks(ctx, &ecs.GetEcsDisksArgs{
			Ids: []string{
				"d-artgdsvdvxxxx",
			},
			NameRegex: pulumi.StringRef("tf-test"),
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("firstEcsDiskId", example.Disks[0].Id)
		return nil
	})
}

```

type GetEcsDisksResultOutput

type GetEcsDisksResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getEcsDisks.

func (GetEcsDisksResultOutput) AdditionalAttributes

func (o GetEcsDisksResultOutput) AdditionalAttributes() pulumi.StringArrayOutput

func (GetEcsDisksResultOutput) AutoSnapshotPolicyId

func (o GetEcsDisksResultOutput) AutoSnapshotPolicyId() pulumi.StringPtrOutput

func (GetEcsDisksResultOutput) AvailabilityZone deprecated

func (o GetEcsDisksResultOutput) AvailabilityZone() pulumi.StringPtrOutput

Deprecated: Field 'availability_zone' has been deprecated from provider version 1.122.0. New field 'zone_id' instead

func (GetEcsDisksResultOutput) Category

func (GetEcsDisksResultOutput) DeleteAutoSnapshot

func (o GetEcsDisksResultOutput) DeleteAutoSnapshot() pulumi.BoolPtrOutput

func (GetEcsDisksResultOutput) DeleteWithInstance

func (o GetEcsDisksResultOutput) DeleteWithInstance() pulumi.BoolPtrOutput

func (GetEcsDisksResultOutput) DiskName

func (GetEcsDisksResultOutput) DiskType

func (GetEcsDisksResultOutput) Disks

func (GetEcsDisksResultOutput) DryRun

func (GetEcsDisksResultOutput) ElementType

func (GetEcsDisksResultOutput) ElementType() reflect.Type

func (GetEcsDisksResultOutput) EnableAutoSnapshot

func (o GetEcsDisksResultOutput) EnableAutoSnapshot() pulumi.BoolPtrOutput

func (GetEcsDisksResultOutput) EnableAutomatedSnapshotPolicy

func (o GetEcsDisksResultOutput) EnableAutomatedSnapshotPolicy() pulumi.BoolPtrOutput

func (GetEcsDisksResultOutput) EnableShared

func (o GetEcsDisksResultOutput) EnableShared() pulumi.BoolPtrOutput

func (GetEcsDisksResultOutput) Encrypted

func (GetEcsDisksResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetEcsDisksResultOutput) Ids

func (GetEcsDisksResultOutput) InstanceId

func (GetEcsDisksResultOutput) KmsKeyId

func (GetEcsDisksResultOutput) NameRegex

func (GetEcsDisksResultOutput) Names

func (GetEcsDisksResultOutput) OperationLocks

func (GetEcsDisksResultOutput) OutputFile

func (GetEcsDisksResultOutput) PageNumber

func (GetEcsDisksResultOutput) PageSize

func (GetEcsDisksResultOutput) PaymentType

func (GetEcsDisksResultOutput) Portable

func (GetEcsDisksResultOutput) ResourceGroupId

func (o GetEcsDisksResultOutput) ResourceGroupId() pulumi.StringPtrOutput

func (GetEcsDisksResultOutput) SnapshotId

func (GetEcsDisksResultOutput) Status

func (GetEcsDisksResultOutput) Tags

func (GetEcsDisksResultOutput) ToGetEcsDisksResultOutput

func (o GetEcsDisksResultOutput) ToGetEcsDisksResultOutput() GetEcsDisksResultOutput

func (GetEcsDisksResultOutput) ToGetEcsDisksResultOutputWithContext

func (o GetEcsDisksResultOutput) ToGetEcsDisksResultOutputWithContext(ctx context.Context) GetEcsDisksResultOutput

func (GetEcsDisksResultOutput) TotalCount

func (o GetEcsDisksResultOutput) TotalCount() pulumi.IntOutput

func (GetEcsDisksResultOutput) Type deprecated

Deprecated: Field 'type' has been deprecated from provider version 1.122.0. New field 'disk_type' instead.

func (GetEcsDisksResultOutput) ZoneId

type GetEcsImageComponentsArgs

type GetEcsImageComponentsArgs struct {
	// A list of Image Component IDs.
	Ids []string `pulumi:"ids"`
	// The name of the image component.
	ImageComponentName *string `pulumi:"imageComponentName"`
	// A regex string to filter results by Image Component name.
	NameRegex  *string `pulumi:"nameRegex"`
	OutputFile *string `pulumi:"outputFile"`
	// The type of the image component.
	Owner *string `pulumi:"owner"`
	// The ID of the resource group.
	ResourceGroupId *string `pulumi:"resourceGroupId"`
	// List of label key-value pairs.
	Tags map[string]interface{} `pulumi:"tags"`
}

A collection of arguments for invoking getEcsImageComponents.

type GetEcsImageComponentsComponent

type GetEcsImageComponentsComponent struct {
	// The type of the image component.
	ComponentType string `pulumi:"componentType"`
	// The content of the image component.
	Content string `pulumi:"content"`
	// The time when the image component was created.
	CreateTime string `pulumi:"createTime"`
	// The description of the image component.
	Description string `pulumi:"description"`
	// The ID of the Image Component.
	Id string `pulumi:"id"`
	// The ID of the image component.
	ImageComponentId string `pulumi:"imageComponentId"`
	// The name of the image component.
	ImageComponentName string `pulumi:"imageComponentName"`
	// The type of the image component.
	Owner string `pulumi:"owner"`
	// The ID of the resource group.
	ResourceGroupId string `pulumi:"resourceGroupId"`
	// The operating system type supported by the image component.
	SystemType string `pulumi:"systemType"`
	// List of label key-value pairs.
	Tags map[string]interface{} `pulumi:"tags"`
}

type GetEcsImageComponentsComponentArgs

type GetEcsImageComponentsComponentArgs struct {
	// The type of the image component.
	ComponentType pulumi.StringInput `pulumi:"componentType"`
	// The content of the image component.
	Content pulumi.StringInput `pulumi:"content"`
	// The time when the image component was created.
	CreateTime pulumi.StringInput `pulumi:"createTime"`
	// The description of the image component.
	Description pulumi.StringInput `pulumi:"description"`
	// The ID of the Image Component.
	Id pulumi.StringInput `pulumi:"id"`
	// The ID of the image component.
	ImageComponentId pulumi.StringInput `pulumi:"imageComponentId"`
	// The name of the image component.
	ImageComponentName pulumi.StringInput `pulumi:"imageComponentName"`
	// The type of the image component.
	Owner pulumi.StringInput `pulumi:"owner"`
	// The ID of the resource group.
	ResourceGroupId pulumi.StringInput `pulumi:"resourceGroupId"`
	// The operating system type supported by the image component.
	SystemType pulumi.StringInput `pulumi:"systemType"`
	// List of label key-value pairs.
	Tags pulumi.MapInput `pulumi:"tags"`
}

func (GetEcsImageComponentsComponentArgs) ElementType

func (GetEcsImageComponentsComponentArgs) ToGetEcsImageComponentsComponentOutput

func (i GetEcsImageComponentsComponentArgs) ToGetEcsImageComponentsComponentOutput() GetEcsImageComponentsComponentOutput

func (GetEcsImageComponentsComponentArgs) ToGetEcsImageComponentsComponentOutputWithContext

func (i GetEcsImageComponentsComponentArgs) ToGetEcsImageComponentsComponentOutputWithContext(ctx context.Context) GetEcsImageComponentsComponentOutput

type GetEcsImageComponentsComponentArray

type GetEcsImageComponentsComponentArray []GetEcsImageComponentsComponentInput

func (GetEcsImageComponentsComponentArray) ElementType

func (GetEcsImageComponentsComponentArray) ToGetEcsImageComponentsComponentArrayOutput

func (i GetEcsImageComponentsComponentArray) ToGetEcsImageComponentsComponentArrayOutput() GetEcsImageComponentsComponentArrayOutput

func (GetEcsImageComponentsComponentArray) ToGetEcsImageComponentsComponentArrayOutputWithContext

func (i GetEcsImageComponentsComponentArray) ToGetEcsImageComponentsComponentArrayOutputWithContext(ctx context.Context) GetEcsImageComponentsComponentArrayOutput

type GetEcsImageComponentsComponentArrayInput

type GetEcsImageComponentsComponentArrayInput interface {
	pulumi.Input

	ToGetEcsImageComponentsComponentArrayOutput() GetEcsImageComponentsComponentArrayOutput
	ToGetEcsImageComponentsComponentArrayOutputWithContext(context.Context) GetEcsImageComponentsComponentArrayOutput
}

GetEcsImageComponentsComponentArrayInput is an input type that accepts GetEcsImageComponentsComponentArray and GetEcsImageComponentsComponentArrayOutput values. You can construct a concrete instance of `GetEcsImageComponentsComponentArrayInput` via:

GetEcsImageComponentsComponentArray{ GetEcsImageComponentsComponentArgs{...} }

type GetEcsImageComponentsComponentArrayOutput

type GetEcsImageComponentsComponentArrayOutput struct{ *pulumi.OutputState }

func (GetEcsImageComponentsComponentArrayOutput) ElementType

func (GetEcsImageComponentsComponentArrayOutput) Index

func (GetEcsImageComponentsComponentArrayOutput) ToGetEcsImageComponentsComponentArrayOutput

func (o GetEcsImageComponentsComponentArrayOutput) ToGetEcsImageComponentsComponentArrayOutput() GetEcsImageComponentsComponentArrayOutput

func (GetEcsImageComponentsComponentArrayOutput) ToGetEcsImageComponentsComponentArrayOutputWithContext

func (o GetEcsImageComponentsComponentArrayOutput) ToGetEcsImageComponentsComponentArrayOutputWithContext(ctx context.Context) GetEcsImageComponentsComponentArrayOutput

type GetEcsImageComponentsComponentInput

type GetEcsImageComponentsComponentInput interface {
	pulumi.Input

	ToGetEcsImageComponentsComponentOutput() GetEcsImageComponentsComponentOutput
	ToGetEcsImageComponentsComponentOutputWithContext(context.Context) GetEcsImageComponentsComponentOutput
}

GetEcsImageComponentsComponentInput is an input type that accepts GetEcsImageComponentsComponentArgs and GetEcsImageComponentsComponentOutput values. You can construct a concrete instance of `GetEcsImageComponentsComponentInput` via:

GetEcsImageComponentsComponentArgs{...}

type GetEcsImageComponentsComponentOutput

type GetEcsImageComponentsComponentOutput struct{ *pulumi.OutputState }

func (GetEcsImageComponentsComponentOutput) ComponentType

The type of the image component.

func (GetEcsImageComponentsComponentOutput) Content

The content of the image component.

func (GetEcsImageComponentsComponentOutput) CreateTime

The time when the image component was created.

func (GetEcsImageComponentsComponentOutput) Description

The description of the image component.

func (GetEcsImageComponentsComponentOutput) ElementType

func (GetEcsImageComponentsComponentOutput) Id

The ID of the Image Component.

func (GetEcsImageComponentsComponentOutput) ImageComponentId

The ID of the image component.

func (GetEcsImageComponentsComponentOutput) ImageComponentName

The name of the image component.

func (GetEcsImageComponentsComponentOutput) Owner

The type of the image component.

func (GetEcsImageComponentsComponentOutput) ResourceGroupId

The ID of the resource group.

func (GetEcsImageComponentsComponentOutput) SystemType

The operating system type supported by the image component.

func (GetEcsImageComponentsComponentOutput) Tags

List of label key-value pairs.

func (GetEcsImageComponentsComponentOutput) ToGetEcsImageComponentsComponentOutput

func (o GetEcsImageComponentsComponentOutput) ToGetEcsImageComponentsComponentOutput() GetEcsImageComponentsComponentOutput

func (GetEcsImageComponentsComponentOutput) ToGetEcsImageComponentsComponentOutputWithContext

func (o GetEcsImageComponentsComponentOutput) ToGetEcsImageComponentsComponentOutputWithContext(ctx context.Context) GetEcsImageComponentsComponentOutput

type GetEcsImageComponentsOutputArgs

type GetEcsImageComponentsOutputArgs struct {
	// A list of Image Component IDs.
	Ids pulumi.StringArrayInput `pulumi:"ids"`
	// The name of the image component.
	ImageComponentName pulumi.StringPtrInput `pulumi:"imageComponentName"`
	// A regex string to filter results by Image Component name.
	NameRegex  pulumi.StringPtrInput `pulumi:"nameRegex"`
	OutputFile pulumi.StringPtrInput `pulumi:"outputFile"`
	// The type of the image component.
	Owner pulumi.StringPtrInput `pulumi:"owner"`
	// The ID of the resource group.
	ResourceGroupId pulumi.StringPtrInput `pulumi:"resourceGroupId"`
	// List of label key-value pairs.
	Tags pulumi.MapInput `pulumi:"tags"`
}

A collection of arguments for invoking getEcsImageComponents.

func (GetEcsImageComponentsOutputArgs) ElementType

type GetEcsImageComponentsResult

type GetEcsImageComponentsResult struct {
	Components []GetEcsImageComponentsComponent `pulumi:"components"`
	// The provider-assigned unique ID for this managed resource.
	Id                 string                 `pulumi:"id"`
	Ids                []string               `pulumi:"ids"`
	ImageComponentName *string                `pulumi:"imageComponentName"`
	NameRegex          *string                `pulumi:"nameRegex"`
	Names              []string               `pulumi:"names"`
	OutputFile         *string                `pulumi:"outputFile"`
	Owner              *string                `pulumi:"owner"`
	ResourceGroupId    *string                `pulumi:"resourceGroupId"`
	Tags               map[string]interface{} `pulumi:"tags"`
}

A collection of values returned by getEcsImageComponents.

func GetEcsImageComponents

func GetEcsImageComponents(ctx *pulumi.Context, args *GetEcsImageComponentsArgs, opts ...pulumi.InvokeOption) (*GetEcsImageComponentsResult, error)

This data source provides the Ecs Image Components of the current Alibaba Cloud user.

> **NOTE:** Available in v1.159.0+.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/go/alicloud/ecs"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		ids, err := ecs.GetEcsImageComponents(ctx, &ecs.GetEcsImageComponentsArgs{
			Ids: []string{
				"example_id",
			},
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("ecsImageComponentId1", ids.Components[0].Id)
		nameRegex, err := ecs.GetEcsImageComponents(ctx, &ecs.GetEcsImageComponentsArgs{
			NameRegex: pulumi.StringRef("^my-ImageComponent"),
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("ecsImageComponentId2", nameRegex.Components[0].Id)
		return nil
	})
}

```

type GetEcsImageComponentsResultOutput

type GetEcsImageComponentsResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getEcsImageComponents.

func (GetEcsImageComponentsResultOutput) Components

func (GetEcsImageComponentsResultOutput) ElementType

func (GetEcsImageComponentsResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetEcsImageComponentsResultOutput) Ids

func (GetEcsImageComponentsResultOutput) ImageComponentName

func (GetEcsImageComponentsResultOutput) NameRegex

func (GetEcsImageComponentsResultOutput) Names

func (GetEcsImageComponentsResultOutput) OutputFile

func (GetEcsImageComponentsResultOutput) Owner

func (GetEcsImageComponentsResultOutput) ResourceGroupId

func (GetEcsImageComponentsResultOutput) Tags

func (GetEcsImageComponentsResultOutput) ToGetEcsImageComponentsResultOutput

func (o GetEcsImageComponentsResultOutput) ToGetEcsImageComponentsResultOutput() GetEcsImageComponentsResultOutput

func (GetEcsImageComponentsResultOutput) ToGetEcsImageComponentsResultOutputWithContext

func (o GetEcsImageComponentsResultOutput) ToGetEcsImageComponentsResultOutputWithContext(ctx context.Context) GetEcsImageComponentsResultOutput

type GetEcsImagePipelinePipeline

type GetEcsImagePipelinePipeline struct {
	// The IDs of Alibaba Cloud accounts to which the image was shared.
	AddAccounts []string `pulumi:"addAccounts"`
	// The source image.
	BaseImage string `pulumi:"baseImage"`
	// The type of the source image.
	BaseImageType string `pulumi:"baseImageType"`
	// The content of the image template.
	BuildContent string `pulumi:"buildContent"`
	// The time when the image template was created.
	CreationTime string `pulumi:"creationTime"`
	// Indicates whether the intermediate instance was released when the image failed to be created.
	DeleteInstanceOnFailure bool `pulumi:"deleteInstanceOnFailure"`
	// The description of the image template.
	Description string `pulumi:"description"`
	// The ID of the Image Pipeline.
	Id string `pulumi:"id"`
	// The name prefix of the created image.
	ImageName string `pulumi:"imageName"`
	// The ID of the image template.
	ImagePipelineId string `pulumi:"imagePipelineId"`
	// The instance type of the intermediate instance.
	InstanceType string `pulumi:"instanceType"`
	// The size of the outbound public bandwidth for the intermediate instance. Unit: `Mbit/s`.
	InternetMaxBandwidthOut int `pulumi:"internetMaxBandwidthOut"`
	// The name of the image template.
	Name string `pulumi:"name"`
	// The ID of the resource group to which the image template belongs.
	ResourceGroupId string `pulumi:"resourceGroupId"`
	// The system disk size of the intermediate instance. Unit: `GiB`.
	SystemDiskSize int `pulumi:"systemDiskSize"`
	// A mapping of tags to assign to the resource.
	Tags map[string]interface{} `pulumi:"tags"`
	// The IDs of regions to which to distribute the created image.
	ToRegionIds []string `pulumi:"toRegionIds"`
	// The vswitch id.
	VswitchId string `pulumi:"vswitchId"`
}

type GetEcsImagePipelinePipelineArgs

type GetEcsImagePipelinePipelineArgs struct {
	// The IDs of Alibaba Cloud accounts to which the image was shared.
	AddAccounts pulumi.StringArrayInput `pulumi:"addAccounts"`
	// The source image.
	BaseImage pulumi.StringInput `pulumi:"baseImage"`
	// The type of the source image.
	BaseImageType pulumi.StringInput `pulumi:"baseImageType"`
	// The content of the image template.
	BuildContent pulumi.StringInput `pulumi:"buildContent"`
	// The time when the image template was created.
	CreationTime pulumi.StringInput `pulumi:"creationTime"`
	// Indicates whether the intermediate instance was released when the image failed to be created.
	DeleteInstanceOnFailure pulumi.BoolInput `pulumi:"deleteInstanceOnFailure"`
	// The description of the image template.
	Description pulumi.StringInput `pulumi:"description"`
	// The ID of the Image Pipeline.
	Id pulumi.StringInput `pulumi:"id"`
	// The name prefix of the created image.
	ImageName pulumi.StringInput `pulumi:"imageName"`
	// The ID of the image template.
	ImagePipelineId pulumi.StringInput `pulumi:"imagePipelineId"`
	// The instance type of the intermediate instance.
	InstanceType pulumi.StringInput `pulumi:"instanceType"`
	// The size of the outbound public bandwidth for the intermediate instance. Unit: `Mbit/s`.
	InternetMaxBandwidthOut pulumi.IntInput `pulumi:"internetMaxBandwidthOut"`
	// The name of the image template.
	Name pulumi.StringInput `pulumi:"name"`
	// The ID of the resource group to which the image template belongs.
	ResourceGroupId pulumi.StringInput `pulumi:"resourceGroupId"`
	// The system disk size of the intermediate instance. Unit: `GiB`.
	SystemDiskSize pulumi.IntInput `pulumi:"systemDiskSize"`
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapInput `pulumi:"tags"`
	// The IDs of regions to which to distribute the created image.
	ToRegionIds pulumi.StringArrayInput `pulumi:"toRegionIds"`
	// The vswitch id.
	VswitchId pulumi.StringInput `pulumi:"vswitchId"`
}

func (GetEcsImagePipelinePipelineArgs) ElementType

func (GetEcsImagePipelinePipelineArgs) ToGetEcsImagePipelinePipelineOutput

func (i GetEcsImagePipelinePipelineArgs) ToGetEcsImagePipelinePipelineOutput() GetEcsImagePipelinePipelineOutput

func (GetEcsImagePipelinePipelineArgs) ToGetEcsImagePipelinePipelineOutputWithContext

func (i GetEcsImagePipelinePipelineArgs) ToGetEcsImagePipelinePipelineOutputWithContext(ctx context.Context) GetEcsImagePipelinePipelineOutput

type GetEcsImagePipelinePipelineArray

type GetEcsImagePipelinePipelineArray []GetEcsImagePipelinePipelineInput

func (GetEcsImagePipelinePipelineArray) ElementType

func (GetEcsImagePipelinePipelineArray) ToGetEcsImagePipelinePipelineArrayOutput

func (i GetEcsImagePipelinePipelineArray) ToGetEcsImagePipelinePipelineArrayOutput() GetEcsImagePipelinePipelineArrayOutput

func (GetEcsImagePipelinePipelineArray) ToGetEcsImagePipelinePipelineArrayOutputWithContext

func (i GetEcsImagePipelinePipelineArray) ToGetEcsImagePipelinePipelineArrayOutputWithContext(ctx context.Context) GetEcsImagePipelinePipelineArrayOutput

type GetEcsImagePipelinePipelineArrayInput

type GetEcsImagePipelinePipelineArrayInput interface {
	pulumi.Input

	ToGetEcsImagePipelinePipelineArrayOutput() GetEcsImagePipelinePipelineArrayOutput
	ToGetEcsImagePipelinePipelineArrayOutputWithContext(context.Context) GetEcsImagePipelinePipelineArrayOutput
}

GetEcsImagePipelinePipelineArrayInput is an input type that accepts GetEcsImagePipelinePipelineArray and GetEcsImagePipelinePipelineArrayOutput values. You can construct a concrete instance of `GetEcsImagePipelinePipelineArrayInput` via:

GetEcsImagePipelinePipelineArray{ GetEcsImagePipelinePipelineArgs{...} }

type GetEcsImagePipelinePipelineArrayOutput

type GetEcsImagePipelinePipelineArrayOutput struct{ *pulumi.OutputState }

func (GetEcsImagePipelinePipelineArrayOutput) ElementType

func (GetEcsImagePipelinePipelineArrayOutput) Index

func (GetEcsImagePipelinePipelineArrayOutput) ToGetEcsImagePipelinePipelineArrayOutput

func (o GetEcsImagePipelinePipelineArrayOutput) ToGetEcsImagePipelinePipelineArrayOutput() GetEcsImagePipelinePipelineArrayOutput

func (GetEcsImagePipelinePipelineArrayOutput) ToGetEcsImagePipelinePipelineArrayOutputWithContext

func (o GetEcsImagePipelinePipelineArrayOutput) ToGetEcsImagePipelinePipelineArrayOutputWithContext(ctx context.Context) GetEcsImagePipelinePipelineArrayOutput

type GetEcsImagePipelinePipelineInput

type GetEcsImagePipelinePipelineInput interface {
	pulumi.Input

	ToGetEcsImagePipelinePipelineOutput() GetEcsImagePipelinePipelineOutput
	ToGetEcsImagePipelinePipelineOutputWithContext(context.Context) GetEcsImagePipelinePipelineOutput
}

GetEcsImagePipelinePipelineInput is an input type that accepts GetEcsImagePipelinePipelineArgs and GetEcsImagePipelinePipelineOutput values. You can construct a concrete instance of `GetEcsImagePipelinePipelineInput` via:

GetEcsImagePipelinePipelineArgs{...}

type GetEcsImagePipelinePipelineOutput

type GetEcsImagePipelinePipelineOutput struct{ *pulumi.OutputState }

func (GetEcsImagePipelinePipelineOutput) AddAccounts

The IDs of Alibaba Cloud accounts to which the image was shared.

func (GetEcsImagePipelinePipelineOutput) BaseImage

The source image.

func (GetEcsImagePipelinePipelineOutput) BaseImageType

The type of the source image.

func (GetEcsImagePipelinePipelineOutput) BuildContent

The content of the image template.

func (GetEcsImagePipelinePipelineOutput) CreationTime

The time when the image template was created.

func (GetEcsImagePipelinePipelineOutput) DeleteInstanceOnFailure

func (o GetEcsImagePipelinePipelineOutput) DeleteInstanceOnFailure() pulumi.BoolOutput

Indicates whether the intermediate instance was released when the image failed to be created.

func (GetEcsImagePipelinePipelineOutput) Description

The description of the image template.

func (GetEcsImagePipelinePipelineOutput) ElementType

func (GetEcsImagePipelinePipelineOutput) Id

The ID of the Image Pipeline.

func (GetEcsImagePipelinePipelineOutput) ImageName

The name prefix of the created image.

func (GetEcsImagePipelinePipelineOutput) ImagePipelineId

The ID of the image template.

func (GetEcsImagePipelinePipelineOutput) InstanceType

The instance type of the intermediate instance.

func (GetEcsImagePipelinePipelineOutput) InternetMaxBandwidthOut

func (o GetEcsImagePipelinePipelineOutput) InternetMaxBandwidthOut() pulumi.IntOutput

The size of the outbound public bandwidth for the intermediate instance. Unit: `Mbit/s`.

func (GetEcsImagePipelinePipelineOutput) Name

The name of the image template.

func (GetEcsImagePipelinePipelineOutput) ResourceGroupId

The ID of the resource group to which the image template belongs.

func (GetEcsImagePipelinePipelineOutput) SystemDiskSize

The system disk size of the intermediate instance. Unit: `GiB`.

func (GetEcsImagePipelinePipelineOutput) Tags

A mapping of tags to assign to the resource.

func (GetEcsImagePipelinePipelineOutput) ToGetEcsImagePipelinePipelineOutput

func (o GetEcsImagePipelinePipelineOutput) ToGetEcsImagePipelinePipelineOutput() GetEcsImagePipelinePipelineOutput

func (GetEcsImagePipelinePipelineOutput) ToGetEcsImagePipelinePipelineOutputWithContext

func (o GetEcsImagePipelinePipelineOutput) ToGetEcsImagePipelinePipelineOutputWithContext(ctx context.Context) GetEcsImagePipelinePipelineOutput

func (GetEcsImagePipelinePipelineOutput) ToRegionIds

The IDs of regions to which to distribute the created image.

func (GetEcsImagePipelinePipelineOutput) VswitchId

The vswitch id.

type GetEcsInvocationsArgs

type GetEcsInvocationsArgs struct {
	// The ID of the command.
	CommandId *string `pulumi:"commandId"`
	// The encoding mode of the CommandContent and Output response parameters. Valid values: `PlainText`, `Base64`.
	ContentEncoding *string `pulumi:"contentEncoding"`
	// A list of Invocation IDs.
	Ids []string `pulumi:"ids"`
	// The overall execution state of the command. **Note:** We recommend that you ignore this parameter and check the value of the `invocationStatus` response parameter for the overall execution state.
	InvokeStatus *string `pulumi:"invokeStatus"`
	OutputFile   *string `pulumi:"outputFile"`
	PageNumber   *int    `pulumi:"pageNumber"`
	PageSize     *int    `pulumi:"pageSize"`
}

A collection of arguments for invoking getEcsInvocations.

type GetEcsInvocationsInvocation

type GetEcsInvocationsInvocation struct {
	// The Base64-encoded command content.
	CommandContent string `pulumi:"commandContent"`
	// The ID of the command.
	CommandId string `pulumi:"commandId"`
	// The name of the command.
	CommandName string `pulumi:"commandName"`
	// The type of the command.
	CommandType string `pulumi:"commandType"`
	// The creation time of the resource.
	CreateTime string `pulumi:"createTime"`
	// The schedule on which the recurring execution of the command takes place. For information about the value specifications, see [Cron expression](https://www.alibabacloud.com/help/en/elastic-compute-service/latest/cron-expression).
	Frequency string `pulumi:"frequency"`
	// The ID of the Invocation.
	Id string `pulumi:"id"`
	// The ID of the Invocation.
	InvocationId string `pulumi:"invocationId"`
	// The execution state on a single instance. Valid values: `Pending`, `Scheduled`, `Running`, `Success`, `Failed`, `Stopping`, `Stopped`, `PartialFailed`.
	InvocationStatus string `pulumi:"invocationStatus"`
	// Execute target instance set type.
	InvokeInstances []GetEcsInvocationsInvocationInvokeInstance `pulumi:"invokeInstances"`
	// The overall execution state of the command. **Note:** We recommend that you ignore this parameter and check the value of the `invocationStatus` response parameter for the overall execution state.
	InvokeStatus string `pulumi:"invokeStatus"`
	// The custom parameters in the command.
	Parameters string `pulumi:"parameters"`
	// Indicates the execution mode of the command.
	RepeatMode string `pulumi:"repeatMode"`
	// Indicates whether the commands are to be automatically run.
	// * `errorCode	` - The code that indicates why the command failed to be sent or run.
	// * `instanceInvokeStatus	` - **Note:** We recommend that you ignore this parameter and check the value of the `invocationStatus` response parameter for the overall execution state.
	Timed bool `pulumi:"timed"`
	// The username that was used to run the command on the instance.
	Username string `pulumi:"username"`
}

type GetEcsInvocationsInvocationArgs

type GetEcsInvocationsInvocationArgs struct {
	// The Base64-encoded command content.
	CommandContent pulumi.StringInput `pulumi:"commandContent"`
	// The ID of the command.
	CommandId pulumi.StringInput `pulumi:"commandId"`
	// The name of the command.
	CommandName pulumi.StringInput `pulumi:"commandName"`
	// The type of the command.
	CommandType pulumi.StringInput `pulumi:"commandType"`
	// The creation time of the resource.
	CreateTime pulumi.StringInput `pulumi:"createTime"`
	// The schedule on which the recurring execution of the command takes place. For information about the value specifications, see [Cron expression](https://www.alibabacloud.com/help/en/elastic-compute-service/latest/cron-expression).
	Frequency pulumi.StringInput `pulumi:"frequency"`
	// The ID of the Invocation.
	Id pulumi.StringInput `pulumi:"id"`
	// The ID of the Invocation.
	InvocationId pulumi.StringInput `pulumi:"invocationId"`
	// The execution state on a single instance. Valid values: `Pending`, `Scheduled`, `Running`, `Success`, `Failed`, `Stopping`, `Stopped`, `PartialFailed`.
	InvocationStatus pulumi.StringInput `pulumi:"invocationStatus"`
	// Execute target instance set type.
	InvokeInstances GetEcsInvocationsInvocationInvokeInstanceArrayInput `pulumi:"invokeInstances"`
	// The overall execution state of the command. **Note:** We recommend that you ignore this parameter and check the value of the `invocationStatus` response parameter for the overall execution state.
	InvokeStatus pulumi.StringInput `pulumi:"invokeStatus"`
	// The custom parameters in the command.
	Parameters pulumi.StringInput `pulumi:"parameters"`
	// Indicates the execution mode of the command.
	RepeatMode pulumi.StringInput `pulumi:"repeatMode"`
	// Indicates whether the commands are to be automatically run.
	// * `errorCode	` - The code that indicates why the command failed to be sent or run.
	// * `instanceInvokeStatus	` - **Note:** We recommend that you ignore this parameter and check the value of the `invocationStatus` response parameter for the overall execution state.
	Timed pulumi.BoolInput `pulumi:"timed"`
	// The username that was used to run the command on the instance.
	Username pulumi.StringInput `pulumi:"username"`
}

func (GetEcsInvocationsInvocationArgs) ElementType

func (GetEcsInvocationsInvocationArgs) ToGetEcsInvocationsInvocationOutput

func (i GetEcsInvocationsInvocationArgs) ToGetEcsInvocationsInvocationOutput() GetEcsInvocationsInvocationOutput

func (GetEcsInvocationsInvocationArgs) ToGetEcsInvocationsInvocationOutputWithContext

func (i GetEcsInvocationsInvocationArgs) ToGetEcsInvocationsInvocationOutputWithContext(ctx context.Context) GetEcsInvocationsInvocationOutput

type GetEcsInvocationsInvocationArray

type GetEcsInvocationsInvocationArray []GetEcsInvocationsInvocationInput

func (GetEcsInvocationsInvocationArray) ElementType

func (GetEcsInvocationsInvocationArray) ToGetEcsInvocationsInvocationArrayOutput

func (i GetEcsInvocationsInvocationArray) ToGetEcsInvocationsInvocationArrayOutput() GetEcsInvocationsInvocationArrayOutput

func (GetEcsInvocationsInvocationArray) ToGetEcsInvocationsInvocationArrayOutputWithContext

func (i GetEcsInvocationsInvocationArray) ToGetEcsInvocationsInvocationArrayOutputWithContext(ctx context.Context) GetEcsInvocationsInvocationArrayOutput

type GetEcsInvocationsInvocationArrayInput

type GetEcsInvocationsInvocationArrayInput interface {
	pulumi.Input

	ToGetEcsInvocationsInvocationArrayOutput() GetEcsInvocationsInvocationArrayOutput
	ToGetEcsInvocationsInvocationArrayOutputWithContext(context.Context) GetEcsInvocationsInvocationArrayOutput
}

GetEcsInvocationsInvocationArrayInput is an input type that accepts GetEcsInvocationsInvocationArray and GetEcsInvocationsInvocationArrayOutput values. You can construct a concrete instance of `GetEcsInvocationsInvocationArrayInput` via:

GetEcsInvocationsInvocationArray{ GetEcsInvocationsInvocationArgs{...} }

type GetEcsInvocationsInvocationArrayOutput

type GetEcsInvocationsInvocationArrayOutput struct{ *pulumi.OutputState }

func (GetEcsInvocationsInvocationArrayOutput) ElementType

func (GetEcsInvocationsInvocationArrayOutput) Index

func (GetEcsInvocationsInvocationArrayOutput) ToGetEcsInvocationsInvocationArrayOutput

func (o GetEcsInvocationsInvocationArrayOutput) ToGetEcsInvocationsInvocationArrayOutput() GetEcsInvocationsInvocationArrayOutput

func (GetEcsInvocationsInvocationArrayOutput) ToGetEcsInvocationsInvocationArrayOutputWithContext

func (o GetEcsInvocationsInvocationArrayOutput) ToGetEcsInvocationsInvocationArrayOutputWithContext(ctx context.Context) GetEcsInvocationsInvocationArrayOutput

type GetEcsInvocationsInvocationInput

type GetEcsInvocationsInvocationInput interface {
	pulumi.Input

	ToGetEcsInvocationsInvocationOutput() GetEcsInvocationsInvocationOutput
	ToGetEcsInvocationsInvocationOutputWithContext(context.Context) GetEcsInvocationsInvocationOutput
}

GetEcsInvocationsInvocationInput is an input type that accepts GetEcsInvocationsInvocationArgs and GetEcsInvocationsInvocationOutput values. You can construct a concrete instance of `GetEcsInvocationsInvocationInput` via:

GetEcsInvocationsInvocationArgs{...}

type GetEcsInvocationsInvocationInvokeInstance

type GetEcsInvocationsInvocationInvokeInstance struct {
	// The start time of the execution.
	CreationTime string `pulumi:"creationTime"`
	// The size of truncated and discarded text when the value of the Output response parameter exceeds 24 KB in size.
	Dropped   int    `pulumi:"dropped"`
	ErrorCode string `pulumi:"errorCode"`
	// Details about the reason why the command failed to be sent or run.
	ErrorInfo string `pulumi:"errorInfo"`
	// The exit code of the execution.
	ExitCode int `pulumi:"exitCode"`
	// The end time of the execution.
	FinishTime string `pulumi:"finishTime"`
	// The ID of the instance.
	InstanceId           string `pulumi:"instanceId"`
	InstanceInvokeStatus string `pulumi:"instanceInvokeStatus"`
	// The execution state on a single instance. Valid values: `Pending`, `Scheduled`, `Running`, `Success`, `Failed`, `Stopping`, `Stopped`, `PartialFailed`.
	InvocationStatus string `pulumi:"invocationStatus"`
	// The output of the command.
	Output string `pulumi:"output"`
	// The number of times that the command is run on the instance.
	Repeats int `pulumi:"repeats"`
	// The time when the command started to be run on the instance.
	StartTime string `pulumi:"startTime"`
	// The time when the command stopped being run on the instance. If you call the StopInvocation operation to manually stop the execution, the value is the time when you call the operation.
	StopTime string `pulumi:"stopTime"`
	// Indicates whether the commands are to be automatically run.
	// * `errorCode	` - The code that indicates why the command failed to be sent or run.
	// * `instanceInvokeStatus	` - **Note:** We recommend that you ignore this parameter and check the value of the `invocationStatus` response parameter for the overall execution state.
	Timed bool `pulumi:"timed"`
	// The time when the execution state was updated.
	UpdateTime string `pulumi:"updateTime"`
}

type GetEcsInvocationsInvocationInvokeInstanceArgs

type GetEcsInvocationsInvocationInvokeInstanceArgs struct {
	// The start time of the execution.
	CreationTime pulumi.StringInput `pulumi:"creationTime"`
	// The size of truncated and discarded text when the value of the Output response parameter exceeds 24 KB in size.
	Dropped   pulumi.IntInput    `pulumi:"dropped"`
	ErrorCode pulumi.StringInput `pulumi:"errorCode"`
	// Details about the reason why the command failed to be sent or run.
	ErrorInfo pulumi.StringInput `pulumi:"errorInfo"`
	// The exit code of the execution.
	ExitCode pulumi.IntInput `pulumi:"exitCode"`
	// The end time of the execution.
	FinishTime pulumi.StringInput `pulumi:"finishTime"`
	// The ID of the instance.
	InstanceId           pulumi.StringInput `pulumi:"instanceId"`
	InstanceInvokeStatus pulumi.StringInput `pulumi:"instanceInvokeStatus"`
	// The execution state on a single instance. Valid values: `Pending`, `Scheduled`, `Running`, `Success`, `Failed`, `Stopping`, `Stopped`, `PartialFailed`.
	InvocationStatus pulumi.StringInput `pulumi:"invocationStatus"`
	// The output of the command.
	Output pulumi.StringInput `pulumi:"output"`
	// The number of times that the command is run on the instance.
	Repeats pulumi.IntInput `pulumi:"repeats"`
	// The time when the command started to be run on the instance.
	StartTime pulumi.StringInput `pulumi:"startTime"`
	// The time when the command stopped being run on the instance. If you call the StopInvocation operation to manually stop the execution, the value is the time when you call the operation.
	StopTime pulumi.StringInput `pulumi:"stopTime"`
	// Indicates whether the commands are to be automatically run.
	// * `errorCode	` - The code that indicates why the command failed to be sent or run.
	// * `instanceInvokeStatus	` - **Note:** We recommend that you ignore this parameter and check the value of the `invocationStatus` response parameter for the overall execution state.
	Timed pulumi.BoolInput `pulumi:"timed"`
	// The time when the execution state was updated.
	UpdateTime pulumi.StringInput `pulumi:"updateTime"`
}

func (GetEcsInvocationsInvocationInvokeInstanceArgs) ElementType

func (GetEcsInvocationsInvocationInvokeInstanceArgs) ToGetEcsInvocationsInvocationInvokeInstanceOutput

func (i GetEcsInvocationsInvocationInvokeInstanceArgs) ToGetEcsInvocationsInvocationInvokeInstanceOutput() GetEcsInvocationsInvocationInvokeInstanceOutput

func (GetEcsInvocationsInvocationInvokeInstanceArgs) ToGetEcsInvocationsInvocationInvokeInstanceOutputWithContext

func (i GetEcsInvocationsInvocationInvokeInstanceArgs) ToGetEcsInvocationsInvocationInvokeInstanceOutputWithContext(ctx context.Context) GetEcsInvocationsInvocationInvokeInstanceOutput

type GetEcsInvocationsInvocationInvokeInstanceArray

type GetEcsInvocationsInvocationInvokeInstanceArray []GetEcsInvocationsInvocationInvokeInstanceInput

func (GetEcsInvocationsInvocationInvokeInstanceArray) ElementType

func (GetEcsInvocationsInvocationInvokeInstanceArray) ToGetEcsInvocationsInvocationInvokeInstanceArrayOutput

func (i GetEcsInvocationsInvocationInvokeInstanceArray) ToGetEcsInvocationsInvocationInvokeInstanceArrayOutput() GetEcsInvocationsInvocationInvokeInstanceArrayOutput

func (GetEcsInvocationsInvocationInvokeInstanceArray) ToGetEcsInvocationsInvocationInvokeInstanceArrayOutputWithContext

func (i GetEcsInvocationsInvocationInvokeInstanceArray) ToGetEcsInvocationsInvocationInvokeInstanceArrayOutputWithContext(ctx context.Context) GetEcsInvocationsInvocationInvokeInstanceArrayOutput

type GetEcsInvocationsInvocationInvokeInstanceArrayInput

type GetEcsInvocationsInvocationInvokeInstanceArrayInput interface {
	pulumi.Input

	ToGetEcsInvocationsInvocationInvokeInstanceArrayOutput() GetEcsInvocationsInvocationInvokeInstanceArrayOutput
	ToGetEcsInvocationsInvocationInvokeInstanceArrayOutputWithContext(context.Context) GetEcsInvocationsInvocationInvokeInstanceArrayOutput
}

GetEcsInvocationsInvocationInvokeInstanceArrayInput is an input type that accepts GetEcsInvocationsInvocationInvokeInstanceArray and GetEcsInvocationsInvocationInvokeInstanceArrayOutput values. You can construct a concrete instance of `GetEcsInvocationsInvocationInvokeInstanceArrayInput` via:

GetEcsInvocationsInvocationInvokeInstanceArray{ GetEcsInvocationsInvocationInvokeInstanceArgs{...} }

type GetEcsInvocationsInvocationInvokeInstanceArrayOutput

type GetEcsInvocationsInvocationInvokeInstanceArrayOutput struct{ *pulumi.OutputState }

func (GetEcsInvocationsInvocationInvokeInstanceArrayOutput) ElementType

func (GetEcsInvocationsInvocationInvokeInstanceArrayOutput) Index

func (GetEcsInvocationsInvocationInvokeInstanceArrayOutput) ToGetEcsInvocationsInvocationInvokeInstanceArrayOutput

func (GetEcsInvocationsInvocationInvokeInstanceArrayOutput) ToGetEcsInvocationsInvocationInvokeInstanceArrayOutputWithContext

func (o GetEcsInvocationsInvocationInvokeInstanceArrayOutput) ToGetEcsInvocationsInvocationInvokeInstanceArrayOutputWithContext(ctx context.Context) GetEcsInvocationsInvocationInvokeInstanceArrayOutput

type GetEcsInvocationsInvocationInvokeInstanceInput

type GetEcsInvocationsInvocationInvokeInstanceInput interface {
	pulumi.Input

	ToGetEcsInvocationsInvocationInvokeInstanceOutput() GetEcsInvocationsInvocationInvokeInstanceOutput
	ToGetEcsInvocationsInvocationInvokeInstanceOutputWithContext(context.Context) GetEcsInvocationsInvocationInvokeInstanceOutput
}

GetEcsInvocationsInvocationInvokeInstanceInput is an input type that accepts GetEcsInvocationsInvocationInvokeInstanceArgs and GetEcsInvocationsInvocationInvokeInstanceOutput values. You can construct a concrete instance of `GetEcsInvocationsInvocationInvokeInstanceInput` via:

GetEcsInvocationsInvocationInvokeInstanceArgs{...}

type GetEcsInvocationsInvocationInvokeInstanceOutput

type GetEcsInvocationsInvocationInvokeInstanceOutput struct{ *pulumi.OutputState }

func (GetEcsInvocationsInvocationInvokeInstanceOutput) CreationTime

The start time of the execution.

func (GetEcsInvocationsInvocationInvokeInstanceOutput) Dropped

The size of truncated and discarded text when the value of the Output response parameter exceeds 24 KB in size.

func (GetEcsInvocationsInvocationInvokeInstanceOutput) ElementType

func (GetEcsInvocationsInvocationInvokeInstanceOutput) ErrorCode

func (GetEcsInvocationsInvocationInvokeInstanceOutput) ErrorInfo

Details about the reason why the command failed to be sent or run.

func (GetEcsInvocationsInvocationInvokeInstanceOutput) ExitCode

The exit code of the execution.

func (GetEcsInvocationsInvocationInvokeInstanceOutput) FinishTime

The end time of the execution.

func (GetEcsInvocationsInvocationInvokeInstanceOutput) InstanceId

The ID of the instance.

func (GetEcsInvocationsInvocationInvokeInstanceOutput) InstanceInvokeStatus

func (GetEcsInvocationsInvocationInvokeInstanceOutput) InvocationStatus

The execution state on a single instance. Valid values: `Pending`, `Scheduled`, `Running`, `Success`, `Failed`, `Stopping`, `Stopped`, `PartialFailed`.

func (GetEcsInvocationsInvocationInvokeInstanceOutput) Output

The output of the command.

func (GetEcsInvocationsInvocationInvokeInstanceOutput) Repeats

The number of times that the command is run on the instance.

func (GetEcsInvocationsInvocationInvokeInstanceOutput) StartTime

The time when the command started to be run on the instance.

func (GetEcsInvocationsInvocationInvokeInstanceOutput) StopTime

The time when the command stopped being run on the instance. If you call the StopInvocation operation to manually stop the execution, the value is the time when you call the operation.

func (GetEcsInvocationsInvocationInvokeInstanceOutput) Timed

Indicates whether the commands are to be automatically run. * `errorCode ` - The code that indicates why the command failed to be sent or run. * `instanceInvokeStatus ` - **Note:** We recommend that you ignore this parameter and check the value of the `invocationStatus` response parameter for the overall execution state.

func (GetEcsInvocationsInvocationInvokeInstanceOutput) ToGetEcsInvocationsInvocationInvokeInstanceOutput

func (o GetEcsInvocationsInvocationInvokeInstanceOutput) ToGetEcsInvocationsInvocationInvokeInstanceOutput() GetEcsInvocationsInvocationInvokeInstanceOutput

func (GetEcsInvocationsInvocationInvokeInstanceOutput) ToGetEcsInvocationsInvocationInvokeInstanceOutputWithContext

func (o GetEcsInvocationsInvocationInvokeInstanceOutput) ToGetEcsInvocationsInvocationInvokeInstanceOutputWithContext(ctx context.Context) GetEcsInvocationsInvocationInvokeInstanceOutput

func (GetEcsInvocationsInvocationInvokeInstanceOutput) UpdateTime

The time when the execution state was updated.

type GetEcsInvocationsInvocationOutput

type GetEcsInvocationsInvocationOutput struct{ *pulumi.OutputState }

func (GetEcsInvocationsInvocationOutput) CommandContent

The Base64-encoded command content.

func (GetEcsInvocationsInvocationOutput) CommandId

The ID of the command.

func (GetEcsInvocationsInvocationOutput) CommandName

The name of the command.

func (GetEcsInvocationsInvocationOutput) CommandType

The type of the command.

func (GetEcsInvocationsInvocationOutput) CreateTime

The creation time of the resource.

func (GetEcsInvocationsInvocationOutput) ElementType

func (GetEcsInvocationsInvocationOutput) Frequency

The schedule on which the recurring execution of the command takes place. For information about the value specifications, see [Cron expression](https://www.alibabacloud.com/help/en/elastic-compute-service/latest/cron-expression).

func (GetEcsInvocationsInvocationOutput) Id

The ID of the Invocation.

func (GetEcsInvocationsInvocationOutput) InvocationId

The ID of the Invocation.

func (GetEcsInvocationsInvocationOutput) InvocationStatus

The execution state on a single instance. Valid values: `Pending`, `Scheduled`, `Running`, `Success`, `Failed`, `Stopping`, `Stopped`, `PartialFailed`.

func (GetEcsInvocationsInvocationOutput) InvokeInstances

Execute target instance set type.

func (GetEcsInvocationsInvocationOutput) InvokeStatus

The overall execution state of the command. **Note:** We recommend that you ignore this parameter and check the value of the `invocationStatus` response parameter for the overall execution state.

func (GetEcsInvocationsInvocationOutput) Parameters

The custom parameters in the command.

func (GetEcsInvocationsInvocationOutput) RepeatMode

Indicates the execution mode of the command.

func (GetEcsInvocationsInvocationOutput) Timed

Indicates whether the commands are to be automatically run. * `errorCode ` - The code that indicates why the command failed to be sent or run. * `instanceInvokeStatus ` - **Note:** We recommend that you ignore this parameter and check the value of the `invocationStatus` response parameter for the overall execution state.

func (GetEcsInvocationsInvocationOutput) ToGetEcsInvocationsInvocationOutput

func (o GetEcsInvocationsInvocationOutput) ToGetEcsInvocationsInvocationOutput() GetEcsInvocationsInvocationOutput

func (GetEcsInvocationsInvocationOutput) ToGetEcsInvocationsInvocationOutputWithContext

func (o GetEcsInvocationsInvocationOutput) ToGetEcsInvocationsInvocationOutputWithContext(ctx context.Context) GetEcsInvocationsInvocationOutput

func (GetEcsInvocationsInvocationOutput) Username

The username that was used to run the command on the instance.

type GetEcsInvocationsOutputArgs

type GetEcsInvocationsOutputArgs struct {
	// The ID of the command.
	CommandId pulumi.StringPtrInput `pulumi:"commandId"`
	// The encoding mode of the CommandContent and Output response parameters. Valid values: `PlainText`, `Base64`.
	ContentEncoding pulumi.StringPtrInput `pulumi:"contentEncoding"`
	// A list of Invocation IDs.
	Ids pulumi.StringArrayInput `pulumi:"ids"`
	// The overall execution state of the command. **Note:** We recommend that you ignore this parameter and check the value of the `invocationStatus` response parameter for the overall execution state.
	InvokeStatus pulumi.StringPtrInput `pulumi:"invokeStatus"`
	OutputFile   pulumi.StringPtrInput `pulumi:"outputFile"`
	PageNumber   pulumi.IntPtrInput    `pulumi:"pageNumber"`
	PageSize     pulumi.IntPtrInput    `pulumi:"pageSize"`
}

A collection of arguments for invoking getEcsInvocations.

func (GetEcsInvocationsOutputArgs) ElementType

type GetEcsInvocationsResult

type GetEcsInvocationsResult struct {
	CommandId       *string `pulumi:"commandId"`
	ContentEncoding *string `pulumi:"contentEncoding"`
	// The provider-assigned unique ID for this managed resource.
	Id           string                        `pulumi:"id"`
	Ids          []string                      `pulumi:"ids"`
	Invocations  []GetEcsInvocationsInvocation `pulumi:"invocations"`
	InvokeStatus *string                       `pulumi:"invokeStatus"`
	OutputFile   *string                       `pulumi:"outputFile"`
	PageNumber   *int                          `pulumi:"pageNumber"`
	PageSize     *int                          `pulumi:"pageSize"`
}

A collection of values returned by getEcsInvocations.

func GetEcsInvocations

func GetEcsInvocations(ctx *pulumi.Context, args *GetEcsInvocationsArgs, opts ...pulumi.InvokeOption) (*GetEcsInvocationsResult, error)

This data source provides the Ecs Invocations of the current Alibaba Cloud user.

> **NOTE:** Available in v1.168.0+.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/go/alicloud/ecs"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		ids, err := ecs.GetEcsInvocations(ctx, &ecs.GetEcsInvocationsArgs{
			Ids: []string{
				"example-id",
			},
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("ecsInvocationId1", ids.Invocations[0].Id)
		return nil
	})
}

```

type GetEcsInvocationsResultOutput

type GetEcsInvocationsResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getEcsInvocations.

func (GetEcsInvocationsResultOutput) CommandId

func (GetEcsInvocationsResultOutput) ContentEncoding

func (GetEcsInvocationsResultOutput) ElementType

func (GetEcsInvocationsResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetEcsInvocationsResultOutput) Ids

func (GetEcsInvocationsResultOutput) Invocations

func (GetEcsInvocationsResultOutput) InvokeStatus

func (GetEcsInvocationsResultOutput) OutputFile

func (GetEcsInvocationsResultOutput) PageNumber

func (GetEcsInvocationsResultOutput) PageSize

func (GetEcsInvocationsResultOutput) ToGetEcsInvocationsResultOutput

func (o GetEcsInvocationsResultOutput) ToGetEcsInvocationsResultOutput() GetEcsInvocationsResultOutput

func (GetEcsInvocationsResultOutput) ToGetEcsInvocationsResultOutputWithContext

func (o GetEcsInvocationsResultOutput) ToGetEcsInvocationsResultOutputWithContext(ctx context.Context) GetEcsInvocationsResultOutput

type GetEcsKeyPairsArgs

type GetEcsKeyPairsArgs struct {
	// The finger print of the key pair.
	FingerPrint *string `pulumi:"fingerPrint"`
	// A list of Key Pair IDs.
	Ids []string `pulumi:"ids"`
	// A regex string to filter results by Key Pair name.
	NameRegex  *string `pulumi:"nameRegex"`
	OutputFile *string `pulumi:"outputFile"`
	// The Resource Group Id.
	ResourceGroupId *string `pulumi:"resourceGroupId"`
	// The tags.
	Tags map[string]interface{} `pulumi:"tags"`
}

A collection of arguments for invoking getEcsKeyPairs.

type GetEcsKeyPairsKeyPair

type GetEcsKeyPairsKeyPair struct {
	// The finger print of the key pair.
	FingerPrint string `pulumi:"fingerPrint"`
	// The ID of the Key Pair.
	Id string `pulumi:"id"`
	// A list of ECS instances that has been bound this key pair.
	Instances []GetEcsKeyPairsKeyPairInstance `pulumi:"instances"`
	// The Key Pair Name.
	KeyName     string `pulumi:"keyName"`
	KeyPairName string `pulumi:"keyPairName"`
	// The Resource Group Id.
	ResourceGroupId string `pulumi:"resourceGroupId"`
	// The tags.
	Tags map[string]interface{} `pulumi:"tags"`
}

type GetEcsKeyPairsKeyPairArgs

type GetEcsKeyPairsKeyPairArgs struct {
	// The finger print of the key pair.
	FingerPrint pulumi.StringInput `pulumi:"fingerPrint"`
	// The ID of the Key Pair.
	Id pulumi.StringInput `pulumi:"id"`
	// A list of ECS instances that has been bound this key pair.
	Instances GetEcsKeyPairsKeyPairInstanceArrayInput `pulumi:"instances"`
	// The Key Pair Name.
	KeyName     pulumi.StringInput `pulumi:"keyName"`
	KeyPairName pulumi.StringInput `pulumi:"keyPairName"`
	// The Resource Group Id.
	ResourceGroupId pulumi.StringInput `pulumi:"resourceGroupId"`
	// The tags.
	Tags pulumi.MapInput `pulumi:"tags"`
}

func (GetEcsKeyPairsKeyPairArgs) ElementType

func (GetEcsKeyPairsKeyPairArgs) ElementType() reflect.Type

func (GetEcsKeyPairsKeyPairArgs) ToGetEcsKeyPairsKeyPairOutput

func (i GetEcsKeyPairsKeyPairArgs) ToGetEcsKeyPairsKeyPairOutput() GetEcsKeyPairsKeyPairOutput

func (GetEcsKeyPairsKeyPairArgs) ToGetEcsKeyPairsKeyPairOutputWithContext

func (i GetEcsKeyPairsKeyPairArgs) ToGetEcsKeyPairsKeyPairOutputWithContext(ctx context.Context) GetEcsKeyPairsKeyPairOutput

type GetEcsKeyPairsKeyPairArray

type GetEcsKeyPairsKeyPairArray []GetEcsKeyPairsKeyPairInput

func (GetEcsKeyPairsKeyPairArray) ElementType

func (GetEcsKeyPairsKeyPairArray) ElementType() reflect.Type

func (GetEcsKeyPairsKeyPairArray) ToGetEcsKeyPairsKeyPairArrayOutput

func (i GetEcsKeyPairsKeyPairArray) ToGetEcsKeyPairsKeyPairArrayOutput() GetEcsKeyPairsKeyPairArrayOutput

func (GetEcsKeyPairsKeyPairArray) ToGetEcsKeyPairsKeyPairArrayOutputWithContext

func (i GetEcsKeyPairsKeyPairArray) ToGetEcsKeyPairsKeyPairArrayOutputWithContext(ctx context.Context) GetEcsKeyPairsKeyPairArrayOutput

type GetEcsKeyPairsKeyPairArrayInput

type GetEcsKeyPairsKeyPairArrayInput interface {
	pulumi.Input

	ToGetEcsKeyPairsKeyPairArrayOutput() GetEcsKeyPairsKeyPairArrayOutput
	ToGetEcsKeyPairsKeyPairArrayOutputWithContext(context.Context) GetEcsKeyPairsKeyPairArrayOutput
}

GetEcsKeyPairsKeyPairArrayInput is an input type that accepts GetEcsKeyPairsKeyPairArray and GetEcsKeyPairsKeyPairArrayOutput values. You can construct a concrete instance of `GetEcsKeyPairsKeyPairArrayInput` via:

GetEcsKeyPairsKeyPairArray{ GetEcsKeyPairsKeyPairArgs{...} }

type GetEcsKeyPairsKeyPairArrayOutput

type GetEcsKeyPairsKeyPairArrayOutput struct{ *pulumi.OutputState }

func (GetEcsKeyPairsKeyPairArrayOutput) ElementType

func (GetEcsKeyPairsKeyPairArrayOutput) Index

func (GetEcsKeyPairsKeyPairArrayOutput) ToGetEcsKeyPairsKeyPairArrayOutput

func (o GetEcsKeyPairsKeyPairArrayOutput) ToGetEcsKeyPairsKeyPairArrayOutput() GetEcsKeyPairsKeyPairArrayOutput

func (GetEcsKeyPairsKeyPairArrayOutput) ToGetEcsKeyPairsKeyPairArrayOutputWithContext

func (o GetEcsKeyPairsKeyPairArrayOutput) ToGetEcsKeyPairsKeyPairArrayOutputWithContext(ctx context.Context) GetEcsKeyPairsKeyPairArrayOutput

type GetEcsKeyPairsKeyPairInput

type GetEcsKeyPairsKeyPairInput interface {
	pulumi.Input

	ToGetEcsKeyPairsKeyPairOutput() GetEcsKeyPairsKeyPairOutput
	ToGetEcsKeyPairsKeyPairOutputWithContext(context.Context) GetEcsKeyPairsKeyPairOutput
}

GetEcsKeyPairsKeyPairInput is an input type that accepts GetEcsKeyPairsKeyPairArgs and GetEcsKeyPairsKeyPairOutput values. You can construct a concrete instance of `GetEcsKeyPairsKeyPairInput` via:

GetEcsKeyPairsKeyPairArgs{...}

type GetEcsKeyPairsKeyPairInstance

type GetEcsKeyPairsKeyPairInstance struct {
	// The ID of the availability zone where the ECS instance is located.
	AvailabilityZone string `pulumi:"availabilityZone"`
	Description      string `pulumi:"description"`
	ImageId          string `pulumi:"imageId"`
	// The ID of the ECS instance.
	InstanceId string `pulumi:"instanceId"`
	// The name of the ECS instance.
	InstanceName string `pulumi:"instanceName"`
	InstanceType string `pulumi:"instanceType"`
	// The Key Pair Name.
	KeyName string `pulumi:"keyName"`
	// The private IP address of the ECS instance.
	PrivateIp string `pulumi:"privateIp"`
	// The public IP address or EIP of the ECS instance.
	PublicIp string `pulumi:"publicIp"`
	RegionId string `pulumi:"regionId"`
	Status   string `pulumi:"status"`
	// The ID of the VSwitch attached to the ECS instance.
	VswitchId string `pulumi:"vswitchId"`
}

type GetEcsKeyPairsKeyPairInstanceArgs

type GetEcsKeyPairsKeyPairInstanceArgs struct {
	// The ID of the availability zone where the ECS instance is located.
	AvailabilityZone pulumi.StringInput `pulumi:"availabilityZone"`
	Description      pulumi.StringInput `pulumi:"description"`
	ImageId          pulumi.StringInput `pulumi:"imageId"`
	// The ID of the ECS instance.
	InstanceId pulumi.StringInput `pulumi:"instanceId"`
	// The name of the ECS instance.
	InstanceName pulumi.StringInput `pulumi:"instanceName"`
	InstanceType pulumi.StringInput `pulumi:"instanceType"`
	// The Key Pair Name.
	KeyName pulumi.StringInput `pulumi:"keyName"`
	// The private IP address of the ECS instance.
	PrivateIp pulumi.StringInput `pulumi:"privateIp"`
	// The public IP address or EIP of the ECS instance.
	PublicIp pulumi.StringInput `pulumi:"publicIp"`
	RegionId pulumi.StringInput `pulumi:"regionId"`
	Status   pulumi.StringInput `pulumi:"status"`
	// The ID of the VSwitch attached to the ECS instance.
	VswitchId pulumi.StringInput `pulumi:"vswitchId"`
}

func (GetEcsKeyPairsKeyPairInstanceArgs) ElementType

func (GetEcsKeyPairsKeyPairInstanceArgs) ToGetEcsKeyPairsKeyPairInstanceOutput

func (i GetEcsKeyPairsKeyPairInstanceArgs) ToGetEcsKeyPairsKeyPairInstanceOutput() GetEcsKeyPairsKeyPairInstanceOutput

func (GetEcsKeyPairsKeyPairInstanceArgs) ToGetEcsKeyPairsKeyPairInstanceOutputWithContext

func (i GetEcsKeyPairsKeyPairInstanceArgs) ToGetEcsKeyPairsKeyPairInstanceOutputWithContext(ctx context.Context) GetEcsKeyPairsKeyPairInstanceOutput

type GetEcsKeyPairsKeyPairInstanceArray

type GetEcsKeyPairsKeyPairInstanceArray []GetEcsKeyPairsKeyPairInstanceInput

func (GetEcsKeyPairsKeyPairInstanceArray) ElementType

func (GetEcsKeyPairsKeyPairInstanceArray) ToGetEcsKeyPairsKeyPairInstanceArrayOutput

func (i GetEcsKeyPairsKeyPairInstanceArray) ToGetEcsKeyPairsKeyPairInstanceArrayOutput() GetEcsKeyPairsKeyPairInstanceArrayOutput

func (GetEcsKeyPairsKeyPairInstanceArray) ToGetEcsKeyPairsKeyPairInstanceArrayOutputWithContext

func (i GetEcsKeyPairsKeyPairInstanceArray) ToGetEcsKeyPairsKeyPairInstanceArrayOutputWithContext(ctx context.Context) GetEcsKeyPairsKeyPairInstanceArrayOutput

type GetEcsKeyPairsKeyPairInstanceArrayInput

type GetEcsKeyPairsKeyPairInstanceArrayInput interface {
	pulumi.Input

	ToGetEcsKeyPairsKeyPairInstanceArrayOutput() GetEcsKeyPairsKeyPairInstanceArrayOutput
	ToGetEcsKeyPairsKeyPairInstanceArrayOutputWithContext(context.Context) GetEcsKeyPairsKeyPairInstanceArrayOutput
}

GetEcsKeyPairsKeyPairInstanceArrayInput is an input type that accepts GetEcsKeyPairsKeyPairInstanceArray and GetEcsKeyPairsKeyPairInstanceArrayOutput values. You can construct a concrete instance of `GetEcsKeyPairsKeyPairInstanceArrayInput` via:

GetEcsKeyPairsKeyPairInstanceArray{ GetEcsKeyPairsKeyPairInstanceArgs{...} }

type GetEcsKeyPairsKeyPairInstanceArrayOutput

type GetEcsKeyPairsKeyPairInstanceArrayOutput struct{ *pulumi.OutputState }

func (GetEcsKeyPairsKeyPairInstanceArrayOutput) ElementType

func (GetEcsKeyPairsKeyPairInstanceArrayOutput) Index

func (GetEcsKeyPairsKeyPairInstanceArrayOutput) ToGetEcsKeyPairsKeyPairInstanceArrayOutput

func (o GetEcsKeyPairsKeyPairInstanceArrayOutput) ToGetEcsKeyPairsKeyPairInstanceArrayOutput() GetEcsKeyPairsKeyPairInstanceArrayOutput

func (GetEcsKeyPairsKeyPairInstanceArrayOutput) ToGetEcsKeyPairsKeyPairInstanceArrayOutputWithContext

func (o GetEcsKeyPairsKeyPairInstanceArrayOutput) ToGetEcsKeyPairsKeyPairInstanceArrayOutputWithContext(ctx context.Context) GetEcsKeyPairsKeyPairInstanceArrayOutput

type GetEcsKeyPairsKeyPairInstanceInput

type GetEcsKeyPairsKeyPairInstanceInput interface {
	pulumi.Input

	ToGetEcsKeyPairsKeyPairInstanceOutput() GetEcsKeyPairsKeyPairInstanceOutput
	ToGetEcsKeyPairsKeyPairInstanceOutputWithContext(context.Context) GetEcsKeyPairsKeyPairInstanceOutput
}

GetEcsKeyPairsKeyPairInstanceInput is an input type that accepts GetEcsKeyPairsKeyPairInstanceArgs and GetEcsKeyPairsKeyPairInstanceOutput values. You can construct a concrete instance of `GetEcsKeyPairsKeyPairInstanceInput` via:

GetEcsKeyPairsKeyPairInstanceArgs{...}

type GetEcsKeyPairsKeyPairInstanceOutput

type GetEcsKeyPairsKeyPairInstanceOutput struct{ *pulumi.OutputState }

func (GetEcsKeyPairsKeyPairInstanceOutput) AvailabilityZone

The ID of the availability zone where the ECS instance is located.

func (GetEcsKeyPairsKeyPairInstanceOutput) Description

func (GetEcsKeyPairsKeyPairInstanceOutput) ElementType

func (GetEcsKeyPairsKeyPairInstanceOutput) ImageId

func (GetEcsKeyPairsKeyPairInstanceOutput) InstanceId

The ID of the ECS instance.

func (GetEcsKeyPairsKeyPairInstanceOutput) InstanceName

The name of the ECS instance.

func (GetEcsKeyPairsKeyPairInstanceOutput) InstanceType

func (GetEcsKeyPairsKeyPairInstanceOutput) KeyName

The Key Pair Name.

func (GetEcsKeyPairsKeyPairInstanceOutput) PrivateIp

The private IP address of the ECS instance.

func (GetEcsKeyPairsKeyPairInstanceOutput) PublicIp

The public IP address or EIP of the ECS instance.

func (GetEcsKeyPairsKeyPairInstanceOutput) RegionId

func (GetEcsKeyPairsKeyPairInstanceOutput) Status

func (GetEcsKeyPairsKeyPairInstanceOutput) ToGetEcsKeyPairsKeyPairInstanceOutput

func (o GetEcsKeyPairsKeyPairInstanceOutput) ToGetEcsKeyPairsKeyPairInstanceOutput() GetEcsKeyPairsKeyPairInstanceOutput

func (GetEcsKeyPairsKeyPairInstanceOutput) ToGetEcsKeyPairsKeyPairInstanceOutputWithContext

func (o GetEcsKeyPairsKeyPairInstanceOutput) ToGetEcsKeyPairsKeyPairInstanceOutputWithContext(ctx context.Context) GetEcsKeyPairsKeyPairInstanceOutput

func (GetEcsKeyPairsKeyPairInstanceOutput) VswitchId

The ID of the VSwitch attached to the ECS instance.

type GetEcsKeyPairsKeyPairOutput

type GetEcsKeyPairsKeyPairOutput struct{ *pulumi.OutputState }

func (GetEcsKeyPairsKeyPairOutput) ElementType

func (GetEcsKeyPairsKeyPairOutput) FingerPrint

The finger print of the key pair.

func (GetEcsKeyPairsKeyPairOutput) Id

The ID of the Key Pair.

func (GetEcsKeyPairsKeyPairOutput) Instances

A list of ECS instances that has been bound this key pair.

func (GetEcsKeyPairsKeyPairOutput) KeyName

The Key Pair Name.

func (GetEcsKeyPairsKeyPairOutput) KeyPairName

func (GetEcsKeyPairsKeyPairOutput) ResourceGroupId

func (o GetEcsKeyPairsKeyPairOutput) ResourceGroupId() pulumi.StringOutput

The Resource Group Id.

func (GetEcsKeyPairsKeyPairOutput) Tags

The tags.

func (GetEcsKeyPairsKeyPairOutput) ToGetEcsKeyPairsKeyPairOutput

func (o GetEcsKeyPairsKeyPairOutput) ToGetEcsKeyPairsKeyPairOutput() GetEcsKeyPairsKeyPairOutput

func (GetEcsKeyPairsKeyPairOutput) ToGetEcsKeyPairsKeyPairOutputWithContext

func (o GetEcsKeyPairsKeyPairOutput) ToGetEcsKeyPairsKeyPairOutputWithContext(ctx context.Context) GetEcsKeyPairsKeyPairOutput

type GetEcsKeyPairsOutputArgs

type GetEcsKeyPairsOutputArgs struct {
	// The finger print of the key pair.
	FingerPrint pulumi.StringPtrInput `pulumi:"fingerPrint"`
	// A list of Key Pair IDs.
	Ids pulumi.StringArrayInput `pulumi:"ids"`
	// A regex string to filter results by Key Pair name.
	NameRegex  pulumi.StringPtrInput `pulumi:"nameRegex"`
	OutputFile pulumi.StringPtrInput `pulumi:"outputFile"`
	// The Resource Group Id.
	ResourceGroupId pulumi.StringPtrInput `pulumi:"resourceGroupId"`
	// The tags.
	Tags pulumi.MapInput `pulumi:"tags"`
}

A collection of arguments for invoking getEcsKeyPairs.

func (GetEcsKeyPairsOutputArgs) ElementType

func (GetEcsKeyPairsOutputArgs) ElementType() reflect.Type

type GetEcsKeyPairsPair

type GetEcsKeyPairsPair struct {
	// The finger print of the key pair.
	FingerPrint string `pulumi:"fingerPrint"`
	// The ID of the Key Pair.
	Id string `pulumi:"id"`
	// A list of ECS instances that has been bound this key pair.
	Instances []GetEcsKeyPairsPairInstance `pulumi:"instances"`
	// The Key Pair Name.
	KeyName     string `pulumi:"keyName"`
	KeyPairName string `pulumi:"keyPairName"`
	// The Resource Group Id.
	ResourceGroupId string `pulumi:"resourceGroupId"`
	// The tags.
	Tags map[string]interface{} `pulumi:"tags"`
}

type GetEcsKeyPairsPairArgs

type GetEcsKeyPairsPairArgs struct {
	// The finger print of the key pair.
	FingerPrint pulumi.StringInput `pulumi:"fingerPrint"`
	// The ID of the Key Pair.
	Id pulumi.StringInput `pulumi:"id"`
	// A list of ECS instances that has been bound this key pair.
	Instances GetEcsKeyPairsPairInstanceArrayInput `pulumi:"instances"`
	// The Key Pair Name.
	KeyName     pulumi.StringInput `pulumi:"keyName"`
	KeyPairName pulumi.StringInput `pulumi:"keyPairName"`
	// The Resource Group Id.
	ResourceGroupId pulumi.StringInput `pulumi:"resourceGroupId"`
	// The tags.
	Tags pulumi.MapInput `pulumi:"tags"`
}

func (GetEcsKeyPairsPairArgs) ElementType

func (GetEcsKeyPairsPairArgs) ElementType() reflect.Type

func (GetEcsKeyPairsPairArgs) ToGetEcsKeyPairsPairOutput

func (i GetEcsKeyPairsPairArgs) ToGetEcsKeyPairsPairOutput() GetEcsKeyPairsPairOutput

func (GetEcsKeyPairsPairArgs) ToGetEcsKeyPairsPairOutputWithContext

func (i GetEcsKeyPairsPairArgs) ToGetEcsKeyPairsPairOutputWithContext(ctx context.Context) GetEcsKeyPairsPairOutput

type GetEcsKeyPairsPairArray

type GetEcsKeyPairsPairArray []GetEcsKeyPairsPairInput

func (GetEcsKeyPairsPairArray) ElementType

func (GetEcsKeyPairsPairArray) ElementType() reflect.Type

func (GetEcsKeyPairsPairArray) ToGetEcsKeyPairsPairArrayOutput

func (i GetEcsKeyPairsPairArray) ToGetEcsKeyPairsPairArrayOutput() GetEcsKeyPairsPairArrayOutput

func (GetEcsKeyPairsPairArray) ToGetEcsKeyPairsPairArrayOutputWithContext

func (i GetEcsKeyPairsPairArray) ToGetEcsKeyPairsPairArrayOutputWithContext(ctx context.Context) GetEcsKeyPairsPairArrayOutput

type GetEcsKeyPairsPairArrayInput

type GetEcsKeyPairsPairArrayInput interface {
	pulumi.Input

	ToGetEcsKeyPairsPairArrayOutput() GetEcsKeyPairsPairArrayOutput
	ToGetEcsKeyPairsPairArrayOutputWithContext(context.Context) GetEcsKeyPairsPairArrayOutput
}

GetEcsKeyPairsPairArrayInput is an input type that accepts GetEcsKeyPairsPairArray and GetEcsKeyPairsPairArrayOutput values. You can construct a concrete instance of `GetEcsKeyPairsPairArrayInput` via:

GetEcsKeyPairsPairArray{ GetEcsKeyPairsPairArgs{...} }

type GetEcsKeyPairsPairArrayOutput

type GetEcsKeyPairsPairArrayOutput struct{ *pulumi.OutputState }

func (GetEcsKeyPairsPairArrayOutput) ElementType

func (GetEcsKeyPairsPairArrayOutput) Index

func (GetEcsKeyPairsPairArrayOutput) ToGetEcsKeyPairsPairArrayOutput

func (o GetEcsKeyPairsPairArrayOutput) ToGetEcsKeyPairsPairArrayOutput() GetEcsKeyPairsPairArrayOutput

func (GetEcsKeyPairsPairArrayOutput) ToGetEcsKeyPairsPairArrayOutputWithContext

func (o GetEcsKeyPairsPairArrayOutput) ToGetEcsKeyPairsPairArrayOutputWithContext(ctx context.Context) GetEcsKeyPairsPairArrayOutput

type GetEcsKeyPairsPairInput

type GetEcsKeyPairsPairInput interface {
	pulumi.Input

	ToGetEcsKeyPairsPairOutput() GetEcsKeyPairsPairOutput
	ToGetEcsKeyPairsPairOutputWithContext(context.Context) GetEcsKeyPairsPairOutput
}

GetEcsKeyPairsPairInput is an input type that accepts GetEcsKeyPairsPairArgs and GetEcsKeyPairsPairOutput values. You can construct a concrete instance of `GetEcsKeyPairsPairInput` via:

GetEcsKeyPairsPairArgs{...}

type GetEcsKeyPairsPairInstance

type GetEcsKeyPairsPairInstance struct {
	// The ID of the availability zone where the ECS instance is located.
	AvailabilityZone string `pulumi:"availabilityZone"`
	Description      string `pulumi:"description"`
	ImageId          string `pulumi:"imageId"`
	// The ID of the ECS instance.
	InstanceId string `pulumi:"instanceId"`
	// The name of the ECS instance.
	InstanceName string `pulumi:"instanceName"`
	InstanceType string `pulumi:"instanceType"`
	// The Key Pair Name.
	KeyName string `pulumi:"keyName"`
	// The private IP address of the ECS instance.
	PrivateIp string `pulumi:"privateIp"`
	// The public IP address or EIP of the ECS instance.
	PublicIp string `pulumi:"publicIp"`
	RegionId string `pulumi:"regionId"`
	Status   string `pulumi:"status"`
	// The ID of the VSwitch attached to the ECS instance.
	VswitchId string `pulumi:"vswitchId"`
}

type GetEcsKeyPairsPairInstanceArgs

type GetEcsKeyPairsPairInstanceArgs struct {
	// The ID of the availability zone where the ECS instance is located.
	AvailabilityZone pulumi.StringInput `pulumi:"availabilityZone"`
	Description      pulumi.StringInput `pulumi:"description"`
	ImageId          pulumi.StringInput `pulumi:"imageId"`
	// The ID of the ECS instance.
	InstanceId pulumi.StringInput `pulumi:"instanceId"`
	// The name of the ECS instance.
	InstanceName pulumi.StringInput `pulumi:"instanceName"`
	InstanceType pulumi.StringInput `pulumi:"instanceType"`
	// The Key Pair Name.
	KeyName pulumi.StringInput `pulumi:"keyName"`
	// The private IP address of the ECS instance.
	PrivateIp pulumi.StringInput `pulumi:"privateIp"`
	// The public IP address or EIP of the ECS instance.
	PublicIp pulumi.StringInput `pulumi:"publicIp"`
	RegionId pulumi.StringInput `pulumi:"regionId"`
	Status   pulumi.StringInput `pulumi:"status"`
	// The ID of the VSwitch attached to the ECS instance.
	VswitchId pulumi.StringInput `pulumi:"vswitchId"`
}

func (GetEcsKeyPairsPairInstanceArgs) ElementType

func (GetEcsKeyPairsPairInstanceArgs) ToGetEcsKeyPairsPairInstanceOutput

func (i GetEcsKeyPairsPairInstanceArgs) ToGetEcsKeyPairsPairInstanceOutput() GetEcsKeyPairsPairInstanceOutput

func (GetEcsKeyPairsPairInstanceArgs) ToGetEcsKeyPairsPairInstanceOutputWithContext

func (i GetEcsKeyPairsPairInstanceArgs) ToGetEcsKeyPairsPairInstanceOutputWithContext(ctx context.Context) GetEcsKeyPairsPairInstanceOutput

type GetEcsKeyPairsPairInstanceArray

type GetEcsKeyPairsPairInstanceArray []GetEcsKeyPairsPairInstanceInput

func (GetEcsKeyPairsPairInstanceArray) ElementType

func (GetEcsKeyPairsPairInstanceArray) ToGetEcsKeyPairsPairInstanceArrayOutput

func (i GetEcsKeyPairsPairInstanceArray) ToGetEcsKeyPairsPairInstanceArrayOutput() GetEcsKeyPairsPairInstanceArrayOutput

func (GetEcsKeyPairsPairInstanceArray) ToGetEcsKeyPairsPairInstanceArrayOutputWithContext

func (i GetEcsKeyPairsPairInstanceArray) ToGetEcsKeyPairsPairInstanceArrayOutputWithContext(ctx context.Context) GetEcsKeyPairsPairInstanceArrayOutput

type GetEcsKeyPairsPairInstanceArrayInput

type GetEcsKeyPairsPairInstanceArrayInput interface {
	pulumi.Input

	ToGetEcsKeyPairsPairInstanceArrayOutput() GetEcsKeyPairsPairInstanceArrayOutput
	ToGetEcsKeyPairsPairInstanceArrayOutputWithContext(context.Context) GetEcsKeyPairsPairInstanceArrayOutput
}

GetEcsKeyPairsPairInstanceArrayInput is an input type that accepts GetEcsKeyPairsPairInstanceArray and GetEcsKeyPairsPairInstanceArrayOutput values. You can construct a concrete instance of `GetEcsKeyPairsPairInstanceArrayInput` via:

GetEcsKeyPairsPairInstanceArray{ GetEcsKeyPairsPairInstanceArgs{...} }

type GetEcsKeyPairsPairInstanceArrayOutput

type GetEcsKeyPairsPairInstanceArrayOutput struct{ *pulumi.OutputState }

func (GetEcsKeyPairsPairInstanceArrayOutput) ElementType

func (GetEcsKeyPairsPairInstanceArrayOutput) Index

func (GetEcsKeyPairsPairInstanceArrayOutput) ToGetEcsKeyPairsPairInstanceArrayOutput

func (o GetEcsKeyPairsPairInstanceArrayOutput) ToGetEcsKeyPairsPairInstanceArrayOutput() GetEcsKeyPairsPairInstanceArrayOutput

func (GetEcsKeyPairsPairInstanceArrayOutput) ToGetEcsKeyPairsPairInstanceArrayOutputWithContext

func (o GetEcsKeyPairsPairInstanceArrayOutput) ToGetEcsKeyPairsPairInstanceArrayOutputWithContext(ctx context.Context) GetEcsKeyPairsPairInstanceArrayOutput

type GetEcsKeyPairsPairInstanceInput

type GetEcsKeyPairsPairInstanceInput interface {
	pulumi.Input

	ToGetEcsKeyPairsPairInstanceOutput() GetEcsKeyPairsPairInstanceOutput
	ToGetEcsKeyPairsPairInstanceOutputWithContext(context.Context) GetEcsKeyPairsPairInstanceOutput
}

GetEcsKeyPairsPairInstanceInput is an input type that accepts GetEcsKeyPairsPairInstanceArgs and GetEcsKeyPairsPairInstanceOutput values. You can construct a concrete instance of `GetEcsKeyPairsPairInstanceInput` via:

GetEcsKeyPairsPairInstanceArgs{...}

type GetEcsKeyPairsPairInstanceOutput

type GetEcsKeyPairsPairInstanceOutput struct{ *pulumi.OutputState }

func (GetEcsKeyPairsPairInstanceOutput) AvailabilityZone

The ID of the availability zone where the ECS instance is located.

func (GetEcsKeyPairsPairInstanceOutput) Description

func (GetEcsKeyPairsPairInstanceOutput) ElementType

func (GetEcsKeyPairsPairInstanceOutput) ImageId

func (GetEcsKeyPairsPairInstanceOutput) InstanceId

The ID of the ECS instance.

func (GetEcsKeyPairsPairInstanceOutput) InstanceName

The name of the ECS instance.

func (GetEcsKeyPairsPairInstanceOutput) InstanceType

func (GetEcsKeyPairsPairInstanceOutput) KeyName

The Key Pair Name.

func (GetEcsKeyPairsPairInstanceOutput) PrivateIp

The private IP address of the ECS instance.

func (GetEcsKeyPairsPairInstanceOutput) PublicIp

The public IP address or EIP of the ECS instance.

func (GetEcsKeyPairsPairInstanceOutput) RegionId

func (GetEcsKeyPairsPairInstanceOutput) Status

func (GetEcsKeyPairsPairInstanceOutput) ToGetEcsKeyPairsPairInstanceOutput

func (o GetEcsKeyPairsPairInstanceOutput) ToGetEcsKeyPairsPairInstanceOutput() GetEcsKeyPairsPairInstanceOutput

func (GetEcsKeyPairsPairInstanceOutput) ToGetEcsKeyPairsPairInstanceOutputWithContext

func (o GetEcsKeyPairsPairInstanceOutput) ToGetEcsKeyPairsPairInstanceOutputWithContext(ctx context.Context) GetEcsKeyPairsPairInstanceOutput

func (GetEcsKeyPairsPairInstanceOutput) VswitchId

The ID of the VSwitch attached to the ECS instance.

type GetEcsKeyPairsPairOutput

type GetEcsKeyPairsPairOutput struct{ *pulumi.OutputState }

func (GetEcsKeyPairsPairOutput) ElementType

func (GetEcsKeyPairsPairOutput) ElementType() reflect.Type

func (GetEcsKeyPairsPairOutput) FingerPrint

The finger print of the key pair.

func (GetEcsKeyPairsPairOutput) Id

The ID of the Key Pair.

func (GetEcsKeyPairsPairOutput) Instances

A list of ECS instances that has been bound this key pair.

func (GetEcsKeyPairsPairOutput) KeyName

The Key Pair Name.

func (GetEcsKeyPairsPairOutput) KeyPairName

func (GetEcsKeyPairsPairOutput) ResourceGroupId

func (o GetEcsKeyPairsPairOutput) ResourceGroupId() pulumi.StringOutput

The Resource Group Id.

func (GetEcsKeyPairsPairOutput) Tags

The tags.

func (GetEcsKeyPairsPairOutput) ToGetEcsKeyPairsPairOutput

func (o GetEcsKeyPairsPairOutput) ToGetEcsKeyPairsPairOutput() GetEcsKeyPairsPairOutput

func (GetEcsKeyPairsPairOutput) ToGetEcsKeyPairsPairOutputWithContext

func (o GetEcsKeyPairsPairOutput) ToGetEcsKeyPairsPairOutputWithContext(ctx context.Context) GetEcsKeyPairsPairOutput

type GetEcsKeyPairsResult

type GetEcsKeyPairsResult struct {
	FingerPrint *string `pulumi:"fingerPrint"`
	// The provider-assigned unique ID for this managed resource.
	Id  string   `pulumi:"id"`
	Ids []string `pulumi:"ids"`
	// Deprecated: Field 'key_pairs' has been deprecated from provider version 1.121.0. New field 'pairs' instead.
	KeyPairs        []GetEcsKeyPairsKeyPair `pulumi:"keyPairs"`
	NameRegex       *string                 `pulumi:"nameRegex"`
	Names           []string                `pulumi:"names"`
	OutputFile      *string                 `pulumi:"outputFile"`
	Pairs           []GetEcsKeyPairsPair    `pulumi:"pairs"`
	ResourceGroupId *string                 `pulumi:"resourceGroupId"`
	Tags            map[string]interface{}  `pulumi:"tags"`
}

A collection of values returned by getEcsKeyPairs.

func GetEcsKeyPairs

func GetEcsKeyPairs(ctx *pulumi.Context, args *GetEcsKeyPairsArgs, opts ...pulumi.InvokeOption) (*GetEcsKeyPairsResult, error)

This data source provides the Ecs Key Pairs of the current Alibaba Cloud user.

> **NOTE:** Available in v1.121.0+.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/go/alicloud/ecs"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := ecs.GetEcsKeyPairs(ctx, &ecs.GetEcsKeyPairsArgs{
			Ids: []string{
				"key_pair_name",
			},
			NameRegex: pulumi.StringRef("key_pair_name"),
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("firstEcsKeyPairId", example.Pairs[0].Id)
		return nil
	})
}

```

type GetEcsKeyPairsResultOutput

type GetEcsKeyPairsResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getEcsKeyPairs.

func (GetEcsKeyPairsResultOutput) ElementType

func (GetEcsKeyPairsResultOutput) ElementType() reflect.Type

func (GetEcsKeyPairsResultOutput) FingerPrint

func (GetEcsKeyPairsResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetEcsKeyPairsResultOutput) Ids

func (GetEcsKeyPairsResultOutput) KeyPairs deprecated

Deprecated: Field 'key_pairs' has been deprecated from provider version 1.121.0. New field 'pairs' instead.

func (GetEcsKeyPairsResultOutput) NameRegex

func (GetEcsKeyPairsResultOutput) Names

func (GetEcsKeyPairsResultOutput) OutputFile

func (GetEcsKeyPairsResultOutput) Pairs

func (GetEcsKeyPairsResultOutput) ResourceGroupId

func (GetEcsKeyPairsResultOutput) Tags

func (GetEcsKeyPairsResultOutput) ToGetEcsKeyPairsResultOutput

func (o GetEcsKeyPairsResultOutput) ToGetEcsKeyPairsResultOutput() GetEcsKeyPairsResultOutput

func (GetEcsKeyPairsResultOutput) ToGetEcsKeyPairsResultOutputWithContext

func (o GetEcsKeyPairsResultOutput) ToGetEcsKeyPairsResultOutputWithContext(ctx context.Context) GetEcsKeyPairsResultOutput

type GetEcsLaunchTemplatesArgs

type GetEcsLaunchTemplatesArgs struct {
	// Default to `false`. Set it to `true` can output more details about resource attributes.
	EnableDetails *bool `pulumi:"enableDetails"`
	// A list of Launch Template IDs.
	Ids []string `pulumi:"ids"`
	// The Launch Template Name.
	LaunchTemplateName *string `pulumi:"launchTemplateName"`
	// A regex string to filter results by Launch Template name.
	NameRegex  *string `pulumi:"nameRegex"`
	OutputFile *string `pulumi:"outputFile"`
	// The template resource group id.
	TemplateResourceGroupId *string `pulumi:"templateResourceGroupId"`
	// The template tags.
	TemplateTags map[string]interface{} `pulumi:"templateTags"`
}

A collection of arguments for invoking getEcsLaunchTemplates.

type GetEcsLaunchTemplatesOutputArgs

type GetEcsLaunchTemplatesOutputArgs struct {
	// Default to `false`. Set it to `true` can output more details about resource attributes.
	EnableDetails pulumi.BoolPtrInput `pulumi:"enableDetails"`
	// A list of Launch Template IDs.
	Ids pulumi.StringArrayInput `pulumi:"ids"`
	// The Launch Template Name.
	LaunchTemplateName pulumi.StringPtrInput `pulumi:"launchTemplateName"`
	// A regex string to filter results by Launch Template name.
	NameRegex  pulumi.StringPtrInput `pulumi:"nameRegex"`
	OutputFile pulumi.StringPtrInput `pulumi:"outputFile"`
	// The template resource group id.
	TemplateResourceGroupId pulumi.StringPtrInput `pulumi:"templateResourceGroupId"`
	// The template tags.
	TemplateTags pulumi.MapInput `pulumi:"templateTags"`
}

A collection of arguments for invoking getEcsLaunchTemplates.

func (GetEcsLaunchTemplatesOutputArgs) ElementType

type GetEcsLaunchTemplatesResult

type GetEcsLaunchTemplatesResult struct {
	EnableDetails *bool `pulumi:"enableDetails"`
	// The provider-assigned unique ID for this managed resource.
	Id                      string                          `pulumi:"id"`
	Ids                     []string                        `pulumi:"ids"`
	LaunchTemplateName      *string                         `pulumi:"launchTemplateName"`
	NameRegex               *string                         `pulumi:"nameRegex"`
	Names                   []string                        `pulumi:"names"`
	OutputFile              *string                         `pulumi:"outputFile"`
	TemplateResourceGroupId *string                         `pulumi:"templateResourceGroupId"`
	TemplateTags            map[string]interface{}          `pulumi:"templateTags"`
	Templates               []GetEcsLaunchTemplatesTemplate `pulumi:"templates"`
}

A collection of values returned by getEcsLaunchTemplates.

func GetEcsLaunchTemplates

func GetEcsLaunchTemplates(ctx *pulumi.Context, args *GetEcsLaunchTemplatesArgs, opts ...pulumi.InvokeOption) (*GetEcsLaunchTemplatesResult, error)

This data source provides the Ecs Launch Templates of the current Alibaba Cloud user.

> **NOTE:** Available in v1.120.0+.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/go/alicloud/ecs"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := ecs.GetEcsLaunchTemplates(ctx, &ecs.GetEcsLaunchTemplatesArgs{
			Ids: []string{
				"lt-bp1a469uxxxxxx",
			},
			NameRegex: pulumi.StringRef("your_launch_name"),
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("firstEcsLaunchTemplateId", example.Templates[0].Id)
		return nil
	})
}

```

type GetEcsLaunchTemplatesResultOutput

type GetEcsLaunchTemplatesResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getEcsLaunchTemplates.

func (GetEcsLaunchTemplatesResultOutput) ElementType

func (GetEcsLaunchTemplatesResultOutput) EnableDetails

func (GetEcsLaunchTemplatesResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetEcsLaunchTemplatesResultOutput) Ids

func (GetEcsLaunchTemplatesResultOutput) LaunchTemplateName

func (GetEcsLaunchTemplatesResultOutput) NameRegex

func (GetEcsLaunchTemplatesResultOutput) Names

func (GetEcsLaunchTemplatesResultOutput) OutputFile

func (GetEcsLaunchTemplatesResultOutput) TemplateResourceGroupId

func (o GetEcsLaunchTemplatesResultOutput) TemplateResourceGroupId() pulumi.StringPtrOutput

func (GetEcsLaunchTemplatesResultOutput) TemplateTags

func (GetEcsLaunchTemplatesResultOutput) Templates

func (GetEcsLaunchTemplatesResultOutput) ToGetEcsLaunchTemplatesResultOutput

func (o GetEcsLaunchTemplatesResultOutput) ToGetEcsLaunchTemplatesResultOutput() GetEcsLaunchTemplatesResultOutput

func (GetEcsLaunchTemplatesResultOutput) ToGetEcsLaunchTemplatesResultOutputWithContext

func (o GetEcsLaunchTemplatesResultOutput) ToGetEcsLaunchTemplatesResultOutputWithContext(ctx context.Context) GetEcsLaunchTemplatesResultOutput

type GetEcsLaunchTemplatesTemplate

type GetEcsLaunchTemplatesTemplate struct {
	// Instance auto release time.
	AutoReleaseTime string `pulumi:"autoReleaseTime"`
	// CreatedBy.
	CreatedBy string `pulumi:"createdBy"`
	// The list of data disks created with instance.
	DataDisks []GetEcsLaunchTemplatesTemplateDataDisk `pulumi:"dataDisks"`
	// The Default Version Number.
	DefaultVersionNumber int `pulumi:"defaultVersionNumber"`
	// The Deployment Set Id.
	DeploymentSetId string `pulumi:"deploymentSetId"`
	// System disk description.
	Description string `pulumi:"description"`
	// Whether to enable the instance operating system configuration.
	EnableVmOsConfig bool `pulumi:"enableVmOsConfig"`
	// Instance host name.
	HostName string `pulumi:"hostName"`
	// The ID of the Launch Template.
	Id string `pulumi:"id"`
	// The Image Id.
	ImageId string `pulumi:"imageId"`
	// Mirror source.
	ImageOwnerAlias string `pulumi:"imageOwnerAlias"`
	// Internet bandwidth billing method.
	InstanceChargeType string `pulumi:"instanceChargeType"`
	// The Instance Name.
	InstanceName string `pulumi:"instanceName"`
	// Instance type.
	InstanceType string `pulumi:"instanceType"`
	// Internet bandwidth billing method.
	InternetChargeType string `pulumi:"internetChargeType"`
	// The maximum inbound bandwidth from the Internet network, measured in Mbit/s.
	InternetMaxBandwidthIn int `pulumi:"internetMaxBandwidthIn"`
	// Maximum outbound bandwidth from the Internet, its unit of measurement is Mbit/s.
	InternetMaxBandwidthOut int `pulumi:"internetMaxBandwidthOut"`
	// Whether it is an I/O-optimized instance or not.
	IoOptimized string `pulumi:"ioOptimized"`
	// The name of the key pair.
	KeyPairName string `pulumi:"keyPairName"`
	// The Latest Version Number.
	LatestVersionNumber int `pulumi:"latestVersionNumber"`
	// The ID of the Launch Template.
	LaunchTemplateId string `pulumi:"launchTemplateId"`
	// The Launch Template Name.
	LaunchTemplateName string `pulumi:"launchTemplateName"`
	// The Modified Time.
	ModifiedTime string `pulumi:"modifiedTime"`
	// The list of network interfaces created with instance.
	NetworkInterfaces []GetEcsLaunchTemplatesTemplateNetworkInterface `pulumi:"networkInterfaces"`
	// Network type of the instance.
	NetworkType string `pulumi:"networkType"`
	// Whether to use the password preset by the mirror.
	PasswordInherit bool `pulumi:"passwordInherit"`
	// The subscription period of the instance.
	Period int `pulumi:"period"`
	// The private IP address of the instance.
	PrivateIpAddress string `pulumi:"privateIpAddress"`
	// The RAM role name of the instance.
	RamRoleName string `pulumi:"ramRoleName"`
	// The ID of the resource group to which to assign the instance, Elastic Block Storage (EBS) device, and ENI.
	ResourceGroupId string `pulumi:"resourceGroupId"`
	// Whether or not to activate the security enhancement feature and install network security software free of charge.
	SecurityEnhancementStrategy string `pulumi:"securityEnhancementStrategy"`
	// The security group ID.
	SecurityGroupId string `pulumi:"securityGroupId"`
	// The security group IDs.
	SecurityGroupIds []string `pulumi:"securityGroupIds"`
	// The protection period of the preemptible instance.
	SpotDuration string `pulumi:"spotDuration"`
	// Sets the maximum hourly instance price.
	SpotPriceLimit float64 `pulumi:"spotPriceLimit"`
	// The spot strategy for a Pay-As-You-Go instance.
	SpotStrategy string `pulumi:"spotStrategy"`
	// The System Disk.
	SystemDisks []GetEcsLaunchTemplatesTemplateSystemDisk `pulumi:"systemDisks"`
	// The template tags.
	TemplateTags map[string]interface{} `pulumi:"templateTags"`
	// The User Data.
	UserData string `pulumi:"userData"`
	// The Version Description.
	VersionDescription string `pulumi:"versionDescription"`
	// VpcId.
	VpcId string `pulumi:"vpcId"`
	// The vswitch id.
	VswitchId string `pulumi:"vswitchId"`
	// The Zone Id.
	ZoneId string `pulumi:"zoneId"`
}

type GetEcsLaunchTemplatesTemplateArgs

type GetEcsLaunchTemplatesTemplateArgs struct {
	// Instance auto release time.
	AutoReleaseTime pulumi.StringInput `pulumi:"autoReleaseTime"`
	// CreatedBy.
	CreatedBy pulumi.StringInput `pulumi:"createdBy"`
	// The list of data disks created with instance.
	DataDisks GetEcsLaunchTemplatesTemplateDataDiskArrayInput `pulumi:"dataDisks"`
	// The Default Version Number.
	DefaultVersionNumber pulumi.IntInput `pulumi:"defaultVersionNumber"`
	// The Deployment Set Id.
	DeploymentSetId pulumi.StringInput `pulumi:"deploymentSetId"`
	// System disk description.
	Description pulumi.StringInput `pulumi:"description"`
	// Whether to enable the instance operating system configuration.
	EnableVmOsConfig pulumi.BoolInput `pulumi:"enableVmOsConfig"`
	// Instance host name.
	HostName pulumi.StringInput `pulumi:"hostName"`
	// The ID of the Launch Template.
	Id pulumi.StringInput `pulumi:"id"`
	// The Image Id.
	ImageId pulumi.StringInput `pulumi:"imageId"`
	// Mirror source.
	ImageOwnerAlias pulumi.StringInput `pulumi:"imageOwnerAlias"`
	// Internet bandwidth billing method.
	InstanceChargeType pulumi.StringInput `pulumi:"instanceChargeType"`
	// The Instance Name.
	InstanceName pulumi.StringInput `pulumi:"instanceName"`
	// Instance type.
	InstanceType pulumi.StringInput `pulumi:"instanceType"`
	// Internet bandwidth billing method.
	InternetChargeType pulumi.StringInput `pulumi:"internetChargeType"`
	// The maximum inbound bandwidth from the Internet network, measured in Mbit/s.
	InternetMaxBandwidthIn pulumi.IntInput `pulumi:"internetMaxBandwidthIn"`
	// Maximum outbound bandwidth from the Internet, its unit of measurement is Mbit/s.
	InternetMaxBandwidthOut pulumi.IntInput `pulumi:"internetMaxBandwidthOut"`
	// Whether it is an I/O-optimized instance or not.
	IoOptimized pulumi.StringInput `pulumi:"ioOptimized"`
	// The name of the key pair.
	KeyPairName pulumi.StringInput `pulumi:"keyPairName"`
	// The Latest Version Number.
	LatestVersionNumber pulumi.IntInput `pulumi:"latestVersionNumber"`
	// The ID of the Launch Template.
	LaunchTemplateId pulumi.StringInput `pulumi:"launchTemplateId"`
	// The Launch Template Name.
	LaunchTemplateName pulumi.StringInput `pulumi:"launchTemplateName"`
	// The Modified Time.
	ModifiedTime pulumi.StringInput `pulumi:"modifiedTime"`
	// The list of network interfaces created with instance.
	NetworkInterfaces GetEcsLaunchTemplatesTemplateNetworkInterfaceArrayInput `pulumi:"networkInterfaces"`
	// Network type of the instance.
	NetworkType pulumi.StringInput `pulumi:"networkType"`
	// Whether to use the password preset by the mirror.
	PasswordInherit pulumi.BoolInput `pulumi:"passwordInherit"`
	// The subscription period of the instance.
	Period pulumi.IntInput `pulumi:"period"`
	// The private IP address of the instance.
	PrivateIpAddress pulumi.StringInput `pulumi:"privateIpAddress"`
	// The RAM role name of the instance.
	RamRoleName pulumi.StringInput `pulumi:"ramRoleName"`
	// The ID of the resource group to which to assign the instance, Elastic Block Storage (EBS) device, and ENI.
	ResourceGroupId pulumi.StringInput `pulumi:"resourceGroupId"`
	// Whether or not to activate the security enhancement feature and install network security software free of charge.
	SecurityEnhancementStrategy pulumi.StringInput `pulumi:"securityEnhancementStrategy"`
	// The security group ID.
	SecurityGroupId pulumi.StringInput `pulumi:"securityGroupId"`
	// The security group IDs.
	SecurityGroupIds pulumi.StringArrayInput `pulumi:"securityGroupIds"`
	// The protection period of the preemptible instance.
	SpotDuration pulumi.StringInput `pulumi:"spotDuration"`
	// Sets the maximum hourly instance price.
	SpotPriceLimit pulumi.Float64Input `pulumi:"spotPriceLimit"`
	// The spot strategy for a Pay-As-You-Go instance.
	SpotStrategy pulumi.StringInput `pulumi:"spotStrategy"`
	// The System Disk.
	SystemDisks GetEcsLaunchTemplatesTemplateSystemDiskArrayInput `pulumi:"systemDisks"`
	// The template tags.
	TemplateTags pulumi.MapInput `pulumi:"templateTags"`
	// The User Data.
	UserData pulumi.StringInput `pulumi:"userData"`
	// The Version Description.
	VersionDescription pulumi.StringInput `pulumi:"versionDescription"`
	// VpcId.
	VpcId pulumi.StringInput `pulumi:"vpcId"`
	// The vswitch id.
	VswitchId pulumi.StringInput `pulumi:"vswitchId"`
	// The Zone Id.
	ZoneId pulumi.StringInput `pulumi:"zoneId"`
}

func (GetEcsLaunchTemplatesTemplateArgs) ElementType

func (GetEcsLaunchTemplatesTemplateArgs) ToGetEcsLaunchTemplatesTemplateOutput

func (i GetEcsLaunchTemplatesTemplateArgs) ToGetEcsLaunchTemplatesTemplateOutput() GetEcsLaunchTemplatesTemplateOutput

func (GetEcsLaunchTemplatesTemplateArgs) ToGetEcsLaunchTemplatesTemplateOutputWithContext

func (i GetEcsLaunchTemplatesTemplateArgs) ToGetEcsLaunchTemplatesTemplateOutputWithContext(ctx context.Context) GetEcsLaunchTemplatesTemplateOutput

type GetEcsLaunchTemplatesTemplateArray

type GetEcsLaunchTemplatesTemplateArray []GetEcsLaunchTemplatesTemplateInput

func (GetEcsLaunchTemplatesTemplateArray) ElementType

func (GetEcsLaunchTemplatesTemplateArray) ToGetEcsLaunchTemplatesTemplateArrayOutput

func (i GetEcsLaunchTemplatesTemplateArray) ToGetEcsLaunchTemplatesTemplateArrayOutput() GetEcsLaunchTemplatesTemplateArrayOutput

func (GetEcsLaunchTemplatesTemplateArray) ToGetEcsLaunchTemplatesTemplateArrayOutputWithContext

func (i GetEcsLaunchTemplatesTemplateArray) ToGetEcsLaunchTemplatesTemplateArrayOutputWithContext(ctx context.Context) GetEcsLaunchTemplatesTemplateArrayOutput

type GetEcsLaunchTemplatesTemplateArrayInput

type GetEcsLaunchTemplatesTemplateArrayInput interface {
	pulumi.Input

	ToGetEcsLaunchTemplatesTemplateArrayOutput() GetEcsLaunchTemplatesTemplateArrayOutput
	ToGetEcsLaunchTemplatesTemplateArrayOutputWithContext(context.Context) GetEcsLaunchTemplatesTemplateArrayOutput
}

GetEcsLaunchTemplatesTemplateArrayInput is an input type that accepts GetEcsLaunchTemplatesTemplateArray and GetEcsLaunchTemplatesTemplateArrayOutput values. You can construct a concrete instance of `GetEcsLaunchTemplatesTemplateArrayInput` via:

GetEcsLaunchTemplatesTemplateArray{ GetEcsLaunchTemplatesTemplateArgs{...} }

type GetEcsLaunchTemplatesTemplateArrayOutput

type GetEcsLaunchTemplatesTemplateArrayOutput struct{ *pulumi.OutputState }

func (GetEcsLaunchTemplatesTemplateArrayOutput) ElementType

func (GetEcsLaunchTemplatesTemplateArrayOutput) Index

func (GetEcsLaunchTemplatesTemplateArrayOutput) ToGetEcsLaunchTemplatesTemplateArrayOutput

func (o GetEcsLaunchTemplatesTemplateArrayOutput) ToGetEcsLaunchTemplatesTemplateArrayOutput() GetEcsLaunchTemplatesTemplateArrayOutput

func (GetEcsLaunchTemplatesTemplateArrayOutput) ToGetEcsLaunchTemplatesTemplateArrayOutputWithContext

func (o GetEcsLaunchTemplatesTemplateArrayOutput) ToGetEcsLaunchTemplatesTemplateArrayOutputWithContext(ctx context.Context) GetEcsLaunchTemplatesTemplateArrayOutput

type GetEcsLaunchTemplatesTemplateDataDisk

type GetEcsLaunchTemplatesTemplateDataDisk struct {
	// The category of the system disk.
	Category string `pulumi:"category"`
	// Specifies whether to release the system disk when the instance is released.
	DeleteWithInstance bool `pulumi:"deleteWithInstance"`
	// System disk description.
	Description string `pulumi:"description"`
	// Encrypted the data in this disk.
	Encrypted bool `pulumi:"encrypted"`
	// System disk name.
	Name string `pulumi:"name"`
	// The performance level of the ESSD used as the system disk.
	PerformanceLevel string `pulumi:"performanceLevel"`
	// Size of the system disk, measured in GB.
	Size int `pulumi:"size"`
	// The snapshot ID used to initialize the data disk. If the size specified by snapshot is greater that the size of the disk, use the size specified by snapshot as the size of the data disk.
	SnapshotId string `pulumi:"snapshotId"`
}

type GetEcsLaunchTemplatesTemplateDataDiskArgs

type GetEcsLaunchTemplatesTemplateDataDiskArgs struct {
	// The category of the system disk.
	Category pulumi.StringInput `pulumi:"category"`
	// Specifies whether to release the system disk when the instance is released.
	DeleteWithInstance pulumi.BoolInput `pulumi:"deleteWithInstance"`
	// System disk description.
	Description pulumi.StringInput `pulumi:"description"`
	// Encrypted the data in this disk.
	Encrypted pulumi.BoolInput `pulumi:"encrypted"`
	// System disk name.
	Name pulumi.StringInput `pulumi:"name"`
	// The performance level of the ESSD used as the system disk.
	PerformanceLevel pulumi.StringInput `pulumi:"performanceLevel"`
	// Size of the system disk, measured in GB.
	Size pulumi.IntInput `pulumi:"size"`
	// The snapshot ID used to initialize the data disk. If the size specified by snapshot is greater that the size of the disk, use the size specified by snapshot as the size of the data disk.
	SnapshotId pulumi.StringInput `pulumi:"snapshotId"`
}

func (GetEcsLaunchTemplatesTemplateDataDiskArgs) ElementType

func (GetEcsLaunchTemplatesTemplateDataDiskArgs) ToGetEcsLaunchTemplatesTemplateDataDiskOutput

func (i GetEcsLaunchTemplatesTemplateDataDiskArgs) ToGetEcsLaunchTemplatesTemplateDataDiskOutput() GetEcsLaunchTemplatesTemplateDataDiskOutput

func (GetEcsLaunchTemplatesTemplateDataDiskArgs) ToGetEcsLaunchTemplatesTemplateDataDiskOutputWithContext

func (i GetEcsLaunchTemplatesTemplateDataDiskArgs) ToGetEcsLaunchTemplatesTemplateDataDiskOutputWithContext(ctx context.Context) GetEcsLaunchTemplatesTemplateDataDiskOutput

type GetEcsLaunchTemplatesTemplateDataDiskArray

type GetEcsLaunchTemplatesTemplateDataDiskArray []GetEcsLaunchTemplatesTemplateDataDiskInput

func (GetEcsLaunchTemplatesTemplateDataDiskArray) ElementType

func (GetEcsLaunchTemplatesTemplateDataDiskArray) ToGetEcsLaunchTemplatesTemplateDataDiskArrayOutput

func (i GetEcsLaunchTemplatesTemplateDataDiskArray) ToGetEcsLaunchTemplatesTemplateDataDiskArrayOutput() GetEcsLaunchTemplatesTemplateDataDiskArrayOutput

func (GetEcsLaunchTemplatesTemplateDataDiskArray) ToGetEcsLaunchTemplatesTemplateDataDiskArrayOutputWithContext

func (i GetEcsLaunchTemplatesTemplateDataDiskArray) ToGetEcsLaunchTemplatesTemplateDataDiskArrayOutputWithContext(ctx context.Context) GetEcsLaunchTemplatesTemplateDataDiskArrayOutput

type GetEcsLaunchTemplatesTemplateDataDiskArrayInput

type GetEcsLaunchTemplatesTemplateDataDiskArrayInput interface {
	pulumi.Input

	ToGetEcsLaunchTemplatesTemplateDataDiskArrayOutput() GetEcsLaunchTemplatesTemplateDataDiskArrayOutput
	ToGetEcsLaunchTemplatesTemplateDataDiskArrayOutputWithContext(context.Context) GetEcsLaunchTemplatesTemplateDataDiskArrayOutput
}

GetEcsLaunchTemplatesTemplateDataDiskArrayInput is an input type that accepts GetEcsLaunchTemplatesTemplateDataDiskArray and GetEcsLaunchTemplatesTemplateDataDiskArrayOutput values. You can construct a concrete instance of `GetEcsLaunchTemplatesTemplateDataDiskArrayInput` via:

GetEcsLaunchTemplatesTemplateDataDiskArray{ GetEcsLaunchTemplatesTemplateDataDiskArgs{...} }

type GetEcsLaunchTemplatesTemplateDataDiskArrayOutput

type GetEcsLaunchTemplatesTemplateDataDiskArrayOutput struct{ *pulumi.OutputState }

func (GetEcsLaunchTemplatesTemplateDataDiskArrayOutput) ElementType

func (GetEcsLaunchTemplatesTemplateDataDiskArrayOutput) Index

func (GetEcsLaunchTemplatesTemplateDataDiskArrayOutput) ToGetEcsLaunchTemplatesTemplateDataDiskArrayOutput

func (o GetEcsLaunchTemplatesTemplateDataDiskArrayOutput) ToGetEcsLaunchTemplatesTemplateDataDiskArrayOutput() GetEcsLaunchTemplatesTemplateDataDiskArrayOutput

func (GetEcsLaunchTemplatesTemplateDataDiskArrayOutput) ToGetEcsLaunchTemplatesTemplateDataDiskArrayOutputWithContext

func (o GetEcsLaunchTemplatesTemplateDataDiskArrayOutput) ToGetEcsLaunchTemplatesTemplateDataDiskArrayOutputWithContext(ctx context.Context) GetEcsLaunchTemplatesTemplateDataDiskArrayOutput

type GetEcsLaunchTemplatesTemplateDataDiskInput

type GetEcsLaunchTemplatesTemplateDataDiskInput interface {
	pulumi.Input

	ToGetEcsLaunchTemplatesTemplateDataDiskOutput() GetEcsLaunchTemplatesTemplateDataDiskOutput
	ToGetEcsLaunchTemplatesTemplateDataDiskOutputWithContext(context.Context) GetEcsLaunchTemplatesTemplateDataDiskOutput
}

GetEcsLaunchTemplatesTemplateDataDiskInput is an input type that accepts GetEcsLaunchTemplatesTemplateDataDiskArgs and GetEcsLaunchTemplatesTemplateDataDiskOutput values. You can construct a concrete instance of `GetEcsLaunchTemplatesTemplateDataDiskInput` via:

GetEcsLaunchTemplatesTemplateDataDiskArgs{...}

type GetEcsLaunchTemplatesTemplateDataDiskOutput

type GetEcsLaunchTemplatesTemplateDataDiskOutput struct{ *pulumi.OutputState }

func (GetEcsLaunchTemplatesTemplateDataDiskOutput) Category

The category of the system disk.

func (GetEcsLaunchTemplatesTemplateDataDiskOutput) DeleteWithInstance

Specifies whether to release the system disk when the instance is released.

func (GetEcsLaunchTemplatesTemplateDataDiskOutput) Description

System disk description.

func (GetEcsLaunchTemplatesTemplateDataDiskOutput) ElementType

func (GetEcsLaunchTemplatesTemplateDataDiskOutput) Encrypted

Encrypted the data in this disk.

func (GetEcsLaunchTemplatesTemplateDataDiskOutput) Name

System disk name.

func (GetEcsLaunchTemplatesTemplateDataDiskOutput) PerformanceLevel

The performance level of the ESSD used as the system disk.

func (GetEcsLaunchTemplatesTemplateDataDiskOutput) Size

Size of the system disk, measured in GB.

func (GetEcsLaunchTemplatesTemplateDataDiskOutput) SnapshotId

The snapshot ID used to initialize the data disk. If the size specified by snapshot is greater that the size of the disk, use the size specified by snapshot as the size of the data disk.

func (GetEcsLaunchTemplatesTemplateDataDiskOutput) ToGetEcsLaunchTemplatesTemplateDataDiskOutput

func (o GetEcsLaunchTemplatesTemplateDataDiskOutput) ToGetEcsLaunchTemplatesTemplateDataDiskOutput() GetEcsLaunchTemplatesTemplateDataDiskOutput

func (GetEcsLaunchTemplatesTemplateDataDiskOutput) ToGetEcsLaunchTemplatesTemplateDataDiskOutputWithContext

func (o GetEcsLaunchTemplatesTemplateDataDiskOutput) ToGetEcsLaunchTemplatesTemplateDataDiskOutputWithContext(ctx context.Context) GetEcsLaunchTemplatesTemplateDataDiskOutput

type GetEcsLaunchTemplatesTemplateInput

type GetEcsLaunchTemplatesTemplateInput interface {
	pulumi.Input

	ToGetEcsLaunchTemplatesTemplateOutput() GetEcsLaunchTemplatesTemplateOutput
	ToGetEcsLaunchTemplatesTemplateOutputWithContext(context.Context) GetEcsLaunchTemplatesTemplateOutput
}

GetEcsLaunchTemplatesTemplateInput is an input type that accepts GetEcsLaunchTemplatesTemplateArgs and GetEcsLaunchTemplatesTemplateOutput values. You can construct a concrete instance of `GetEcsLaunchTemplatesTemplateInput` via:

GetEcsLaunchTemplatesTemplateArgs{...}

type GetEcsLaunchTemplatesTemplateNetworkInterface

type GetEcsLaunchTemplatesTemplateNetworkInterface struct {
	// System disk description.
	Description string `pulumi:"description"`
	// System disk name.
	Name string `pulumi:"name"`
	// The primary private IP address of the ENI.
	PrimaryIp string `pulumi:"primaryIp"`
	// The security group ID.
	SecurityGroupId string `pulumi:"securityGroupId"`
	// The vswitch id.
	VswitchId string `pulumi:"vswitchId"`
}

type GetEcsLaunchTemplatesTemplateNetworkInterfaceArgs

type GetEcsLaunchTemplatesTemplateNetworkInterfaceArgs struct {
	// System disk description.
	Description pulumi.StringInput `pulumi:"description"`
	// System disk name.
	Name pulumi.StringInput `pulumi:"name"`
	// The primary private IP address of the ENI.
	PrimaryIp pulumi.StringInput `pulumi:"primaryIp"`
	// The security group ID.
	SecurityGroupId pulumi.StringInput `pulumi:"securityGroupId"`
	// The vswitch id.
	VswitchId pulumi.StringInput `pulumi:"vswitchId"`
}

func (GetEcsLaunchTemplatesTemplateNetworkInterfaceArgs) ElementType

func (GetEcsLaunchTemplatesTemplateNetworkInterfaceArgs) ToGetEcsLaunchTemplatesTemplateNetworkInterfaceOutput

func (i GetEcsLaunchTemplatesTemplateNetworkInterfaceArgs) ToGetEcsLaunchTemplatesTemplateNetworkInterfaceOutput() GetEcsLaunchTemplatesTemplateNetworkInterfaceOutput

func (GetEcsLaunchTemplatesTemplateNetworkInterfaceArgs) ToGetEcsLaunchTemplatesTemplateNetworkInterfaceOutputWithContext

func (i GetEcsLaunchTemplatesTemplateNetworkInterfaceArgs) ToGetEcsLaunchTemplatesTemplateNetworkInterfaceOutputWithContext(ctx context.Context) GetEcsLaunchTemplatesTemplateNetworkInterfaceOutput

type GetEcsLaunchTemplatesTemplateNetworkInterfaceArray

type GetEcsLaunchTemplatesTemplateNetworkInterfaceArray []GetEcsLaunchTemplatesTemplateNetworkInterfaceInput

func (GetEcsLaunchTemplatesTemplateNetworkInterfaceArray) ElementType

func (GetEcsLaunchTemplatesTemplateNetworkInterfaceArray) ToGetEcsLaunchTemplatesTemplateNetworkInterfaceArrayOutput

func (i GetEcsLaunchTemplatesTemplateNetworkInterfaceArray) ToGetEcsLaunchTemplatesTemplateNetworkInterfaceArrayOutput() GetEcsLaunchTemplatesTemplateNetworkInterfaceArrayOutput

func (GetEcsLaunchTemplatesTemplateNetworkInterfaceArray) ToGetEcsLaunchTemplatesTemplateNetworkInterfaceArrayOutputWithContext

func (i GetEcsLaunchTemplatesTemplateNetworkInterfaceArray) ToGetEcsLaunchTemplatesTemplateNetworkInterfaceArrayOutputWithContext(ctx context.Context) GetEcsLaunchTemplatesTemplateNetworkInterfaceArrayOutput

type GetEcsLaunchTemplatesTemplateNetworkInterfaceArrayInput

type GetEcsLaunchTemplatesTemplateNetworkInterfaceArrayInput interface {
	pulumi.Input

	ToGetEcsLaunchTemplatesTemplateNetworkInterfaceArrayOutput() GetEcsLaunchTemplatesTemplateNetworkInterfaceArrayOutput
	ToGetEcsLaunchTemplatesTemplateNetworkInterfaceArrayOutputWithContext(context.Context) GetEcsLaunchTemplatesTemplateNetworkInterfaceArrayOutput
}

GetEcsLaunchTemplatesTemplateNetworkInterfaceArrayInput is an input type that accepts GetEcsLaunchTemplatesTemplateNetworkInterfaceArray and GetEcsLaunchTemplatesTemplateNetworkInterfaceArrayOutput values. You can construct a concrete instance of `GetEcsLaunchTemplatesTemplateNetworkInterfaceArrayInput` via:

GetEcsLaunchTemplatesTemplateNetworkInterfaceArray{ GetEcsLaunchTemplatesTemplateNetworkInterfaceArgs{...} }

type GetEcsLaunchTemplatesTemplateNetworkInterfaceArrayOutput

type GetEcsLaunchTemplatesTemplateNetworkInterfaceArrayOutput struct{ *pulumi.OutputState }

func (GetEcsLaunchTemplatesTemplateNetworkInterfaceArrayOutput) ElementType

func (GetEcsLaunchTemplatesTemplateNetworkInterfaceArrayOutput) Index

func (GetEcsLaunchTemplatesTemplateNetworkInterfaceArrayOutput) ToGetEcsLaunchTemplatesTemplateNetworkInterfaceArrayOutput

func (GetEcsLaunchTemplatesTemplateNetworkInterfaceArrayOutput) ToGetEcsLaunchTemplatesTemplateNetworkInterfaceArrayOutputWithContext

func (o GetEcsLaunchTemplatesTemplateNetworkInterfaceArrayOutput) ToGetEcsLaunchTemplatesTemplateNetworkInterfaceArrayOutputWithContext(ctx context.Context) GetEcsLaunchTemplatesTemplateNetworkInterfaceArrayOutput

type GetEcsLaunchTemplatesTemplateNetworkInterfaceInput

type GetEcsLaunchTemplatesTemplateNetworkInterfaceInput interface {
	pulumi.Input

	ToGetEcsLaunchTemplatesTemplateNetworkInterfaceOutput() GetEcsLaunchTemplatesTemplateNetworkInterfaceOutput
	ToGetEcsLaunchTemplatesTemplateNetworkInterfaceOutputWithContext(context.Context) GetEcsLaunchTemplatesTemplateNetworkInterfaceOutput
}

GetEcsLaunchTemplatesTemplateNetworkInterfaceInput is an input type that accepts GetEcsLaunchTemplatesTemplateNetworkInterfaceArgs and GetEcsLaunchTemplatesTemplateNetworkInterfaceOutput values. You can construct a concrete instance of `GetEcsLaunchTemplatesTemplateNetworkInterfaceInput` via:

GetEcsLaunchTemplatesTemplateNetworkInterfaceArgs{...}

type GetEcsLaunchTemplatesTemplateNetworkInterfaceOutput

type GetEcsLaunchTemplatesTemplateNetworkInterfaceOutput struct{ *pulumi.OutputState }

func (GetEcsLaunchTemplatesTemplateNetworkInterfaceOutput) Description

System disk description.

func (GetEcsLaunchTemplatesTemplateNetworkInterfaceOutput) ElementType

func (GetEcsLaunchTemplatesTemplateNetworkInterfaceOutput) Name

System disk name.

func (GetEcsLaunchTemplatesTemplateNetworkInterfaceOutput) PrimaryIp

The primary private IP address of the ENI.

func (GetEcsLaunchTemplatesTemplateNetworkInterfaceOutput) SecurityGroupId

The security group ID.

func (GetEcsLaunchTemplatesTemplateNetworkInterfaceOutput) ToGetEcsLaunchTemplatesTemplateNetworkInterfaceOutput

func (o GetEcsLaunchTemplatesTemplateNetworkInterfaceOutput) ToGetEcsLaunchTemplatesTemplateNetworkInterfaceOutput() GetEcsLaunchTemplatesTemplateNetworkInterfaceOutput

func (GetEcsLaunchTemplatesTemplateNetworkInterfaceOutput) ToGetEcsLaunchTemplatesTemplateNetworkInterfaceOutputWithContext

func (o GetEcsLaunchTemplatesTemplateNetworkInterfaceOutput) ToGetEcsLaunchTemplatesTemplateNetworkInterfaceOutputWithContext(ctx context.Context) GetEcsLaunchTemplatesTemplateNetworkInterfaceOutput

func (GetEcsLaunchTemplatesTemplateNetworkInterfaceOutput) VswitchId

The vswitch id.

type GetEcsLaunchTemplatesTemplateOutput

type GetEcsLaunchTemplatesTemplateOutput struct{ *pulumi.OutputState }

func (GetEcsLaunchTemplatesTemplateOutput) AutoReleaseTime

Instance auto release time.

func (GetEcsLaunchTemplatesTemplateOutput) CreatedBy

CreatedBy.

func (GetEcsLaunchTemplatesTemplateOutput) DataDisks

The list of data disks created with instance.

func (GetEcsLaunchTemplatesTemplateOutput) DefaultVersionNumber

func (o GetEcsLaunchTemplatesTemplateOutput) DefaultVersionNumber() pulumi.IntOutput

The Default Version Number.

func (GetEcsLaunchTemplatesTemplateOutput) DeploymentSetId

The Deployment Set Id.

func (GetEcsLaunchTemplatesTemplateOutput) Description

System disk description.

func (GetEcsLaunchTemplatesTemplateOutput) ElementType

func (GetEcsLaunchTemplatesTemplateOutput) EnableVmOsConfig

Whether to enable the instance operating system configuration.

func (GetEcsLaunchTemplatesTemplateOutput) HostName

Instance host name.

func (GetEcsLaunchTemplatesTemplateOutput) Id

The ID of the Launch Template.

func (GetEcsLaunchTemplatesTemplateOutput) ImageId

The Image Id.

func (GetEcsLaunchTemplatesTemplateOutput) ImageOwnerAlias

Mirror source.

func (GetEcsLaunchTemplatesTemplateOutput) InstanceChargeType

Internet bandwidth billing method.

func (GetEcsLaunchTemplatesTemplateOutput) InstanceName

The Instance Name.

func (GetEcsLaunchTemplatesTemplateOutput) InstanceType

Instance type.

func (GetEcsLaunchTemplatesTemplateOutput) InternetChargeType

Internet bandwidth billing method.

func (GetEcsLaunchTemplatesTemplateOutput) InternetMaxBandwidthIn

func (o GetEcsLaunchTemplatesTemplateOutput) InternetMaxBandwidthIn() pulumi.IntOutput

The maximum inbound bandwidth from the Internet network, measured in Mbit/s.

func (GetEcsLaunchTemplatesTemplateOutput) InternetMaxBandwidthOut

func (o GetEcsLaunchTemplatesTemplateOutput) InternetMaxBandwidthOut() pulumi.IntOutput

Maximum outbound bandwidth from the Internet, its unit of measurement is Mbit/s.

func (GetEcsLaunchTemplatesTemplateOutput) IoOptimized

Whether it is an I/O-optimized instance or not.

func (GetEcsLaunchTemplatesTemplateOutput) KeyPairName

The name of the key pair.

func (GetEcsLaunchTemplatesTemplateOutput) LatestVersionNumber

func (o GetEcsLaunchTemplatesTemplateOutput) LatestVersionNumber() pulumi.IntOutput

The Latest Version Number.

func (GetEcsLaunchTemplatesTemplateOutput) LaunchTemplateId

The ID of the Launch Template.

func (GetEcsLaunchTemplatesTemplateOutput) LaunchTemplateName

The Launch Template Name.

func (GetEcsLaunchTemplatesTemplateOutput) ModifiedTime

The Modified Time.

func (GetEcsLaunchTemplatesTemplateOutput) NetworkInterfaces

The list of network interfaces created with instance.

func (GetEcsLaunchTemplatesTemplateOutput) NetworkType

Network type of the instance.

func (GetEcsLaunchTemplatesTemplateOutput) PasswordInherit

Whether to use the password preset by the mirror.

func (GetEcsLaunchTemplatesTemplateOutput) Period

The subscription period of the instance.

func (GetEcsLaunchTemplatesTemplateOutput) PrivateIpAddress

The private IP address of the instance.

func (GetEcsLaunchTemplatesTemplateOutput) RamRoleName

The RAM role name of the instance.

func (GetEcsLaunchTemplatesTemplateOutput) ResourceGroupId

The ID of the resource group to which to assign the instance, Elastic Block Storage (EBS) device, and ENI.

func (GetEcsLaunchTemplatesTemplateOutput) SecurityEnhancementStrategy

func (o GetEcsLaunchTemplatesTemplateOutput) SecurityEnhancementStrategy() pulumi.StringOutput

Whether or not to activate the security enhancement feature and install network security software free of charge.

func (GetEcsLaunchTemplatesTemplateOutput) SecurityGroupId

The security group ID.

func (GetEcsLaunchTemplatesTemplateOutput) SecurityGroupIds

The security group IDs.

func (GetEcsLaunchTemplatesTemplateOutput) SpotDuration

The protection period of the preemptible instance.

func (GetEcsLaunchTemplatesTemplateOutput) SpotPriceLimit

Sets the maximum hourly instance price.

func (GetEcsLaunchTemplatesTemplateOutput) SpotStrategy

The spot strategy for a Pay-As-You-Go instance.

func (GetEcsLaunchTemplatesTemplateOutput) SystemDisks

The System Disk.

func (GetEcsLaunchTemplatesTemplateOutput) TemplateTags

The template tags.

func (GetEcsLaunchTemplatesTemplateOutput) ToGetEcsLaunchTemplatesTemplateOutput

func (o GetEcsLaunchTemplatesTemplateOutput) ToGetEcsLaunchTemplatesTemplateOutput() GetEcsLaunchTemplatesTemplateOutput

func (GetEcsLaunchTemplatesTemplateOutput) ToGetEcsLaunchTemplatesTemplateOutputWithContext

func (o GetEcsLaunchTemplatesTemplateOutput) ToGetEcsLaunchTemplatesTemplateOutputWithContext(ctx context.Context) GetEcsLaunchTemplatesTemplateOutput

func (GetEcsLaunchTemplatesTemplateOutput) UserData

The User Data.

func (GetEcsLaunchTemplatesTemplateOutput) VersionDescription

The Version Description.

func (GetEcsLaunchTemplatesTemplateOutput) VpcId

VpcId.

func (GetEcsLaunchTemplatesTemplateOutput) VswitchId

The vswitch id.

func (GetEcsLaunchTemplatesTemplateOutput) ZoneId

The Zone Id.

type GetEcsLaunchTemplatesTemplateSystemDisk

type GetEcsLaunchTemplatesTemplateSystemDisk struct {
	// The category of the system disk.
	Category string `pulumi:"category"`
	// Specifies whether to release the system disk when the instance is released.
	DeleteWithInstance bool `pulumi:"deleteWithInstance"`
	// System disk description.
	Description string `pulumi:"description"`
	// The Iops.
	Iops string `pulumi:"iops"`
	// System disk name.
	Name string `pulumi:"name"`
	// The performance level of the ESSD used as the system disk.
	PerformanceLevel string `pulumi:"performanceLevel"`
	// Size of the system disk, measured in GB.
	Size int `pulumi:"size"`
}

type GetEcsLaunchTemplatesTemplateSystemDiskArgs

type GetEcsLaunchTemplatesTemplateSystemDiskArgs struct {
	// The category of the system disk.
	Category pulumi.StringInput `pulumi:"category"`
	// Specifies whether to release the system disk when the instance is released.
	DeleteWithInstance pulumi.BoolInput `pulumi:"deleteWithInstance"`
	// System disk description.
	Description pulumi.StringInput `pulumi:"description"`
	// The Iops.
	Iops pulumi.StringInput `pulumi:"iops"`
	// System disk name.
	Name pulumi.StringInput `pulumi:"name"`
	// The performance level of the ESSD used as the system disk.
	PerformanceLevel pulumi.StringInput `pulumi:"performanceLevel"`
	// Size of the system disk, measured in GB.
	Size pulumi.IntInput `pulumi:"size"`
}

func (GetEcsLaunchTemplatesTemplateSystemDiskArgs) ElementType

func (GetEcsLaunchTemplatesTemplateSystemDiskArgs) ToGetEcsLaunchTemplatesTemplateSystemDiskOutput

func (i GetEcsLaunchTemplatesTemplateSystemDiskArgs) ToGetEcsLaunchTemplatesTemplateSystemDiskOutput() GetEcsLaunchTemplatesTemplateSystemDiskOutput

func (GetEcsLaunchTemplatesTemplateSystemDiskArgs) ToGetEcsLaunchTemplatesTemplateSystemDiskOutputWithContext

func (i GetEcsLaunchTemplatesTemplateSystemDiskArgs) ToGetEcsLaunchTemplatesTemplateSystemDiskOutputWithContext(ctx context.Context) GetEcsLaunchTemplatesTemplateSystemDiskOutput

type GetEcsLaunchTemplatesTemplateSystemDiskArray

type GetEcsLaunchTemplatesTemplateSystemDiskArray []GetEcsLaunchTemplatesTemplateSystemDiskInput

func (GetEcsLaunchTemplatesTemplateSystemDiskArray) ElementType

func (GetEcsLaunchTemplatesTemplateSystemDiskArray) ToGetEcsLaunchTemplatesTemplateSystemDiskArrayOutput

func (i GetEcsLaunchTemplatesTemplateSystemDiskArray) ToGetEcsLaunchTemplatesTemplateSystemDiskArrayOutput() GetEcsLaunchTemplatesTemplateSystemDiskArrayOutput

func (GetEcsLaunchTemplatesTemplateSystemDiskArray) ToGetEcsLaunchTemplatesTemplateSystemDiskArrayOutputWithContext

func (i GetEcsLaunchTemplatesTemplateSystemDiskArray) ToGetEcsLaunchTemplatesTemplateSystemDiskArrayOutputWithContext(ctx context.Context) GetEcsLaunchTemplatesTemplateSystemDiskArrayOutput

type GetEcsLaunchTemplatesTemplateSystemDiskArrayInput

type GetEcsLaunchTemplatesTemplateSystemDiskArrayInput interface {
	pulumi.Input

	ToGetEcsLaunchTemplatesTemplateSystemDiskArrayOutput() GetEcsLaunchTemplatesTemplateSystemDiskArrayOutput
	ToGetEcsLaunchTemplatesTemplateSystemDiskArrayOutputWithContext(context.Context) GetEcsLaunchTemplatesTemplateSystemDiskArrayOutput
}

GetEcsLaunchTemplatesTemplateSystemDiskArrayInput is an input type that accepts GetEcsLaunchTemplatesTemplateSystemDiskArray and GetEcsLaunchTemplatesTemplateSystemDiskArrayOutput values. You can construct a concrete instance of `GetEcsLaunchTemplatesTemplateSystemDiskArrayInput` via:

GetEcsLaunchTemplatesTemplateSystemDiskArray{ GetEcsLaunchTemplatesTemplateSystemDiskArgs{...} }

type GetEcsLaunchTemplatesTemplateSystemDiskArrayOutput

type GetEcsLaunchTemplatesTemplateSystemDiskArrayOutput struct{ *pulumi.OutputState }

func (GetEcsLaunchTemplatesTemplateSystemDiskArrayOutput) ElementType

func (GetEcsLaunchTemplatesTemplateSystemDiskArrayOutput) Index

func (GetEcsLaunchTemplatesTemplateSystemDiskArrayOutput) ToGetEcsLaunchTemplatesTemplateSystemDiskArrayOutput

func (o GetEcsLaunchTemplatesTemplateSystemDiskArrayOutput) ToGetEcsLaunchTemplatesTemplateSystemDiskArrayOutput() GetEcsLaunchTemplatesTemplateSystemDiskArrayOutput

func (GetEcsLaunchTemplatesTemplateSystemDiskArrayOutput) ToGetEcsLaunchTemplatesTemplateSystemDiskArrayOutputWithContext

func (o GetEcsLaunchTemplatesTemplateSystemDiskArrayOutput) ToGetEcsLaunchTemplatesTemplateSystemDiskArrayOutputWithContext(ctx context.Context) GetEcsLaunchTemplatesTemplateSystemDiskArrayOutput

type GetEcsLaunchTemplatesTemplateSystemDiskInput

type GetEcsLaunchTemplatesTemplateSystemDiskInput interface {
	pulumi.Input

	ToGetEcsLaunchTemplatesTemplateSystemDiskOutput() GetEcsLaunchTemplatesTemplateSystemDiskOutput
	ToGetEcsLaunchTemplatesTemplateSystemDiskOutputWithContext(context.Context) GetEcsLaunchTemplatesTemplateSystemDiskOutput
}

GetEcsLaunchTemplatesTemplateSystemDiskInput is an input type that accepts GetEcsLaunchTemplatesTemplateSystemDiskArgs and GetEcsLaunchTemplatesTemplateSystemDiskOutput values. You can construct a concrete instance of `GetEcsLaunchTemplatesTemplateSystemDiskInput` via:

GetEcsLaunchTemplatesTemplateSystemDiskArgs{...}

type GetEcsLaunchTemplatesTemplateSystemDiskOutput

type GetEcsLaunchTemplatesTemplateSystemDiskOutput struct{ *pulumi.OutputState }

func (GetEcsLaunchTemplatesTemplateSystemDiskOutput) Category

The category of the system disk.

func (GetEcsLaunchTemplatesTemplateSystemDiskOutput) DeleteWithInstance

Specifies whether to release the system disk when the instance is released.

func (GetEcsLaunchTemplatesTemplateSystemDiskOutput) Description

System disk description.

func (GetEcsLaunchTemplatesTemplateSystemDiskOutput) ElementType

func (GetEcsLaunchTemplatesTemplateSystemDiskOutput) Iops

The Iops.

func (GetEcsLaunchTemplatesTemplateSystemDiskOutput) Name

System disk name.

func (GetEcsLaunchTemplatesTemplateSystemDiskOutput) PerformanceLevel

The performance level of the ESSD used as the system disk.

func (GetEcsLaunchTemplatesTemplateSystemDiskOutput) Size

Size of the system disk, measured in GB.

func (GetEcsLaunchTemplatesTemplateSystemDiskOutput) ToGetEcsLaunchTemplatesTemplateSystemDiskOutput

func (o GetEcsLaunchTemplatesTemplateSystemDiskOutput) ToGetEcsLaunchTemplatesTemplateSystemDiskOutput() GetEcsLaunchTemplatesTemplateSystemDiskOutput

func (GetEcsLaunchTemplatesTemplateSystemDiskOutput) ToGetEcsLaunchTemplatesTemplateSystemDiskOutputWithContext

func (o GetEcsLaunchTemplatesTemplateSystemDiskOutput) ToGetEcsLaunchTemplatesTemplateSystemDiskOutputWithContext(ctx context.Context) GetEcsLaunchTemplatesTemplateSystemDiskOutput

type GetEcsNetworkInterfacePermissionsArgs

type GetEcsNetworkInterfacePermissionsArgs struct {
	// A list of Network Interface Permission IDs.
	Ids []string `pulumi:"ids"`
	// The ID of the network interface.
	NetworkInterfaceId string  `pulumi:"networkInterfaceId"`
	OutputFile         *string `pulumi:"outputFile"`
	PageNumber         *int    `pulumi:"pageNumber"`
	PageSize           *int    `pulumi:"pageSize"`
	// The Status of the Network Interface Permissions.
	Status *string `pulumi:"status"`
}

A collection of arguments for invoking getEcsNetworkInterfacePermissions.

type GetEcsNetworkInterfacePermissionsOutputArgs

type GetEcsNetworkInterfacePermissionsOutputArgs struct {
	// A list of Network Interface Permission IDs.
	Ids pulumi.StringArrayInput `pulumi:"ids"`
	// The ID of the network interface.
	NetworkInterfaceId pulumi.StringInput    `pulumi:"networkInterfaceId"`
	OutputFile         pulumi.StringPtrInput `pulumi:"outputFile"`
	PageNumber         pulumi.IntPtrInput    `pulumi:"pageNumber"`
	PageSize           pulumi.IntPtrInput    `pulumi:"pageSize"`
	// The Status of the Network Interface Permissions.
	Status pulumi.StringPtrInput `pulumi:"status"`
}

A collection of arguments for invoking getEcsNetworkInterfacePermissions.

func (GetEcsNetworkInterfacePermissionsOutputArgs) ElementType

type GetEcsNetworkInterfacePermissionsPermission

type GetEcsNetworkInterfacePermissionsPermission struct {
	// Alibaba Cloud Partner (Certified ISV) account ID or individual user ID.
	AccountId string `pulumi:"accountId"`
	// The ID of the Network Interface Permission.
	Id string `pulumi:"id"`
	// The ID of the network interface.
	NetworkInterfaceId string `pulumi:"networkInterfaceId"`
	// The ID of the Network Interface Permissions.
	NetworkInterfacePermissionId string `pulumi:"networkInterfacePermissionId"`
	// The permissions of the Network Interface.
	Permission string `pulumi:"permission"`
	// Alibaba Cloud service name.
	ServiceName string `pulumi:"serviceName"`
	// The Status of the Network Interface Permissions.
	Status string `pulumi:"status"`
}

type GetEcsNetworkInterfacePermissionsPermissionArgs

type GetEcsNetworkInterfacePermissionsPermissionArgs struct {
	// Alibaba Cloud Partner (Certified ISV) account ID or individual user ID.
	AccountId pulumi.StringInput `pulumi:"accountId"`
	// The ID of the Network Interface Permission.
	Id pulumi.StringInput `pulumi:"id"`
	// The ID of the network interface.
	NetworkInterfaceId pulumi.StringInput `pulumi:"networkInterfaceId"`
	// The ID of the Network Interface Permissions.
	NetworkInterfacePermissionId pulumi.StringInput `pulumi:"networkInterfacePermissionId"`
	// The permissions of the Network Interface.
	Permission pulumi.StringInput `pulumi:"permission"`
	// Alibaba Cloud service name.
	ServiceName pulumi.StringInput `pulumi:"serviceName"`
	// The Status of the Network Interface Permissions.
	Status pulumi.StringInput `pulumi:"status"`
}

func (GetEcsNetworkInterfacePermissionsPermissionArgs) ElementType

func (GetEcsNetworkInterfacePermissionsPermissionArgs) ToGetEcsNetworkInterfacePermissionsPermissionOutput

func (i GetEcsNetworkInterfacePermissionsPermissionArgs) ToGetEcsNetworkInterfacePermissionsPermissionOutput() GetEcsNetworkInterfacePermissionsPermissionOutput

func (GetEcsNetworkInterfacePermissionsPermissionArgs) ToGetEcsNetworkInterfacePermissionsPermissionOutputWithContext

func (i GetEcsNetworkInterfacePermissionsPermissionArgs) ToGetEcsNetworkInterfacePermissionsPermissionOutputWithContext(ctx context.Context) GetEcsNetworkInterfacePermissionsPermissionOutput

type GetEcsNetworkInterfacePermissionsPermissionArray

type GetEcsNetworkInterfacePermissionsPermissionArray []GetEcsNetworkInterfacePermissionsPermissionInput

func (GetEcsNetworkInterfacePermissionsPermissionArray) ElementType

func (GetEcsNetworkInterfacePermissionsPermissionArray) ToGetEcsNetworkInterfacePermissionsPermissionArrayOutput

func (i GetEcsNetworkInterfacePermissionsPermissionArray) ToGetEcsNetworkInterfacePermissionsPermissionArrayOutput() GetEcsNetworkInterfacePermissionsPermissionArrayOutput

func (GetEcsNetworkInterfacePermissionsPermissionArray) ToGetEcsNetworkInterfacePermissionsPermissionArrayOutputWithContext

func (i GetEcsNetworkInterfacePermissionsPermissionArray) ToGetEcsNetworkInterfacePermissionsPermissionArrayOutputWithContext(ctx context.Context) GetEcsNetworkInterfacePermissionsPermissionArrayOutput

type GetEcsNetworkInterfacePermissionsPermissionArrayInput

type GetEcsNetworkInterfacePermissionsPermissionArrayInput interface {
	pulumi.Input

	ToGetEcsNetworkInterfacePermissionsPermissionArrayOutput() GetEcsNetworkInterfacePermissionsPermissionArrayOutput
	ToGetEcsNetworkInterfacePermissionsPermissionArrayOutputWithContext(context.Context) GetEcsNetworkInterfacePermissionsPermissionArrayOutput
}

GetEcsNetworkInterfacePermissionsPermissionArrayInput is an input type that accepts GetEcsNetworkInterfacePermissionsPermissionArray and GetEcsNetworkInterfacePermissionsPermissionArrayOutput values. You can construct a concrete instance of `GetEcsNetworkInterfacePermissionsPermissionArrayInput` via:

GetEcsNetworkInterfacePermissionsPermissionArray{ GetEcsNetworkInterfacePermissionsPermissionArgs{...} }

type GetEcsNetworkInterfacePermissionsPermissionArrayOutput

type GetEcsNetworkInterfacePermissionsPermissionArrayOutput struct{ *pulumi.OutputState }

func (GetEcsNetworkInterfacePermissionsPermissionArrayOutput) ElementType

func (GetEcsNetworkInterfacePermissionsPermissionArrayOutput) Index

func (GetEcsNetworkInterfacePermissionsPermissionArrayOutput) ToGetEcsNetworkInterfacePermissionsPermissionArrayOutput

func (GetEcsNetworkInterfacePermissionsPermissionArrayOutput) ToGetEcsNetworkInterfacePermissionsPermissionArrayOutputWithContext

func (o GetEcsNetworkInterfacePermissionsPermissionArrayOutput) ToGetEcsNetworkInterfacePermissionsPermissionArrayOutputWithContext(ctx context.Context) GetEcsNetworkInterfacePermissionsPermissionArrayOutput

type GetEcsNetworkInterfacePermissionsPermissionInput

type GetEcsNetworkInterfacePermissionsPermissionInput interface {
	pulumi.Input

	ToGetEcsNetworkInterfacePermissionsPermissionOutput() GetEcsNetworkInterfacePermissionsPermissionOutput
	ToGetEcsNetworkInterfacePermissionsPermissionOutputWithContext(context.Context) GetEcsNetworkInterfacePermissionsPermissionOutput
}

GetEcsNetworkInterfacePermissionsPermissionInput is an input type that accepts GetEcsNetworkInterfacePermissionsPermissionArgs and GetEcsNetworkInterfacePermissionsPermissionOutput values. You can construct a concrete instance of `GetEcsNetworkInterfacePermissionsPermissionInput` via:

GetEcsNetworkInterfacePermissionsPermissionArgs{...}

type GetEcsNetworkInterfacePermissionsPermissionOutput

type GetEcsNetworkInterfacePermissionsPermissionOutput struct{ *pulumi.OutputState }

func (GetEcsNetworkInterfacePermissionsPermissionOutput) AccountId

Alibaba Cloud Partner (Certified ISV) account ID or individual user ID.

func (GetEcsNetworkInterfacePermissionsPermissionOutput) ElementType

func (GetEcsNetworkInterfacePermissionsPermissionOutput) Id

The ID of the Network Interface Permission.

func (GetEcsNetworkInterfacePermissionsPermissionOutput) NetworkInterfaceId

The ID of the network interface.

func (GetEcsNetworkInterfacePermissionsPermissionOutput) NetworkInterfacePermissionId

The ID of the Network Interface Permissions.

func (GetEcsNetworkInterfacePermissionsPermissionOutput) Permission

The permissions of the Network Interface.

func (GetEcsNetworkInterfacePermissionsPermissionOutput) ServiceName

Alibaba Cloud service name.

func (GetEcsNetworkInterfacePermissionsPermissionOutput) Status

The Status of the Network Interface Permissions.

func (GetEcsNetworkInterfacePermissionsPermissionOutput) ToGetEcsNetworkInterfacePermissionsPermissionOutput

func (o GetEcsNetworkInterfacePermissionsPermissionOutput) ToGetEcsNetworkInterfacePermissionsPermissionOutput() GetEcsNetworkInterfacePermissionsPermissionOutput

func (GetEcsNetworkInterfacePermissionsPermissionOutput) ToGetEcsNetworkInterfacePermissionsPermissionOutputWithContext

func (o GetEcsNetworkInterfacePermissionsPermissionOutput) ToGetEcsNetworkInterfacePermissionsPermissionOutputWithContext(ctx context.Context) GetEcsNetworkInterfacePermissionsPermissionOutput

type GetEcsNetworkInterfacePermissionsResult

type GetEcsNetworkInterfacePermissionsResult struct {
	// The provider-assigned unique ID for this managed resource.
	Id                 string                                        `pulumi:"id"`
	Ids                []string                                      `pulumi:"ids"`
	NetworkInterfaceId string                                        `pulumi:"networkInterfaceId"`
	OutputFile         *string                                       `pulumi:"outputFile"`
	PageNumber         *int                                          `pulumi:"pageNumber"`
	PageSize           *int                                          `pulumi:"pageSize"`
	Permissions        []GetEcsNetworkInterfacePermissionsPermission `pulumi:"permissions"`
	Status             *string                                       `pulumi:"status"`
	TotalCount         int                                           `pulumi:"totalCount"`
}

A collection of values returned by getEcsNetworkInterfacePermissions.

func GetEcsNetworkInterfacePermissions

This data source provides the Ecs Network Interface Permissions of the current Alibaba Cloud user.

> **NOTE:** Available in v1.166.0+.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/go/alicloud/ecs"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		ids, err := ecs.GetEcsNetworkInterfacePermissions(ctx, &ecs.GetEcsNetworkInterfacePermissionsArgs{
			Ids: []string{
				"example_value",
			},
			NetworkInterfaceId: "example_value",
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("ecsNetworkInterfacePermissionId1", ids.Permissions[0].Id)
		return nil
	})
}

```

type GetEcsNetworkInterfacePermissionsResultOutput

type GetEcsNetworkInterfacePermissionsResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getEcsNetworkInterfacePermissions.

func (GetEcsNetworkInterfacePermissionsResultOutput) ElementType

func (GetEcsNetworkInterfacePermissionsResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetEcsNetworkInterfacePermissionsResultOutput) Ids

func (GetEcsNetworkInterfacePermissionsResultOutput) NetworkInterfaceId

func (GetEcsNetworkInterfacePermissionsResultOutput) OutputFile

func (GetEcsNetworkInterfacePermissionsResultOutput) PageNumber

func (GetEcsNetworkInterfacePermissionsResultOutput) PageSize

func (GetEcsNetworkInterfacePermissionsResultOutput) Permissions

func (GetEcsNetworkInterfacePermissionsResultOutput) Status

func (GetEcsNetworkInterfacePermissionsResultOutput) ToGetEcsNetworkInterfacePermissionsResultOutput

func (o GetEcsNetworkInterfacePermissionsResultOutput) ToGetEcsNetworkInterfacePermissionsResultOutput() GetEcsNetworkInterfacePermissionsResultOutput

func (GetEcsNetworkInterfacePermissionsResultOutput) ToGetEcsNetworkInterfacePermissionsResultOutputWithContext

func (o GetEcsNetworkInterfacePermissionsResultOutput) ToGetEcsNetworkInterfacePermissionsResultOutputWithContext(ctx context.Context) GetEcsNetworkInterfacePermissionsResultOutput

func (GetEcsNetworkInterfacePermissionsResultOutput) TotalCount

type GetEcsNetworkInterfacesArgs

type GetEcsNetworkInterfacesArgs struct {
	// A list of Network Interface IDs.
	Ids []string `pulumi:"ids"`
	// The instance id.
	InstanceId *string `pulumi:"instanceId"`
	// The network interface name.
	//
	// Deprecated: Field 'name' has been deprecated from provider version 1.123.1. New field 'network_interface_name' instead
	Name *string `pulumi:"name"`
	// A regex string to filter results by Network Interface name.
	NameRegex *string `pulumi:"nameRegex"`
	// The network interface name.
	NetworkInterfaceName *string `pulumi:"networkInterfaceName"`
	OutputFile           *string `pulumi:"outputFile"`
	// The primary private IP address of the ENI.
	PrimaryIpAddress *string `pulumi:"primaryIpAddress"`
	// The primary private IP address of the ENI.
	//
	// Deprecated: Field 'private_ip' has been deprecated from provider version 1.123.1. New field 'primary_ip_address' instead
	PrivateIp *string `pulumi:"privateIp"`
	// The resource group id.
	ResourceGroupId *string `pulumi:"resourceGroupId"`
	// The security group id.
	SecurityGroupId *string `pulumi:"securityGroupId"`
	// Whether the user of the elastic network card is a cloud product or a virtual vendor.
	ServiceManaged *bool `pulumi:"serviceManaged"`
	// The status of the ENI.
	Status *string `pulumi:"status"`
	// The tags.
	Tags map[string]interface{} `pulumi:"tags"`
	// The type of the ENI.
	Type *string `pulumi:"type"`
	// The Vpc Id.
	VpcId *string `pulumi:"vpcId"`
	// The vswitch id.
	VswitchId *string `pulumi:"vswitchId"`
}

A collection of arguments for invoking getEcsNetworkInterfaces.

type GetEcsNetworkInterfacesInterface

type GetEcsNetworkInterfacesInterface struct {
	// The EIP associated with the secondary private IP address of the ENI.  **NOTE:** Available in v1.163.0+.
	AssociatedPublicIps []GetEcsNetworkInterfacesInterfaceAssociatedPublicIp `pulumi:"associatedPublicIps"`
	// The creation time.
	CreationTime string `pulumi:"creationTime"`
	// The description of the ENI.
	Description string `pulumi:"description"`
	// The ID of the Network Interface.
	Id string `pulumi:"id"`
	// The instance id.
	InstanceId string `pulumi:"instanceId"`
	// The MAC address of the ENI.
	Mac string `pulumi:"mac"`
	// The network interface name.
	Name string `pulumi:"name"`
	// The network interface id.
	NetworkInterfaceId string `pulumi:"networkInterfaceId"`
	// The network interface name.
	NetworkInterfaceName string `pulumi:"networkInterfaceName"`
	// The communication mode of the elastic network card.
	NetworkInterfaceTrafficMode string `pulumi:"networkInterfaceTrafficMode"`
	// The ID of the account to which the ENIC belongs.
	OwnerId string `pulumi:"ownerId"`
	// The primary private IP address of the ENI.
	PrimaryIpAddress string `pulumi:"primaryIpAddress"`
	// The primary private IP address of the ENI.
	PrivateIp          string   `pulumi:"privateIp"`
	PrivateIpAddresses []string `pulumi:"privateIpAddresses"`
	// A list of secondary private IP address that is assigned to the ENI.
	PrivateIps []string `pulumi:"privateIps"`
	// Number of network card queues.
	QueueNumber int `pulumi:"queueNumber"`
	// The resource group id.
	ResourceGroupId string `pulumi:"resourceGroupId"`
	// The security group ids.
	SecurityGroupIds []string `pulumi:"securityGroupIds"`
	// The security groups.
	SecurityGroups []string `pulumi:"securityGroups"`
	// The service id.
	ServiceId int `pulumi:"serviceId"`
	// Whether the user of the elastic network card is a cloud product or a virtual vendor.
	ServiceManaged bool `pulumi:"serviceManaged"`
	// The status of the ENI.
	Status string `pulumi:"status"`
	// The tags.
	Tags map[string]interface{} `pulumi:"tags"`
	// The type of the ENI.
	Type string `pulumi:"type"`
	// The Vpc Id.
	VpcId string `pulumi:"vpcId"`
	// The vswitch id.
	VswitchId string `pulumi:"vswitchId"`
	// The zone id.
	ZoneId string `pulumi:"zoneId"`
}

type GetEcsNetworkInterfacesInterfaceArgs

type GetEcsNetworkInterfacesInterfaceArgs struct {
	// The EIP associated with the secondary private IP address of the ENI.  **NOTE:** Available in v1.163.0+.
	AssociatedPublicIps GetEcsNetworkInterfacesInterfaceAssociatedPublicIpArrayInput `pulumi:"associatedPublicIps"`
	// The creation time.
	CreationTime pulumi.StringInput `pulumi:"creationTime"`
	// The description of the ENI.
	Description pulumi.StringInput `pulumi:"description"`
	// The ID of the Network Interface.
	Id pulumi.StringInput `pulumi:"id"`
	// The instance id.
	InstanceId pulumi.StringInput `pulumi:"instanceId"`
	// The MAC address of the ENI.
	Mac pulumi.StringInput `pulumi:"mac"`
	// The network interface name.
	Name pulumi.StringInput `pulumi:"name"`
	// The network interface id.
	NetworkInterfaceId pulumi.StringInput `pulumi:"networkInterfaceId"`
	// The network interface name.
	NetworkInterfaceName pulumi.StringInput `pulumi:"networkInterfaceName"`
	// The communication mode of the elastic network card.
	NetworkInterfaceTrafficMode pulumi.StringInput `pulumi:"networkInterfaceTrafficMode"`
	// The ID of the account to which the ENIC belongs.
	OwnerId pulumi.StringInput `pulumi:"ownerId"`
	// The primary private IP address of the ENI.
	PrimaryIpAddress pulumi.StringInput `pulumi:"primaryIpAddress"`
	// The primary private IP address of the ENI.
	PrivateIp          pulumi.StringInput      `pulumi:"privateIp"`
	PrivateIpAddresses pulumi.StringArrayInput `pulumi:"privateIpAddresses"`
	// A list of secondary private IP address that is assigned to the ENI.
	PrivateIps pulumi.StringArrayInput `pulumi:"privateIps"`
	// Number of network card queues.
	QueueNumber pulumi.IntInput `pulumi:"queueNumber"`
	// The resource group id.
	ResourceGroupId pulumi.StringInput `pulumi:"resourceGroupId"`
	// The security group ids.
	SecurityGroupIds pulumi.StringArrayInput `pulumi:"securityGroupIds"`
	// The security groups.
	SecurityGroups pulumi.StringArrayInput `pulumi:"securityGroups"`
	// The service id.
	ServiceId pulumi.IntInput `pulumi:"serviceId"`
	// Whether the user of the elastic network card is a cloud product or a virtual vendor.
	ServiceManaged pulumi.BoolInput `pulumi:"serviceManaged"`
	// The status of the ENI.
	Status pulumi.StringInput `pulumi:"status"`
	// The tags.
	Tags pulumi.MapInput `pulumi:"tags"`
	// The type of the ENI.
	Type pulumi.StringInput `pulumi:"type"`
	// The Vpc Id.
	VpcId pulumi.StringInput `pulumi:"vpcId"`
	// The vswitch id.
	VswitchId pulumi.StringInput `pulumi:"vswitchId"`
	// The zone id.
	ZoneId pulumi.StringInput `pulumi:"zoneId"`
}

func (GetEcsNetworkInterfacesInterfaceArgs) ElementType

func (GetEcsNetworkInterfacesInterfaceArgs) ToGetEcsNetworkInterfacesInterfaceOutput

func (i GetEcsNetworkInterfacesInterfaceArgs) ToGetEcsNetworkInterfacesInterfaceOutput() GetEcsNetworkInterfacesInterfaceOutput

func (GetEcsNetworkInterfacesInterfaceArgs) ToGetEcsNetworkInterfacesInterfaceOutputWithContext

func (i GetEcsNetworkInterfacesInterfaceArgs) ToGetEcsNetworkInterfacesInterfaceOutputWithContext(ctx context.Context) GetEcsNetworkInterfacesInterfaceOutput

type GetEcsNetworkInterfacesInterfaceArray

type GetEcsNetworkInterfacesInterfaceArray []GetEcsNetworkInterfacesInterfaceInput

func (GetEcsNetworkInterfacesInterfaceArray) ElementType

func (GetEcsNetworkInterfacesInterfaceArray) ToGetEcsNetworkInterfacesInterfaceArrayOutput

func (i GetEcsNetworkInterfacesInterfaceArray) ToGetEcsNetworkInterfacesInterfaceArrayOutput() GetEcsNetworkInterfacesInterfaceArrayOutput

func (GetEcsNetworkInterfacesInterfaceArray) ToGetEcsNetworkInterfacesInterfaceArrayOutputWithContext

func (i GetEcsNetworkInterfacesInterfaceArray) ToGetEcsNetworkInterfacesInterfaceArrayOutputWithContext(ctx context.Context) GetEcsNetworkInterfacesInterfaceArrayOutput

type GetEcsNetworkInterfacesInterfaceArrayInput

type GetEcsNetworkInterfacesInterfaceArrayInput interface {
	pulumi.Input

	ToGetEcsNetworkInterfacesInterfaceArrayOutput() GetEcsNetworkInterfacesInterfaceArrayOutput
	ToGetEcsNetworkInterfacesInterfaceArrayOutputWithContext(context.Context) GetEcsNetworkInterfacesInterfaceArrayOutput
}

GetEcsNetworkInterfacesInterfaceArrayInput is an input type that accepts GetEcsNetworkInterfacesInterfaceArray and GetEcsNetworkInterfacesInterfaceArrayOutput values. You can construct a concrete instance of `GetEcsNetworkInterfacesInterfaceArrayInput` via:

GetEcsNetworkInterfacesInterfaceArray{ GetEcsNetworkInterfacesInterfaceArgs{...} }

type GetEcsNetworkInterfacesInterfaceArrayOutput

type GetEcsNetworkInterfacesInterfaceArrayOutput struct{ *pulumi.OutputState }

func (GetEcsNetworkInterfacesInterfaceArrayOutput) ElementType

func (GetEcsNetworkInterfacesInterfaceArrayOutput) Index

func (GetEcsNetworkInterfacesInterfaceArrayOutput) ToGetEcsNetworkInterfacesInterfaceArrayOutput

func (o GetEcsNetworkInterfacesInterfaceArrayOutput) ToGetEcsNetworkInterfacesInterfaceArrayOutput() GetEcsNetworkInterfacesInterfaceArrayOutput

func (GetEcsNetworkInterfacesInterfaceArrayOutput) ToGetEcsNetworkInterfacesInterfaceArrayOutputWithContext

func (o GetEcsNetworkInterfacesInterfaceArrayOutput) ToGetEcsNetworkInterfacesInterfaceArrayOutputWithContext(ctx context.Context) GetEcsNetworkInterfacesInterfaceArrayOutput

type GetEcsNetworkInterfacesInterfaceAssociatedPublicIp

type GetEcsNetworkInterfacesInterfaceAssociatedPublicIp struct {
	// The EIP of the ENI.
	PublicIpAddress string `pulumi:"publicIpAddress"`
}

type GetEcsNetworkInterfacesInterfaceAssociatedPublicIpArgs

type GetEcsNetworkInterfacesInterfaceAssociatedPublicIpArgs struct {
	// The EIP of the ENI.
	PublicIpAddress pulumi.StringInput `pulumi:"publicIpAddress"`
}

func (GetEcsNetworkInterfacesInterfaceAssociatedPublicIpArgs) ElementType

func (GetEcsNetworkInterfacesInterfaceAssociatedPublicIpArgs) ToGetEcsNetworkInterfacesInterfaceAssociatedPublicIpOutput

func (GetEcsNetworkInterfacesInterfaceAssociatedPublicIpArgs) ToGetEcsNetworkInterfacesInterfaceAssociatedPublicIpOutputWithContext

func (i GetEcsNetworkInterfacesInterfaceAssociatedPublicIpArgs) ToGetEcsNetworkInterfacesInterfaceAssociatedPublicIpOutputWithContext(ctx context.Context) GetEcsNetworkInterfacesInterfaceAssociatedPublicIpOutput

type GetEcsNetworkInterfacesInterfaceAssociatedPublicIpArray

type GetEcsNetworkInterfacesInterfaceAssociatedPublicIpArray []GetEcsNetworkInterfacesInterfaceAssociatedPublicIpInput

func (GetEcsNetworkInterfacesInterfaceAssociatedPublicIpArray) ElementType

func (GetEcsNetworkInterfacesInterfaceAssociatedPublicIpArray) ToGetEcsNetworkInterfacesInterfaceAssociatedPublicIpArrayOutput

func (i GetEcsNetworkInterfacesInterfaceAssociatedPublicIpArray) ToGetEcsNetworkInterfacesInterfaceAssociatedPublicIpArrayOutput() GetEcsNetworkInterfacesInterfaceAssociatedPublicIpArrayOutput

func (GetEcsNetworkInterfacesInterfaceAssociatedPublicIpArray) ToGetEcsNetworkInterfacesInterfaceAssociatedPublicIpArrayOutputWithContext

func (i GetEcsNetworkInterfacesInterfaceAssociatedPublicIpArray) ToGetEcsNetworkInterfacesInterfaceAssociatedPublicIpArrayOutputWithContext(ctx context.Context) GetEcsNetworkInterfacesInterfaceAssociatedPublicIpArrayOutput

type GetEcsNetworkInterfacesInterfaceAssociatedPublicIpArrayInput

type GetEcsNetworkInterfacesInterfaceAssociatedPublicIpArrayInput interface {
	pulumi.Input

	ToGetEcsNetworkInterfacesInterfaceAssociatedPublicIpArrayOutput() GetEcsNetworkInterfacesInterfaceAssociatedPublicIpArrayOutput
	ToGetEcsNetworkInterfacesInterfaceAssociatedPublicIpArrayOutputWithContext(context.Context) GetEcsNetworkInterfacesInterfaceAssociatedPublicIpArrayOutput
}

GetEcsNetworkInterfacesInterfaceAssociatedPublicIpArrayInput is an input type that accepts GetEcsNetworkInterfacesInterfaceAssociatedPublicIpArray and GetEcsNetworkInterfacesInterfaceAssociatedPublicIpArrayOutput values. You can construct a concrete instance of `GetEcsNetworkInterfacesInterfaceAssociatedPublicIpArrayInput` via:

GetEcsNetworkInterfacesInterfaceAssociatedPublicIpArray{ GetEcsNetworkInterfacesInterfaceAssociatedPublicIpArgs{...} }

type GetEcsNetworkInterfacesInterfaceAssociatedPublicIpArrayOutput

type GetEcsNetworkInterfacesInterfaceAssociatedPublicIpArrayOutput struct{ *pulumi.OutputState }

func (GetEcsNetworkInterfacesInterfaceAssociatedPublicIpArrayOutput) ElementType

func (GetEcsNetworkInterfacesInterfaceAssociatedPublicIpArrayOutput) Index

func (GetEcsNetworkInterfacesInterfaceAssociatedPublicIpArrayOutput) ToGetEcsNetworkInterfacesInterfaceAssociatedPublicIpArrayOutput

func (GetEcsNetworkInterfacesInterfaceAssociatedPublicIpArrayOutput) ToGetEcsNetworkInterfacesInterfaceAssociatedPublicIpArrayOutputWithContext

func (o GetEcsNetworkInterfacesInterfaceAssociatedPublicIpArrayOutput) ToGetEcsNetworkInterfacesInterfaceAssociatedPublicIpArrayOutputWithContext(ctx context.Context) GetEcsNetworkInterfacesInterfaceAssociatedPublicIpArrayOutput

type GetEcsNetworkInterfacesInterfaceAssociatedPublicIpInput

type GetEcsNetworkInterfacesInterfaceAssociatedPublicIpInput interface {
	pulumi.Input

	ToGetEcsNetworkInterfacesInterfaceAssociatedPublicIpOutput() GetEcsNetworkInterfacesInterfaceAssociatedPublicIpOutput
	ToGetEcsNetworkInterfacesInterfaceAssociatedPublicIpOutputWithContext(context.Context) GetEcsNetworkInterfacesInterfaceAssociatedPublicIpOutput
}

GetEcsNetworkInterfacesInterfaceAssociatedPublicIpInput is an input type that accepts GetEcsNetworkInterfacesInterfaceAssociatedPublicIpArgs and GetEcsNetworkInterfacesInterfaceAssociatedPublicIpOutput values. You can construct a concrete instance of `GetEcsNetworkInterfacesInterfaceAssociatedPublicIpInput` via:

GetEcsNetworkInterfacesInterfaceAssociatedPublicIpArgs{...}

type GetEcsNetworkInterfacesInterfaceAssociatedPublicIpOutput

type GetEcsNetworkInterfacesInterfaceAssociatedPublicIpOutput struct{ *pulumi.OutputState }

func (GetEcsNetworkInterfacesInterfaceAssociatedPublicIpOutput) ElementType

func (GetEcsNetworkInterfacesInterfaceAssociatedPublicIpOutput) PublicIpAddress

The EIP of the ENI.

func (GetEcsNetworkInterfacesInterfaceAssociatedPublicIpOutput) ToGetEcsNetworkInterfacesInterfaceAssociatedPublicIpOutput

func (GetEcsNetworkInterfacesInterfaceAssociatedPublicIpOutput) ToGetEcsNetworkInterfacesInterfaceAssociatedPublicIpOutputWithContext

func (o GetEcsNetworkInterfacesInterfaceAssociatedPublicIpOutput) ToGetEcsNetworkInterfacesInterfaceAssociatedPublicIpOutputWithContext(ctx context.Context) GetEcsNetworkInterfacesInterfaceAssociatedPublicIpOutput

type GetEcsNetworkInterfacesInterfaceInput

type GetEcsNetworkInterfacesInterfaceInput interface {
	pulumi.Input

	ToGetEcsNetworkInterfacesInterfaceOutput() GetEcsNetworkInterfacesInterfaceOutput
	ToGetEcsNetworkInterfacesInterfaceOutputWithContext(context.Context) GetEcsNetworkInterfacesInterfaceOutput
}

GetEcsNetworkInterfacesInterfaceInput is an input type that accepts GetEcsNetworkInterfacesInterfaceArgs and GetEcsNetworkInterfacesInterfaceOutput values. You can construct a concrete instance of `GetEcsNetworkInterfacesInterfaceInput` via:

GetEcsNetworkInterfacesInterfaceArgs{...}

type GetEcsNetworkInterfacesInterfaceOutput

type GetEcsNetworkInterfacesInterfaceOutput struct{ *pulumi.OutputState }

func (GetEcsNetworkInterfacesInterfaceOutput) AssociatedPublicIps

The EIP associated with the secondary private IP address of the ENI. **NOTE:** Available in v1.163.0+.

func (GetEcsNetworkInterfacesInterfaceOutput) CreationTime

The creation time.

func (GetEcsNetworkInterfacesInterfaceOutput) Description

The description of the ENI.

func (GetEcsNetworkInterfacesInterfaceOutput) ElementType

func (GetEcsNetworkInterfacesInterfaceOutput) Id

The ID of the Network Interface.

func (GetEcsNetworkInterfacesInterfaceOutput) InstanceId

The instance id.

func (GetEcsNetworkInterfacesInterfaceOutput) Mac

The MAC address of the ENI.

func (GetEcsNetworkInterfacesInterfaceOutput) Name

The network interface name.

func (GetEcsNetworkInterfacesInterfaceOutput) NetworkInterfaceId

The network interface id.

func (GetEcsNetworkInterfacesInterfaceOutput) NetworkInterfaceName

The network interface name.

func (GetEcsNetworkInterfacesInterfaceOutput) NetworkInterfaceTrafficMode

func (o GetEcsNetworkInterfacesInterfaceOutput) NetworkInterfaceTrafficMode() pulumi.StringOutput

The communication mode of the elastic network card.

func (GetEcsNetworkInterfacesInterfaceOutput) OwnerId

The ID of the account to which the ENIC belongs.

func (GetEcsNetworkInterfacesInterfaceOutput) PrimaryIpAddress

The primary private IP address of the ENI.

func (GetEcsNetworkInterfacesInterfaceOutput) PrivateIp

The primary private IP address of the ENI.

func (GetEcsNetworkInterfacesInterfaceOutput) PrivateIpAddresses

func (GetEcsNetworkInterfacesInterfaceOutput) PrivateIps

A list of secondary private IP address that is assigned to the ENI.

func (GetEcsNetworkInterfacesInterfaceOutput) QueueNumber

Number of network card queues.

func (GetEcsNetworkInterfacesInterfaceOutput) ResourceGroupId

The resource group id.

func (GetEcsNetworkInterfacesInterfaceOutput) SecurityGroupIds

The security group ids.

func (GetEcsNetworkInterfacesInterfaceOutput) SecurityGroups

The security groups.

func (GetEcsNetworkInterfacesInterfaceOutput) ServiceId

The service id.

func (GetEcsNetworkInterfacesInterfaceOutput) ServiceManaged

Whether the user of the elastic network card is a cloud product or a virtual vendor.

func (GetEcsNetworkInterfacesInterfaceOutput) Status

The status of the ENI.

func (GetEcsNetworkInterfacesInterfaceOutput) Tags

The tags.

func (GetEcsNetworkInterfacesInterfaceOutput) ToGetEcsNetworkInterfacesInterfaceOutput

func (o GetEcsNetworkInterfacesInterfaceOutput) ToGetEcsNetworkInterfacesInterfaceOutput() GetEcsNetworkInterfacesInterfaceOutput

func (GetEcsNetworkInterfacesInterfaceOutput) ToGetEcsNetworkInterfacesInterfaceOutputWithContext

func (o GetEcsNetworkInterfacesInterfaceOutput) ToGetEcsNetworkInterfacesInterfaceOutputWithContext(ctx context.Context) GetEcsNetworkInterfacesInterfaceOutput

func (GetEcsNetworkInterfacesInterfaceOutput) Type

The type of the ENI.

func (GetEcsNetworkInterfacesInterfaceOutput) VpcId

The Vpc Id.

func (GetEcsNetworkInterfacesInterfaceOutput) VswitchId

The vswitch id.

func (GetEcsNetworkInterfacesInterfaceOutput) ZoneId

The zone id.

type GetEcsNetworkInterfacesOutputArgs

type GetEcsNetworkInterfacesOutputArgs struct {
	// A list of Network Interface IDs.
	Ids pulumi.StringArrayInput `pulumi:"ids"`
	// The instance id.
	InstanceId pulumi.StringPtrInput `pulumi:"instanceId"`
	// The network interface name.
	//
	// Deprecated: Field 'name' has been deprecated from provider version 1.123.1. New field 'network_interface_name' instead
	Name pulumi.StringPtrInput `pulumi:"name"`
	// A regex string to filter results by Network Interface name.
	NameRegex pulumi.StringPtrInput `pulumi:"nameRegex"`
	// The network interface name.
	NetworkInterfaceName pulumi.StringPtrInput `pulumi:"networkInterfaceName"`
	OutputFile           pulumi.StringPtrInput `pulumi:"outputFile"`
	// The primary private IP address of the ENI.
	PrimaryIpAddress pulumi.StringPtrInput `pulumi:"primaryIpAddress"`
	// The primary private IP address of the ENI.
	//
	// Deprecated: Field 'private_ip' has been deprecated from provider version 1.123.1. New field 'primary_ip_address' instead
	PrivateIp pulumi.StringPtrInput `pulumi:"privateIp"`
	// The resource group id.
	ResourceGroupId pulumi.StringPtrInput `pulumi:"resourceGroupId"`
	// The security group id.
	SecurityGroupId pulumi.StringPtrInput `pulumi:"securityGroupId"`
	// Whether the user of the elastic network card is a cloud product or a virtual vendor.
	ServiceManaged pulumi.BoolPtrInput `pulumi:"serviceManaged"`
	// The status of the ENI.
	Status pulumi.StringPtrInput `pulumi:"status"`
	// The tags.
	Tags pulumi.MapInput `pulumi:"tags"`
	// The type of the ENI.
	Type pulumi.StringPtrInput `pulumi:"type"`
	// The Vpc Id.
	VpcId pulumi.StringPtrInput `pulumi:"vpcId"`
	// The vswitch id.
	VswitchId pulumi.StringPtrInput `pulumi:"vswitchId"`
}

A collection of arguments for invoking getEcsNetworkInterfaces.

func (GetEcsNetworkInterfacesOutputArgs) ElementType

type GetEcsNetworkInterfacesResult

type GetEcsNetworkInterfacesResult struct {
	// The provider-assigned unique ID for this managed resource.
	Id         string                             `pulumi:"id"`
	Ids        []string                           `pulumi:"ids"`
	InstanceId *string                            `pulumi:"instanceId"`
	Interfaces []GetEcsNetworkInterfacesInterface `pulumi:"interfaces"`
	// Deprecated: Field 'name' has been deprecated from provider version 1.123.1. New field 'network_interface_name' instead
	Name                 *string  `pulumi:"name"`
	NameRegex            *string  `pulumi:"nameRegex"`
	Names                []string `pulumi:"names"`
	NetworkInterfaceName *string  `pulumi:"networkInterfaceName"`
	OutputFile           *string  `pulumi:"outputFile"`
	PrimaryIpAddress     *string  `pulumi:"primaryIpAddress"`
	// Deprecated: Field 'private_ip' has been deprecated from provider version 1.123.1. New field 'primary_ip_address' instead
	PrivateIp       *string                `pulumi:"privateIp"`
	ResourceGroupId *string                `pulumi:"resourceGroupId"`
	SecurityGroupId *string                `pulumi:"securityGroupId"`
	ServiceManaged  *bool                  `pulumi:"serviceManaged"`
	Status          *string                `pulumi:"status"`
	Tags            map[string]interface{} `pulumi:"tags"`
	Type            *string                `pulumi:"type"`
	VpcId           *string                `pulumi:"vpcId"`
	VswitchId       *string                `pulumi:"vswitchId"`
}

A collection of values returned by getEcsNetworkInterfaces.

func GetEcsNetworkInterfaces

func GetEcsNetworkInterfaces(ctx *pulumi.Context, args *GetEcsNetworkInterfacesArgs, opts ...pulumi.InvokeOption) (*GetEcsNetworkInterfacesResult, error)

This data source provides the Ecs Network Interfaces of the current Alibaba Cloud user.

> **NOTE:** Available in v1.123.1+.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/go/alicloud/ecs"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := ecs.GetEcsNetworkInterfaces(ctx, &ecs.GetEcsNetworkInterfacesArgs{
			Ids: []string{
				"eni-abcd1234",
			},
			NameRegex: pulumi.StringRef("tf-testAcc"),
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("firstEcsNetworkInterfaceId", example.Interfaces[0].Id)
		return nil
	})
}

```

type GetEcsNetworkInterfacesResultOutput

type GetEcsNetworkInterfacesResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getEcsNetworkInterfaces.

func (GetEcsNetworkInterfacesResultOutput) ElementType

func (GetEcsNetworkInterfacesResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetEcsNetworkInterfacesResultOutput) Ids

func (GetEcsNetworkInterfacesResultOutput) InstanceId

func (GetEcsNetworkInterfacesResultOutput) Interfaces

func (GetEcsNetworkInterfacesResultOutput) Name deprecated

Deprecated: Field 'name' has been deprecated from provider version 1.123.1. New field 'network_interface_name' instead

func (GetEcsNetworkInterfacesResultOutput) NameRegex

func (GetEcsNetworkInterfacesResultOutput) Names

func (GetEcsNetworkInterfacesResultOutput) NetworkInterfaceName

func (GetEcsNetworkInterfacesResultOutput) OutputFile

func (GetEcsNetworkInterfacesResultOutput) PrimaryIpAddress

func (GetEcsNetworkInterfacesResultOutput) PrivateIp deprecated

Deprecated: Field 'private_ip' has been deprecated from provider version 1.123.1. New field 'primary_ip_address' instead

func (GetEcsNetworkInterfacesResultOutput) ResourceGroupId

func (GetEcsNetworkInterfacesResultOutput) SecurityGroupId

func (GetEcsNetworkInterfacesResultOutput) ServiceManaged

func (GetEcsNetworkInterfacesResultOutput) Status

func (GetEcsNetworkInterfacesResultOutput) Tags

func (GetEcsNetworkInterfacesResultOutput) ToGetEcsNetworkInterfacesResultOutput

func (o GetEcsNetworkInterfacesResultOutput) ToGetEcsNetworkInterfacesResultOutput() GetEcsNetworkInterfacesResultOutput

func (GetEcsNetworkInterfacesResultOutput) ToGetEcsNetworkInterfacesResultOutputWithContext

func (o GetEcsNetworkInterfacesResultOutput) ToGetEcsNetworkInterfacesResultOutputWithContext(ctx context.Context) GetEcsNetworkInterfacesResultOutput

func (GetEcsNetworkInterfacesResultOutput) Type

func (GetEcsNetworkInterfacesResultOutput) VpcId

func (GetEcsNetworkInterfacesResultOutput) VswitchId

type GetEcsPrefixListsArgs

type GetEcsPrefixListsArgs struct {
	// The address family of the prefix list. Valid values:`IPv4`,`IPv6`.
	AddressFamily *string `pulumi:"addressFamily"`
	EnableDetails *bool   `pulumi:"enableDetails"`
	// A list of Prefix List IDs.
	Ids []string `pulumi:"ids"`
	// A regex string to filter results by `prefixListName`.
	NameRegex  *string `pulumi:"nameRegex"`
	OutputFile *string `pulumi:"outputFile"`
}

A collection of arguments for invoking getEcsPrefixLists.

type GetEcsPrefixListsList

type GetEcsPrefixListsList struct {
	// The address family of the prefix list. Valid values:`IPv4`,`IPv6`.
	AddressFamily string `pulumi:"addressFamily"`
	// The amount of associated resources.
	AssociationCount int `pulumi:"associationCount"`
	// The time when the prefix list was created.
	CreateTime string `pulumi:"createTime"`
	// The description of the prefix list.
	Description string                       `pulumi:"description"`
	Entries     []GetEcsPrefixListsListEntry `pulumi:"entries"`
	// The ID of the prefix list.
	Id string `pulumi:"id"`
	// The maximum number of entries that the prefix list supports.
	MaxEntries int `pulumi:"maxEntries"`
	// The ID of the prefix list.
	PrefixListId string `pulumi:"prefixListId"`
	// The name of the prefix list.
	PrefixListName string `pulumi:"prefixListName"`
}

type GetEcsPrefixListsListArgs

type GetEcsPrefixListsListArgs struct {
	// The address family of the prefix list. Valid values:`IPv4`,`IPv6`.
	AddressFamily pulumi.StringInput `pulumi:"addressFamily"`
	// The amount of associated resources.
	AssociationCount pulumi.IntInput `pulumi:"associationCount"`
	// The time when the prefix list was created.
	CreateTime pulumi.StringInput `pulumi:"createTime"`
	// The description of the prefix list.
	Description pulumi.StringInput                   `pulumi:"description"`
	Entries     GetEcsPrefixListsListEntryArrayInput `pulumi:"entries"`
	// The ID of the prefix list.
	Id pulumi.StringInput `pulumi:"id"`
	// The maximum number of entries that the prefix list supports.
	MaxEntries pulumi.IntInput `pulumi:"maxEntries"`
	// The ID of the prefix list.
	PrefixListId pulumi.StringInput `pulumi:"prefixListId"`
	// The name of the prefix list.
	PrefixListName pulumi.StringInput `pulumi:"prefixListName"`
}

func (GetEcsPrefixListsListArgs) ElementType

func (GetEcsPrefixListsListArgs) ElementType() reflect.Type

func (GetEcsPrefixListsListArgs) ToGetEcsPrefixListsListOutput

func (i GetEcsPrefixListsListArgs) ToGetEcsPrefixListsListOutput() GetEcsPrefixListsListOutput

func (GetEcsPrefixListsListArgs) ToGetEcsPrefixListsListOutputWithContext

func (i GetEcsPrefixListsListArgs) ToGetEcsPrefixListsListOutputWithContext(ctx context.Context) GetEcsPrefixListsListOutput

type GetEcsPrefixListsListArray

type GetEcsPrefixListsListArray []GetEcsPrefixListsListInput

func (GetEcsPrefixListsListArray) ElementType

func (GetEcsPrefixListsListArray) ElementType() reflect.Type

func (GetEcsPrefixListsListArray) ToGetEcsPrefixListsListArrayOutput

func (i GetEcsPrefixListsListArray) ToGetEcsPrefixListsListArrayOutput() GetEcsPrefixListsListArrayOutput

func (GetEcsPrefixListsListArray) ToGetEcsPrefixListsListArrayOutputWithContext

func (i GetEcsPrefixListsListArray) ToGetEcsPrefixListsListArrayOutputWithContext(ctx context.Context) GetEcsPrefixListsListArrayOutput

type GetEcsPrefixListsListArrayInput

type GetEcsPrefixListsListArrayInput interface {
	pulumi.Input

	ToGetEcsPrefixListsListArrayOutput() GetEcsPrefixListsListArrayOutput
	ToGetEcsPrefixListsListArrayOutputWithContext(context.Context) GetEcsPrefixListsListArrayOutput
}

GetEcsPrefixListsListArrayInput is an input type that accepts GetEcsPrefixListsListArray and GetEcsPrefixListsListArrayOutput values. You can construct a concrete instance of `GetEcsPrefixListsListArrayInput` via:

GetEcsPrefixListsListArray{ GetEcsPrefixListsListArgs{...} }

type GetEcsPrefixListsListArrayOutput

type GetEcsPrefixListsListArrayOutput struct{ *pulumi.OutputState }

func (GetEcsPrefixListsListArrayOutput) ElementType

func (GetEcsPrefixListsListArrayOutput) Index

func (GetEcsPrefixListsListArrayOutput) ToGetEcsPrefixListsListArrayOutput

func (o GetEcsPrefixListsListArrayOutput) ToGetEcsPrefixListsListArrayOutput() GetEcsPrefixListsListArrayOutput

func (GetEcsPrefixListsListArrayOutput) ToGetEcsPrefixListsListArrayOutputWithContext

func (o GetEcsPrefixListsListArrayOutput) ToGetEcsPrefixListsListArrayOutputWithContext(ctx context.Context) GetEcsPrefixListsListArrayOutput

type GetEcsPrefixListsListEntry

type GetEcsPrefixListsListEntry struct {
	Cidr string `pulumi:"cidr"`
	// The description of the prefix list.
	Description string `pulumi:"description"`
}

type GetEcsPrefixListsListEntryArgs

type GetEcsPrefixListsListEntryArgs struct {
	Cidr pulumi.StringInput `pulumi:"cidr"`
	// The description of the prefix list.
	Description pulumi.StringInput `pulumi:"description"`
}

func (GetEcsPrefixListsListEntryArgs) ElementType

func (GetEcsPrefixListsListEntryArgs) ToGetEcsPrefixListsListEntryOutput

func (i GetEcsPrefixListsListEntryArgs) ToGetEcsPrefixListsListEntryOutput() GetEcsPrefixListsListEntryOutput

func (GetEcsPrefixListsListEntryArgs) ToGetEcsPrefixListsListEntryOutputWithContext

func (i GetEcsPrefixListsListEntryArgs) ToGetEcsPrefixListsListEntryOutputWithContext(ctx context.Context) GetEcsPrefixListsListEntryOutput

type GetEcsPrefixListsListEntryArray

type GetEcsPrefixListsListEntryArray []GetEcsPrefixListsListEntryInput

func (GetEcsPrefixListsListEntryArray) ElementType

func (GetEcsPrefixListsListEntryArray) ToGetEcsPrefixListsListEntryArrayOutput

func (i GetEcsPrefixListsListEntryArray) ToGetEcsPrefixListsListEntryArrayOutput() GetEcsPrefixListsListEntryArrayOutput

func (GetEcsPrefixListsListEntryArray) ToGetEcsPrefixListsListEntryArrayOutputWithContext

func (i GetEcsPrefixListsListEntryArray) ToGetEcsPrefixListsListEntryArrayOutputWithContext(ctx context.Context) GetEcsPrefixListsListEntryArrayOutput

type GetEcsPrefixListsListEntryArrayInput

type GetEcsPrefixListsListEntryArrayInput interface {
	pulumi.Input

	ToGetEcsPrefixListsListEntryArrayOutput() GetEcsPrefixListsListEntryArrayOutput
	ToGetEcsPrefixListsListEntryArrayOutputWithContext(context.Context) GetEcsPrefixListsListEntryArrayOutput
}

GetEcsPrefixListsListEntryArrayInput is an input type that accepts GetEcsPrefixListsListEntryArray and GetEcsPrefixListsListEntryArrayOutput values. You can construct a concrete instance of `GetEcsPrefixListsListEntryArrayInput` via:

GetEcsPrefixListsListEntryArray{ GetEcsPrefixListsListEntryArgs{...} }

type GetEcsPrefixListsListEntryArrayOutput

type GetEcsPrefixListsListEntryArrayOutput struct{ *pulumi.OutputState }

func (GetEcsPrefixListsListEntryArrayOutput) ElementType

func (GetEcsPrefixListsListEntryArrayOutput) Index

func (GetEcsPrefixListsListEntryArrayOutput) ToGetEcsPrefixListsListEntryArrayOutput

func (o GetEcsPrefixListsListEntryArrayOutput) ToGetEcsPrefixListsListEntryArrayOutput() GetEcsPrefixListsListEntryArrayOutput

func (GetEcsPrefixListsListEntryArrayOutput) ToGetEcsPrefixListsListEntryArrayOutputWithContext

func (o GetEcsPrefixListsListEntryArrayOutput) ToGetEcsPrefixListsListEntryArrayOutputWithContext(ctx context.Context) GetEcsPrefixListsListEntryArrayOutput

type GetEcsPrefixListsListEntryInput

type GetEcsPrefixListsListEntryInput interface {
	pulumi.Input

	ToGetEcsPrefixListsListEntryOutput() GetEcsPrefixListsListEntryOutput
	ToGetEcsPrefixListsListEntryOutputWithContext(context.Context) GetEcsPrefixListsListEntryOutput
}

GetEcsPrefixListsListEntryInput is an input type that accepts GetEcsPrefixListsListEntryArgs and GetEcsPrefixListsListEntryOutput values. You can construct a concrete instance of `GetEcsPrefixListsListEntryInput` via:

GetEcsPrefixListsListEntryArgs{...}

type GetEcsPrefixListsListEntryOutput

type GetEcsPrefixListsListEntryOutput struct{ *pulumi.OutputState }

func (GetEcsPrefixListsListEntryOutput) Cidr

func (GetEcsPrefixListsListEntryOutput) Description

The description of the prefix list.

func (GetEcsPrefixListsListEntryOutput) ElementType

func (GetEcsPrefixListsListEntryOutput) ToGetEcsPrefixListsListEntryOutput

func (o GetEcsPrefixListsListEntryOutput) ToGetEcsPrefixListsListEntryOutput() GetEcsPrefixListsListEntryOutput

func (GetEcsPrefixListsListEntryOutput) ToGetEcsPrefixListsListEntryOutputWithContext

func (o GetEcsPrefixListsListEntryOutput) ToGetEcsPrefixListsListEntryOutputWithContext(ctx context.Context) GetEcsPrefixListsListEntryOutput

type GetEcsPrefixListsListInput

type GetEcsPrefixListsListInput interface {
	pulumi.Input

	ToGetEcsPrefixListsListOutput() GetEcsPrefixListsListOutput
	ToGetEcsPrefixListsListOutputWithContext(context.Context) GetEcsPrefixListsListOutput
}

GetEcsPrefixListsListInput is an input type that accepts GetEcsPrefixListsListArgs and GetEcsPrefixListsListOutput values. You can construct a concrete instance of `GetEcsPrefixListsListInput` via:

GetEcsPrefixListsListArgs{...}

type GetEcsPrefixListsListOutput

type GetEcsPrefixListsListOutput struct{ *pulumi.OutputState }

func (GetEcsPrefixListsListOutput) AddressFamily

The address family of the prefix list. Valid values:`IPv4`,`IPv6`.

func (GetEcsPrefixListsListOutput) AssociationCount

func (o GetEcsPrefixListsListOutput) AssociationCount() pulumi.IntOutput

The amount of associated resources.

func (GetEcsPrefixListsListOutput) CreateTime

The time when the prefix list was created.

func (GetEcsPrefixListsListOutput) Description

The description of the prefix list.

func (GetEcsPrefixListsListOutput) ElementType

func (GetEcsPrefixListsListOutput) Entries

func (GetEcsPrefixListsListOutput) Id

The ID of the prefix list.

func (GetEcsPrefixListsListOutput) MaxEntries

The maximum number of entries that the prefix list supports.

func (GetEcsPrefixListsListOutput) PrefixListId

The ID of the prefix list.

func (GetEcsPrefixListsListOutput) PrefixListName

func (o GetEcsPrefixListsListOutput) PrefixListName() pulumi.StringOutput

The name of the prefix list.

func (GetEcsPrefixListsListOutput) ToGetEcsPrefixListsListOutput

func (o GetEcsPrefixListsListOutput) ToGetEcsPrefixListsListOutput() GetEcsPrefixListsListOutput

func (GetEcsPrefixListsListOutput) ToGetEcsPrefixListsListOutputWithContext

func (o GetEcsPrefixListsListOutput) ToGetEcsPrefixListsListOutputWithContext(ctx context.Context) GetEcsPrefixListsListOutput

type GetEcsPrefixListsOutputArgs

type GetEcsPrefixListsOutputArgs struct {
	// The address family of the prefix list. Valid values:`IPv4`,`IPv6`.
	AddressFamily pulumi.StringPtrInput `pulumi:"addressFamily"`
	EnableDetails pulumi.BoolPtrInput   `pulumi:"enableDetails"`
	// A list of Prefix List IDs.
	Ids pulumi.StringArrayInput `pulumi:"ids"`
	// A regex string to filter results by `prefixListName`.
	NameRegex  pulumi.StringPtrInput `pulumi:"nameRegex"`
	OutputFile pulumi.StringPtrInput `pulumi:"outputFile"`
}

A collection of arguments for invoking getEcsPrefixLists.

func (GetEcsPrefixListsOutputArgs) ElementType

type GetEcsPrefixListsResult

type GetEcsPrefixListsResult struct {
	AddressFamily *string `pulumi:"addressFamily"`
	EnableDetails *bool   `pulumi:"enableDetails"`
	// The provider-assigned unique ID for this managed resource.
	Id         string                  `pulumi:"id"`
	Ids        []string                `pulumi:"ids"`
	Lists      []GetEcsPrefixListsList `pulumi:"lists"`
	NameRegex  *string                 `pulumi:"nameRegex"`
	Names      []string                `pulumi:"names"`
	OutputFile *string                 `pulumi:"outputFile"`
}

A collection of values returned by getEcsPrefixLists.

func GetEcsPrefixLists

func GetEcsPrefixLists(ctx *pulumi.Context, args *GetEcsPrefixListsArgs, opts ...pulumi.InvokeOption) (*GetEcsPrefixListsResult, error)

This data source provides the Ecs Prefix Lists of the current Alibaba Cloud user.

> **NOTE:** Available in v1.152.0+.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/go/alicloud/ecs"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := ecs.GetEcsPrefixLists(ctx, &ecs.GetEcsPrefixListsArgs{
			Ids: []string{
				"E2RY53-xxxx",
			},
			NameRegex: pulumi.StringRef("tf-testAcc"),
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("outputId", example.Lists[0].Id)
		return nil
	})
}

```

type GetEcsPrefixListsResultOutput

type GetEcsPrefixListsResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getEcsPrefixLists.

func (GetEcsPrefixListsResultOutput) AddressFamily

func (GetEcsPrefixListsResultOutput) ElementType

func (GetEcsPrefixListsResultOutput) EnableDetails

func (GetEcsPrefixListsResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetEcsPrefixListsResultOutput) Ids

func (GetEcsPrefixListsResultOutput) Lists

func (GetEcsPrefixListsResultOutput) NameRegex

func (GetEcsPrefixListsResultOutput) Names

func (GetEcsPrefixListsResultOutput) OutputFile

func (GetEcsPrefixListsResultOutput) ToGetEcsPrefixListsResultOutput

func (o GetEcsPrefixListsResultOutput) ToGetEcsPrefixListsResultOutput() GetEcsPrefixListsResultOutput

func (GetEcsPrefixListsResultOutput) ToGetEcsPrefixListsResultOutputWithContext

func (o GetEcsPrefixListsResultOutput) ToGetEcsPrefixListsResultOutputWithContext(ctx context.Context) GetEcsPrefixListsResultOutput

type GetEcsSnapshotGroupsArgs

type GetEcsSnapshotGroupsArgs struct {
	// A list of Snapshot Group IDs.
	Ids []string `pulumi:"ids"`
	// The ID of the instance.
	InstanceId *string `pulumi:"instanceId"`
	// A regex string to filter results by Snapshot Group name.
	NameRegex  *string `pulumi:"nameRegex"`
	OutputFile *string `pulumi:"outputFile"`
	// The name of the snapshot-consistent group.
	SnapshotGroupName *string `pulumi:"snapshotGroupName"`
	// The status of the resource.
	Status *string `pulumi:"status"`
	// List of label key-value pairs.
	Tags map[string]interface{} `pulumi:"tags"`
}

A collection of arguments for invoking getEcsSnapshotGroups.

type GetEcsSnapshotGroupsGroup

type GetEcsSnapshotGroupsGroup struct {
	// The description of the snapshot-consistent group.
	Description string `pulumi:"description"`
	// The ID of the Snapshot Group.
	Id string `pulumi:"id"`
	// The ID of the instance.
	InstanceId string `pulumi:"instanceId"`
	// The ID of the resource group to which the snapshot consistency group belongs.
	ResourceGroupId string `pulumi:"resourceGroupId"`
	// The first ID of the resource.
	SnapshotGroupId string `pulumi:"snapshotGroupId"`
	// The name of the snapshot-consistent group.
	SnapshotGroupName string `pulumi:"snapshotGroupName"`
	// The status of the resource.
	Status string `pulumi:"status"`
	// List of label key-value pairs.
	Tags map[string]interface{} `pulumi:"tags"`
}

type GetEcsSnapshotGroupsGroupArgs

type GetEcsSnapshotGroupsGroupArgs struct {
	// The description of the snapshot-consistent group.
	Description pulumi.StringInput `pulumi:"description"`
	// The ID of the Snapshot Group.
	Id pulumi.StringInput `pulumi:"id"`
	// The ID of the instance.
	InstanceId pulumi.StringInput `pulumi:"instanceId"`
	// The ID of the resource group to which the snapshot consistency group belongs.
	ResourceGroupId pulumi.StringInput `pulumi:"resourceGroupId"`
	// The first ID of the resource.
	SnapshotGroupId pulumi.StringInput `pulumi:"snapshotGroupId"`
	// The name of the snapshot-consistent group.
	SnapshotGroupName pulumi.StringInput `pulumi:"snapshotGroupName"`
	// The status of the resource.
	Status pulumi.StringInput `pulumi:"status"`
	// List of label key-value pairs.
	Tags pulumi.MapInput `pulumi:"tags"`
}

func (GetEcsSnapshotGroupsGroupArgs) ElementType

func (GetEcsSnapshotGroupsGroupArgs) ToGetEcsSnapshotGroupsGroupOutput

func (i GetEcsSnapshotGroupsGroupArgs) ToGetEcsSnapshotGroupsGroupOutput() GetEcsSnapshotGroupsGroupOutput

func (GetEcsSnapshotGroupsGroupArgs) ToGetEcsSnapshotGroupsGroupOutputWithContext

func (i GetEcsSnapshotGroupsGroupArgs) ToGetEcsSnapshotGroupsGroupOutputWithContext(ctx context.Context) GetEcsSnapshotGroupsGroupOutput

type GetEcsSnapshotGroupsGroupArray

type GetEcsSnapshotGroupsGroupArray []GetEcsSnapshotGroupsGroupInput

func (GetEcsSnapshotGroupsGroupArray) ElementType

func (GetEcsSnapshotGroupsGroupArray) ToGetEcsSnapshotGroupsGroupArrayOutput

func (i GetEcsSnapshotGroupsGroupArray) ToGetEcsSnapshotGroupsGroupArrayOutput() GetEcsSnapshotGroupsGroupArrayOutput

func (GetEcsSnapshotGroupsGroupArray) ToGetEcsSnapshotGroupsGroupArrayOutputWithContext

func (i GetEcsSnapshotGroupsGroupArray) ToGetEcsSnapshotGroupsGroupArrayOutputWithContext(ctx context.Context) GetEcsSnapshotGroupsGroupArrayOutput

type GetEcsSnapshotGroupsGroupArrayInput

type GetEcsSnapshotGroupsGroupArrayInput interface {
	pulumi.Input

	ToGetEcsSnapshotGroupsGroupArrayOutput() GetEcsSnapshotGroupsGroupArrayOutput
	ToGetEcsSnapshotGroupsGroupArrayOutputWithContext(context.Context) GetEcsSnapshotGroupsGroupArrayOutput
}

GetEcsSnapshotGroupsGroupArrayInput is an input type that accepts GetEcsSnapshotGroupsGroupArray and GetEcsSnapshotGroupsGroupArrayOutput values. You can construct a concrete instance of `GetEcsSnapshotGroupsGroupArrayInput` via:

GetEcsSnapshotGroupsGroupArray{ GetEcsSnapshotGroupsGroupArgs{...} }

type GetEcsSnapshotGroupsGroupArrayOutput

type GetEcsSnapshotGroupsGroupArrayOutput struct{ *pulumi.OutputState }

func (GetEcsSnapshotGroupsGroupArrayOutput) ElementType

func (GetEcsSnapshotGroupsGroupArrayOutput) Index

func (GetEcsSnapshotGroupsGroupArrayOutput) ToGetEcsSnapshotGroupsGroupArrayOutput

func (o GetEcsSnapshotGroupsGroupArrayOutput) ToGetEcsSnapshotGroupsGroupArrayOutput() GetEcsSnapshotGroupsGroupArrayOutput

func (GetEcsSnapshotGroupsGroupArrayOutput) ToGetEcsSnapshotGroupsGroupArrayOutputWithContext

func (o GetEcsSnapshotGroupsGroupArrayOutput) ToGetEcsSnapshotGroupsGroupArrayOutputWithContext(ctx context.Context) GetEcsSnapshotGroupsGroupArrayOutput

type GetEcsSnapshotGroupsGroupInput

type GetEcsSnapshotGroupsGroupInput interface {
	pulumi.Input

	ToGetEcsSnapshotGroupsGroupOutput() GetEcsSnapshotGroupsGroupOutput
	ToGetEcsSnapshotGroupsGroupOutputWithContext(context.Context) GetEcsSnapshotGroupsGroupOutput
}

GetEcsSnapshotGroupsGroupInput is an input type that accepts GetEcsSnapshotGroupsGroupArgs and GetEcsSnapshotGroupsGroupOutput values. You can construct a concrete instance of `GetEcsSnapshotGroupsGroupInput` via:

GetEcsSnapshotGroupsGroupArgs{...}

type GetEcsSnapshotGroupsGroupOutput

type GetEcsSnapshotGroupsGroupOutput struct{ *pulumi.OutputState }

func (GetEcsSnapshotGroupsGroupOutput) Description

The description of the snapshot-consistent group.

func (GetEcsSnapshotGroupsGroupOutput) ElementType

func (GetEcsSnapshotGroupsGroupOutput) Id

The ID of the Snapshot Group.

func (GetEcsSnapshotGroupsGroupOutput) InstanceId

The ID of the instance.

func (GetEcsSnapshotGroupsGroupOutput) ResourceGroupId

The ID of the resource group to which the snapshot consistency group belongs.

func (GetEcsSnapshotGroupsGroupOutput) SnapshotGroupId

The first ID of the resource.

func (GetEcsSnapshotGroupsGroupOutput) SnapshotGroupName

func (o GetEcsSnapshotGroupsGroupOutput) SnapshotGroupName() pulumi.StringOutput

The name of the snapshot-consistent group.

func (GetEcsSnapshotGroupsGroupOutput) Status

The status of the resource.

func (GetEcsSnapshotGroupsGroupOutput) Tags

List of label key-value pairs.

func (GetEcsSnapshotGroupsGroupOutput) ToGetEcsSnapshotGroupsGroupOutput

func (o GetEcsSnapshotGroupsGroupOutput) ToGetEcsSnapshotGroupsGroupOutput() GetEcsSnapshotGroupsGroupOutput

func (GetEcsSnapshotGroupsGroupOutput) ToGetEcsSnapshotGroupsGroupOutputWithContext

func (o GetEcsSnapshotGroupsGroupOutput) ToGetEcsSnapshotGroupsGroupOutputWithContext(ctx context.Context) GetEcsSnapshotGroupsGroupOutput

type GetEcsSnapshotGroupsOutputArgs

type GetEcsSnapshotGroupsOutputArgs struct {
	// A list of Snapshot Group IDs.
	Ids pulumi.StringArrayInput `pulumi:"ids"`
	// The ID of the instance.
	InstanceId pulumi.StringPtrInput `pulumi:"instanceId"`
	// A regex string to filter results by Snapshot Group name.
	NameRegex  pulumi.StringPtrInput `pulumi:"nameRegex"`
	OutputFile pulumi.StringPtrInput `pulumi:"outputFile"`
	// The name of the snapshot-consistent group.
	SnapshotGroupName pulumi.StringPtrInput `pulumi:"snapshotGroupName"`
	// The status of the resource.
	Status pulumi.StringPtrInput `pulumi:"status"`
	// List of label key-value pairs.
	Tags pulumi.MapInput `pulumi:"tags"`
}

A collection of arguments for invoking getEcsSnapshotGroups.

func (GetEcsSnapshotGroupsOutputArgs) ElementType

type GetEcsSnapshotGroupsResult

type GetEcsSnapshotGroupsResult struct {
	Groups []GetEcsSnapshotGroupsGroup `pulumi:"groups"`
	// The provider-assigned unique ID for this managed resource.
	Id                string                 `pulumi:"id"`
	Ids               []string               `pulumi:"ids"`
	InstanceId        *string                `pulumi:"instanceId"`
	NameRegex         *string                `pulumi:"nameRegex"`
	Names             []string               `pulumi:"names"`
	OutputFile        *string                `pulumi:"outputFile"`
	SnapshotGroupName *string                `pulumi:"snapshotGroupName"`
	Status            *string                `pulumi:"status"`
	Tags              map[string]interface{} `pulumi:"tags"`
}

A collection of values returned by getEcsSnapshotGroups.

func GetEcsSnapshotGroups

func GetEcsSnapshotGroups(ctx *pulumi.Context, args *GetEcsSnapshotGroupsArgs, opts ...pulumi.InvokeOption) (*GetEcsSnapshotGroupsResult, error)

This data source provides the Ecs Snapshot Groups of the current Alibaba Cloud user.

> **NOTE:** Available in v1.160.0+.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/go/alicloud/ecs"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		ids, err := ecs.GetEcsSnapshotGroups(ctx, &ecs.GetEcsSnapshotGroupsArgs{
			Ids: []string{
				"example-id",
			},
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("ecsSnapshotGroupId1", ids.Groups[0].Id)
		nameRegex, err := ecs.GetEcsSnapshotGroups(ctx, &ecs.GetEcsSnapshotGroupsArgs{
			NameRegex: pulumi.StringRef("^my-SnapshotGroup"),
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("ecsSnapshotGroupId2", nameRegex.Groups[0].Id)
		status, err := ecs.GetEcsSnapshotGroups(ctx, &ecs.GetEcsSnapshotGroupsArgs{
			Status: pulumi.StringRef("accomplished"),
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("ecsSnapshotGroupId3", status.Groups[0].Id)
		instanceId, err := ecs.GetEcsSnapshotGroups(ctx, &ecs.GetEcsSnapshotGroupsArgs{
			InstanceId: pulumi.StringRef("example-instance_id"),
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("ecsSnapshotGroupId4", instanceId.Groups[0].Id)
		return nil
	})
}

```

type GetEcsSnapshotGroupsResultOutput

type GetEcsSnapshotGroupsResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getEcsSnapshotGroups.

func (GetEcsSnapshotGroupsResultOutput) ElementType

func (GetEcsSnapshotGroupsResultOutput) Groups

func (GetEcsSnapshotGroupsResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetEcsSnapshotGroupsResultOutput) Ids

func (GetEcsSnapshotGroupsResultOutput) InstanceId

func (GetEcsSnapshotGroupsResultOutput) NameRegex

func (GetEcsSnapshotGroupsResultOutput) Names

func (GetEcsSnapshotGroupsResultOutput) OutputFile

func (GetEcsSnapshotGroupsResultOutput) SnapshotGroupName

func (GetEcsSnapshotGroupsResultOutput) Status

func (GetEcsSnapshotGroupsResultOutput) Tags

func (GetEcsSnapshotGroupsResultOutput) ToGetEcsSnapshotGroupsResultOutput

func (o GetEcsSnapshotGroupsResultOutput) ToGetEcsSnapshotGroupsResultOutput() GetEcsSnapshotGroupsResultOutput

func (GetEcsSnapshotGroupsResultOutput) ToGetEcsSnapshotGroupsResultOutputWithContext

func (o GetEcsSnapshotGroupsResultOutput) ToGetEcsSnapshotGroupsResultOutputWithContext(ctx context.Context) GetEcsSnapshotGroupsResultOutput

type GetEcsSnapshotsArgs

type GetEcsSnapshotsArgs struct {
	// The category of the snapshot.
	Category *string `pulumi:"category"`
	// Specifies whether to check the validity of the request without actually making the request.
	DryRun *bool `pulumi:"dryRun"`
	// Whether the snapshot is encrypted.
	Encrypted *bool `pulumi:"encrypted"`
	// A list of Snapshot IDs.
	Ids []string `pulumi:"ids"`
	// The kms key id.
	KmsKeyId *string `pulumi:"kmsKeyId"`
	// A regex string to filter results by Snapshot name.
	NameRegex  *string `pulumi:"nameRegex"`
	OutputFile *string `pulumi:"outputFile"`
	// The resource group id.
	ResourceGroupId *string `pulumi:"resourceGroupId"`
	// The snapshot link id.
	SnapshotLinkId *string `pulumi:"snapshotLinkId"`
	// Snapshot Display Name.
	SnapshotName *string `pulumi:"snapshotName"`
	// Snapshot creation type.
	SnapshotType *string `pulumi:"snapshotType"`
	// Source disk attributes.
	SourceDiskType *string `pulumi:"sourceDiskType"`
	// The status of the snapshot.
	Status *string `pulumi:"status"`
	// The tags.
	Tags map[string]interface{} `pulumi:"tags"`
	Type *string                `pulumi:"type"`
	// A resource type that has a reference relationship.
	Usage *string `pulumi:"usage"`
}

A collection of arguments for invoking getEcsSnapshots.

type GetEcsSnapshotsOutputArgs

type GetEcsSnapshotsOutputArgs struct {
	// The category of the snapshot.
	Category pulumi.StringPtrInput `pulumi:"category"`
	// Specifies whether to check the validity of the request without actually making the request.
	DryRun pulumi.BoolPtrInput `pulumi:"dryRun"`
	// Whether the snapshot is encrypted.
	Encrypted pulumi.BoolPtrInput `pulumi:"encrypted"`
	// A list of Snapshot IDs.
	Ids pulumi.StringArrayInput `pulumi:"ids"`
	// The kms key id.
	KmsKeyId pulumi.StringPtrInput `pulumi:"kmsKeyId"`
	// A regex string to filter results by Snapshot name.
	NameRegex  pulumi.StringPtrInput `pulumi:"nameRegex"`
	OutputFile pulumi.StringPtrInput `pulumi:"outputFile"`
	// The resource group id.
	ResourceGroupId pulumi.StringPtrInput `pulumi:"resourceGroupId"`
	// The snapshot link id.
	SnapshotLinkId pulumi.StringPtrInput `pulumi:"snapshotLinkId"`
	// Snapshot Display Name.
	SnapshotName pulumi.StringPtrInput `pulumi:"snapshotName"`
	// Snapshot creation type.
	SnapshotType pulumi.StringPtrInput `pulumi:"snapshotType"`
	// Source disk attributes.
	SourceDiskType pulumi.StringPtrInput `pulumi:"sourceDiskType"`
	// The status of the snapshot.
	Status pulumi.StringPtrInput `pulumi:"status"`
	// The tags.
	Tags pulumi.MapInput       `pulumi:"tags"`
	Type pulumi.StringPtrInput `pulumi:"type"`
	// A resource type that has a reference relationship.
	Usage pulumi.StringPtrInput `pulumi:"usage"`
}

A collection of arguments for invoking getEcsSnapshots.

func (GetEcsSnapshotsOutputArgs) ElementType

func (GetEcsSnapshotsOutputArgs) ElementType() reflect.Type

type GetEcsSnapshotsResult

type GetEcsSnapshotsResult struct {
	Category  *string `pulumi:"category"`
	DryRun    *bool   `pulumi:"dryRun"`
	Encrypted *bool   `pulumi:"encrypted"`
	// The provider-assigned unique ID for this managed resource.
	Id              string                    `pulumi:"id"`
	Ids             []string                  `pulumi:"ids"`
	KmsKeyId        *string                   `pulumi:"kmsKeyId"`
	NameRegex       *string                   `pulumi:"nameRegex"`
	Names           []string                  `pulumi:"names"`
	OutputFile      *string                   `pulumi:"outputFile"`
	ResourceGroupId *string                   `pulumi:"resourceGroupId"`
	SnapshotLinkId  *string                   `pulumi:"snapshotLinkId"`
	SnapshotName    *string                   `pulumi:"snapshotName"`
	SnapshotType    *string                   `pulumi:"snapshotType"`
	Snapshots       []GetEcsSnapshotsSnapshot `pulumi:"snapshots"`
	SourceDiskType  *string                   `pulumi:"sourceDiskType"`
	Status          *string                   `pulumi:"status"`
	Tags            map[string]interface{}    `pulumi:"tags"`
	Type            *string                   `pulumi:"type"`
	Usage           *string                   `pulumi:"usage"`
}

A collection of values returned by getEcsSnapshots.

func GetEcsSnapshots

func GetEcsSnapshots(ctx *pulumi.Context, args *GetEcsSnapshotsArgs, opts ...pulumi.InvokeOption) (*GetEcsSnapshotsResult, error)

This data source provides the Ecs Snapshots of the current Alibaba Cloud user.

> **NOTE:** Available in v1.120.0+.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/go/alicloud/ecs"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := ecs.GetEcsSnapshots(ctx, &ecs.GetEcsSnapshotsArgs{
			Ids: []string{
				"s-bp1fvuxxxxxxxx",
			},
			NameRegex: pulumi.StringRef("tf-test"),
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("firstEcsSnapshotId", example.Snapshots[0].Id)
		return nil
	})
}

```

type GetEcsSnapshotsResultOutput

type GetEcsSnapshotsResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getEcsSnapshots.

func (GetEcsSnapshotsResultOutput) Category

func (GetEcsSnapshotsResultOutput) DryRun

func (GetEcsSnapshotsResultOutput) ElementType

func (GetEcsSnapshotsResultOutput) Encrypted

func (GetEcsSnapshotsResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetEcsSnapshotsResultOutput) Ids

func (GetEcsSnapshotsResultOutput) KmsKeyId

func (GetEcsSnapshotsResultOutput) NameRegex

func (GetEcsSnapshotsResultOutput) Names

func (GetEcsSnapshotsResultOutput) OutputFile

func (GetEcsSnapshotsResultOutput) ResourceGroupId

func (GetEcsSnapshotsResultOutput) SnapshotLinkId

func (GetEcsSnapshotsResultOutput) SnapshotName

func (GetEcsSnapshotsResultOutput) SnapshotType

func (GetEcsSnapshotsResultOutput) Snapshots

func (GetEcsSnapshotsResultOutput) SourceDiskType

func (GetEcsSnapshotsResultOutput) Status

func (GetEcsSnapshotsResultOutput) Tags

func (GetEcsSnapshotsResultOutput) ToGetEcsSnapshotsResultOutput

func (o GetEcsSnapshotsResultOutput) ToGetEcsSnapshotsResultOutput() GetEcsSnapshotsResultOutput

func (GetEcsSnapshotsResultOutput) ToGetEcsSnapshotsResultOutputWithContext

func (o GetEcsSnapshotsResultOutput) ToGetEcsSnapshotsResultOutputWithContext(ctx context.Context) GetEcsSnapshotsResultOutput

func (GetEcsSnapshotsResultOutput) Type

func (GetEcsSnapshotsResultOutput) Usage

type GetEcsSnapshotsSnapshot

type GetEcsSnapshotsSnapshot struct {
	// The category of the snapshot.
	Category     string `pulumi:"category"`
	CreationTime string `pulumi:"creationTime"`
	// The description of the snapshot.
	Description string `pulumi:"description"`
	// The source disk id.
	DiskId string `pulumi:"diskId"`
	// Whether the snapshot is encrypted.
	Encrypted bool `pulumi:"encrypted"`
	// The ID of the Snapshot.
	Id string `pulumi:"id"`
	// Whether snapshot speed availability is enabled.
	InstantAccess bool `pulumi:"instantAccess"`
	// Specifies the retention period of the instant access feature. After the retention period ends, the snapshot is automatically released.
	InstantAccessRetentionDays int    `pulumi:"instantAccessRetentionDays"`
	Name                       string `pulumi:"name"`
	// The product number inherited from the mirror market.
	ProductCode string `pulumi:"productCode"`
	// Snapshot creation progress, in percentage.
	Progress string `pulumi:"progress"`
	// Remaining completion time for the snapshot being created.
	RemainTime int `pulumi:"remainTime"`
	// The resource group id.
	ResourceGroupId string `pulumi:"resourceGroupId"`
	// Automatic snapshot retention days.
	RetentionDays int `pulumi:"retentionDays"`
	// The snapshot id.
	SnapshotId string `pulumi:"snapshotId"`
	// Snapshot Display Name.
	SnapshotName string `pulumi:"snapshotName"`
	// The serial number of the snapshot.
	SnapshotSn string `pulumi:"snapshotSn"`
	// Snapshot creation type.
	SnapshotType string `pulumi:"snapshotType"`
	SourceDiskId string `pulumi:"sourceDiskId"`
	// Source disk capacity.
	SourceDiskSize string `pulumi:"sourceDiskSize"`
	// Source disk attributes.
	SourceDiskType string `pulumi:"sourceDiskType"`
	// Original disk type.
	SourceStorageType string `pulumi:"sourceStorageType"`
	// The status of the snapshot.
	Status string `pulumi:"status"`
	// The tags.
	Tags map[string]interface{} `pulumi:"tags"`
	Type string                 `pulumi:"type"`
	// A resource type that has a reference relationship.
	Usage string `pulumi:"usage"`
}

type GetEcsSnapshotsSnapshotArgs

type GetEcsSnapshotsSnapshotArgs struct {
	// The category of the snapshot.
	Category     pulumi.StringInput `pulumi:"category"`
	CreationTime pulumi.StringInput `pulumi:"creationTime"`
	// The description of the snapshot.
	Description pulumi.StringInput `pulumi:"description"`
	// The source disk id.
	DiskId pulumi.StringInput `pulumi:"diskId"`
	// Whether the snapshot is encrypted.
	Encrypted pulumi.BoolInput `pulumi:"encrypted"`
	// The ID of the Snapshot.
	Id pulumi.StringInput `pulumi:"id"`
	// Whether snapshot speed availability is enabled.
	InstantAccess pulumi.BoolInput `pulumi:"instantAccess"`
	// Specifies the retention period of the instant access feature. After the retention period ends, the snapshot is automatically released.
	InstantAccessRetentionDays pulumi.IntInput    `pulumi:"instantAccessRetentionDays"`
	Name                       pulumi.StringInput `pulumi:"name"`
	// The product number inherited from the mirror market.
	ProductCode pulumi.StringInput `pulumi:"productCode"`
	// Snapshot creation progress, in percentage.
	Progress pulumi.StringInput `pulumi:"progress"`
	// Remaining completion time for the snapshot being created.
	RemainTime pulumi.IntInput `pulumi:"remainTime"`
	// The resource group id.
	ResourceGroupId pulumi.StringInput `pulumi:"resourceGroupId"`
	// Automatic snapshot retention days.
	RetentionDays pulumi.IntInput `pulumi:"retentionDays"`
	// The snapshot id.
	SnapshotId pulumi.StringInput `pulumi:"snapshotId"`
	// Snapshot Display Name.
	SnapshotName pulumi.StringInput `pulumi:"snapshotName"`
	// The serial number of the snapshot.
	SnapshotSn pulumi.StringInput `pulumi:"snapshotSn"`
	// Snapshot creation type.
	SnapshotType pulumi.StringInput `pulumi:"snapshotType"`
	SourceDiskId pulumi.StringInput `pulumi:"sourceDiskId"`
	// Source disk capacity.
	SourceDiskSize pulumi.StringInput `pulumi:"sourceDiskSize"`
	// Source disk attributes.
	SourceDiskType pulumi.StringInput `pulumi:"sourceDiskType"`
	// Original disk type.
	SourceStorageType pulumi.StringInput `pulumi:"sourceStorageType"`
	// The status of the snapshot.
	Status pulumi.StringInput `pulumi:"status"`
	// The tags.
	Tags pulumi.MapInput    `pulumi:"tags"`
	Type pulumi.StringInput `pulumi:"type"`
	// A resource type that has a reference relationship.
	Usage pulumi.StringInput `pulumi:"usage"`
}

func (GetEcsSnapshotsSnapshotArgs) ElementType

func (GetEcsSnapshotsSnapshotArgs) ToGetEcsSnapshotsSnapshotOutput

func (i GetEcsSnapshotsSnapshotArgs) ToGetEcsSnapshotsSnapshotOutput() GetEcsSnapshotsSnapshotOutput

func (GetEcsSnapshotsSnapshotArgs) ToGetEcsSnapshotsSnapshotOutputWithContext

func (i GetEcsSnapshotsSnapshotArgs) ToGetEcsSnapshotsSnapshotOutputWithContext(ctx context.Context) GetEcsSnapshotsSnapshotOutput

type GetEcsSnapshotsSnapshotArray

type GetEcsSnapshotsSnapshotArray []GetEcsSnapshotsSnapshotInput

func (GetEcsSnapshotsSnapshotArray) ElementType

func (GetEcsSnapshotsSnapshotArray) ToGetEcsSnapshotsSnapshotArrayOutput

func (i GetEcsSnapshotsSnapshotArray) ToGetEcsSnapshotsSnapshotArrayOutput() GetEcsSnapshotsSnapshotArrayOutput

func (GetEcsSnapshotsSnapshotArray) ToGetEcsSnapshotsSnapshotArrayOutputWithContext

func (i GetEcsSnapshotsSnapshotArray) ToGetEcsSnapshotsSnapshotArrayOutputWithContext(ctx context.Context) GetEcsSnapshotsSnapshotArrayOutput

type GetEcsSnapshotsSnapshotArrayInput

type GetEcsSnapshotsSnapshotArrayInput interface {
	pulumi.Input

	ToGetEcsSnapshotsSnapshotArrayOutput() GetEcsSnapshotsSnapshotArrayOutput
	ToGetEcsSnapshotsSnapshotArrayOutputWithContext(context.Context) GetEcsSnapshotsSnapshotArrayOutput
}

GetEcsSnapshotsSnapshotArrayInput is an input type that accepts GetEcsSnapshotsSnapshotArray and GetEcsSnapshotsSnapshotArrayOutput values. You can construct a concrete instance of `GetEcsSnapshotsSnapshotArrayInput` via:

GetEcsSnapshotsSnapshotArray{ GetEcsSnapshotsSnapshotArgs{...} }

type GetEcsSnapshotsSnapshotArrayOutput

type GetEcsSnapshotsSnapshotArrayOutput struct{ *pulumi.OutputState }

func (GetEcsSnapshotsSnapshotArrayOutput) ElementType

func (GetEcsSnapshotsSnapshotArrayOutput) Index

func (GetEcsSnapshotsSnapshotArrayOutput) ToGetEcsSnapshotsSnapshotArrayOutput

func (o GetEcsSnapshotsSnapshotArrayOutput) ToGetEcsSnapshotsSnapshotArrayOutput() GetEcsSnapshotsSnapshotArrayOutput

func (GetEcsSnapshotsSnapshotArrayOutput) ToGetEcsSnapshotsSnapshotArrayOutputWithContext

func (o GetEcsSnapshotsSnapshotArrayOutput) ToGetEcsSnapshotsSnapshotArrayOutputWithContext(ctx context.Context) GetEcsSnapshotsSnapshotArrayOutput

type GetEcsSnapshotsSnapshotInput

type GetEcsSnapshotsSnapshotInput interface {
	pulumi.Input

	ToGetEcsSnapshotsSnapshotOutput() GetEcsSnapshotsSnapshotOutput
	ToGetEcsSnapshotsSnapshotOutputWithContext(context.Context) GetEcsSnapshotsSnapshotOutput
}

GetEcsSnapshotsSnapshotInput is an input type that accepts GetEcsSnapshotsSnapshotArgs and GetEcsSnapshotsSnapshotOutput values. You can construct a concrete instance of `GetEcsSnapshotsSnapshotInput` via:

GetEcsSnapshotsSnapshotArgs{...}

type GetEcsSnapshotsSnapshotOutput

type GetEcsSnapshotsSnapshotOutput struct{ *pulumi.OutputState }

func (GetEcsSnapshotsSnapshotOutput) Category

The category of the snapshot.

func (GetEcsSnapshotsSnapshotOutput) CreationTime

func (GetEcsSnapshotsSnapshotOutput) Description

The description of the snapshot.

func (GetEcsSnapshotsSnapshotOutput) DiskId

The source disk id.

func (GetEcsSnapshotsSnapshotOutput) ElementType

func (GetEcsSnapshotsSnapshotOutput) Encrypted

Whether the snapshot is encrypted.

func (GetEcsSnapshotsSnapshotOutput) Id

The ID of the Snapshot.

func (GetEcsSnapshotsSnapshotOutput) InstantAccess

Whether snapshot speed availability is enabled.

func (GetEcsSnapshotsSnapshotOutput) InstantAccessRetentionDays

func (o GetEcsSnapshotsSnapshotOutput) InstantAccessRetentionDays() pulumi.IntOutput

Specifies the retention period of the instant access feature. After the retention period ends, the snapshot is automatically released.

func (GetEcsSnapshotsSnapshotOutput) Name

func (GetEcsSnapshotsSnapshotOutput) ProductCode

The product number inherited from the mirror market.

func (GetEcsSnapshotsSnapshotOutput) Progress

Snapshot creation progress, in percentage.

func (GetEcsSnapshotsSnapshotOutput) RemainTime

Remaining completion time for the snapshot being created.

func (GetEcsSnapshotsSnapshotOutput) ResourceGroupId

The resource group id.

func (GetEcsSnapshotsSnapshotOutput) RetentionDays

Automatic snapshot retention days.

func (GetEcsSnapshotsSnapshotOutput) SnapshotId

The snapshot id.

func (GetEcsSnapshotsSnapshotOutput) SnapshotName

Snapshot Display Name.

func (GetEcsSnapshotsSnapshotOutput) SnapshotSn

The serial number of the snapshot.

func (GetEcsSnapshotsSnapshotOutput) SnapshotType

Snapshot creation type.

func (GetEcsSnapshotsSnapshotOutput) SourceDiskId

func (GetEcsSnapshotsSnapshotOutput) SourceDiskSize

Source disk capacity.

func (GetEcsSnapshotsSnapshotOutput) SourceDiskType

Source disk attributes.

func (GetEcsSnapshotsSnapshotOutput) SourceStorageType

func (o GetEcsSnapshotsSnapshotOutput) SourceStorageType() pulumi.StringOutput

Original disk type.

func (GetEcsSnapshotsSnapshotOutput) Status

The status of the snapshot.

func (GetEcsSnapshotsSnapshotOutput) Tags

The tags.

func (GetEcsSnapshotsSnapshotOutput) ToGetEcsSnapshotsSnapshotOutput

func (o GetEcsSnapshotsSnapshotOutput) ToGetEcsSnapshotsSnapshotOutput() GetEcsSnapshotsSnapshotOutput

func (GetEcsSnapshotsSnapshotOutput) ToGetEcsSnapshotsSnapshotOutputWithContext

func (o GetEcsSnapshotsSnapshotOutput) ToGetEcsSnapshotsSnapshotOutputWithContext(ctx context.Context) GetEcsSnapshotsSnapshotOutput

func (GetEcsSnapshotsSnapshotOutput) Type

func (GetEcsSnapshotsSnapshotOutput) Usage

A resource type that has a reference relationship.

type GetEcsStorageCapacityUnitsArgs

type GetEcsStorageCapacityUnitsArgs struct {
	// A list of Storage Capacity Unit IDs.
	Ids []string `pulumi:"ids"`
	// A regex string to filter results by Storage Capacity Unit name.
	NameRegex  *string `pulumi:"nameRegex"`
	OutputFile *string `pulumi:"outputFile"`
	// The status of Storage Capacity Unit.
	Status *string `pulumi:"status"`
}

A collection of arguments for invoking getEcsStorageCapacityUnits.

type GetEcsStorageCapacityUnitsOutputArgs

type GetEcsStorageCapacityUnitsOutputArgs struct {
	// A list of Storage Capacity Unit IDs.
	Ids pulumi.StringArrayInput `pulumi:"ids"`
	// A regex string to filter results by Storage Capacity Unit name.
	NameRegex  pulumi.StringPtrInput `pulumi:"nameRegex"`
	OutputFile pulumi.StringPtrInput `pulumi:"outputFile"`
	// The status of Storage Capacity Unit.
	Status pulumi.StringPtrInput `pulumi:"status"`
}

A collection of arguments for invoking getEcsStorageCapacityUnits.

func (GetEcsStorageCapacityUnitsOutputArgs) ElementType

type GetEcsStorageCapacityUnitsResult

type GetEcsStorageCapacityUnitsResult struct {
	// The provider-assigned unique ID for this managed resource.
	Id         string                           `pulumi:"id"`
	Ids        []string                         `pulumi:"ids"`
	NameRegex  *string                          `pulumi:"nameRegex"`
	Names      []string                         `pulumi:"names"`
	OutputFile *string                          `pulumi:"outputFile"`
	Status     *string                          `pulumi:"status"`
	Units      []GetEcsStorageCapacityUnitsUnit `pulumi:"units"`
}

A collection of values returned by getEcsStorageCapacityUnits.

func GetEcsStorageCapacityUnits

func GetEcsStorageCapacityUnits(ctx *pulumi.Context, args *GetEcsStorageCapacityUnitsArgs, opts ...pulumi.InvokeOption) (*GetEcsStorageCapacityUnitsResult, error)

This data source provides the Ecs Storage Capacity Units of the current Alibaba Cloud user.

> **NOTE:** Available in v1.155.0+.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/go/alicloud/ecs"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		ids, err := ecs.GetEcsStorageCapacityUnits(ctx, nil, nil)
		if err != nil {
			return err
		}
		ctx.Export("ecsStorageCapacityUnitId1", ids.Units[0].Id)
		nameRegex, err := ecs.GetEcsStorageCapacityUnits(ctx, &ecs.GetEcsStorageCapacityUnitsArgs{
			NameRegex: pulumi.StringRef("^my-StorageCapacityUnit"),
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("ecsStorageCapacityUnitId2", nameRegex.Units[0].Id)
		return nil
	})
}

```

type GetEcsStorageCapacityUnitsResultOutput

type GetEcsStorageCapacityUnitsResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getEcsStorageCapacityUnits.

func (GetEcsStorageCapacityUnitsResultOutput) ElementType

func (GetEcsStorageCapacityUnitsResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetEcsStorageCapacityUnitsResultOutput) Ids

func (GetEcsStorageCapacityUnitsResultOutput) NameRegex

func (GetEcsStorageCapacityUnitsResultOutput) Names

func (GetEcsStorageCapacityUnitsResultOutput) OutputFile

func (GetEcsStorageCapacityUnitsResultOutput) Status

func (GetEcsStorageCapacityUnitsResultOutput) ToGetEcsStorageCapacityUnitsResultOutput

func (o GetEcsStorageCapacityUnitsResultOutput) ToGetEcsStorageCapacityUnitsResultOutput() GetEcsStorageCapacityUnitsResultOutput

func (GetEcsStorageCapacityUnitsResultOutput) ToGetEcsStorageCapacityUnitsResultOutputWithContext

func (o GetEcsStorageCapacityUnitsResultOutput) ToGetEcsStorageCapacityUnitsResultOutputWithContext(ctx context.Context) GetEcsStorageCapacityUnitsResultOutput

func (GetEcsStorageCapacityUnitsResultOutput) Units

type GetEcsStorageCapacityUnitsUnit

type GetEcsStorageCapacityUnitsUnit struct {
	// When the AllocationType value is Shared, this parameter indicates the allocation status of Storage Capacity Unit. Valid values: `allocated`, `Ignored`.
	AllocationStatus string `pulumi:"allocationStatus"`
	// The capacity of the Storage Capacity Unit.
	Capacity int `pulumi:"capacity"`
	// The time when the Storage Capacity Unit was created.
	CreateTime string `pulumi:"createTime"`
	// The description of the Storage Capacity Unit.
	Description string `pulumi:"description"`
	// The time when the Storage Capacity Unit expires.
	ExpiredTime string `pulumi:"expiredTime"`
	// The ID of the Storage Capacity Unit.
	Id string `pulumi:"id"`
	// The effective time of the Storage Capacity Unit.
	StartTime string `pulumi:"startTime"`
	// The status of Storage Capacity Unit.
	Status string `pulumi:"status"`
	// The ID of Storage Capacity Unit.
	StorageCapacityUnitId string `pulumi:"storageCapacityUnitId"`
	// The name of the Storage Capacity Unit.
	StorageCapacityUnitName string `pulumi:"storageCapacityUnitName"`
}

type GetEcsStorageCapacityUnitsUnitArgs

type GetEcsStorageCapacityUnitsUnitArgs struct {
	// When the AllocationType value is Shared, this parameter indicates the allocation status of Storage Capacity Unit. Valid values: `allocated`, `Ignored`.
	AllocationStatus pulumi.StringInput `pulumi:"allocationStatus"`
	// The capacity of the Storage Capacity Unit.
	Capacity pulumi.IntInput `pulumi:"capacity"`
	// The time when the Storage Capacity Unit was created.
	CreateTime pulumi.StringInput `pulumi:"createTime"`
	// The description of the Storage Capacity Unit.
	Description pulumi.StringInput `pulumi:"description"`
	// The time when the Storage Capacity Unit expires.
	ExpiredTime pulumi.StringInput `pulumi:"expiredTime"`
	// The ID of the Storage Capacity Unit.
	Id pulumi.StringInput `pulumi:"id"`
	// The effective time of the Storage Capacity Unit.
	StartTime pulumi.StringInput `pulumi:"startTime"`
	// The status of Storage Capacity Unit.
	Status pulumi.StringInput `pulumi:"status"`
	// The ID of Storage Capacity Unit.
	StorageCapacityUnitId pulumi.StringInput `pulumi:"storageCapacityUnitId"`
	// The name of the Storage Capacity Unit.
	StorageCapacityUnitName pulumi.StringInput `pulumi:"storageCapacityUnitName"`
}

func (GetEcsStorageCapacityUnitsUnitArgs) ElementType

func (GetEcsStorageCapacityUnitsUnitArgs) ToGetEcsStorageCapacityUnitsUnitOutput

func (i GetEcsStorageCapacityUnitsUnitArgs) ToGetEcsStorageCapacityUnitsUnitOutput() GetEcsStorageCapacityUnitsUnitOutput

func (GetEcsStorageCapacityUnitsUnitArgs) ToGetEcsStorageCapacityUnitsUnitOutputWithContext

func (i GetEcsStorageCapacityUnitsUnitArgs) ToGetEcsStorageCapacityUnitsUnitOutputWithContext(ctx context.Context) GetEcsStorageCapacityUnitsUnitOutput

type GetEcsStorageCapacityUnitsUnitArray

type GetEcsStorageCapacityUnitsUnitArray []GetEcsStorageCapacityUnitsUnitInput

func (GetEcsStorageCapacityUnitsUnitArray) ElementType

func (GetEcsStorageCapacityUnitsUnitArray) ToGetEcsStorageCapacityUnitsUnitArrayOutput

func (i GetEcsStorageCapacityUnitsUnitArray) ToGetEcsStorageCapacityUnitsUnitArrayOutput() GetEcsStorageCapacityUnitsUnitArrayOutput

func (GetEcsStorageCapacityUnitsUnitArray) ToGetEcsStorageCapacityUnitsUnitArrayOutputWithContext

func (i GetEcsStorageCapacityUnitsUnitArray) ToGetEcsStorageCapacityUnitsUnitArrayOutputWithContext(ctx context.Context) GetEcsStorageCapacityUnitsUnitArrayOutput

type GetEcsStorageCapacityUnitsUnitArrayInput

type GetEcsStorageCapacityUnitsUnitArrayInput interface {
	pulumi.Input

	ToGetEcsStorageCapacityUnitsUnitArrayOutput() GetEcsStorageCapacityUnitsUnitArrayOutput
	ToGetEcsStorageCapacityUnitsUnitArrayOutputWithContext(context.Context) GetEcsStorageCapacityUnitsUnitArrayOutput
}

GetEcsStorageCapacityUnitsUnitArrayInput is an input type that accepts GetEcsStorageCapacityUnitsUnitArray and GetEcsStorageCapacityUnitsUnitArrayOutput values. You can construct a concrete instance of `GetEcsStorageCapacityUnitsUnitArrayInput` via:

GetEcsStorageCapacityUnitsUnitArray{ GetEcsStorageCapacityUnitsUnitArgs{...} }

type GetEcsStorageCapacityUnitsUnitArrayOutput

type GetEcsStorageCapacityUnitsUnitArrayOutput struct{ *pulumi.OutputState }

func (GetEcsStorageCapacityUnitsUnitArrayOutput) ElementType

func (GetEcsStorageCapacityUnitsUnitArrayOutput) Index

func (GetEcsStorageCapacityUnitsUnitArrayOutput) ToGetEcsStorageCapacityUnitsUnitArrayOutput

func (o GetEcsStorageCapacityUnitsUnitArrayOutput) ToGetEcsStorageCapacityUnitsUnitArrayOutput() GetEcsStorageCapacityUnitsUnitArrayOutput

func (GetEcsStorageCapacityUnitsUnitArrayOutput) ToGetEcsStorageCapacityUnitsUnitArrayOutputWithContext

func (o GetEcsStorageCapacityUnitsUnitArrayOutput) ToGetEcsStorageCapacityUnitsUnitArrayOutputWithContext(ctx context.Context) GetEcsStorageCapacityUnitsUnitArrayOutput

type GetEcsStorageCapacityUnitsUnitInput

type GetEcsStorageCapacityUnitsUnitInput interface {
	pulumi.Input

	ToGetEcsStorageCapacityUnitsUnitOutput() GetEcsStorageCapacityUnitsUnitOutput
	ToGetEcsStorageCapacityUnitsUnitOutputWithContext(context.Context) GetEcsStorageCapacityUnitsUnitOutput
}

GetEcsStorageCapacityUnitsUnitInput is an input type that accepts GetEcsStorageCapacityUnitsUnitArgs and GetEcsStorageCapacityUnitsUnitOutput values. You can construct a concrete instance of `GetEcsStorageCapacityUnitsUnitInput` via:

GetEcsStorageCapacityUnitsUnitArgs{...}

type GetEcsStorageCapacityUnitsUnitOutput

type GetEcsStorageCapacityUnitsUnitOutput struct{ *pulumi.OutputState }

func (GetEcsStorageCapacityUnitsUnitOutput) AllocationStatus

When the AllocationType value is Shared, this parameter indicates the allocation status of Storage Capacity Unit. Valid values: `allocated`, `Ignored`.

func (GetEcsStorageCapacityUnitsUnitOutput) Capacity

The capacity of the Storage Capacity Unit.

func (GetEcsStorageCapacityUnitsUnitOutput) CreateTime

The time when the Storage Capacity Unit was created.

func (GetEcsStorageCapacityUnitsUnitOutput) Description

The description of the Storage Capacity Unit.

func (GetEcsStorageCapacityUnitsUnitOutput) ElementType

func (GetEcsStorageCapacityUnitsUnitOutput) ExpiredTime

The time when the Storage Capacity Unit expires.

func (GetEcsStorageCapacityUnitsUnitOutput) Id

The ID of the Storage Capacity Unit.

func (GetEcsStorageCapacityUnitsUnitOutput) StartTime

The effective time of the Storage Capacity Unit.

func (GetEcsStorageCapacityUnitsUnitOutput) Status

The status of Storage Capacity Unit.

func (GetEcsStorageCapacityUnitsUnitOutput) StorageCapacityUnitId

func (o GetEcsStorageCapacityUnitsUnitOutput) StorageCapacityUnitId() pulumi.StringOutput

The ID of Storage Capacity Unit.

func (GetEcsStorageCapacityUnitsUnitOutput) StorageCapacityUnitName

func (o GetEcsStorageCapacityUnitsUnitOutput) StorageCapacityUnitName() pulumi.StringOutput

The name of the Storage Capacity Unit.

func (GetEcsStorageCapacityUnitsUnitOutput) ToGetEcsStorageCapacityUnitsUnitOutput

func (o GetEcsStorageCapacityUnitsUnitOutput) ToGetEcsStorageCapacityUnitsUnitOutput() GetEcsStorageCapacityUnitsUnitOutput

func (GetEcsStorageCapacityUnitsUnitOutput) ToGetEcsStorageCapacityUnitsUnitOutputWithContext

func (o GetEcsStorageCapacityUnitsUnitOutput) ToGetEcsStorageCapacityUnitsUnitOutputWithContext(ctx context.Context) GetEcsStorageCapacityUnitsUnitOutput

type GetEipAddressesAddress

type GetEipAddressesAddress struct {
	// The name of the EIP.
	AddressName string `pulumi:"addressName"`
	// The ID of the EIP.
	AllocationId string `pulumi:"allocationId"`
	// The ID of the region to which the EIP belongs.
	AvailableRegions []string `pulumi:"availableRegions"`
	// The maximum bandwidth of the EIP. Unit: Mbit/s.
	Bandwidth string `pulumi:"bandwidth"`
	// The bandwidth value of the EIP bandwidth plan with which the EIP is associated.
	BandwidthPackageBandwidth string `pulumi:"bandwidthPackageBandwidth"`
	// The ID of the EIP bandwidth plan.
	BandwidthPackageId string `pulumi:"bandwidthPackageId"`
	// The type of the bandwidth. Only CommonBandwidthPackage (an EIP bandwidth plan) is returned.
	BandwidthPackageType string `pulumi:"bandwidthPackageType"`
	// The time when the EIP was created.
	CreateTime string `pulumi:"createTime"`
	// Indicates whether deletion protection is enabled.
	DeletionProtection bool `pulumi:"deletionProtection"`
	// The description of the EIP.
	Description string `pulumi:"description"`
	// The expiration date. The time follows the ISO 8601 standard and is displayed in UTC. Format: YYYY-MM-DDThh:mmZ.
	ExpiredTime string `pulumi:"expiredTime"`
	// Indicates whether renewal data is included. This parameter returns true only when the parameter IncludeReservationData is set to true, and some orders have not taken effect.
	HasReservationData string `pulumi:"hasReservationData"`
	// Indicates whether fine-grained monitoring is enabled for the EIP.
	HdMonitorStatus string `pulumi:"hdMonitorStatus"`
	// The ID of the Address.
	Id string `pulumi:"id"`
	// The ID of the instance with which the EIP is associated.
	InstanceId string `pulumi:"instanceId"`
	// The region ID of the associated resource.
	InstanceRegionId string `pulumi:"instanceRegionId"`
	// The type of the instance with which the EIP is associated.
	InstanceType string `pulumi:"instanceType"`
	// The metering method of the EIP.
	InternetChargeType string `pulumi:"internetChargeType"`
	// The IP address of the EIP.
	IpAddress string `pulumi:"ipAddress"`
	// The Internet service provider (ISP).
	Isp string `pulumi:"isp"`
	// The details about the locked EIP.
	OperationLocks []string `pulumi:"operationLocks"`
	// The billing method of the EIP.
	PaymentType string `pulumi:"paymentType"`
	// The time when the renewal takes effect.
	ReservationActiveTime string `pulumi:"reservationActiveTime"`
	// The bandwidth after the renewal takes effect.
	ReservationBandwidth string `pulumi:"reservationBandwidth"`
	// The metering method of the renewal.
	ReservationInternetChargeType string `pulumi:"reservationInternetChargeType"`
	// The type of the renewal order.
	ReservationOrderType string `pulumi:"reservationOrderType"`
	// The ID of the resource group.
	ResourceGroupId string `pulumi:"resourceGroupId"`
	// Indicates whether level-2 throttling is configured.
	SecondLimited bool `pulumi:"secondLimited"`
	// The IDs of the contiguous EIPs.
	SegmentInstanceId string `pulumi:"segmentInstanceId"`
	// The status of the EIP.
	Status string `pulumi:"status"`
	// A mapping of tags to assign to the resource.
	Tags map[string]interface{} `pulumi:"tags"`
}

type GetEipAddressesAddressArgs

type GetEipAddressesAddressArgs struct {
	// The name of the EIP.
	AddressName pulumi.StringInput `pulumi:"addressName"`
	// The ID of the EIP.
	AllocationId pulumi.StringInput `pulumi:"allocationId"`
	// The ID of the region to which the EIP belongs.
	AvailableRegions pulumi.StringArrayInput `pulumi:"availableRegions"`
	// The maximum bandwidth of the EIP. Unit: Mbit/s.
	Bandwidth pulumi.StringInput `pulumi:"bandwidth"`
	// The bandwidth value of the EIP bandwidth plan with which the EIP is associated.
	BandwidthPackageBandwidth pulumi.StringInput `pulumi:"bandwidthPackageBandwidth"`
	// The ID of the EIP bandwidth plan.
	BandwidthPackageId pulumi.StringInput `pulumi:"bandwidthPackageId"`
	// The type of the bandwidth. Only CommonBandwidthPackage (an EIP bandwidth plan) is returned.
	BandwidthPackageType pulumi.StringInput `pulumi:"bandwidthPackageType"`
	// The time when the EIP was created.
	CreateTime pulumi.StringInput `pulumi:"createTime"`
	// Indicates whether deletion protection is enabled.
	DeletionProtection pulumi.BoolInput `pulumi:"deletionProtection"`
	// The description of the EIP.
	Description pulumi.StringInput `pulumi:"description"`
	// The expiration date. The time follows the ISO 8601 standard and is displayed in UTC. Format: YYYY-MM-DDThh:mmZ.
	ExpiredTime pulumi.StringInput `pulumi:"expiredTime"`
	// Indicates whether renewal data is included. This parameter returns true only when the parameter IncludeReservationData is set to true, and some orders have not taken effect.
	HasReservationData pulumi.StringInput `pulumi:"hasReservationData"`
	// Indicates whether fine-grained monitoring is enabled for the EIP.
	HdMonitorStatus pulumi.StringInput `pulumi:"hdMonitorStatus"`
	// The ID of the Address.
	Id pulumi.StringInput `pulumi:"id"`
	// The ID of the instance with which the EIP is associated.
	InstanceId pulumi.StringInput `pulumi:"instanceId"`
	// The region ID of the associated resource.
	InstanceRegionId pulumi.StringInput `pulumi:"instanceRegionId"`
	// The type of the instance with which the EIP is associated.
	InstanceType pulumi.StringInput `pulumi:"instanceType"`
	// The metering method of the EIP.
	InternetChargeType pulumi.StringInput `pulumi:"internetChargeType"`
	// The IP address of the EIP.
	IpAddress pulumi.StringInput `pulumi:"ipAddress"`
	// The Internet service provider (ISP).
	Isp pulumi.StringInput `pulumi:"isp"`
	// The details about the locked EIP.
	OperationLocks pulumi.StringArrayInput `pulumi:"operationLocks"`
	// The billing method of the EIP.
	PaymentType pulumi.StringInput `pulumi:"paymentType"`
	// The time when the renewal takes effect.
	ReservationActiveTime pulumi.StringInput `pulumi:"reservationActiveTime"`
	// The bandwidth after the renewal takes effect.
	ReservationBandwidth pulumi.StringInput `pulumi:"reservationBandwidth"`
	// The metering method of the renewal.
	ReservationInternetChargeType pulumi.StringInput `pulumi:"reservationInternetChargeType"`
	// The type of the renewal order.
	ReservationOrderType pulumi.StringInput `pulumi:"reservationOrderType"`
	// The ID of the resource group.
	ResourceGroupId pulumi.StringInput `pulumi:"resourceGroupId"`
	// Indicates whether level-2 throttling is configured.
	SecondLimited pulumi.BoolInput `pulumi:"secondLimited"`
	// The IDs of the contiguous EIPs.
	SegmentInstanceId pulumi.StringInput `pulumi:"segmentInstanceId"`
	// The status of the EIP.
	Status pulumi.StringInput `pulumi:"status"`
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapInput `pulumi:"tags"`
}

func (GetEipAddressesAddressArgs) ElementType

func (GetEipAddressesAddressArgs) ElementType() reflect.Type

func (GetEipAddressesAddressArgs) ToGetEipAddressesAddressOutput

func (i GetEipAddressesAddressArgs) ToGetEipAddressesAddressOutput() GetEipAddressesAddressOutput

func (GetEipAddressesAddressArgs) ToGetEipAddressesAddressOutputWithContext

func (i GetEipAddressesAddressArgs) ToGetEipAddressesAddressOutputWithContext(ctx context.Context) GetEipAddressesAddressOutput

type GetEipAddressesAddressArray

type GetEipAddressesAddressArray []GetEipAddressesAddressInput

func (GetEipAddressesAddressArray) ElementType

func (GetEipAddressesAddressArray) ToGetEipAddressesAddressArrayOutput

func (i GetEipAddressesAddressArray) ToGetEipAddressesAddressArrayOutput() GetEipAddressesAddressArrayOutput

func (GetEipAddressesAddressArray) ToGetEipAddressesAddressArrayOutputWithContext

func (i GetEipAddressesAddressArray) ToGetEipAddressesAddressArrayOutputWithContext(ctx context.Context) GetEipAddressesAddressArrayOutput

type GetEipAddressesAddressArrayInput

type GetEipAddressesAddressArrayInput interface {
	pulumi.Input

	ToGetEipAddressesAddressArrayOutput() GetEipAddressesAddressArrayOutput
	ToGetEipAddressesAddressArrayOutputWithContext(context.Context) GetEipAddressesAddressArrayOutput
}

GetEipAddressesAddressArrayInput is an input type that accepts GetEipAddressesAddressArray and GetEipAddressesAddressArrayOutput values. You can construct a concrete instance of `GetEipAddressesAddressArrayInput` via:

GetEipAddressesAddressArray{ GetEipAddressesAddressArgs{...} }

type GetEipAddressesAddressArrayOutput

type GetEipAddressesAddressArrayOutput struct{ *pulumi.OutputState }

func (GetEipAddressesAddressArrayOutput) ElementType

func (GetEipAddressesAddressArrayOutput) Index

func (GetEipAddressesAddressArrayOutput) ToGetEipAddressesAddressArrayOutput

func (o GetEipAddressesAddressArrayOutput) ToGetEipAddressesAddressArrayOutput() GetEipAddressesAddressArrayOutput

func (GetEipAddressesAddressArrayOutput) ToGetEipAddressesAddressArrayOutputWithContext

func (o GetEipAddressesAddressArrayOutput) ToGetEipAddressesAddressArrayOutputWithContext(ctx context.Context) GetEipAddressesAddressArrayOutput

type GetEipAddressesAddressInput

type GetEipAddressesAddressInput interface {
	pulumi.Input

	ToGetEipAddressesAddressOutput() GetEipAddressesAddressOutput
	ToGetEipAddressesAddressOutputWithContext(context.Context) GetEipAddressesAddressOutput
}

GetEipAddressesAddressInput is an input type that accepts GetEipAddressesAddressArgs and GetEipAddressesAddressOutput values. You can construct a concrete instance of `GetEipAddressesAddressInput` via:

GetEipAddressesAddressArgs{...}

type GetEipAddressesAddressOutput

type GetEipAddressesAddressOutput struct{ *pulumi.OutputState }

func (GetEipAddressesAddressOutput) AddressName

The name of the EIP.

func (GetEipAddressesAddressOutput) AllocationId

The ID of the EIP.

func (GetEipAddressesAddressOutput) AvailableRegions

The ID of the region to which the EIP belongs.

func (GetEipAddressesAddressOutput) Bandwidth

The maximum bandwidth of the EIP. Unit: Mbit/s.

func (GetEipAddressesAddressOutput) BandwidthPackageBandwidth

func (o GetEipAddressesAddressOutput) BandwidthPackageBandwidth() pulumi.StringOutput

The bandwidth value of the EIP bandwidth plan with which the EIP is associated.

func (GetEipAddressesAddressOutput) BandwidthPackageId

func (o GetEipAddressesAddressOutput) BandwidthPackageId() pulumi.StringOutput

The ID of the EIP bandwidth plan.

func (GetEipAddressesAddressOutput) BandwidthPackageType

func (o GetEipAddressesAddressOutput) BandwidthPackageType() pulumi.StringOutput

The type of the bandwidth. Only CommonBandwidthPackage (an EIP bandwidth plan) is returned.

func (GetEipAddressesAddressOutput) CreateTime

The time when the EIP was created.

func (GetEipAddressesAddressOutput) DeletionProtection

func (o GetEipAddressesAddressOutput) DeletionProtection() pulumi.BoolOutput

Indicates whether deletion protection is enabled.

func (GetEipAddressesAddressOutput) Description

The description of the EIP.

func (GetEipAddressesAddressOutput) ElementType

func (GetEipAddressesAddressOutput) ExpiredTime

The expiration date. The time follows the ISO 8601 standard and is displayed in UTC. Format: YYYY-MM-DDThh:mmZ.

func (GetEipAddressesAddressOutput) HasReservationData

func (o GetEipAddressesAddressOutput) HasReservationData() pulumi.StringOutput

Indicates whether renewal data is included. This parameter returns true only when the parameter IncludeReservationData is set to true, and some orders have not taken effect.

func (GetEipAddressesAddressOutput) HdMonitorStatus

func (o GetEipAddressesAddressOutput) HdMonitorStatus() pulumi.StringOutput

Indicates whether fine-grained monitoring is enabled for the EIP.

func (GetEipAddressesAddressOutput) Id

The ID of the Address.

func (GetEipAddressesAddressOutput) InstanceId

The ID of the instance with which the EIP is associated.

func (GetEipAddressesAddressOutput) InstanceRegionId

func (o GetEipAddressesAddressOutput) InstanceRegionId() pulumi.StringOutput

The region ID of the associated resource.

func (GetEipAddressesAddressOutput) InstanceType

The type of the instance with which the EIP is associated.

func (GetEipAddressesAddressOutput) InternetChargeType

func (o GetEipAddressesAddressOutput) InternetChargeType() pulumi.StringOutput

The metering method of the EIP.

func (GetEipAddressesAddressOutput) IpAddress

The IP address of the EIP.

func (GetEipAddressesAddressOutput) Isp

The Internet service provider (ISP).

func (GetEipAddressesAddressOutput) OperationLocks

The details about the locked EIP.

func (GetEipAddressesAddressOutput) PaymentType

The billing method of the EIP.

func (GetEipAddressesAddressOutput) ReservationActiveTime

func (o GetEipAddressesAddressOutput) ReservationActiveTime() pulumi.StringOutput

The time when the renewal takes effect.

func (GetEipAddressesAddressOutput) ReservationBandwidth

func (o GetEipAddressesAddressOutput) ReservationBandwidth() pulumi.StringOutput

The bandwidth after the renewal takes effect.

func (GetEipAddressesAddressOutput) ReservationInternetChargeType

func (o GetEipAddressesAddressOutput) ReservationInternetChargeType() pulumi.StringOutput

The metering method of the renewal.

func (GetEipAddressesAddressOutput) ReservationOrderType

func (o GetEipAddressesAddressOutput) ReservationOrderType() pulumi.StringOutput

The type of the renewal order.

func (GetEipAddressesAddressOutput) ResourceGroupId

func (o GetEipAddressesAddressOutput) ResourceGroupId() pulumi.StringOutput

The ID of the resource group.

func (GetEipAddressesAddressOutput) SecondLimited

Indicates whether level-2 throttling is configured.

func (GetEipAddressesAddressOutput) SegmentInstanceId

func (o GetEipAddressesAddressOutput) SegmentInstanceId() pulumi.StringOutput

The IDs of the contiguous EIPs.

func (GetEipAddressesAddressOutput) Status

The status of the EIP.

func (GetEipAddressesAddressOutput) Tags

A mapping of tags to assign to the resource.

func (GetEipAddressesAddressOutput) ToGetEipAddressesAddressOutput

func (o GetEipAddressesAddressOutput) ToGetEipAddressesAddressOutput() GetEipAddressesAddressOutput

func (GetEipAddressesAddressOutput) ToGetEipAddressesAddressOutputWithContext

func (o GetEipAddressesAddressOutput) ToGetEipAddressesAddressOutputWithContext(ctx context.Context) GetEipAddressesAddressOutput

type GetEipAddressesArgs

type GetEipAddressesArgs struct {
	// The name of the EIP.
	AddressName *string `pulumi:"addressName"`
	// The associated instance id.
	AssociatedInstanceId *string `pulumi:"associatedInstanceId"`
	// The associated instance type.
	AssociatedInstanceType *string `pulumi:"associatedInstanceType"`
	// The dry run.
	DryRun *bool `pulumi:"dryRun"`
	// Default to `true`. Set it to `false` can hide the `tags` to output.
	EnableDetails *bool `pulumi:"enableDetails"`
	// A list of Address IDs.
	Ids []string `pulumi:"ids"`
	// The include reservation data. Valid values: `BGP` and `BGP_PRO`.
	IncludeReservationData *bool `pulumi:"includeReservationData"`
	// The IP address of the EIP.
	IpAddress *string `pulumi:"ipAddress"`
	// Deprecated: Field 'ip_addresses' has been deprecated from provider version 1.126.0 and it will be removed in the future version. Please use the new attribute 'ip_address' instead.
	IpAddresses []string `pulumi:"ipAddresses"`
	// The Internet service provider (ISP).
	Isp *string `pulumi:"isp"`
	// The lock reason.
	LockReason *string `pulumi:"lockReason"`
	// A regex string to filter results by Address name.
	NameRegex  *string `pulumi:"nameRegex"`
	OutputFile *string `pulumi:"outputFile"`
	// The billing method of the EIP.
	PaymentType *string `pulumi:"paymentType"`
	// The ID of the resource group.
	ResourceGroupId *string `pulumi:"resourceGroupId"`
	// The IDs of the contiguous EIPs.
	SegmentInstanceId *string `pulumi:"segmentInstanceId"`
	// The status of the EIP.
	Status *string `pulumi:"status"`
	// A mapping of tags to assign to the resource.
	Tags map[string]interface{} `pulumi:"tags"`
}

A collection of arguments for invoking getEipAddresses.

type GetEipAddressesEip

type GetEipAddressesEip struct {
	// The maximum bandwidth of the EIP. Unit: Mbit/s.
	Bandwidth    string `pulumi:"bandwidth"`
	CreationTime string `pulumi:"creationTime"`
	// Indicates whether deletion protection is enabled.
	DeletionProtection bool `pulumi:"deletionProtection"`
	// The ID of the Address.
	Id string `pulumi:"id"`
	// The ID of the instance with which the EIP is associated.
	InstanceId string `pulumi:"instanceId"`
	// The type of the instance with which the EIP is associated.
	InstanceType string `pulumi:"instanceType"`
	// The metering method of the EIP.
	InternetChargeType string `pulumi:"internetChargeType"`
	// The IP address of the EIP.
	IpAddress string `pulumi:"ipAddress"`
	// The status of the EIP.
	Status string `pulumi:"status"`
}

type GetEipAddressesEipArgs

type GetEipAddressesEipArgs struct {
	// The maximum bandwidth of the EIP. Unit: Mbit/s.
	Bandwidth    pulumi.StringInput `pulumi:"bandwidth"`
	CreationTime pulumi.StringInput `pulumi:"creationTime"`
	// Indicates whether deletion protection is enabled.
	DeletionProtection pulumi.BoolInput `pulumi:"deletionProtection"`
	// The ID of the Address.
	Id pulumi.StringInput `pulumi:"id"`
	// The ID of the instance with which the EIP is associated.
	InstanceId pulumi.StringInput `pulumi:"instanceId"`
	// The type of the instance with which the EIP is associated.
	InstanceType pulumi.StringInput `pulumi:"instanceType"`
	// The metering method of the EIP.
	InternetChargeType pulumi.StringInput `pulumi:"internetChargeType"`
	// The IP address of the EIP.
	IpAddress pulumi.StringInput `pulumi:"ipAddress"`
	// The status of the EIP.
	Status pulumi.StringInput `pulumi:"status"`
}

func (GetEipAddressesEipArgs) ElementType

func (GetEipAddressesEipArgs) ElementType() reflect.Type

func (GetEipAddressesEipArgs) ToGetEipAddressesEipOutput

func (i GetEipAddressesEipArgs) ToGetEipAddressesEipOutput() GetEipAddressesEipOutput

func (GetEipAddressesEipArgs) ToGetEipAddressesEipOutputWithContext

func (i GetEipAddressesEipArgs) ToGetEipAddressesEipOutputWithContext(ctx context.Context) GetEipAddressesEipOutput

type GetEipAddressesEipArray

type GetEipAddressesEipArray []GetEipAddressesEipInput

func (GetEipAddressesEipArray) ElementType

func (GetEipAddressesEipArray) ElementType() reflect.Type

func (GetEipAddressesEipArray) ToGetEipAddressesEipArrayOutput

func (i GetEipAddressesEipArray) ToGetEipAddressesEipArrayOutput() GetEipAddressesEipArrayOutput

func (GetEipAddressesEipArray) ToGetEipAddressesEipArrayOutputWithContext

func (i GetEipAddressesEipArray) ToGetEipAddressesEipArrayOutputWithContext(ctx context.Context) GetEipAddressesEipArrayOutput

type GetEipAddressesEipArrayInput

type GetEipAddressesEipArrayInput interface {
	pulumi.Input

	ToGetEipAddressesEipArrayOutput() GetEipAddressesEipArrayOutput
	ToGetEipAddressesEipArrayOutputWithContext(context.Context) GetEipAddressesEipArrayOutput
}

GetEipAddressesEipArrayInput is an input type that accepts GetEipAddressesEipArray and GetEipAddressesEipArrayOutput values. You can construct a concrete instance of `GetEipAddressesEipArrayInput` via:

GetEipAddressesEipArray{ GetEipAddressesEipArgs{...} }

type GetEipAddressesEipArrayOutput

type GetEipAddressesEipArrayOutput struct{ *pulumi.OutputState }

func (GetEipAddressesEipArrayOutput) ElementType

func (GetEipAddressesEipArrayOutput) Index

func (GetEipAddressesEipArrayOutput) ToGetEipAddressesEipArrayOutput

func (o GetEipAddressesEipArrayOutput) ToGetEipAddressesEipArrayOutput() GetEipAddressesEipArrayOutput

func (GetEipAddressesEipArrayOutput) ToGetEipAddressesEipArrayOutputWithContext

func (o GetEipAddressesEipArrayOutput) ToGetEipAddressesEipArrayOutputWithContext(ctx context.Context) GetEipAddressesEipArrayOutput

type GetEipAddressesEipInput

type GetEipAddressesEipInput interface {
	pulumi.Input

	ToGetEipAddressesEipOutput() GetEipAddressesEipOutput
	ToGetEipAddressesEipOutputWithContext(context.Context) GetEipAddressesEipOutput
}

GetEipAddressesEipInput is an input type that accepts GetEipAddressesEipArgs and GetEipAddressesEipOutput values. You can construct a concrete instance of `GetEipAddressesEipInput` via:

GetEipAddressesEipArgs{...}

type GetEipAddressesEipOutput

type GetEipAddressesEipOutput struct{ *pulumi.OutputState }

func (GetEipAddressesEipOutput) Bandwidth

The maximum bandwidth of the EIP. Unit: Mbit/s.

func (GetEipAddressesEipOutput) CreationTime

func (o GetEipAddressesEipOutput) CreationTime() pulumi.StringOutput

func (GetEipAddressesEipOutput) DeletionProtection

func (o GetEipAddressesEipOutput) DeletionProtection() pulumi.BoolOutput

Indicates whether deletion protection is enabled.

func (GetEipAddressesEipOutput) ElementType

func (GetEipAddressesEipOutput) ElementType() reflect.Type

func (GetEipAddressesEipOutput) Id

The ID of the Address.

func (GetEipAddressesEipOutput) InstanceId

The ID of the instance with which the EIP is associated.

func (GetEipAddressesEipOutput) InstanceType

func (o GetEipAddressesEipOutput) InstanceType() pulumi.StringOutput

The type of the instance with which the EIP is associated.

func (GetEipAddressesEipOutput) InternetChargeType

func (o GetEipAddressesEipOutput) InternetChargeType() pulumi.StringOutput

The metering method of the EIP.

func (GetEipAddressesEipOutput) IpAddress

The IP address of the EIP.

func (GetEipAddressesEipOutput) Status

The status of the EIP.

func (GetEipAddressesEipOutput) ToGetEipAddressesEipOutput

func (o GetEipAddressesEipOutput) ToGetEipAddressesEipOutput() GetEipAddressesEipOutput

func (GetEipAddressesEipOutput) ToGetEipAddressesEipOutputWithContext

func (o GetEipAddressesEipOutput) ToGetEipAddressesEipOutputWithContext(ctx context.Context) GetEipAddressesEipOutput

type GetEipAddressesOutputArgs

type GetEipAddressesOutputArgs struct {
	// The name of the EIP.
	AddressName pulumi.StringPtrInput `pulumi:"addressName"`
	// The associated instance id.
	AssociatedInstanceId pulumi.StringPtrInput `pulumi:"associatedInstanceId"`
	// The associated instance type.
	AssociatedInstanceType pulumi.StringPtrInput `pulumi:"associatedInstanceType"`
	// The dry run.
	DryRun pulumi.BoolPtrInput `pulumi:"dryRun"`
	// Default to `true`. Set it to `false` can hide the `tags` to output.
	EnableDetails pulumi.BoolPtrInput `pulumi:"enableDetails"`
	// A list of Address IDs.
	Ids pulumi.StringArrayInput `pulumi:"ids"`
	// The include reservation data. Valid values: `BGP` and `BGP_PRO`.
	IncludeReservationData pulumi.BoolPtrInput `pulumi:"includeReservationData"`
	// The IP address of the EIP.
	IpAddress pulumi.StringPtrInput `pulumi:"ipAddress"`
	// Deprecated: Field 'ip_addresses' has been deprecated from provider version 1.126.0 and it will be removed in the future version. Please use the new attribute 'ip_address' instead.
	IpAddresses pulumi.StringArrayInput `pulumi:"ipAddresses"`
	// The Internet service provider (ISP).
	Isp pulumi.StringPtrInput `pulumi:"isp"`
	// The lock reason.
	LockReason pulumi.StringPtrInput `pulumi:"lockReason"`
	// A regex string to filter results by Address name.
	NameRegex  pulumi.StringPtrInput `pulumi:"nameRegex"`
	OutputFile pulumi.StringPtrInput `pulumi:"outputFile"`
	// The billing method of the EIP.
	PaymentType pulumi.StringPtrInput `pulumi:"paymentType"`
	// The ID of the resource group.
	ResourceGroupId pulumi.StringPtrInput `pulumi:"resourceGroupId"`
	// The IDs of the contiguous EIPs.
	SegmentInstanceId pulumi.StringPtrInput `pulumi:"segmentInstanceId"`
	// The status of the EIP.
	Status pulumi.StringPtrInput `pulumi:"status"`
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapInput `pulumi:"tags"`
}

A collection of arguments for invoking getEipAddresses.

func (GetEipAddressesOutputArgs) ElementType

func (GetEipAddressesOutputArgs) ElementType() reflect.Type

type GetEipAddressesResult

type GetEipAddressesResult struct {
	AddressName            *string                  `pulumi:"addressName"`
	Addresses              []GetEipAddressesAddress `pulumi:"addresses"`
	AssociatedInstanceId   *string                  `pulumi:"associatedInstanceId"`
	AssociatedInstanceType *string                  `pulumi:"associatedInstanceType"`
	DryRun                 *bool                    `pulumi:"dryRun"`
	// Deprecated: Field 'eips' has been deprecated from provider version 1.126.0 and it will be removed in the future version. Please use the new attribute 'addresses' instead.
	Eips          []GetEipAddressesEip `pulumi:"eips"`
	EnableDetails *bool                `pulumi:"enableDetails"`
	// The provider-assigned unique ID for this managed resource.
	Id                     string   `pulumi:"id"`
	Ids                    []string `pulumi:"ids"`
	IncludeReservationData *bool    `pulumi:"includeReservationData"`
	IpAddress              *string  `pulumi:"ipAddress"`
	// Deprecated: Field 'ip_addresses' has been deprecated from provider version 1.126.0 and it will be removed in the future version. Please use the new attribute 'ip_address' instead.
	IpAddresses       []string               `pulumi:"ipAddresses"`
	Isp               *string                `pulumi:"isp"`
	LockReason        *string                `pulumi:"lockReason"`
	NameRegex         *string                `pulumi:"nameRegex"`
	Names             []string               `pulumi:"names"`
	OutputFile        *string                `pulumi:"outputFile"`
	PaymentType       *string                `pulumi:"paymentType"`
	ResourceGroupId   *string                `pulumi:"resourceGroupId"`
	SegmentInstanceId *string                `pulumi:"segmentInstanceId"`
	Status            *string                `pulumi:"status"`
	Tags              map[string]interface{} `pulumi:"tags"`
}

A collection of values returned by getEipAddresses.

func GetEipAddresses

func GetEipAddresses(ctx *pulumi.Context, args *GetEipAddressesArgs, opts ...pulumi.InvokeOption) (*GetEipAddressesResult, error)

This data source provides the Eip Addresses of the current Alibaba Cloud user.

> **NOTE:** Available in v1.126.0+.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/go/alicloud/ecs"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := ecs.GetEipAddresses(ctx, &ecs.GetEipAddressesArgs{
			Ids: []string{
				"eip-bp1jvx5ki6c********",
			},
			NameRegex: pulumi.StringRef("the_resource_name"),
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("firstEipAddressId", example.Addresses[0].Id)
		return nil
	})
}

```

type GetEipAddressesResultOutput

type GetEipAddressesResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getEipAddresses.

func (GetEipAddressesResultOutput) AddressName

func (GetEipAddressesResultOutput) Addresses

func (GetEipAddressesResultOutput) AssociatedInstanceId

func (o GetEipAddressesResultOutput) AssociatedInstanceId() pulumi.StringPtrOutput

func (GetEipAddressesResultOutput) AssociatedInstanceType

func (o GetEipAddressesResultOutput) AssociatedInstanceType() pulumi.StringPtrOutput

func (GetEipAddressesResultOutput) DryRun

func (GetEipAddressesResultOutput) Eips deprecated

Deprecated: Field 'eips' has been deprecated from provider version 1.126.0 and it will be removed in the future version. Please use the new attribute 'addresses' instead.

func (GetEipAddressesResultOutput) ElementType

func (GetEipAddressesResultOutput) EnableDetails

func (GetEipAddressesResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetEipAddressesResultOutput) Ids

func (GetEipAddressesResultOutput) IncludeReservationData

func (o GetEipAddressesResultOutput) IncludeReservationData() pulumi.BoolPtrOutput

func (GetEipAddressesResultOutput) IpAddress

func (GetEipAddressesResultOutput) IpAddresses deprecated

Deprecated: Field 'ip_addresses' has been deprecated from provider version 1.126.0 and it will be removed in the future version. Please use the new attribute 'ip_address' instead.

func (GetEipAddressesResultOutput) Isp

func (GetEipAddressesResultOutput) LockReason

func (GetEipAddressesResultOutput) NameRegex

func (GetEipAddressesResultOutput) Names

func (GetEipAddressesResultOutput) OutputFile

func (GetEipAddressesResultOutput) PaymentType

func (GetEipAddressesResultOutput) ResourceGroupId

func (GetEipAddressesResultOutput) SegmentInstanceId

func (o GetEipAddressesResultOutput) SegmentInstanceId() pulumi.StringPtrOutput

func (GetEipAddressesResultOutput) Status

func (GetEipAddressesResultOutput) Tags

func (GetEipAddressesResultOutput) ToGetEipAddressesResultOutput

func (o GetEipAddressesResultOutput) ToGetEipAddressesResultOutput() GetEipAddressesResultOutput

func (GetEipAddressesResultOutput) ToGetEipAddressesResultOutputWithContext

func (o GetEipAddressesResultOutput) ToGetEipAddressesResultOutputWithContext(ctx context.Context) GetEipAddressesResultOutput

type GetEipsAddress

type GetEipsAddress struct {
	AddressName      string   `pulumi:"addressName"`
	AllocationId     string   `pulumi:"allocationId"`
	AvailableRegions []string `pulumi:"availableRegions"`
	// EIP internet max bandwidth in Mbps.
	Bandwidth                 string `pulumi:"bandwidth"`
	BandwidthPackageBandwidth string `pulumi:"bandwidthPackageBandwidth"`
	BandwidthPackageId        string `pulumi:"bandwidthPackageId"`
	BandwidthPackageType      string `pulumi:"bandwidthPackageType"`
	CreateTime                string `pulumi:"createTime"`
	// (Optional, Available in v1.124.4+) Whether enable the deletion protection or not.
	DeletionProtection bool   `pulumi:"deletionProtection"`
	Description        string `pulumi:"description"`
	ExpiredTime        string `pulumi:"expiredTime"`
	HasReservationData string `pulumi:"hasReservationData"`
	HdMonitorStatus    string `pulumi:"hdMonitorStatus"`
	// ID of the EIP.
	Id string `pulumi:"id"`
	// The ID of the instance that is being bound.
	InstanceId       string `pulumi:"instanceId"`
	InstanceRegionId string `pulumi:"instanceRegionId"`
	// The instance type of that the EIP is bound.
	InstanceType string `pulumi:"instanceType"`
	// EIP internet charge type.
	InternetChargeType string `pulumi:"internetChargeType"`
	// Public IP Address of the the EIP.
	IpAddress                     string   `pulumi:"ipAddress"`
	Isp                           string   `pulumi:"isp"`
	OperationLocks                []string `pulumi:"operationLocks"`
	PaymentType                   string   `pulumi:"paymentType"`
	ReservationActiveTime         string   `pulumi:"reservationActiveTime"`
	ReservationBandwidth          string   `pulumi:"reservationBandwidth"`
	ReservationInternetChargeType string   `pulumi:"reservationInternetChargeType"`
	ReservationOrderType          string   `pulumi:"reservationOrderType"`
	// The Id of resource group which the eips belongs.
	ResourceGroupId   string `pulumi:"resourceGroupId"`
	SecondLimited     bool   `pulumi:"secondLimited"`
	SegmentInstanceId string `pulumi:"segmentInstanceId"`
	// EIP status. Possible values are: `Associating`, `Unassociating`, `InUse` and `Available`.
	Status string `pulumi:"status"`
	// A mapping of tags to assign to the resource.
	Tags map[string]interface{} `pulumi:"tags"`
}

type GetEipsAddressArgs

type GetEipsAddressArgs struct {
	AddressName      pulumi.StringInput      `pulumi:"addressName"`
	AllocationId     pulumi.StringInput      `pulumi:"allocationId"`
	AvailableRegions pulumi.StringArrayInput `pulumi:"availableRegions"`
	// EIP internet max bandwidth in Mbps.
	Bandwidth                 pulumi.StringInput `pulumi:"bandwidth"`
	BandwidthPackageBandwidth pulumi.StringInput `pulumi:"bandwidthPackageBandwidth"`
	BandwidthPackageId        pulumi.StringInput `pulumi:"bandwidthPackageId"`
	BandwidthPackageType      pulumi.StringInput `pulumi:"bandwidthPackageType"`
	CreateTime                pulumi.StringInput `pulumi:"createTime"`
	// (Optional, Available in v1.124.4+) Whether enable the deletion protection or not.
	DeletionProtection pulumi.BoolInput   `pulumi:"deletionProtection"`
	Description        pulumi.StringInput `pulumi:"description"`
	ExpiredTime        pulumi.StringInput `pulumi:"expiredTime"`
	HasReservationData pulumi.StringInput `pulumi:"hasReservationData"`
	HdMonitorStatus    pulumi.StringInput `pulumi:"hdMonitorStatus"`
	// ID of the EIP.
	Id pulumi.StringInput `pulumi:"id"`
	// The ID of the instance that is being bound.
	InstanceId       pulumi.StringInput `pulumi:"instanceId"`
	InstanceRegionId pulumi.StringInput `pulumi:"instanceRegionId"`
	// The instance type of that the EIP is bound.
	InstanceType pulumi.StringInput `pulumi:"instanceType"`
	// EIP internet charge type.
	InternetChargeType pulumi.StringInput `pulumi:"internetChargeType"`
	// Public IP Address of the the EIP.
	IpAddress                     pulumi.StringInput      `pulumi:"ipAddress"`
	Isp                           pulumi.StringInput      `pulumi:"isp"`
	OperationLocks                pulumi.StringArrayInput `pulumi:"operationLocks"`
	PaymentType                   pulumi.StringInput      `pulumi:"paymentType"`
	ReservationActiveTime         pulumi.StringInput      `pulumi:"reservationActiveTime"`
	ReservationBandwidth          pulumi.StringInput      `pulumi:"reservationBandwidth"`
	ReservationInternetChargeType pulumi.StringInput      `pulumi:"reservationInternetChargeType"`
	ReservationOrderType          pulumi.StringInput      `pulumi:"reservationOrderType"`
	// The Id of resource group which the eips belongs.
	ResourceGroupId   pulumi.StringInput `pulumi:"resourceGroupId"`
	SecondLimited     pulumi.BoolInput   `pulumi:"secondLimited"`
	SegmentInstanceId pulumi.StringInput `pulumi:"segmentInstanceId"`
	// EIP status. Possible values are: `Associating`, `Unassociating`, `InUse` and `Available`.
	Status pulumi.StringInput `pulumi:"status"`
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapInput `pulumi:"tags"`
}

func (GetEipsAddressArgs) ElementType

func (GetEipsAddressArgs) ElementType() reflect.Type

func (GetEipsAddressArgs) ToGetEipsAddressOutput

func (i GetEipsAddressArgs) ToGetEipsAddressOutput() GetEipsAddressOutput

func (GetEipsAddressArgs) ToGetEipsAddressOutputWithContext

func (i GetEipsAddressArgs) ToGetEipsAddressOutputWithContext(ctx context.Context) GetEipsAddressOutput

type GetEipsAddressArray

type GetEipsAddressArray []GetEipsAddressInput

func (GetEipsAddressArray) ElementType

func (GetEipsAddressArray) ElementType() reflect.Type

func (GetEipsAddressArray) ToGetEipsAddressArrayOutput

func (i GetEipsAddressArray) ToGetEipsAddressArrayOutput() GetEipsAddressArrayOutput

func (GetEipsAddressArray) ToGetEipsAddressArrayOutputWithContext

func (i GetEipsAddressArray) ToGetEipsAddressArrayOutputWithContext(ctx context.Context) GetEipsAddressArrayOutput

type GetEipsAddressArrayInput

type GetEipsAddressArrayInput interface {
	pulumi.Input

	ToGetEipsAddressArrayOutput() GetEipsAddressArrayOutput
	ToGetEipsAddressArrayOutputWithContext(context.Context) GetEipsAddressArrayOutput
}

GetEipsAddressArrayInput is an input type that accepts GetEipsAddressArray and GetEipsAddressArrayOutput values. You can construct a concrete instance of `GetEipsAddressArrayInput` via:

GetEipsAddressArray{ GetEipsAddressArgs{...} }

type GetEipsAddressArrayOutput

type GetEipsAddressArrayOutput struct{ *pulumi.OutputState }

func (GetEipsAddressArrayOutput) ElementType

func (GetEipsAddressArrayOutput) ElementType() reflect.Type

func (GetEipsAddressArrayOutput) Index

func (GetEipsAddressArrayOutput) ToGetEipsAddressArrayOutput

func (o GetEipsAddressArrayOutput) ToGetEipsAddressArrayOutput() GetEipsAddressArrayOutput

func (GetEipsAddressArrayOutput) ToGetEipsAddressArrayOutputWithContext

func (o GetEipsAddressArrayOutput) ToGetEipsAddressArrayOutputWithContext(ctx context.Context) GetEipsAddressArrayOutput

type GetEipsAddressInput

type GetEipsAddressInput interface {
	pulumi.Input

	ToGetEipsAddressOutput() GetEipsAddressOutput
	ToGetEipsAddressOutputWithContext(context.Context) GetEipsAddressOutput
}

GetEipsAddressInput is an input type that accepts GetEipsAddressArgs and GetEipsAddressOutput values. You can construct a concrete instance of `GetEipsAddressInput` via:

GetEipsAddressArgs{...}

type GetEipsAddressOutput

type GetEipsAddressOutput struct{ *pulumi.OutputState }

func (GetEipsAddressOutput) AddressName

func (o GetEipsAddressOutput) AddressName() pulumi.StringOutput

func (GetEipsAddressOutput) AllocationId

func (o GetEipsAddressOutput) AllocationId() pulumi.StringOutput

func (GetEipsAddressOutput) AvailableRegions

func (o GetEipsAddressOutput) AvailableRegions() pulumi.StringArrayOutput

func (GetEipsAddressOutput) Bandwidth

EIP internet max bandwidth in Mbps.

func (GetEipsAddressOutput) BandwidthPackageBandwidth

func (o GetEipsAddressOutput) BandwidthPackageBandwidth() pulumi.StringOutput

func (GetEipsAddressOutput) BandwidthPackageId

func (o GetEipsAddressOutput) BandwidthPackageId() pulumi.StringOutput

func (GetEipsAddressOutput) BandwidthPackageType

func (o GetEipsAddressOutput) BandwidthPackageType() pulumi.StringOutput

func (GetEipsAddressOutput) CreateTime

func (o GetEipsAddressOutput) CreateTime() pulumi.StringOutput

func (GetEipsAddressOutput) DeletionProtection

func (o GetEipsAddressOutput) DeletionProtection() pulumi.BoolOutput

(Optional, Available in v1.124.4+) Whether enable the deletion protection or not.

func (GetEipsAddressOutput) Description

func (o GetEipsAddressOutput) Description() pulumi.StringOutput

func (GetEipsAddressOutput) ElementType

func (GetEipsAddressOutput) ElementType() reflect.Type

func (GetEipsAddressOutput) ExpiredTime

func (o GetEipsAddressOutput) ExpiredTime() pulumi.StringOutput

func (GetEipsAddressOutput) HasReservationData

func (o GetEipsAddressOutput) HasReservationData() pulumi.StringOutput

func (GetEipsAddressOutput) HdMonitorStatus

func (o GetEipsAddressOutput) HdMonitorStatus() pulumi.StringOutput

func (GetEipsAddressOutput) Id

ID of the EIP.

func (GetEipsAddressOutput) InstanceId

func (o GetEipsAddressOutput) InstanceId() pulumi.StringOutput

The ID of the instance that is being bound.

func (GetEipsAddressOutput) InstanceRegionId

func (o GetEipsAddressOutput) InstanceRegionId() pulumi.StringOutput

func (GetEipsAddressOutput) InstanceType

func (o GetEipsAddressOutput) InstanceType() pulumi.StringOutput

The instance type of that the EIP is bound.

func (GetEipsAddressOutput) InternetChargeType

func (o GetEipsAddressOutput) InternetChargeType() pulumi.StringOutput

EIP internet charge type.

func (GetEipsAddressOutput) IpAddress

Public IP Address of the the EIP.

func (GetEipsAddressOutput) Isp

func (GetEipsAddressOutput) OperationLocks

func (o GetEipsAddressOutput) OperationLocks() pulumi.StringArrayOutput

func (GetEipsAddressOutput) PaymentType

func (o GetEipsAddressOutput) PaymentType() pulumi.StringOutput

func (GetEipsAddressOutput) ReservationActiveTime

func (o GetEipsAddressOutput) ReservationActiveTime() pulumi.StringOutput

func (GetEipsAddressOutput) ReservationBandwidth

func (o GetEipsAddressOutput) ReservationBandwidth() pulumi.StringOutput

func (GetEipsAddressOutput) ReservationInternetChargeType

func (o GetEipsAddressOutput) ReservationInternetChargeType() pulumi.StringOutput

func (GetEipsAddressOutput) ReservationOrderType

func (o GetEipsAddressOutput) ReservationOrderType() pulumi.StringOutput

func (GetEipsAddressOutput) ResourceGroupId

func (o GetEipsAddressOutput) ResourceGroupId() pulumi.StringOutput

The Id of resource group which the eips belongs.

func (GetEipsAddressOutput) SecondLimited

func (o GetEipsAddressOutput) SecondLimited() pulumi.BoolOutput

func (GetEipsAddressOutput) SegmentInstanceId

func (o GetEipsAddressOutput) SegmentInstanceId() pulumi.StringOutput

func (GetEipsAddressOutput) Status

EIP status. Possible values are: `Associating`, `Unassociating`, `InUse` and `Available`.

func (GetEipsAddressOutput) Tags

A mapping of tags to assign to the resource.

func (GetEipsAddressOutput) ToGetEipsAddressOutput

func (o GetEipsAddressOutput) ToGetEipsAddressOutput() GetEipsAddressOutput

func (GetEipsAddressOutput) ToGetEipsAddressOutputWithContext

func (o GetEipsAddressOutput) ToGetEipsAddressOutputWithContext(ctx context.Context) GetEipsAddressOutput

type GetEipsArgs

type GetEipsArgs struct {
	AddressName            *string `pulumi:"addressName"`
	AssociatedInstanceId   *string `pulumi:"associatedInstanceId"`
	AssociatedInstanceType *string `pulumi:"associatedInstanceType"`
	DryRun                 *bool   `pulumi:"dryRun"`
	EnableDetails          *bool   `pulumi:"enableDetails"`
	// A list of EIP IDs.
	Ids                    []string `pulumi:"ids"`
	IncludeReservationData *bool    `pulumi:"includeReservationData"`
	// Public IP Address of the the EIP.
	IpAddress *string `pulumi:"ipAddress"`
	// A list of EIP public IP addresses.
	//
	// Deprecated: Field 'ip_addresses' has been deprecated from provider version 1.126.0 and it will be removed in the future version. Please use the new attribute 'ip_address' instead.
	IpAddresses []string `pulumi:"ipAddresses"`
	Isp         *string  `pulumi:"isp"`
	LockReason  *string  `pulumi:"lockReason"`
	NameRegex   *string  `pulumi:"nameRegex"`
	OutputFile  *string  `pulumi:"outputFile"`
	PaymentType *string  `pulumi:"paymentType"`
	// The Id of resource group which the eips belongs.
	ResourceGroupId   *string `pulumi:"resourceGroupId"`
	SegmentInstanceId *string `pulumi:"segmentInstanceId"`
	// EIP status. Possible values are: `Associating`, `Unassociating`, `InUse` and `Available`.
	Status *string `pulumi:"status"`
	// A mapping of tags to assign to the resource.
	Tags map[string]interface{} `pulumi:"tags"`
}

A collection of arguments for invoking getEips.

type GetEipsEip

type GetEipsEip struct {
	// EIP internet max bandwidth in Mbps.
	Bandwidth string `pulumi:"bandwidth"`
	// Time of creation.
	CreationTime string `pulumi:"creationTime"`
	// (Optional, Available in v1.124.4+) Whether enable the deletion protection or not.
	DeletionProtection bool `pulumi:"deletionProtection"`
	// ID of the EIP.
	Id string `pulumi:"id"`
	// The ID of the instance that is being bound.
	InstanceId string `pulumi:"instanceId"`
	// The instance type of that the EIP is bound.
	InstanceType string `pulumi:"instanceType"`
	// EIP internet charge type.
	InternetChargeType string `pulumi:"internetChargeType"`
	// Public IP Address of the the EIP.
	IpAddress string `pulumi:"ipAddress"`
	// EIP status. Possible values are: `Associating`, `Unassociating`, `InUse` and `Available`.
	Status string `pulumi:"status"`
}

type GetEipsEipArgs

type GetEipsEipArgs struct {
	// EIP internet max bandwidth in Mbps.
	Bandwidth pulumi.StringInput `pulumi:"bandwidth"`
	// Time of creation.
	CreationTime pulumi.StringInput `pulumi:"creationTime"`
	// (Optional, Available in v1.124.4+) Whether enable the deletion protection or not.
	DeletionProtection pulumi.BoolInput `pulumi:"deletionProtection"`
	// ID of the EIP.
	Id pulumi.StringInput `pulumi:"id"`
	// The ID of the instance that is being bound.
	InstanceId pulumi.StringInput `pulumi:"instanceId"`
	// The instance type of that the EIP is bound.
	InstanceType pulumi.StringInput `pulumi:"instanceType"`
	// EIP internet charge type.
	InternetChargeType pulumi.StringInput `pulumi:"internetChargeType"`
	// Public IP Address of the the EIP.
	IpAddress pulumi.StringInput `pulumi:"ipAddress"`
	// EIP status. Possible values are: `Associating`, `Unassociating`, `InUse` and `Available`.
	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) Bandwidth

func (o GetEipsEipOutput) Bandwidth() pulumi.StringOutput

EIP internet max bandwidth in Mbps.

func (GetEipsEipOutput) CreationTime

func (o GetEipsEipOutput) CreationTime() pulumi.StringOutput

Time of creation.

func (GetEipsEipOutput) DeletionProtection

func (o GetEipsEipOutput) DeletionProtection() pulumi.BoolOutput

(Optional, Available in v1.124.4+) Whether enable the deletion protection or not.

func (GetEipsEipOutput) ElementType

func (GetEipsEipOutput) ElementType() reflect.Type

func (GetEipsEipOutput) Id

ID of the EIP.

func (GetEipsEipOutput) InstanceId

func (o GetEipsEipOutput) InstanceId() pulumi.StringOutput

The ID of the instance that is being bound.

func (GetEipsEipOutput) InstanceType

func (o GetEipsEipOutput) InstanceType() pulumi.StringOutput

The instance type of that the EIP is bound.

func (GetEipsEipOutput) InternetChargeType

func (o GetEipsEipOutput) InternetChargeType() pulumi.StringOutput

EIP internet charge type.

func (GetEipsEipOutput) IpAddress

func (o GetEipsEipOutput) IpAddress() pulumi.StringOutput

Public IP Address of the the EIP.

func (GetEipsEipOutput) Status

EIP status. Possible values are: `Associating`, `Unassociating`, `InUse` and `Available`.

func (GetEipsEipOutput) ToGetEipsEipOutput

func (o GetEipsEipOutput) ToGetEipsEipOutput() GetEipsEipOutput

func (GetEipsEipOutput) ToGetEipsEipOutputWithContext

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

type GetEipsOutputArgs

type GetEipsOutputArgs struct {
	AddressName            pulumi.StringPtrInput `pulumi:"addressName"`
	AssociatedInstanceId   pulumi.StringPtrInput `pulumi:"associatedInstanceId"`
	AssociatedInstanceType pulumi.StringPtrInput `pulumi:"associatedInstanceType"`
	DryRun                 pulumi.BoolPtrInput   `pulumi:"dryRun"`
	EnableDetails          pulumi.BoolPtrInput   `pulumi:"enableDetails"`
	// A list of EIP IDs.
	Ids                    pulumi.StringArrayInput `pulumi:"ids"`
	IncludeReservationData pulumi.BoolPtrInput     `pulumi:"includeReservationData"`
	// Public IP Address of the the EIP.
	IpAddress pulumi.StringPtrInput `pulumi:"ipAddress"`
	// A list of EIP public IP addresses.
	//
	// Deprecated: Field 'ip_addresses' has been deprecated from provider version 1.126.0 and it will be removed in the future version. Please use the new attribute 'ip_address' instead.
	IpAddresses pulumi.StringArrayInput `pulumi:"ipAddresses"`
	Isp         pulumi.StringPtrInput   `pulumi:"isp"`
	LockReason  pulumi.StringPtrInput   `pulumi:"lockReason"`
	NameRegex   pulumi.StringPtrInput   `pulumi:"nameRegex"`
	OutputFile  pulumi.StringPtrInput   `pulumi:"outputFile"`
	PaymentType pulumi.StringPtrInput   `pulumi:"paymentType"`
	// The Id of resource group which the eips belongs.
	ResourceGroupId   pulumi.StringPtrInput `pulumi:"resourceGroupId"`
	SegmentInstanceId pulumi.StringPtrInput `pulumi:"segmentInstanceId"`
	// EIP status. Possible values are: `Associating`, `Unassociating`, `InUse` and `Available`.
	Status pulumi.StringPtrInput `pulumi:"status"`
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapInput `pulumi:"tags"`
}

A collection of arguments for invoking getEips.

func (GetEipsOutputArgs) ElementType

func (GetEipsOutputArgs) ElementType() reflect.Type

type GetEipsResult

type GetEipsResult struct {
	AddressName            *string          `pulumi:"addressName"`
	Addresses              []GetEipsAddress `pulumi:"addresses"`
	AssociatedInstanceId   *string          `pulumi:"associatedInstanceId"`
	AssociatedInstanceType *string          `pulumi:"associatedInstanceType"`
	DryRun                 *bool            `pulumi:"dryRun"`
	// A list of EIPs. Each element contains the following attributes:
	//
	// Deprecated: Field 'eips' has been deprecated from provider version 1.126.0 and it will be removed in the future version. Please use the new attribute 'addresses' instead.
	Eips          []GetEipsEip `pulumi:"eips"`
	EnableDetails *bool        `pulumi:"enableDetails"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// (Optional) A list of EIP IDs.
	Ids                    []string `pulumi:"ids"`
	IncludeReservationData *bool    `pulumi:"includeReservationData"`
	// Public IP Address of the the EIP.
	IpAddress *string `pulumi:"ipAddress"`
	// Deprecated: Field 'ip_addresses' has been deprecated from provider version 1.126.0 and it will be removed in the future version. Please use the new attribute 'ip_address' instead.
	IpAddresses []string `pulumi:"ipAddresses"`
	Isp         *string  `pulumi:"isp"`
	LockReason  *string  `pulumi:"lockReason"`
	NameRegex   *string  `pulumi:"nameRegex"`
	// (Optional) A list of EIP names.
	Names       []string `pulumi:"names"`
	OutputFile  *string  `pulumi:"outputFile"`
	PaymentType *string  `pulumi:"paymentType"`
	// The Id of resource group which the eips belongs.
	ResourceGroupId   *string `pulumi:"resourceGroupId"`
	SegmentInstanceId *string `pulumi:"segmentInstanceId"`
	// EIP status. Possible values are: `Associating`, `Unassociating`, `InUse` and `Available`.
	Status *string                `pulumi:"status"`
	Tags   map[string]interface{} `pulumi:"tags"`
}

A collection of values returned by getEips.

func GetEips deprecated

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

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/go/alicloud/ecs"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		eipsDs, err := ecs.GetEips(ctx, nil, nil)
		if err != nil {
			return err
		}
		ctx.Export("firstEipId", eipsDs.Eips[0].Id)
		return nil
	})
}

```

Deprecated: This function has been deprecated in favour of the getEipAddresses function

type GetEipsResultOutput

type GetEipsResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getEips.

func (GetEipsResultOutput) AddressName

func (o GetEipsResultOutput) AddressName() pulumi.StringPtrOutput

func (GetEipsResultOutput) Addresses

func (GetEipsResultOutput) AssociatedInstanceId

func (o GetEipsResultOutput) AssociatedInstanceId() pulumi.StringPtrOutput

func (GetEipsResultOutput) AssociatedInstanceType

func (o GetEipsResultOutput) AssociatedInstanceType() pulumi.StringPtrOutput

func (GetEipsResultOutput) DryRun

func (GetEipsResultOutput) Eips deprecated

A list of EIPs. Each element contains the following attributes:

Deprecated: Field 'eips' has been deprecated from provider version 1.126.0 and it will be removed in the future version. Please use the new attribute 'addresses' instead.

func (GetEipsResultOutput) ElementType

func (GetEipsResultOutput) ElementType() reflect.Type

func (GetEipsResultOutput) EnableDetails

func (o GetEipsResultOutput) EnableDetails() pulumi.BoolPtrOutput

func (GetEipsResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetEipsResultOutput) Ids

(Optional) A list of EIP IDs.

func (GetEipsResultOutput) IncludeReservationData

func (o GetEipsResultOutput) IncludeReservationData() pulumi.BoolPtrOutput

func (GetEipsResultOutput) IpAddress

Public IP Address of the the EIP.

func (GetEipsResultOutput) IpAddresses deprecated

Deprecated: Field 'ip_addresses' has been deprecated from provider version 1.126.0 and it will be removed in the future version. Please use the new attribute 'ip_address' instead.

func (GetEipsResultOutput) Isp

func (GetEipsResultOutput) LockReason

func (GetEipsResultOutput) NameRegex

func (GetEipsResultOutput) Names

(Optional) A list of EIP names.

func (GetEipsResultOutput) OutputFile

func (GetEipsResultOutput) PaymentType

func (o GetEipsResultOutput) PaymentType() pulumi.StringPtrOutput

func (GetEipsResultOutput) ResourceGroupId

func (o GetEipsResultOutput) ResourceGroupId() pulumi.StringPtrOutput

The Id of resource group which the eips belongs.

func (GetEipsResultOutput) SegmentInstanceId

func (o GetEipsResultOutput) SegmentInstanceId() pulumi.StringPtrOutput

func (GetEipsResultOutput) Status

EIP status. Possible values are: `Associating`, `Unassociating`, `InUse` and `Available`.

func (GetEipsResultOutput) Tags

func (GetEipsResultOutput) ToGetEipsResultOutput

func (o GetEipsResultOutput) ToGetEipsResultOutput() GetEipsResultOutput

func (GetEipsResultOutput) ToGetEipsResultOutputWithContext

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

type GetHpcClustersArgs

type GetHpcClustersArgs struct {
	// A list of Hpc Cluster IDs.
	Ids []string `pulumi:"ids"`
	// A regex string to filter results by Hpc Cluster name.
	NameRegex  *string `pulumi:"nameRegex"`
	OutputFile *string `pulumi:"outputFile"`
}

A collection of arguments for invoking getHpcClusters.

type GetHpcClustersCluster

type GetHpcClustersCluster struct {
	// The description of ECS Hpc Cluster.
	Description string `pulumi:"description"`
	// The ID of the Hpc Cluster.
	HpcClusterId string `pulumi:"hpcClusterId"`
	// The ID of the Hpc Cluster.
	Id string `pulumi:"id"`
	// The name of ECS Hpc Cluster.
	Name string `pulumi:"name"`
}

type GetHpcClustersClusterArgs

type GetHpcClustersClusterArgs struct {
	// The description of ECS Hpc Cluster.
	Description pulumi.StringInput `pulumi:"description"`
	// The ID of the Hpc Cluster.
	HpcClusterId pulumi.StringInput `pulumi:"hpcClusterId"`
	// The ID of the Hpc Cluster.
	Id pulumi.StringInput `pulumi:"id"`
	// The name of ECS Hpc Cluster.
	Name pulumi.StringInput `pulumi:"name"`
}

func (GetHpcClustersClusterArgs) ElementType

func (GetHpcClustersClusterArgs) ElementType() reflect.Type

func (GetHpcClustersClusterArgs) ToGetHpcClustersClusterOutput

func (i GetHpcClustersClusterArgs) ToGetHpcClustersClusterOutput() GetHpcClustersClusterOutput

func (GetHpcClustersClusterArgs) ToGetHpcClustersClusterOutputWithContext

func (i GetHpcClustersClusterArgs) ToGetHpcClustersClusterOutputWithContext(ctx context.Context) GetHpcClustersClusterOutput

type GetHpcClustersClusterArray

type GetHpcClustersClusterArray []GetHpcClustersClusterInput

func (GetHpcClustersClusterArray) ElementType

func (GetHpcClustersClusterArray) ElementType() reflect.Type

func (GetHpcClustersClusterArray) ToGetHpcClustersClusterArrayOutput

func (i GetHpcClustersClusterArray) ToGetHpcClustersClusterArrayOutput() GetHpcClustersClusterArrayOutput

func (GetHpcClustersClusterArray) ToGetHpcClustersClusterArrayOutputWithContext

func (i GetHpcClustersClusterArray) ToGetHpcClustersClusterArrayOutputWithContext(ctx context.Context) GetHpcClustersClusterArrayOutput

type GetHpcClustersClusterArrayInput

type GetHpcClustersClusterArrayInput interface {
	pulumi.Input

	ToGetHpcClustersClusterArrayOutput() GetHpcClustersClusterArrayOutput
	ToGetHpcClustersClusterArrayOutputWithContext(context.Context) GetHpcClustersClusterArrayOutput
}

GetHpcClustersClusterArrayInput is an input type that accepts GetHpcClustersClusterArray and GetHpcClustersClusterArrayOutput values. You can construct a concrete instance of `GetHpcClustersClusterArrayInput` via:

GetHpcClustersClusterArray{ GetHpcClustersClusterArgs{...} }

type GetHpcClustersClusterArrayOutput

type GetHpcClustersClusterArrayOutput struct{ *pulumi.OutputState }

func (GetHpcClustersClusterArrayOutput) ElementType

func (GetHpcClustersClusterArrayOutput) Index

func (GetHpcClustersClusterArrayOutput) ToGetHpcClustersClusterArrayOutput

func (o GetHpcClustersClusterArrayOutput) ToGetHpcClustersClusterArrayOutput() GetHpcClustersClusterArrayOutput

func (GetHpcClustersClusterArrayOutput) ToGetHpcClustersClusterArrayOutputWithContext

func (o GetHpcClustersClusterArrayOutput) ToGetHpcClustersClusterArrayOutputWithContext(ctx context.Context) GetHpcClustersClusterArrayOutput

type GetHpcClustersClusterInput

type GetHpcClustersClusterInput interface {
	pulumi.Input

	ToGetHpcClustersClusterOutput() GetHpcClustersClusterOutput
	ToGetHpcClustersClusterOutputWithContext(context.Context) GetHpcClustersClusterOutput
}

GetHpcClustersClusterInput is an input type that accepts GetHpcClustersClusterArgs and GetHpcClustersClusterOutput values. You can construct a concrete instance of `GetHpcClustersClusterInput` via:

GetHpcClustersClusterArgs{...}

type GetHpcClustersClusterOutput

type GetHpcClustersClusterOutput struct{ *pulumi.OutputState }

func (GetHpcClustersClusterOutput) Description

The description of ECS Hpc Cluster.

func (GetHpcClustersClusterOutput) ElementType

func (GetHpcClustersClusterOutput) HpcClusterId

The ID of the Hpc Cluster.

func (GetHpcClustersClusterOutput) Id

The ID of the Hpc Cluster.

func (GetHpcClustersClusterOutput) Name

The name of ECS Hpc Cluster.

func (GetHpcClustersClusterOutput) ToGetHpcClustersClusterOutput

func (o GetHpcClustersClusterOutput) ToGetHpcClustersClusterOutput() GetHpcClustersClusterOutput

func (GetHpcClustersClusterOutput) ToGetHpcClustersClusterOutputWithContext

func (o GetHpcClustersClusterOutput) ToGetHpcClustersClusterOutputWithContext(ctx context.Context) GetHpcClustersClusterOutput

type GetHpcClustersOutputArgs

type GetHpcClustersOutputArgs struct {
	// A list of Hpc Cluster IDs.
	Ids pulumi.StringArrayInput `pulumi:"ids"`
	// A regex string to filter results by Hpc Cluster name.
	NameRegex  pulumi.StringPtrInput `pulumi:"nameRegex"`
	OutputFile pulumi.StringPtrInput `pulumi:"outputFile"`
}

A collection of arguments for invoking getHpcClusters.

func (GetHpcClustersOutputArgs) ElementType

func (GetHpcClustersOutputArgs) ElementType() reflect.Type

type GetHpcClustersResult

type GetHpcClustersResult struct {
	Clusters []GetHpcClustersCluster `pulumi:"clusters"`
	// The provider-assigned unique ID for this managed resource.
	Id         string   `pulumi:"id"`
	Ids        []string `pulumi:"ids"`
	NameRegex  *string  `pulumi:"nameRegex"`
	Names      []string `pulumi:"names"`
	OutputFile *string  `pulumi:"outputFile"`
}

A collection of values returned by getHpcClusters.

func GetHpcClusters

func GetHpcClusters(ctx *pulumi.Context, args *GetHpcClustersArgs, opts ...pulumi.InvokeOption) (*GetHpcClustersResult, error)

This data source provides the Ecs Hpc Clusters of the current Alibaba Cloud user.

> **NOTE:** Available in v1.116.0+.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/go/alicloud/ecs"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := ecs.GetHpcClusters(ctx, &ecs.GetHpcClustersArgs{
			Ids: []string{
				"hpc-bp1i09xxxxxxxx",
			},
			NameRegex: pulumi.StringRef("tf-testAcc"),
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("firstEcsHpcClusterId", example.Clusters[0].Id)
		return nil
	})
}

```

type GetHpcClustersResultOutput

type GetHpcClustersResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getHpcClusters.

func (GetHpcClustersResultOutput) Clusters

func (GetHpcClustersResultOutput) ElementType

func (GetHpcClustersResultOutput) ElementType() reflect.Type

func (GetHpcClustersResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetHpcClustersResultOutput) Ids

func (GetHpcClustersResultOutput) NameRegex

func (GetHpcClustersResultOutput) Names

func (GetHpcClustersResultOutput) OutputFile

func (GetHpcClustersResultOutput) ToGetHpcClustersResultOutput

func (o GetHpcClustersResultOutput) ToGetHpcClustersResultOutput() GetHpcClustersResultOutput

func (GetHpcClustersResultOutput) ToGetHpcClustersResultOutputWithContext

func (o GetHpcClustersResultOutput) ToGetHpcClustersResultOutputWithContext(ctx context.Context) GetHpcClustersResultOutput

type GetImagesArgs

type GetImagesArgs struct {
	// The scenario in which the image will be used. Default value: `CreateEcs`. Valid values:
	// * `CreateEcs`: instance creation.
	// * `ChangeOS`: replacement of the system disk or operating system.
	ActionType *string `pulumi:"actionType"`
	// The image architecture. Valid values: `i386` and `x8664`.
	Architecture *string `pulumi:"architecture"`
	// Specifies whether the image is running on an ECS instance. Default value: `false`. Valid values:
	// * `true`: The validity of the request is checked but resources are not queried. Check items include whether your AccessKey pair is valid, whether RAM users are authorized, and whether the required parameters are specified. If the check fails, the corresponding error message is returned. If the check succeeds, the DryRunOperation error code is returned.
	// * `false`: The validity of the request is checked, and a 2XX HTTP status code is returned and resources are queried if the check succeeds.
	DryRun *bool `pulumi:"dryRun"`
	// The name of the image family. You can set this parameter to query images of the specified image family. This parameter is empty by default.
	ImageFamily *string `pulumi:"imageFamily"`
	// The ID of the image.
	ImageId *string `pulumi:"imageId"`
	// The name of the image.
	ImageName *string `pulumi:"imageName"`
	// The ID of the Alibaba Cloud account to which the image belongs. This parameter takes effect only when you query shared images or community images.
	ImageOwnerId *string `pulumi:"imageOwnerId"`
	// The instance type for which the image can be used.
	InstanceType *string `pulumi:"instanceType"`
	// Specifies whether the image supports cloud-init.
	IsSupportCloudInit *bool `pulumi:"isSupportCloudInit"`
	// Specifies whether the image can be used on I/O optimized instances.
	IsSupportIoOptimized *bool `pulumi:"isSupportIoOptimized"`
	// If more than one result are returned, select the most recent one.
	MostRecent *bool `pulumi:"mostRecent"`
	// A regex string to filter resulting images by name.
	NameRegex *string `pulumi:"nameRegex"`
	// The operating system type of the image. Valid values: `windows` and `linux`.
	OsType     *string `pulumi:"osType"`
	OutputFile *string `pulumi:"outputFile"`
	// Filter results by a specific image owner. Valid items are `system`, `self`, `others`, `marketplace`.
	Owners *string `pulumi:"owners"`
	// The ID of the resource group to which the custom image belongs.
	ResourceGroupId *string `pulumi:"resourceGroupId"`
	// The ID of the snapshot used to create the custom image.
	SnapshotId *string `pulumi:"snapshotId"`
	// The status of the image. The following values are available, Separate multiple parameter values by using commas (,). Default value: `Available`. Valid values:
	// * `Creating`: The image is being created.
	// * `Waiting`: The image is waiting to be processed.
	// * `Available`: The image is available.
	// * `UnAvailable`: The image is unavailable.
	// * `CreateFailed`: The image failed to be created.
	// * `Deprecated`: The image is discontinued.
	Status *string `pulumi:"status"`
	// A mapping of tags to assign to the resource.
	Tags map[string]interface{} `pulumi:"tags"`
	// Specifies whether to check the validity of the request without actually making the request. Valid values:
	// * `instance`: The image is already in use and running on an ECS instance.
	// * `none`: The image is not in use.
	Usage *string `pulumi:"usage"`
}

A collection of arguments for invoking getImages.

type GetImagesImage

type GetImagesImage struct {
	// The image architecture. Valid values: `i386` and `x8664`.
	Architecture string `pulumi:"architecture"`
	// Time of creation.
	CreationTime string `pulumi:"creationTime"`
	// Description of the image.
	Description string `pulumi:"description"`
	// Description of the system with disks and snapshots under the image.
	DiskDeviceMappings []GetImagesImageDiskDeviceMapping `pulumi:"diskDeviceMappings"`
	// ID of the image.
	Id string `pulumi:"id"`
	// The ID of the image.
	ImageId string `pulumi:"imageId"`
	// Alias of the image owner.
	ImageOwnerAlias string `pulumi:"imageOwnerAlias"`
	// Version of the image.
	ImageVersion string `pulumi:"imageVersion"`
	IsCopied     bool   `pulumi:"isCopied"`
	IsSelfShared string `pulumi:"isSelfShared"`
	// Whether the user has subscribed to the terms of service for the image product corresponding to the ProductCode.
	IsSubscribed bool `pulumi:"isSubscribed"`
	// Specifies whether the image can be used on I/O optimized instances.
	IsSupportIoOptimized bool   `pulumi:"isSupportIoOptimized"`
	Name                 string `pulumi:"name"`
	// Display Chinese name of the OS.
	OsName string `pulumi:"osName"`
	// Display English name of the OS.
	OsNameEn string `pulumi:"osNameEn"`
	// The operating system type of the image. Valid values: `windows` and `linux`.
	OsType   string `pulumi:"osType"`
	Platform string `pulumi:"platform"`
	// Product code of the image on the image market.
	ProductCode string `pulumi:"productCode"`
	// Progress of image creation, presented in percentages.
	Progress string `pulumi:"progress"`
	// Size of the created disk.
	Size  int    `pulumi:"size"`
	State string `pulumi:"state"`
	// The status of the image. The following values are available, Separate multiple parameter values by using commas (,). Default value: `Available`. Valid values:
	// * `Creating`: The image is being created.
	// * `Waiting`: The image is waiting to be processed.
	// * `Available`: The image is available.
	// * `UnAvailable`: The image is unavailable.
	// * `CreateFailed`: The image failed to be created.
	// * `Deprecated`: The image is discontinued.
	Status string `pulumi:"status"`
	// A mapping of tags to assign to the resource.
	Tags map[string]interface{} `pulumi:"tags"`
	// Specifies whether to check the validity of the request without actually making the request. Valid values:
	// * `instance`: The image is already in use and running on an ECS instance.
	// * `none`: The image is not in use.
	Usage string `pulumi:"usage"`
}

type GetImagesImageArgs

type GetImagesImageArgs struct {
	// The image architecture. Valid values: `i386` and `x8664`.
	Architecture pulumi.StringInput `pulumi:"architecture"`
	// Time of creation.
	CreationTime pulumi.StringInput `pulumi:"creationTime"`
	// Description of the image.
	Description pulumi.StringInput `pulumi:"description"`
	// Description of the system with disks and snapshots under the image.
	DiskDeviceMappings GetImagesImageDiskDeviceMappingArrayInput `pulumi:"diskDeviceMappings"`
	// ID of the image.
	Id pulumi.StringInput `pulumi:"id"`
	// The ID of the image.
	ImageId pulumi.StringInput `pulumi:"imageId"`
	// Alias of the image owner.
	ImageOwnerAlias pulumi.StringInput `pulumi:"imageOwnerAlias"`
	// Version of the image.
	ImageVersion pulumi.StringInput `pulumi:"imageVersion"`
	IsCopied     pulumi.BoolInput   `pulumi:"isCopied"`
	IsSelfShared pulumi.StringInput `pulumi:"isSelfShared"`
	// Whether the user has subscribed to the terms of service for the image product corresponding to the ProductCode.
	IsSubscribed pulumi.BoolInput `pulumi:"isSubscribed"`
	// Specifies whether the image can be used on I/O optimized instances.
	IsSupportIoOptimized pulumi.BoolInput   `pulumi:"isSupportIoOptimized"`
	Name                 pulumi.StringInput `pulumi:"name"`
	// Display Chinese name of the OS.
	OsName pulumi.StringInput `pulumi:"osName"`
	// Display English name of the OS.
	OsNameEn pulumi.StringInput `pulumi:"osNameEn"`
	// The operating system type of the image. Valid values: `windows` and `linux`.
	OsType   pulumi.StringInput `pulumi:"osType"`
	Platform pulumi.StringInput `pulumi:"platform"`
	// Product code of the image on the image market.
	ProductCode pulumi.StringInput `pulumi:"productCode"`
	// Progress of image creation, presented in percentages.
	Progress pulumi.StringInput `pulumi:"progress"`
	// Size of the created disk.
	Size  pulumi.IntInput    `pulumi:"size"`
	State pulumi.StringInput `pulumi:"state"`
	// The status of the image. The following values are available, Separate multiple parameter values by using commas (,). Default value: `Available`. Valid values:
	// * `Creating`: The image is being created.
	// * `Waiting`: The image is waiting to be processed.
	// * `Available`: The image is available.
	// * `UnAvailable`: The image is unavailable.
	// * `CreateFailed`: The image failed to be created.
	// * `Deprecated`: The image is discontinued.
	Status pulumi.StringInput `pulumi:"status"`
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapInput `pulumi:"tags"`
	// Specifies whether to check the validity of the request without actually making the request. Valid values:
	// * `instance`: The image is already in use and running on an ECS instance.
	// * `none`: The image is not in use.
	Usage pulumi.StringInput `pulumi:"usage"`
}

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 GetImagesImageDiskDeviceMapping

type GetImagesImageDiskDeviceMapping struct {
	// Device information of the created disk: such as /dev/xvdb.
	Device string `pulumi:"device"`
	// Size of the created disk.
	Size string `pulumi:"size"`
	// The ID of the snapshot used to create the custom image.
	SnapshotId string `pulumi:"snapshotId"`
}

type GetImagesImageDiskDeviceMappingArgs

type GetImagesImageDiskDeviceMappingArgs struct {
	// Device information of the created disk: such as /dev/xvdb.
	Device pulumi.StringInput `pulumi:"device"`
	// Size of the created disk.
	Size pulumi.StringInput `pulumi:"size"`
	// The ID of the snapshot used to create the custom image.
	SnapshotId pulumi.StringInput `pulumi:"snapshotId"`
}

func (GetImagesImageDiskDeviceMappingArgs) ElementType

func (GetImagesImageDiskDeviceMappingArgs) ToGetImagesImageDiskDeviceMappingOutput

func (i GetImagesImageDiskDeviceMappingArgs) ToGetImagesImageDiskDeviceMappingOutput() GetImagesImageDiskDeviceMappingOutput

func (GetImagesImageDiskDeviceMappingArgs) ToGetImagesImageDiskDeviceMappingOutputWithContext

func (i GetImagesImageDiskDeviceMappingArgs) ToGetImagesImageDiskDeviceMappingOutputWithContext(ctx context.Context) GetImagesImageDiskDeviceMappingOutput

type GetImagesImageDiskDeviceMappingArray

type GetImagesImageDiskDeviceMappingArray []GetImagesImageDiskDeviceMappingInput

func (GetImagesImageDiskDeviceMappingArray) ElementType

func (GetImagesImageDiskDeviceMappingArray) ToGetImagesImageDiskDeviceMappingArrayOutput

func (i GetImagesImageDiskDeviceMappingArray) ToGetImagesImageDiskDeviceMappingArrayOutput() GetImagesImageDiskDeviceMappingArrayOutput

func (GetImagesImageDiskDeviceMappingArray) ToGetImagesImageDiskDeviceMappingArrayOutputWithContext

func (i GetImagesImageDiskDeviceMappingArray) ToGetImagesImageDiskDeviceMappingArrayOutputWithContext(ctx context.Context) GetImagesImageDiskDeviceMappingArrayOutput

type GetImagesImageDiskDeviceMappingArrayInput

type GetImagesImageDiskDeviceMappingArrayInput interface {
	pulumi.Input

	ToGetImagesImageDiskDeviceMappingArrayOutput() GetImagesImageDiskDeviceMappingArrayOutput
	ToGetImagesImageDiskDeviceMappingArrayOutputWithContext(context.Context) GetImagesImageDiskDeviceMappingArrayOutput
}

GetImagesImageDiskDeviceMappingArrayInput is an input type that accepts GetImagesImageDiskDeviceMappingArray and GetImagesImageDiskDeviceMappingArrayOutput values. You can construct a concrete instance of `GetImagesImageDiskDeviceMappingArrayInput` via:

GetImagesImageDiskDeviceMappingArray{ GetImagesImageDiskDeviceMappingArgs{...} }

type GetImagesImageDiskDeviceMappingArrayOutput

type GetImagesImageDiskDeviceMappingArrayOutput struct{ *pulumi.OutputState }

func (GetImagesImageDiskDeviceMappingArrayOutput) ElementType

func (GetImagesImageDiskDeviceMappingArrayOutput) Index

func (GetImagesImageDiskDeviceMappingArrayOutput) ToGetImagesImageDiskDeviceMappingArrayOutput

func (o GetImagesImageDiskDeviceMappingArrayOutput) ToGetImagesImageDiskDeviceMappingArrayOutput() GetImagesImageDiskDeviceMappingArrayOutput

func (GetImagesImageDiskDeviceMappingArrayOutput) ToGetImagesImageDiskDeviceMappingArrayOutputWithContext

func (o GetImagesImageDiskDeviceMappingArrayOutput) ToGetImagesImageDiskDeviceMappingArrayOutputWithContext(ctx context.Context) GetImagesImageDiskDeviceMappingArrayOutput

type GetImagesImageDiskDeviceMappingInput

type GetImagesImageDiskDeviceMappingInput interface {
	pulumi.Input

	ToGetImagesImageDiskDeviceMappingOutput() GetImagesImageDiskDeviceMappingOutput
	ToGetImagesImageDiskDeviceMappingOutputWithContext(context.Context) GetImagesImageDiskDeviceMappingOutput
}

GetImagesImageDiskDeviceMappingInput is an input type that accepts GetImagesImageDiskDeviceMappingArgs and GetImagesImageDiskDeviceMappingOutput values. You can construct a concrete instance of `GetImagesImageDiskDeviceMappingInput` via:

GetImagesImageDiskDeviceMappingArgs{...}

type GetImagesImageDiskDeviceMappingOutput

type GetImagesImageDiskDeviceMappingOutput struct{ *pulumi.OutputState }

func (GetImagesImageDiskDeviceMappingOutput) Device

Device information of the created disk: such as /dev/xvdb.

func (GetImagesImageDiskDeviceMappingOutput) ElementType

func (GetImagesImageDiskDeviceMappingOutput) Size

Size of the created disk.

func (GetImagesImageDiskDeviceMappingOutput) SnapshotId

The ID of the snapshot used to create the custom image.

func (GetImagesImageDiskDeviceMappingOutput) ToGetImagesImageDiskDeviceMappingOutput

func (o GetImagesImageDiskDeviceMappingOutput) ToGetImagesImageDiskDeviceMappingOutput() GetImagesImageDiskDeviceMappingOutput

func (GetImagesImageDiskDeviceMappingOutput) ToGetImagesImageDiskDeviceMappingOutputWithContext

func (o GetImagesImageDiskDeviceMappingOutput) ToGetImagesImageDiskDeviceMappingOutputWithContext(ctx context.Context) GetImagesImageDiskDeviceMappingOutput

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) Architecture

func (o GetImagesImageOutput) Architecture() pulumi.StringOutput

The image architecture. Valid values: `i386` and `x8664`.

func (GetImagesImageOutput) CreationTime

func (o GetImagesImageOutput) CreationTime() pulumi.StringOutput

Time of creation.

func (GetImagesImageOutput) Description

func (o GetImagesImageOutput) Description() pulumi.StringOutput

Description of the image.

func (GetImagesImageOutput) DiskDeviceMappings

Description of the system with disks and snapshots under the image.

func (GetImagesImageOutput) ElementType

func (GetImagesImageOutput) ElementType() reflect.Type

func (GetImagesImageOutput) Id

ID of the image.

func (GetImagesImageOutput) ImageId

The ID of the image.

func (GetImagesImageOutput) ImageOwnerAlias

func (o GetImagesImageOutput) ImageOwnerAlias() pulumi.StringOutput

Alias of the image owner.

func (GetImagesImageOutput) ImageVersion

func (o GetImagesImageOutput) ImageVersion() pulumi.StringOutput

Version of the image.

func (GetImagesImageOutput) IsCopied

func (o GetImagesImageOutput) IsCopied() pulumi.BoolOutput

func (GetImagesImageOutput) IsSelfShared

func (o GetImagesImageOutput) IsSelfShared() pulumi.StringOutput

func (GetImagesImageOutput) IsSubscribed

func (o GetImagesImageOutput) IsSubscribed() pulumi.BoolOutput

Whether the user has subscribed to the terms of service for the image product corresponding to the ProductCode.

func (GetImagesImageOutput) IsSupportIoOptimized

func (o GetImagesImageOutput) IsSupportIoOptimized() pulumi.BoolOutput

Specifies whether the image can be used on I/O optimized instances.

func (GetImagesImageOutput) Name

func (GetImagesImageOutput) OsName

Display Chinese name of the OS.

func (GetImagesImageOutput) OsNameEn

Display English name of the OS.

func (GetImagesImageOutput) OsType

The operating system type of the image. Valid values: `windows` and `linux`.

func (GetImagesImageOutput) Platform

func (GetImagesImageOutput) ProductCode

func (o GetImagesImageOutput) ProductCode() pulumi.StringOutput

Product code of the image on the image market.

func (GetImagesImageOutput) Progress

Progress of image creation, presented in percentages.

func (GetImagesImageOutput) Size

Size of the created disk.

func (GetImagesImageOutput) State

func (GetImagesImageOutput) Status

The status of the image. The following values are available, Separate multiple parameter values by using commas (,). Default value: `Available`. Valid values: * `Creating`: The image is being created. * `Waiting`: The image is waiting to be processed. * `Available`: The image is available. * `UnAvailable`: The image is unavailable. * `CreateFailed`: The image failed to be created. * `Deprecated`: The image is discontinued.

func (GetImagesImageOutput) Tags

A mapping of tags to assign to the resource.

func (GetImagesImageOutput) ToGetImagesImageOutput

func (o GetImagesImageOutput) ToGetImagesImageOutput() GetImagesImageOutput

func (GetImagesImageOutput) ToGetImagesImageOutputWithContext

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

func (GetImagesImageOutput) Usage

Specifies whether to check the validity of the request without actually making the request. Valid values: * `instance`: The image is already in use and running on an ECS instance. * `none`: The image is not in use.

type GetImagesOutputArgs

type GetImagesOutputArgs struct {
	// The scenario in which the image will be used. Default value: `CreateEcs`. Valid values:
	// * `CreateEcs`: instance creation.
	// * `ChangeOS`: replacement of the system disk or operating system.
	ActionType pulumi.StringPtrInput `pulumi:"actionType"`
	// The image architecture. Valid values: `i386` and `x8664`.
	Architecture pulumi.StringPtrInput `pulumi:"architecture"`
	// Specifies whether the image is running on an ECS instance. Default value: `false`. Valid values:
	// * `true`: The validity of the request is checked but resources are not queried. Check items include whether your AccessKey pair is valid, whether RAM users are authorized, and whether the required parameters are specified. If the check fails, the corresponding error message is returned. If the check succeeds, the DryRunOperation error code is returned.
	// * `false`: The validity of the request is checked, and a 2XX HTTP status code is returned and resources are queried if the check succeeds.
	DryRun pulumi.BoolPtrInput `pulumi:"dryRun"`
	// The name of the image family. You can set this parameter to query images of the specified image family. This parameter is empty by default.
	ImageFamily pulumi.StringPtrInput `pulumi:"imageFamily"`
	// The ID of the image.
	ImageId pulumi.StringPtrInput `pulumi:"imageId"`
	// The name of the image.
	ImageName pulumi.StringPtrInput `pulumi:"imageName"`
	// The ID of the Alibaba Cloud account to which the image belongs. This parameter takes effect only when you query shared images or community images.
	ImageOwnerId pulumi.StringPtrInput `pulumi:"imageOwnerId"`
	// The instance type for which the image can be used.
	InstanceType pulumi.StringPtrInput `pulumi:"instanceType"`
	// Specifies whether the image supports cloud-init.
	IsSupportCloudInit pulumi.BoolPtrInput `pulumi:"isSupportCloudInit"`
	// Specifies whether the image can be used on I/O optimized instances.
	IsSupportIoOptimized pulumi.BoolPtrInput `pulumi:"isSupportIoOptimized"`
	// If more than one result are returned, select the most recent one.
	MostRecent pulumi.BoolPtrInput `pulumi:"mostRecent"`
	// A regex string to filter resulting images by name.
	NameRegex pulumi.StringPtrInput `pulumi:"nameRegex"`
	// The operating system type of the image. Valid values: `windows` and `linux`.
	OsType     pulumi.StringPtrInput `pulumi:"osType"`
	OutputFile pulumi.StringPtrInput `pulumi:"outputFile"`
	// Filter results by a specific image owner. Valid items are `system`, `self`, `others`, `marketplace`.
	Owners pulumi.StringPtrInput `pulumi:"owners"`
	// The ID of the resource group to which the custom image belongs.
	ResourceGroupId pulumi.StringPtrInput `pulumi:"resourceGroupId"`
	// The ID of the snapshot used to create the custom image.
	SnapshotId pulumi.StringPtrInput `pulumi:"snapshotId"`
	// The status of the image. The following values are available, Separate multiple parameter values by using commas (,). Default value: `Available`. Valid values:
	// * `Creating`: The image is being created.
	// * `Waiting`: The image is waiting to be processed.
	// * `Available`: The image is available.
	// * `UnAvailable`: The image is unavailable.
	// * `CreateFailed`: The image failed to be created.
	// * `Deprecated`: The image is discontinued.
	Status pulumi.StringPtrInput `pulumi:"status"`
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapInput `pulumi:"tags"`
	// Specifies whether to check the validity of the request without actually making the request. Valid values:
	// * `instance`: The image is already in use and running on an ECS instance.
	// * `none`: The image is not in use.
	Usage pulumi.StringPtrInput `pulumi:"usage"`
}

A collection of arguments for invoking getImages.

func (GetImagesOutputArgs) ElementType

func (GetImagesOutputArgs) ElementType() reflect.Type

type GetImagesResult

type GetImagesResult struct {
	ActionType *string `pulumi:"actionType"`
	// Platform type of the image system: i386 or x86_64.
	Architecture *string `pulumi:"architecture"`
	DryRun       *bool   `pulumi:"dryRun"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// A list of image IDs.
	Ids          []string `pulumi:"ids"`
	ImageFamily  *string  `pulumi:"imageFamily"`
	ImageId      *string  `pulumi:"imageId"`
	ImageName    *string  `pulumi:"imageName"`
	ImageOwnerId *string  `pulumi:"imageOwnerId"`
	// A list of images. Each element contains the following attributes:
	Images               []GetImagesImage `pulumi:"images"`
	InstanceType         *string          `pulumi:"instanceType"`
	IsSupportCloudInit   *bool            `pulumi:"isSupportCloudInit"`
	IsSupportIoOptimized *bool            `pulumi:"isSupportIoOptimized"`
	MostRecent           *bool            `pulumi:"mostRecent"`
	NameRegex            *string          `pulumi:"nameRegex"`
	OsType               *string          `pulumi:"osType"`
	OutputFile           *string          `pulumi:"outputFile"`
	Owners               *string          `pulumi:"owners"`
	ResourceGroupId      *string          `pulumi:"resourceGroupId"`
	// Snapshot ID.
	SnapshotId *string `pulumi:"snapshotId"`
	// Status of the image. Possible values: `UnAvailable`, `Available`, `Creating` and `CreateFailed`.
	Status *string                `pulumi:"status"`
	Tags   map[string]interface{} `pulumi:"tags"`
	Usage  *string                `pulumi:"usage"`
}

A collection of values returned by getImages.

func GetImages

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

This data source provides available image resources. It contains user's private images, system images provided by Alibaba Cloud, other public images and the ones available on the image market.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/go/alicloud/ecs"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		imagesDs, err := ecs.GetImages(ctx, &ecs.GetImagesArgs{
			NameRegex: pulumi.StringRef("^centos_6"),
			Owners:    pulumi.StringRef("system"),
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("firstImageId", imagesDs.Images[0].Id)
		return nil
	})
}

```

type GetImagesResultOutput

type GetImagesResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getImages.

func (GetImagesResultOutput) ActionType

func (GetImagesResultOutput) Architecture

func (o GetImagesResultOutput) Architecture() pulumi.StringPtrOutput

Platform type of the image system: i386 or x86_64.

func (GetImagesResultOutput) DryRun

func (GetImagesResultOutput) ElementType

func (GetImagesResultOutput) ElementType() reflect.Type

func (GetImagesResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetImagesResultOutput) Ids

A list of image IDs.

func (GetImagesResultOutput) ImageFamily

func (GetImagesResultOutput) ImageId

func (GetImagesResultOutput) ImageName

func (GetImagesResultOutput) ImageOwnerId

func (o GetImagesResultOutput) ImageOwnerId() pulumi.StringPtrOutput

func (GetImagesResultOutput) Images

A list of images. Each element contains the following attributes:

func (GetImagesResultOutput) InstanceType

func (o GetImagesResultOutput) InstanceType() pulumi.StringPtrOutput

func (GetImagesResultOutput) IsSupportCloudInit

func (o GetImagesResultOutput) IsSupportCloudInit() pulumi.BoolPtrOutput

func (GetImagesResultOutput) IsSupportIoOptimized

func (o GetImagesResultOutput) IsSupportIoOptimized() pulumi.BoolPtrOutput

func (GetImagesResultOutput) MostRecent

func (GetImagesResultOutput) NameRegex

func (GetImagesResultOutput) OsType

func (GetImagesResultOutput) OutputFile

func (GetImagesResultOutput) Owners

func (GetImagesResultOutput) ResourceGroupId

func (o GetImagesResultOutput) ResourceGroupId() pulumi.StringPtrOutput

func (GetImagesResultOutput) SnapshotId

Snapshot ID.

func (GetImagesResultOutput) Status

Status of the image. Possible values: `UnAvailable`, `Available`, `Creating` and `CreateFailed`.

func (GetImagesResultOutput) Tags

func (GetImagesResultOutput) ToGetImagesResultOutput

func (o GetImagesResultOutput) ToGetImagesResultOutput() GetImagesResultOutput

func (GetImagesResultOutput) ToGetImagesResultOutputWithContext

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

func (GetImagesResultOutput) Usage

type GetInstanceTypeFamiliesArgs

type GetInstanceTypeFamiliesArgs struct {
	// The generation of the instance type family, Valid values: `ecs-1`, `ecs-2`, `ecs-3`, `ecs-4`, `ecs-5`, `ecs-6`. For more information, see [Instance type families](https://www.alibabacloud.com/help/doc-detail/25378.htm).
	Generation *string `pulumi:"generation"`
	// Valid values are `PrePaid`, `PostPaid`, Default to `PostPaid`.
	InstanceChargeType *string `pulumi:"instanceChargeType"`
	OutputFile         *string `pulumi:"outputFile"`
	// Filter the results by ECS spot type. Valid values: `NoSpot`, `SpotWithPriceLimit` and `SpotAsPriceGo`. Default to `NoSpot`.
	SpotStrategy *string `pulumi:"spotStrategy"`
	// The Zone to launch the instance.
	ZoneId *string `pulumi:"zoneId"`
}

A collection of arguments for invoking getInstanceTypeFamilies.

type GetInstanceTypeFamiliesFamily

type GetInstanceTypeFamiliesFamily struct {
	// The generation of the instance type family, Valid values: `ecs-1`, `ecs-2`, `ecs-3`, `ecs-4`, `ecs-5`, `ecs-6`. For more information, see [Instance type families](https://www.alibabacloud.com/help/doc-detail/25378.htm).
	Generation string `pulumi:"generation"`
	// ID of the instance type family.
	Id string `pulumi:"id"`
	// A list of Zone to launch the instance.
	ZoneIds []string `pulumi:"zoneIds"`
}

type GetInstanceTypeFamiliesFamilyArgs

type GetInstanceTypeFamiliesFamilyArgs struct {
	// The generation of the instance type family, Valid values: `ecs-1`, `ecs-2`, `ecs-3`, `ecs-4`, `ecs-5`, `ecs-6`. For more information, see [Instance type families](https://www.alibabacloud.com/help/doc-detail/25378.htm).
	Generation pulumi.StringInput `pulumi:"generation"`
	// ID of the instance type family.
	Id pulumi.StringInput `pulumi:"id"`
	// A list of Zone to launch the instance.
	ZoneIds pulumi.StringArrayInput `pulumi:"zoneIds"`
}

func (GetInstanceTypeFamiliesFamilyArgs) ElementType

func (GetInstanceTypeFamiliesFamilyArgs) ToGetInstanceTypeFamiliesFamilyOutput

func (i GetInstanceTypeFamiliesFamilyArgs) ToGetInstanceTypeFamiliesFamilyOutput() GetInstanceTypeFamiliesFamilyOutput

func (GetInstanceTypeFamiliesFamilyArgs) ToGetInstanceTypeFamiliesFamilyOutputWithContext

func (i GetInstanceTypeFamiliesFamilyArgs) ToGetInstanceTypeFamiliesFamilyOutputWithContext(ctx context.Context) GetInstanceTypeFamiliesFamilyOutput

type GetInstanceTypeFamiliesFamilyArray

type GetInstanceTypeFamiliesFamilyArray []GetInstanceTypeFamiliesFamilyInput

func (GetInstanceTypeFamiliesFamilyArray) ElementType

func (GetInstanceTypeFamiliesFamilyArray) ToGetInstanceTypeFamiliesFamilyArrayOutput

func (i GetInstanceTypeFamiliesFamilyArray) ToGetInstanceTypeFamiliesFamilyArrayOutput() GetInstanceTypeFamiliesFamilyArrayOutput

func (GetInstanceTypeFamiliesFamilyArray) ToGetInstanceTypeFamiliesFamilyArrayOutputWithContext

func (i GetInstanceTypeFamiliesFamilyArray) ToGetInstanceTypeFamiliesFamilyArrayOutputWithContext(ctx context.Context) GetInstanceTypeFamiliesFamilyArrayOutput

type GetInstanceTypeFamiliesFamilyArrayInput

type GetInstanceTypeFamiliesFamilyArrayInput interface {
	pulumi.Input

	ToGetInstanceTypeFamiliesFamilyArrayOutput() GetInstanceTypeFamiliesFamilyArrayOutput
	ToGetInstanceTypeFamiliesFamilyArrayOutputWithContext(context.Context) GetInstanceTypeFamiliesFamilyArrayOutput
}

GetInstanceTypeFamiliesFamilyArrayInput is an input type that accepts GetInstanceTypeFamiliesFamilyArray and GetInstanceTypeFamiliesFamilyArrayOutput values. You can construct a concrete instance of `GetInstanceTypeFamiliesFamilyArrayInput` via:

GetInstanceTypeFamiliesFamilyArray{ GetInstanceTypeFamiliesFamilyArgs{...} }

type GetInstanceTypeFamiliesFamilyArrayOutput

type GetInstanceTypeFamiliesFamilyArrayOutput struct{ *pulumi.OutputState }

func (GetInstanceTypeFamiliesFamilyArrayOutput) ElementType

func (GetInstanceTypeFamiliesFamilyArrayOutput) Index

func (GetInstanceTypeFamiliesFamilyArrayOutput) ToGetInstanceTypeFamiliesFamilyArrayOutput

func (o GetInstanceTypeFamiliesFamilyArrayOutput) ToGetInstanceTypeFamiliesFamilyArrayOutput() GetInstanceTypeFamiliesFamilyArrayOutput

func (GetInstanceTypeFamiliesFamilyArrayOutput) ToGetInstanceTypeFamiliesFamilyArrayOutputWithContext

func (o GetInstanceTypeFamiliesFamilyArrayOutput) ToGetInstanceTypeFamiliesFamilyArrayOutputWithContext(ctx context.Context) GetInstanceTypeFamiliesFamilyArrayOutput

type GetInstanceTypeFamiliesFamilyInput

type GetInstanceTypeFamiliesFamilyInput interface {
	pulumi.Input

	ToGetInstanceTypeFamiliesFamilyOutput() GetInstanceTypeFamiliesFamilyOutput
	ToGetInstanceTypeFamiliesFamilyOutputWithContext(context.Context) GetInstanceTypeFamiliesFamilyOutput
}

GetInstanceTypeFamiliesFamilyInput is an input type that accepts GetInstanceTypeFamiliesFamilyArgs and GetInstanceTypeFamiliesFamilyOutput values. You can construct a concrete instance of `GetInstanceTypeFamiliesFamilyInput` via:

GetInstanceTypeFamiliesFamilyArgs{...}

type GetInstanceTypeFamiliesFamilyOutput

type GetInstanceTypeFamiliesFamilyOutput struct{ *pulumi.OutputState }

func (GetInstanceTypeFamiliesFamilyOutput) ElementType

func (GetInstanceTypeFamiliesFamilyOutput) Generation

The generation of the instance type family, Valid values: `ecs-1`, `ecs-2`, `ecs-3`, `ecs-4`, `ecs-5`, `ecs-6`. For more information, see [Instance type families](https://www.alibabacloud.com/help/doc-detail/25378.htm).

func (GetInstanceTypeFamiliesFamilyOutput) Id

ID of the instance type family.

func (GetInstanceTypeFamiliesFamilyOutput) ToGetInstanceTypeFamiliesFamilyOutput

func (o GetInstanceTypeFamiliesFamilyOutput) ToGetInstanceTypeFamiliesFamilyOutput() GetInstanceTypeFamiliesFamilyOutput

func (GetInstanceTypeFamiliesFamilyOutput) ToGetInstanceTypeFamiliesFamilyOutputWithContext

func (o GetInstanceTypeFamiliesFamilyOutput) ToGetInstanceTypeFamiliesFamilyOutputWithContext(ctx context.Context) GetInstanceTypeFamiliesFamilyOutput

func (GetInstanceTypeFamiliesFamilyOutput) ZoneIds

A list of Zone to launch the instance.

type GetInstanceTypeFamiliesOutputArgs

type GetInstanceTypeFamiliesOutputArgs struct {
	// The generation of the instance type family, Valid values: `ecs-1`, `ecs-2`, `ecs-3`, `ecs-4`, `ecs-5`, `ecs-6`. For more information, see [Instance type families](https://www.alibabacloud.com/help/doc-detail/25378.htm).
	Generation pulumi.StringPtrInput `pulumi:"generation"`
	// Valid values are `PrePaid`, `PostPaid`, Default to `PostPaid`.
	InstanceChargeType pulumi.StringPtrInput `pulumi:"instanceChargeType"`
	OutputFile         pulumi.StringPtrInput `pulumi:"outputFile"`
	// Filter the results by ECS spot type. Valid values: `NoSpot`, `SpotWithPriceLimit` and `SpotAsPriceGo`. Default to `NoSpot`.
	SpotStrategy pulumi.StringPtrInput `pulumi:"spotStrategy"`
	// The Zone to launch the instance.
	ZoneId pulumi.StringPtrInput `pulumi:"zoneId"`
}

A collection of arguments for invoking getInstanceTypeFamilies.

func (GetInstanceTypeFamiliesOutputArgs) ElementType

type GetInstanceTypeFamiliesResult

type GetInstanceTypeFamiliesResult struct {
	Families []GetInstanceTypeFamiliesFamily `pulumi:"families"`
	// The generation of the instance type family.
	Generation *string `pulumi:"generation"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// A list of instance type family IDs.
	Ids                []string `pulumi:"ids"`
	InstanceChargeType *string  `pulumi:"instanceChargeType"`
	OutputFile         *string  `pulumi:"outputFile"`
	SpotStrategy       *string  `pulumi:"spotStrategy"`
	ZoneId             *string  `pulumi:"zoneId"`
}

A collection of values returned by getInstanceTypeFamilies.

func GetInstanceTypeFamilies

func GetInstanceTypeFamilies(ctx *pulumi.Context, args *GetInstanceTypeFamiliesArgs, opts ...pulumi.InvokeOption) (*GetInstanceTypeFamiliesResult, error)

This data source provides the ECS instance type families of Alibaba Cloud.

> **NOTE:** Available in 1.54.0+

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/go/alicloud/ecs"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_default, err := ecs.GetInstanceTypeFamilies(ctx, &ecs.GetInstanceTypeFamiliesArgs{
			InstanceChargeType: pulumi.StringRef("PrePaid"),
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("firstInstanceTypeFamilyId", _default.Families[0].Id)
		ctx.Export("instanceIds", _default.Ids)
		return nil
	})
}

```

type GetInstanceTypeFamiliesResultOutput

type GetInstanceTypeFamiliesResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getInstanceTypeFamilies.

func (GetInstanceTypeFamiliesResultOutput) ElementType

func (GetInstanceTypeFamiliesResultOutput) Families

func (GetInstanceTypeFamiliesResultOutput) Generation

The generation of the instance type family.

func (GetInstanceTypeFamiliesResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetInstanceTypeFamiliesResultOutput) Ids

A list of instance type family IDs.

func (GetInstanceTypeFamiliesResultOutput) InstanceChargeType

func (GetInstanceTypeFamiliesResultOutput) OutputFile

func (GetInstanceTypeFamiliesResultOutput) SpotStrategy

func (GetInstanceTypeFamiliesResultOutput) ToGetInstanceTypeFamiliesResultOutput

func (o GetInstanceTypeFamiliesResultOutput) ToGetInstanceTypeFamiliesResultOutput() GetInstanceTypeFamiliesResultOutput

func (GetInstanceTypeFamiliesResultOutput) ToGetInstanceTypeFamiliesResultOutputWithContext

func (o GetInstanceTypeFamiliesResultOutput) ToGetInstanceTypeFamiliesResultOutputWithContext(ctx context.Context) GetInstanceTypeFamiliesResultOutput

func (GetInstanceTypeFamiliesResultOutput) ZoneId

type GetInstanceTypesArgs

type GetInstanceTypesArgs struct {
	// The zone where instance types are supported.
	AvailabilityZone *string `pulumi:"availabilityZone"`
	// Filter the results to a specific number of cpu cores.
	CpuCoreCount *int `pulumi:"cpuCoreCount"`
	// Filter the result whose network interface number is no more than `eniAmount`.
	EniAmount *int `pulumi:"eniAmount"`
	// The GPU amount of an instance type.
	GpuAmount *int `pulumi:"gpuAmount"`
	// The GPU spec of an instance type.
	GpuSpec *string `pulumi:"gpuSpec"`
	// The ID of the image.
	ImageId *string `pulumi:"imageId"`
	// Filter the results by charge type. Valid values: `PrePaid` and `PostPaid`. Default to `PostPaid`.
	InstanceChargeType *string `pulumi:"instanceChargeType"`
	// Filter the results based on their family name. For example: 'ecs.n4'.
	InstanceTypeFamily *string `pulumi:"instanceTypeFamily"`
	// If true, outdated instance types are included in the results. Default to false.
	IsOutdated         *bool   `pulumi:"isOutdated"`
	KubernetesNodeRole *string `pulumi:"kubernetesNodeRole"`
	// Filter the results to a specific memory size in GB.
	MemorySize *float64 `pulumi:"memorySize"`
	// The minimum number of IPv6 addresses per ENI. **Note:** If an instance type supports fewer IPv6 addresses per ENI than the specified value, information about the instance type is not queried.
	MinimumEniIpv6AddressQuantity *int `pulumi:"minimumEniIpv6AddressQuantity"`
	// Filter the results by network type. Valid values: `Classic` and `Vpc`.
	NetworkType *string `pulumi:"networkType"`
	OutputFile  *string `pulumi:"outputFile"`
	SortedBy    *string `pulumi:"sortedBy"`
	// Filter the results by ECS spot type. Valid values: `NoSpot`, `SpotWithPriceLimit` and `SpotAsPriceGo`. Default to `NoSpot`.
	SpotStrategy *string `pulumi:"spotStrategy"`
	// Filter the results by system disk category. Valid values: `cloud`, `ephemeralSsd`, `cloudEssd`, `cloudEfficiency`, `cloudSsd`.
	// **NOTE**: Its default value `cloudEfficiency` has been removed from the version v1.150.0.
	SystemDiskCategory *string `pulumi:"systemDiskCategory"`
}

A collection of arguments for invoking getInstanceTypes.

type GetInstanceTypesInstanceType

type GetInstanceTypesInstanceType struct {
	// List of availability zones that support the instance type.
	AvailabilityZones []string `pulumi:"availabilityZones"`
	// The burstable instance attribution:
	// - initial_credit: The initial CPU credit of a burstable instance.
	// - baseline_credit:  The compute performance benchmark CPU credit of a burstable instance.
	BurstableInstance GetInstanceTypesInstanceTypeBurstableInstance `pulumi:"burstableInstance"`
	// Filter the results to a specific number of cpu cores.
	CpuCoreCount int `pulumi:"cpuCoreCount"`
	// Filter the result whose network interface number is no more than `eniAmount`.
	EniAmount int `pulumi:"eniAmount"`
	// The instance type family.
	Family string `pulumi:"family"`
	// The GPU attribution of an instance type:
	// - amount: The amount of GPU of an instance type.
	// - category: The category of GPU of an instance type.
	Gpu GetInstanceTypesInstanceTypeGpu `pulumi:"gpu"`
	// ID of the instance type.
	Id string `pulumi:"id"`
	// Local storage of an instance type:
	// - capacity: The capacity of a local storage in GB.
	// - amount:  The number of local storage devices that an instance has been attached to.
	// - category: The category of local storage that an instance has been attached to.
	LocalStorage GetInstanceTypesInstanceTypeLocalStorage `pulumi:"localStorage"`
	// Filter the results to a specific memory size in GB.
	MemorySize float64 `pulumi:"memorySize"`
	// Indicates whether the cloud disk can be attached by using the nonvolatile memory express (NVMe) protocol. Valid values:
	// - required: The cloud disk can be attached by using the NVMe protocol.
	// - unsupported: The cloud disk cannot be attached by using the NVMe protocol.
	NvmeSupport string `pulumi:"nvmeSupport"`
	Price       string `pulumi:"price"`
}

type GetInstanceTypesInstanceTypeArgs

type GetInstanceTypesInstanceTypeArgs struct {
	// List of availability zones that support the instance type.
	AvailabilityZones pulumi.StringArrayInput `pulumi:"availabilityZones"`
	// The burstable instance attribution:
	// - initial_credit: The initial CPU credit of a burstable instance.
	// - baseline_credit:  The compute performance benchmark CPU credit of a burstable instance.
	BurstableInstance GetInstanceTypesInstanceTypeBurstableInstanceInput `pulumi:"burstableInstance"`
	// Filter the results to a specific number of cpu cores.
	CpuCoreCount pulumi.IntInput `pulumi:"cpuCoreCount"`
	// Filter the result whose network interface number is no more than `eniAmount`.
	EniAmount pulumi.IntInput `pulumi:"eniAmount"`
	// The instance type family.
	Family pulumi.StringInput `pulumi:"family"`
	// The GPU attribution of an instance type:
	// - amount: The amount of GPU of an instance type.
	// - category: The category of GPU of an instance type.
	Gpu GetInstanceTypesInstanceTypeGpuInput `pulumi:"gpu"`
	// ID of the instance type.
	Id pulumi.StringInput `pulumi:"id"`
	// Local storage of an instance type:
	// - capacity: The capacity of a local storage in GB.
	// - amount:  The number of local storage devices that an instance has been attached to.
	// - category: The category of local storage that an instance has been attached to.
	LocalStorage GetInstanceTypesInstanceTypeLocalStorageInput `pulumi:"localStorage"`
	// Filter the results to a specific memory size in GB.
	MemorySize pulumi.Float64Input `pulumi:"memorySize"`
	// Indicates whether the cloud disk can be attached by using the nonvolatile memory express (NVMe) protocol. Valid values:
	// - required: The cloud disk can be attached by using the NVMe protocol.
	// - unsupported: The cloud disk cannot be attached by using the NVMe protocol.
	NvmeSupport pulumi.StringInput `pulumi:"nvmeSupport"`
	Price       pulumi.StringInput `pulumi:"price"`
}

func (GetInstanceTypesInstanceTypeArgs) ElementType

func (GetInstanceTypesInstanceTypeArgs) ToGetInstanceTypesInstanceTypeOutput

func (i GetInstanceTypesInstanceTypeArgs) ToGetInstanceTypesInstanceTypeOutput() GetInstanceTypesInstanceTypeOutput

func (GetInstanceTypesInstanceTypeArgs) ToGetInstanceTypesInstanceTypeOutputWithContext

func (i GetInstanceTypesInstanceTypeArgs) ToGetInstanceTypesInstanceTypeOutputWithContext(ctx context.Context) GetInstanceTypesInstanceTypeOutput

type GetInstanceTypesInstanceTypeArray

type GetInstanceTypesInstanceTypeArray []GetInstanceTypesInstanceTypeInput

func (GetInstanceTypesInstanceTypeArray) ElementType

func (GetInstanceTypesInstanceTypeArray) ToGetInstanceTypesInstanceTypeArrayOutput

func (i GetInstanceTypesInstanceTypeArray) ToGetInstanceTypesInstanceTypeArrayOutput() GetInstanceTypesInstanceTypeArrayOutput

func (GetInstanceTypesInstanceTypeArray) ToGetInstanceTypesInstanceTypeArrayOutputWithContext

func (i GetInstanceTypesInstanceTypeArray) ToGetInstanceTypesInstanceTypeArrayOutputWithContext(ctx context.Context) GetInstanceTypesInstanceTypeArrayOutput

type GetInstanceTypesInstanceTypeArrayInput

type GetInstanceTypesInstanceTypeArrayInput interface {
	pulumi.Input

	ToGetInstanceTypesInstanceTypeArrayOutput() GetInstanceTypesInstanceTypeArrayOutput
	ToGetInstanceTypesInstanceTypeArrayOutputWithContext(context.Context) GetInstanceTypesInstanceTypeArrayOutput
}

GetInstanceTypesInstanceTypeArrayInput is an input type that accepts GetInstanceTypesInstanceTypeArray and GetInstanceTypesInstanceTypeArrayOutput values. You can construct a concrete instance of `GetInstanceTypesInstanceTypeArrayInput` via:

GetInstanceTypesInstanceTypeArray{ GetInstanceTypesInstanceTypeArgs{...} }

type GetInstanceTypesInstanceTypeArrayOutput

type GetInstanceTypesInstanceTypeArrayOutput struct{ *pulumi.OutputState }

func (GetInstanceTypesInstanceTypeArrayOutput) ElementType

func (GetInstanceTypesInstanceTypeArrayOutput) Index

func (GetInstanceTypesInstanceTypeArrayOutput) ToGetInstanceTypesInstanceTypeArrayOutput

func (o GetInstanceTypesInstanceTypeArrayOutput) ToGetInstanceTypesInstanceTypeArrayOutput() GetInstanceTypesInstanceTypeArrayOutput

func (GetInstanceTypesInstanceTypeArrayOutput) ToGetInstanceTypesInstanceTypeArrayOutputWithContext

func (o GetInstanceTypesInstanceTypeArrayOutput) ToGetInstanceTypesInstanceTypeArrayOutputWithContext(ctx context.Context) GetInstanceTypesInstanceTypeArrayOutput

type GetInstanceTypesInstanceTypeBurstableInstance

type GetInstanceTypesInstanceTypeBurstableInstance struct {
	BaselineCredit string `pulumi:"baselineCredit"`
	InitialCredit  string `pulumi:"initialCredit"`
}

type GetInstanceTypesInstanceTypeBurstableInstanceArgs

type GetInstanceTypesInstanceTypeBurstableInstanceArgs struct {
	BaselineCredit pulumi.StringInput `pulumi:"baselineCredit"`
	InitialCredit  pulumi.StringInput `pulumi:"initialCredit"`
}

func (GetInstanceTypesInstanceTypeBurstableInstanceArgs) ElementType

func (GetInstanceTypesInstanceTypeBurstableInstanceArgs) ToGetInstanceTypesInstanceTypeBurstableInstanceOutput

func (i GetInstanceTypesInstanceTypeBurstableInstanceArgs) ToGetInstanceTypesInstanceTypeBurstableInstanceOutput() GetInstanceTypesInstanceTypeBurstableInstanceOutput

func (GetInstanceTypesInstanceTypeBurstableInstanceArgs) ToGetInstanceTypesInstanceTypeBurstableInstanceOutputWithContext

func (i GetInstanceTypesInstanceTypeBurstableInstanceArgs) ToGetInstanceTypesInstanceTypeBurstableInstanceOutputWithContext(ctx context.Context) GetInstanceTypesInstanceTypeBurstableInstanceOutput

type GetInstanceTypesInstanceTypeBurstableInstanceInput

type GetInstanceTypesInstanceTypeBurstableInstanceInput interface {
	pulumi.Input

	ToGetInstanceTypesInstanceTypeBurstableInstanceOutput() GetInstanceTypesInstanceTypeBurstableInstanceOutput
	ToGetInstanceTypesInstanceTypeBurstableInstanceOutputWithContext(context.Context) GetInstanceTypesInstanceTypeBurstableInstanceOutput
}

GetInstanceTypesInstanceTypeBurstableInstanceInput is an input type that accepts GetInstanceTypesInstanceTypeBurstableInstanceArgs and GetInstanceTypesInstanceTypeBurstableInstanceOutput values. You can construct a concrete instance of `GetInstanceTypesInstanceTypeBurstableInstanceInput` via:

GetInstanceTypesInstanceTypeBurstableInstanceArgs{...}

type GetInstanceTypesInstanceTypeBurstableInstanceOutput

type GetInstanceTypesInstanceTypeBurstableInstanceOutput struct{ *pulumi.OutputState }

func (GetInstanceTypesInstanceTypeBurstableInstanceOutput) BaselineCredit

func (GetInstanceTypesInstanceTypeBurstableInstanceOutput) ElementType

func (GetInstanceTypesInstanceTypeBurstableInstanceOutput) InitialCredit

func (GetInstanceTypesInstanceTypeBurstableInstanceOutput) ToGetInstanceTypesInstanceTypeBurstableInstanceOutput

func (o GetInstanceTypesInstanceTypeBurstableInstanceOutput) ToGetInstanceTypesInstanceTypeBurstableInstanceOutput() GetInstanceTypesInstanceTypeBurstableInstanceOutput

func (GetInstanceTypesInstanceTypeBurstableInstanceOutput) ToGetInstanceTypesInstanceTypeBurstableInstanceOutputWithContext

func (o GetInstanceTypesInstanceTypeBurstableInstanceOutput) ToGetInstanceTypesInstanceTypeBurstableInstanceOutputWithContext(ctx context.Context) GetInstanceTypesInstanceTypeBurstableInstanceOutput

type GetInstanceTypesInstanceTypeGpu

type GetInstanceTypesInstanceTypeGpu struct {
	Amount   string `pulumi:"amount"`
	Category string `pulumi:"category"`
}

type GetInstanceTypesInstanceTypeGpuArgs

type GetInstanceTypesInstanceTypeGpuArgs struct {
	Amount   pulumi.StringInput `pulumi:"amount"`
	Category pulumi.StringInput `pulumi:"category"`
}

func (GetInstanceTypesInstanceTypeGpuArgs) ElementType

func (GetInstanceTypesInstanceTypeGpuArgs) ToGetInstanceTypesInstanceTypeGpuOutput

func (i GetInstanceTypesInstanceTypeGpuArgs) ToGetInstanceTypesInstanceTypeGpuOutput() GetInstanceTypesInstanceTypeGpuOutput

func (GetInstanceTypesInstanceTypeGpuArgs) ToGetInstanceTypesInstanceTypeGpuOutputWithContext

func (i GetInstanceTypesInstanceTypeGpuArgs) ToGetInstanceTypesInstanceTypeGpuOutputWithContext(ctx context.Context) GetInstanceTypesInstanceTypeGpuOutput

type GetInstanceTypesInstanceTypeGpuInput

type GetInstanceTypesInstanceTypeGpuInput interface {
	pulumi.Input

	ToGetInstanceTypesInstanceTypeGpuOutput() GetInstanceTypesInstanceTypeGpuOutput
	ToGetInstanceTypesInstanceTypeGpuOutputWithContext(context.Context) GetInstanceTypesInstanceTypeGpuOutput
}

GetInstanceTypesInstanceTypeGpuInput is an input type that accepts GetInstanceTypesInstanceTypeGpuArgs and GetInstanceTypesInstanceTypeGpuOutput values. You can construct a concrete instance of `GetInstanceTypesInstanceTypeGpuInput` via:

GetInstanceTypesInstanceTypeGpuArgs{...}

type GetInstanceTypesInstanceTypeGpuOutput

type GetInstanceTypesInstanceTypeGpuOutput struct{ *pulumi.OutputState }

func (GetInstanceTypesInstanceTypeGpuOutput) Amount

func (GetInstanceTypesInstanceTypeGpuOutput) Category

func (GetInstanceTypesInstanceTypeGpuOutput) ElementType

func (GetInstanceTypesInstanceTypeGpuOutput) ToGetInstanceTypesInstanceTypeGpuOutput

func (o GetInstanceTypesInstanceTypeGpuOutput) ToGetInstanceTypesInstanceTypeGpuOutput() GetInstanceTypesInstanceTypeGpuOutput

func (GetInstanceTypesInstanceTypeGpuOutput) ToGetInstanceTypesInstanceTypeGpuOutputWithContext

func (o GetInstanceTypesInstanceTypeGpuOutput) ToGetInstanceTypesInstanceTypeGpuOutputWithContext(ctx context.Context) GetInstanceTypesInstanceTypeGpuOutput

type GetInstanceTypesInstanceTypeInput

type GetInstanceTypesInstanceTypeInput interface {
	pulumi.Input

	ToGetInstanceTypesInstanceTypeOutput() GetInstanceTypesInstanceTypeOutput
	ToGetInstanceTypesInstanceTypeOutputWithContext(context.Context) GetInstanceTypesInstanceTypeOutput
}

GetInstanceTypesInstanceTypeInput is an input type that accepts GetInstanceTypesInstanceTypeArgs and GetInstanceTypesInstanceTypeOutput values. You can construct a concrete instance of `GetInstanceTypesInstanceTypeInput` via:

GetInstanceTypesInstanceTypeArgs{...}

type GetInstanceTypesInstanceTypeLocalStorage

type GetInstanceTypesInstanceTypeLocalStorage struct {
	Amount   string `pulumi:"amount"`
	Capacity string `pulumi:"capacity"`
	Category string `pulumi:"category"`
}

type GetInstanceTypesInstanceTypeLocalStorageArgs

type GetInstanceTypesInstanceTypeLocalStorageArgs struct {
	Amount   pulumi.StringInput `pulumi:"amount"`
	Capacity pulumi.StringInput `pulumi:"capacity"`
	Category pulumi.StringInput `pulumi:"category"`
}

func (GetInstanceTypesInstanceTypeLocalStorageArgs) ElementType

func (GetInstanceTypesInstanceTypeLocalStorageArgs) ToGetInstanceTypesInstanceTypeLocalStorageOutput

func (i GetInstanceTypesInstanceTypeLocalStorageArgs) ToGetInstanceTypesInstanceTypeLocalStorageOutput() GetInstanceTypesInstanceTypeLocalStorageOutput

func (GetInstanceTypesInstanceTypeLocalStorageArgs) ToGetInstanceTypesInstanceTypeLocalStorageOutputWithContext

func (i GetInstanceTypesInstanceTypeLocalStorageArgs) ToGetInstanceTypesInstanceTypeLocalStorageOutputWithContext(ctx context.Context) GetInstanceTypesInstanceTypeLocalStorageOutput

type GetInstanceTypesInstanceTypeLocalStorageInput

type GetInstanceTypesInstanceTypeLocalStorageInput interface {
	pulumi.Input

	ToGetInstanceTypesInstanceTypeLocalStorageOutput() GetInstanceTypesInstanceTypeLocalStorageOutput
	ToGetInstanceTypesInstanceTypeLocalStorageOutputWithContext(context.Context) GetInstanceTypesInstanceTypeLocalStorageOutput
}

GetInstanceTypesInstanceTypeLocalStorageInput is an input type that accepts GetInstanceTypesInstanceTypeLocalStorageArgs and GetInstanceTypesInstanceTypeLocalStorageOutput values. You can construct a concrete instance of `GetInstanceTypesInstanceTypeLocalStorageInput` via:

GetInstanceTypesInstanceTypeLocalStorageArgs{...}

type GetInstanceTypesInstanceTypeLocalStorageOutput

type GetInstanceTypesInstanceTypeLocalStorageOutput struct{ *pulumi.OutputState }

func (GetInstanceTypesInstanceTypeLocalStorageOutput) Amount

func (GetInstanceTypesInstanceTypeLocalStorageOutput) Capacity

func (GetInstanceTypesInstanceTypeLocalStorageOutput) Category

func (GetInstanceTypesInstanceTypeLocalStorageOutput) ElementType

func (GetInstanceTypesInstanceTypeLocalStorageOutput) ToGetInstanceTypesInstanceTypeLocalStorageOutput

func (o GetInstanceTypesInstanceTypeLocalStorageOutput) ToGetInstanceTypesInstanceTypeLocalStorageOutput() GetInstanceTypesInstanceTypeLocalStorageOutput

func (GetInstanceTypesInstanceTypeLocalStorageOutput) ToGetInstanceTypesInstanceTypeLocalStorageOutputWithContext

func (o GetInstanceTypesInstanceTypeLocalStorageOutput) ToGetInstanceTypesInstanceTypeLocalStorageOutputWithContext(ctx context.Context) GetInstanceTypesInstanceTypeLocalStorageOutput

type GetInstanceTypesInstanceTypeOutput

type GetInstanceTypesInstanceTypeOutput struct{ *pulumi.OutputState }

func (GetInstanceTypesInstanceTypeOutput) AvailabilityZones

List of availability zones that support the instance type.

func (GetInstanceTypesInstanceTypeOutput) BurstableInstance

The burstable instance attribution: - initial_credit: The initial CPU credit of a burstable instance. - baseline_credit: The compute performance benchmark CPU credit of a burstable instance.

func (GetInstanceTypesInstanceTypeOutput) CpuCoreCount

Filter the results to a specific number of cpu cores.

func (GetInstanceTypesInstanceTypeOutput) ElementType

func (GetInstanceTypesInstanceTypeOutput) EniAmount

Filter the result whose network interface number is no more than `eniAmount`.

func (GetInstanceTypesInstanceTypeOutput) Family

The instance type family.

func (GetInstanceTypesInstanceTypeOutput) Gpu

The GPU attribution of an instance type: - amount: The amount of GPU of an instance type. - category: The category of GPU of an instance type.

func (GetInstanceTypesInstanceTypeOutput) Id

ID of the instance type.

func (GetInstanceTypesInstanceTypeOutput) LocalStorage

Local storage of an instance type: - capacity: The capacity of a local storage in GB. - amount: The number of local storage devices that an instance has been attached to. - category: The category of local storage that an instance has been attached to.

func (GetInstanceTypesInstanceTypeOutput) MemorySize

Filter the results to a specific memory size in GB.

func (GetInstanceTypesInstanceTypeOutput) NvmeSupport

Indicates whether the cloud disk can be attached by using the nonvolatile memory express (NVMe) protocol. Valid values: - required: The cloud disk can be attached by using the NVMe protocol. - unsupported: The cloud disk cannot be attached by using the NVMe protocol.

func (GetInstanceTypesInstanceTypeOutput) Price

func (GetInstanceTypesInstanceTypeOutput) ToGetInstanceTypesInstanceTypeOutput

func (o GetInstanceTypesInstanceTypeOutput) ToGetInstanceTypesInstanceTypeOutput() GetInstanceTypesInstanceTypeOutput

func (GetInstanceTypesInstanceTypeOutput) ToGetInstanceTypesInstanceTypeOutputWithContext

func (o GetInstanceTypesInstanceTypeOutput) ToGetInstanceTypesInstanceTypeOutputWithContext(ctx context.Context) GetInstanceTypesInstanceTypeOutput

type GetInstanceTypesOutputArgs

type GetInstanceTypesOutputArgs struct {
	// The zone where instance types are supported.
	AvailabilityZone pulumi.StringPtrInput `pulumi:"availabilityZone"`
	// Filter the results to a specific number of cpu cores.
	CpuCoreCount pulumi.IntPtrInput `pulumi:"cpuCoreCount"`
	// Filter the result whose network interface number is no more than `eniAmount`.
	EniAmount pulumi.IntPtrInput `pulumi:"eniAmount"`
	// The GPU amount of an instance type.
	GpuAmount pulumi.IntPtrInput `pulumi:"gpuAmount"`
	// The GPU spec of an instance type.
	GpuSpec pulumi.StringPtrInput `pulumi:"gpuSpec"`
	// The ID of the image.
	ImageId pulumi.StringPtrInput `pulumi:"imageId"`
	// Filter the results by charge type. Valid values: `PrePaid` and `PostPaid`. Default to `PostPaid`.
	InstanceChargeType pulumi.StringPtrInput `pulumi:"instanceChargeType"`
	// Filter the results based on their family name. For example: 'ecs.n4'.
	InstanceTypeFamily pulumi.StringPtrInput `pulumi:"instanceTypeFamily"`
	// If true, outdated instance types are included in the results. Default to false.
	IsOutdated         pulumi.BoolPtrInput   `pulumi:"isOutdated"`
	KubernetesNodeRole pulumi.StringPtrInput `pulumi:"kubernetesNodeRole"`
	// Filter the results to a specific memory size in GB.
	MemorySize pulumi.Float64PtrInput `pulumi:"memorySize"`
	// The minimum number of IPv6 addresses per ENI. **Note:** If an instance type supports fewer IPv6 addresses per ENI than the specified value, information about the instance type is not queried.
	MinimumEniIpv6AddressQuantity pulumi.IntPtrInput `pulumi:"minimumEniIpv6AddressQuantity"`
	// Filter the results by network type. Valid values: `Classic` and `Vpc`.
	NetworkType pulumi.StringPtrInput `pulumi:"networkType"`
	OutputFile  pulumi.StringPtrInput `pulumi:"outputFile"`
	SortedBy    pulumi.StringPtrInput `pulumi:"sortedBy"`
	// Filter the results by ECS spot type. Valid values: `NoSpot`, `SpotWithPriceLimit` and `SpotAsPriceGo`. Default to `NoSpot`.
	SpotStrategy pulumi.StringPtrInput `pulumi:"spotStrategy"`
	// Filter the results by system disk category. Valid values: `cloud`, `ephemeralSsd`, `cloudEssd`, `cloudEfficiency`, `cloudSsd`.
	// **NOTE**: Its default value `cloudEfficiency` has been removed from the version v1.150.0.
	SystemDiskCategory pulumi.StringPtrInput `pulumi:"systemDiskCategory"`
}

A collection of arguments for invoking getInstanceTypes.

func (GetInstanceTypesOutputArgs) ElementType

func (GetInstanceTypesOutputArgs) ElementType() reflect.Type

type GetInstanceTypesResult

type GetInstanceTypesResult struct {
	AvailabilityZone *string `pulumi:"availabilityZone"`
	// Number of CPU cores.
	CpuCoreCount *int `pulumi:"cpuCoreCount"`
	// The maximum number of network interfaces that an instance type can be attached to.
	EniAmount *int    `pulumi:"eniAmount"`
	GpuAmount *int    `pulumi:"gpuAmount"`
	GpuSpec   *string `pulumi:"gpuSpec"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// A list of instance type IDs.
	Ids                []string `pulumi:"ids"`
	ImageId            *string  `pulumi:"imageId"`
	InstanceChargeType *string  `pulumi:"instanceChargeType"`
	InstanceTypeFamily *string  `pulumi:"instanceTypeFamily"`
	// A list of image types. Each element contains the following attributes:
	InstanceTypes      []GetInstanceTypesInstanceType `pulumi:"instanceTypes"`
	IsOutdated         *bool                          `pulumi:"isOutdated"`
	KubernetesNodeRole *string                        `pulumi:"kubernetesNodeRole"`
	// Size of memory, measured in GB.
	MemorySize                    *float64 `pulumi:"memorySize"`
	MinimumEniIpv6AddressQuantity *int     `pulumi:"minimumEniIpv6AddressQuantity"`
	NetworkType                   *string  `pulumi:"networkType"`
	OutputFile                    *string  `pulumi:"outputFile"`
	SortedBy                      *string  `pulumi:"sortedBy"`
	SpotStrategy                  *string  `pulumi:"spotStrategy"`
	SystemDiskCategory            *string  `pulumi:"systemDiskCategory"`
}

A collection of values returned by getInstanceTypes.

func GetInstanceTypes

func GetInstanceTypes(ctx *pulumi.Context, args *GetInstanceTypesArgs, opts ...pulumi.InvokeOption) (*GetInstanceTypesResult, error)

This data source provides the ECS instance types of Alibaba Cloud.

> **NOTE:** By default, only the upgraded instance types are returned. If you want to get outdated instance types, you must set `isOutdated` to true.

> **NOTE:** If one instance type is sold out, it will not be exported.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/go/alicloud/ecs"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		typesDs, err := ecs.GetInstanceTypes(ctx, &ecs.GetInstanceTypesArgs{
			CpuCoreCount: pulumi.IntRef(1),
			MemorySize:   pulumi.Float64Ref(2),
		}, nil)
		if err != nil {
			return err
		}
		_, err = ecs.NewInstance(ctx, "instance", &ecs.InstanceArgs{
			InstanceType: pulumi.String(typesDs.InstanceTypes[0].Id),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetInstanceTypesResultOutput

type GetInstanceTypesResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getInstanceTypes.

func (GetInstanceTypesResultOutput) AvailabilityZone

func (GetInstanceTypesResultOutput) CpuCoreCount

Number of CPU cores.

func (GetInstanceTypesResultOutput) ElementType

func (GetInstanceTypesResultOutput) EniAmount

The maximum number of network interfaces that an instance type can be attached to.

func (GetInstanceTypesResultOutput) GpuAmount

func (GetInstanceTypesResultOutput) GpuSpec

func (GetInstanceTypesResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetInstanceTypesResultOutput) Ids

A list of instance type IDs.

func (GetInstanceTypesResultOutput) ImageId

func (GetInstanceTypesResultOutput) InstanceChargeType

func (o GetInstanceTypesResultOutput) InstanceChargeType() pulumi.StringPtrOutput

func (GetInstanceTypesResultOutput) InstanceTypeFamily

func (o GetInstanceTypesResultOutput) InstanceTypeFamily() pulumi.StringPtrOutput

func (GetInstanceTypesResultOutput) InstanceTypes

A list of image types. Each element contains the following attributes:

func (GetInstanceTypesResultOutput) IsOutdated

func (GetInstanceTypesResultOutput) KubernetesNodeRole

func (o GetInstanceTypesResultOutput) KubernetesNodeRole() pulumi.StringPtrOutput

func (GetInstanceTypesResultOutput) MemorySize

Size of memory, measured in GB.

func (GetInstanceTypesResultOutput) MinimumEniIpv6AddressQuantity

func (o GetInstanceTypesResultOutput) MinimumEniIpv6AddressQuantity() pulumi.IntPtrOutput

func (GetInstanceTypesResultOutput) NetworkType

func (GetInstanceTypesResultOutput) OutputFile

func (GetInstanceTypesResultOutput) SortedBy

func (GetInstanceTypesResultOutput) SpotStrategy

func (GetInstanceTypesResultOutput) SystemDiskCategory

func (o GetInstanceTypesResultOutput) SystemDiskCategory() pulumi.StringPtrOutput

func (GetInstanceTypesResultOutput) ToGetInstanceTypesResultOutput

func (o GetInstanceTypesResultOutput) ToGetInstanceTypesResultOutput() GetInstanceTypesResultOutput

func (GetInstanceTypesResultOutput) ToGetInstanceTypesResultOutputWithContext

func (o GetInstanceTypesResultOutput) ToGetInstanceTypesResultOutputWithContext(ctx context.Context) GetInstanceTypesResultOutput

type GetInstancesArgs

type GetInstancesArgs struct {
	// Availability zone where instances are located.
	AvailabilityZone *string `pulumi:"availabilityZone"`
	// A list of ECS instance IDs.
	Ids []string `pulumi:"ids"`
	// The image ID of some ECS instance used.
	ImageId *string `pulumi:"imageId"`
	// A regex string to filter results by instance name.
	NameRegex  *string `pulumi:"nameRegex"`
	OutputFile *string `pulumi:"outputFile"`
	PageNumber *int    `pulumi:"pageNumber"`
	PageSize   *int    `pulumi:"pageSize"`
	// The RAM role name which the instance attaches.
	RamRoleName *string `pulumi:"ramRoleName"`
	// The Id of resource group which the instance belongs.
	ResourceGroupId *string `pulumi:"resourceGroupId"`
	// Instance status. Valid values: "Creating", "Starting", "Running", "Stopping" and "Stopped". If undefined, all statuses are considered.
	Status *string `pulumi:"status"`
	// A map of tags assigned to the ECS instances. It must be in the format:
	// “`go
	// package main
	//
	// import (
	// 	"github.com/pulumi/pulumi-alicloud/sdk/go/alicloud/ecs"
	// 	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
	// 	"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"
	// )
	//
	// func main() {
	// 	pulumi.Run(func(ctx *pulumi.Context) error {
	// 		_, err := ecs.GetInstances(ctx, &ecs.GetInstancesArgs{
	// 			Tags: map[string]interface{}{
	// 				"tagKey1": "tagValue1",
	// 				"tagKey2": "tagValue2",
	// 			},
	// 		}, nil)
	// 		if err != nil {
	// 			return err
	// 		}
	// 		return nil
	// 	})
	// }
	// “`
	Tags map[string]interface{} `pulumi:"tags"`
	// ID of the VPC linked to the instances.
	VpcId *string `pulumi:"vpcId"`
	// ID of the VSwitch linked to the instances.
	VswitchId *string `pulumi:"vswitchId"`
}

A collection of arguments for invoking getInstances.

type GetInstancesInstance

type GetInstancesInstance struct {
	// Availability zone where instances are located.
	AvailabilityZone string `pulumi:"availabilityZone"`
	// Instance creation time.
	CreationTime string `pulumi:"creationTime"`
	// Instance description.
	Description string `pulumi:"description"`
	// Description of the attached disks.
	DiskDeviceMappings []GetInstancesInstanceDiskDeviceMapping `pulumi:"diskDeviceMappings"`
	// EIP address the VPC instance is using.
	Eip string `pulumi:"eip"`
	// ID of the instance.
	Id string `pulumi:"id"`
	// The image ID of some ECS instance used.
	ImageId string `pulumi:"imageId"`
	// Instance charge type.
	InstanceChargeType string `pulumi:"instanceChargeType"`
	// Instance type.
	InstanceType string `pulumi:"instanceType"`
	// Instance network charge type.
	InternetChargeType string `pulumi:"internetChargeType"`
	// Max output bandwidth for internet.
	InternetMaxBandwidthOut int `pulumi:"internetMaxBandwidthOut"`
	// Key pair the instance is using.
	KeyName string `pulumi:"keyName"`
	// Instance name.
	Name string `pulumi:"name"`
	// Instance private IP address.
	PrivateIp string `pulumi:"privateIp"`
	// Instance public IP address.
	PublicIp string `pulumi:"publicIp"`
	// The RAM role name which the instance attaches.
	RamRoleName string `pulumi:"ramRoleName"`
	// Region ID the instance belongs to.
	RegionId string `pulumi:"regionId"`
	// The Id of resource group which the instance belongs.
	ResourceGroupId string `pulumi:"resourceGroupId"`
	// List of security group IDs the instance belongs to.
	SecurityGroups []string `pulumi:"securityGroups"`
	// Spot strategy the instance is using.
	SpotStrategy string `pulumi:"spotStrategy"`
	// Instance status. Valid values: "Creating", "Starting", "Running", "Stopping" and "Stopped". If undefined, all statuses are considered.
	Status string `pulumi:"status"`
	// A map of tags assigned to the ECS instances. It must be in the format:
	// “`go
	// package main
	//
	// import (
	// 	"github.com/pulumi/pulumi-alicloud/sdk/go/alicloud/ecs"
	// 	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
	// 	"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"
	// )
	//
	// func main() {
	// 	pulumi.Run(func(ctx *pulumi.Context) error {
	// 		_, err := ecs.GetInstances(ctx, &ecs.GetInstancesArgs{
	// 			Tags: map[string]interface{}{
	// 				"tagKey1": "tagValue1",
	// 				"tagKey2": "tagValue2",
	// 			},
	// 		}, nil)
	// 		if err != nil {
	// 			return err
	// 		}
	// 		return nil
	// 	})
	// }
	// “`
	Tags map[string]interface{} `pulumi:"tags"`
	// ID of the VPC linked to the instances.
	VpcId string `pulumi:"vpcId"`
	// ID of the VSwitch linked to the instances.
	VswitchId string `pulumi:"vswitchId"`
}

type GetInstancesInstanceArgs

type GetInstancesInstanceArgs struct {
	// Availability zone where instances are located.
	AvailabilityZone pulumi.StringInput `pulumi:"availabilityZone"`
	// Instance creation time.
	CreationTime pulumi.StringInput `pulumi:"creationTime"`
	// Instance description.
	Description pulumi.StringInput `pulumi:"description"`
	// Description of the attached disks.
	DiskDeviceMappings GetInstancesInstanceDiskDeviceMappingArrayInput `pulumi:"diskDeviceMappings"`
	// EIP address the VPC instance is using.
	Eip pulumi.StringInput `pulumi:"eip"`
	// ID of the instance.
	Id pulumi.StringInput `pulumi:"id"`
	// The image ID of some ECS instance used.
	ImageId pulumi.StringInput `pulumi:"imageId"`
	// Instance charge type.
	InstanceChargeType pulumi.StringInput `pulumi:"instanceChargeType"`
	// Instance type.
	InstanceType pulumi.StringInput `pulumi:"instanceType"`
	// Instance network charge type.
	InternetChargeType pulumi.StringInput `pulumi:"internetChargeType"`
	// Max output bandwidth for internet.
	InternetMaxBandwidthOut pulumi.IntInput `pulumi:"internetMaxBandwidthOut"`
	// Key pair the instance is using.
	KeyName pulumi.StringInput `pulumi:"keyName"`
	// Instance name.
	Name pulumi.StringInput `pulumi:"name"`
	// Instance private IP address.
	PrivateIp pulumi.StringInput `pulumi:"privateIp"`
	// Instance public IP address.
	PublicIp pulumi.StringInput `pulumi:"publicIp"`
	// The RAM role name which the instance attaches.
	RamRoleName pulumi.StringInput `pulumi:"ramRoleName"`
	// Region ID the instance belongs to.
	RegionId pulumi.StringInput `pulumi:"regionId"`
	// The Id of resource group which the instance belongs.
	ResourceGroupId pulumi.StringInput `pulumi:"resourceGroupId"`
	// List of security group IDs the instance belongs to.
	SecurityGroups pulumi.StringArrayInput `pulumi:"securityGroups"`
	// Spot strategy the instance is using.
	SpotStrategy pulumi.StringInput `pulumi:"spotStrategy"`
	// Instance status. Valid values: "Creating", "Starting", "Running", "Stopping" and "Stopped". If undefined, all statuses are considered.
	Status pulumi.StringInput `pulumi:"status"`
	// A map of tags assigned to the ECS instances. It must be in the format:
	// “`go
	// package main
	//
	// import (
	// 	"github.com/pulumi/pulumi-alicloud/sdk/go/alicloud/ecs"
	// 	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
	// 	"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"
	// )
	//
	// func main() {
	// 	pulumi.Run(func(ctx *pulumi.Context) error {
	// 		_, err := ecs.GetInstances(ctx, &ecs.GetInstancesArgs{
	// 			Tags: map[string]interface{}{
	// 				"tagKey1": "tagValue1",
	// 				"tagKey2": "tagValue2",
	// 			},
	// 		}, nil)
	// 		if err != nil {
	// 			return err
	// 		}
	// 		return nil
	// 	})
	// }
	// “`
	Tags pulumi.MapInput `pulumi:"tags"`
	// ID of the VPC linked to the instances.
	VpcId pulumi.StringInput `pulumi:"vpcId"`
	// ID of the VSwitch linked to the instances.
	VswitchId pulumi.StringInput `pulumi:"vswitchId"`
}

func (GetInstancesInstanceArgs) ElementType

func (GetInstancesInstanceArgs) ElementType() reflect.Type

func (GetInstancesInstanceArgs) ToGetInstancesInstanceOutput

func (i GetInstancesInstanceArgs) ToGetInstancesInstanceOutput() GetInstancesInstanceOutput

func (GetInstancesInstanceArgs) ToGetInstancesInstanceOutputWithContext

func (i GetInstancesInstanceArgs) ToGetInstancesInstanceOutputWithContext(ctx context.Context) GetInstancesInstanceOutput

type GetInstancesInstanceArray

type GetInstancesInstanceArray []GetInstancesInstanceInput

func (GetInstancesInstanceArray) ElementType

func (GetInstancesInstanceArray) ElementType() reflect.Type

func (GetInstancesInstanceArray) ToGetInstancesInstanceArrayOutput

func (i GetInstancesInstanceArray) ToGetInstancesInstanceArrayOutput() GetInstancesInstanceArrayOutput

func (GetInstancesInstanceArray) ToGetInstancesInstanceArrayOutputWithContext

func (i GetInstancesInstanceArray) ToGetInstancesInstanceArrayOutputWithContext(ctx context.Context) GetInstancesInstanceArrayOutput

type GetInstancesInstanceArrayInput

type GetInstancesInstanceArrayInput interface {
	pulumi.Input

	ToGetInstancesInstanceArrayOutput() GetInstancesInstanceArrayOutput
	ToGetInstancesInstanceArrayOutputWithContext(context.Context) GetInstancesInstanceArrayOutput
}

GetInstancesInstanceArrayInput is an input type that accepts GetInstancesInstanceArray and GetInstancesInstanceArrayOutput values. You can construct a concrete instance of `GetInstancesInstanceArrayInput` via:

GetInstancesInstanceArray{ GetInstancesInstanceArgs{...} }

type GetInstancesInstanceArrayOutput

type GetInstancesInstanceArrayOutput struct{ *pulumi.OutputState }

func (GetInstancesInstanceArrayOutput) ElementType

func (GetInstancesInstanceArrayOutput) Index

func (GetInstancesInstanceArrayOutput) ToGetInstancesInstanceArrayOutput

func (o GetInstancesInstanceArrayOutput) ToGetInstancesInstanceArrayOutput() GetInstancesInstanceArrayOutput

func (GetInstancesInstanceArrayOutput) ToGetInstancesInstanceArrayOutputWithContext

func (o GetInstancesInstanceArrayOutput) ToGetInstancesInstanceArrayOutputWithContext(ctx context.Context) GetInstancesInstanceArrayOutput

type GetInstancesInstanceDiskDeviceMapping

type GetInstancesInstanceDiskDeviceMapping struct {
	// Cloud disk category.
	Category string `pulumi:"category"`
	// Device information of the created disk: such as /dev/xvdb.
	Device string `pulumi:"device"`
	// The ID of the Disk.
	DiskId string `pulumi:"diskId"`
	// The name of the Disk.
	DiskName string `pulumi:"diskName"`
	// Size of the created disk.
	Size int `pulumi:"size"`
	// Cloud disk type: system disk or data disk.
	Type string `pulumi:"type"`
}

type GetInstancesInstanceDiskDeviceMappingArgs

type GetInstancesInstanceDiskDeviceMappingArgs struct {
	// Cloud disk category.
	Category pulumi.StringInput `pulumi:"category"`
	// Device information of the created disk: such as /dev/xvdb.
	Device pulumi.StringInput `pulumi:"device"`
	// The ID of the Disk.
	DiskId pulumi.StringInput `pulumi:"diskId"`
	// The name of the Disk.
	DiskName pulumi.StringInput `pulumi:"diskName"`
	// Size of the created disk.
	Size pulumi.IntInput `pulumi:"size"`
	// Cloud disk type: system disk or data disk.
	Type pulumi.StringInput `pulumi:"type"`
}

func (GetInstancesInstanceDiskDeviceMappingArgs) ElementType

func (GetInstancesInstanceDiskDeviceMappingArgs) ToGetInstancesInstanceDiskDeviceMappingOutput

func (i GetInstancesInstanceDiskDeviceMappingArgs) ToGetInstancesInstanceDiskDeviceMappingOutput() GetInstancesInstanceDiskDeviceMappingOutput

func (GetInstancesInstanceDiskDeviceMappingArgs) ToGetInstancesInstanceDiskDeviceMappingOutputWithContext

func (i GetInstancesInstanceDiskDeviceMappingArgs) ToGetInstancesInstanceDiskDeviceMappingOutputWithContext(ctx context.Context) GetInstancesInstanceDiskDeviceMappingOutput

type GetInstancesInstanceDiskDeviceMappingArray

type GetInstancesInstanceDiskDeviceMappingArray []GetInstancesInstanceDiskDeviceMappingInput

func (GetInstancesInstanceDiskDeviceMappingArray) ElementType

func (GetInstancesInstanceDiskDeviceMappingArray) ToGetInstancesInstanceDiskDeviceMappingArrayOutput

func (i GetInstancesInstanceDiskDeviceMappingArray) ToGetInstancesInstanceDiskDeviceMappingArrayOutput() GetInstancesInstanceDiskDeviceMappingArrayOutput

func (GetInstancesInstanceDiskDeviceMappingArray) ToGetInstancesInstanceDiskDeviceMappingArrayOutputWithContext

func (i GetInstancesInstanceDiskDeviceMappingArray) ToGetInstancesInstanceDiskDeviceMappingArrayOutputWithContext(ctx context.Context) GetInstancesInstanceDiskDeviceMappingArrayOutput

type GetInstancesInstanceDiskDeviceMappingArrayInput

type GetInstancesInstanceDiskDeviceMappingArrayInput interface {
	pulumi.Input

	ToGetInstancesInstanceDiskDeviceMappingArrayOutput() GetInstancesInstanceDiskDeviceMappingArrayOutput
	ToGetInstancesInstanceDiskDeviceMappingArrayOutputWithContext(context.Context) GetInstancesInstanceDiskDeviceMappingArrayOutput
}

GetInstancesInstanceDiskDeviceMappingArrayInput is an input type that accepts GetInstancesInstanceDiskDeviceMappingArray and GetInstancesInstanceDiskDeviceMappingArrayOutput values. You can construct a concrete instance of `GetInstancesInstanceDiskDeviceMappingArrayInput` via:

GetInstancesInstanceDiskDeviceMappingArray{ GetInstancesInstanceDiskDeviceMappingArgs{...} }

type GetInstancesInstanceDiskDeviceMappingArrayOutput

type GetInstancesInstanceDiskDeviceMappingArrayOutput struct{ *pulumi.OutputState }

func (GetInstancesInstanceDiskDeviceMappingArrayOutput) ElementType

func (GetInstancesInstanceDiskDeviceMappingArrayOutput) Index

func (GetInstancesInstanceDiskDeviceMappingArrayOutput) ToGetInstancesInstanceDiskDeviceMappingArrayOutput

func (o GetInstancesInstanceDiskDeviceMappingArrayOutput) ToGetInstancesInstanceDiskDeviceMappingArrayOutput() GetInstancesInstanceDiskDeviceMappingArrayOutput

func (GetInstancesInstanceDiskDeviceMappingArrayOutput) ToGetInstancesInstanceDiskDeviceMappingArrayOutputWithContext

func (o GetInstancesInstanceDiskDeviceMappingArrayOutput) ToGetInstancesInstanceDiskDeviceMappingArrayOutputWithContext(ctx context.Context) GetInstancesInstanceDiskDeviceMappingArrayOutput

type GetInstancesInstanceDiskDeviceMappingInput

type GetInstancesInstanceDiskDeviceMappingInput interface {
	pulumi.Input

	ToGetInstancesInstanceDiskDeviceMappingOutput() GetInstancesInstanceDiskDeviceMappingOutput
	ToGetInstancesInstanceDiskDeviceMappingOutputWithContext(context.Context) GetInstancesInstanceDiskDeviceMappingOutput
}

GetInstancesInstanceDiskDeviceMappingInput is an input type that accepts GetInstancesInstanceDiskDeviceMappingArgs and GetInstancesInstanceDiskDeviceMappingOutput values. You can construct a concrete instance of `GetInstancesInstanceDiskDeviceMappingInput` via:

GetInstancesInstanceDiskDeviceMappingArgs{...}

type GetInstancesInstanceDiskDeviceMappingOutput

type GetInstancesInstanceDiskDeviceMappingOutput struct{ *pulumi.OutputState }

func (GetInstancesInstanceDiskDeviceMappingOutput) Category

Cloud disk category.

func (GetInstancesInstanceDiskDeviceMappingOutput) Device

Device information of the created disk: such as /dev/xvdb.

func (GetInstancesInstanceDiskDeviceMappingOutput) DiskId

The ID of the Disk.

func (GetInstancesInstanceDiskDeviceMappingOutput) DiskName

The name of the Disk.

func (GetInstancesInstanceDiskDeviceMappingOutput) ElementType

func (GetInstancesInstanceDiskDeviceMappingOutput) Size

Size of the created disk.

func (GetInstancesInstanceDiskDeviceMappingOutput) ToGetInstancesInstanceDiskDeviceMappingOutput

func (o GetInstancesInstanceDiskDeviceMappingOutput) ToGetInstancesInstanceDiskDeviceMappingOutput() GetInstancesInstanceDiskDeviceMappingOutput

func (GetInstancesInstanceDiskDeviceMappingOutput) ToGetInstancesInstanceDiskDeviceMappingOutputWithContext

func (o GetInstancesInstanceDiskDeviceMappingOutput) ToGetInstancesInstanceDiskDeviceMappingOutputWithContext(ctx context.Context) GetInstancesInstanceDiskDeviceMappingOutput

func (GetInstancesInstanceDiskDeviceMappingOutput) Type

Cloud disk type: system disk or data disk.

type GetInstancesInstanceInput

type GetInstancesInstanceInput interface {
	pulumi.Input

	ToGetInstancesInstanceOutput() GetInstancesInstanceOutput
	ToGetInstancesInstanceOutputWithContext(context.Context) GetInstancesInstanceOutput
}

GetInstancesInstanceInput is an input type that accepts GetInstancesInstanceArgs and GetInstancesInstanceOutput values. You can construct a concrete instance of `GetInstancesInstanceInput` via:

GetInstancesInstanceArgs{...}

type GetInstancesInstanceOutput

type GetInstancesInstanceOutput struct{ *pulumi.OutputState }

func (GetInstancesInstanceOutput) AvailabilityZone

func (o GetInstancesInstanceOutput) AvailabilityZone() pulumi.StringOutput

Availability zone where instances are located.

func (GetInstancesInstanceOutput) CreationTime

Instance creation time.

func (GetInstancesInstanceOutput) Description

Instance description.

func (GetInstancesInstanceOutput) DiskDeviceMappings

Description of the attached disks.

func (GetInstancesInstanceOutput) Eip

EIP address the VPC instance is using.

func (GetInstancesInstanceOutput) ElementType

func (GetInstancesInstanceOutput) ElementType() reflect.Type

func (GetInstancesInstanceOutput) Id

ID of the instance.

func (GetInstancesInstanceOutput) ImageId

The image ID of some ECS instance used.

func (GetInstancesInstanceOutput) InstanceChargeType

func (o GetInstancesInstanceOutput) InstanceChargeType() pulumi.StringOutput

Instance charge type.

func (GetInstancesInstanceOutput) InstanceType

Instance type.

func (GetInstancesInstanceOutput) InternetChargeType

func (o GetInstancesInstanceOutput) InternetChargeType() pulumi.StringOutput

Instance network charge type.

func (GetInstancesInstanceOutput) InternetMaxBandwidthOut

func (o GetInstancesInstanceOutput) InternetMaxBandwidthOut() pulumi.IntOutput

Max output bandwidth for internet.

func (GetInstancesInstanceOutput) KeyName

Key pair the instance is using.

func (GetInstancesInstanceOutput) Name

Instance name.

func (GetInstancesInstanceOutput) PrivateIp

Instance private IP address.

func (GetInstancesInstanceOutput) PublicIp

Instance public IP address.

func (GetInstancesInstanceOutput) RamRoleName

The RAM role name which the instance attaches.

func (GetInstancesInstanceOutput) RegionId

Region ID the instance belongs to.

func (GetInstancesInstanceOutput) ResourceGroupId

func (o GetInstancesInstanceOutput) ResourceGroupId() pulumi.StringOutput

The Id of resource group which the instance belongs.

func (GetInstancesInstanceOutput) SecurityGroups

List of security group IDs the instance belongs to.

func (GetInstancesInstanceOutput) SpotStrategy

Spot strategy the instance is using.

func (GetInstancesInstanceOutput) Status

Instance status. Valid values: "Creating", "Starting", "Running", "Stopping" and "Stopped". If undefined, all statuses are considered.

func (GetInstancesInstanceOutput) Tags

A map of tags assigned to the ECS instances. It must be in the format: ```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/go/alicloud/ecs"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ecs.GetInstances(ctx, &ecs.GetInstancesArgs{
			Tags: map[string]interface{}{
				"tagKey1": "tagValue1",
				"tagKey2": "tagValue2",
			},
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

func (GetInstancesInstanceOutput) ToGetInstancesInstanceOutput

func (o GetInstancesInstanceOutput) ToGetInstancesInstanceOutput() GetInstancesInstanceOutput

func (GetInstancesInstanceOutput) ToGetInstancesInstanceOutputWithContext

func (o GetInstancesInstanceOutput) ToGetInstancesInstanceOutputWithContext(ctx context.Context) GetInstancesInstanceOutput

func (GetInstancesInstanceOutput) VpcId

ID of the VPC linked to the instances.

func (GetInstancesInstanceOutput) VswitchId

ID of the VSwitch linked to the instances.

type GetInstancesOutputArgs

type GetInstancesOutputArgs struct {
	// Availability zone where instances are located.
	AvailabilityZone pulumi.StringPtrInput `pulumi:"availabilityZone"`
	// A list of ECS instance IDs.
	Ids pulumi.StringArrayInput `pulumi:"ids"`
	// The image ID of some ECS instance used.
	ImageId pulumi.StringPtrInput `pulumi:"imageId"`
	// A regex string to filter results by instance name.
	NameRegex  pulumi.StringPtrInput `pulumi:"nameRegex"`
	OutputFile pulumi.StringPtrInput `pulumi:"outputFile"`
	PageNumber pulumi.IntPtrInput    `pulumi:"pageNumber"`
	PageSize   pulumi.IntPtrInput    `pulumi:"pageSize"`
	// The RAM role name which the instance attaches.
	RamRoleName pulumi.StringPtrInput `pulumi:"ramRoleName"`
	// The Id of resource group which the instance belongs.
	ResourceGroupId pulumi.StringPtrInput `pulumi:"resourceGroupId"`
	// Instance status. Valid values: "Creating", "Starting", "Running", "Stopping" and "Stopped". If undefined, all statuses are considered.
	Status pulumi.StringPtrInput `pulumi:"status"`
	// A map of tags assigned to the ECS instances. It must be in the format:
	// “`go
	// package main
	//
	// import (
	// 	"github.com/pulumi/pulumi-alicloud/sdk/go/alicloud/ecs"
	// 	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
	// 	"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"
	// )
	//
	// func main() {
	// 	pulumi.Run(func(ctx *pulumi.Context) error {
	// 		_, err := ecs.GetInstances(ctx, &ecs.GetInstancesArgs{
	// 			Tags: map[string]interface{}{
	// 				"tagKey1": "tagValue1",
	// 				"tagKey2": "tagValue2",
	// 			},
	// 		}, nil)
	// 		if err != nil {
	// 			return err
	// 		}
	// 		return nil
	// 	})
	// }
	// “`
	Tags pulumi.MapInput `pulumi:"tags"`
	// ID of the VPC linked to the instances.
	VpcId pulumi.StringPtrInput `pulumi:"vpcId"`
	// ID of the VSwitch linked to the instances.
	VswitchId pulumi.StringPtrInput `pulumi:"vswitchId"`
}

A collection of arguments for invoking getInstances.

func (GetInstancesOutputArgs) ElementType

func (GetInstancesOutputArgs) ElementType() reflect.Type

type GetInstancesResult

type GetInstancesResult struct {
	// Availability zone the instance belongs to.
	AvailabilityZone *string `pulumi:"availabilityZone"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// A list of ECS instance IDs.
	Ids []string `pulumi:"ids"`
	// Image ID the instance is using.
	ImageId *string `pulumi:"imageId"`
	// A list of instances. Each element contains the following attributes:
	Instances []GetInstancesInstance `pulumi:"instances"`
	NameRegex *string                `pulumi:"nameRegex"`
	// A list of instances names.
	Names      []string `pulumi:"names"`
	OutputFile *string  `pulumi:"outputFile"`
	PageNumber *int     `pulumi:"pageNumber"`
	PageSize   *int     `pulumi:"pageSize"`
	// The Ram role name.
	RamRoleName *string `pulumi:"ramRoleName"`
	// The Id of resource group.
	ResourceGroupId *string `pulumi:"resourceGroupId"`
	// Instance current status.
	Status *string `pulumi:"status"`
	// A map of tags assigned to the ECS instance.
	Tags       map[string]interface{} `pulumi:"tags"`
	TotalCount int                    `pulumi:"totalCount"`
	// ID of the VPC the instance belongs to.
	VpcId *string `pulumi:"vpcId"`
	// ID of the VSwitch the instance belongs to.
	VswitchId *string `pulumi:"vswitchId"`
}

A collection of values returned by getInstances.

func GetInstances

func GetInstances(ctx *pulumi.Context, args *GetInstancesArgs, opts ...pulumi.InvokeOption) (*GetInstancesResult, error)

The Instances data source list ECS instance resources according to their ID, name regex, image id, status and other fields.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/go/alicloud/ecs"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		instancesDs, err := ecs.GetInstances(ctx, &ecs.GetInstancesArgs{
			NameRegex: pulumi.StringRef("web_server"),
			Status:    pulumi.StringRef("Running"),
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("firstInstanceId", instancesDs.Instances[0].Id)
		ctx.Export("instanceIds", instancesDs.Ids)
		return nil
	})
}

```

type GetInstancesResultOutput

type GetInstancesResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getInstances.

func (GetInstancesResultOutput) AvailabilityZone

func (o GetInstancesResultOutput) AvailabilityZone() pulumi.StringPtrOutput

Availability zone the instance belongs to.

func (GetInstancesResultOutput) ElementType

func (GetInstancesResultOutput) ElementType() reflect.Type

func (GetInstancesResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetInstancesResultOutput) Ids

A list of ECS instance IDs.

func (GetInstancesResultOutput) ImageId

Image ID the instance is using.

func (GetInstancesResultOutput) Instances

A list of instances. Each element contains the following attributes:

func (GetInstancesResultOutput) NameRegex

func (GetInstancesResultOutput) Names

A list of instances names.

func (GetInstancesResultOutput) OutputFile

func (GetInstancesResultOutput) PageNumber

func (GetInstancesResultOutput) PageSize

func (GetInstancesResultOutput) RamRoleName

The Ram role name.

func (GetInstancesResultOutput) ResourceGroupId

func (o GetInstancesResultOutput) ResourceGroupId() pulumi.StringPtrOutput

The Id of resource group.

func (GetInstancesResultOutput) Status

Instance current status.

func (GetInstancesResultOutput) Tags

A map of tags assigned to the ECS instance.

func (GetInstancesResultOutput) ToGetInstancesResultOutput

func (o GetInstancesResultOutput) ToGetInstancesResultOutput() GetInstancesResultOutput

func (GetInstancesResultOutput) ToGetInstancesResultOutputWithContext

func (o GetInstancesResultOutput) ToGetInstancesResultOutputWithContext(ctx context.Context) GetInstancesResultOutput

func (GetInstancesResultOutput) TotalCount

func (o GetInstancesResultOutput) TotalCount() pulumi.IntOutput

func (GetInstancesResultOutput) VpcId

ID of the VPC the instance belongs to.

func (GetInstancesResultOutput) VswitchId

ID of the VSwitch the instance belongs to.

type GetKeyPairsArgs

type GetKeyPairsArgs struct {
	// A finger print used to retrieve specified key pair.
	FingerPrint *string `pulumi:"fingerPrint"`
	// A list of key pair IDs.
	Ids []string `pulumi:"ids"`
	// A regex string to apply to the resulting key pairs.
	NameRegex  *string `pulumi:"nameRegex"`
	OutputFile *string `pulumi:"outputFile"`
	// The Id of resource group which the key pair belongs.
	ResourceGroupId *string `pulumi:"resourceGroupId"`
	// A mapping of tags to assign to the resource.
	Tags map[string]interface{} `pulumi:"tags"`
}

A collection of arguments for invoking getKeyPairs.

type GetKeyPairsKeyPair

type GetKeyPairsKeyPair struct {
	// A finger print used to retrieve specified key pair.
	FingerPrint string `pulumi:"fingerPrint"`
	// ID of the key pair.
	Id string `pulumi:"id"`
	// A list of ECS instances that has been bound this key pair.
	Instances []GetKeyPairsKeyPairInstance `pulumi:"instances"`
	// Name of the key pair.
	KeyName     string `pulumi:"keyName"`
	KeyPairName string `pulumi:"keyPairName"`
	// The Id of resource group which the key pair belongs.
	ResourceGroupId string `pulumi:"resourceGroupId"`
	// A mapping of tags to assign to the resource.
	Tags map[string]interface{} `pulumi:"tags"`
}

type GetKeyPairsKeyPairArgs

type GetKeyPairsKeyPairArgs struct {
	// A finger print used to retrieve specified key pair.
	FingerPrint pulumi.StringInput `pulumi:"fingerPrint"`
	// ID of the key pair.
	Id pulumi.StringInput `pulumi:"id"`
	// A list of ECS instances that has been bound this key pair.
	Instances GetKeyPairsKeyPairInstanceArrayInput `pulumi:"instances"`
	// Name of the key pair.
	KeyName     pulumi.StringInput `pulumi:"keyName"`
	KeyPairName pulumi.StringInput `pulumi:"keyPairName"`
	// The Id of resource group which the key pair belongs.
	ResourceGroupId pulumi.StringInput `pulumi:"resourceGroupId"`
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapInput `pulumi:"tags"`
}

func (GetKeyPairsKeyPairArgs) ElementType

func (GetKeyPairsKeyPairArgs) ElementType() reflect.Type

func (GetKeyPairsKeyPairArgs) ToGetKeyPairsKeyPairOutput

func (i GetKeyPairsKeyPairArgs) ToGetKeyPairsKeyPairOutput() GetKeyPairsKeyPairOutput

func (GetKeyPairsKeyPairArgs) ToGetKeyPairsKeyPairOutputWithContext

func (i GetKeyPairsKeyPairArgs) ToGetKeyPairsKeyPairOutputWithContext(ctx context.Context) GetKeyPairsKeyPairOutput

type GetKeyPairsKeyPairArray

type GetKeyPairsKeyPairArray []GetKeyPairsKeyPairInput

func (GetKeyPairsKeyPairArray) ElementType

func (GetKeyPairsKeyPairArray) ElementType() reflect.Type

func (GetKeyPairsKeyPairArray) ToGetKeyPairsKeyPairArrayOutput

func (i GetKeyPairsKeyPairArray) ToGetKeyPairsKeyPairArrayOutput() GetKeyPairsKeyPairArrayOutput

func (GetKeyPairsKeyPairArray) ToGetKeyPairsKeyPairArrayOutputWithContext

func (i GetKeyPairsKeyPairArray) ToGetKeyPairsKeyPairArrayOutputWithContext(ctx context.Context) GetKeyPairsKeyPairArrayOutput

type GetKeyPairsKeyPairArrayInput

type GetKeyPairsKeyPairArrayInput interface {
	pulumi.Input

	ToGetKeyPairsKeyPairArrayOutput() GetKeyPairsKeyPairArrayOutput
	ToGetKeyPairsKeyPairArrayOutputWithContext(context.Context) GetKeyPairsKeyPairArrayOutput
}

GetKeyPairsKeyPairArrayInput is an input type that accepts GetKeyPairsKeyPairArray and GetKeyPairsKeyPairArrayOutput values. You can construct a concrete instance of `GetKeyPairsKeyPairArrayInput` via:

GetKeyPairsKeyPairArray{ GetKeyPairsKeyPairArgs{...} }

type GetKeyPairsKeyPairArrayOutput

type GetKeyPairsKeyPairArrayOutput struct{ *pulumi.OutputState }

func (GetKeyPairsKeyPairArrayOutput) ElementType

func (GetKeyPairsKeyPairArrayOutput) Index

func (GetKeyPairsKeyPairArrayOutput) ToGetKeyPairsKeyPairArrayOutput

func (o GetKeyPairsKeyPairArrayOutput) ToGetKeyPairsKeyPairArrayOutput() GetKeyPairsKeyPairArrayOutput

func (GetKeyPairsKeyPairArrayOutput) ToGetKeyPairsKeyPairArrayOutputWithContext

func (o GetKeyPairsKeyPairArrayOutput) ToGetKeyPairsKeyPairArrayOutputWithContext(ctx context.Context) GetKeyPairsKeyPairArrayOutput

type GetKeyPairsKeyPairInput

type GetKeyPairsKeyPairInput interface {
	pulumi.Input

	ToGetKeyPairsKeyPairOutput() GetKeyPairsKeyPairOutput
	ToGetKeyPairsKeyPairOutputWithContext(context.Context) GetKeyPairsKeyPairOutput
}

GetKeyPairsKeyPairInput is an input type that accepts GetKeyPairsKeyPairArgs and GetKeyPairsKeyPairOutput values. You can construct a concrete instance of `GetKeyPairsKeyPairInput` via:

GetKeyPairsKeyPairArgs{...}

type GetKeyPairsKeyPairInstance

type GetKeyPairsKeyPairInstance struct {
	// The ID of the availability zone where the ECS instance is located.
	AvailabilityZone string `pulumi:"availabilityZone"`
	Description      string `pulumi:"description"`
	ImageId          string `pulumi:"imageId"`
	// The ID of the ECS instance.
	InstanceId string `pulumi:"instanceId"`
	// The name of the ECS instance.
	InstanceName string `pulumi:"instanceName"`
	InstanceType string `pulumi:"instanceType"`
	// Name of the key pair.
	KeyName string `pulumi:"keyName"`
	// The private IP address of the ECS instance.
	PrivateIp string `pulumi:"privateIp"`
	// The public IP address or EIP of the ECS instance.
	PublicIp string `pulumi:"publicIp"`
	RegionId string `pulumi:"regionId"`
	Status   string `pulumi:"status"`
	// The ID of the VSwitch attached to the ECS instance.
	VswitchId string `pulumi:"vswitchId"`
}

type GetKeyPairsKeyPairInstanceArgs

type GetKeyPairsKeyPairInstanceArgs struct {
	// The ID of the availability zone where the ECS instance is located.
	AvailabilityZone pulumi.StringInput `pulumi:"availabilityZone"`
	Description      pulumi.StringInput `pulumi:"description"`
	ImageId          pulumi.StringInput `pulumi:"imageId"`
	// The ID of the ECS instance.
	InstanceId pulumi.StringInput `pulumi:"instanceId"`
	// The name of the ECS instance.
	InstanceName pulumi.StringInput `pulumi:"instanceName"`
	InstanceType pulumi.StringInput `pulumi:"instanceType"`
	// Name of the key pair.
	KeyName pulumi.StringInput `pulumi:"keyName"`
	// The private IP address of the ECS instance.
	PrivateIp pulumi.StringInput `pulumi:"privateIp"`
	// The public IP address or EIP of the ECS instance.
	PublicIp pulumi.StringInput `pulumi:"publicIp"`
	RegionId pulumi.StringInput `pulumi:"regionId"`
	Status   pulumi.StringInput `pulumi:"status"`
	// The ID of the VSwitch attached to the ECS instance.
	VswitchId pulumi.StringInput `pulumi:"vswitchId"`
}

func (GetKeyPairsKeyPairInstanceArgs) ElementType

func (GetKeyPairsKeyPairInstanceArgs) ToGetKeyPairsKeyPairInstanceOutput

func (i GetKeyPairsKeyPairInstanceArgs) ToGetKeyPairsKeyPairInstanceOutput() GetKeyPairsKeyPairInstanceOutput

func (GetKeyPairsKeyPairInstanceArgs) ToGetKeyPairsKeyPairInstanceOutputWithContext

func (i GetKeyPairsKeyPairInstanceArgs) ToGetKeyPairsKeyPairInstanceOutputWithContext(ctx context.Context) GetKeyPairsKeyPairInstanceOutput

type GetKeyPairsKeyPairInstanceArray

type GetKeyPairsKeyPairInstanceArray []GetKeyPairsKeyPairInstanceInput

func (GetKeyPairsKeyPairInstanceArray) ElementType

func (GetKeyPairsKeyPairInstanceArray) ToGetKeyPairsKeyPairInstanceArrayOutput

func (i GetKeyPairsKeyPairInstanceArray) ToGetKeyPairsKeyPairInstanceArrayOutput() GetKeyPairsKeyPairInstanceArrayOutput

func (GetKeyPairsKeyPairInstanceArray) ToGetKeyPairsKeyPairInstanceArrayOutputWithContext

func (i GetKeyPairsKeyPairInstanceArray) ToGetKeyPairsKeyPairInstanceArrayOutputWithContext(ctx context.Context) GetKeyPairsKeyPairInstanceArrayOutput

type GetKeyPairsKeyPairInstanceArrayInput

type GetKeyPairsKeyPairInstanceArrayInput interface {
	pulumi.Input

	ToGetKeyPairsKeyPairInstanceArrayOutput() GetKeyPairsKeyPairInstanceArrayOutput
	ToGetKeyPairsKeyPairInstanceArrayOutputWithContext(context.Context) GetKeyPairsKeyPairInstanceArrayOutput
}

GetKeyPairsKeyPairInstanceArrayInput is an input type that accepts GetKeyPairsKeyPairInstanceArray and GetKeyPairsKeyPairInstanceArrayOutput values. You can construct a concrete instance of `GetKeyPairsKeyPairInstanceArrayInput` via:

GetKeyPairsKeyPairInstanceArray{ GetKeyPairsKeyPairInstanceArgs{...} }

type GetKeyPairsKeyPairInstanceArrayOutput

type GetKeyPairsKeyPairInstanceArrayOutput struct{ *pulumi.OutputState }

func (GetKeyPairsKeyPairInstanceArrayOutput) ElementType

func (GetKeyPairsKeyPairInstanceArrayOutput) Index

func (GetKeyPairsKeyPairInstanceArrayOutput) ToGetKeyPairsKeyPairInstanceArrayOutput

func (o GetKeyPairsKeyPairInstanceArrayOutput) ToGetKeyPairsKeyPairInstanceArrayOutput() GetKeyPairsKeyPairInstanceArrayOutput

func (GetKeyPairsKeyPairInstanceArrayOutput) ToGetKeyPairsKeyPairInstanceArrayOutputWithContext

func (o GetKeyPairsKeyPairInstanceArrayOutput) ToGetKeyPairsKeyPairInstanceArrayOutputWithContext(ctx context.Context) GetKeyPairsKeyPairInstanceArrayOutput

type GetKeyPairsKeyPairInstanceInput

type GetKeyPairsKeyPairInstanceInput interface {
	pulumi.Input

	ToGetKeyPairsKeyPairInstanceOutput() GetKeyPairsKeyPairInstanceOutput
	ToGetKeyPairsKeyPairInstanceOutputWithContext(context.Context) GetKeyPairsKeyPairInstanceOutput
}

GetKeyPairsKeyPairInstanceInput is an input type that accepts GetKeyPairsKeyPairInstanceArgs and GetKeyPairsKeyPairInstanceOutput values. You can construct a concrete instance of `GetKeyPairsKeyPairInstanceInput` via:

GetKeyPairsKeyPairInstanceArgs{...}

type GetKeyPairsKeyPairInstanceOutput

type GetKeyPairsKeyPairInstanceOutput struct{ *pulumi.OutputState }

func (GetKeyPairsKeyPairInstanceOutput) AvailabilityZone

The ID of the availability zone where the ECS instance is located.

func (GetKeyPairsKeyPairInstanceOutput) Description

func (GetKeyPairsKeyPairInstanceOutput) ElementType

func (GetKeyPairsKeyPairInstanceOutput) ImageId

func (GetKeyPairsKeyPairInstanceOutput) InstanceId

The ID of the ECS instance.

func (GetKeyPairsKeyPairInstanceOutput) InstanceName

The name of the ECS instance.

func (GetKeyPairsKeyPairInstanceOutput) InstanceType

func (GetKeyPairsKeyPairInstanceOutput) KeyName

Name of the key pair.

func (GetKeyPairsKeyPairInstanceOutput) PrivateIp

The private IP address of the ECS instance.

func (GetKeyPairsKeyPairInstanceOutput) PublicIp

The public IP address or EIP of the ECS instance.

func (GetKeyPairsKeyPairInstanceOutput) RegionId

func (GetKeyPairsKeyPairInstanceOutput) Status

func (GetKeyPairsKeyPairInstanceOutput) ToGetKeyPairsKeyPairInstanceOutput

func (o GetKeyPairsKeyPairInstanceOutput) ToGetKeyPairsKeyPairInstanceOutput() GetKeyPairsKeyPairInstanceOutput

func (GetKeyPairsKeyPairInstanceOutput) ToGetKeyPairsKeyPairInstanceOutputWithContext

func (o GetKeyPairsKeyPairInstanceOutput) ToGetKeyPairsKeyPairInstanceOutputWithContext(ctx context.Context) GetKeyPairsKeyPairInstanceOutput

func (GetKeyPairsKeyPairInstanceOutput) VswitchId

The ID of the VSwitch attached to the ECS instance.

type GetKeyPairsKeyPairOutput

type GetKeyPairsKeyPairOutput struct{ *pulumi.OutputState }

func (GetKeyPairsKeyPairOutput) ElementType

func (GetKeyPairsKeyPairOutput) ElementType() reflect.Type

func (GetKeyPairsKeyPairOutput) FingerPrint

A finger print used to retrieve specified key pair.

func (GetKeyPairsKeyPairOutput) Id

ID of the key pair.

func (GetKeyPairsKeyPairOutput) Instances

A list of ECS instances that has been bound this key pair.

func (GetKeyPairsKeyPairOutput) KeyName

Name of the key pair.

func (GetKeyPairsKeyPairOutput) KeyPairName

func (GetKeyPairsKeyPairOutput) ResourceGroupId

func (o GetKeyPairsKeyPairOutput) ResourceGroupId() pulumi.StringOutput

The Id of resource group which the key pair belongs.

func (GetKeyPairsKeyPairOutput) Tags

A mapping of tags to assign to the resource.

func (GetKeyPairsKeyPairOutput) ToGetKeyPairsKeyPairOutput

func (o GetKeyPairsKeyPairOutput) ToGetKeyPairsKeyPairOutput() GetKeyPairsKeyPairOutput

func (GetKeyPairsKeyPairOutput) ToGetKeyPairsKeyPairOutputWithContext

func (o GetKeyPairsKeyPairOutput) ToGetKeyPairsKeyPairOutputWithContext(ctx context.Context) GetKeyPairsKeyPairOutput

type GetKeyPairsOutputArgs

type GetKeyPairsOutputArgs struct {
	// A finger print used to retrieve specified key pair.
	FingerPrint pulumi.StringPtrInput `pulumi:"fingerPrint"`
	// A list of key pair IDs.
	Ids pulumi.StringArrayInput `pulumi:"ids"`
	// A regex string to apply to the resulting key pairs.
	NameRegex  pulumi.StringPtrInput `pulumi:"nameRegex"`
	OutputFile pulumi.StringPtrInput `pulumi:"outputFile"`
	// The Id of resource group which the key pair belongs.
	ResourceGroupId pulumi.StringPtrInput `pulumi:"resourceGroupId"`
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapInput `pulumi:"tags"`
}

A collection of arguments for invoking getKeyPairs.

func (GetKeyPairsOutputArgs) ElementType

func (GetKeyPairsOutputArgs) ElementType() reflect.Type

type GetKeyPairsPair

type GetKeyPairsPair struct {
	// A finger print used to retrieve specified key pair.
	FingerPrint string `pulumi:"fingerPrint"`
	// ID of the key pair.
	Id string `pulumi:"id"`
	// A list of ECS instances that has been bound this key pair.
	Instances []GetKeyPairsPairInstance `pulumi:"instances"`
	// Name of the key pair.
	KeyName     string `pulumi:"keyName"`
	KeyPairName string `pulumi:"keyPairName"`
	// The Id of resource group which the key pair belongs.
	ResourceGroupId string `pulumi:"resourceGroupId"`
	// A mapping of tags to assign to the resource.
	Tags map[string]interface{} `pulumi:"tags"`
}

type GetKeyPairsPairArgs

type GetKeyPairsPairArgs struct {
	// A finger print used to retrieve specified key pair.
	FingerPrint pulumi.StringInput `pulumi:"fingerPrint"`
	// ID of the key pair.
	Id pulumi.StringInput `pulumi:"id"`
	// A list of ECS instances that has been bound this key pair.
	Instances GetKeyPairsPairInstanceArrayInput `pulumi:"instances"`
	// Name of the key pair.
	KeyName     pulumi.StringInput `pulumi:"keyName"`
	KeyPairName pulumi.StringInput `pulumi:"keyPairName"`
	// The Id of resource group which the key pair belongs.
	ResourceGroupId pulumi.StringInput `pulumi:"resourceGroupId"`
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapInput `pulumi:"tags"`
}

func (GetKeyPairsPairArgs) ElementType

func (GetKeyPairsPairArgs) ElementType() reflect.Type

func (GetKeyPairsPairArgs) ToGetKeyPairsPairOutput

func (i GetKeyPairsPairArgs) ToGetKeyPairsPairOutput() GetKeyPairsPairOutput

func (GetKeyPairsPairArgs) ToGetKeyPairsPairOutputWithContext

func (i GetKeyPairsPairArgs) ToGetKeyPairsPairOutputWithContext(ctx context.Context) GetKeyPairsPairOutput

type GetKeyPairsPairArray

type GetKeyPairsPairArray []GetKeyPairsPairInput

func (GetKeyPairsPairArray) ElementType

func (GetKeyPairsPairArray) ElementType() reflect.Type

func (GetKeyPairsPairArray) ToGetKeyPairsPairArrayOutput

func (i GetKeyPairsPairArray) ToGetKeyPairsPairArrayOutput() GetKeyPairsPairArrayOutput

func (GetKeyPairsPairArray) ToGetKeyPairsPairArrayOutputWithContext

func (i GetKeyPairsPairArray) ToGetKeyPairsPairArrayOutputWithContext(ctx context.Context) GetKeyPairsPairArrayOutput

type GetKeyPairsPairArrayInput

type GetKeyPairsPairArrayInput interface {
	pulumi.Input

	ToGetKeyPairsPairArrayOutput() GetKeyPairsPairArrayOutput
	ToGetKeyPairsPairArrayOutputWithContext(context.Context) GetKeyPairsPairArrayOutput
}

GetKeyPairsPairArrayInput is an input type that accepts GetKeyPairsPairArray and GetKeyPairsPairArrayOutput values. You can construct a concrete instance of `GetKeyPairsPairArrayInput` via:

GetKeyPairsPairArray{ GetKeyPairsPairArgs{...} }

type GetKeyPairsPairArrayOutput

type GetKeyPairsPairArrayOutput struct{ *pulumi.OutputState }

func (GetKeyPairsPairArrayOutput) ElementType

func (GetKeyPairsPairArrayOutput) ElementType() reflect.Type

func (GetKeyPairsPairArrayOutput) Index

func (GetKeyPairsPairArrayOutput) ToGetKeyPairsPairArrayOutput

func (o GetKeyPairsPairArrayOutput) ToGetKeyPairsPairArrayOutput() GetKeyPairsPairArrayOutput

func (GetKeyPairsPairArrayOutput) ToGetKeyPairsPairArrayOutputWithContext

func (o GetKeyPairsPairArrayOutput) ToGetKeyPairsPairArrayOutputWithContext(ctx context.Context) GetKeyPairsPairArrayOutput

type GetKeyPairsPairInput

type GetKeyPairsPairInput interface {
	pulumi.Input

	ToGetKeyPairsPairOutput() GetKeyPairsPairOutput
	ToGetKeyPairsPairOutputWithContext(context.Context) GetKeyPairsPairOutput
}

GetKeyPairsPairInput is an input type that accepts GetKeyPairsPairArgs and GetKeyPairsPairOutput values. You can construct a concrete instance of `GetKeyPairsPairInput` via:

GetKeyPairsPairArgs{...}

type GetKeyPairsPairInstance

type GetKeyPairsPairInstance struct {
	// The ID of the availability zone where the ECS instance is located.
	AvailabilityZone string `pulumi:"availabilityZone"`
	Description      string `pulumi:"description"`
	ImageId          string `pulumi:"imageId"`
	// The ID of the ECS instance.
	InstanceId string `pulumi:"instanceId"`
	// The name of the ECS instance.
	InstanceName string `pulumi:"instanceName"`
	InstanceType string `pulumi:"instanceType"`
	// Name of the key pair.
	KeyName string `pulumi:"keyName"`
	// The private IP address of the ECS instance.
	PrivateIp string `pulumi:"privateIp"`
	// The public IP address or EIP of the ECS instance.
	PublicIp string `pulumi:"publicIp"`
	RegionId string `pulumi:"regionId"`
	Status   string `pulumi:"status"`
	// The ID of the VSwitch attached to the ECS instance.
	VswitchId string `pulumi:"vswitchId"`
}

type GetKeyPairsPairInstanceArgs

type GetKeyPairsPairInstanceArgs struct {
	// The ID of the availability zone where the ECS instance is located.
	AvailabilityZone pulumi.StringInput `pulumi:"availabilityZone"`
	Description      pulumi.StringInput `pulumi:"description"`
	ImageId          pulumi.StringInput `pulumi:"imageId"`
	// The ID of the ECS instance.
	InstanceId pulumi.StringInput `pulumi:"instanceId"`
	// The name of the ECS instance.
	InstanceName pulumi.StringInput `pulumi:"instanceName"`
	InstanceType pulumi.StringInput `pulumi:"instanceType"`
	// Name of the key pair.
	KeyName pulumi.StringInput `pulumi:"keyName"`
	// The private IP address of the ECS instance.
	PrivateIp pulumi.StringInput `pulumi:"privateIp"`
	// The public IP address or EIP of the ECS instance.
	PublicIp pulumi.StringInput `pulumi:"publicIp"`
	RegionId pulumi.StringInput `pulumi:"regionId"`
	Status   pulumi.StringInput `pulumi:"status"`
	// The ID of the VSwitch attached to the ECS instance.
	VswitchId pulumi.StringInput `pulumi:"vswitchId"`
}

func (GetKeyPairsPairInstanceArgs) ElementType

func (GetKeyPairsPairInstanceArgs) ToGetKeyPairsPairInstanceOutput

func (i GetKeyPairsPairInstanceArgs) ToGetKeyPairsPairInstanceOutput() GetKeyPairsPairInstanceOutput

func (GetKeyPairsPairInstanceArgs) ToGetKeyPairsPairInstanceOutputWithContext

func (i GetKeyPairsPairInstanceArgs) ToGetKeyPairsPairInstanceOutputWithContext(ctx context.Context) GetKeyPairsPairInstanceOutput

type GetKeyPairsPairInstanceArray

type GetKeyPairsPairInstanceArray []GetKeyPairsPairInstanceInput

func (GetKeyPairsPairInstanceArray) ElementType

func (GetKeyPairsPairInstanceArray) ToGetKeyPairsPairInstanceArrayOutput

func (i GetKeyPairsPairInstanceArray) ToGetKeyPairsPairInstanceArrayOutput() GetKeyPairsPairInstanceArrayOutput

func (GetKeyPairsPairInstanceArray) ToGetKeyPairsPairInstanceArrayOutputWithContext

func (i GetKeyPairsPairInstanceArray) ToGetKeyPairsPairInstanceArrayOutputWithContext(ctx context.Context) GetKeyPairsPairInstanceArrayOutput

type GetKeyPairsPairInstanceArrayInput

type GetKeyPairsPairInstanceArrayInput interface {
	pulumi.Input

	ToGetKeyPairsPairInstanceArrayOutput() GetKeyPairsPairInstanceArrayOutput
	ToGetKeyPairsPairInstanceArrayOutputWithContext(context.Context) GetKeyPairsPairInstanceArrayOutput
}

GetKeyPairsPairInstanceArrayInput is an input type that accepts GetKeyPairsPairInstanceArray and GetKeyPairsPairInstanceArrayOutput values. You can construct a concrete instance of `GetKeyPairsPairInstanceArrayInput` via:

GetKeyPairsPairInstanceArray{ GetKeyPairsPairInstanceArgs{...} }

type GetKeyPairsPairInstanceArrayOutput

type GetKeyPairsPairInstanceArrayOutput struct{ *pulumi.OutputState }

func (GetKeyPairsPairInstanceArrayOutput) ElementType

func (GetKeyPairsPairInstanceArrayOutput) Index

func (GetKeyPairsPairInstanceArrayOutput) ToGetKeyPairsPairInstanceArrayOutput

func (o GetKeyPairsPairInstanceArrayOutput) ToGetKeyPairsPairInstanceArrayOutput() GetKeyPairsPairInstanceArrayOutput

func (GetKeyPairsPairInstanceArrayOutput) ToGetKeyPairsPairInstanceArrayOutputWithContext

func (o GetKeyPairsPairInstanceArrayOutput) ToGetKeyPairsPairInstanceArrayOutputWithContext(ctx context.Context) GetKeyPairsPairInstanceArrayOutput

type GetKeyPairsPairInstanceInput

type GetKeyPairsPairInstanceInput interface {
	pulumi.Input

	ToGetKeyPairsPairInstanceOutput() GetKeyPairsPairInstanceOutput
	ToGetKeyPairsPairInstanceOutputWithContext(context.Context) GetKeyPairsPairInstanceOutput
}

GetKeyPairsPairInstanceInput is an input type that accepts GetKeyPairsPairInstanceArgs and GetKeyPairsPairInstanceOutput values. You can construct a concrete instance of `GetKeyPairsPairInstanceInput` via:

GetKeyPairsPairInstanceArgs{...}

type GetKeyPairsPairInstanceOutput

type GetKeyPairsPairInstanceOutput struct{ *pulumi.OutputState }

func (GetKeyPairsPairInstanceOutput) AvailabilityZone

func (o GetKeyPairsPairInstanceOutput) AvailabilityZone() pulumi.StringOutput

The ID of the availability zone where the ECS instance is located.

func (GetKeyPairsPairInstanceOutput) Description

func (GetKeyPairsPairInstanceOutput) ElementType

func (GetKeyPairsPairInstanceOutput) ImageId

func (GetKeyPairsPairInstanceOutput) InstanceId

The ID of the ECS instance.

func (GetKeyPairsPairInstanceOutput) InstanceName

The name of the ECS instance.

func (GetKeyPairsPairInstanceOutput) InstanceType

func (GetKeyPairsPairInstanceOutput) KeyName

Name of the key pair.

func (GetKeyPairsPairInstanceOutput) PrivateIp

The private IP address of the ECS instance.

func (GetKeyPairsPairInstanceOutput) PublicIp

The public IP address or EIP of the ECS instance.

func (GetKeyPairsPairInstanceOutput) RegionId

func (GetKeyPairsPairInstanceOutput) Status

func (GetKeyPairsPairInstanceOutput) ToGetKeyPairsPairInstanceOutput

func (o GetKeyPairsPairInstanceOutput) ToGetKeyPairsPairInstanceOutput() GetKeyPairsPairInstanceOutput

func (GetKeyPairsPairInstanceOutput) ToGetKeyPairsPairInstanceOutputWithContext

func (o GetKeyPairsPairInstanceOutput) ToGetKeyPairsPairInstanceOutputWithContext(ctx context.Context) GetKeyPairsPairInstanceOutput

func (GetKeyPairsPairInstanceOutput) VswitchId

The ID of the VSwitch attached to the ECS instance.

type GetKeyPairsPairOutput

type GetKeyPairsPairOutput struct{ *pulumi.OutputState }

func (GetKeyPairsPairOutput) ElementType

func (GetKeyPairsPairOutput) ElementType() reflect.Type

func (GetKeyPairsPairOutput) FingerPrint

func (o GetKeyPairsPairOutput) FingerPrint() pulumi.StringOutput

A finger print used to retrieve specified key pair.

func (GetKeyPairsPairOutput) Id

ID of the key pair.

func (GetKeyPairsPairOutput) Instances

A list of ECS instances that has been bound this key pair.

func (GetKeyPairsPairOutput) KeyName

Name of the key pair.

func (GetKeyPairsPairOutput) KeyPairName

func (o GetKeyPairsPairOutput) KeyPairName() pulumi.StringOutput

func (GetKeyPairsPairOutput) ResourceGroupId

func (o GetKeyPairsPairOutput) ResourceGroupId() pulumi.StringOutput

The Id of resource group which the key pair belongs.

func (GetKeyPairsPairOutput) Tags

A mapping of tags to assign to the resource.

func (GetKeyPairsPairOutput) ToGetKeyPairsPairOutput

func (o GetKeyPairsPairOutput) ToGetKeyPairsPairOutput() GetKeyPairsPairOutput

func (GetKeyPairsPairOutput) ToGetKeyPairsPairOutputWithContext

func (o GetKeyPairsPairOutput) ToGetKeyPairsPairOutputWithContext(ctx context.Context) GetKeyPairsPairOutput

type GetKeyPairsResult

type GetKeyPairsResult struct {
	// Finger print of the key pair.
	FingerPrint *string `pulumi:"fingerPrint"`
	// The provider-assigned unique ID for this managed resource.
	Id  string   `pulumi:"id"`
	Ids []string `pulumi:"ids"`
	// A list of key pairs. Each element contains the following attributes:
	//
	// Deprecated: Field 'key_pairs' has been deprecated from provider version 1.121.0. New field 'pairs' instead.
	KeyPairs  []GetKeyPairsKeyPair `pulumi:"keyPairs"`
	NameRegex *string              `pulumi:"nameRegex"`
	// A list of key pair names.
	Names      []string          `pulumi:"names"`
	OutputFile *string           `pulumi:"outputFile"`
	Pairs      []GetKeyPairsPair `pulumi:"pairs"`
	// The Id of resource group.
	ResourceGroupId *string `pulumi:"resourceGroupId"`
	// (Optional, Available in v1.66.0+) A mapping of tags to assign to the resource.
	Tags map[string]interface{} `pulumi:"tags"`
}

A collection of values returned by getKeyPairs.

func GetKeyPairs

func GetKeyPairs(ctx *pulumi.Context, args *GetKeyPairsArgs, opts ...pulumi.InvokeOption) (*GetKeyPairsResult, error)

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/go/alicloud/ecs"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		defaultKeyPair, err := ecs.NewKeyPair(ctx, "defaultKeyPair", &ecs.KeyPairArgs{
			KeyName: pulumi.String("keyPairDatasource"),
		})
		if err != nil {
			return err
		}
		_ = ecs.GetKeyPairsOutput(ctx, ecs.GetKeyPairsOutputArgs{
			NameRegex: defaultKeyPair.KeyName,
		}, nil)
		return nil
	})
}

```

type GetKeyPairsResultOutput

type GetKeyPairsResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getKeyPairs.

func (GetKeyPairsResultOutput) ElementType

func (GetKeyPairsResultOutput) ElementType() reflect.Type

func (GetKeyPairsResultOutput) FingerPrint

Finger print of the key pair.

func (GetKeyPairsResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetKeyPairsResultOutput) Ids

func (GetKeyPairsResultOutput) KeyPairs deprecated

A list of key pairs. Each element contains the following attributes:

Deprecated: Field 'key_pairs' has been deprecated from provider version 1.121.0. New field 'pairs' instead.

func (GetKeyPairsResultOutput) NameRegex

func (GetKeyPairsResultOutput) Names

A list of key pair names.

func (GetKeyPairsResultOutput) OutputFile

func (GetKeyPairsResultOutput) Pairs

func (GetKeyPairsResultOutput) ResourceGroupId

func (o GetKeyPairsResultOutput) ResourceGroupId() pulumi.StringPtrOutput

The Id of resource group.

func (GetKeyPairsResultOutput) Tags

(Optional, Available in v1.66.0+) A mapping of tags to assign to the resource.

func (GetKeyPairsResultOutput) ToGetKeyPairsResultOutput

func (o GetKeyPairsResultOutput) ToGetKeyPairsResultOutput() GetKeyPairsResultOutput

func (GetKeyPairsResultOutput) ToGetKeyPairsResultOutputWithContext

func (o GetKeyPairsResultOutput) ToGetKeyPairsResultOutputWithContext(ctx context.Context) GetKeyPairsResultOutput

type GetNetworkInterfacesArgs

type GetNetworkInterfacesArgs struct {
	Ids []string `pulumi:"ids"`
	// ID of the instance that the ENI is attached to.
	InstanceId *string `pulumi:"instanceId"`
	// Name of the ENI.
	//
	// Deprecated: Field 'name' has been deprecated from provider version 1.123.1. New field 'network_interface_name' instead
	Name                 *string `pulumi:"name"`
	NameRegex            *string `pulumi:"nameRegex"`
	NetworkInterfaceName *string `pulumi:"networkInterfaceName"`
	OutputFile           *string `pulumi:"outputFile"`
	PrimaryIpAddress     *string `pulumi:"primaryIpAddress"`
	// Primary private IP of the ENI.
	//
	// Deprecated: Field 'private_ip' has been deprecated from provider version 1.123.1. New field 'primary_ip_address' instead
	PrivateIp *string `pulumi:"privateIp"`
	// The Id of resource group.
	ResourceGroupId *string `pulumi:"resourceGroupId"`
	SecurityGroupId *string `pulumi:"securityGroupId"`
	ServiceManaged  *bool   `pulumi:"serviceManaged"`
	// Current status of the ENI.
	Status *string `pulumi:"status"`
	// A map of tags assigned to the ENI.
	Tags map[string]interface{} `pulumi:"tags"`
	Type *string                `pulumi:"type"`
	// ID of the VPC that the ENI belongs to.
	VpcId *string `pulumi:"vpcId"`
	// ID of the VSwitch that the ENI is linked to.
	VswitchId *string `pulumi:"vswitchId"`
}

A collection of arguments for invoking getNetworkInterfaces.

type GetNetworkInterfacesInterface

type GetNetworkInterfacesInterface struct {
	AssociatedPublicIps []GetNetworkInterfacesInterfaceAssociatedPublicIp `pulumi:"associatedPublicIps"`
	// Creation time of the ENI.
	CreationTime string `pulumi:"creationTime"`
	// Description of the ENI.
	Description string `pulumi:"description"`
	// ID of the ENI.
	Id string `pulumi:"id"`
	// ID of the instance that the ENI is attached to.
	InstanceId string `pulumi:"instanceId"`
	// MAC address of the ENI.
	Mac string `pulumi:"mac"`
	// Name of the ENI.
	Name                        string `pulumi:"name"`
	NetworkInterfaceId          string `pulumi:"networkInterfaceId"`
	NetworkInterfaceName        string `pulumi:"networkInterfaceName"`
	NetworkInterfaceTrafficMode string `pulumi:"networkInterfaceTrafficMode"`
	OwnerId                     string `pulumi:"ownerId"`
	PrimaryIpAddress            string `pulumi:"primaryIpAddress"`
	// Primary private IP of the ENI.
	PrivateIp          string   `pulumi:"privateIp"`
	PrivateIpAddresses []string `pulumi:"privateIpAddresses"`
	// A list of secondary private IP address that is assigned to the ENI.
	PrivateIps  []string `pulumi:"privateIps"`
	QueueNumber int      `pulumi:"queueNumber"`
	// The Id of resource group.
	ResourceGroupId  string   `pulumi:"resourceGroupId"`
	SecurityGroupIds []string `pulumi:"securityGroupIds"`
	// A list of security group that the ENI belongs to.
	SecurityGroups []string `pulumi:"securityGroups"`
	ServiceId      int      `pulumi:"serviceId"`
	ServiceManaged bool     `pulumi:"serviceManaged"`
	// Current status of the ENI.
	Status string `pulumi:"status"`
	// A map of tags assigned to the ENI.
	Tags map[string]interface{} `pulumi:"tags"`
	Type string                 `pulumi:"type"`
	// ID of the VPC that the ENI belongs to.
	VpcId string `pulumi:"vpcId"`
	// ID of the VSwitch that the ENI is linked to.
	VswitchId string `pulumi:"vswitchId"`
	// ID of the availability zone that the ENI belongs to.
	ZoneId string `pulumi:"zoneId"`
}

type GetNetworkInterfacesInterfaceArgs

type GetNetworkInterfacesInterfaceArgs struct {
	AssociatedPublicIps GetNetworkInterfacesInterfaceAssociatedPublicIpArrayInput `pulumi:"associatedPublicIps"`
	// Creation time of the ENI.
	CreationTime pulumi.StringInput `pulumi:"creationTime"`
	// Description of the ENI.
	Description pulumi.StringInput `pulumi:"description"`
	// ID of the ENI.
	Id pulumi.StringInput `pulumi:"id"`
	// ID of the instance that the ENI is attached to.
	InstanceId pulumi.StringInput `pulumi:"instanceId"`
	// MAC address of the ENI.
	Mac pulumi.StringInput `pulumi:"mac"`
	// Name of the ENI.
	Name                        pulumi.StringInput `pulumi:"name"`
	NetworkInterfaceId          pulumi.StringInput `pulumi:"networkInterfaceId"`
	NetworkInterfaceName        pulumi.StringInput `pulumi:"networkInterfaceName"`
	NetworkInterfaceTrafficMode pulumi.StringInput `pulumi:"networkInterfaceTrafficMode"`
	OwnerId                     pulumi.StringInput `pulumi:"ownerId"`
	PrimaryIpAddress            pulumi.StringInput `pulumi:"primaryIpAddress"`
	// Primary private IP of the ENI.
	PrivateIp          pulumi.StringInput      `pulumi:"privateIp"`
	PrivateIpAddresses pulumi.StringArrayInput `pulumi:"privateIpAddresses"`
	// A list of secondary private IP address that is assigned to the ENI.
	PrivateIps  pulumi.StringArrayInput `pulumi:"privateIps"`
	QueueNumber pulumi.IntInput         `pulumi:"queueNumber"`
	// The Id of resource group.
	ResourceGroupId  pulumi.StringInput      `pulumi:"resourceGroupId"`
	SecurityGroupIds pulumi.StringArrayInput `pulumi:"securityGroupIds"`
	// A list of security group that the ENI belongs to.
	SecurityGroups pulumi.StringArrayInput `pulumi:"securityGroups"`
	ServiceId      pulumi.IntInput         `pulumi:"serviceId"`
	ServiceManaged pulumi.BoolInput        `pulumi:"serviceManaged"`
	// Current status of the ENI.
	Status pulumi.StringInput `pulumi:"status"`
	// A map of tags assigned to the ENI.
	Tags pulumi.MapInput    `pulumi:"tags"`
	Type pulumi.StringInput `pulumi:"type"`
	// ID of the VPC that the ENI belongs to.
	VpcId pulumi.StringInput `pulumi:"vpcId"`
	// ID of the VSwitch that the ENI is linked to.
	VswitchId pulumi.StringInput `pulumi:"vswitchId"`
	// ID of the availability zone that the ENI belongs to.
	ZoneId pulumi.StringInput `pulumi:"zoneId"`
}

func (GetNetworkInterfacesInterfaceArgs) ElementType

func (GetNetworkInterfacesInterfaceArgs) ToGetNetworkInterfacesInterfaceOutput

func (i GetNetworkInterfacesInterfaceArgs) ToGetNetworkInterfacesInterfaceOutput() GetNetworkInterfacesInterfaceOutput

func (GetNetworkInterfacesInterfaceArgs) ToGetNetworkInterfacesInterfaceOutputWithContext

func (i GetNetworkInterfacesInterfaceArgs) ToGetNetworkInterfacesInterfaceOutputWithContext(ctx context.Context) GetNetworkInterfacesInterfaceOutput

type GetNetworkInterfacesInterfaceArray

type GetNetworkInterfacesInterfaceArray []GetNetworkInterfacesInterfaceInput

func (GetNetworkInterfacesInterfaceArray) ElementType

func (GetNetworkInterfacesInterfaceArray) ToGetNetworkInterfacesInterfaceArrayOutput

func (i GetNetworkInterfacesInterfaceArray) ToGetNetworkInterfacesInterfaceArrayOutput() GetNetworkInterfacesInterfaceArrayOutput

func (GetNetworkInterfacesInterfaceArray) ToGetNetworkInterfacesInterfaceArrayOutputWithContext

func (i GetNetworkInterfacesInterfaceArray) ToGetNetworkInterfacesInterfaceArrayOutputWithContext(ctx context.Context) GetNetworkInterfacesInterfaceArrayOutput

type GetNetworkInterfacesInterfaceArrayInput

type GetNetworkInterfacesInterfaceArrayInput interface {
	pulumi.Input

	ToGetNetworkInterfacesInterfaceArrayOutput() GetNetworkInterfacesInterfaceArrayOutput
	ToGetNetworkInterfacesInterfaceArrayOutputWithContext(context.Context) GetNetworkInterfacesInterfaceArrayOutput
}

GetNetworkInterfacesInterfaceArrayInput is an input type that accepts GetNetworkInterfacesInterfaceArray and GetNetworkInterfacesInterfaceArrayOutput values. You can construct a concrete instance of `GetNetworkInterfacesInterfaceArrayInput` via:

GetNetworkInterfacesInterfaceArray{ GetNetworkInterfacesInterfaceArgs{...} }

type GetNetworkInterfacesInterfaceArrayOutput

type GetNetworkInterfacesInterfaceArrayOutput struct{ *pulumi.OutputState }

func (GetNetworkInterfacesInterfaceArrayOutput) ElementType

func (GetNetworkInterfacesInterfaceArrayOutput) Index

func (GetNetworkInterfacesInterfaceArrayOutput) ToGetNetworkInterfacesInterfaceArrayOutput

func (o GetNetworkInterfacesInterfaceArrayOutput) ToGetNetworkInterfacesInterfaceArrayOutput() GetNetworkInterfacesInterfaceArrayOutput

func (GetNetworkInterfacesInterfaceArrayOutput) ToGetNetworkInterfacesInterfaceArrayOutputWithContext

func (o GetNetworkInterfacesInterfaceArrayOutput) ToGetNetworkInterfacesInterfaceArrayOutputWithContext(ctx context.Context) GetNetworkInterfacesInterfaceArrayOutput

type GetNetworkInterfacesInterfaceAssociatedPublicIp

type GetNetworkInterfacesInterfaceAssociatedPublicIp struct {
	PublicIpAddress string `pulumi:"publicIpAddress"`
}

type GetNetworkInterfacesInterfaceAssociatedPublicIpArgs

type GetNetworkInterfacesInterfaceAssociatedPublicIpArgs struct {
	PublicIpAddress pulumi.StringInput `pulumi:"publicIpAddress"`
}

func (GetNetworkInterfacesInterfaceAssociatedPublicIpArgs) ElementType

func (GetNetworkInterfacesInterfaceAssociatedPublicIpArgs) ToGetNetworkInterfacesInterfaceAssociatedPublicIpOutput

func (i GetNetworkInterfacesInterfaceAssociatedPublicIpArgs) ToGetNetworkInterfacesInterfaceAssociatedPublicIpOutput() GetNetworkInterfacesInterfaceAssociatedPublicIpOutput

func (GetNetworkInterfacesInterfaceAssociatedPublicIpArgs) ToGetNetworkInterfacesInterfaceAssociatedPublicIpOutputWithContext

func (i GetNetworkInterfacesInterfaceAssociatedPublicIpArgs) ToGetNetworkInterfacesInterfaceAssociatedPublicIpOutputWithContext(ctx context.Context) GetNetworkInterfacesInterfaceAssociatedPublicIpOutput

type GetNetworkInterfacesInterfaceAssociatedPublicIpArray

type GetNetworkInterfacesInterfaceAssociatedPublicIpArray []GetNetworkInterfacesInterfaceAssociatedPublicIpInput

func (GetNetworkInterfacesInterfaceAssociatedPublicIpArray) ElementType

func (GetNetworkInterfacesInterfaceAssociatedPublicIpArray) ToGetNetworkInterfacesInterfaceAssociatedPublicIpArrayOutput

func (i GetNetworkInterfacesInterfaceAssociatedPublicIpArray) ToGetNetworkInterfacesInterfaceAssociatedPublicIpArrayOutput() GetNetworkInterfacesInterfaceAssociatedPublicIpArrayOutput

func (GetNetworkInterfacesInterfaceAssociatedPublicIpArray) ToGetNetworkInterfacesInterfaceAssociatedPublicIpArrayOutputWithContext

func (i GetNetworkInterfacesInterfaceAssociatedPublicIpArray) ToGetNetworkInterfacesInterfaceAssociatedPublicIpArrayOutputWithContext(ctx context.Context) GetNetworkInterfacesInterfaceAssociatedPublicIpArrayOutput

type GetNetworkInterfacesInterfaceAssociatedPublicIpArrayInput

type GetNetworkInterfacesInterfaceAssociatedPublicIpArrayInput interface {
	pulumi.Input

	ToGetNetworkInterfacesInterfaceAssociatedPublicIpArrayOutput() GetNetworkInterfacesInterfaceAssociatedPublicIpArrayOutput
	ToGetNetworkInterfacesInterfaceAssociatedPublicIpArrayOutputWithContext(context.Context) GetNetworkInterfacesInterfaceAssociatedPublicIpArrayOutput
}

GetNetworkInterfacesInterfaceAssociatedPublicIpArrayInput is an input type that accepts GetNetworkInterfacesInterfaceAssociatedPublicIpArray and GetNetworkInterfacesInterfaceAssociatedPublicIpArrayOutput values. You can construct a concrete instance of `GetNetworkInterfacesInterfaceAssociatedPublicIpArrayInput` via:

GetNetworkInterfacesInterfaceAssociatedPublicIpArray{ GetNetworkInterfacesInterfaceAssociatedPublicIpArgs{...} }

type GetNetworkInterfacesInterfaceAssociatedPublicIpArrayOutput

type GetNetworkInterfacesInterfaceAssociatedPublicIpArrayOutput struct{ *pulumi.OutputState }

func (GetNetworkInterfacesInterfaceAssociatedPublicIpArrayOutput) ElementType

func (GetNetworkInterfacesInterfaceAssociatedPublicIpArrayOutput) Index

func (GetNetworkInterfacesInterfaceAssociatedPublicIpArrayOutput) ToGetNetworkInterfacesInterfaceAssociatedPublicIpArrayOutput

func (GetNetworkInterfacesInterfaceAssociatedPublicIpArrayOutput) ToGetNetworkInterfacesInterfaceAssociatedPublicIpArrayOutputWithContext

func (o GetNetworkInterfacesInterfaceAssociatedPublicIpArrayOutput) ToGetNetworkInterfacesInterfaceAssociatedPublicIpArrayOutputWithContext(ctx context.Context) GetNetworkInterfacesInterfaceAssociatedPublicIpArrayOutput

type GetNetworkInterfacesInterfaceAssociatedPublicIpInput

type GetNetworkInterfacesInterfaceAssociatedPublicIpInput interface {
	pulumi.Input

	ToGetNetworkInterfacesInterfaceAssociatedPublicIpOutput() GetNetworkInterfacesInterfaceAssociatedPublicIpOutput
	ToGetNetworkInterfacesInterfaceAssociatedPublicIpOutputWithContext(context.Context) GetNetworkInterfacesInterfaceAssociatedPublicIpOutput
}

GetNetworkInterfacesInterfaceAssociatedPublicIpInput is an input type that accepts GetNetworkInterfacesInterfaceAssociatedPublicIpArgs and GetNetworkInterfacesInterfaceAssociatedPublicIpOutput values. You can construct a concrete instance of `GetNetworkInterfacesInterfaceAssociatedPublicIpInput` via:

GetNetworkInterfacesInterfaceAssociatedPublicIpArgs{...}

type GetNetworkInterfacesInterfaceAssociatedPublicIpOutput

type GetNetworkInterfacesInterfaceAssociatedPublicIpOutput struct{ *pulumi.OutputState }

func (GetNetworkInterfacesInterfaceAssociatedPublicIpOutput) ElementType

func (GetNetworkInterfacesInterfaceAssociatedPublicIpOutput) PublicIpAddress

func (GetNetworkInterfacesInterfaceAssociatedPublicIpOutput) ToGetNetworkInterfacesInterfaceAssociatedPublicIpOutput

func (GetNetworkInterfacesInterfaceAssociatedPublicIpOutput) ToGetNetworkInterfacesInterfaceAssociatedPublicIpOutputWithContext

func (o GetNetworkInterfacesInterfaceAssociatedPublicIpOutput) ToGetNetworkInterfacesInterfaceAssociatedPublicIpOutputWithContext(ctx context.Context) GetNetworkInterfacesInterfaceAssociatedPublicIpOutput

type GetNetworkInterfacesInterfaceInput

type GetNetworkInterfacesInterfaceInput interface {
	pulumi.Input

	ToGetNetworkInterfacesInterfaceOutput() GetNetworkInterfacesInterfaceOutput
	ToGetNetworkInterfacesInterfaceOutputWithContext(context.Context) GetNetworkInterfacesInterfaceOutput
}

GetNetworkInterfacesInterfaceInput is an input type that accepts GetNetworkInterfacesInterfaceArgs and GetNetworkInterfacesInterfaceOutput values. You can construct a concrete instance of `GetNetworkInterfacesInterfaceInput` via:

GetNetworkInterfacesInterfaceArgs{...}

type GetNetworkInterfacesInterfaceOutput

type GetNetworkInterfacesInterfaceOutput struct{ *pulumi.OutputState }

func (GetNetworkInterfacesInterfaceOutput) AssociatedPublicIps

func (GetNetworkInterfacesInterfaceOutput) CreationTime

Creation time of the ENI.

func (GetNetworkInterfacesInterfaceOutput) Description

Description of the ENI.

func (GetNetworkInterfacesInterfaceOutput) ElementType

func (GetNetworkInterfacesInterfaceOutput) Id

ID of the ENI.

func (GetNetworkInterfacesInterfaceOutput) InstanceId

ID of the instance that the ENI is attached to.

func (GetNetworkInterfacesInterfaceOutput) Mac

MAC address of the ENI.

func (GetNetworkInterfacesInterfaceOutput) Name

Name of the ENI.

func (GetNetworkInterfacesInterfaceOutput) NetworkInterfaceId

func (GetNetworkInterfacesInterfaceOutput) NetworkInterfaceName

func (o GetNetworkInterfacesInterfaceOutput) NetworkInterfaceName() pulumi.StringOutput

func (GetNetworkInterfacesInterfaceOutput) NetworkInterfaceTrafficMode

func (o GetNetworkInterfacesInterfaceOutput) NetworkInterfaceTrafficMode() pulumi.StringOutput

func (GetNetworkInterfacesInterfaceOutput) OwnerId

func (GetNetworkInterfacesInterfaceOutput) PrimaryIpAddress

func (GetNetworkInterfacesInterfaceOutput) PrivateIp

Primary private IP of the ENI.

func (GetNetworkInterfacesInterfaceOutput) PrivateIpAddresses

func (GetNetworkInterfacesInterfaceOutput) PrivateIps

A list of secondary private IP address that is assigned to the ENI.

func (GetNetworkInterfacesInterfaceOutput) QueueNumber

func (GetNetworkInterfacesInterfaceOutput) ResourceGroupId

The Id of resource group.

func (GetNetworkInterfacesInterfaceOutput) SecurityGroupIds

func (GetNetworkInterfacesInterfaceOutput) SecurityGroups

A list of security group that the ENI belongs to.

func (GetNetworkInterfacesInterfaceOutput) ServiceId

func (GetNetworkInterfacesInterfaceOutput) ServiceManaged

func (GetNetworkInterfacesInterfaceOutput) Status

Current status of the ENI.

func (GetNetworkInterfacesInterfaceOutput) Tags

A map of tags assigned to the ENI.

func (GetNetworkInterfacesInterfaceOutput) ToGetNetworkInterfacesInterfaceOutput

func (o GetNetworkInterfacesInterfaceOutput) ToGetNetworkInterfacesInterfaceOutput() GetNetworkInterfacesInterfaceOutput

func (GetNetworkInterfacesInterfaceOutput) ToGetNetworkInterfacesInterfaceOutputWithContext

func (o GetNetworkInterfacesInterfaceOutput) ToGetNetworkInterfacesInterfaceOutputWithContext(ctx context.Context) GetNetworkInterfacesInterfaceOutput

func (GetNetworkInterfacesInterfaceOutput) Type

func (GetNetworkInterfacesInterfaceOutput) VpcId

ID of the VPC that the ENI belongs to.

func (GetNetworkInterfacesInterfaceOutput) VswitchId

ID of the VSwitch that the ENI is linked to.

func (GetNetworkInterfacesInterfaceOutput) ZoneId

ID of the availability zone that the ENI belongs to.

type GetNetworkInterfacesOutputArgs

type GetNetworkInterfacesOutputArgs struct {
	Ids pulumi.StringArrayInput `pulumi:"ids"`
	// ID of the instance that the ENI is attached to.
	InstanceId pulumi.StringPtrInput `pulumi:"instanceId"`
	// Name of the ENI.
	//
	// Deprecated: Field 'name' has been deprecated from provider version 1.123.1. New field 'network_interface_name' instead
	Name                 pulumi.StringPtrInput `pulumi:"name"`
	NameRegex            pulumi.StringPtrInput `pulumi:"nameRegex"`
	NetworkInterfaceName pulumi.StringPtrInput `pulumi:"networkInterfaceName"`
	OutputFile           pulumi.StringPtrInput `pulumi:"outputFile"`
	PrimaryIpAddress     pulumi.StringPtrInput `pulumi:"primaryIpAddress"`
	// Primary private IP of the ENI.
	//
	// Deprecated: Field 'private_ip' has been deprecated from provider version 1.123.1. New field 'primary_ip_address' instead
	PrivateIp pulumi.StringPtrInput `pulumi:"privateIp"`
	// The Id of resource group.
	ResourceGroupId pulumi.StringPtrInput `pulumi:"resourceGroupId"`
	SecurityGroupId pulumi.StringPtrInput `pulumi:"securityGroupId"`
	ServiceManaged  pulumi.BoolPtrInput   `pulumi:"serviceManaged"`
	// Current status of the ENI.
	Status pulumi.StringPtrInput `pulumi:"status"`
	// A map of tags assigned to the ENI.
	Tags pulumi.MapInput       `pulumi:"tags"`
	Type pulumi.StringPtrInput `pulumi:"type"`
	// ID of the VPC that the ENI belongs to.
	VpcId pulumi.StringPtrInput `pulumi:"vpcId"`
	// ID of the VSwitch that the ENI is linked to.
	VswitchId pulumi.StringPtrInput `pulumi:"vswitchId"`
}

A collection of arguments for invoking getNetworkInterfaces.

func (GetNetworkInterfacesOutputArgs) ElementType

type GetNetworkInterfacesResult

type GetNetworkInterfacesResult struct {
	// The provider-assigned unique ID for this managed resource.
	Id  string   `pulumi:"id"`
	Ids []string `pulumi:"ids"`
	// ID of the instance that the ENI is attached to.
	InstanceId *string `pulumi:"instanceId"`
	// A list of ENIs. Each element contains the following attributes:
	Interfaces []GetNetworkInterfacesInterface `pulumi:"interfaces"`
	// Name of the ENI.
	//
	// Deprecated: Field 'name' has been deprecated from provider version 1.123.1. New field 'network_interface_name' instead
	Name                 *string  `pulumi:"name"`
	NameRegex            *string  `pulumi:"nameRegex"`
	Names                []string `pulumi:"names"`
	NetworkInterfaceName *string  `pulumi:"networkInterfaceName"`
	OutputFile           *string  `pulumi:"outputFile"`
	PrimaryIpAddress     *string  `pulumi:"primaryIpAddress"`
	// Primary private IP of the ENI.
	//
	// Deprecated: Field 'private_ip' has been deprecated from provider version 1.123.1. New field 'primary_ip_address' instead
	PrivateIp *string `pulumi:"privateIp"`
	// The Id of resource group.
	ResourceGroupId *string `pulumi:"resourceGroupId"`
	SecurityGroupId *string `pulumi:"securityGroupId"`
	ServiceManaged  *bool   `pulumi:"serviceManaged"`
	// Current status of the ENI.
	Status *string `pulumi:"status"`
	// A map of tags assigned to the ENI.
	Tags map[string]interface{} `pulumi:"tags"`
	Type *string                `pulumi:"type"`
	// ID of the VPC that the ENI belongs to.
	VpcId *string `pulumi:"vpcId"`
	// ID of the VSwitch that the ENI is linked to.
	VswitchId *string `pulumi:"vswitchId"`
}

A collection of values returned by getNetworkInterfaces.

func GetNetworkInterfaces

func GetNetworkInterfaces(ctx *pulumi.Context, args *GetNetworkInterfacesArgs, opts ...pulumi.InvokeOption) (*GetNetworkInterfacesResult, error)

## Argument Reference

The following arguments are supported:

* `ids` - (Optional) A list of ENI IDs. * `nameRegex` - (Optional) A regex string to filter results by ENI name. * `vpcId` - (Optional) The VPC ID linked to ENIs. * `vswitchId` - (Optional) The VSwitch ID linked to ENIs. * `privateIp` - (Optional) The primary private IP address of the ENI. * `securityGroupId` - (Optional) The security group ID linked to ENIs. * `name` - (Optional) The name of the ENIs. * `type` - (Optional) The type of ENIs, Only support for "Primary" or "Secondary". * `instanceId` - (Optional) The ECS instance ID that the ENI is attached to. * `tags` - (Optional) A map of tags assigned to ENIs. * `outputFile` - (Optional) The name of output file that saves the filter results. * `resourceGroupId` - (Optional, ForceNew, Available in 1.57.0+) The Id of resource group which the network interface belongs.

type GetNetworkInterfacesResultOutput

type GetNetworkInterfacesResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getNetworkInterfaces.

func (GetNetworkInterfacesResultOutput) ElementType

func (GetNetworkInterfacesResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetNetworkInterfacesResultOutput) Ids

func (GetNetworkInterfacesResultOutput) InstanceId

ID of the instance that the ENI is attached to.

func (GetNetworkInterfacesResultOutput) Interfaces

A list of ENIs. Each element contains the following attributes:

func (GetNetworkInterfacesResultOutput) Name deprecated

Name of the ENI.

Deprecated: Field 'name' has been deprecated from provider version 1.123.1. New field 'network_interface_name' instead

func (GetNetworkInterfacesResultOutput) NameRegex

func (GetNetworkInterfacesResultOutput) Names

func (GetNetworkInterfacesResultOutput) NetworkInterfaceName

func (o GetNetworkInterfacesResultOutput) NetworkInterfaceName() pulumi.StringPtrOutput

func (GetNetworkInterfacesResultOutput) OutputFile

func (GetNetworkInterfacesResultOutput) PrimaryIpAddress

func (GetNetworkInterfacesResultOutput) PrivateIp deprecated

Primary private IP of the ENI.

Deprecated: Field 'private_ip' has been deprecated from provider version 1.123.1. New field 'primary_ip_address' instead

func (GetNetworkInterfacesResultOutput) ResourceGroupId

The Id of resource group.

func (GetNetworkInterfacesResultOutput) SecurityGroupId

func (GetNetworkInterfacesResultOutput) ServiceManaged

func (GetNetworkInterfacesResultOutput) Status

Current status of the ENI.

func (GetNetworkInterfacesResultOutput) Tags

A map of tags assigned to the ENI.

func (GetNetworkInterfacesResultOutput) ToGetNetworkInterfacesResultOutput

func (o GetNetworkInterfacesResultOutput) ToGetNetworkInterfacesResultOutput() GetNetworkInterfacesResultOutput

func (GetNetworkInterfacesResultOutput) ToGetNetworkInterfacesResultOutputWithContext

func (o GetNetworkInterfacesResultOutput) ToGetNetworkInterfacesResultOutputWithContext(ctx context.Context) GetNetworkInterfacesResultOutput

func (GetNetworkInterfacesResultOutput) Type

func (GetNetworkInterfacesResultOutput) VpcId

ID of the VPC that the ENI belongs to.

func (GetNetworkInterfacesResultOutput) VswitchId

ID of the VSwitch that the ENI is linked to.

type GetSecurityGroupRulesArgs

type GetSecurityGroupRulesArgs struct {
	// Authorization direction. Valid values are: `ingress` or `egress`.
	Direction *string `pulumi:"direction"`
	// The ID of the security group that owns the rules.
	GroupId string `pulumi:"groupId"`
	// The IP protocol. Valid values are: `tcp`, `udp`, `icmp`, `gre` and `all`.
	IpProtocol *string `pulumi:"ipProtocol"`
	// Refers to the network type. Can be either `internet` or `intranet`. The default value is `internet`.
	NicType    *string `pulumi:"nicType"`
	OutputFile *string `pulumi:"outputFile"`
	// Authorization policy. Can be either `accept` or `drop`. The default value is `accept`.
	Policy *string `pulumi:"policy"`
}

A collection of arguments for invoking getSecurityGroupRules.

type GetSecurityGroupRulesOutputArgs

type GetSecurityGroupRulesOutputArgs struct {
	// Authorization direction. Valid values are: `ingress` or `egress`.
	Direction pulumi.StringPtrInput `pulumi:"direction"`
	// The ID of the security group that owns the rules.
	GroupId pulumi.StringInput `pulumi:"groupId"`
	// The IP protocol. Valid values are: `tcp`, `udp`, `icmp`, `gre` and `all`.
	IpProtocol pulumi.StringPtrInput `pulumi:"ipProtocol"`
	// Refers to the network type. Can be either `internet` or `intranet`. The default value is `internet`.
	NicType    pulumi.StringPtrInput `pulumi:"nicType"`
	OutputFile pulumi.StringPtrInput `pulumi:"outputFile"`
	// Authorization policy. Can be either `accept` or `drop`. The default value is `accept`.
	Policy pulumi.StringPtrInput `pulumi:"policy"`
}

A collection of arguments for invoking getSecurityGroupRules.

func (GetSecurityGroupRulesOutputArgs) ElementType

type GetSecurityGroupRulesResult

type GetSecurityGroupRulesResult struct {
	// Authorization direction, `ingress` or `egress`.
	Direction *string `pulumi:"direction"`
	// The description of the security group that owns the rules.
	GroupDesc string `pulumi:"groupDesc"`
	GroupId   string `pulumi:"groupId"`
	// The name of the security group that owns the rules.
	GroupName string `pulumi:"groupName"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// The protocol. Can be `tcp`, `udp`, `icmp`, `gre` or `all`.
	IpProtocol *string `pulumi:"ipProtocol"`
	// Network type, `internet` or `intranet`.
	NicType    *string `pulumi:"nicType"`
	OutputFile *string `pulumi:"outputFile"`
	// Authorization policy. Can be either `accept` or `drop`.
	Policy *string `pulumi:"policy"`
	// A list of security group rules. Each element contains the following attributes:
	Rules []GetSecurityGroupRulesRule `pulumi:"rules"`
}

A collection of values returned by getSecurityGroupRules.

func GetSecurityGroupRules

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

The `ecs.getSecurityGroupRules` data source provides a collection of security permissions of a specific security group. Each collection item represents a single `ingress` or `egress` permission rule. The ID of the security group can be provided via a variable or the result from the other data source `ecs.getSecurityGroups`.

## Example Usage

The following example shows how to obtain details about a security group rule and how to pass its data to an instance at launch time.

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-alicloud/sdk/go/alicloud/ecs"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		securityGroupId := cfg.RequireObject("securityGroupId")
		groupsDs, err := ecs.GetSecurityGroups(ctx, &ecs.GetSecurityGroupsArgs{
			NameRegex: pulumi.StringRef("api"),
		}, nil)
		if err != nil {
			return err
		}
		ingressRulesDs, err := ecs.GetSecurityGroupRules(ctx, &ecs.GetSecurityGroupRulesArgs{
			Direction:  pulumi.StringRef("ingress"),
			GroupId:    groupsDs.Groups[0].Id,
			IpProtocol: pulumi.StringRef("tcp"),
			NicType:    pulumi.StringRef("internet"),
		}, nil)
		if err != nil {
			return err
		}
		_, err = ecs.NewInstance(ctx, "backend", &ecs.InstanceArgs{
			UserData: pulumi.String(fmt.Sprintf("config_service.sh --portrange=%v", ingressRulesDs.Rules[0].PortRange)),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetSecurityGroupRulesResultOutput

type GetSecurityGroupRulesResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getSecurityGroupRules.

func (GetSecurityGroupRulesResultOutput) Direction

Authorization direction, `ingress` or `egress`.

func (GetSecurityGroupRulesResultOutput) ElementType

func (GetSecurityGroupRulesResultOutput) GroupDesc

The description of the security group that owns the rules.

func (GetSecurityGroupRulesResultOutput) GroupId

func (GetSecurityGroupRulesResultOutput) GroupName

The name of the security group that owns the rules.

func (GetSecurityGroupRulesResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetSecurityGroupRulesResultOutput) IpProtocol

The protocol. Can be `tcp`, `udp`, `icmp`, `gre` or `all`.

func (GetSecurityGroupRulesResultOutput) NicType

Network type, `internet` or `intranet`.

func (GetSecurityGroupRulesResultOutput) OutputFile

func (GetSecurityGroupRulesResultOutput) Policy

Authorization policy. Can be either `accept` or `drop`.

func (GetSecurityGroupRulesResultOutput) Rules

A list of security group rules. Each element contains the following attributes:

func (GetSecurityGroupRulesResultOutput) ToGetSecurityGroupRulesResultOutput

func (o GetSecurityGroupRulesResultOutput) ToGetSecurityGroupRulesResultOutput() GetSecurityGroupRulesResultOutput

func (GetSecurityGroupRulesResultOutput) ToGetSecurityGroupRulesResultOutputWithContext

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

type GetSecurityGroupRulesRule

type GetSecurityGroupRulesRule struct {
	// The description of the rule.
	Description string `pulumi:"description"`
	// Target IP address segment for egress authorization.
	DestCidrIp string `pulumi:"destCidrIp"`
	// Target security group id for ingress authorization.
	DestGroupId string `pulumi:"destGroupId"`
	// Alibaba Cloud account of the target security group.
	DestGroupOwnerAccount string `pulumi:"destGroupOwnerAccount"`
	// Authorization direction. Valid values are: `ingress` or `egress`.
	Direction string `pulumi:"direction"`
	// The IP protocol. Valid values are: `tcp`, `udp`, `icmp`, `gre` and `all`.
	IpProtocol string `pulumi:"ipProtocol"`
	// Refers to the network type. Can be either `internet` or `intranet`. The default value is `internet`.
	NicType string `pulumi:"nicType"`
	// Authorization policy. Can be either `accept` or `drop`. The default value is `accept`.
	Policy string `pulumi:"policy"`
	// The range of port numbers.
	PortRange string `pulumi:"portRange"`
	// Rule priority.
	Priority int `pulumi:"priority"`
	// Source IP address segment for ingress authorization.
	SourceCidrIp string `pulumi:"sourceCidrIp"`
	// Source security group ID for ingress authorization.
	SourceGroupId string `pulumi:"sourceGroupId"`
	// Alibaba Cloud account of the source security group.
	SourceGroupOwnerAccount string `pulumi:"sourceGroupOwnerAccount"`
}

type GetSecurityGroupRulesRuleArgs

type GetSecurityGroupRulesRuleArgs struct {
	// The description of the rule.
	Description pulumi.StringInput `pulumi:"description"`
	// Target IP address segment for egress authorization.
	DestCidrIp pulumi.StringInput `pulumi:"destCidrIp"`
	// Target security group id for ingress authorization.
	DestGroupId pulumi.StringInput `pulumi:"destGroupId"`
	// Alibaba Cloud account of the target security group.
	DestGroupOwnerAccount pulumi.StringInput `pulumi:"destGroupOwnerAccount"`
	// Authorization direction. Valid values are: `ingress` or `egress`.
	Direction pulumi.StringInput `pulumi:"direction"`
	// The IP protocol. Valid values are: `tcp`, `udp`, `icmp`, `gre` and `all`.
	IpProtocol pulumi.StringInput `pulumi:"ipProtocol"`
	// Refers to the network type. Can be either `internet` or `intranet`. The default value is `internet`.
	NicType pulumi.StringInput `pulumi:"nicType"`
	// Authorization policy. Can be either `accept` or `drop`. The default value is `accept`.
	Policy pulumi.StringInput `pulumi:"policy"`
	// The range of port numbers.
	PortRange pulumi.StringInput `pulumi:"portRange"`
	// Rule priority.
	Priority pulumi.IntInput `pulumi:"priority"`
	// Source IP address segment for ingress authorization.
	SourceCidrIp pulumi.StringInput `pulumi:"sourceCidrIp"`
	// Source security group ID for ingress authorization.
	SourceGroupId pulumi.StringInput `pulumi:"sourceGroupId"`
	// Alibaba Cloud account of the source security group.
	SourceGroupOwnerAccount pulumi.StringInput `pulumi:"sourceGroupOwnerAccount"`
}

func (GetSecurityGroupRulesRuleArgs) ElementType

func (GetSecurityGroupRulesRuleArgs) ToGetSecurityGroupRulesRuleOutput

func (i GetSecurityGroupRulesRuleArgs) ToGetSecurityGroupRulesRuleOutput() GetSecurityGroupRulesRuleOutput

func (GetSecurityGroupRulesRuleArgs) ToGetSecurityGroupRulesRuleOutputWithContext

func (i GetSecurityGroupRulesRuleArgs) ToGetSecurityGroupRulesRuleOutputWithContext(ctx context.Context) GetSecurityGroupRulesRuleOutput

type GetSecurityGroupRulesRuleArray

type GetSecurityGroupRulesRuleArray []GetSecurityGroupRulesRuleInput

func (GetSecurityGroupRulesRuleArray) ElementType

func (GetSecurityGroupRulesRuleArray) ToGetSecurityGroupRulesRuleArrayOutput

func (i GetSecurityGroupRulesRuleArray) ToGetSecurityGroupRulesRuleArrayOutput() GetSecurityGroupRulesRuleArrayOutput

func (GetSecurityGroupRulesRuleArray) ToGetSecurityGroupRulesRuleArrayOutputWithContext

func (i GetSecurityGroupRulesRuleArray) ToGetSecurityGroupRulesRuleArrayOutputWithContext(ctx context.Context) GetSecurityGroupRulesRuleArrayOutput

type GetSecurityGroupRulesRuleArrayInput

type GetSecurityGroupRulesRuleArrayInput interface {
	pulumi.Input

	ToGetSecurityGroupRulesRuleArrayOutput() GetSecurityGroupRulesRuleArrayOutput
	ToGetSecurityGroupRulesRuleArrayOutputWithContext(context.Context) GetSecurityGroupRulesRuleArrayOutput
}

GetSecurityGroupRulesRuleArrayInput is an input type that accepts GetSecurityGroupRulesRuleArray and GetSecurityGroupRulesRuleArrayOutput values. You can construct a concrete instance of `GetSecurityGroupRulesRuleArrayInput` via:

GetSecurityGroupRulesRuleArray{ GetSecurityGroupRulesRuleArgs{...} }

type GetSecurityGroupRulesRuleArrayOutput

type GetSecurityGroupRulesRuleArrayOutput struct{ *pulumi.OutputState }

func (GetSecurityGroupRulesRuleArrayOutput) ElementType

func (GetSecurityGroupRulesRuleArrayOutput) Index

func (GetSecurityGroupRulesRuleArrayOutput) ToGetSecurityGroupRulesRuleArrayOutput

func (o GetSecurityGroupRulesRuleArrayOutput) ToGetSecurityGroupRulesRuleArrayOutput() GetSecurityGroupRulesRuleArrayOutput

func (GetSecurityGroupRulesRuleArrayOutput) ToGetSecurityGroupRulesRuleArrayOutputWithContext

func (o GetSecurityGroupRulesRuleArrayOutput) ToGetSecurityGroupRulesRuleArrayOutputWithContext(ctx context.Context) GetSecurityGroupRulesRuleArrayOutput

type GetSecurityGroupRulesRuleInput

type GetSecurityGroupRulesRuleInput interface {
	pulumi.Input

	ToGetSecurityGroupRulesRuleOutput() GetSecurityGroupRulesRuleOutput
	ToGetSecurityGroupRulesRuleOutputWithContext(context.Context) GetSecurityGroupRulesRuleOutput
}

GetSecurityGroupRulesRuleInput is an input type that accepts GetSecurityGroupRulesRuleArgs and GetSecurityGroupRulesRuleOutput values. You can construct a concrete instance of `GetSecurityGroupRulesRuleInput` via:

GetSecurityGroupRulesRuleArgs{...}

type GetSecurityGroupRulesRuleOutput

type GetSecurityGroupRulesRuleOutput struct{ *pulumi.OutputState }

func (GetSecurityGroupRulesRuleOutput) Description

The description of the rule.

func (GetSecurityGroupRulesRuleOutput) DestCidrIp

Target IP address segment for egress authorization.

func (GetSecurityGroupRulesRuleOutput) DestGroupId

Target security group id for ingress authorization.

func (GetSecurityGroupRulesRuleOutput) DestGroupOwnerAccount

func (o GetSecurityGroupRulesRuleOutput) DestGroupOwnerAccount() pulumi.StringOutput

Alibaba Cloud account of the target security group.

func (GetSecurityGroupRulesRuleOutput) Direction

Authorization direction. Valid values are: `ingress` or `egress`.

func (GetSecurityGroupRulesRuleOutput) ElementType

func (GetSecurityGroupRulesRuleOutput) IpProtocol

The IP protocol. Valid values are: `tcp`, `udp`, `icmp`, `gre` and `all`.

func (GetSecurityGroupRulesRuleOutput) NicType

Refers to the network type. Can be either `internet` or `intranet`. The default value is `internet`.

func (GetSecurityGroupRulesRuleOutput) Policy

Authorization policy. Can be either `accept` or `drop`. The default value is `accept`.

func (GetSecurityGroupRulesRuleOutput) PortRange

The range of port numbers.

func (GetSecurityGroupRulesRuleOutput) Priority

Rule priority.

func (GetSecurityGroupRulesRuleOutput) SourceCidrIp

Source IP address segment for ingress authorization.

func (GetSecurityGroupRulesRuleOutput) SourceGroupId

Source security group ID for ingress authorization.

func (GetSecurityGroupRulesRuleOutput) SourceGroupOwnerAccount

func (o GetSecurityGroupRulesRuleOutput) SourceGroupOwnerAccount() pulumi.StringOutput

Alibaba Cloud account of the source security group.

func (GetSecurityGroupRulesRuleOutput) ToGetSecurityGroupRulesRuleOutput

func (o GetSecurityGroupRulesRuleOutput) ToGetSecurityGroupRulesRuleOutput() GetSecurityGroupRulesRuleOutput

func (GetSecurityGroupRulesRuleOutput) ToGetSecurityGroupRulesRuleOutputWithContext

func (o GetSecurityGroupRulesRuleOutput) ToGetSecurityGroupRulesRuleOutputWithContext(ctx context.Context) GetSecurityGroupRulesRuleOutput

type GetSecurityGroupsArgs

type GetSecurityGroupsArgs struct {
	EnableDetails *bool `pulumi:"enableDetails"`
	// A list of Security Group IDs.
	Ids []string `pulumi:"ids"`
	// A regex string to filter the resulting security groups by their names.
	NameRegex  *string `pulumi:"nameRegex"`
	OutputFile *string `pulumi:"outputFile"`
	PageNumber *int    `pulumi:"pageNumber"`
	PageSize   *int    `pulumi:"pageSize"`
	// The Id of resource group which the securityGroup belongs.
	ResourceGroupId *string `pulumi:"resourceGroupId"`
	// A map of tags assigned to the ECS instances. It must be in the format:
	// “`go
	// package main
	//
	// import (
	// 	"github.com/pulumi/pulumi-alicloud/sdk/go/alicloud/ecs"
	// 	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
	// 	"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"
	// )
	//
	// func main() {
	// 	pulumi.Run(func(ctx *pulumi.Context) error {
	// 		_, err := ecs.GetSecurityGroups(ctx, &ecs.GetSecurityGroupsArgs{
	// 			Tags: map[string]interface{}{
	// 				"tagKey1": "tagValue1",
	// 				"tagKey2": "tagValue2",
	// 			},
	// 		}, nil)
	// 		if err != nil {
	// 			return err
	// 		}
	// 		return nil
	// 	})
	// }
	// “`
	Tags map[string]interface{} `pulumi:"tags"`
	// Used to retrieve security groups that belong to the specified VPC ID.
	VpcId *string `pulumi:"vpcId"`
}

A collection of arguments for invoking getSecurityGroups.

type GetSecurityGroupsGroup

type GetSecurityGroupsGroup struct {
	// Creation time of the security group.
	CreationTime string `pulumi:"creationTime"`
	// The description of the security group.
	Description string `pulumi:"description"`
	// The ID of the security group.
	Id string `pulumi:"id"`
	// Whether to allow inner network access.
	InnerAccess bool `pulumi:"innerAccess"`
	// The name of the security group.
	Name string `pulumi:"name"`
	// The Id of resource group which the securityGroup belongs.
	ResourceGroupId string `pulumi:"resourceGroupId"`
	// The type of the security group.
	SecurityGroupType string `pulumi:"securityGroupType"`
	// A map of tags assigned to the ECS instances. It must be in the format:
	// “`go
	// package main
	//
	// import (
	// 	"github.com/pulumi/pulumi-alicloud/sdk/go/alicloud/ecs"
	// 	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
	// 	"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"
	// )
	//
	// func main() {
	// 	pulumi.Run(func(ctx *pulumi.Context) error {
	// 		_, err := ecs.GetSecurityGroups(ctx, &ecs.GetSecurityGroupsArgs{
	// 			Tags: map[string]interface{}{
	// 				"tagKey1": "tagValue1",
	// 				"tagKey2": "tagValue2",
	// 			},
	// 		}, nil)
	// 		if err != nil {
	// 			return err
	// 		}
	// 		return nil
	// 	})
	// }
	// “`
	Tags map[string]interface{} `pulumi:"tags"`
	// Used to retrieve security groups that belong to the specified VPC ID.
	VpcId string `pulumi:"vpcId"`
}

type GetSecurityGroupsGroupArgs

type GetSecurityGroupsGroupArgs struct {
	// Creation time of the security group.
	CreationTime pulumi.StringInput `pulumi:"creationTime"`
	// The description of the security group.
	Description pulumi.StringInput `pulumi:"description"`
	// The ID of the security group.
	Id pulumi.StringInput `pulumi:"id"`
	// Whether to allow inner network access.
	InnerAccess pulumi.BoolInput `pulumi:"innerAccess"`
	// The name of the security group.
	Name pulumi.StringInput `pulumi:"name"`
	// The Id of resource group which the securityGroup belongs.
	ResourceGroupId pulumi.StringInput `pulumi:"resourceGroupId"`
	// The type of the security group.
	SecurityGroupType pulumi.StringInput `pulumi:"securityGroupType"`
	// A map of tags assigned to the ECS instances. It must be in the format:
	// “`go
	// package main
	//
	// import (
	// 	"github.com/pulumi/pulumi-alicloud/sdk/go/alicloud/ecs"
	// 	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
	// 	"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"
	// )
	//
	// func main() {
	// 	pulumi.Run(func(ctx *pulumi.Context) error {
	// 		_, err := ecs.GetSecurityGroups(ctx, &ecs.GetSecurityGroupsArgs{
	// 			Tags: map[string]interface{}{
	// 				"tagKey1": "tagValue1",
	// 				"tagKey2": "tagValue2",
	// 			},
	// 		}, nil)
	// 		if err != nil {
	// 			return err
	// 		}
	// 		return nil
	// 	})
	// }
	// “`
	Tags pulumi.MapInput `pulumi:"tags"`
	// Used to retrieve security groups that belong to the specified VPC ID.
	VpcId pulumi.StringInput `pulumi:"vpcId"`
}

func (GetSecurityGroupsGroupArgs) ElementType

func (GetSecurityGroupsGroupArgs) ElementType() reflect.Type

func (GetSecurityGroupsGroupArgs) ToGetSecurityGroupsGroupOutput

func (i GetSecurityGroupsGroupArgs) ToGetSecurityGroupsGroupOutput() GetSecurityGroupsGroupOutput

func (GetSecurityGroupsGroupArgs) ToGetSecurityGroupsGroupOutputWithContext

func (i GetSecurityGroupsGroupArgs) ToGetSecurityGroupsGroupOutputWithContext(ctx context.Context) GetSecurityGroupsGroupOutput

type GetSecurityGroupsGroupArray

type GetSecurityGroupsGroupArray []GetSecurityGroupsGroupInput

func (GetSecurityGroupsGroupArray) ElementType

func (GetSecurityGroupsGroupArray) ToGetSecurityGroupsGroupArrayOutput

func (i GetSecurityGroupsGroupArray) ToGetSecurityGroupsGroupArrayOutput() GetSecurityGroupsGroupArrayOutput

func (GetSecurityGroupsGroupArray) ToGetSecurityGroupsGroupArrayOutputWithContext

func (i GetSecurityGroupsGroupArray) ToGetSecurityGroupsGroupArrayOutputWithContext(ctx context.Context) GetSecurityGroupsGroupArrayOutput

type GetSecurityGroupsGroupArrayInput

type GetSecurityGroupsGroupArrayInput interface {
	pulumi.Input

	ToGetSecurityGroupsGroupArrayOutput() GetSecurityGroupsGroupArrayOutput
	ToGetSecurityGroupsGroupArrayOutputWithContext(context.Context) GetSecurityGroupsGroupArrayOutput
}

GetSecurityGroupsGroupArrayInput is an input type that accepts GetSecurityGroupsGroupArray and GetSecurityGroupsGroupArrayOutput values. You can construct a concrete instance of `GetSecurityGroupsGroupArrayInput` via:

GetSecurityGroupsGroupArray{ GetSecurityGroupsGroupArgs{...} }

type GetSecurityGroupsGroupArrayOutput

type GetSecurityGroupsGroupArrayOutput struct{ *pulumi.OutputState }

func (GetSecurityGroupsGroupArrayOutput) ElementType

func (GetSecurityGroupsGroupArrayOutput) Index

func (GetSecurityGroupsGroupArrayOutput) ToGetSecurityGroupsGroupArrayOutput

func (o GetSecurityGroupsGroupArrayOutput) ToGetSecurityGroupsGroupArrayOutput() GetSecurityGroupsGroupArrayOutput

func (GetSecurityGroupsGroupArrayOutput) ToGetSecurityGroupsGroupArrayOutputWithContext

func (o GetSecurityGroupsGroupArrayOutput) ToGetSecurityGroupsGroupArrayOutputWithContext(ctx context.Context) GetSecurityGroupsGroupArrayOutput

type GetSecurityGroupsGroupInput

type GetSecurityGroupsGroupInput interface {
	pulumi.Input

	ToGetSecurityGroupsGroupOutput() GetSecurityGroupsGroupOutput
	ToGetSecurityGroupsGroupOutputWithContext(context.Context) GetSecurityGroupsGroupOutput
}

GetSecurityGroupsGroupInput is an input type that accepts GetSecurityGroupsGroupArgs and GetSecurityGroupsGroupOutput values. You can construct a concrete instance of `GetSecurityGroupsGroupInput` via:

GetSecurityGroupsGroupArgs{...}

type GetSecurityGroupsGroupOutput

type GetSecurityGroupsGroupOutput struct{ *pulumi.OutputState }

func (GetSecurityGroupsGroupOutput) CreationTime

Creation time of the security group.

func (GetSecurityGroupsGroupOutput) Description

The description of the security group.

func (GetSecurityGroupsGroupOutput) ElementType

func (GetSecurityGroupsGroupOutput) Id

The ID of the security group.

func (GetSecurityGroupsGroupOutput) InnerAccess

Whether to allow inner network access.

func (GetSecurityGroupsGroupOutput) Name

The name of the security group.

func (GetSecurityGroupsGroupOutput) ResourceGroupId

func (o GetSecurityGroupsGroupOutput) ResourceGroupId() pulumi.StringOutput

The Id of resource group which the securityGroup belongs.

func (GetSecurityGroupsGroupOutput) SecurityGroupType

func (o GetSecurityGroupsGroupOutput) SecurityGroupType() pulumi.StringOutput

The type of the security group.

func (GetSecurityGroupsGroupOutput) Tags

A map of tags assigned to the ECS instances. It must be in the format: ```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/go/alicloud/ecs"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ecs.GetSecurityGroups(ctx, &ecs.GetSecurityGroupsArgs{
			Tags: map[string]interface{}{
				"tagKey1": "tagValue1",
				"tagKey2": "tagValue2",
			},
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

func (GetSecurityGroupsGroupOutput) ToGetSecurityGroupsGroupOutput

func (o GetSecurityGroupsGroupOutput) ToGetSecurityGroupsGroupOutput() GetSecurityGroupsGroupOutput

func (GetSecurityGroupsGroupOutput) ToGetSecurityGroupsGroupOutputWithContext

func (o GetSecurityGroupsGroupOutput) ToGetSecurityGroupsGroupOutputWithContext(ctx context.Context) GetSecurityGroupsGroupOutput

func (GetSecurityGroupsGroupOutput) VpcId

Used to retrieve security groups that belong to the specified VPC ID.

type GetSecurityGroupsOutputArgs

type GetSecurityGroupsOutputArgs struct {
	EnableDetails pulumi.BoolPtrInput `pulumi:"enableDetails"`
	// A list of Security Group IDs.
	Ids pulumi.StringArrayInput `pulumi:"ids"`
	// A regex string to filter the resulting security groups by their names.
	NameRegex  pulumi.StringPtrInput `pulumi:"nameRegex"`
	OutputFile pulumi.StringPtrInput `pulumi:"outputFile"`
	PageNumber pulumi.IntPtrInput    `pulumi:"pageNumber"`
	PageSize   pulumi.IntPtrInput    `pulumi:"pageSize"`
	// The Id of resource group which the securityGroup belongs.
	ResourceGroupId pulumi.StringPtrInput `pulumi:"resourceGroupId"`
	// A map of tags assigned to the ECS instances. It must be in the format:
	// “`go
	// package main
	//
	// import (
	// 	"github.com/pulumi/pulumi-alicloud/sdk/go/alicloud/ecs"
	// 	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
	// 	"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"
	// )
	//
	// func main() {
	// 	pulumi.Run(func(ctx *pulumi.Context) error {
	// 		_, err := ecs.GetSecurityGroups(ctx, &ecs.GetSecurityGroupsArgs{
	// 			Tags: map[string]interface{}{
	// 				"tagKey1": "tagValue1",
	// 				"tagKey2": "tagValue2",
	// 			},
	// 		}, nil)
	// 		if err != nil {
	// 			return err
	// 		}
	// 		return nil
	// 	})
	// }
	// “`
	Tags pulumi.MapInput `pulumi:"tags"`
	// Used to retrieve security groups that belong to the specified VPC ID.
	VpcId pulumi.StringPtrInput `pulumi:"vpcId"`
}

A collection of arguments for invoking getSecurityGroups.

func (GetSecurityGroupsOutputArgs) ElementType

type GetSecurityGroupsResult

type GetSecurityGroupsResult struct {
	EnableDetails *bool `pulumi:"enableDetails"`
	// A list of Security Groups. Each element contains the following attributes:
	Groups []GetSecurityGroupsGroup `pulumi:"groups"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// A list of Security Group IDs.
	Ids       []string `pulumi:"ids"`
	NameRegex *string  `pulumi:"nameRegex"`
	// A list of Security Group names.
	Names      []string `pulumi:"names"`
	OutputFile *string  `pulumi:"outputFile"`
	PageNumber *int     `pulumi:"pageNumber"`
	PageSize   *int     `pulumi:"pageSize"`
	// The Id of resource group which the securityGroup belongs.
	ResourceGroupId *string `pulumi:"resourceGroupId"`
	// A map of tags assigned to the ECS instance.
	Tags       map[string]interface{} `pulumi:"tags"`
	TotalCount int                    `pulumi:"totalCount"`
	// The ID of the VPC that owns the security group.
	VpcId *string `pulumi:"vpcId"`
}

A collection of values returned by getSecurityGroups.

func GetSecurityGroups

func GetSecurityGroups(ctx *pulumi.Context, args *GetSecurityGroupsArgs, opts ...pulumi.InvokeOption) (*GetSecurityGroupsResult, error)

This data source provides a list of Security Groups in an Alibaba Cloud account according to the specified filters.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/go/alicloud/ecs"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/vpc"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ecs.GetSecurityGroups(ctx, &ecs.GetSecurityGroupsArgs{
			NameRegex:  pulumi.StringRef("^web-"),
			OutputFile: pulumi.StringRef("web_access.json"),
		}, nil)
		if err != nil {
			return err
		}
		primaryVpcDs, err := vpc.NewNetwork(ctx, "primaryVpcDs", nil)
		if err != nil {
			return err
		}
		primarySecGroupsDs := ecs.GetSecurityGroupsOutput(ctx, ecs.GetSecurityGroupsOutputArgs{
			VpcId: primaryVpcDs.ID(),
		}, nil)
		ctx.Export("firstGroupId", primarySecGroupsDs.ApplyT(func(primarySecGroupsDs ecs.GetSecurityGroupsResult) (string, error) {
			return primarySecGroupsDs.Groups[0].Id, nil
		}).(pulumi.StringOutput))
		return nil
	})
}

```

type GetSecurityGroupsResultOutput

type GetSecurityGroupsResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getSecurityGroups.

func (GetSecurityGroupsResultOutput) ElementType

func (GetSecurityGroupsResultOutput) EnableDetails

func (GetSecurityGroupsResultOutput) Groups

A list of Security Groups. Each element contains the following attributes:

func (GetSecurityGroupsResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetSecurityGroupsResultOutput) Ids

A list of Security Group IDs.

func (GetSecurityGroupsResultOutput) NameRegex

func (GetSecurityGroupsResultOutput) Names

A list of Security Group names.

func (GetSecurityGroupsResultOutput) OutputFile

func (GetSecurityGroupsResultOutput) PageNumber

func (GetSecurityGroupsResultOutput) PageSize

func (GetSecurityGroupsResultOutput) ResourceGroupId

The Id of resource group which the securityGroup belongs.

func (GetSecurityGroupsResultOutput) Tags

A map of tags assigned to the ECS instance.

func (GetSecurityGroupsResultOutput) ToGetSecurityGroupsResultOutput

func (o GetSecurityGroupsResultOutput) ToGetSecurityGroupsResultOutput() GetSecurityGroupsResultOutput

func (GetSecurityGroupsResultOutput) ToGetSecurityGroupsResultOutputWithContext

func (o GetSecurityGroupsResultOutput) ToGetSecurityGroupsResultOutputWithContext(ctx context.Context) GetSecurityGroupsResultOutput

func (GetSecurityGroupsResultOutput) TotalCount

func (GetSecurityGroupsResultOutput) VpcId

The ID of the VPC that owns the security group.

type GetSnapshotsArgs

type GetSnapshotsArgs struct {
	Category *string `pulumi:"category"`
	DryRun   *bool   `pulumi:"dryRun"`
	// Whether the snapshot is encrypted or not.
	Encrypted *bool `pulumi:"encrypted"`
	// A list of snapshot IDs.
	Ids             []string `pulumi:"ids"`
	KmsKeyId        *string  `pulumi:"kmsKeyId"`
	NameRegex       *string  `pulumi:"nameRegex"`
	OutputFile      *string  `pulumi:"outputFile"`
	ResourceGroupId *string  `pulumi:"resourceGroupId"`
	SnapshotLinkId  *string  `pulumi:"snapshotLinkId"`
	SnapshotName    *string  `pulumi:"snapshotName"`
	SnapshotType    *string  `pulumi:"snapshotType"`
	// Source disk attribute. Value range: `System`,`Data`.
	SourceDiskType *string `pulumi:"sourceDiskType"`
	// The snapshot status. Value range: `progressing`, `accomplished` and `failed`.
	Status *string `pulumi:"status"`
	// A map of tags assigned to the snapshot.
	Tags map[string]interface{} `pulumi:"tags"`
	Type *string                `pulumi:"type"`
	// Whether the snapshots are used to create resources or not. Value range: `image`, `disk`, `imageDisk` and `none`.
	Usage *string `pulumi:"usage"`
}

A collection of arguments for invoking getSnapshots.

type GetSnapshotsOutputArgs

type GetSnapshotsOutputArgs struct {
	Category pulumi.StringPtrInput `pulumi:"category"`
	DryRun   pulumi.BoolPtrInput   `pulumi:"dryRun"`
	// Whether the snapshot is encrypted or not.
	Encrypted pulumi.BoolPtrInput `pulumi:"encrypted"`
	// A list of snapshot IDs.
	Ids             pulumi.StringArrayInput `pulumi:"ids"`
	KmsKeyId        pulumi.StringPtrInput   `pulumi:"kmsKeyId"`
	NameRegex       pulumi.StringPtrInput   `pulumi:"nameRegex"`
	OutputFile      pulumi.StringPtrInput   `pulumi:"outputFile"`
	ResourceGroupId pulumi.StringPtrInput   `pulumi:"resourceGroupId"`
	SnapshotLinkId  pulumi.StringPtrInput   `pulumi:"snapshotLinkId"`
	SnapshotName    pulumi.StringPtrInput   `pulumi:"snapshotName"`
	SnapshotType    pulumi.StringPtrInput   `pulumi:"snapshotType"`
	// Source disk attribute. Value range: `System`,`Data`.
	SourceDiskType pulumi.StringPtrInput `pulumi:"sourceDiskType"`
	// The snapshot status. Value range: `progressing`, `accomplished` and `failed`.
	Status pulumi.StringPtrInput `pulumi:"status"`
	// A map of tags assigned to the snapshot.
	Tags pulumi.MapInput       `pulumi:"tags"`
	Type pulumi.StringPtrInput `pulumi:"type"`
	// Whether the snapshots are used to create resources or not. Value range: `image`, `disk`, `imageDisk` and `none`.
	Usage pulumi.StringPtrInput `pulumi:"usage"`
}

A collection of arguments for invoking getSnapshots.

func (GetSnapshotsOutputArgs) ElementType

func (GetSnapshotsOutputArgs) ElementType() reflect.Type

type GetSnapshotsResult

type GetSnapshotsResult struct {
	Category *string `pulumi:"category"`
	DryRun   *bool   `pulumi:"dryRun"`
	// Whether the snapshot is encrypted or not.
	Encrypted *bool `pulumi:"encrypted"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// A list of snapshot IDs.
	Ids       []string `pulumi:"ids"`
	KmsKeyId  *string  `pulumi:"kmsKeyId"`
	NameRegex *string  `pulumi:"nameRegex"`
	// A list of snapshots names.
	Names           []string `pulumi:"names"`
	OutputFile      *string  `pulumi:"outputFile"`
	ResourceGroupId *string  `pulumi:"resourceGroupId"`
	SnapshotLinkId  *string  `pulumi:"snapshotLinkId"`
	SnapshotName    *string  `pulumi:"snapshotName"`
	SnapshotType    *string  `pulumi:"snapshotType"`
	// A list of snapshots. Each element contains the following attributes:
	Snapshots []GetSnapshotsSnapshot `pulumi:"snapshots"`
	// Source disk attribute. Value range: `System`,`Data`.
	SourceDiskType *string `pulumi:"sourceDiskType"`
	// The snapshot status. Value range: `progressing`, `accomplished` and `failed`.
	Status *string `pulumi:"status"`
	// A map of tags assigned to the snapshot.
	Tags map[string]interface{} `pulumi:"tags"`
	Type *string                `pulumi:"type"`
	// Whether the snapshots are used to create resources or not. Value range: `image`, `disk`, `imageDisk` and `none`.
	Usage *string `pulumi:"usage"`
}

A collection of values returned by getSnapshots.

func GetSnapshots

func GetSnapshots(ctx *pulumi.Context, args *GetSnapshotsArgs, opts ...pulumi.InvokeOption) (*GetSnapshotsResult, error)

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/go/alicloud/ecs"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ecs.GetSnapshots(ctx, &ecs.GetSnapshotsArgs{
			Ids: []string{
				"s-123456890abcdef",
			},
			NameRegex: pulumi.StringRef("tf-testAcc-snapshot"),
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

``` ## Argument Reference

The following arguments are supported:

* `instanceId` - (Optional) The specified instance ID. * `diskId` - (Optional) The specified disk ID. * `encrypted` - (Optional) Queries the encrypted snapshots. Optional values: `true`: Encrypted snapshots. `false`: No encryption attribute limit. Default value: `false`. * `ids` - (Optional) A list of snapshot IDs. * `nameRegex` - (Optional) A regex string to filter results by snapshot name. * `status` - (Optional) The specified snapshot status. Default value: `all`. Optional values:

  • progressing: The snapshots are being created.
  • accomplished: The snapshots are ready to use.
  • failed: The snapshot creation failed.
  • all: All status.

* `type` - (Optional) The snapshot category. Default value: `all`. Optional values:

  • auto: Auto snapshots.
  • user: Manual snapshots.
  • all: Auto and manual snapshots.

* `sourceDiskType` - (Optional) The type of source disk:

  • System: The snapshots are created for system disks.
  • Data: The snapshots are created for data disks.

* `usage` - (Optional) The usage of the snapshot:

  • image: The snapshots are used to create custom images.
  • disk: The snapshots are used to CreateDisk.
  • mage_disk: The snapshots are used to create custom images and data disks.
  • none: The snapshots are not used yet.

* `tags` - (Optional) A map of tags assigned to snapshots. * `outputFile` - (Optional) The name of output file that saves the filter results.

type GetSnapshotsResultOutput

type GetSnapshotsResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getSnapshots.

func (GetSnapshotsResultOutput) Category

func (GetSnapshotsResultOutput) DryRun

func (GetSnapshotsResultOutput) ElementType

func (GetSnapshotsResultOutput) ElementType() reflect.Type

func (GetSnapshotsResultOutput) Encrypted

Whether the snapshot is encrypted or not.

func (GetSnapshotsResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetSnapshotsResultOutput) Ids

A list of snapshot IDs.

func (GetSnapshotsResultOutput) KmsKeyId

func (GetSnapshotsResultOutput) NameRegex

func (GetSnapshotsResultOutput) Names

A list of snapshots names.

func (GetSnapshotsResultOutput) OutputFile

func (GetSnapshotsResultOutput) ResourceGroupId

func (o GetSnapshotsResultOutput) ResourceGroupId() pulumi.StringPtrOutput

func (GetSnapshotsResultOutput) SnapshotLinkId

func (o GetSnapshotsResultOutput) SnapshotLinkId() pulumi.StringPtrOutput

func (GetSnapshotsResultOutput) SnapshotName

func (GetSnapshotsResultOutput) SnapshotType

func (GetSnapshotsResultOutput) Snapshots

A list of snapshots. Each element contains the following attributes:

func (GetSnapshotsResultOutput) SourceDiskType

func (o GetSnapshotsResultOutput) SourceDiskType() pulumi.StringPtrOutput

Source disk attribute. Value range: `System`,`Data`.

func (GetSnapshotsResultOutput) Status

The snapshot status. Value range: `progressing`, `accomplished` and `failed`.

func (GetSnapshotsResultOutput) Tags

A map of tags assigned to the snapshot.

func (GetSnapshotsResultOutput) ToGetSnapshotsResultOutput

func (o GetSnapshotsResultOutput) ToGetSnapshotsResultOutput() GetSnapshotsResultOutput

func (GetSnapshotsResultOutput) ToGetSnapshotsResultOutputWithContext

func (o GetSnapshotsResultOutput) ToGetSnapshotsResultOutputWithContext(ctx context.Context) GetSnapshotsResultOutput

func (GetSnapshotsResultOutput) Type

func (GetSnapshotsResultOutput) Usage

Whether the snapshots are used to create resources or not. Value range: `image`, `disk`, `imageDisk` and `none`.

type GetSnapshotsSnapshot

type GetSnapshotsSnapshot struct {
	Category string `pulumi:"category"`
	// Creation time. Time of creation. It is represented according to ISO8601, and UTC time is used. Format: YYYY-MM-DDThh:mmZ.
	CreationTime string `pulumi:"creationTime"`
	// Description of the snapshot.
	Description string `pulumi:"description"`
	DiskId      string `pulumi:"diskId"`
	// Whether the snapshot is encrypted or not.
	Encrypted bool `pulumi:"encrypted"`
	// ID of the snapshot.
	Id                         string `pulumi:"id"`
	InstantAccess              bool   `pulumi:"instantAccess"`
	InstantAccessRetentionDays int    `pulumi:"instantAccessRetentionDays"`
	// Name of the snapshot.
	Name string `pulumi:"name"`
	// Product code on the image market place.
	ProductCode string `pulumi:"productCode"`
	// Progress of snapshot creation, presented in percentage.
	Progress string `pulumi:"progress"`
	// The remaining time of a snapshot creation task, in seconds.
	RemainTime      int    `pulumi:"remainTime"`
	ResourceGroupId string `pulumi:"resourceGroupId"`
	// The number of days that an automatic snapshot retains in the console for your instance.
	RetentionDays int    `pulumi:"retentionDays"`
	SnapshotId    string `pulumi:"snapshotId"`
	SnapshotName  string `pulumi:"snapshotName"`
	SnapshotSn    string `pulumi:"snapshotSn"`
	SnapshotType  string `pulumi:"snapshotType"`
	// Source disk ID, which is retained after the source disk of the snapshot is deleted.
	SourceDiskId string `pulumi:"sourceDiskId"`
	// Size of the source disk, measured in GB.
	SourceDiskSize string `pulumi:"sourceDiskSize"`
	// Source disk attribute. Value range: `System`,`Data`.
	SourceDiskType    string `pulumi:"sourceDiskType"`
	SourceStorageType string `pulumi:"sourceStorageType"`
	// The snapshot status. Value range: `progressing`, `accomplished` and `failed`.
	Status string `pulumi:"status"`
	// A map of tags assigned to the snapshot.
	Tags map[string]interface{} `pulumi:"tags"`
	Type string                 `pulumi:"type"`
	// Whether the snapshots are used to create resources or not. Value range: `image`, `disk`, `imageDisk` and `none`.
	Usage string `pulumi:"usage"`
}

type GetSnapshotsSnapshotArgs

type GetSnapshotsSnapshotArgs struct {
	Category pulumi.StringInput `pulumi:"category"`
	// Creation time. Time of creation. It is represented according to ISO8601, and UTC time is used. Format: YYYY-MM-DDThh:mmZ.
	CreationTime pulumi.StringInput `pulumi:"creationTime"`
	// Description of the snapshot.
	Description pulumi.StringInput `pulumi:"description"`
	DiskId      pulumi.StringInput `pulumi:"diskId"`
	// Whether the snapshot is encrypted or not.
	Encrypted pulumi.BoolInput `pulumi:"encrypted"`
	// ID of the snapshot.
	Id                         pulumi.StringInput `pulumi:"id"`
	InstantAccess              pulumi.BoolInput   `pulumi:"instantAccess"`
	InstantAccessRetentionDays pulumi.IntInput    `pulumi:"instantAccessRetentionDays"`
	// Name of the snapshot.
	Name pulumi.StringInput `pulumi:"name"`
	// Product code on the image market place.
	ProductCode pulumi.StringInput `pulumi:"productCode"`
	// Progress of snapshot creation, presented in percentage.
	Progress pulumi.StringInput `pulumi:"progress"`
	// The remaining time of a snapshot creation task, in seconds.
	RemainTime      pulumi.IntInput    `pulumi:"remainTime"`
	ResourceGroupId pulumi.StringInput `pulumi:"resourceGroupId"`
	// The number of days that an automatic snapshot retains in the console for your instance.
	RetentionDays pulumi.IntInput    `pulumi:"retentionDays"`
	SnapshotId    pulumi.StringInput `pulumi:"snapshotId"`
	SnapshotName  pulumi.StringInput `pulumi:"snapshotName"`
	SnapshotSn    pulumi.StringInput `pulumi:"snapshotSn"`
	SnapshotType  pulumi.StringInput `pulumi:"snapshotType"`
	// Source disk ID, which is retained after the source disk of the snapshot is deleted.
	SourceDiskId pulumi.StringInput `pulumi:"sourceDiskId"`
	// Size of the source disk, measured in GB.
	SourceDiskSize pulumi.StringInput `pulumi:"sourceDiskSize"`
	// Source disk attribute. Value range: `System`,`Data`.
	SourceDiskType    pulumi.StringInput `pulumi:"sourceDiskType"`
	SourceStorageType pulumi.StringInput `pulumi:"sourceStorageType"`
	// The snapshot status. Value range: `progressing`, `accomplished` and `failed`.
	Status pulumi.StringInput `pulumi:"status"`
	// A map of tags assigned to the snapshot.
	Tags pulumi.MapInput    `pulumi:"tags"`
	Type pulumi.StringInput `pulumi:"type"`
	// Whether the snapshots are used to create resources or not. Value range: `image`, `disk`, `imageDisk` and `none`.
	Usage pulumi.StringInput `pulumi:"usage"`
}

func (GetSnapshotsSnapshotArgs) ElementType

func (GetSnapshotsSnapshotArgs) ElementType() reflect.Type

func (GetSnapshotsSnapshotArgs) ToGetSnapshotsSnapshotOutput

func (i GetSnapshotsSnapshotArgs) ToGetSnapshotsSnapshotOutput() GetSnapshotsSnapshotOutput

func (GetSnapshotsSnapshotArgs) ToGetSnapshotsSnapshotOutputWithContext

func (i GetSnapshotsSnapshotArgs) ToGetSnapshotsSnapshotOutputWithContext(ctx context.Context) GetSnapshotsSnapshotOutput

type GetSnapshotsSnapshotArray

type GetSnapshotsSnapshotArray []GetSnapshotsSnapshotInput

func (GetSnapshotsSnapshotArray) ElementType

func (GetSnapshotsSnapshotArray) ElementType() reflect.Type

func (GetSnapshotsSnapshotArray) ToGetSnapshotsSnapshotArrayOutput

func (i GetSnapshotsSnapshotArray) ToGetSnapshotsSnapshotArrayOutput() GetSnapshotsSnapshotArrayOutput

func (GetSnapshotsSnapshotArray) ToGetSnapshotsSnapshotArrayOutputWithContext

func (i GetSnapshotsSnapshotArray) ToGetSnapshotsSnapshotArrayOutputWithContext(ctx context.Context) GetSnapshotsSnapshotArrayOutput

type GetSnapshotsSnapshotArrayInput

type GetSnapshotsSnapshotArrayInput interface {
	pulumi.Input

	ToGetSnapshotsSnapshotArrayOutput() GetSnapshotsSnapshotArrayOutput
	ToGetSnapshotsSnapshotArrayOutputWithContext(context.Context) GetSnapshotsSnapshotArrayOutput
}

GetSnapshotsSnapshotArrayInput is an input type that accepts GetSnapshotsSnapshotArray and GetSnapshotsSnapshotArrayOutput values. You can construct a concrete instance of `GetSnapshotsSnapshotArrayInput` via:

GetSnapshotsSnapshotArray{ GetSnapshotsSnapshotArgs{...} }

type GetSnapshotsSnapshotArrayOutput

type GetSnapshotsSnapshotArrayOutput struct{ *pulumi.OutputState }

func (GetSnapshotsSnapshotArrayOutput) ElementType

func (GetSnapshotsSnapshotArrayOutput) Index

func (GetSnapshotsSnapshotArrayOutput) ToGetSnapshotsSnapshotArrayOutput

func (o GetSnapshotsSnapshotArrayOutput) ToGetSnapshotsSnapshotArrayOutput() GetSnapshotsSnapshotArrayOutput

func (GetSnapshotsSnapshotArrayOutput) ToGetSnapshotsSnapshotArrayOutputWithContext

func (o GetSnapshotsSnapshotArrayOutput) ToGetSnapshotsSnapshotArrayOutputWithContext(ctx context.Context) GetSnapshotsSnapshotArrayOutput

type GetSnapshotsSnapshotInput

type GetSnapshotsSnapshotInput interface {
	pulumi.Input

	ToGetSnapshotsSnapshotOutput() GetSnapshotsSnapshotOutput
	ToGetSnapshotsSnapshotOutputWithContext(context.Context) GetSnapshotsSnapshotOutput
}

GetSnapshotsSnapshotInput is an input type that accepts GetSnapshotsSnapshotArgs and GetSnapshotsSnapshotOutput values. You can construct a concrete instance of `GetSnapshotsSnapshotInput` via:

GetSnapshotsSnapshotArgs{...}

type GetSnapshotsSnapshotOutput

type GetSnapshotsSnapshotOutput struct{ *pulumi.OutputState }

func (GetSnapshotsSnapshotOutput) Category

func (GetSnapshotsSnapshotOutput) CreationTime

Creation time. Time of creation. It is represented according to ISO8601, and UTC time is used. Format: YYYY-MM-DDThh:mmZ.

func (GetSnapshotsSnapshotOutput) Description

Description of the snapshot.

func (GetSnapshotsSnapshotOutput) DiskId

func (GetSnapshotsSnapshotOutput) ElementType

func (GetSnapshotsSnapshotOutput) ElementType() reflect.Type

func (GetSnapshotsSnapshotOutput) Encrypted

Whether the snapshot is encrypted or not.

func (GetSnapshotsSnapshotOutput) Id

ID of the snapshot.

func (GetSnapshotsSnapshotOutput) InstantAccess

func (o GetSnapshotsSnapshotOutput) InstantAccess() pulumi.BoolOutput

func (GetSnapshotsSnapshotOutput) InstantAccessRetentionDays

func (o GetSnapshotsSnapshotOutput) InstantAccessRetentionDays() pulumi.IntOutput

func (GetSnapshotsSnapshotOutput) Name

Name of the snapshot.

func (GetSnapshotsSnapshotOutput) ProductCode

Product code on the image market place.

func (GetSnapshotsSnapshotOutput) Progress

Progress of snapshot creation, presented in percentage.

func (GetSnapshotsSnapshotOutput) RemainTime

The remaining time of a snapshot creation task, in seconds.

func (GetSnapshotsSnapshotOutput) ResourceGroupId

func (o GetSnapshotsSnapshotOutput) ResourceGroupId() pulumi.StringOutput

func (GetSnapshotsSnapshotOutput) RetentionDays

func (o GetSnapshotsSnapshotOutput) RetentionDays() pulumi.IntOutput

The number of days that an automatic snapshot retains in the console for your instance.

func (GetSnapshotsSnapshotOutput) SnapshotId

func (GetSnapshotsSnapshotOutput) SnapshotName

func (GetSnapshotsSnapshotOutput) SnapshotSn

func (GetSnapshotsSnapshotOutput) SnapshotType

func (GetSnapshotsSnapshotOutput) SourceDiskId

Source disk ID, which is retained after the source disk of the snapshot is deleted.

func (GetSnapshotsSnapshotOutput) SourceDiskSize

func (o GetSnapshotsSnapshotOutput) SourceDiskSize() pulumi.StringOutput

Size of the source disk, measured in GB.

func (GetSnapshotsSnapshotOutput) SourceDiskType

func (o GetSnapshotsSnapshotOutput) SourceDiskType() pulumi.StringOutput

Source disk attribute. Value range: `System`,`Data`.

func (GetSnapshotsSnapshotOutput) SourceStorageType

func (o GetSnapshotsSnapshotOutput) SourceStorageType() pulumi.StringOutput

func (GetSnapshotsSnapshotOutput) Status

The snapshot status. Value range: `progressing`, `accomplished` and `failed`.

func (GetSnapshotsSnapshotOutput) Tags

A map of tags assigned to the snapshot.

func (GetSnapshotsSnapshotOutput) ToGetSnapshotsSnapshotOutput

func (o GetSnapshotsSnapshotOutput) ToGetSnapshotsSnapshotOutput() GetSnapshotsSnapshotOutput

func (GetSnapshotsSnapshotOutput) ToGetSnapshotsSnapshotOutputWithContext

func (o GetSnapshotsSnapshotOutput) ToGetSnapshotsSnapshotOutputWithContext(ctx context.Context) GetSnapshotsSnapshotOutput

func (GetSnapshotsSnapshotOutput) Type

func (GetSnapshotsSnapshotOutput) Usage

Whether the snapshots are used to create resources or not. Value range: `image`, `disk`, `imageDisk` and `none`.

type HpcCluster

type HpcCluster struct {
	pulumi.CustomResourceState

	// The description of ECS Hpc Cluster.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// The name of ECS Hpc Cluster.
	Name pulumi.StringOutput `pulumi:"name"`
}

Provides a ECS Hpc Cluster resource.

For information about ECS Hpc Cluster and how to use it, see [What is Hpc Cluster](https://www.alibabacloud.com/help/en/doc-detail/109138.htm).

> **NOTE:** Available in v1.116.0+.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ecs.NewHpcCluster(ctx, "example", &ecs.HpcClusterArgs{
			Description: pulumi.String("For Terraform Test"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

ECS Hpc Cluster can be imported using the id, e.g.

```sh

$ pulumi import alicloud:ecs/hpcCluster:HpcCluster example <id>

```

func GetHpcCluster

func GetHpcCluster(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *HpcClusterState, opts ...pulumi.ResourceOption) (*HpcCluster, error)

GetHpcCluster gets an existing HpcCluster 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 NewHpcCluster

func NewHpcCluster(ctx *pulumi.Context,
	name string, args *HpcClusterArgs, opts ...pulumi.ResourceOption) (*HpcCluster, error)

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

func (*HpcCluster) ElementType

func (*HpcCluster) ElementType() reflect.Type

func (*HpcCluster) ToHpcClusterOutput

func (i *HpcCluster) ToHpcClusterOutput() HpcClusterOutput

func (*HpcCluster) ToHpcClusterOutputWithContext

func (i *HpcCluster) ToHpcClusterOutputWithContext(ctx context.Context) HpcClusterOutput

type HpcClusterArgs

type HpcClusterArgs struct {
	// The description of ECS Hpc Cluster.
	Description pulumi.StringPtrInput
	// The name of ECS Hpc Cluster.
	Name pulumi.StringPtrInput
}

The set of arguments for constructing a HpcCluster resource.

func (HpcClusterArgs) ElementType

func (HpcClusterArgs) ElementType() reflect.Type

type HpcClusterArray

type HpcClusterArray []HpcClusterInput

func (HpcClusterArray) ElementType

func (HpcClusterArray) ElementType() reflect.Type

func (HpcClusterArray) ToHpcClusterArrayOutput

func (i HpcClusterArray) ToHpcClusterArrayOutput() HpcClusterArrayOutput

func (HpcClusterArray) ToHpcClusterArrayOutputWithContext

func (i HpcClusterArray) ToHpcClusterArrayOutputWithContext(ctx context.Context) HpcClusterArrayOutput

type HpcClusterArrayInput

type HpcClusterArrayInput interface {
	pulumi.Input

	ToHpcClusterArrayOutput() HpcClusterArrayOutput
	ToHpcClusterArrayOutputWithContext(context.Context) HpcClusterArrayOutput
}

HpcClusterArrayInput is an input type that accepts HpcClusterArray and HpcClusterArrayOutput values. You can construct a concrete instance of `HpcClusterArrayInput` via:

HpcClusterArray{ HpcClusterArgs{...} }

type HpcClusterArrayOutput

type HpcClusterArrayOutput struct{ *pulumi.OutputState }

func (HpcClusterArrayOutput) ElementType

func (HpcClusterArrayOutput) ElementType() reflect.Type

func (HpcClusterArrayOutput) Index

func (HpcClusterArrayOutput) ToHpcClusterArrayOutput

func (o HpcClusterArrayOutput) ToHpcClusterArrayOutput() HpcClusterArrayOutput

func (HpcClusterArrayOutput) ToHpcClusterArrayOutputWithContext

func (o HpcClusterArrayOutput) ToHpcClusterArrayOutputWithContext(ctx context.Context) HpcClusterArrayOutput

type HpcClusterInput

type HpcClusterInput interface {
	pulumi.Input

	ToHpcClusterOutput() HpcClusterOutput
	ToHpcClusterOutputWithContext(ctx context.Context) HpcClusterOutput
}

type HpcClusterMap

type HpcClusterMap map[string]HpcClusterInput

func (HpcClusterMap) ElementType

func (HpcClusterMap) ElementType() reflect.Type

func (HpcClusterMap) ToHpcClusterMapOutput

func (i HpcClusterMap) ToHpcClusterMapOutput() HpcClusterMapOutput

func (HpcClusterMap) ToHpcClusterMapOutputWithContext

func (i HpcClusterMap) ToHpcClusterMapOutputWithContext(ctx context.Context) HpcClusterMapOutput

type HpcClusterMapInput

type HpcClusterMapInput interface {
	pulumi.Input

	ToHpcClusterMapOutput() HpcClusterMapOutput
	ToHpcClusterMapOutputWithContext(context.Context) HpcClusterMapOutput
}

HpcClusterMapInput is an input type that accepts HpcClusterMap and HpcClusterMapOutput values. You can construct a concrete instance of `HpcClusterMapInput` via:

HpcClusterMap{ "key": HpcClusterArgs{...} }

type HpcClusterMapOutput

type HpcClusterMapOutput struct{ *pulumi.OutputState }

func (HpcClusterMapOutput) ElementType

func (HpcClusterMapOutput) ElementType() reflect.Type

func (HpcClusterMapOutput) MapIndex

func (HpcClusterMapOutput) ToHpcClusterMapOutput

func (o HpcClusterMapOutput) ToHpcClusterMapOutput() HpcClusterMapOutput

func (HpcClusterMapOutput) ToHpcClusterMapOutputWithContext

func (o HpcClusterMapOutput) ToHpcClusterMapOutputWithContext(ctx context.Context) HpcClusterMapOutput

type HpcClusterOutput

type HpcClusterOutput struct{ *pulumi.OutputState }

func (HpcClusterOutput) Description

func (o HpcClusterOutput) Description() pulumi.StringPtrOutput

The description of ECS Hpc Cluster.

func (HpcClusterOutput) ElementType

func (HpcClusterOutput) ElementType() reflect.Type

func (HpcClusterOutput) Name

The name of ECS Hpc Cluster.

func (HpcClusterOutput) ToHpcClusterOutput

func (o HpcClusterOutput) ToHpcClusterOutput() HpcClusterOutput

func (HpcClusterOutput) ToHpcClusterOutputWithContext

func (o HpcClusterOutput) ToHpcClusterOutputWithContext(ctx context.Context) HpcClusterOutput

type HpcClusterState

type HpcClusterState struct {
	// The description of ECS Hpc Cluster.
	Description pulumi.StringPtrInput
	// The name of ECS Hpc Cluster.
	Name pulumi.StringPtrInput
}

func (HpcClusterState) ElementType

func (HpcClusterState) ElementType() reflect.Type

type Image

type Image struct {
	pulumi.CustomResourceState

	// Specifies the architecture of the system disk after you specify a data disk snapshot as the data source of the system disk for creating an image. Valid values: `i386` , Default is `x8664`.
	Architecture       pulumi.StringPtrOutput `pulumi:"architecture"`
	DeleteAutoSnapshot pulumi.BoolPtrOutput   `pulumi:"deleteAutoSnapshot"`
	// The description of the image. It must be 2 to 256 characters in length and must not start with http:// or https://. Default value: null.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// Description of the system with disks and snapshots under the image.
	DiskDeviceMappings ImageDiskDeviceMappingArrayOutput `pulumi:"diskDeviceMappings"`
	// Indicates whether to force delete the custom image, Default is `false`.
	// - true:Force deletes the custom image, regardless of whether the image is currently being used by other instances.
	// - false:Verifies that the image is not currently in use by any other instances before deleting the image.
	Force pulumi.BoolPtrOutput `pulumi:"force"`
	// The image name. It must be 2 to 128 characters in length, and must begin with a letter or Chinese character (beginning with http:// or https:// is not allowed). It can contain digits, colons (:), underscores (_), or hyphens (-). Default value: null.
	ImageName pulumi.StringOutput `pulumi:"imageName"`
	// The instance ID.
	InstanceId pulumi.StringPtrOutput `pulumi:"instanceId"`
	// Deprecated: Attribute 'name' has been deprecated from version 1.69.0. Use `image_name` instead.
	Name pulumi.StringOutput `pulumi:"name"`
	// Specifies the operating system platform of the system disk after you specify a data disk snapshot as the data source of the system disk for creating an image. Valid values: `CentOS`, `Ubuntu`, `SUSE`, `OpenSUSE`, `RedHat`, `Debian`, `CoreOS`, `Aliyun Linux`, `Windows Server 2003`, `Windows Server 2008`, `Windows Server 2012`, `Windows 7`, Default is `Others Linux`.
	Platform pulumi.StringPtrOutput `pulumi:"platform"`
	// The ID of the enterprise resource group to which a custom image belongs
	ResourceGroupId pulumi.StringPtrOutput `pulumi:"resourceGroupId"`
	// Specifies a snapshot that is used to create a combined custom image.
	SnapshotId pulumi.StringPtrOutput `pulumi:"snapshotId"`
	// The tag value of an image. The value of N ranges from 1 to 20.
	Tags pulumi.MapOutput `pulumi:"tags"`
}

Creates a custom image. You can then use a custom image to create ECS instances (RunInstances) or change the system disk for an existing instance (ReplaceSystemDisk).

> **NOTE:** If you want to create a template from an ECS instance, you can specify the instance ID (InstanceId) to create a custom image. You must make sure that the status of the specified instance is Running or Stopped. After a successful invocation, each disk of the specified instance has a new snapshot created.

> **NOTE:** If you want to create a custom image based on the system disk of your ECS instance, you can specify one of the system disk snapshots (SnapshotId) to create a custom image. However, the specified snapshot cannot be created on or before July 15, 2013.

> **NOTE:** If you want to combine snapshots of multiple disks into an image template, you can specify DiskDeviceMapping to create a custom image.

> **NOTE:** Available in 1.64.0+

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ecs.NewImage(ctx, "default", &ecs.ImageArgs{
			Architecture:    pulumi.String("x86_64"),
			Description:     pulumi.String("test-image"),
			ImageName:       pulumi.String("test-image"),
			InstanceId:      pulumi.String("i-bp1g6zv0ce8oghu7k***"),
			Platform:        pulumi.String("CentOS"),
			ResourceGroupId: pulumi.String("rg-bp67acfmxazb4ph***"),
			Tags: pulumi.AnyMap{
				"FinanceDept": pulumi.Any("FinanceDeptJoshua"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

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

```sh

$ pulumi import alicloud:ecs/image:Image default m-uf66871ape***yg1q***

```

func GetImage

func GetImage(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ImageState, opts ...pulumi.ResourceOption) (*Image, error)

GetImage gets an existing Image 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 NewImage

func NewImage(ctx *pulumi.Context,
	name string, args *ImageArgs, opts ...pulumi.ResourceOption) (*Image, error)

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

func (*Image) ElementType

func (*Image) ElementType() reflect.Type

func (*Image) ToImageOutput

func (i *Image) ToImageOutput() ImageOutput

func (*Image) ToImageOutputWithContext

func (i *Image) ToImageOutputWithContext(ctx context.Context) ImageOutput

type ImageArgs

type ImageArgs struct {
	// Specifies the architecture of the system disk after you specify a data disk snapshot as the data source of the system disk for creating an image. Valid values: `i386` , Default is `x8664`.
	Architecture       pulumi.StringPtrInput
	DeleteAutoSnapshot pulumi.BoolPtrInput
	// The description of the image. It must be 2 to 256 characters in length and must not start with http:// or https://. Default value: null.
	Description pulumi.StringPtrInput
	// Description of the system with disks and snapshots under the image.
	DiskDeviceMappings ImageDiskDeviceMappingArrayInput
	// Indicates whether to force delete the custom image, Default is `false`.
	// - true:Force deletes the custom image, regardless of whether the image is currently being used by other instances.
	// - false:Verifies that the image is not currently in use by any other instances before deleting the image.
	Force pulumi.BoolPtrInput
	// The image name. It must be 2 to 128 characters in length, and must begin with a letter or Chinese character (beginning with http:// or https:// is not allowed). It can contain digits, colons (:), underscores (_), or hyphens (-). Default value: null.
	ImageName pulumi.StringPtrInput
	// The instance ID.
	InstanceId pulumi.StringPtrInput
	// Deprecated: Attribute 'name' has been deprecated from version 1.69.0. Use `image_name` instead.
	Name pulumi.StringPtrInput
	// Specifies the operating system platform of the system disk after you specify a data disk snapshot as the data source of the system disk for creating an image. Valid values: `CentOS`, `Ubuntu`, `SUSE`, `OpenSUSE`, `RedHat`, `Debian`, `CoreOS`, `Aliyun Linux`, `Windows Server 2003`, `Windows Server 2008`, `Windows Server 2012`, `Windows 7`, Default is `Others Linux`.
	Platform pulumi.StringPtrInput
	// The ID of the enterprise resource group to which a custom image belongs
	ResourceGroupId pulumi.StringPtrInput
	// Specifies a snapshot that is used to create a combined custom image.
	SnapshotId pulumi.StringPtrInput
	// The tag value of an image. The value of N ranges from 1 to 20.
	Tags pulumi.MapInput
}

The set of arguments for constructing a Image resource.

func (ImageArgs) ElementType

func (ImageArgs) ElementType() reflect.Type

type ImageArray

type ImageArray []ImageInput

func (ImageArray) ElementType

func (ImageArray) ElementType() reflect.Type

func (ImageArray) ToImageArrayOutput

func (i ImageArray) ToImageArrayOutput() ImageArrayOutput

func (ImageArray) ToImageArrayOutputWithContext

func (i ImageArray) ToImageArrayOutputWithContext(ctx context.Context) ImageArrayOutput

type ImageArrayInput

type ImageArrayInput interface {
	pulumi.Input

	ToImageArrayOutput() ImageArrayOutput
	ToImageArrayOutputWithContext(context.Context) ImageArrayOutput
}

ImageArrayInput is an input type that accepts ImageArray and ImageArrayOutput values. You can construct a concrete instance of `ImageArrayInput` via:

ImageArray{ ImageArgs{...} }

type ImageArrayOutput

type ImageArrayOutput struct{ *pulumi.OutputState }

func (ImageArrayOutput) ElementType

func (ImageArrayOutput) ElementType() reflect.Type

func (ImageArrayOutput) Index

func (ImageArrayOutput) ToImageArrayOutput

func (o ImageArrayOutput) ToImageArrayOutput() ImageArrayOutput

func (ImageArrayOutput) ToImageArrayOutputWithContext

func (o ImageArrayOutput) ToImageArrayOutputWithContext(ctx context.Context) ImageArrayOutput

type ImageCopy

type ImageCopy struct {
	pulumi.CustomResourceState

	DeleteAutoSnapshot pulumi.BoolPtrOutput `pulumi:"deleteAutoSnapshot"`
	// The description of the image. It must be 2 to 256 characters in length and must not start with http:// or https://. Default value: null.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// Indicates whether to encrypt the image.
	Encrypted pulumi.BoolPtrOutput `pulumi:"encrypted"`
	// Indicates whether to force delete the custom image, Default is `false`.
	// - true:Force deletes the custom image, regardless of whether the image is currently being used by other instances.
	// - false:Verifies that the image is not currently in use by any other instances before deleting the image.
	Force pulumi.BoolPtrOutput `pulumi:"force"`
	// The image name. It must be 2 to 128 characters in length, and must begin with a letter or Chinese character (beginning with http:// or https:// is not allowed). It can contain digits, colons (:), underscores (_), or hyphens (-). Default value: null.
	ImageName pulumi.StringOutput `pulumi:"imageName"`
	// Key ID used to encrypt the image.
	KmsKeyId pulumi.StringPtrOutput `pulumi:"kmsKeyId"`
	// Deprecated: Attribute 'name' has been deprecated from version 1.69.0. Use `image_name` instead.
	Name pulumi.StringOutput `pulumi:"name"`
	// The source image ID.
	SourceImageId pulumi.StringOutput `pulumi:"sourceImageId"`
	// The ID of the region to which the source custom image belongs. You can call [DescribeRegions](https://www.alibabacloud.com/help/doc-detail/25609.htm) to view the latest regions of Alibaba Cloud.
	SourceRegionId pulumi.StringOutput `pulumi:"sourceRegionId"`
	// The tag value of an image. The value of N ranges from 1 to 20.
	Tags pulumi.MapOutput `pulumi:"tags"`
}

Copies a custom image from one region to another. You can use copied images to perform operations in the target region, such as creating instances (RunInstances) and replacing system disks (ReplaceSystemDisk).

> **NOTE:** You can only copy the custom image when it is in the Available state.

> **NOTE:** You can only copy the image belonging to your Alibaba Cloud account. Images cannot be copied from one account to another.

> **NOTE:** If the copying is not completed, you cannot call DeleteImage to delete the image but you can call CancelCopyImage to cancel the copying.

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

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ecs.NewImageCopy(ctx, "default", &ecs.ImageCopyArgs{
			Description:    pulumi.String("test-image"),
			ImageName:      pulumi.String("test-image"),
			SourceImageId:  pulumi.String("m-bp1gxyhdswlsn18tu***"),
			SourceRegionId: pulumi.String("cn-hangzhou"),
			Tags: pulumi.AnyMap{
				"FinanceDept": pulumi.Any("FinanceDeptJoshua"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ## Attributes Reference0

The following attributes are exported:

* `id` - ID of the image.

## Import

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

```sh

$ pulumi import alicloud:ecs/imageCopy:ImageCopy default m-uf66871ape***yg1q***

```

func GetImageCopy

func GetImageCopy(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ImageCopyState, opts ...pulumi.ResourceOption) (*ImageCopy, error)

GetImageCopy gets an existing ImageCopy 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 NewImageCopy

func NewImageCopy(ctx *pulumi.Context,
	name string, args *ImageCopyArgs, opts ...pulumi.ResourceOption) (*ImageCopy, error)

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

func (*ImageCopy) ElementType

func (*ImageCopy) ElementType() reflect.Type

func (*ImageCopy) ToImageCopyOutput

func (i *ImageCopy) ToImageCopyOutput() ImageCopyOutput

func (*ImageCopy) ToImageCopyOutputWithContext

func (i *ImageCopy) ToImageCopyOutputWithContext(ctx context.Context) ImageCopyOutput

type ImageCopyArgs

type ImageCopyArgs struct {
	DeleteAutoSnapshot pulumi.BoolPtrInput
	// The description of the image. It must be 2 to 256 characters in length and must not start with http:// or https://. Default value: null.
	Description pulumi.StringPtrInput
	// Indicates whether to encrypt the image.
	Encrypted pulumi.BoolPtrInput
	// Indicates whether to force delete the custom image, Default is `false`.
	// - true:Force deletes the custom image, regardless of whether the image is currently being used by other instances.
	// - false:Verifies that the image is not currently in use by any other instances before deleting the image.
	Force pulumi.BoolPtrInput
	// The image name. It must be 2 to 128 characters in length, and must begin with a letter or Chinese character (beginning with http:// or https:// is not allowed). It can contain digits, colons (:), underscores (_), or hyphens (-). Default value: null.
	ImageName pulumi.StringPtrInput
	// Key ID used to encrypt the image.
	KmsKeyId pulumi.StringPtrInput
	// Deprecated: Attribute 'name' has been deprecated from version 1.69.0. Use `image_name` instead.
	Name pulumi.StringPtrInput
	// The source image ID.
	SourceImageId pulumi.StringInput
	// The ID of the region to which the source custom image belongs. You can call [DescribeRegions](https://www.alibabacloud.com/help/doc-detail/25609.htm) to view the latest regions of Alibaba Cloud.
	SourceRegionId pulumi.StringInput
	// The tag value of an image. The value of N ranges from 1 to 20.
	Tags pulumi.MapInput
}

The set of arguments for constructing a ImageCopy resource.

func (ImageCopyArgs) ElementType

func (ImageCopyArgs) ElementType() reflect.Type

type ImageCopyArray

type ImageCopyArray []ImageCopyInput

func (ImageCopyArray) ElementType

func (ImageCopyArray) ElementType() reflect.Type

func (ImageCopyArray) ToImageCopyArrayOutput

func (i ImageCopyArray) ToImageCopyArrayOutput() ImageCopyArrayOutput

func (ImageCopyArray) ToImageCopyArrayOutputWithContext

func (i ImageCopyArray) ToImageCopyArrayOutputWithContext(ctx context.Context) ImageCopyArrayOutput

type ImageCopyArrayInput

type ImageCopyArrayInput interface {
	pulumi.Input

	ToImageCopyArrayOutput() ImageCopyArrayOutput
	ToImageCopyArrayOutputWithContext(context.Context) ImageCopyArrayOutput
}

ImageCopyArrayInput is an input type that accepts ImageCopyArray and ImageCopyArrayOutput values. You can construct a concrete instance of `ImageCopyArrayInput` via:

ImageCopyArray{ ImageCopyArgs{...} }

type ImageCopyArrayOutput

type ImageCopyArrayOutput struct{ *pulumi.OutputState }

func (ImageCopyArrayOutput) ElementType

func (ImageCopyArrayOutput) ElementType() reflect.Type

func (ImageCopyArrayOutput) Index

func (ImageCopyArrayOutput) ToImageCopyArrayOutput

func (o ImageCopyArrayOutput) ToImageCopyArrayOutput() ImageCopyArrayOutput

func (ImageCopyArrayOutput) ToImageCopyArrayOutputWithContext

func (o ImageCopyArrayOutput) ToImageCopyArrayOutputWithContext(ctx context.Context) ImageCopyArrayOutput

type ImageCopyInput

type ImageCopyInput interface {
	pulumi.Input

	ToImageCopyOutput() ImageCopyOutput
	ToImageCopyOutputWithContext(ctx context.Context) ImageCopyOutput
}

type ImageCopyMap

type ImageCopyMap map[string]ImageCopyInput

func (ImageCopyMap) ElementType

func (ImageCopyMap) ElementType() reflect.Type

func (ImageCopyMap) ToImageCopyMapOutput

func (i ImageCopyMap) ToImageCopyMapOutput() ImageCopyMapOutput

func (ImageCopyMap) ToImageCopyMapOutputWithContext

func (i ImageCopyMap) ToImageCopyMapOutputWithContext(ctx context.Context) ImageCopyMapOutput

type ImageCopyMapInput

type ImageCopyMapInput interface {
	pulumi.Input

	ToImageCopyMapOutput() ImageCopyMapOutput
	ToImageCopyMapOutputWithContext(context.Context) ImageCopyMapOutput
}

ImageCopyMapInput is an input type that accepts ImageCopyMap and ImageCopyMapOutput values. You can construct a concrete instance of `ImageCopyMapInput` via:

ImageCopyMap{ "key": ImageCopyArgs{...} }

type ImageCopyMapOutput

type ImageCopyMapOutput struct{ *pulumi.OutputState }

func (ImageCopyMapOutput) ElementType

func (ImageCopyMapOutput) ElementType() reflect.Type

func (ImageCopyMapOutput) MapIndex

func (ImageCopyMapOutput) ToImageCopyMapOutput

func (o ImageCopyMapOutput) ToImageCopyMapOutput() ImageCopyMapOutput

func (ImageCopyMapOutput) ToImageCopyMapOutputWithContext

func (o ImageCopyMapOutput) ToImageCopyMapOutputWithContext(ctx context.Context) ImageCopyMapOutput

type ImageCopyOutput

type ImageCopyOutput struct{ *pulumi.OutputState }

func (ImageCopyOutput) DeleteAutoSnapshot

func (o ImageCopyOutput) DeleteAutoSnapshot() pulumi.BoolPtrOutput

func (ImageCopyOutput) Description

func (o ImageCopyOutput) Description() pulumi.StringPtrOutput

The description of the image. It must be 2 to 256 characters in length and must not start with http:// or https://. Default value: null.

func (ImageCopyOutput) ElementType

func (ImageCopyOutput) ElementType() reflect.Type

func (ImageCopyOutput) Encrypted

func (o ImageCopyOutput) Encrypted() pulumi.BoolPtrOutput

Indicates whether to encrypt the image.

func (ImageCopyOutput) Force

Indicates whether to force delete the custom image, Default is `false`. - true:Force deletes the custom image, regardless of whether the image is currently being used by other instances. - false:Verifies that the image is not currently in use by any other instances before deleting the image.

func (ImageCopyOutput) ImageName

func (o ImageCopyOutput) ImageName() pulumi.StringOutput

The image name. It must be 2 to 128 characters in length, and must begin with a letter or Chinese character (beginning with http:// or https:// is not allowed). It can contain digits, colons (:), underscores (_), or hyphens (-). Default value: null.

func (ImageCopyOutput) KmsKeyId

func (o ImageCopyOutput) KmsKeyId() pulumi.StringPtrOutput

Key ID used to encrypt the image.

func (ImageCopyOutput) Name deprecated

Deprecated: Attribute 'name' has been deprecated from version 1.69.0. Use `image_name` instead.

func (ImageCopyOutput) SourceImageId

func (o ImageCopyOutput) SourceImageId() pulumi.StringOutput

The source image ID.

func (ImageCopyOutput) SourceRegionId

func (o ImageCopyOutput) SourceRegionId() pulumi.StringOutput

The ID of the region to which the source custom image belongs. You can call [DescribeRegions](https://www.alibabacloud.com/help/doc-detail/25609.htm) to view the latest regions of Alibaba Cloud.

func (ImageCopyOutput) Tags

func (o ImageCopyOutput) Tags() pulumi.MapOutput

The tag value of an image. The value of N ranges from 1 to 20.

func (ImageCopyOutput) ToImageCopyOutput

func (o ImageCopyOutput) ToImageCopyOutput() ImageCopyOutput

func (ImageCopyOutput) ToImageCopyOutputWithContext

func (o ImageCopyOutput) ToImageCopyOutputWithContext(ctx context.Context) ImageCopyOutput

type ImageCopyState

type ImageCopyState struct {
	DeleteAutoSnapshot pulumi.BoolPtrInput
	// The description of the image. It must be 2 to 256 characters in length and must not start with http:// or https://. Default value: null.
	Description pulumi.StringPtrInput
	// Indicates whether to encrypt the image.
	Encrypted pulumi.BoolPtrInput
	// Indicates whether to force delete the custom image, Default is `false`.
	// - true:Force deletes the custom image, regardless of whether the image is currently being used by other instances.
	// - false:Verifies that the image is not currently in use by any other instances before deleting the image.
	Force pulumi.BoolPtrInput
	// The image name. It must be 2 to 128 characters in length, and must begin with a letter or Chinese character (beginning with http:// or https:// is not allowed). It can contain digits, colons (:), underscores (_), or hyphens (-). Default value: null.
	ImageName pulumi.StringPtrInput
	// Key ID used to encrypt the image.
	KmsKeyId pulumi.StringPtrInput
	// Deprecated: Attribute 'name' has been deprecated from version 1.69.0. Use `image_name` instead.
	Name pulumi.StringPtrInput
	// The source image ID.
	SourceImageId pulumi.StringPtrInput
	// The ID of the region to which the source custom image belongs. You can call [DescribeRegions](https://www.alibabacloud.com/help/doc-detail/25609.htm) to view the latest regions of Alibaba Cloud.
	SourceRegionId pulumi.StringPtrInput
	// The tag value of an image. The value of N ranges from 1 to 20.
	Tags pulumi.MapInput
}

func (ImageCopyState) ElementType

func (ImageCopyState) ElementType() reflect.Type

type ImageDiskDeviceMapping

type ImageDiskDeviceMapping struct {
	// Specifies the name of a disk in the combined custom image. Value range: /dev/xvda to /dev/xvdz.
	Device *string `pulumi:"device"`
	// Specifies the type of a disk in the combined custom image. If you specify this parameter, you can use a data disk snapshot as the data source of a system disk for creating an image. If it is not specified, the disk type is determined by the corresponding snapshot. Valid values: `system`, `data`,
	DiskType *string `pulumi:"diskType"`
	// Specifies the size of a disk in the combined custom image, in GiB. Value range: 5 to 2000.
	Size *int `pulumi:"size"`
	// Specifies a snapshot that is used to create a combined custom image.
	SnapshotId *string `pulumi:"snapshotId"`
}

type ImageDiskDeviceMappingArgs

type ImageDiskDeviceMappingArgs struct {
	// Specifies the name of a disk in the combined custom image. Value range: /dev/xvda to /dev/xvdz.
	Device pulumi.StringPtrInput `pulumi:"device"`
	// Specifies the type of a disk in the combined custom image. If you specify this parameter, you can use a data disk snapshot as the data source of a system disk for creating an image. If it is not specified, the disk type is determined by the corresponding snapshot. Valid values: `system`, `data`,
	DiskType pulumi.StringPtrInput `pulumi:"diskType"`
	// Specifies the size of a disk in the combined custom image, in GiB. Value range: 5 to 2000.
	Size pulumi.IntPtrInput `pulumi:"size"`
	// Specifies a snapshot that is used to create a combined custom image.
	SnapshotId pulumi.StringPtrInput `pulumi:"snapshotId"`
}

func (ImageDiskDeviceMappingArgs) ElementType

func (ImageDiskDeviceMappingArgs) ElementType() reflect.Type

func (ImageDiskDeviceMappingArgs) ToImageDiskDeviceMappingOutput

func (i ImageDiskDeviceMappingArgs) ToImageDiskDeviceMappingOutput() ImageDiskDeviceMappingOutput

func (ImageDiskDeviceMappingArgs) ToImageDiskDeviceMappingOutputWithContext

func (i ImageDiskDeviceMappingArgs) ToImageDiskDeviceMappingOutputWithContext(ctx context.Context) ImageDiskDeviceMappingOutput

type ImageDiskDeviceMappingArray

type ImageDiskDeviceMappingArray []ImageDiskDeviceMappingInput

func (ImageDiskDeviceMappingArray) ElementType

func (ImageDiskDeviceMappingArray) ToImageDiskDeviceMappingArrayOutput

func (i ImageDiskDeviceMappingArray) ToImageDiskDeviceMappingArrayOutput() ImageDiskDeviceMappingArrayOutput

func (ImageDiskDeviceMappingArray) ToImageDiskDeviceMappingArrayOutputWithContext

func (i ImageDiskDeviceMappingArray) ToImageDiskDeviceMappingArrayOutputWithContext(ctx context.Context) ImageDiskDeviceMappingArrayOutput

type ImageDiskDeviceMappingArrayInput

type ImageDiskDeviceMappingArrayInput interface {
	pulumi.Input

	ToImageDiskDeviceMappingArrayOutput() ImageDiskDeviceMappingArrayOutput
	ToImageDiskDeviceMappingArrayOutputWithContext(context.Context) ImageDiskDeviceMappingArrayOutput
}

ImageDiskDeviceMappingArrayInput is an input type that accepts ImageDiskDeviceMappingArray and ImageDiskDeviceMappingArrayOutput values. You can construct a concrete instance of `ImageDiskDeviceMappingArrayInput` via:

ImageDiskDeviceMappingArray{ ImageDiskDeviceMappingArgs{...} }

type ImageDiskDeviceMappingArrayOutput

type ImageDiskDeviceMappingArrayOutput struct{ *pulumi.OutputState }

func (ImageDiskDeviceMappingArrayOutput) ElementType

func (ImageDiskDeviceMappingArrayOutput) Index

func (ImageDiskDeviceMappingArrayOutput) ToImageDiskDeviceMappingArrayOutput

func (o ImageDiskDeviceMappingArrayOutput) ToImageDiskDeviceMappingArrayOutput() ImageDiskDeviceMappingArrayOutput

func (ImageDiskDeviceMappingArrayOutput) ToImageDiskDeviceMappingArrayOutputWithContext

func (o ImageDiskDeviceMappingArrayOutput) ToImageDiskDeviceMappingArrayOutputWithContext(ctx context.Context) ImageDiskDeviceMappingArrayOutput

type ImageDiskDeviceMappingInput

type ImageDiskDeviceMappingInput interface {
	pulumi.Input

	ToImageDiskDeviceMappingOutput() ImageDiskDeviceMappingOutput
	ToImageDiskDeviceMappingOutputWithContext(context.Context) ImageDiskDeviceMappingOutput
}

ImageDiskDeviceMappingInput is an input type that accepts ImageDiskDeviceMappingArgs and ImageDiskDeviceMappingOutput values. You can construct a concrete instance of `ImageDiskDeviceMappingInput` via:

ImageDiskDeviceMappingArgs{...}

type ImageDiskDeviceMappingOutput

type ImageDiskDeviceMappingOutput struct{ *pulumi.OutputState }

func (ImageDiskDeviceMappingOutput) Device

Specifies the name of a disk in the combined custom image. Value range: /dev/xvda to /dev/xvdz.

func (ImageDiskDeviceMappingOutput) DiskType

Specifies the type of a disk in the combined custom image. If you specify this parameter, you can use a data disk snapshot as the data source of a system disk for creating an image. If it is not specified, the disk type is determined by the corresponding snapshot. Valid values: `system`, `data`,

func (ImageDiskDeviceMappingOutput) ElementType

func (ImageDiskDeviceMappingOutput) Size

Specifies the size of a disk in the combined custom image, in GiB. Value range: 5 to 2000.

func (ImageDiskDeviceMappingOutput) SnapshotId

Specifies a snapshot that is used to create a combined custom image.

func (ImageDiskDeviceMappingOutput) ToImageDiskDeviceMappingOutput

func (o ImageDiskDeviceMappingOutput) ToImageDiskDeviceMappingOutput() ImageDiskDeviceMappingOutput

func (ImageDiskDeviceMappingOutput) ToImageDiskDeviceMappingOutputWithContext

func (o ImageDiskDeviceMappingOutput) ToImageDiskDeviceMappingOutputWithContext(ctx context.Context) ImageDiskDeviceMappingOutput

type ImageExport

type ImageExport struct {
	pulumi.CustomResourceState

	// The source image ID.
	ImageId pulumi.StringOutput `pulumi:"imageId"`
	// Save the exported OSS bucket.
	OssBucket pulumi.StringOutput `pulumi:"ossBucket"`
	// The prefix of your OSS Object. It can be composed of numbers or letters, and the character length is 1 ~ 30.
	OssPrefix pulumi.StringPtrOutput `pulumi:"ossPrefix"`
}

Export a custom image to the OSS bucket in the same region as the custom image.

> **NOTE:** If you create an ECS instance using a mirror image and create a system disk snapshot again, exporting a custom image created from the system disk snapshot is not supported.

> **NOTE:** Support for exporting custom images that include data disk snapshot information in the image. The number of data disks cannot exceed 4 and the maximum capacity of a single data disk cannot exceed 500 GiB.

> **NOTE:** Before exporting the image, you must authorize the cloud server ECS official service account to write OSS permissions through RAM.

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

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ecs.NewImageExport(ctx, "default", &ecs.ImageExportArgs{
			ImageId:   pulumi.String("m-bp1gxy***"),
			OssBucket: pulumi.String("ecsimageexportconfig"),
			OssPrefix: pulumi.String("ecsExport"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ## Attributes Reference0

The following attributes are exported:

* `id` - ID of the image.

func GetImageExport

func GetImageExport(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ImageExportState, opts ...pulumi.ResourceOption) (*ImageExport, error)

GetImageExport gets an existing ImageExport 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 NewImageExport

func NewImageExport(ctx *pulumi.Context,
	name string, args *ImageExportArgs, opts ...pulumi.ResourceOption) (*ImageExport, error)

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

func (*ImageExport) ElementType

func (*ImageExport) ElementType() reflect.Type

func (*ImageExport) ToImageExportOutput

func (i *ImageExport) ToImageExportOutput() ImageExportOutput

func (*ImageExport) ToImageExportOutputWithContext

func (i *ImageExport) ToImageExportOutputWithContext(ctx context.Context) ImageExportOutput

type ImageExportArgs

type ImageExportArgs struct {
	// The source image ID.
	ImageId pulumi.StringInput
	// Save the exported OSS bucket.
	OssBucket pulumi.StringInput
	// The prefix of your OSS Object. It can be composed of numbers or letters, and the character length is 1 ~ 30.
	OssPrefix pulumi.StringPtrInput
}

The set of arguments for constructing a ImageExport resource.

func (ImageExportArgs) ElementType

func (ImageExportArgs) ElementType() reflect.Type

type ImageExportArray

type ImageExportArray []ImageExportInput

func (ImageExportArray) ElementType

func (ImageExportArray) ElementType() reflect.Type

func (ImageExportArray) ToImageExportArrayOutput

func (i ImageExportArray) ToImageExportArrayOutput() ImageExportArrayOutput

func (ImageExportArray) ToImageExportArrayOutputWithContext

func (i ImageExportArray) ToImageExportArrayOutputWithContext(ctx context.Context) ImageExportArrayOutput

type ImageExportArrayInput

type ImageExportArrayInput interface {
	pulumi.Input

	ToImageExportArrayOutput() ImageExportArrayOutput
	ToImageExportArrayOutputWithContext(context.Context) ImageExportArrayOutput
}

ImageExportArrayInput is an input type that accepts ImageExportArray and ImageExportArrayOutput values. You can construct a concrete instance of `ImageExportArrayInput` via:

ImageExportArray{ ImageExportArgs{...} }

type ImageExportArrayOutput

type ImageExportArrayOutput struct{ *pulumi.OutputState }

func (ImageExportArrayOutput) ElementType

func (ImageExportArrayOutput) ElementType() reflect.Type

func (ImageExportArrayOutput) Index

func (ImageExportArrayOutput) ToImageExportArrayOutput

func (o ImageExportArrayOutput) ToImageExportArrayOutput() ImageExportArrayOutput

func (ImageExportArrayOutput) ToImageExportArrayOutputWithContext

func (o ImageExportArrayOutput) ToImageExportArrayOutputWithContext(ctx context.Context) ImageExportArrayOutput

type ImageExportInput

type ImageExportInput interface {
	pulumi.Input

	ToImageExportOutput() ImageExportOutput
	ToImageExportOutputWithContext(ctx context.Context) ImageExportOutput
}

type ImageExportMap

type ImageExportMap map[string]ImageExportInput

func (ImageExportMap) ElementType

func (ImageExportMap) ElementType() reflect.Type

func (ImageExportMap) ToImageExportMapOutput

func (i ImageExportMap) ToImageExportMapOutput() ImageExportMapOutput

func (ImageExportMap) ToImageExportMapOutputWithContext

func (i ImageExportMap) ToImageExportMapOutputWithContext(ctx context.Context) ImageExportMapOutput

type ImageExportMapInput

type ImageExportMapInput interface {
	pulumi.Input

	ToImageExportMapOutput() ImageExportMapOutput
	ToImageExportMapOutputWithContext(context.Context) ImageExportMapOutput
}

ImageExportMapInput is an input type that accepts ImageExportMap and ImageExportMapOutput values. You can construct a concrete instance of `ImageExportMapInput` via:

ImageExportMap{ "key": ImageExportArgs{...} }

type ImageExportMapOutput

type ImageExportMapOutput struct{ *pulumi.OutputState }

func (ImageExportMapOutput) ElementType

func (ImageExportMapOutput) ElementType() reflect.Type

func (ImageExportMapOutput) MapIndex

func (ImageExportMapOutput) ToImageExportMapOutput

func (o ImageExportMapOutput) ToImageExportMapOutput() ImageExportMapOutput

func (ImageExportMapOutput) ToImageExportMapOutputWithContext

func (o ImageExportMapOutput) ToImageExportMapOutputWithContext(ctx context.Context) ImageExportMapOutput

type ImageExportOutput

type ImageExportOutput struct{ *pulumi.OutputState }

func (ImageExportOutput) ElementType

func (ImageExportOutput) ElementType() reflect.Type

func (ImageExportOutput) ImageId

The source image ID.

func (ImageExportOutput) OssBucket

func (o ImageExportOutput) OssBucket() pulumi.StringOutput

Save the exported OSS bucket.

func (ImageExportOutput) OssPrefix

The prefix of your OSS Object. It can be composed of numbers or letters, and the character length is 1 ~ 30.

func (ImageExportOutput) ToImageExportOutput

func (o ImageExportOutput) ToImageExportOutput() ImageExportOutput

func (ImageExportOutput) ToImageExportOutputWithContext

func (o ImageExportOutput) ToImageExportOutputWithContext(ctx context.Context) ImageExportOutput

type ImageExportState

type ImageExportState struct {
	// The source image ID.
	ImageId pulumi.StringPtrInput
	// Save the exported OSS bucket.
	OssBucket pulumi.StringPtrInput
	// The prefix of your OSS Object. It can be composed of numbers or letters, and the character length is 1 ~ 30.
	OssPrefix pulumi.StringPtrInput
}

func (ImageExportState) ElementType

func (ImageExportState) ElementType() reflect.Type

type ImageImport

type ImageImport struct {
	pulumi.CustomResourceState

	// Specifies the architecture of the system disk after you specify a data disk snapshot as the data source of the system disk for creating an image. Valid values: `i386` , Default is `x8664`.
	Architecture pulumi.StringPtrOutput `pulumi:"architecture"`
	// Description of the image. The length is 2 to 256 English or Chinese characters, and cannot begin with http: // and https: //.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// Description of the system with disks and snapshots under the image.
	DiskDeviceMappings ImageImportDiskDeviceMappingArrayOutput `pulumi:"diskDeviceMappings"`
	// The image name. The length is 2 ~ 128 English or Chinese characters. Must start with a english letter or Chinese, and cannot start with http: // and https: //. Can contain numbers, colons (:), underscores (_), or hyphens (-).
	ImageName pulumi.StringPtrOutput `pulumi:"imageName"`
	// The type of the license used to activate the operating system after the image is imported. Default value: `Auto`. Valid values: `Auto`,`Aliyun`,`BYOL`.
	LicenseType pulumi.StringPtrOutput `pulumi:"licenseType"`
	// Operating system platform type. Valid values: `windows`, Default is `linux`.
	OsType pulumi.StringPtrOutput `pulumi:"osType"`
	// Specifies the operating system platform of the system disk after you specify a data disk snapshot as the data source of the system disk for creating an image. Valid values: `CentOS`, `Ubuntu`, `SUSE`, `OpenSUSE`, `Debian`, `CoreOS`, `Windows Server 2003`, `Windows Server 2008`, `Windows Server 2012`, `Windows 7`, Default is `Others Linux`, `Customized Linux`.
	Platform pulumi.StringPtrOutput `pulumi:"platform"`
}

Import a copy of your local on-premise file to ECS, and appear as a custom replacement in the corresponding domain.

> **NOTE:** You must upload the image file to the object storage OSS in advance.

> **NOTE:** The region where the image is imported must be the same region as the OSS bucket where the image file is uploaded.

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

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/go/alicloud/ecs"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ecs.NewImageImport(ctx, "this", &ecs.ImageImportArgs{
			Architecture: pulumi.String("x86_64"),
			Description:  pulumi.String("test import image"),
			DiskDeviceMappings: ecs.ImageImportDiskDeviceMappingArray{
				&ecs.ImageImportDiskDeviceMappingArgs{
					DiskImageSize: pulumi.Int(5),
					OssBucket:     pulumi.String("testimportimage"),
					OssObject:     pulumi.String("root.img"),
				},
			},
			ImageName:   pulumi.String("test-import-image"),
			LicenseType: pulumi.String("Auto"),
			OsType:      pulumi.String("linux"),
			Platform:    pulumi.String("Ubuntu"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ## Attributes Reference0

The following attributes are exported:

* `id` - ID of the image.

## Import

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

```sh

$ pulumi import alicloud:ecs/imageImport:ImageImport default m-uf66871ape***yg1q***

```

func GetImageImport

func GetImageImport(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ImageImportState, opts ...pulumi.ResourceOption) (*ImageImport, error)

GetImageImport gets an existing ImageImport 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 NewImageImport

func NewImageImport(ctx *pulumi.Context,
	name string, args *ImageImportArgs, opts ...pulumi.ResourceOption) (*ImageImport, error)

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

func (*ImageImport) ElementType

func (*ImageImport) ElementType() reflect.Type

func (*ImageImport) ToImageImportOutput

func (i *ImageImport) ToImageImportOutput() ImageImportOutput

func (*ImageImport) ToImageImportOutputWithContext

func (i *ImageImport) ToImageImportOutputWithContext(ctx context.Context) ImageImportOutput

type ImageImportArgs

type ImageImportArgs struct {
	// Specifies the architecture of the system disk after you specify a data disk snapshot as the data source of the system disk for creating an image. Valid values: `i386` , Default is `x8664`.
	Architecture pulumi.StringPtrInput
	// Description of the image. The length is 2 to 256 English or Chinese characters, and cannot begin with http: // and https: //.
	Description pulumi.StringPtrInput
	// Description of the system with disks and snapshots under the image.
	DiskDeviceMappings ImageImportDiskDeviceMappingArrayInput
	// The image name. The length is 2 ~ 128 English or Chinese characters. Must start with a english letter or Chinese, and cannot start with http: // and https: //. Can contain numbers, colons (:), underscores (_), or hyphens (-).
	ImageName pulumi.StringPtrInput
	// The type of the license used to activate the operating system after the image is imported. Default value: `Auto`. Valid values: `Auto`,`Aliyun`,`BYOL`.
	LicenseType pulumi.StringPtrInput
	// Operating system platform type. Valid values: `windows`, Default is `linux`.
	OsType pulumi.StringPtrInput
	// Specifies the operating system platform of the system disk after you specify a data disk snapshot as the data source of the system disk for creating an image. Valid values: `CentOS`, `Ubuntu`, `SUSE`, `OpenSUSE`, `Debian`, `CoreOS`, `Windows Server 2003`, `Windows Server 2008`, `Windows Server 2012`, `Windows 7`, Default is `Others Linux`, `Customized Linux`.
	Platform pulumi.StringPtrInput
}

The set of arguments for constructing a ImageImport resource.

func (ImageImportArgs) ElementType

func (ImageImportArgs) ElementType() reflect.Type

type ImageImportArray

type ImageImportArray []ImageImportInput

func (ImageImportArray) ElementType

func (ImageImportArray) ElementType() reflect.Type

func (ImageImportArray) ToImageImportArrayOutput

func (i ImageImportArray) ToImageImportArrayOutput() ImageImportArrayOutput

func (ImageImportArray) ToImageImportArrayOutputWithContext

func (i ImageImportArray) ToImageImportArrayOutputWithContext(ctx context.Context) ImageImportArrayOutput

type ImageImportArrayInput

type ImageImportArrayInput interface {
	pulumi.Input

	ToImageImportArrayOutput() ImageImportArrayOutput
	ToImageImportArrayOutputWithContext(context.Context) ImageImportArrayOutput
}

ImageImportArrayInput is an input type that accepts ImageImportArray and ImageImportArrayOutput values. You can construct a concrete instance of `ImageImportArrayInput` via:

ImageImportArray{ ImageImportArgs{...} }

type ImageImportArrayOutput

type ImageImportArrayOutput struct{ *pulumi.OutputState }

func (ImageImportArrayOutput) ElementType

func (ImageImportArrayOutput) ElementType() reflect.Type

func (ImageImportArrayOutput) Index

func (ImageImportArrayOutput) ToImageImportArrayOutput

func (o ImageImportArrayOutput) ToImageImportArrayOutput() ImageImportArrayOutput

func (ImageImportArrayOutput) ToImageImportArrayOutputWithContext

func (o ImageImportArrayOutput) ToImageImportArrayOutputWithContext(ctx context.Context) ImageImportArrayOutput

type ImageImportDiskDeviceMapping

type ImageImportDiskDeviceMapping struct {
	// The name of disk N in the custom image.
	Device *string `pulumi:"device"`
	// Resolution size. You must ensure that the system disk space ≥ file system space. Ranges: When n = 1, the system disk: 5 ~ 500GiB, When n = 2 ~ 17, that is, data disk: 5 ~ 1000GiB, When temporary is introduced, the system automatically detects the size, which is subject to the detection result.
	DiskImageSize *int `pulumi:"diskImageSize"`
	// Image format. Value range: When the `RAW`, `VHD`, `qcow2` is imported into the image, the system automatically detects the image format, whichever comes first.
	Format *string `pulumi:"format"`
	// Save the exported OSS bucket.
	OssBucket *string `pulumi:"ossBucket"`
	// The file name of your OSS Object.
	OssObject *string `pulumi:"ossObject"`
}

type ImageImportDiskDeviceMappingArgs

type ImageImportDiskDeviceMappingArgs struct {
	// The name of disk N in the custom image.
	Device pulumi.StringPtrInput `pulumi:"device"`
	// Resolution size. You must ensure that the system disk space ≥ file system space. Ranges: When n = 1, the system disk: 5 ~ 500GiB, When n = 2 ~ 17, that is, data disk: 5 ~ 1000GiB, When temporary is introduced, the system automatically detects the size, which is subject to the detection result.
	DiskImageSize pulumi.IntPtrInput `pulumi:"diskImageSize"`
	// Image format. Value range: When the `RAW`, `VHD`, `qcow2` is imported into the image, the system automatically detects the image format, whichever comes first.
	Format pulumi.StringPtrInput `pulumi:"format"`
	// Save the exported OSS bucket.
	OssBucket pulumi.StringPtrInput `pulumi:"ossBucket"`
	// The file name of your OSS Object.
	OssObject pulumi.StringPtrInput `pulumi:"ossObject"`
}

func (ImageImportDiskDeviceMappingArgs) ElementType

func (ImageImportDiskDeviceMappingArgs) ToImageImportDiskDeviceMappingOutput

func (i ImageImportDiskDeviceMappingArgs) ToImageImportDiskDeviceMappingOutput() ImageImportDiskDeviceMappingOutput

func (ImageImportDiskDeviceMappingArgs) ToImageImportDiskDeviceMappingOutputWithContext

func (i ImageImportDiskDeviceMappingArgs) ToImageImportDiskDeviceMappingOutputWithContext(ctx context.Context) ImageImportDiskDeviceMappingOutput

type ImageImportDiskDeviceMappingArray

type ImageImportDiskDeviceMappingArray []ImageImportDiskDeviceMappingInput

func (ImageImportDiskDeviceMappingArray) ElementType

func (ImageImportDiskDeviceMappingArray) ToImageImportDiskDeviceMappingArrayOutput

func (i ImageImportDiskDeviceMappingArray) ToImageImportDiskDeviceMappingArrayOutput() ImageImportDiskDeviceMappingArrayOutput

func (ImageImportDiskDeviceMappingArray) ToImageImportDiskDeviceMappingArrayOutputWithContext

func (i ImageImportDiskDeviceMappingArray) ToImageImportDiskDeviceMappingArrayOutputWithContext(ctx context.Context) ImageImportDiskDeviceMappingArrayOutput

type ImageImportDiskDeviceMappingArrayInput

type ImageImportDiskDeviceMappingArrayInput interface {
	pulumi.Input

	ToImageImportDiskDeviceMappingArrayOutput() ImageImportDiskDeviceMappingArrayOutput
	ToImageImportDiskDeviceMappingArrayOutputWithContext(context.Context) ImageImportDiskDeviceMappingArrayOutput
}

ImageImportDiskDeviceMappingArrayInput is an input type that accepts ImageImportDiskDeviceMappingArray and ImageImportDiskDeviceMappingArrayOutput values. You can construct a concrete instance of `ImageImportDiskDeviceMappingArrayInput` via:

ImageImportDiskDeviceMappingArray{ ImageImportDiskDeviceMappingArgs{...} }

type ImageImportDiskDeviceMappingArrayOutput

type ImageImportDiskDeviceMappingArrayOutput struct{ *pulumi.OutputState }

func (ImageImportDiskDeviceMappingArrayOutput) ElementType

func (ImageImportDiskDeviceMappingArrayOutput) Index

func (ImageImportDiskDeviceMappingArrayOutput) ToImageImportDiskDeviceMappingArrayOutput

func (o ImageImportDiskDeviceMappingArrayOutput) ToImageImportDiskDeviceMappingArrayOutput() ImageImportDiskDeviceMappingArrayOutput

func (ImageImportDiskDeviceMappingArrayOutput) ToImageImportDiskDeviceMappingArrayOutputWithContext

func (o ImageImportDiskDeviceMappingArrayOutput) ToImageImportDiskDeviceMappingArrayOutputWithContext(ctx context.Context) ImageImportDiskDeviceMappingArrayOutput

type ImageImportDiskDeviceMappingInput

type ImageImportDiskDeviceMappingInput interface {
	pulumi.Input

	ToImageImportDiskDeviceMappingOutput() ImageImportDiskDeviceMappingOutput
	ToImageImportDiskDeviceMappingOutputWithContext(context.Context) ImageImportDiskDeviceMappingOutput
}

ImageImportDiskDeviceMappingInput is an input type that accepts ImageImportDiskDeviceMappingArgs and ImageImportDiskDeviceMappingOutput values. You can construct a concrete instance of `ImageImportDiskDeviceMappingInput` via:

ImageImportDiskDeviceMappingArgs{...}

type ImageImportDiskDeviceMappingOutput

type ImageImportDiskDeviceMappingOutput struct{ *pulumi.OutputState }

func (ImageImportDiskDeviceMappingOutput) Device

The name of disk N in the custom image.

func (ImageImportDiskDeviceMappingOutput) DiskImageSize

Resolution size. You must ensure that the system disk space ≥ file system space. Ranges: When n = 1, the system disk: 5 ~ 500GiB, When n = 2 ~ 17, that is, data disk: 5 ~ 1000GiB, When temporary is introduced, the system automatically detects the size, which is subject to the detection result.

func (ImageImportDiskDeviceMappingOutput) ElementType

func (ImageImportDiskDeviceMappingOutput) Format

Image format. Value range: When the `RAW`, `VHD`, `qcow2` is imported into the image, the system automatically detects the image format, whichever comes first.

func (ImageImportDiskDeviceMappingOutput) OssBucket

Save the exported OSS bucket.

func (ImageImportDiskDeviceMappingOutput) OssObject

The file name of your OSS Object.

func (ImageImportDiskDeviceMappingOutput) ToImageImportDiskDeviceMappingOutput

func (o ImageImportDiskDeviceMappingOutput) ToImageImportDiskDeviceMappingOutput() ImageImportDiskDeviceMappingOutput

func (ImageImportDiskDeviceMappingOutput) ToImageImportDiskDeviceMappingOutputWithContext

func (o ImageImportDiskDeviceMappingOutput) ToImageImportDiskDeviceMappingOutputWithContext(ctx context.Context) ImageImportDiskDeviceMappingOutput

type ImageImportInput

type ImageImportInput interface {
	pulumi.Input

	ToImageImportOutput() ImageImportOutput
	ToImageImportOutputWithContext(ctx context.Context) ImageImportOutput
}

type ImageImportMap

type ImageImportMap map[string]ImageImportInput

func (ImageImportMap) ElementType

func (ImageImportMap) ElementType() reflect.Type

func (ImageImportMap) ToImageImportMapOutput

func (i ImageImportMap) ToImageImportMapOutput() ImageImportMapOutput

func (ImageImportMap) ToImageImportMapOutputWithContext

func (i ImageImportMap) ToImageImportMapOutputWithContext(ctx context.Context) ImageImportMapOutput

type ImageImportMapInput

type ImageImportMapInput interface {
	pulumi.Input

	ToImageImportMapOutput() ImageImportMapOutput
	ToImageImportMapOutputWithContext(context.Context) ImageImportMapOutput
}

ImageImportMapInput is an input type that accepts ImageImportMap and ImageImportMapOutput values. You can construct a concrete instance of `ImageImportMapInput` via:

ImageImportMap{ "key": ImageImportArgs{...} }

type ImageImportMapOutput

type ImageImportMapOutput struct{ *pulumi.OutputState }

func (ImageImportMapOutput) ElementType

func (ImageImportMapOutput) ElementType() reflect.Type

func (ImageImportMapOutput) MapIndex

func (ImageImportMapOutput) ToImageImportMapOutput

func (o ImageImportMapOutput) ToImageImportMapOutput() ImageImportMapOutput

func (ImageImportMapOutput) ToImageImportMapOutputWithContext

func (o ImageImportMapOutput) ToImageImportMapOutputWithContext(ctx context.Context) ImageImportMapOutput

type ImageImportOutput

type ImageImportOutput struct{ *pulumi.OutputState }

func (ImageImportOutput) Architecture

func (o ImageImportOutput) Architecture() pulumi.StringPtrOutput

Specifies the architecture of the system disk after you specify a data disk snapshot as the data source of the system disk for creating an image. Valid values: `i386` , Default is `x8664`.

func (ImageImportOutput) Description

func (o ImageImportOutput) Description() pulumi.StringPtrOutput

Description of the image. The length is 2 to 256 English or Chinese characters, and cannot begin with http: // and https: //.

func (ImageImportOutput) DiskDeviceMappings

Description of the system with disks and snapshots under the image.

func (ImageImportOutput) ElementType

func (ImageImportOutput) ElementType() reflect.Type

func (ImageImportOutput) ImageName

The image name. The length is 2 ~ 128 English or Chinese characters. Must start with a english letter or Chinese, and cannot start with http: // and https: //. Can contain numbers, colons (:), underscores (_), or hyphens (-).

func (ImageImportOutput) LicenseType

func (o ImageImportOutput) LicenseType() pulumi.StringPtrOutput

The type of the license used to activate the operating system after the image is imported. Default value: `Auto`. Valid values: `Auto`,`Aliyun`,`BYOL`.

func (ImageImportOutput) OsType

Operating system platform type. Valid values: `windows`, Default is `linux`.

func (ImageImportOutput) Platform

Specifies the operating system platform of the system disk after you specify a data disk snapshot as the data source of the system disk for creating an image. Valid values: `CentOS`, `Ubuntu`, `SUSE`, `OpenSUSE`, `Debian`, `CoreOS`, `Windows Server 2003`, `Windows Server 2008`, `Windows Server 2012`, `Windows 7`, Default is `Others Linux`, `Customized Linux`.

func (ImageImportOutput) ToImageImportOutput

func (o ImageImportOutput) ToImageImportOutput() ImageImportOutput

func (ImageImportOutput) ToImageImportOutputWithContext

func (o ImageImportOutput) ToImageImportOutputWithContext(ctx context.Context) ImageImportOutput

type ImageImportState

type ImageImportState struct {
	// Specifies the architecture of the system disk after you specify a data disk snapshot as the data source of the system disk for creating an image. Valid values: `i386` , Default is `x8664`.
	Architecture pulumi.StringPtrInput
	// Description of the image. The length is 2 to 256 English or Chinese characters, and cannot begin with http: // and https: //.
	Description pulumi.StringPtrInput
	// Description of the system with disks and snapshots under the image.
	DiskDeviceMappings ImageImportDiskDeviceMappingArrayInput
	// The image name. The length is 2 ~ 128 English or Chinese characters. Must start with a english letter or Chinese, and cannot start with http: // and https: //. Can contain numbers, colons (:), underscores (_), or hyphens (-).
	ImageName pulumi.StringPtrInput
	// The type of the license used to activate the operating system after the image is imported. Default value: `Auto`. Valid values: `Auto`,`Aliyun`,`BYOL`.
	LicenseType pulumi.StringPtrInput
	// Operating system platform type. Valid values: `windows`, Default is `linux`.
	OsType pulumi.StringPtrInput
	// Specifies the operating system platform of the system disk after you specify a data disk snapshot as the data source of the system disk for creating an image. Valid values: `CentOS`, `Ubuntu`, `SUSE`, `OpenSUSE`, `Debian`, `CoreOS`, `Windows Server 2003`, `Windows Server 2008`, `Windows Server 2012`, `Windows 7`, Default is `Others Linux`, `Customized Linux`.
	Platform pulumi.StringPtrInput
}

func (ImageImportState) ElementType

func (ImageImportState) ElementType() reflect.Type

type ImageInput

type ImageInput interface {
	pulumi.Input

	ToImageOutput() ImageOutput
	ToImageOutputWithContext(ctx context.Context) ImageOutput
}

type ImageMap

type ImageMap map[string]ImageInput

func (ImageMap) ElementType

func (ImageMap) ElementType() reflect.Type

func (ImageMap) ToImageMapOutput

func (i ImageMap) ToImageMapOutput() ImageMapOutput

func (ImageMap) ToImageMapOutputWithContext

func (i ImageMap) ToImageMapOutputWithContext(ctx context.Context) ImageMapOutput

type ImageMapInput

type ImageMapInput interface {
	pulumi.Input

	ToImageMapOutput() ImageMapOutput
	ToImageMapOutputWithContext(context.Context) ImageMapOutput
}

ImageMapInput is an input type that accepts ImageMap and ImageMapOutput values. You can construct a concrete instance of `ImageMapInput` via:

ImageMap{ "key": ImageArgs{...} }

type ImageMapOutput

type ImageMapOutput struct{ *pulumi.OutputState }

func (ImageMapOutput) ElementType

func (ImageMapOutput) ElementType() reflect.Type

func (ImageMapOutput) MapIndex

func (ImageMapOutput) ToImageMapOutput

func (o ImageMapOutput) ToImageMapOutput() ImageMapOutput

func (ImageMapOutput) ToImageMapOutputWithContext

func (o ImageMapOutput) ToImageMapOutputWithContext(ctx context.Context) ImageMapOutput

type ImageOutput

type ImageOutput struct{ *pulumi.OutputState }

func (ImageOutput) Architecture

func (o ImageOutput) Architecture() pulumi.StringPtrOutput

Specifies the architecture of the system disk after you specify a data disk snapshot as the data source of the system disk for creating an image. Valid values: `i386` , Default is `x8664`.

func (ImageOutput) DeleteAutoSnapshot

func (o ImageOutput) DeleteAutoSnapshot() pulumi.BoolPtrOutput

func (ImageOutput) Description

func (o ImageOutput) Description() pulumi.StringPtrOutput

The description of the image. It must be 2 to 256 characters in length and must not start with http:// or https://. Default value: null.

func (ImageOutput) DiskDeviceMappings

func (o ImageOutput) DiskDeviceMappings() ImageDiskDeviceMappingArrayOutput

Description of the system with disks and snapshots under the image.

func (ImageOutput) ElementType

func (ImageOutput) ElementType() reflect.Type

func (ImageOutput) Force

func (o ImageOutput) Force() pulumi.BoolPtrOutput

Indicates whether to force delete the custom image, Default is `false`. - true:Force deletes the custom image, regardless of whether the image is currently being used by other instances. - false:Verifies that the image is not currently in use by any other instances before deleting the image.

func (ImageOutput) ImageName

func (o ImageOutput) ImageName() pulumi.StringOutput

The image name. It must be 2 to 128 characters in length, and must begin with a letter or Chinese character (beginning with http:// or https:// is not allowed). It can contain digits, colons (:), underscores (_), or hyphens (-). Default value: null.

func (ImageOutput) InstanceId

func (o ImageOutput) InstanceId() pulumi.StringPtrOutput

The instance ID.

func (ImageOutput) Name deprecated

func (o ImageOutput) Name() pulumi.StringOutput

Deprecated: Attribute 'name' has been deprecated from version 1.69.0. Use `image_name` instead.

func (ImageOutput) Platform

func (o ImageOutput) Platform() pulumi.StringPtrOutput

Specifies the operating system platform of the system disk after you specify a data disk snapshot as the data source of the system disk for creating an image. Valid values: `CentOS`, `Ubuntu`, `SUSE`, `OpenSUSE`, `RedHat`, `Debian`, `CoreOS`, `Aliyun Linux`, `Windows Server 2003`, `Windows Server 2008`, `Windows Server 2012`, `Windows 7`, Default is `Others Linux`.

func (ImageOutput) ResourceGroupId

func (o ImageOutput) ResourceGroupId() pulumi.StringPtrOutput

The ID of the enterprise resource group to which a custom image belongs

func (ImageOutput) SnapshotId

func (o ImageOutput) SnapshotId() pulumi.StringPtrOutput

Specifies a snapshot that is used to create a combined custom image.

func (ImageOutput) Tags

func (o ImageOutput) Tags() pulumi.MapOutput

The tag value of an image. The value of N ranges from 1 to 20.

func (ImageOutput) ToImageOutput

func (o ImageOutput) ToImageOutput() ImageOutput

func (ImageOutput) ToImageOutputWithContext

func (o ImageOutput) ToImageOutputWithContext(ctx context.Context) ImageOutput

type ImageSharePermission

type ImageSharePermission struct {
	pulumi.CustomResourceState

	// Alibaba Cloud Account ID. It is used to share images.
	AccountId pulumi.StringOutput `pulumi:"accountId"`
	// The source image ID.
	ImageId pulumi.StringOutput `pulumi:"imageId"`
}

Manage image sharing permissions. You can share your custom image to other Alibaba Cloud users. The user can use the shared custom image to create ECS instances or replace the system disk of the instance.

> **NOTE:** You can only share your own custom images to other Alibaba Cloud users.

> **NOTE:** Each custom image can be shared with up to 50 Alibaba Cloud accounts. You can submit a ticket to share with more users.

> **NOTE:** After creating an ECS instance using a shared image, once the custom image owner releases the image sharing relationship or deletes the custom image, the instance cannot initialize the system disk.

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

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ecs.NewImageSharePermission(ctx, "default", &ecs.ImageSharePermissionArgs{
			AccountId: pulumi.String("1234567890"),
			ImageId:   pulumi.String("m-bp1gxyh***"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ## Attributes Reference0

The following attributes are exported:

* `id` - ID of the image. It formats as `<image_id>:<account_id>`

## Import

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

```sh

$ pulumi import alicloud:ecs/imageSharePermission:ImageSharePermission default m-uf66yg1q:123456789

```

func GetImageSharePermission

func GetImageSharePermission(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ImageSharePermissionState, opts ...pulumi.ResourceOption) (*ImageSharePermission, error)

GetImageSharePermission gets an existing ImageSharePermission 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 NewImageSharePermission

func NewImageSharePermission(ctx *pulumi.Context,
	name string, args *ImageSharePermissionArgs, opts ...pulumi.ResourceOption) (*ImageSharePermission, error)

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

func (*ImageSharePermission) ElementType

func (*ImageSharePermission) ElementType() reflect.Type

func (*ImageSharePermission) ToImageSharePermissionOutput

func (i *ImageSharePermission) ToImageSharePermissionOutput() ImageSharePermissionOutput

func (*ImageSharePermission) ToImageSharePermissionOutputWithContext

func (i *ImageSharePermission) ToImageSharePermissionOutputWithContext(ctx context.Context) ImageSharePermissionOutput

type ImageSharePermissionArgs

type ImageSharePermissionArgs struct {
	// Alibaba Cloud Account ID. It is used to share images.
	AccountId pulumi.StringInput
	// The source image ID.
	ImageId pulumi.StringInput
}

The set of arguments for constructing a ImageSharePermission resource.

func (ImageSharePermissionArgs) ElementType

func (ImageSharePermissionArgs) ElementType() reflect.Type

type ImageSharePermissionArray

type ImageSharePermissionArray []ImageSharePermissionInput

func (ImageSharePermissionArray) ElementType

func (ImageSharePermissionArray) ElementType() reflect.Type

func (ImageSharePermissionArray) ToImageSharePermissionArrayOutput

func (i ImageSharePermissionArray) ToImageSharePermissionArrayOutput() ImageSharePermissionArrayOutput

func (ImageSharePermissionArray) ToImageSharePermissionArrayOutputWithContext

func (i ImageSharePermissionArray) ToImageSharePermissionArrayOutputWithContext(ctx context.Context) ImageSharePermissionArrayOutput

type ImageSharePermissionArrayInput

type ImageSharePermissionArrayInput interface {
	pulumi.Input

	ToImageSharePermissionArrayOutput() ImageSharePermissionArrayOutput
	ToImageSharePermissionArrayOutputWithContext(context.Context) ImageSharePermissionArrayOutput
}

ImageSharePermissionArrayInput is an input type that accepts ImageSharePermissionArray and ImageSharePermissionArrayOutput values. You can construct a concrete instance of `ImageSharePermissionArrayInput` via:

ImageSharePermissionArray{ ImageSharePermissionArgs{...} }

type ImageSharePermissionArrayOutput

type ImageSharePermissionArrayOutput struct{ *pulumi.OutputState }

func (ImageSharePermissionArrayOutput) ElementType

func (ImageSharePermissionArrayOutput) Index

func (ImageSharePermissionArrayOutput) ToImageSharePermissionArrayOutput

func (o ImageSharePermissionArrayOutput) ToImageSharePermissionArrayOutput() ImageSharePermissionArrayOutput

func (ImageSharePermissionArrayOutput) ToImageSharePermissionArrayOutputWithContext

func (o ImageSharePermissionArrayOutput) ToImageSharePermissionArrayOutputWithContext(ctx context.Context) ImageSharePermissionArrayOutput

type ImageSharePermissionInput

type ImageSharePermissionInput interface {
	pulumi.Input

	ToImageSharePermissionOutput() ImageSharePermissionOutput
	ToImageSharePermissionOutputWithContext(ctx context.Context) ImageSharePermissionOutput
}

type ImageSharePermissionMap

type ImageSharePermissionMap map[string]ImageSharePermissionInput

func (ImageSharePermissionMap) ElementType

func (ImageSharePermissionMap) ElementType() reflect.Type

func (ImageSharePermissionMap) ToImageSharePermissionMapOutput

func (i ImageSharePermissionMap) ToImageSharePermissionMapOutput() ImageSharePermissionMapOutput

func (ImageSharePermissionMap) ToImageSharePermissionMapOutputWithContext

func (i ImageSharePermissionMap) ToImageSharePermissionMapOutputWithContext(ctx context.Context) ImageSharePermissionMapOutput

type ImageSharePermissionMapInput

type ImageSharePermissionMapInput interface {
	pulumi.Input

	ToImageSharePermissionMapOutput() ImageSharePermissionMapOutput
	ToImageSharePermissionMapOutputWithContext(context.Context) ImageSharePermissionMapOutput
}

ImageSharePermissionMapInput is an input type that accepts ImageSharePermissionMap and ImageSharePermissionMapOutput values. You can construct a concrete instance of `ImageSharePermissionMapInput` via:

ImageSharePermissionMap{ "key": ImageSharePermissionArgs{...} }

type ImageSharePermissionMapOutput

type ImageSharePermissionMapOutput struct{ *pulumi.OutputState }

func (ImageSharePermissionMapOutput) ElementType

func (ImageSharePermissionMapOutput) MapIndex

func (ImageSharePermissionMapOutput) ToImageSharePermissionMapOutput

func (o ImageSharePermissionMapOutput) ToImageSharePermissionMapOutput() ImageSharePermissionMapOutput

func (ImageSharePermissionMapOutput) ToImageSharePermissionMapOutputWithContext

func (o ImageSharePermissionMapOutput) ToImageSharePermissionMapOutputWithContext(ctx context.Context) ImageSharePermissionMapOutput

type ImageSharePermissionOutput

type ImageSharePermissionOutput struct{ *pulumi.OutputState }

func (ImageSharePermissionOutput) AccountId

Alibaba Cloud Account ID. It is used to share images.

func (ImageSharePermissionOutput) ElementType

func (ImageSharePermissionOutput) ElementType() reflect.Type

func (ImageSharePermissionOutput) ImageId

The source image ID.

func (ImageSharePermissionOutput) ToImageSharePermissionOutput

func (o ImageSharePermissionOutput) ToImageSharePermissionOutput() ImageSharePermissionOutput

func (ImageSharePermissionOutput) ToImageSharePermissionOutputWithContext

func (o ImageSharePermissionOutput) ToImageSharePermissionOutputWithContext(ctx context.Context) ImageSharePermissionOutput

type ImageSharePermissionState

type ImageSharePermissionState struct {
	// Alibaba Cloud Account ID. It is used to share images.
	AccountId pulumi.StringPtrInput
	// The source image ID.
	ImageId pulumi.StringPtrInput
}

func (ImageSharePermissionState) ElementType

func (ImageSharePermissionState) ElementType() reflect.Type

type ImageState

type ImageState struct {
	// Specifies the architecture of the system disk after you specify a data disk snapshot as the data source of the system disk for creating an image. Valid values: `i386` , Default is `x8664`.
	Architecture       pulumi.StringPtrInput
	DeleteAutoSnapshot pulumi.BoolPtrInput
	// The description of the image. It must be 2 to 256 characters in length and must not start with http:// or https://. Default value: null.
	Description pulumi.StringPtrInput
	// Description of the system with disks and snapshots under the image.
	DiskDeviceMappings ImageDiskDeviceMappingArrayInput
	// Indicates whether to force delete the custom image, Default is `false`.
	// - true:Force deletes the custom image, regardless of whether the image is currently being used by other instances.
	// - false:Verifies that the image is not currently in use by any other instances before deleting the image.
	Force pulumi.BoolPtrInput
	// The image name. It must be 2 to 128 characters in length, and must begin with a letter or Chinese character (beginning with http:// or https:// is not allowed). It can contain digits, colons (:), underscores (_), or hyphens (-). Default value: null.
	ImageName pulumi.StringPtrInput
	// The instance ID.
	InstanceId pulumi.StringPtrInput
	// Deprecated: Attribute 'name' has been deprecated from version 1.69.0. Use `image_name` instead.
	Name pulumi.StringPtrInput
	// Specifies the operating system platform of the system disk after you specify a data disk snapshot as the data source of the system disk for creating an image. Valid values: `CentOS`, `Ubuntu`, `SUSE`, `OpenSUSE`, `RedHat`, `Debian`, `CoreOS`, `Aliyun Linux`, `Windows Server 2003`, `Windows Server 2008`, `Windows Server 2012`, `Windows 7`, Default is `Others Linux`.
	Platform pulumi.StringPtrInput
	// The ID of the enterprise resource group to which a custom image belongs
	ResourceGroupId pulumi.StringPtrInput
	// Specifies a snapshot that is used to create a combined custom image.
	SnapshotId pulumi.StringPtrInput
	// The tag value of an image. The value of N ranges from 1 to 20.
	Tags pulumi.MapInput
}

func (ImageState) ElementType

func (ImageState) ElementType() reflect.Type

type Instance

type Instance struct {
	pulumi.CustomResourceState

	// It has been deprecated from version "1.7.0". Setting "internetMaxBandwidthOut" larger than 0 can allocate a public ip address for an instance.
	//
	// Deprecated: Field 'allocate_public_ip' has been deprecated from provider version 1.6.1. Setting 'internet_max_bandwidth_out' larger than 0 will allocate public ip for instance.
	AllocatePublicIp pulumi.BoolPtrOutput `pulumi:"allocatePublicIp"`
	// The automatic release time of the `PostPaid` instance.
	// The time follows the ISO 8601 standard and is in UTC time. Format: yyyy-MM-ddTHH:mm:ssZ. It must be at least half an hour later than the current time and less than 3 years since the current time.
	// Set it to null can cancel automatic release attribute and the ECS instance will not be released automatically.
	AutoReleaseTime pulumi.StringPtrOutput `pulumi:"autoReleaseTime"`
	// Auto renewal period of an instance, in the unit of month. It is valid when `instanceChargeType` is `PrePaid`. Default to 1. Valid value:
	// - [1, 2, 3, 6, 12] when `periodUnit` in "Month"
	// - [1, 2, 3] when `periodUnit` in "Week"
	AutoRenewPeriod pulumi.IntPtrOutput `pulumi:"autoRenewPeriod"`
	// The Zone to start the instance in. It is ignored and will be computed when set `vswitchId`.
	AvailabilityZone pulumi.StringOutput `pulumi:"availabilityZone"`
	// Performance mode of the t5 burstable instance. Valid values: 'Standard', 'Unlimited'.
	CreditSpecification pulumi.StringOutput `pulumi:"creditSpecification"`
	// The list of data disks created with instance.
	DataDisks InstanceDataDiskArrayOutput `pulumi:"dataDisks"`
	// Whether enable the deletion protection or not. Default value: `false`.
	// - true: Enable deletion protection.
	// - false: Disable deletion protection.
	DeletionProtection pulumi.BoolPtrOutput `pulumi:"deletionProtection"`
	// (Optional, Available in 1.149.0+) The group number of the instance in a deployment set when the deployment set is use.
	DeploymentSetGroupNo pulumi.StringOutput `pulumi:"deploymentSetGroupNo"`
	// The ID of the deployment set to which to deploy the instance. **NOTE:** From version 1.176.0, instance's deploymentSetId can be removed when 'deployment_set_id' = "".
	DeploymentSetId pulumi.StringPtrOutput `pulumi:"deploymentSetId"`
	// The description of the data disk.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// Specifies whether to send a dry-run request. Default to false.
	// - true: Only a dry-run request is sent and no instance is created. The system checks whether the required parameters are set, and validates the request format, service permissions, and available ECS instances. If the validation fails, the corresponding error code is returned. If the validation succeeds, the `DryRunOperation` error code is returned.
	// - false: A request is sent. If the validation succeeds, the instance is created.
	DryRun pulumi.BoolPtrOutput `pulumi:"dryRun"`
	// If it is true, the "PrePaid" instance will be change to "PostPaid" and then deleted forcibly.
	// However, because of changing instance charge type has CPU core count quota limitation, so strongly recommand that "Don't modify instance charge type frequentlly in one month".
	ForceDelete pulumi.BoolPtrOutput `pulumi:"forceDelete"`
	// Host name of the ECS, which is a string of at least two characters. “hostname” cannot start or end with “.” or “-“. In addition, two or more consecutive “.” or “-“ symbols are not allowed. On Windows, the host name can contain a maximum of 15 characters, which can be a combination of uppercase/lowercase letters, numerals, and “-“. The host name cannot contain dots (“.”) or contain only numeric characters. When it is changed, the instance will reboot to make the change take effect.
	// On other OSs such as Linux, the host name can contain a maximum of 64 characters, which can be segments separated by dots (“.”), where each segment can contain uppercase/lowercase letters, numerals, or “_“. When it is changed, the instance will reboot to make the change take effect.
	HostName pulumi.StringOutput `pulumi:"hostName"`
	// The ID of the Elastic High Performance Computing (E-HPC) cluster to which to assign the instance.
	HpcClusterId pulumi.StringPtrOutput `pulumi:"hpcClusterId"`
	// Specifies whether to enable the access channel for instance metadata. Valid values: `enabled`, `disabled`. Default value: `enabled`.
	HttpEndpoint pulumi.StringOutput `pulumi:"httpEndpoint"`
	// The HTTP PUT response hop limit for accessing instance metadata. Valid values: 1 to 64. Default value: 1.
	HttpPutResponseHopLimit pulumi.IntOutput `pulumi:"httpPutResponseHopLimit"`
	// Specifies whether to forcefully use the security-enhanced mode (IMDSv2) to access instance metadata. Default value: optional. Valid values:
	// - optional: does not forcefully use the security-enhanced mode (IMDSv2).
	// - required: forcefully uses the security-enhanced mode (IMDSv2). After you set this parameter to required, you cannot access instance metadata in normal mode.
	HttpTokens pulumi.StringOutput `pulumi:"httpTokens"`
	// The Image to use for the instance. ECS instance's image can be replaced via changing `imageId`. When it is changed, the instance will reboot to make the change take effect.
	ImageId pulumi.StringOutput `pulumi:"imageId"`
	// Whether to change instance disks charge type when changing instance charge type.
	IncludeDataDisks pulumi.BoolPtrOutput `pulumi:"includeDataDisks"`
	// Valid values are `PrePaid`, `PostPaid`, The default is `PostPaid`.
	InstanceChargeType pulumi.StringPtrOutput `pulumi:"instanceChargeType"`
	InstanceName       pulumi.StringPtrOutput `pulumi:"instanceName"`
	// The type of instance to start. When it is changed, the instance will reboot to make the change take effect.
	InstanceType pulumi.StringOutput `pulumi:"instanceType"`
	// Internet charge type of the instance, Valid values are `PayByBandwidth`, `PayByTraffic`. Default is `PayByTraffic`. At present, 'PrePaid' instance cannot change the value to "PayByBandwidth" from "PayByTraffic".
	InternetChargeType pulumi.StringPtrOutput `pulumi:"internetChargeType"`
	// Maximum incoming bandwidth from the public network, measured in Mbps (Mega bit per second). Value range: [1, 200]. If this value is not specified, then automatically sets it to 200 Mbps.
	//
	// Deprecated: The attribute is invalid and no any affect for the instance. So it has been deprecated from version v1.121.2.
	InternetMaxBandwidthIn pulumi.IntOutput `pulumi:"internetMaxBandwidthIn"`
	// Maximum outgoing bandwidth to the public network, measured in Mbps (Mega bit per second). Value range:  [0, 100]. Default to 0 Mbps.
	InternetMaxBandwidthOut pulumi.IntPtrOutput `pulumi:"internetMaxBandwidthOut"`
	// It has been deprecated on instance resource. All the launched alicloud instances will be I/O optimized.
	//
	// Deprecated: Attribute io_optimized has been deprecated on instance resource. All the launched alicloud instances will be IO optimized. Suggest to remove it from your template.
	IoOptimized pulumi.StringPtrOutput `pulumi:"ioOptimized"`
	// The number of IPv6 addresses to randomly generate for the primary ENI. Valid values: 1 to 10. **NOTE:** You cannot specify both the `ipv6Addresses` and `ipv6AddressCount` parameters.
	Ipv6AddressCount pulumi.IntOutput `pulumi:"ipv6AddressCount"`
	// A list of IPv6 address to be assigned to the primary ENI. Support up to 10.
	Ipv6Addresses pulumi.StringArrayOutput `pulumi:"ipv6Addresses"`
	// Whether to use outdated instance type. Default to false.
	IsOutdated pulumi.BoolPtrOutput `pulumi:"isOutdated"`
	// The name of key pair that can login ECS instance successfully without password. If it is specified, the password would be invalid.
	KeyName pulumi.StringOutput `pulumi:"keyName"`
	// An KMS encrypts password used to an instance. If the `password` is filled in, this field will be ignored. When it is changed, the instance will reboot to make the change take effect.
	KmsEncryptedPassword pulumi.StringPtrOutput `pulumi:"kmsEncryptedPassword"`
	// An KMS encryption context used to decrypt `kmsEncryptedPassword` before creating or updating an instance with `kmsEncryptedPassword`. See [Encryption Context](https://www.alibabacloud.com/help/doc-detail/42975.htm). It is valid when `kmsEncryptedPassword` is set. When it is changed, the instance will reboot to make the change take effect.
	KmsEncryptionContext pulumi.MapOutput `pulumi:"kmsEncryptionContext"`
	// The maintenance action. Valid values: `Stop`, `AutoRecover` and `AutoRedeploy`.
	MaintenanceAction pulumi.StringOutput `pulumi:"maintenanceAction"`
	// Specifies whether to send an event notification before instance shutdown. Valid values: `true`, `false`. Default value: `false`.
	MaintenanceNotify pulumi.BoolPtrOutput `pulumi:"maintenanceNotify"`
	// The time of maintenance. See the following `Block maintenanceTime`.
	MaintenanceTime InstanceMaintenanceTimePtrOutput `pulumi:"maintenanceTime"`
	// The operation type. It is valid when `instanceChargeType` is `PrePaid`. Default value: `upgrade`. Valid values: `upgrade`, `downgrade`. **NOTE:**  When the new instance type specified by the `instanceType` parameter has lower specifications than the current instance type, you must set `operatorType` to `downgrade`.
	OperatorType pulumi.StringPtrOutput `pulumi:"operatorType"`
	// Password to an instance is a string of 8 to 30 characters. It must contain uppercase/lowercase letters and numerals, but cannot contain special symbols. When it is changed, the instance will reboot to make the change take effect.
	Password pulumi.StringPtrOutput `pulumi:"password"`
	Period   pulumi.IntPtrOutput    `pulumi:"period"`
	// The duration unit that you will buy the resource. It is valid when `instanceChargeType` is 'PrePaid'. Valid value: ["Week", "Month"]. Default to "Month".
	PeriodUnit pulumi.StringPtrOutput `pulumi:"periodUnit"`
	// Instance private IP address can be specified when you creating new instance. It is valid when `vswitchId` is specified. When it is changed, the instance will reboot to make the change take effect.
	PrivateIp pulumi.StringOutput `pulumi:"privateIp"`
	// The instance public ip.
	PublicIp pulumi.StringOutput `pulumi:"publicIp"`
	// Whether to renew an ECS instance automatically or not. It is valid when `instanceChargeType` is `PrePaid`. Default to "Normal". Valid values:
	// - `AutoRenewal`: Enable auto renewal.
	// - `Normal`: Disable auto renewal.
	// - `NotRenewal`: No renewal any longer. After you specify this value, Alibaba Cloud stop sending notification of instance expiry, and only gives a brief reminder on the third day before the instance expiry.
	RenewalStatus pulumi.StringPtrOutput `pulumi:"renewalStatus"`
	// The Id of resource group which the instance belongs.
	ResourceGroupId pulumi.StringPtrOutput `pulumi:"resourceGroupId"`
	// Instance RAM role name. The name is provided and maintained by RAM. You can use `ram.Role` to create a new one.
	RoleName pulumi.StringOutput `pulumi:"roleName"`
	// The number of private IP addresses to be automatically assigned from within the CIDR block of the vswitch. **NOTE:** To assign secondary private IP addresses, you must specify `secondaryPrivateIps` or `secondaryPrivateIpAddressCount` but not both.
	SecondaryPrivateIpAddressCount pulumi.IntOutput `pulumi:"secondaryPrivateIpAddressCount"`
	// A list of Secondary private IP addresses which is selected from within the CIDR block of the VSwitch.
	SecondaryPrivateIps pulumi.StringArrayOutput `pulumi:"secondaryPrivateIps"`
	// The security enhancement strategy.
	// - Active: Enable security enhancement strategy, it only works on system images.
	// - Deactive: Disable security enhancement strategy, it works on all images.
	SecurityEnhancementStrategy pulumi.StringPtrOutput `pulumi:"securityEnhancementStrategy"`
	// A list of security group ids to associate with.
	SecurityGroups pulumi.StringArrayOutput `pulumi:"securityGroups"`
	// The retention time of the preemptive instance in hours. Valid values: `0`, `1`, `2`, `3`, `4`, `5`, `6`. Retention duration 2~6 is under invitation test, please submit a work order if you need to open. If the value is `0`, the mode is no protection period. Default value is `1`.
	SpotDuration pulumi.IntOutput `pulumi:"spotDuration"`
	// The hourly price threshold of a instance, and it takes effect only when parameter 'spot_strategy' is 'SpotWithPriceLimit'. Three decimals is allowed at most.
	SpotPriceLimit pulumi.Float64PtrOutput `pulumi:"spotPriceLimit"`
	// The spot strategy of a Pay-As-You-Go instance, and it takes effect only when parameter `instanceChargeType` is 'PostPaid'. Value range:
	// - NoSpot: A regular Pay-As-You-Go instance.
	// - SpotWithPriceLimit: A price threshold for a spot instance
	// - SpotAsPriceGo: A price that is based on the highest Pay-As-You-Go instance
	SpotStrategy pulumi.StringPtrOutput `pulumi:"spotStrategy"`
	// The instance status. Valid values: ["Running", "Stopped"]. You can control the instance start and stop through this parameter. Default to `Running`.
	Status pulumi.StringOutput `pulumi:"status"`
	// The stop mode of the pay-as-you-go instance. Valid values: `StopCharging`,`KeepCharging`. Default value: If the prerequisites required for enabling the economical mode are met, and you have enabled this mode in the ECS console, the default value is `StopCharging`. For more information, see "Enable the economical mode" in [Economical mode](https://www.alibabacloud.com/help/en/elastic-compute-service/latest/economical-mode). Otherwise, the default value is `KeepCharging`. **Note:** `Not-applicable`: Economical mode is not applicable to the instance.`
	StoppedMode pulumi.StringOutput `pulumi:"stoppedMode"`
	// Deprecated: Field 'subnet_id' has been deprecated from version 1.177.0, and use field 'vswitch_id' to replace.
	SubnetId pulumi.StringOutput `pulumi:"subnetId"`
	// The ID of the automatic snapshot policy applied to the system disk.
	SystemDiskAutoSnapshotPolicyId pulumi.StringPtrOutput `pulumi:"systemDiskAutoSnapshotPolicyId"`
	// Valid values are `ephemeralSsd`, `cloudEfficiency`, `cloudSsd`, `cloudEssd`, `cloud`, `cloudAuto`. only is used to some none I/O optimized instance. Default to `cloudEfficiency`. Valid values `cloudAuto` Available in 1.184.0+.
	SystemDiskCategory pulumi.StringPtrOutput `pulumi:"systemDiskCategory"`
	// The description of the system disk. The description must be 2 to 256 characters in length and cannot start with http:// or https://.
	SystemDiskDescription pulumi.StringPtrOutput `pulumi:"systemDiskDescription"`
	// The algorithm to be used to encrypt the system disk. Valid values are `aes-256`, `sm4-128`. Default value is `aes-256`.
	SystemDiskEncryptAlgorithm pulumi.StringPtrOutput `pulumi:"systemDiskEncryptAlgorithm"`
	// Specifies whether to encrypt the system disk. Valid values: `true`,`false`. Default value: `false`.
	// - `true`: encrypts the system disk.
	// - `false`: does not encrypt the system disk.
	SystemDiskEncrypted pulumi.BoolPtrOutput `pulumi:"systemDiskEncrypted"`
	// The ID of the Key Management Service (KMS) key to be used for the system disk.
	SystemDiskKmsKeyId pulumi.StringPtrOutput `pulumi:"systemDiskKmsKeyId"`
	// The name of the system disk. The name must be 2 to 128 characters in length and can contain letters, digits, periods (.), colons (:), underscores (_), and hyphens (-). It must start with a letter and cannot start with http:// or https://.
	SystemDiskName pulumi.StringPtrOutput `pulumi:"systemDiskName"`
	// The performance level of the ESSD used as the system disk, Valid values: `PL0`, `PL1`, `PL2`, `PL3`, Default to `PL1`;For more information about ESSD, See [Encryption Context](https://www.alibabacloud.com/help/doc-detail/122389.htm).
	SystemDiskPerformanceLevel pulumi.StringOutput `pulumi:"systemDiskPerformanceLevel"`
	// Size of the system disk, measured in GiB. Value range: [20, 500]. The specified value must be equal to or greater than max{20, Imagesize}. Default value: max{40, ImageSize}.
	SystemDiskSize pulumi.IntPtrOutput `pulumi:"systemDiskSize"`
	// The ID of the dedicated block storage cluster. If you want to use disks in a dedicated block storage cluster as system disks when you create instances, you must specify this parameter. For more information about dedicated block storage clusters, see [What is Dedicated Block Storage Cluster?](https://www.alibabacloud.com/help/en/elastic-compute-service/latest/dedicated-block-storage-clusters-overview).
	SystemDiskStorageClusterId pulumi.StringPtrOutput `pulumi:"systemDiskStorageClusterId"`
	// A mapping of tags to assign to the resource.
	// - Key: It can be up to 64 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It cannot be a null string.
	// - Value: It can be up to 128 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It can be a null string.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// User-defined data to customize the startup behaviors of an ECS instance and to pass data into an ECS instance. From version 1.60.0, it can be update in-place. If updated, the instance will reboot to make the change take effect. Note: Not all of changes will take effect and it depends on [cloud-init module type](https://cloudinit.readthedocs.io/en/latest/topics/modules.html).
	UserData pulumi.StringPtrOutput `pulumi:"userData"`
	// A mapping of tags to assign to the devices created by the instance at launch time.
	// - Key: It can be up to 64 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It cannot be a null string.
	// - Value: It can be up to 128 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It can be a null string.
	VolumeTags pulumi.MapOutput `pulumi:"volumeTags"`
	// The virtual switch ID to launch in VPC. This parameter must be set unless you can create classic network instances. When it is changed, the instance will reboot to make the change take effect.
	VswitchId pulumi.StringPtrOutput `pulumi:"vswitchId"`
}

## Import

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

```sh

$ pulumi import alicloud:ecs/instance:Instance example i-abc12345678

```

func GetInstance

func GetInstance(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *InstanceState, opts ...pulumi.ResourceOption) (*Instance, error)

GetInstance gets an existing Instance 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 NewInstance

func NewInstance(ctx *pulumi.Context,
	name string, args *InstanceArgs, opts ...pulumi.ResourceOption) (*Instance, error)

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

func (*Instance) ElementType

func (*Instance) ElementType() reflect.Type

func (*Instance) ToInstanceOutput

func (i *Instance) ToInstanceOutput() InstanceOutput

func (*Instance) ToInstanceOutputWithContext

func (i *Instance) ToInstanceOutputWithContext(ctx context.Context) InstanceOutput

type InstanceArgs

type InstanceArgs struct {
	// It has been deprecated from version "1.7.0". Setting "internetMaxBandwidthOut" larger than 0 can allocate a public ip address for an instance.
	//
	// Deprecated: Field 'allocate_public_ip' has been deprecated from provider version 1.6.1. Setting 'internet_max_bandwidth_out' larger than 0 will allocate public ip for instance.
	AllocatePublicIp pulumi.BoolPtrInput
	// The automatic release time of the `PostPaid` instance.
	// The time follows the ISO 8601 standard and is in UTC time. Format: yyyy-MM-ddTHH:mm:ssZ. It must be at least half an hour later than the current time and less than 3 years since the current time.
	// Set it to null can cancel automatic release attribute and the ECS instance will not be released automatically.
	AutoReleaseTime pulumi.StringPtrInput
	// Auto renewal period of an instance, in the unit of month. It is valid when `instanceChargeType` is `PrePaid`. Default to 1. Valid value:
	// - [1, 2, 3, 6, 12] when `periodUnit` in "Month"
	// - [1, 2, 3] when `periodUnit` in "Week"
	AutoRenewPeriod pulumi.IntPtrInput
	// The Zone to start the instance in. It is ignored and will be computed when set `vswitchId`.
	AvailabilityZone pulumi.StringPtrInput
	// Performance mode of the t5 burstable instance. Valid values: 'Standard', 'Unlimited'.
	CreditSpecification pulumi.StringPtrInput
	// The list of data disks created with instance.
	DataDisks InstanceDataDiskArrayInput
	// Whether enable the deletion protection or not. Default value: `false`.
	// - true: Enable deletion protection.
	// - false: Disable deletion protection.
	DeletionProtection pulumi.BoolPtrInput
	// The ID of the deployment set to which to deploy the instance. **NOTE:** From version 1.176.0, instance's deploymentSetId can be removed when 'deployment_set_id' = "".
	DeploymentSetId pulumi.StringPtrInput
	// The description of the data disk.
	Description pulumi.StringPtrInput
	// Specifies whether to send a dry-run request. Default to false.
	// - true: Only a dry-run request is sent and no instance is created. The system checks whether the required parameters are set, and validates the request format, service permissions, and available ECS instances. If the validation fails, the corresponding error code is returned. If the validation succeeds, the `DryRunOperation` error code is returned.
	// - false: A request is sent. If the validation succeeds, the instance is created.
	DryRun pulumi.BoolPtrInput
	// If it is true, the "PrePaid" instance will be change to "PostPaid" and then deleted forcibly.
	// However, because of changing instance charge type has CPU core count quota limitation, so strongly recommand that "Don't modify instance charge type frequentlly in one month".
	ForceDelete pulumi.BoolPtrInput
	// Host name of the ECS, which is a string of at least two characters. “hostname” cannot start or end with “.” or “-“. In addition, two or more consecutive “.” or “-“ symbols are not allowed. On Windows, the host name can contain a maximum of 15 characters, which can be a combination of uppercase/lowercase letters, numerals, and “-“. The host name cannot contain dots (“.”) or contain only numeric characters. When it is changed, the instance will reboot to make the change take effect.
	// On other OSs such as Linux, the host name can contain a maximum of 64 characters, which can be segments separated by dots (“.”), where each segment can contain uppercase/lowercase letters, numerals, or “_“. When it is changed, the instance will reboot to make the change take effect.
	HostName pulumi.StringPtrInput
	// The ID of the Elastic High Performance Computing (E-HPC) cluster to which to assign the instance.
	HpcClusterId pulumi.StringPtrInput
	// Specifies whether to enable the access channel for instance metadata. Valid values: `enabled`, `disabled`. Default value: `enabled`.
	HttpEndpoint pulumi.StringPtrInput
	// The HTTP PUT response hop limit for accessing instance metadata. Valid values: 1 to 64. Default value: 1.
	HttpPutResponseHopLimit pulumi.IntPtrInput
	// Specifies whether to forcefully use the security-enhanced mode (IMDSv2) to access instance metadata. Default value: optional. Valid values:
	// - optional: does not forcefully use the security-enhanced mode (IMDSv2).
	// - required: forcefully uses the security-enhanced mode (IMDSv2). After you set this parameter to required, you cannot access instance metadata in normal mode.
	HttpTokens pulumi.StringPtrInput
	// The Image to use for the instance. ECS instance's image can be replaced via changing `imageId`. When it is changed, the instance will reboot to make the change take effect.
	ImageId pulumi.StringInput
	// Whether to change instance disks charge type when changing instance charge type.
	IncludeDataDisks pulumi.BoolPtrInput
	// Valid values are `PrePaid`, `PostPaid`, The default is `PostPaid`.
	InstanceChargeType pulumi.StringPtrInput
	InstanceName       pulumi.StringPtrInput
	// The type of instance to start. When it is changed, the instance will reboot to make the change take effect.
	InstanceType pulumi.StringInput
	// Internet charge type of the instance, Valid values are `PayByBandwidth`, `PayByTraffic`. Default is `PayByTraffic`. At present, 'PrePaid' instance cannot change the value to "PayByBandwidth" from "PayByTraffic".
	InternetChargeType pulumi.StringPtrInput
	// Maximum incoming bandwidth from the public network, measured in Mbps (Mega bit per second). Value range: [1, 200]. If this value is not specified, then automatically sets it to 200 Mbps.
	//
	// Deprecated: The attribute is invalid and no any affect for the instance. So it has been deprecated from version v1.121.2.
	InternetMaxBandwidthIn pulumi.IntPtrInput
	// Maximum outgoing bandwidth to the public network, measured in Mbps (Mega bit per second). Value range:  [0, 100]. Default to 0 Mbps.
	InternetMaxBandwidthOut pulumi.IntPtrInput
	// It has been deprecated on instance resource. All the launched alicloud instances will be I/O optimized.
	//
	// Deprecated: Attribute io_optimized has been deprecated on instance resource. All the launched alicloud instances will be IO optimized. Suggest to remove it from your template.
	IoOptimized pulumi.StringPtrInput
	// The number of IPv6 addresses to randomly generate for the primary ENI. Valid values: 1 to 10. **NOTE:** You cannot specify both the `ipv6Addresses` and `ipv6AddressCount` parameters.
	Ipv6AddressCount pulumi.IntPtrInput
	// A list of IPv6 address to be assigned to the primary ENI. Support up to 10.
	Ipv6Addresses pulumi.StringArrayInput
	// Whether to use outdated instance type. Default to false.
	IsOutdated pulumi.BoolPtrInput
	// The name of key pair that can login ECS instance successfully without password. If it is specified, the password would be invalid.
	KeyName pulumi.StringPtrInput
	// An KMS encrypts password used to an instance. If the `password` is filled in, this field will be ignored. When it is changed, the instance will reboot to make the change take effect.
	KmsEncryptedPassword pulumi.StringPtrInput
	// An KMS encryption context used to decrypt `kmsEncryptedPassword` before creating or updating an instance with `kmsEncryptedPassword`. See [Encryption Context](https://www.alibabacloud.com/help/doc-detail/42975.htm). It is valid when `kmsEncryptedPassword` is set. When it is changed, the instance will reboot to make the change take effect.
	KmsEncryptionContext pulumi.MapInput
	// The maintenance action. Valid values: `Stop`, `AutoRecover` and `AutoRedeploy`.
	MaintenanceAction pulumi.StringPtrInput
	// Specifies whether to send an event notification before instance shutdown. Valid values: `true`, `false`. Default value: `false`.
	MaintenanceNotify pulumi.BoolPtrInput
	// The time of maintenance. See the following `Block maintenanceTime`.
	MaintenanceTime InstanceMaintenanceTimePtrInput
	// The operation type. It is valid when `instanceChargeType` is `PrePaid`. Default value: `upgrade`. Valid values: `upgrade`, `downgrade`. **NOTE:**  When the new instance type specified by the `instanceType` parameter has lower specifications than the current instance type, you must set `operatorType` to `downgrade`.
	OperatorType pulumi.StringPtrInput
	// Password to an instance is a string of 8 to 30 characters. It must contain uppercase/lowercase letters and numerals, but cannot contain special symbols. When it is changed, the instance will reboot to make the change take effect.
	Password pulumi.StringPtrInput
	Period   pulumi.IntPtrInput
	// The duration unit that you will buy the resource. It is valid when `instanceChargeType` is 'PrePaid'. Valid value: ["Week", "Month"]. Default to "Month".
	PeriodUnit pulumi.StringPtrInput
	// Instance private IP address can be specified when you creating new instance. It is valid when `vswitchId` is specified. When it is changed, the instance will reboot to make the change take effect.
	PrivateIp pulumi.StringPtrInput
	// Whether to renew an ECS instance automatically or not. It is valid when `instanceChargeType` is `PrePaid`. Default to "Normal". Valid values:
	// - `AutoRenewal`: Enable auto renewal.
	// - `Normal`: Disable auto renewal.
	// - `NotRenewal`: No renewal any longer. After you specify this value, Alibaba Cloud stop sending notification of instance expiry, and only gives a brief reminder on the third day before the instance expiry.
	RenewalStatus pulumi.StringPtrInput
	// The Id of resource group which the instance belongs.
	ResourceGroupId pulumi.StringPtrInput
	// Instance RAM role name. The name is provided and maintained by RAM. You can use `ram.Role` to create a new one.
	RoleName pulumi.StringPtrInput
	// The number of private IP addresses to be automatically assigned from within the CIDR block of the vswitch. **NOTE:** To assign secondary private IP addresses, you must specify `secondaryPrivateIps` or `secondaryPrivateIpAddressCount` but not both.
	SecondaryPrivateIpAddressCount pulumi.IntPtrInput
	// A list of Secondary private IP addresses which is selected from within the CIDR block of the VSwitch.
	SecondaryPrivateIps pulumi.StringArrayInput
	// The security enhancement strategy.
	// - Active: Enable security enhancement strategy, it only works on system images.
	// - Deactive: Disable security enhancement strategy, it works on all images.
	SecurityEnhancementStrategy pulumi.StringPtrInput
	// A list of security group ids to associate with.
	SecurityGroups pulumi.StringArrayInput
	// The retention time of the preemptive instance in hours. Valid values: `0`, `1`, `2`, `3`, `4`, `5`, `6`. Retention duration 2~6 is under invitation test, please submit a work order if you need to open. If the value is `0`, the mode is no protection period. Default value is `1`.
	SpotDuration pulumi.IntPtrInput
	// The hourly price threshold of a instance, and it takes effect only when parameter 'spot_strategy' is 'SpotWithPriceLimit'. Three decimals is allowed at most.
	SpotPriceLimit pulumi.Float64PtrInput
	// The spot strategy of a Pay-As-You-Go instance, and it takes effect only when parameter `instanceChargeType` is 'PostPaid'. Value range:
	// - NoSpot: A regular Pay-As-You-Go instance.
	// - SpotWithPriceLimit: A price threshold for a spot instance
	// - SpotAsPriceGo: A price that is based on the highest Pay-As-You-Go instance
	SpotStrategy pulumi.StringPtrInput
	// The instance status. Valid values: ["Running", "Stopped"]. You can control the instance start and stop through this parameter. Default to `Running`.
	Status pulumi.StringPtrInput
	// The stop mode of the pay-as-you-go instance. Valid values: `StopCharging`,`KeepCharging`. Default value: If the prerequisites required for enabling the economical mode are met, and you have enabled this mode in the ECS console, the default value is `StopCharging`. For more information, see "Enable the economical mode" in [Economical mode](https://www.alibabacloud.com/help/en/elastic-compute-service/latest/economical-mode). Otherwise, the default value is `KeepCharging`. **Note:** `Not-applicable`: Economical mode is not applicable to the instance.`
	StoppedMode pulumi.StringPtrInput
	// Deprecated: Field 'subnet_id' has been deprecated from version 1.177.0, and use field 'vswitch_id' to replace.
	SubnetId pulumi.StringPtrInput
	// The ID of the automatic snapshot policy applied to the system disk.
	SystemDiskAutoSnapshotPolicyId pulumi.StringPtrInput
	// Valid values are `ephemeralSsd`, `cloudEfficiency`, `cloudSsd`, `cloudEssd`, `cloud`, `cloudAuto`. only is used to some none I/O optimized instance. Default to `cloudEfficiency`. Valid values `cloudAuto` Available in 1.184.0+.
	SystemDiskCategory pulumi.StringPtrInput
	// The description of the system disk. The description must be 2 to 256 characters in length and cannot start with http:// or https://.
	SystemDiskDescription pulumi.StringPtrInput
	// The algorithm to be used to encrypt the system disk. Valid values are `aes-256`, `sm4-128`. Default value is `aes-256`.
	SystemDiskEncryptAlgorithm pulumi.StringPtrInput
	// Specifies whether to encrypt the system disk. Valid values: `true`,`false`. Default value: `false`.
	// - `true`: encrypts the system disk.
	// - `false`: does not encrypt the system disk.
	SystemDiskEncrypted pulumi.BoolPtrInput
	// The ID of the Key Management Service (KMS) key to be used for the system disk.
	SystemDiskKmsKeyId pulumi.StringPtrInput
	// The name of the system disk. The name must be 2 to 128 characters in length and can contain letters, digits, periods (.), colons (:), underscores (_), and hyphens (-). It must start with a letter and cannot start with http:// or https://.
	SystemDiskName pulumi.StringPtrInput
	// The performance level of the ESSD used as the system disk, Valid values: `PL0`, `PL1`, `PL2`, `PL3`, Default to `PL1`;For more information about ESSD, See [Encryption Context](https://www.alibabacloud.com/help/doc-detail/122389.htm).
	SystemDiskPerformanceLevel pulumi.StringPtrInput
	// Size of the system disk, measured in GiB. Value range: [20, 500]. The specified value must be equal to or greater than max{20, Imagesize}. Default value: max{40, ImageSize}.
	SystemDiskSize pulumi.IntPtrInput
	// The ID of the dedicated block storage cluster. If you want to use disks in a dedicated block storage cluster as system disks when you create instances, you must specify this parameter. For more information about dedicated block storage clusters, see [What is Dedicated Block Storage Cluster?](https://www.alibabacloud.com/help/en/elastic-compute-service/latest/dedicated-block-storage-clusters-overview).
	SystemDiskStorageClusterId pulumi.StringPtrInput
	// A mapping of tags to assign to the resource.
	// - Key: It can be up to 64 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It cannot be a null string.
	// - Value: It can be up to 128 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It can be a null string.
	Tags pulumi.StringMapInput
	// User-defined data to customize the startup behaviors of an ECS instance and to pass data into an ECS instance. From version 1.60.0, it can be update in-place. If updated, the instance will reboot to make the change take effect. Note: Not all of changes will take effect and it depends on [cloud-init module type](https://cloudinit.readthedocs.io/en/latest/topics/modules.html).
	UserData pulumi.StringPtrInput
	// A mapping of tags to assign to the devices created by the instance at launch time.
	// - Key: It can be up to 64 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It cannot be a null string.
	// - Value: It can be up to 128 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It can be a null string.
	VolumeTags pulumi.MapInput
	// The virtual switch ID to launch in VPC. This parameter must be set unless you can create classic network instances. When it is changed, the instance will reboot to make the change take effect.
	VswitchId pulumi.StringPtrInput
}

The set of arguments for constructing a Instance resource.

func (InstanceArgs) ElementType

func (InstanceArgs) ElementType() reflect.Type

type InstanceArray

type InstanceArray []InstanceInput

func (InstanceArray) ElementType

func (InstanceArray) ElementType() reflect.Type

func (InstanceArray) ToInstanceArrayOutput

func (i InstanceArray) ToInstanceArrayOutput() InstanceArrayOutput

func (InstanceArray) ToInstanceArrayOutputWithContext

func (i InstanceArray) ToInstanceArrayOutputWithContext(ctx context.Context) InstanceArrayOutput

type InstanceArrayInput

type InstanceArrayInput interface {
	pulumi.Input

	ToInstanceArrayOutput() InstanceArrayOutput
	ToInstanceArrayOutputWithContext(context.Context) InstanceArrayOutput
}

InstanceArrayInput is an input type that accepts InstanceArray and InstanceArrayOutput values. You can construct a concrete instance of `InstanceArrayInput` via:

InstanceArray{ InstanceArgs{...} }

type InstanceArrayOutput

type InstanceArrayOutput struct{ *pulumi.OutputState }

func (InstanceArrayOutput) ElementType

func (InstanceArrayOutput) ElementType() reflect.Type

func (InstanceArrayOutput) Index

func (InstanceArrayOutput) ToInstanceArrayOutput

func (o InstanceArrayOutput) ToInstanceArrayOutput() InstanceArrayOutput

func (InstanceArrayOutput) ToInstanceArrayOutputWithContext

func (o InstanceArrayOutput) ToInstanceArrayOutputWithContext(ctx context.Context) InstanceArrayOutput

type InstanceDataDisk

type InstanceDataDisk struct {
	// The ID of the automatic snapshot policy applied to the system disk.
	AutoSnapshotPolicyId *string `pulumi:"autoSnapshotPolicyId"`
	// The category of the disk:
	// - `cloud`: The general cloud disk.
	// - `cloudEfficiency`: The efficiency cloud disk.
	// - `cloudSsd`: The SSD cloud disk.
	// - `cloudEssd`: The ESSD cloud disk.
	// - `ephemeralSsd`: The local SSD disk.
	//   Default to `cloudEfficiency`.
	Category *string `pulumi:"category"`
	// Delete this data disk when the instance is destroyed. It only works on cloud, cloud_efficiency, cloud_essd, cloudSsd disk. If the category of this data disk was ephemeral_ssd, please don't set this param. Default value: `true`.
	DeleteWithInstance *bool `pulumi:"deleteWithInstance"`
	// The description of the data disk.
	Description *string `pulumi:"description"`
	// The mount point of the data disk.
	Device *string `pulumi:"device"`
	// -(Optional, Bool, ForceNew) Encrypted the data in this disk. Default value: `false`.
	Encrypted *bool `pulumi:"encrypted"`
	// The KMS key ID corresponding to the Nth data disk.
	KmsKeyId *string `pulumi:"kmsKeyId"`
	// The name of the data disk.
	Name *string `pulumi:"name"`
	// The performance level of the ESSD used as data disk:
	// - `PL0`: A single ESSD can deliver up to 10,000 random read/write IOPS.
	// - `PL1`: A single ESSD can deliver up to 50,000 random read/write IOPS.
	// - `PL2`: A single ESSD can deliver up to 100,000 random read/write IOPS.
	// - `PL3`: A single ESSD can deliver up to 1,000,000 random read/write IOPS.
	//   Default to `PL1`.
	PerformanceLevel *string `pulumi:"performanceLevel"`
	// The size of the data disk.
	// - cloud:[5, 2000]
	// - cloud_efficiency:[20, 32768]
	// - cloud_ssd:[20, 32768]
	// - cloud_essd:[20, 32768]
	// - ephemeral_ssd: [5, 800]
	Size int `pulumi:"size"`
	// The snapshot ID used to initialize the data disk. If the size specified by snapshot is greater that the size of the disk, use the size specified by snapshot as the size of the data disk.
	SnapshotId *string `pulumi:"snapshotId"`
}

type InstanceDataDiskArgs

type InstanceDataDiskArgs struct {
	// The ID of the automatic snapshot policy applied to the system disk.
	AutoSnapshotPolicyId pulumi.StringPtrInput `pulumi:"autoSnapshotPolicyId"`
	// The category of the disk:
	// - `cloud`: The general cloud disk.
	// - `cloudEfficiency`: The efficiency cloud disk.
	// - `cloudSsd`: The SSD cloud disk.
	// - `cloudEssd`: The ESSD cloud disk.
	// - `ephemeralSsd`: The local SSD disk.
	//   Default to `cloudEfficiency`.
	Category pulumi.StringPtrInput `pulumi:"category"`
	// Delete this data disk when the instance is destroyed. It only works on cloud, cloud_efficiency, cloud_essd, cloudSsd disk. If the category of this data disk was ephemeral_ssd, please don't set this param. Default value: `true`.
	DeleteWithInstance pulumi.BoolPtrInput `pulumi:"deleteWithInstance"`
	// The description of the data disk.
	Description pulumi.StringPtrInput `pulumi:"description"`
	// The mount point of the data disk.
	Device pulumi.StringPtrInput `pulumi:"device"`
	// -(Optional, Bool, ForceNew) Encrypted the data in this disk. Default value: `false`.
	Encrypted pulumi.BoolPtrInput `pulumi:"encrypted"`
	// The KMS key ID corresponding to the Nth data disk.
	KmsKeyId pulumi.StringPtrInput `pulumi:"kmsKeyId"`
	// The name of the data disk.
	Name pulumi.StringPtrInput `pulumi:"name"`
	// The performance level of the ESSD used as data disk:
	// - `PL0`: A single ESSD can deliver up to 10,000 random read/write IOPS.
	// - `PL1`: A single ESSD can deliver up to 50,000 random read/write IOPS.
	// - `PL2`: A single ESSD can deliver up to 100,000 random read/write IOPS.
	// - `PL3`: A single ESSD can deliver up to 1,000,000 random read/write IOPS.
	//   Default to `PL1`.
	PerformanceLevel pulumi.StringPtrInput `pulumi:"performanceLevel"`
	// The size of the data disk.
	// - cloud:[5, 2000]
	// - cloud_efficiency:[20, 32768]
	// - cloud_ssd:[20, 32768]
	// - cloud_essd:[20, 32768]
	// - ephemeral_ssd: [5, 800]
	Size pulumi.IntInput `pulumi:"size"`
	// The snapshot ID used to initialize the data disk. If the size specified by snapshot is greater that the size of the disk, use the size specified by snapshot as the size of the data disk.
	SnapshotId pulumi.StringPtrInput `pulumi:"snapshotId"`
}

func (InstanceDataDiskArgs) ElementType

func (InstanceDataDiskArgs) ElementType() reflect.Type

func (InstanceDataDiskArgs) ToInstanceDataDiskOutput

func (i InstanceDataDiskArgs) ToInstanceDataDiskOutput() InstanceDataDiskOutput

func (InstanceDataDiskArgs) ToInstanceDataDiskOutputWithContext

func (i InstanceDataDiskArgs) ToInstanceDataDiskOutputWithContext(ctx context.Context) InstanceDataDiskOutput

type InstanceDataDiskArray

type InstanceDataDiskArray []InstanceDataDiskInput

func (InstanceDataDiskArray) ElementType

func (InstanceDataDiskArray) ElementType() reflect.Type

func (InstanceDataDiskArray) ToInstanceDataDiskArrayOutput

func (i InstanceDataDiskArray) ToInstanceDataDiskArrayOutput() InstanceDataDiskArrayOutput

func (InstanceDataDiskArray) ToInstanceDataDiskArrayOutputWithContext

func (i InstanceDataDiskArray) ToInstanceDataDiskArrayOutputWithContext(ctx context.Context) InstanceDataDiskArrayOutput

type InstanceDataDiskArrayInput

type InstanceDataDiskArrayInput interface {
	pulumi.Input

	ToInstanceDataDiskArrayOutput() InstanceDataDiskArrayOutput
	ToInstanceDataDiskArrayOutputWithContext(context.Context) InstanceDataDiskArrayOutput
}

InstanceDataDiskArrayInput is an input type that accepts InstanceDataDiskArray and InstanceDataDiskArrayOutput values. You can construct a concrete instance of `InstanceDataDiskArrayInput` via:

InstanceDataDiskArray{ InstanceDataDiskArgs{...} }

type InstanceDataDiskArrayOutput

type InstanceDataDiskArrayOutput struct{ *pulumi.OutputState }

func (InstanceDataDiskArrayOutput) ElementType

func (InstanceDataDiskArrayOutput) Index

func (InstanceDataDiskArrayOutput) ToInstanceDataDiskArrayOutput

func (o InstanceDataDiskArrayOutput) ToInstanceDataDiskArrayOutput() InstanceDataDiskArrayOutput

func (InstanceDataDiskArrayOutput) ToInstanceDataDiskArrayOutputWithContext

func (o InstanceDataDiskArrayOutput) ToInstanceDataDiskArrayOutputWithContext(ctx context.Context) InstanceDataDiskArrayOutput

type InstanceDataDiskInput

type InstanceDataDiskInput interface {
	pulumi.Input

	ToInstanceDataDiskOutput() InstanceDataDiskOutput
	ToInstanceDataDiskOutputWithContext(context.Context) InstanceDataDiskOutput
}

InstanceDataDiskInput is an input type that accepts InstanceDataDiskArgs and InstanceDataDiskOutput values. You can construct a concrete instance of `InstanceDataDiskInput` via:

InstanceDataDiskArgs{...}

type InstanceDataDiskOutput

type InstanceDataDiskOutput struct{ *pulumi.OutputState }

func (InstanceDataDiskOutput) AutoSnapshotPolicyId

func (o InstanceDataDiskOutput) AutoSnapshotPolicyId() pulumi.StringPtrOutput

The ID of the automatic snapshot policy applied to the system disk.

func (InstanceDataDiskOutput) Category

The category of the disk:

  • `cloud`: The general cloud disk.
  • `cloudEfficiency`: The efficiency cloud disk.
  • `cloudSsd`: The SSD cloud disk.
  • `cloudEssd`: The ESSD cloud disk.
  • `ephemeralSsd`: The local SSD disk. Default to `cloudEfficiency`.

func (InstanceDataDiskOutput) DeleteWithInstance

func (o InstanceDataDiskOutput) DeleteWithInstance() pulumi.BoolPtrOutput

Delete this data disk when the instance is destroyed. It only works on cloud, cloud_efficiency, cloud_essd, cloudSsd disk. If the category of this data disk was ephemeral_ssd, please don't set this param. Default value: `true`.

func (InstanceDataDiskOutput) Description

The description of the data disk.

func (InstanceDataDiskOutput) Device

The mount point of the data disk.

func (InstanceDataDiskOutput) ElementType

func (InstanceDataDiskOutput) ElementType() reflect.Type

func (InstanceDataDiskOutput) Encrypted

-(Optional, Bool, ForceNew) Encrypted the data in this disk. Default value: `false`.

func (InstanceDataDiskOutput) KmsKeyId

The KMS key ID corresponding to the Nth data disk.

func (InstanceDataDiskOutput) Name

The name of the data disk.

func (InstanceDataDiskOutput) PerformanceLevel

func (o InstanceDataDiskOutput) PerformanceLevel() pulumi.StringPtrOutput

The performance level of the ESSD used as data disk:

  • `PL0`: A single ESSD can deliver up to 10,000 random read/write IOPS.
  • `PL1`: A single ESSD can deliver up to 50,000 random read/write IOPS.
  • `PL2`: A single ESSD can deliver up to 100,000 random read/write IOPS.
  • `PL3`: A single ESSD can deliver up to 1,000,000 random read/write IOPS. Default to `PL1`.

func (InstanceDataDiskOutput) Size

The size of the data disk. - cloud:[5, 2000] - cloud_efficiency:[20, 32768] - cloud_ssd:[20, 32768] - cloud_essd:[20, 32768] - ephemeral_ssd: [5, 800]

func (InstanceDataDiskOutput) SnapshotId

The snapshot ID used to initialize the data disk. If the size specified by snapshot is greater that the size of the disk, use the size specified by snapshot as the size of the data disk.

func (InstanceDataDiskOutput) ToInstanceDataDiskOutput

func (o InstanceDataDiskOutput) ToInstanceDataDiskOutput() InstanceDataDiskOutput

func (InstanceDataDiskOutput) ToInstanceDataDiskOutputWithContext

func (o InstanceDataDiskOutput) ToInstanceDataDiskOutputWithContext(ctx context.Context) InstanceDataDiskOutput

type InstanceInput

type InstanceInput interface {
	pulumi.Input

	ToInstanceOutput() InstanceOutput
	ToInstanceOutputWithContext(ctx context.Context) InstanceOutput
}

type InstanceMaintenanceTime

type InstanceMaintenanceTime struct {
	// The end time of maintenance. The time must be on the hour at exactly 0 minute and 0 second. The `startTime` and `endTime` parameters must be specified at the same time. The `endTime` value must be 1 to 23 hours later than the `startTime` value. Specify the time in the HH:mm:ss format. The time must be in UTC+8.
	EndTime *string `pulumi:"endTime"`
	// The start time of maintenance. The time must be on the hour at exactly 0 minute and 0 second. The `startTime` and `endTime` parameters must be specified at the same time. The `endTime` value must be 1 to 23 hours later than the `startTime` value. Specify the time in the HH:mm:ss format. The time must be in UTC+8.
	StartTime *string `pulumi:"startTime"`
}

type InstanceMaintenanceTimeArgs

type InstanceMaintenanceTimeArgs struct {
	// The end time of maintenance. The time must be on the hour at exactly 0 minute and 0 second. The `startTime` and `endTime` parameters must be specified at the same time. The `endTime` value must be 1 to 23 hours later than the `startTime` value. Specify the time in the HH:mm:ss format. The time must be in UTC+8.
	EndTime pulumi.StringPtrInput `pulumi:"endTime"`
	// The start time of maintenance. The time must be on the hour at exactly 0 minute and 0 second. The `startTime` and `endTime` parameters must be specified at the same time. The `endTime` value must be 1 to 23 hours later than the `startTime` value. Specify the time in the HH:mm:ss format. The time must be in UTC+8.
	StartTime pulumi.StringPtrInput `pulumi:"startTime"`
}

func (InstanceMaintenanceTimeArgs) ElementType

func (InstanceMaintenanceTimeArgs) ToInstanceMaintenanceTimeOutput

func (i InstanceMaintenanceTimeArgs) ToInstanceMaintenanceTimeOutput() InstanceMaintenanceTimeOutput

func (InstanceMaintenanceTimeArgs) ToInstanceMaintenanceTimeOutputWithContext

func (i InstanceMaintenanceTimeArgs) ToInstanceMaintenanceTimeOutputWithContext(ctx context.Context) InstanceMaintenanceTimeOutput

func (InstanceMaintenanceTimeArgs) ToInstanceMaintenanceTimePtrOutput

func (i InstanceMaintenanceTimeArgs) ToInstanceMaintenanceTimePtrOutput() InstanceMaintenanceTimePtrOutput

func (InstanceMaintenanceTimeArgs) ToInstanceMaintenanceTimePtrOutputWithContext

func (i InstanceMaintenanceTimeArgs) ToInstanceMaintenanceTimePtrOutputWithContext(ctx context.Context) InstanceMaintenanceTimePtrOutput

type InstanceMaintenanceTimeInput

type InstanceMaintenanceTimeInput interface {
	pulumi.Input

	ToInstanceMaintenanceTimeOutput() InstanceMaintenanceTimeOutput
	ToInstanceMaintenanceTimeOutputWithContext(context.Context) InstanceMaintenanceTimeOutput
}

InstanceMaintenanceTimeInput is an input type that accepts InstanceMaintenanceTimeArgs and InstanceMaintenanceTimeOutput values. You can construct a concrete instance of `InstanceMaintenanceTimeInput` via:

InstanceMaintenanceTimeArgs{...}

type InstanceMaintenanceTimeOutput

type InstanceMaintenanceTimeOutput struct{ *pulumi.OutputState }

func (InstanceMaintenanceTimeOutput) ElementType

func (InstanceMaintenanceTimeOutput) EndTime

The end time of maintenance. The time must be on the hour at exactly 0 minute and 0 second. The `startTime` and `endTime` parameters must be specified at the same time. The `endTime` value must be 1 to 23 hours later than the `startTime` value. Specify the time in the HH:mm:ss format. The time must be in UTC+8.

func (InstanceMaintenanceTimeOutput) StartTime

The start time of maintenance. The time must be on the hour at exactly 0 minute and 0 second. The `startTime` and `endTime` parameters must be specified at the same time. The `endTime` value must be 1 to 23 hours later than the `startTime` value. Specify the time in the HH:mm:ss format. The time must be in UTC+8.

func (InstanceMaintenanceTimeOutput) ToInstanceMaintenanceTimeOutput

func (o InstanceMaintenanceTimeOutput) ToInstanceMaintenanceTimeOutput() InstanceMaintenanceTimeOutput

func (InstanceMaintenanceTimeOutput) ToInstanceMaintenanceTimeOutputWithContext

func (o InstanceMaintenanceTimeOutput) ToInstanceMaintenanceTimeOutputWithContext(ctx context.Context) InstanceMaintenanceTimeOutput

func (InstanceMaintenanceTimeOutput) ToInstanceMaintenanceTimePtrOutput

func (o InstanceMaintenanceTimeOutput) ToInstanceMaintenanceTimePtrOutput() InstanceMaintenanceTimePtrOutput

func (InstanceMaintenanceTimeOutput) ToInstanceMaintenanceTimePtrOutputWithContext

func (o InstanceMaintenanceTimeOutput) ToInstanceMaintenanceTimePtrOutputWithContext(ctx context.Context) InstanceMaintenanceTimePtrOutput

type InstanceMaintenanceTimePtrInput

type InstanceMaintenanceTimePtrInput interface {
	pulumi.Input

	ToInstanceMaintenanceTimePtrOutput() InstanceMaintenanceTimePtrOutput
	ToInstanceMaintenanceTimePtrOutputWithContext(context.Context) InstanceMaintenanceTimePtrOutput
}

InstanceMaintenanceTimePtrInput is an input type that accepts InstanceMaintenanceTimeArgs, InstanceMaintenanceTimePtr and InstanceMaintenanceTimePtrOutput values. You can construct a concrete instance of `InstanceMaintenanceTimePtrInput` via:

        InstanceMaintenanceTimeArgs{...}

or:

        nil

type InstanceMaintenanceTimePtrOutput

type InstanceMaintenanceTimePtrOutput struct{ *pulumi.OutputState }

func (InstanceMaintenanceTimePtrOutput) Elem

func (InstanceMaintenanceTimePtrOutput) ElementType

func (InstanceMaintenanceTimePtrOutput) EndTime

The end time of maintenance. The time must be on the hour at exactly 0 minute and 0 second. The `startTime` and `endTime` parameters must be specified at the same time. The `endTime` value must be 1 to 23 hours later than the `startTime` value. Specify the time in the HH:mm:ss format. The time must be in UTC+8.

func (InstanceMaintenanceTimePtrOutput) StartTime

The start time of maintenance. The time must be on the hour at exactly 0 minute and 0 second. The `startTime` and `endTime` parameters must be specified at the same time. The `endTime` value must be 1 to 23 hours later than the `startTime` value. Specify the time in the HH:mm:ss format. The time must be in UTC+8.

func (InstanceMaintenanceTimePtrOutput) ToInstanceMaintenanceTimePtrOutput

func (o InstanceMaintenanceTimePtrOutput) ToInstanceMaintenanceTimePtrOutput() InstanceMaintenanceTimePtrOutput

func (InstanceMaintenanceTimePtrOutput) ToInstanceMaintenanceTimePtrOutputWithContext

func (o InstanceMaintenanceTimePtrOutput) ToInstanceMaintenanceTimePtrOutputWithContext(ctx context.Context) InstanceMaintenanceTimePtrOutput

type InstanceMap

type InstanceMap map[string]InstanceInput

func (InstanceMap) ElementType

func (InstanceMap) ElementType() reflect.Type

func (InstanceMap) ToInstanceMapOutput

func (i InstanceMap) ToInstanceMapOutput() InstanceMapOutput

func (InstanceMap) ToInstanceMapOutputWithContext

func (i InstanceMap) ToInstanceMapOutputWithContext(ctx context.Context) InstanceMapOutput

type InstanceMapInput

type InstanceMapInput interface {
	pulumi.Input

	ToInstanceMapOutput() InstanceMapOutput
	ToInstanceMapOutputWithContext(context.Context) InstanceMapOutput
}

InstanceMapInput is an input type that accepts InstanceMap and InstanceMapOutput values. You can construct a concrete instance of `InstanceMapInput` via:

InstanceMap{ "key": InstanceArgs{...} }

type InstanceMapOutput

type InstanceMapOutput struct{ *pulumi.OutputState }

func (InstanceMapOutput) ElementType

func (InstanceMapOutput) ElementType() reflect.Type

func (InstanceMapOutput) MapIndex

func (InstanceMapOutput) ToInstanceMapOutput

func (o InstanceMapOutput) ToInstanceMapOutput() InstanceMapOutput

func (InstanceMapOutput) ToInstanceMapOutputWithContext

func (o InstanceMapOutput) ToInstanceMapOutputWithContext(ctx context.Context) InstanceMapOutput

type InstanceOutput

type InstanceOutput struct{ *pulumi.OutputState }

func (InstanceOutput) AllocatePublicIp deprecated

func (o InstanceOutput) AllocatePublicIp() pulumi.BoolPtrOutput

It has been deprecated from version "1.7.0". Setting "internetMaxBandwidthOut" larger than 0 can allocate a public ip address for an instance.

Deprecated: Field 'allocate_public_ip' has been deprecated from provider version 1.6.1. Setting 'internet_max_bandwidth_out' larger than 0 will allocate public ip for instance.

func (InstanceOutput) AutoReleaseTime

func (o InstanceOutput) AutoReleaseTime() pulumi.StringPtrOutput

The automatic release time of the `PostPaid` instance. The time follows the ISO 8601 standard and is in UTC time. Format: yyyy-MM-ddTHH:mm:ssZ. It must be at least half an hour later than the current time and less than 3 years since the current time. Set it to null can cancel automatic release attribute and the ECS instance will not be released automatically.

func (InstanceOutput) AutoRenewPeriod

func (o InstanceOutput) AutoRenewPeriod() pulumi.IntPtrOutput

Auto renewal period of an instance, in the unit of month. It is valid when `instanceChargeType` is `PrePaid`. Default to 1. Valid value: - [1, 2, 3, 6, 12] when `periodUnit` in "Month" - [1, 2, 3] when `periodUnit` in "Week"

func (InstanceOutput) AvailabilityZone

func (o InstanceOutput) AvailabilityZone() pulumi.StringOutput

The Zone to start the instance in. It is ignored and will be computed when set `vswitchId`.

func (InstanceOutput) CreditSpecification

func (o InstanceOutput) CreditSpecification() pulumi.StringOutput

Performance mode of the t5 burstable instance. Valid values: 'Standard', 'Unlimited'.

func (InstanceOutput) DataDisks

The list of data disks created with instance.

func (InstanceOutput) DeletionProtection

func (o InstanceOutput) DeletionProtection() pulumi.BoolPtrOutput

Whether enable the deletion protection or not. Default value: `false`. - true: Enable deletion protection. - false: Disable deletion protection.

func (InstanceOutput) DeploymentSetGroupNo

func (o InstanceOutput) DeploymentSetGroupNo() pulumi.StringOutput

(Optional, Available in 1.149.0+) The group number of the instance in a deployment set when the deployment set is use.

func (InstanceOutput) DeploymentSetId

func (o InstanceOutput) DeploymentSetId() pulumi.StringPtrOutput

The ID of the deployment set to which to deploy the instance. **NOTE:** From version 1.176.0, instance's deploymentSetId can be removed when 'deployment_set_id' = "".

func (InstanceOutput) Description

func (o InstanceOutput) Description() pulumi.StringPtrOutput

The description of the data disk.

func (InstanceOutput) DryRun

func (o InstanceOutput) DryRun() pulumi.BoolPtrOutput

Specifies whether to send a dry-run request. Default to false. - true: Only a dry-run request is sent and no instance is created. The system checks whether the required parameters are set, and validates the request format, service permissions, and available ECS instances. If the validation fails, the corresponding error code is returned. If the validation succeeds, the `DryRunOperation` error code is returned. - false: A request is sent. If the validation succeeds, the instance is created.

func (InstanceOutput) ElementType

func (InstanceOutput) ElementType() reflect.Type

func (InstanceOutput) ForceDelete

func (o InstanceOutput) ForceDelete() pulumi.BoolPtrOutput

If it is true, the "PrePaid" instance will be change to "PostPaid" and then deleted forcibly. However, because of changing instance charge type has CPU core count quota limitation, so strongly recommand that "Don't modify instance charge type frequentlly in one month".

func (InstanceOutput) HostName

func (o InstanceOutput) HostName() pulumi.StringOutput

Host name of the ECS, which is a string of at least two characters. “hostname” cannot start or end with “.” or “-“. In addition, two or more consecutive “.” or “-“ symbols are not allowed. On Windows, the host name can contain a maximum of 15 characters, which can be a combination of uppercase/lowercase letters, numerals, and “-“. The host name cannot contain dots (“.”) or contain only numeric characters. When it is changed, the instance will reboot to make the change take effect. On other OSs such as Linux, the host name can contain a maximum of 64 characters, which can be segments separated by dots (“.”), where each segment can contain uppercase/lowercase letters, numerals, or “_“. When it is changed, the instance will reboot to make the change take effect.

func (InstanceOutput) HpcClusterId

func (o InstanceOutput) HpcClusterId() pulumi.StringPtrOutput

The ID of the Elastic High Performance Computing (E-HPC) cluster to which to assign the instance.

func (InstanceOutput) HttpEndpoint

func (o InstanceOutput) HttpEndpoint() pulumi.StringOutput

Specifies whether to enable the access channel for instance metadata. Valid values: `enabled`, `disabled`. Default value: `enabled`.

func (InstanceOutput) HttpPutResponseHopLimit

func (o InstanceOutput) HttpPutResponseHopLimit() pulumi.IntOutput

The HTTP PUT response hop limit for accessing instance metadata. Valid values: 1 to 64. Default value: 1.

func (InstanceOutput) HttpTokens

func (o InstanceOutput) HttpTokens() pulumi.StringOutput

Specifies whether to forcefully use the security-enhanced mode (IMDSv2) to access instance metadata. Default value: optional. Valid values: - optional: does not forcefully use the security-enhanced mode (IMDSv2). - required: forcefully uses the security-enhanced mode (IMDSv2). After you set this parameter to required, you cannot access instance metadata in normal mode.

func (InstanceOutput) ImageId

func (o InstanceOutput) ImageId() pulumi.StringOutput

The Image to use for the instance. ECS instance's image can be replaced via changing `imageId`. When it is changed, the instance will reboot to make the change take effect.

func (InstanceOutput) IncludeDataDisks

func (o InstanceOutput) IncludeDataDisks() pulumi.BoolPtrOutput

Whether to change instance disks charge type when changing instance charge type.

func (InstanceOutput) InstanceChargeType

func (o InstanceOutput) InstanceChargeType() pulumi.StringPtrOutput

Valid values are `PrePaid`, `PostPaid`, The default is `PostPaid`.

func (InstanceOutput) InstanceName

func (o InstanceOutput) InstanceName() pulumi.StringPtrOutput

func (InstanceOutput) InstanceType

func (o InstanceOutput) InstanceType() pulumi.StringOutput

The type of instance to start. When it is changed, the instance will reboot to make the change take effect.

func (InstanceOutput) InternetChargeType

func (o InstanceOutput) InternetChargeType() pulumi.StringPtrOutput

Internet charge type of the instance, Valid values are `PayByBandwidth`, `PayByTraffic`. Default is `PayByTraffic`. At present, 'PrePaid' instance cannot change the value to "PayByBandwidth" from "PayByTraffic".

func (InstanceOutput) InternetMaxBandwidthIn deprecated

func (o InstanceOutput) InternetMaxBandwidthIn() pulumi.IntOutput

Maximum incoming bandwidth from the public network, measured in Mbps (Mega bit per second). Value range: [1, 200]. If this value is not specified, then automatically sets it to 200 Mbps.

Deprecated: The attribute is invalid and no any affect for the instance. So it has been deprecated from version v1.121.2.

func (InstanceOutput) InternetMaxBandwidthOut

func (o InstanceOutput) InternetMaxBandwidthOut() pulumi.IntPtrOutput

Maximum outgoing bandwidth to the public network, measured in Mbps (Mega bit per second). Value range: [0, 100]. Default to 0 Mbps.

func (InstanceOutput) IoOptimized deprecated

func (o InstanceOutput) IoOptimized() pulumi.StringPtrOutput

It has been deprecated on instance resource. All the launched alicloud instances will be I/O optimized.

Deprecated: Attribute io_optimized has been deprecated on instance resource. All the launched alicloud instances will be IO optimized. Suggest to remove it from your template.

func (InstanceOutput) Ipv6AddressCount

func (o InstanceOutput) Ipv6AddressCount() pulumi.IntOutput

The number of IPv6 addresses to randomly generate for the primary ENI. Valid values: 1 to 10. **NOTE:** You cannot specify both the `ipv6Addresses` and `ipv6AddressCount` parameters.

func (InstanceOutput) Ipv6Addresses

func (o InstanceOutput) Ipv6Addresses() pulumi.StringArrayOutput

A list of IPv6 address to be assigned to the primary ENI. Support up to 10.

func (InstanceOutput) IsOutdated

func (o InstanceOutput) IsOutdated() pulumi.BoolPtrOutput

Whether to use outdated instance type. Default to false.

func (InstanceOutput) KeyName

func (o InstanceOutput) KeyName() pulumi.StringOutput

The name of key pair that can login ECS instance successfully without password. If it is specified, the password would be invalid.

func (InstanceOutput) KmsEncryptedPassword

func (o InstanceOutput) KmsEncryptedPassword() pulumi.StringPtrOutput

An KMS encrypts password used to an instance. If the `password` is filled in, this field will be ignored. When it is changed, the instance will reboot to make the change take effect.

func (InstanceOutput) KmsEncryptionContext

func (o InstanceOutput) KmsEncryptionContext() pulumi.MapOutput

An KMS encryption context used to decrypt `kmsEncryptedPassword` before creating or updating an instance with `kmsEncryptedPassword`. See [Encryption Context](https://www.alibabacloud.com/help/doc-detail/42975.htm). It is valid when `kmsEncryptedPassword` is set. When it is changed, the instance will reboot to make the change take effect.

func (InstanceOutput) MaintenanceAction

func (o InstanceOutput) MaintenanceAction() pulumi.StringOutput

The maintenance action. Valid values: `Stop`, `AutoRecover` and `AutoRedeploy`.

func (InstanceOutput) MaintenanceNotify

func (o InstanceOutput) MaintenanceNotify() pulumi.BoolPtrOutput

Specifies whether to send an event notification before instance shutdown. Valid values: `true`, `false`. Default value: `false`.

func (InstanceOutput) MaintenanceTime

The time of maintenance. See the following `Block maintenanceTime`.

func (InstanceOutput) OperatorType

func (o InstanceOutput) OperatorType() pulumi.StringPtrOutput

The operation type. It is valid when `instanceChargeType` is `PrePaid`. Default value: `upgrade`. Valid values: `upgrade`, `downgrade`. **NOTE:** When the new instance type specified by the `instanceType` parameter has lower specifications than the current instance type, you must set `operatorType` to `downgrade`.

func (InstanceOutput) Password

func (o InstanceOutput) Password() pulumi.StringPtrOutput

Password to an instance is a string of 8 to 30 characters. It must contain uppercase/lowercase letters and numerals, but cannot contain special symbols. When it is changed, the instance will reboot to make the change take effect.

func (InstanceOutput) Period

func (o InstanceOutput) Period() pulumi.IntPtrOutput

func (InstanceOutput) PeriodUnit

func (o InstanceOutput) PeriodUnit() pulumi.StringPtrOutput

The duration unit that you will buy the resource. It is valid when `instanceChargeType` is 'PrePaid'. Valid value: ["Week", "Month"]. Default to "Month".

func (InstanceOutput) PrivateIp

func (o InstanceOutput) PrivateIp() pulumi.StringOutput

Instance private IP address can be specified when you creating new instance. It is valid when `vswitchId` is specified. When it is changed, the instance will reboot to make the change take effect.

func (InstanceOutput) PublicIp

func (o InstanceOutput) PublicIp() pulumi.StringOutput

The instance public ip.

func (InstanceOutput) RenewalStatus

func (o InstanceOutput) RenewalStatus() pulumi.StringPtrOutput

Whether to renew an ECS instance automatically or not. It is valid when `instanceChargeType` is `PrePaid`. Default to "Normal". Valid values: - `AutoRenewal`: Enable auto renewal. - `Normal`: Disable auto renewal. - `NotRenewal`: No renewal any longer. After you specify this value, Alibaba Cloud stop sending notification of instance expiry, and only gives a brief reminder on the third day before the instance expiry.

func (InstanceOutput) ResourceGroupId

func (o InstanceOutput) ResourceGroupId() pulumi.StringPtrOutput

The Id of resource group which the instance belongs.

func (InstanceOutput) RoleName

func (o InstanceOutput) RoleName() pulumi.StringOutput

Instance RAM role name. The name is provided and maintained by RAM. You can use `ram.Role` to create a new one.

func (InstanceOutput) SecondaryPrivateIpAddressCount

func (o InstanceOutput) SecondaryPrivateIpAddressCount() pulumi.IntOutput

The number of private IP addresses to be automatically assigned from within the CIDR block of the vswitch. **NOTE:** To assign secondary private IP addresses, you must specify `secondaryPrivateIps` or `secondaryPrivateIpAddressCount` but not both.

func (InstanceOutput) SecondaryPrivateIps

func (o InstanceOutput) SecondaryPrivateIps() pulumi.StringArrayOutput

A list of Secondary private IP addresses which is selected from within the CIDR block of the VSwitch.

func (InstanceOutput) SecurityEnhancementStrategy

func (o InstanceOutput) SecurityEnhancementStrategy() pulumi.StringPtrOutput

The security enhancement strategy. - Active: Enable security enhancement strategy, it only works on system images. - Deactive: Disable security enhancement strategy, it works on all images.

func (InstanceOutput) SecurityGroups

func (o InstanceOutput) SecurityGroups() pulumi.StringArrayOutput

A list of security group ids to associate with.

func (InstanceOutput) SpotDuration

func (o InstanceOutput) SpotDuration() pulumi.IntOutput

The retention time of the preemptive instance in hours. Valid values: `0`, `1`, `2`, `3`, `4`, `5`, `6`. Retention duration 2~6 is under invitation test, please submit a work order if you need to open. If the value is `0`, the mode is no protection period. Default value is `1`.

func (InstanceOutput) SpotPriceLimit

func (o InstanceOutput) SpotPriceLimit() pulumi.Float64PtrOutput

The hourly price threshold of a instance, and it takes effect only when parameter 'spot_strategy' is 'SpotWithPriceLimit'. Three decimals is allowed at most.

func (InstanceOutput) SpotStrategy

func (o InstanceOutput) SpotStrategy() pulumi.StringPtrOutput

The spot strategy of a Pay-As-You-Go instance, and it takes effect only when parameter `instanceChargeType` is 'PostPaid'. Value range: - NoSpot: A regular Pay-As-You-Go instance. - SpotWithPriceLimit: A price threshold for a spot instance - SpotAsPriceGo: A price that is based on the highest Pay-As-You-Go instance

func (InstanceOutput) Status

func (o InstanceOutput) Status() pulumi.StringOutput

The instance status. Valid values: ["Running", "Stopped"]. You can control the instance start and stop through this parameter. Default to `Running`.

func (InstanceOutput) StoppedMode

func (o InstanceOutput) StoppedMode() pulumi.StringOutput

The stop mode of the pay-as-you-go instance. Valid values: `StopCharging`,`KeepCharging`. Default value: If the prerequisites required for enabling the economical mode are met, and you have enabled this mode in the ECS console, the default value is `StopCharging`. For more information, see "Enable the economical mode" in [Economical mode](https://www.alibabacloud.com/help/en/elastic-compute-service/latest/economical-mode). Otherwise, the default value is `KeepCharging`. **Note:** `Not-applicable`: Economical mode is not applicable to the instance.`

func (InstanceOutput) SubnetId deprecated

func (o InstanceOutput) SubnetId() pulumi.StringOutput

Deprecated: Field 'subnet_id' has been deprecated from version 1.177.0, and use field 'vswitch_id' to replace.

func (InstanceOutput) SystemDiskAutoSnapshotPolicyId

func (o InstanceOutput) SystemDiskAutoSnapshotPolicyId() pulumi.StringPtrOutput

The ID of the automatic snapshot policy applied to the system disk.

func (InstanceOutput) SystemDiskCategory

func (o InstanceOutput) SystemDiskCategory() pulumi.StringPtrOutput

Valid values are `ephemeralSsd`, `cloudEfficiency`, `cloudSsd`, `cloudEssd`, `cloud`, `cloudAuto`. only is used to some none I/O optimized instance. Default to `cloudEfficiency`. Valid values `cloudAuto` Available in 1.184.0+.

func (InstanceOutput) SystemDiskDescription

func (o InstanceOutput) SystemDiskDescription() pulumi.StringPtrOutput

The description of the system disk. The description must be 2 to 256 characters in length and cannot start with http:// or https://.

func (InstanceOutput) SystemDiskEncryptAlgorithm

func (o InstanceOutput) SystemDiskEncryptAlgorithm() pulumi.StringPtrOutput

The algorithm to be used to encrypt the system disk. Valid values are `aes-256`, `sm4-128`. Default value is `aes-256`.

func (InstanceOutput) SystemDiskEncrypted

func (o InstanceOutput) SystemDiskEncrypted() pulumi.BoolPtrOutput

Specifies whether to encrypt the system disk. Valid values: `true`,`false`. Default value: `false`. - `true`: encrypts the system disk. - `false`: does not encrypt the system disk.

func (InstanceOutput) SystemDiskKmsKeyId

func (o InstanceOutput) SystemDiskKmsKeyId() pulumi.StringPtrOutput

The ID of the Key Management Service (KMS) key to be used for the system disk.

func (InstanceOutput) SystemDiskName

func (o InstanceOutput) SystemDiskName() pulumi.StringPtrOutput

The name of the system disk. The name must be 2 to 128 characters in length and can contain letters, digits, periods (.), colons (:), underscores (_), and hyphens (-). It must start with a letter and cannot start with http:// or https://.

func (InstanceOutput) SystemDiskPerformanceLevel

func (o InstanceOutput) SystemDiskPerformanceLevel() pulumi.StringOutput

The performance level of the ESSD used as the system disk, Valid values: `PL0`, `PL1`, `PL2`, `PL3`, Default to `PL1`;For more information about ESSD, See [Encryption Context](https://www.alibabacloud.com/help/doc-detail/122389.htm).

func (InstanceOutput) SystemDiskSize

func (o InstanceOutput) SystemDiskSize() pulumi.IntPtrOutput

Size of the system disk, measured in GiB. Value range: [20, 500]. The specified value must be equal to or greater than max{20, Imagesize}. Default value: max{40, ImageSize}.

func (InstanceOutput) SystemDiskStorageClusterId

func (o InstanceOutput) SystemDiskStorageClusterId() pulumi.StringPtrOutput

The ID of the dedicated block storage cluster. If you want to use disks in a dedicated block storage cluster as system disks when you create instances, you must specify this parameter. For more information about dedicated block storage clusters, see [What is Dedicated Block Storage Cluster?](https://www.alibabacloud.com/help/en/elastic-compute-service/latest/dedicated-block-storage-clusters-overview).

func (InstanceOutput) Tags

A mapping of tags to assign to the resource. - Key: It can be up to 64 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It cannot be a null string. - Value: It can be up to 128 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It can be a null string.

func (InstanceOutput) ToInstanceOutput

func (o InstanceOutput) ToInstanceOutput() InstanceOutput

func (InstanceOutput) ToInstanceOutputWithContext

func (o InstanceOutput) ToInstanceOutputWithContext(ctx context.Context) InstanceOutput

func (InstanceOutput) UserData

func (o InstanceOutput) UserData() pulumi.StringPtrOutput

User-defined data to customize the startup behaviors of an ECS instance and to pass data into an ECS instance. From version 1.60.0, it can be update in-place. If updated, the instance will reboot to make the change take effect. Note: Not all of changes will take effect and it depends on [cloud-init module type](https://cloudinit.readthedocs.io/en/latest/topics/modules.html).

func (InstanceOutput) VolumeTags

func (o InstanceOutput) VolumeTags() pulumi.MapOutput

A mapping of tags to assign to the devices created by the instance at launch time. - Key: It can be up to 64 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It cannot be a null string. - Value: It can be up to 128 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It can be a null string.

func (InstanceOutput) VswitchId

func (o InstanceOutput) VswitchId() pulumi.StringPtrOutput

The virtual switch ID to launch in VPC. This parameter must be set unless you can create classic network instances. When it is changed, the instance will reboot to make the change take effect.

type InstanceState

type InstanceState struct {
	// It has been deprecated from version "1.7.0". Setting "internetMaxBandwidthOut" larger than 0 can allocate a public ip address for an instance.
	//
	// Deprecated: Field 'allocate_public_ip' has been deprecated from provider version 1.6.1. Setting 'internet_max_bandwidth_out' larger than 0 will allocate public ip for instance.
	AllocatePublicIp pulumi.BoolPtrInput
	// The automatic release time of the `PostPaid` instance.
	// The time follows the ISO 8601 standard and is in UTC time. Format: yyyy-MM-ddTHH:mm:ssZ. It must be at least half an hour later than the current time and less than 3 years since the current time.
	// Set it to null can cancel automatic release attribute and the ECS instance will not be released automatically.
	AutoReleaseTime pulumi.StringPtrInput
	// Auto renewal period of an instance, in the unit of month. It is valid when `instanceChargeType` is `PrePaid`. Default to 1. Valid value:
	// - [1, 2, 3, 6, 12] when `periodUnit` in "Month"
	// - [1, 2, 3] when `periodUnit` in "Week"
	AutoRenewPeriod pulumi.IntPtrInput
	// The Zone to start the instance in. It is ignored and will be computed when set `vswitchId`.
	AvailabilityZone pulumi.StringPtrInput
	// Performance mode of the t5 burstable instance. Valid values: 'Standard', 'Unlimited'.
	CreditSpecification pulumi.StringPtrInput
	// The list of data disks created with instance.
	DataDisks InstanceDataDiskArrayInput
	// Whether enable the deletion protection or not. Default value: `false`.
	// - true: Enable deletion protection.
	// - false: Disable deletion protection.
	DeletionProtection pulumi.BoolPtrInput
	// (Optional, Available in 1.149.0+) The group number of the instance in a deployment set when the deployment set is use.
	DeploymentSetGroupNo pulumi.StringPtrInput
	// The ID of the deployment set to which to deploy the instance. **NOTE:** From version 1.176.0, instance's deploymentSetId can be removed when 'deployment_set_id' = "".
	DeploymentSetId pulumi.StringPtrInput
	// The description of the data disk.
	Description pulumi.StringPtrInput
	// Specifies whether to send a dry-run request. Default to false.
	// - true: Only a dry-run request is sent and no instance is created. The system checks whether the required parameters are set, and validates the request format, service permissions, and available ECS instances. If the validation fails, the corresponding error code is returned. If the validation succeeds, the `DryRunOperation` error code is returned.
	// - false: A request is sent. If the validation succeeds, the instance is created.
	DryRun pulumi.BoolPtrInput
	// If it is true, the "PrePaid" instance will be change to "PostPaid" and then deleted forcibly.
	// However, because of changing instance charge type has CPU core count quota limitation, so strongly recommand that "Don't modify instance charge type frequentlly in one month".
	ForceDelete pulumi.BoolPtrInput
	// Host name of the ECS, which is a string of at least two characters. “hostname” cannot start or end with “.” or “-“. In addition, two or more consecutive “.” or “-“ symbols are not allowed. On Windows, the host name can contain a maximum of 15 characters, which can be a combination of uppercase/lowercase letters, numerals, and “-“. The host name cannot contain dots (“.”) or contain only numeric characters. When it is changed, the instance will reboot to make the change take effect.
	// On other OSs such as Linux, the host name can contain a maximum of 64 characters, which can be segments separated by dots (“.”), where each segment can contain uppercase/lowercase letters, numerals, or “_“. When it is changed, the instance will reboot to make the change take effect.
	HostName pulumi.StringPtrInput
	// The ID of the Elastic High Performance Computing (E-HPC) cluster to which to assign the instance.
	HpcClusterId pulumi.StringPtrInput
	// Specifies whether to enable the access channel for instance metadata. Valid values: `enabled`, `disabled`. Default value: `enabled`.
	HttpEndpoint pulumi.StringPtrInput
	// The HTTP PUT response hop limit for accessing instance metadata. Valid values: 1 to 64. Default value: 1.
	HttpPutResponseHopLimit pulumi.IntPtrInput
	// Specifies whether to forcefully use the security-enhanced mode (IMDSv2) to access instance metadata. Default value: optional. Valid values:
	// - optional: does not forcefully use the security-enhanced mode (IMDSv2).
	// - required: forcefully uses the security-enhanced mode (IMDSv2). After you set this parameter to required, you cannot access instance metadata in normal mode.
	HttpTokens pulumi.StringPtrInput
	// The Image to use for the instance. ECS instance's image can be replaced via changing `imageId`. When it is changed, the instance will reboot to make the change take effect.
	ImageId pulumi.StringPtrInput
	// Whether to change instance disks charge type when changing instance charge type.
	IncludeDataDisks pulumi.BoolPtrInput
	// Valid values are `PrePaid`, `PostPaid`, The default is `PostPaid`.
	InstanceChargeType pulumi.StringPtrInput
	InstanceName       pulumi.StringPtrInput
	// The type of instance to start. When it is changed, the instance will reboot to make the change take effect.
	InstanceType pulumi.StringPtrInput
	// Internet charge type of the instance, Valid values are `PayByBandwidth`, `PayByTraffic`. Default is `PayByTraffic`. At present, 'PrePaid' instance cannot change the value to "PayByBandwidth" from "PayByTraffic".
	InternetChargeType pulumi.StringPtrInput
	// Maximum incoming bandwidth from the public network, measured in Mbps (Mega bit per second). Value range: [1, 200]. If this value is not specified, then automatically sets it to 200 Mbps.
	//
	// Deprecated: The attribute is invalid and no any affect for the instance. So it has been deprecated from version v1.121.2.
	InternetMaxBandwidthIn pulumi.IntPtrInput
	// Maximum outgoing bandwidth to the public network, measured in Mbps (Mega bit per second). Value range:  [0, 100]. Default to 0 Mbps.
	InternetMaxBandwidthOut pulumi.IntPtrInput
	// It has been deprecated on instance resource. All the launched alicloud instances will be I/O optimized.
	//
	// Deprecated: Attribute io_optimized has been deprecated on instance resource. All the launched alicloud instances will be IO optimized. Suggest to remove it from your template.
	IoOptimized pulumi.StringPtrInput
	// The number of IPv6 addresses to randomly generate for the primary ENI. Valid values: 1 to 10. **NOTE:** You cannot specify both the `ipv6Addresses` and `ipv6AddressCount` parameters.
	Ipv6AddressCount pulumi.IntPtrInput
	// A list of IPv6 address to be assigned to the primary ENI. Support up to 10.
	Ipv6Addresses pulumi.StringArrayInput
	// Whether to use outdated instance type. Default to false.
	IsOutdated pulumi.BoolPtrInput
	// The name of key pair that can login ECS instance successfully without password. If it is specified, the password would be invalid.
	KeyName pulumi.StringPtrInput
	// An KMS encrypts password used to an instance. If the `password` is filled in, this field will be ignored. When it is changed, the instance will reboot to make the change take effect.
	KmsEncryptedPassword pulumi.StringPtrInput
	// An KMS encryption context used to decrypt `kmsEncryptedPassword` before creating or updating an instance with `kmsEncryptedPassword`. See [Encryption Context](https://www.alibabacloud.com/help/doc-detail/42975.htm). It is valid when `kmsEncryptedPassword` is set. When it is changed, the instance will reboot to make the change take effect.
	KmsEncryptionContext pulumi.MapInput
	// The maintenance action. Valid values: `Stop`, `AutoRecover` and `AutoRedeploy`.
	MaintenanceAction pulumi.StringPtrInput
	// Specifies whether to send an event notification before instance shutdown. Valid values: `true`, `false`. Default value: `false`.
	MaintenanceNotify pulumi.BoolPtrInput
	// The time of maintenance. See the following `Block maintenanceTime`.
	MaintenanceTime InstanceMaintenanceTimePtrInput
	// The operation type. It is valid when `instanceChargeType` is `PrePaid`. Default value: `upgrade`. Valid values: `upgrade`, `downgrade`. **NOTE:**  When the new instance type specified by the `instanceType` parameter has lower specifications than the current instance type, you must set `operatorType` to `downgrade`.
	OperatorType pulumi.StringPtrInput
	// Password to an instance is a string of 8 to 30 characters. It must contain uppercase/lowercase letters and numerals, but cannot contain special symbols. When it is changed, the instance will reboot to make the change take effect.
	Password pulumi.StringPtrInput
	Period   pulumi.IntPtrInput
	// The duration unit that you will buy the resource. It is valid when `instanceChargeType` is 'PrePaid'. Valid value: ["Week", "Month"]. Default to "Month".
	PeriodUnit pulumi.StringPtrInput
	// Instance private IP address can be specified when you creating new instance. It is valid when `vswitchId` is specified. When it is changed, the instance will reboot to make the change take effect.
	PrivateIp pulumi.StringPtrInput
	// The instance public ip.
	PublicIp pulumi.StringPtrInput
	// Whether to renew an ECS instance automatically or not. It is valid when `instanceChargeType` is `PrePaid`. Default to "Normal". Valid values:
	// - `AutoRenewal`: Enable auto renewal.
	// - `Normal`: Disable auto renewal.
	// - `NotRenewal`: No renewal any longer. After you specify this value, Alibaba Cloud stop sending notification of instance expiry, and only gives a brief reminder on the third day before the instance expiry.
	RenewalStatus pulumi.StringPtrInput
	// The Id of resource group which the instance belongs.
	ResourceGroupId pulumi.StringPtrInput
	// Instance RAM role name. The name is provided and maintained by RAM. You can use `ram.Role` to create a new one.
	RoleName pulumi.StringPtrInput
	// The number of private IP addresses to be automatically assigned from within the CIDR block of the vswitch. **NOTE:** To assign secondary private IP addresses, you must specify `secondaryPrivateIps` or `secondaryPrivateIpAddressCount` but not both.
	SecondaryPrivateIpAddressCount pulumi.IntPtrInput
	// A list of Secondary private IP addresses which is selected from within the CIDR block of the VSwitch.
	SecondaryPrivateIps pulumi.StringArrayInput
	// The security enhancement strategy.
	// - Active: Enable security enhancement strategy, it only works on system images.
	// - Deactive: Disable security enhancement strategy, it works on all images.
	SecurityEnhancementStrategy pulumi.StringPtrInput
	// A list of security group ids to associate with.
	SecurityGroups pulumi.StringArrayInput
	// The retention time of the preemptive instance in hours. Valid values: `0`, `1`, `2`, `3`, `4`, `5`, `6`. Retention duration 2~6 is under invitation test, please submit a work order if you need to open. If the value is `0`, the mode is no protection period. Default value is `1`.
	SpotDuration pulumi.IntPtrInput
	// The hourly price threshold of a instance, and it takes effect only when parameter 'spot_strategy' is 'SpotWithPriceLimit'. Three decimals is allowed at most.
	SpotPriceLimit pulumi.Float64PtrInput
	// The spot strategy of a Pay-As-You-Go instance, and it takes effect only when parameter `instanceChargeType` is 'PostPaid'. Value range:
	// - NoSpot: A regular Pay-As-You-Go instance.
	// - SpotWithPriceLimit: A price threshold for a spot instance
	// - SpotAsPriceGo: A price that is based on the highest Pay-As-You-Go instance
	SpotStrategy pulumi.StringPtrInput
	// The instance status. Valid values: ["Running", "Stopped"]. You can control the instance start and stop through this parameter. Default to `Running`.
	Status pulumi.StringPtrInput
	// The stop mode of the pay-as-you-go instance. Valid values: `StopCharging`,`KeepCharging`. Default value: If the prerequisites required for enabling the economical mode are met, and you have enabled this mode in the ECS console, the default value is `StopCharging`. For more information, see "Enable the economical mode" in [Economical mode](https://www.alibabacloud.com/help/en/elastic-compute-service/latest/economical-mode). Otherwise, the default value is `KeepCharging`. **Note:** `Not-applicable`: Economical mode is not applicable to the instance.`
	StoppedMode pulumi.StringPtrInput
	// Deprecated: Field 'subnet_id' has been deprecated from version 1.177.0, and use field 'vswitch_id' to replace.
	SubnetId pulumi.StringPtrInput
	// The ID of the automatic snapshot policy applied to the system disk.
	SystemDiskAutoSnapshotPolicyId pulumi.StringPtrInput
	// Valid values are `ephemeralSsd`, `cloudEfficiency`, `cloudSsd`, `cloudEssd`, `cloud`, `cloudAuto`. only is used to some none I/O optimized instance. Default to `cloudEfficiency`. Valid values `cloudAuto` Available in 1.184.0+.
	SystemDiskCategory pulumi.StringPtrInput
	// The description of the system disk. The description must be 2 to 256 characters in length and cannot start with http:// or https://.
	SystemDiskDescription pulumi.StringPtrInput
	// The algorithm to be used to encrypt the system disk. Valid values are `aes-256`, `sm4-128`. Default value is `aes-256`.
	SystemDiskEncryptAlgorithm pulumi.StringPtrInput
	// Specifies whether to encrypt the system disk. Valid values: `true`,`false`. Default value: `false`.
	// - `true`: encrypts the system disk.
	// - `false`: does not encrypt the system disk.
	SystemDiskEncrypted pulumi.BoolPtrInput
	// The ID of the Key Management Service (KMS) key to be used for the system disk.
	SystemDiskKmsKeyId pulumi.StringPtrInput
	// The name of the system disk. The name must be 2 to 128 characters in length and can contain letters, digits, periods (.), colons (:), underscores (_), and hyphens (-). It must start with a letter and cannot start with http:// or https://.
	SystemDiskName pulumi.StringPtrInput
	// The performance level of the ESSD used as the system disk, Valid values: `PL0`, `PL1`, `PL2`, `PL3`, Default to `PL1`;For more information about ESSD, See [Encryption Context](https://www.alibabacloud.com/help/doc-detail/122389.htm).
	SystemDiskPerformanceLevel pulumi.StringPtrInput
	// Size of the system disk, measured in GiB. Value range: [20, 500]. The specified value must be equal to or greater than max{20, Imagesize}. Default value: max{40, ImageSize}.
	SystemDiskSize pulumi.IntPtrInput
	// The ID of the dedicated block storage cluster. If you want to use disks in a dedicated block storage cluster as system disks when you create instances, you must specify this parameter. For more information about dedicated block storage clusters, see [What is Dedicated Block Storage Cluster?](https://www.alibabacloud.com/help/en/elastic-compute-service/latest/dedicated-block-storage-clusters-overview).
	SystemDiskStorageClusterId pulumi.StringPtrInput
	// A mapping of tags to assign to the resource.
	// - Key: It can be up to 64 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It cannot be a null string.
	// - Value: It can be up to 128 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It can be a null string.
	Tags pulumi.StringMapInput
	// User-defined data to customize the startup behaviors of an ECS instance and to pass data into an ECS instance. From version 1.60.0, it can be update in-place. If updated, the instance will reboot to make the change take effect. Note: Not all of changes will take effect and it depends on [cloud-init module type](https://cloudinit.readthedocs.io/en/latest/topics/modules.html).
	UserData pulumi.StringPtrInput
	// A mapping of tags to assign to the devices created by the instance at launch time.
	// - Key: It can be up to 64 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It cannot be a null string.
	// - Value: It can be up to 128 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It can be a null string.
	VolumeTags pulumi.MapInput
	// The virtual switch ID to launch in VPC. This parameter must be set unless you can create classic network instances. When it is changed, the instance will reboot to make the change take effect.
	VswitchId pulumi.StringPtrInput
}

func (InstanceState) ElementType

func (InstanceState) ElementType() reflect.Type

type KeyPair

type KeyPair struct {
	pulumi.CustomResourceState

	FingerPrint pulumi.StringOutput `pulumi:"fingerPrint"`
	// The name of file to save your new key pair's private key. Strongly suggest you to specified it when you creating key pair, otherwise, you wouldn't get its private key ever.
	KeyFile pulumi.StringPtrOutput `pulumi:"keyFile"`
	// The key pair's name. It is the only in one Alicloud account.
	//
	// Deprecated: Field 'key_name' has been deprecated from provider version 1.121.0. New field 'key_pair_name' instead.
	KeyName       pulumi.StringOutput    `pulumi:"keyName"`
	KeyNamePrefix pulumi.StringPtrOutput `pulumi:"keyNamePrefix"`
	KeyPairName   pulumi.StringOutput    `pulumi:"keyPairName"`
	// You can import an existing public key and using Alicloud key pair to manage it. If this parameter is specified, `resourceGroupId` is the key pair belongs.
	PublicKey pulumi.StringPtrOutput `pulumi:"publicKey"`
	// The Id of resource group which the key pair belongs.
	ResourceGroupId pulumi.StringPtrOutput `pulumi:"resourceGroupId"`
	Tags            pulumi.MapOutput       `pulumi:"tags"`
}

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ecs.NewKeyPair(ctx, "basic", &ecs.KeyPairArgs{
			KeyName: pulumi.String("terraform-test-key-pair"),
		})
		if err != nil {
			return err
		}
		_, err = ecs.NewKeyPair(ctx, "prefix", &ecs.KeyPairArgs{
			KeyNamePrefix: pulumi.String("terraform-test-key-pair-prefix"),
		})
		if err != nil {
			return err
		}
		_, err = ecs.NewKeyPair(ctx, "publickey", &ecs.KeyPairArgs{
			KeyName:   pulumi.String("my_public_key"),
			PublicKey: pulumi.String("ssh-rsa AAAAB3Nza12345678qwertyuudsfsg"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Key pair can be imported using the name, e.g.

```sh

$ pulumi import alicloud:ecs/keyPair:KeyPair example my_public_key

```

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 {
	// The name of file to save your new key pair's private key. Strongly suggest you to specified it when you creating key pair, otherwise, you wouldn't get its private key ever.
	KeyFile pulumi.StringPtrInput
	// The key pair's name. It is the only in one Alicloud account.
	//
	// Deprecated: Field 'key_name' has been deprecated from provider version 1.121.0. New field 'key_pair_name' instead.
	KeyName       pulumi.StringPtrInput
	KeyNamePrefix pulumi.StringPtrInput
	KeyPairName   pulumi.StringPtrInput
	// You can import an existing public key and using Alicloud key pair to manage it. If this parameter is specified, `resourceGroupId` is the key pair belongs.
	PublicKey pulumi.StringPtrInput
	// The Id of resource group which the key pair belongs.
	ResourceGroupId pulumi.StringPtrInput
	Tags            pulumi.MapInput
}

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 KeyPairAttachment

type KeyPairAttachment struct {
	pulumi.CustomResourceState

	// Set it to true and it will reboot instances which attached with the key pair to make key pair affect immediately.
	Force pulumi.BoolPtrOutput `pulumi:"force"`
	// The list of ECS instance's IDs.
	InstanceIds pulumi.StringArrayOutput `pulumi:"instanceIds"`
	// The name of key pair used to bind.
	//
	// Deprecated: Field 'key_name' has been deprecated from provider version 1.121.0. New field 'key_pair_name' instead.
	KeyName     pulumi.StringOutput `pulumi:"keyName"`
	KeyPairName pulumi.StringOutput `pulumi:"keyPairName"`
}

func GetKeyPairAttachment

func GetKeyPairAttachment(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *KeyPairAttachmentState, opts ...pulumi.ResourceOption) (*KeyPairAttachment, error)

GetKeyPairAttachment gets an existing KeyPairAttachment 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 NewKeyPairAttachment

func NewKeyPairAttachment(ctx *pulumi.Context,
	name string, args *KeyPairAttachmentArgs, opts ...pulumi.ResourceOption) (*KeyPairAttachment, error)

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

func (*KeyPairAttachment) ElementType

func (*KeyPairAttachment) ElementType() reflect.Type

func (*KeyPairAttachment) ToKeyPairAttachmentOutput

func (i *KeyPairAttachment) ToKeyPairAttachmentOutput() KeyPairAttachmentOutput

func (*KeyPairAttachment) ToKeyPairAttachmentOutputWithContext

func (i *KeyPairAttachment) ToKeyPairAttachmentOutputWithContext(ctx context.Context) KeyPairAttachmentOutput

type KeyPairAttachmentArgs

type KeyPairAttachmentArgs struct {
	// Set it to true and it will reboot instances which attached with the key pair to make key pair affect immediately.
	Force pulumi.BoolPtrInput
	// The list of ECS instance's IDs.
	InstanceIds pulumi.StringArrayInput
	// The name of key pair used to bind.
	//
	// Deprecated: Field 'key_name' has been deprecated from provider version 1.121.0. New field 'key_pair_name' instead.
	KeyName     pulumi.StringPtrInput
	KeyPairName pulumi.StringPtrInput
}

The set of arguments for constructing a KeyPairAttachment resource.

func (KeyPairAttachmentArgs) ElementType

func (KeyPairAttachmentArgs) ElementType() reflect.Type

type KeyPairAttachmentArray

type KeyPairAttachmentArray []KeyPairAttachmentInput

func (KeyPairAttachmentArray) ElementType

func (KeyPairAttachmentArray) ElementType() reflect.Type

func (KeyPairAttachmentArray) ToKeyPairAttachmentArrayOutput

func (i KeyPairAttachmentArray) ToKeyPairAttachmentArrayOutput() KeyPairAttachmentArrayOutput

func (KeyPairAttachmentArray) ToKeyPairAttachmentArrayOutputWithContext

func (i KeyPairAttachmentArray) ToKeyPairAttachmentArrayOutputWithContext(ctx context.Context) KeyPairAttachmentArrayOutput

type KeyPairAttachmentArrayInput

type KeyPairAttachmentArrayInput interface {
	pulumi.Input

	ToKeyPairAttachmentArrayOutput() KeyPairAttachmentArrayOutput
	ToKeyPairAttachmentArrayOutputWithContext(context.Context) KeyPairAttachmentArrayOutput
}

KeyPairAttachmentArrayInput is an input type that accepts KeyPairAttachmentArray and KeyPairAttachmentArrayOutput values. You can construct a concrete instance of `KeyPairAttachmentArrayInput` via:

KeyPairAttachmentArray{ KeyPairAttachmentArgs{...} }

type KeyPairAttachmentArrayOutput

type KeyPairAttachmentArrayOutput struct{ *pulumi.OutputState }

func (KeyPairAttachmentArrayOutput) ElementType

func (KeyPairAttachmentArrayOutput) Index

func (KeyPairAttachmentArrayOutput) ToKeyPairAttachmentArrayOutput

func (o KeyPairAttachmentArrayOutput) ToKeyPairAttachmentArrayOutput() KeyPairAttachmentArrayOutput

func (KeyPairAttachmentArrayOutput) ToKeyPairAttachmentArrayOutputWithContext

func (o KeyPairAttachmentArrayOutput) ToKeyPairAttachmentArrayOutputWithContext(ctx context.Context) KeyPairAttachmentArrayOutput

type KeyPairAttachmentInput

type KeyPairAttachmentInput interface {
	pulumi.Input

	ToKeyPairAttachmentOutput() KeyPairAttachmentOutput
	ToKeyPairAttachmentOutputWithContext(ctx context.Context) KeyPairAttachmentOutput
}

type KeyPairAttachmentMap

type KeyPairAttachmentMap map[string]KeyPairAttachmentInput

func (KeyPairAttachmentMap) ElementType

func (KeyPairAttachmentMap) ElementType() reflect.Type

func (KeyPairAttachmentMap) ToKeyPairAttachmentMapOutput

func (i KeyPairAttachmentMap) ToKeyPairAttachmentMapOutput() KeyPairAttachmentMapOutput

func (KeyPairAttachmentMap) ToKeyPairAttachmentMapOutputWithContext

func (i KeyPairAttachmentMap) ToKeyPairAttachmentMapOutputWithContext(ctx context.Context) KeyPairAttachmentMapOutput

type KeyPairAttachmentMapInput

type KeyPairAttachmentMapInput interface {
	pulumi.Input

	ToKeyPairAttachmentMapOutput() KeyPairAttachmentMapOutput
	ToKeyPairAttachmentMapOutputWithContext(context.Context) KeyPairAttachmentMapOutput
}

KeyPairAttachmentMapInput is an input type that accepts KeyPairAttachmentMap and KeyPairAttachmentMapOutput values. You can construct a concrete instance of `KeyPairAttachmentMapInput` via:

KeyPairAttachmentMap{ "key": KeyPairAttachmentArgs{...} }

type KeyPairAttachmentMapOutput

type KeyPairAttachmentMapOutput struct{ *pulumi.OutputState }

func (KeyPairAttachmentMapOutput) ElementType

func (KeyPairAttachmentMapOutput) ElementType() reflect.Type

func (KeyPairAttachmentMapOutput) MapIndex

func (KeyPairAttachmentMapOutput) ToKeyPairAttachmentMapOutput

func (o KeyPairAttachmentMapOutput) ToKeyPairAttachmentMapOutput() KeyPairAttachmentMapOutput

func (KeyPairAttachmentMapOutput) ToKeyPairAttachmentMapOutputWithContext

func (o KeyPairAttachmentMapOutput) ToKeyPairAttachmentMapOutputWithContext(ctx context.Context) KeyPairAttachmentMapOutput

type KeyPairAttachmentOutput

type KeyPairAttachmentOutput struct{ *pulumi.OutputState }

func (KeyPairAttachmentOutput) ElementType

func (KeyPairAttachmentOutput) ElementType() reflect.Type

func (KeyPairAttachmentOutput) Force

Set it to true and it will reboot instances which attached with the key pair to make key pair affect immediately.

func (KeyPairAttachmentOutput) InstanceIds

The list of ECS instance's IDs.

func (KeyPairAttachmentOutput) KeyName deprecated

The name of key pair used to bind.

Deprecated: Field 'key_name' has been deprecated from provider version 1.121.0. New field 'key_pair_name' instead.

func (KeyPairAttachmentOutput) KeyPairName

func (KeyPairAttachmentOutput) ToKeyPairAttachmentOutput

func (o KeyPairAttachmentOutput) ToKeyPairAttachmentOutput() KeyPairAttachmentOutput

func (KeyPairAttachmentOutput) ToKeyPairAttachmentOutputWithContext

func (o KeyPairAttachmentOutput) ToKeyPairAttachmentOutputWithContext(ctx context.Context) KeyPairAttachmentOutput

type KeyPairAttachmentState

type KeyPairAttachmentState struct {
	// Set it to true and it will reboot instances which attached with the key pair to make key pair affect immediately.
	Force pulumi.BoolPtrInput
	// The list of ECS instance's IDs.
	InstanceIds pulumi.StringArrayInput
	// The name of key pair used to bind.
	//
	// Deprecated: Field 'key_name' has been deprecated from provider version 1.121.0. New field 'key_pair_name' instead.
	KeyName     pulumi.StringPtrInput
	KeyPairName pulumi.StringPtrInput
}

func (KeyPairAttachmentState) ElementType

func (KeyPairAttachmentState) ElementType() reflect.Type

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

func (KeyPairOutput) KeyFile

func (o KeyPairOutput) KeyFile() pulumi.StringPtrOutput

The name of file to save your new key pair's private key. Strongly suggest you to specified it when you creating key pair, otherwise, you wouldn't get its private key ever.

func (KeyPairOutput) KeyName deprecated

func (o KeyPairOutput) KeyName() pulumi.StringOutput

The key pair's name. It is the only in one Alicloud account.

Deprecated: Field 'key_name' has been deprecated from provider version 1.121.0. New field 'key_pair_name' instead.

func (KeyPairOutput) KeyNamePrefix

func (o KeyPairOutput) KeyNamePrefix() pulumi.StringPtrOutput

func (KeyPairOutput) KeyPairName

func (o KeyPairOutput) KeyPairName() pulumi.StringOutput

func (KeyPairOutput) PublicKey

func (o KeyPairOutput) PublicKey() pulumi.StringPtrOutput

You can import an existing public key and using Alicloud key pair to manage it. If this parameter is specified, `resourceGroupId` is the key pair belongs.

func (KeyPairOutput) ResourceGroupId

func (o KeyPairOutput) ResourceGroupId() pulumi.StringPtrOutput

The Id of resource group which the key pair belongs.

func (KeyPairOutput) Tags

func (o KeyPairOutput) Tags() pulumi.MapOutput

func (KeyPairOutput) ToKeyPairOutput

func (o KeyPairOutput) ToKeyPairOutput() KeyPairOutput

func (KeyPairOutput) ToKeyPairOutputWithContext

func (o KeyPairOutput) ToKeyPairOutputWithContext(ctx context.Context) KeyPairOutput

type KeyPairState

type KeyPairState struct {
	FingerPrint pulumi.StringPtrInput
	// The name of file to save your new key pair's private key. Strongly suggest you to specified it when you creating key pair, otherwise, you wouldn't get its private key ever.
	KeyFile pulumi.StringPtrInput
	// The key pair's name. It is the only in one Alicloud account.
	//
	// Deprecated: Field 'key_name' has been deprecated from provider version 1.121.0. New field 'key_pair_name' instead.
	KeyName       pulumi.StringPtrInput
	KeyNamePrefix pulumi.StringPtrInput
	KeyPairName   pulumi.StringPtrInput
	// You can import an existing public key and using Alicloud key pair to manage it. If this parameter is specified, `resourceGroupId` is the key pair belongs.
	PublicKey pulumi.StringPtrInput
	// The Id of resource group which the key pair belongs.
	ResourceGroupId pulumi.StringPtrInput
	Tags            pulumi.MapInput
}

func (KeyPairState) ElementType

func (KeyPairState) ElementType() reflect.Type

type LaunchTemplate

type LaunchTemplate struct {
	pulumi.CustomResourceState

	// Instance auto release time. The time is presented using the ISO8601 standard and in UTC time. The format is  YYYY-MM-DDTHH:MM:SSZ.
	AutoReleaseTime pulumi.StringPtrOutput `pulumi:"autoReleaseTime"`
	// The list of data disks created with instance.
	DataDisks       LaunchTemplateDataDiskArrayOutput `pulumi:"dataDisks"`
	DeploymentSetId pulumi.StringPtrOutput            `pulumi:"deploymentSetId"`
	// The description of the data disk.
	Description      pulumi.StringPtrOutput `pulumi:"description"`
	EnableVmOsConfig pulumi.BoolPtrOutput   `pulumi:"enableVmOsConfig"`
	// Instance host name.It cannot start or end with a period (.) or a hyphen (-) and it cannot have two or more consecutive periods (.) or hyphens (-).For Windows: The host name can be [2, 15] characters in length. It can contain A-Z, a-z, numbers, periods (.), and hyphens (-). It cannot only contain numbers. For other operating systems: The host name can be [2, 64] characters in length. It can be segments separated by periods (.). It can contain A-Z, a-z, numbers, and hyphens (-).
	HostName pulumi.StringPtrOutput `pulumi:"hostName"`
	// Image ID.
	ImageId         pulumi.StringPtrOutput `pulumi:"imageId"`
	ImageOwnerAlias pulumi.StringPtrOutput `pulumi:"imageOwnerAlias"`
	// Billing methods. Optional values:
	// - PrePaid: Monthly, or annual subscription. Make sure that your registered credit card is invalid or you have insufficient balance in your PayPal account. Otherwise, InvalidPayMethod error may occur.
	// - PostPaid: Pay-As-You-Go.
	InstanceChargeType pulumi.StringPtrOutput `pulumi:"instanceChargeType"`
	// The name of the instance. The name is a string of 2 to 128 characters. It must begin with an English or a Chinese character. It can contain A-Z, a-z, Chinese characters, numbers, periods (.), colons (:), underscores (_), and hyphens (-).
	InstanceName pulumi.StringPtrOutput `pulumi:"instanceName"`
	// Instance type. For more information, call resourceAlicloudInstances to obtain the latest instance type list.
	InstanceType pulumi.StringPtrOutput `pulumi:"instanceType"`
	// Internet bandwidth billing method. Optional values: `PayByTraffic` | `PayByBandwidth`.
	InternetChargeType pulumi.StringPtrOutput `pulumi:"internetChargeType"`
	// The maximum inbound bandwidth from the Internet network, measured in Mbit/s. Value range: [1, 200].
	InternetMaxBandwidthIn pulumi.IntOutput `pulumi:"internetMaxBandwidthIn"`
	// Maximum outbound bandwidth from the Internet, its unit of measurement is Mbit/s. Value range: [0, 100].
	InternetMaxBandwidthOut pulumi.IntPtrOutput `pulumi:"internetMaxBandwidthOut"`
	// Whether it is an I/O-optimized instance or not. Optional values:
	// - none
	// - optimized
	IoOptimized pulumi.StringPtrOutput `pulumi:"ioOptimized"`
	// The name of the key pair.
	// - Ignore this parameter for Windows instances. It is null by default. Even if you enter this parameter, only the  Password content is used.
	// - The password logon method for Linux instances is set to forbidden upon initialization.
	KeyPairName        pulumi.StringPtrOutput `pulumi:"keyPairName"`
	LaunchTemplateName pulumi.StringOutput    `pulumi:"launchTemplateName"`
	// The name of the data disk.
	//
	// Deprecated: Field 'name' has been deprecated from provider version 1.120.0. New field 'launch_template_name' instead.
	Name pulumi.StringOutput `pulumi:"name"`
	// The list of network interfaces created with instance.
	NetworkInterfaces LaunchTemplateNetworkInterfacesPtrOutput `pulumi:"networkInterfaces"`
	// Network type of the instance. Value options: `classic` | `vpc`.
	NetworkType      pulumi.StringPtrOutput `pulumi:"networkType"`
	PasswordInherit  pulumi.BoolPtrOutput   `pulumi:"passwordInherit"`
	Period           pulumi.IntPtrOutput    `pulumi:"period"`
	PrivateIpAddress pulumi.StringPtrOutput `pulumi:"privateIpAddress"`
	// The RAM role name of the instance. You can use the RAM API ListRoles to query instance RAM role names.
	RamRoleName     pulumi.StringPtrOutput `pulumi:"ramRoleName"`
	ResourceGroupId pulumi.StringPtrOutput `pulumi:"resourceGroupId"`
	// Whether or not to activate the security enhancement feature and install network security software free of charge. Optional values: Active | Deactive.
	SecurityEnhancementStrategy pulumi.StringPtrOutput `pulumi:"securityEnhancementStrategy"`
	// The security group ID must be one in the same VPC.
	SecurityGroupId  pulumi.StringPtrOutput   `pulumi:"securityGroupId"`
	SecurityGroupIds pulumi.StringArrayOutput `pulumi:"securityGroupIds"`
	SpotDuration     pulumi.StringPtrOutput   `pulumi:"spotDuration"`
	// -(Optional) 	Sets the maximum hourly instance price. Supports up to three decimal places.
	SpotPriceLimit pulumi.Float64PtrOutput `pulumi:"spotPriceLimit"`
	// The spot strategy for a Pay-As-You-Go instance. This parameter is valid and required only when InstanceChargeType is set to PostPaid. Value range:
	// - NoSpot: Normal Pay-As-You-Go instance.
	// - SpotWithPriceLimit: Sets the maximum price for a spot instance.
	// - SpotAsPriceGo: The system automatically calculates the price. The maximum value is the Pay-As-You-Go price.
	SpotStrategy pulumi.StringPtrOutput         `pulumi:"spotStrategy"`
	SystemDisk   LaunchTemplateSystemDiskOutput `pulumi:"systemDisk"`
	// The category of the system disk. System disk type. Optional values:
	// - cloud: Basic cloud disk.
	// - cloud_efficiency: Ultra cloud disk.
	// - cloud_ssd: SSD cloud Disks.
	// - ephemeral_ssd: local SSD Disks
	// - cloud_essd: ESSD cloud Disks.
	//
	// Deprecated: Field 'system_disk_category' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.
	SystemDiskCategory pulumi.StringOutput `pulumi:"systemDiskCategory"`
	// System disk description. It cannot begin with http:// or https://.
	//
	// Deprecated: Field 'system_disk_description' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.
	SystemDiskDescription pulumi.StringOutput `pulumi:"systemDiskDescription"`
	// System disk name. The name is a string of 2 to 128 characters. It must begin with an English or a Chinese character. It can contain A-Z, a-z, Chinese characters, numbers, periods (.), colons (:), underscores (_), and hyphens (-).
	//
	// Deprecated: Field 'system_disk_name' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.
	SystemDiskName pulumi.StringOutput `pulumi:"systemDiskName"`
	// Size of the system disk, measured in GB. Value range: [20, 500].
	//
	// Deprecated: Field 'system_disk_size' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.
	SystemDiskSize pulumi.IntOutput `pulumi:"systemDiskSize"`
	// A mapping of tags to assign to the resource.
	// - Key: It can be up to 64 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It cannot be a null string.
	// - Value: It can be up to 128 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It can be a null string.
	Tags                    pulumi.MapOutput       `pulumi:"tags"`
	TemplateResourceGroupId pulumi.StringPtrOutput `pulumi:"templateResourceGroupId"`
	TemplateTags            pulumi.MapOutput       `pulumi:"templateTags"`
	UserData                pulumi.StringOutput    `pulumi:"userData"`
	// User data of the instance, which is Base64-encoded. Size of the raw data cannot exceed 16 KB.
	//
	// Deprecated: Field 'userdata' has been deprecated from provider version 1.120.0. New field 'user_data' instead.
	Userdata           pulumi.StringOutput    `pulumi:"userdata"`
	VersionDescription pulumi.StringPtrOutput `pulumi:"versionDescription"`
	VpcId              pulumi.StringOutput    `pulumi:"vpcId"`
	// The VSwitch ID for ENI. The instance must be in the same zone of the same VPC network as the ENI, but they may belong to different VSwitches.
	VswitchId pulumi.StringPtrOutput `pulumi:"vswitchId"`
	// The zone ID of the instance.
	ZoneId pulumi.StringOutput `pulumi:"zoneId"`
}

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/go/alicloud/ecs"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		images, err := ecs.GetImages(ctx, &ecs.GetImagesArgs{
			Owners: pulumi.StringRef("system"),
		}, nil)
		if err != nil {
			return err
		}
		instances, err := ecs.GetInstances(ctx, nil, nil)
		if err != nil {
			return err
		}
		_, err = ecs.NewLaunchTemplate(ctx, "template", &ecs.LaunchTemplateArgs{
			Description:                 pulumi.String("test1"),
			ImageId:                     pulumi.String(images.Images[0].Id),
			HostName:                    pulumi.String("tf-test-host"),
			InstanceChargeType:          pulumi.String("PrePaid"),
			InstanceName:                pulumi.String("tf-instance-name"),
			InstanceType:                pulumi.String(instances.Instances[0].InstanceType),
			InternetChargeType:          pulumi.String("PayByBandwidth"),
			InternetMaxBandwidthIn:      pulumi.Int(5),
			InternetMaxBandwidthOut:     pulumi.Int(0),
			IoOptimized:                 pulumi.String("none"),
			KeyPairName:                 pulumi.String("test-key-pair"),
			RamRoleName:                 pulumi.String("xxxxx"),
			NetworkType:                 pulumi.String("vpc"),
			SecurityEnhancementStrategy: pulumi.String("Active"),
			SpotPriceLimit:              pulumi.Float64(5),
			SpotStrategy:                pulumi.String("SpotWithPriceLimit"),
			SecurityGroupId:             pulumi.String("sg-zxcvj0lasdf102350asdf9a"),
			SystemDiskCategory:          pulumi.String("cloud_ssd"),
			SystemDiskDescription:       pulumi.String("test disk"),
			SystemDiskName:              pulumi.String("hello"),
			SystemDiskSize:              pulumi.Int(40),
			ResourceGroupId:             pulumi.String("rg-zkdfjahg9zxncv0"),
			Userdata:                    pulumi.String("xxxxxxxxxxxxxx"),
			VswitchId:                   pulumi.String("sw-ljkngaksdjfj0nnasdf"),
			VpcId:                       pulumi.String("vpc-asdfnbg0as8dfk1nb2"),
			ZoneId:                      pulumi.String("beijing-a"),
			Tags: pulumi.AnyMap{
				"tag1": pulumi.Any("hello"),
				"tag2": pulumi.Any("world"),
			},
			NetworkInterfaces: &ecs.LaunchTemplateNetworkInterfacesArgs{
				Name:            pulumi.String("eth0"),
				Description:     pulumi.String("hello1"),
				PrimaryIp:       pulumi.String("10.0.0.2"),
				SecurityGroupId: pulumi.String("xxxx"),
				VswitchId:       pulumi.String("xxxxxxx"),
			},
			DataDisks: ecs.LaunchTemplateDataDiskArray{
				&ecs.LaunchTemplateDataDiskArgs{
					Name:        pulumi.String("disk1"),
					Description: pulumi.String("test1"),
				},
				&ecs.LaunchTemplateDataDiskArgs{
					Name:        pulumi.String("disk2"),
					Description: pulumi.String("test2"),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Launch Template can be imported using the id, e.g.

```sh

$ pulumi import alicloud:ecs/launchTemplate:LaunchTemplate lt lt-abc1234567890000

```

func GetLaunchTemplate

func GetLaunchTemplate(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *LaunchTemplateState, opts ...pulumi.ResourceOption) (*LaunchTemplate, error)

GetLaunchTemplate gets an existing LaunchTemplate 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 NewLaunchTemplate

func NewLaunchTemplate(ctx *pulumi.Context,
	name string, args *LaunchTemplateArgs, opts ...pulumi.ResourceOption) (*LaunchTemplate, error)

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

func (*LaunchTemplate) ElementType

func (*LaunchTemplate) ElementType() reflect.Type

func (*LaunchTemplate) ToLaunchTemplateOutput

func (i *LaunchTemplate) ToLaunchTemplateOutput() LaunchTemplateOutput

func (*LaunchTemplate) ToLaunchTemplateOutputWithContext

func (i *LaunchTemplate) ToLaunchTemplateOutputWithContext(ctx context.Context) LaunchTemplateOutput

type LaunchTemplateArgs

type LaunchTemplateArgs struct {
	// Instance auto release time. The time is presented using the ISO8601 standard and in UTC time. The format is  YYYY-MM-DDTHH:MM:SSZ.
	AutoReleaseTime pulumi.StringPtrInput
	// The list of data disks created with instance.
	DataDisks       LaunchTemplateDataDiskArrayInput
	DeploymentSetId pulumi.StringPtrInput
	// The description of the data disk.
	Description      pulumi.StringPtrInput
	EnableVmOsConfig pulumi.BoolPtrInput
	// Instance host name.It cannot start or end with a period (.) or a hyphen (-) and it cannot have two or more consecutive periods (.) or hyphens (-).For Windows: The host name can be [2, 15] characters in length. It can contain A-Z, a-z, numbers, periods (.), and hyphens (-). It cannot only contain numbers. For other operating systems: The host name can be [2, 64] characters in length. It can be segments separated by periods (.). It can contain A-Z, a-z, numbers, and hyphens (-).
	HostName pulumi.StringPtrInput
	// Image ID.
	ImageId         pulumi.StringPtrInput
	ImageOwnerAlias pulumi.StringPtrInput
	// Billing methods. Optional values:
	// - PrePaid: Monthly, or annual subscription. Make sure that your registered credit card is invalid or you have insufficient balance in your PayPal account. Otherwise, InvalidPayMethod error may occur.
	// - PostPaid: Pay-As-You-Go.
	InstanceChargeType pulumi.StringPtrInput
	// The name of the instance. The name is a string of 2 to 128 characters. It must begin with an English or a Chinese character. It can contain A-Z, a-z, Chinese characters, numbers, periods (.), colons (:), underscores (_), and hyphens (-).
	InstanceName pulumi.StringPtrInput
	// Instance type. For more information, call resourceAlicloudInstances to obtain the latest instance type list.
	InstanceType pulumi.StringPtrInput
	// Internet bandwidth billing method. Optional values: `PayByTraffic` | `PayByBandwidth`.
	InternetChargeType pulumi.StringPtrInput
	// The maximum inbound bandwidth from the Internet network, measured in Mbit/s. Value range: [1, 200].
	InternetMaxBandwidthIn pulumi.IntPtrInput
	// Maximum outbound bandwidth from the Internet, its unit of measurement is Mbit/s. Value range: [0, 100].
	InternetMaxBandwidthOut pulumi.IntPtrInput
	// Whether it is an I/O-optimized instance or not. Optional values:
	// - none
	// - optimized
	IoOptimized pulumi.StringPtrInput
	// The name of the key pair.
	// - Ignore this parameter for Windows instances. It is null by default. Even if you enter this parameter, only the  Password content is used.
	// - The password logon method for Linux instances is set to forbidden upon initialization.
	KeyPairName        pulumi.StringPtrInput
	LaunchTemplateName pulumi.StringPtrInput
	// The name of the data disk.
	//
	// Deprecated: Field 'name' has been deprecated from provider version 1.120.0. New field 'launch_template_name' instead.
	Name pulumi.StringPtrInput
	// The list of network interfaces created with instance.
	NetworkInterfaces LaunchTemplateNetworkInterfacesPtrInput
	// Network type of the instance. Value options: `classic` | `vpc`.
	NetworkType      pulumi.StringPtrInput
	PasswordInherit  pulumi.BoolPtrInput
	Period           pulumi.IntPtrInput
	PrivateIpAddress pulumi.StringPtrInput
	// The RAM role name of the instance. You can use the RAM API ListRoles to query instance RAM role names.
	RamRoleName     pulumi.StringPtrInput
	ResourceGroupId pulumi.StringPtrInput
	// Whether or not to activate the security enhancement feature and install network security software free of charge. Optional values: Active | Deactive.
	SecurityEnhancementStrategy pulumi.StringPtrInput
	// The security group ID must be one in the same VPC.
	SecurityGroupId  pulumi.StringPtrInput
	SecurityGroupIds pulumi.StringArrayInput
	SpotDuration     pulumi.StringPtrInput
	// -(Optional) 	Sets the maximum hourly instance price. Supports up to three decimal places.
	SpotPriceLimit pulumi.Float64PtrInput
	// The spot strategy for a Pay-As-You-Go instance. This parameter is valid and required only when InstanceChargeType is set to PostPaid. Value range:
	// - NoSpot: Normal Pay-As-You-Go instance.
	// - SpotWithPriceLimit: Sets the maximum price for a spot instance.
	// - SpotAsPriceGo: The system automatically calculates the price. The maximum value is the Pay-As-You-Go price.
	SpotStrategy pulumi.StringPtrInput
	SystemDisk   LaunchTemplateSystemDiskPtrInput
	// The category of the system disk. System disk type. Optional values:
	// - cloud: Basic cloud disk.
	// - cloud_efficiency: Ultra cloud disk.
	// - cloud_ssd: SSD cloud Disks.
	// - ephemeral_ssd: local SSD Disks
	// - cloud_essd: ESSD cloud Disks.
	//
	// Deprecated: Field 'system_disk_category' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.
	SystemDiskCategory pulumi.StringPtrInput
	// System disk description. It cannot begin with http:// or https://.
	//
	// Deprecated: Field 'system_disk_description' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.
	SystemDiskDescription pulumi.StringPtrInput
	// System disk name. The name is a string of 2 to 128 characters. It must begin with an English or a Chinese character. It can contain A-Z, a-z, Chinese characters, numbers, periods (.), colons (:), underscores (_), and hyphens (-).
	//
	// Deprecated: Field 'system_disk_name' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.
	SystemDiskName pulumi.StringPtrInput
	// Size of the system disk, measured in GB. Value range: [20, 500].
	//
	// Deprecated: Field 'system_disk_size' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.
	SystemDiskSize pulumi.IntPtrInput
	// A mapping of tags to assign to the resource.
	// - Key: It can be up to 64 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It cannot be a null string.
	// - Value: It can be up to 128 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It can be a null string.
	Tags                    pulumi.MapInput
	TemplateResourceGroupId pulumi.StringPtrInput
	TemplateTags            pulumi.MapInput
	UserData                pulumi.StringPtrInput
	// User data of the instance, which is Base64-encoded. Size of the raw data cannot exceed 16 KB.
	//
	// Deprecated: Field 'userdata' has been deprecated from provider version 1.120.0. New field 'user_data' instead.
	Userdata           pulumi.StringPtrInput
	VersionDescription pulumi.StringPtrInput
	VpcId              pulumi.StringPtrInput
	// The VSwitch ID for ENI. The instance must be in the same zone of the same VPC network as the ENI, but they may belong to different VSwitches.
	VswitchId pulumi.StringPtrInput
	// The zone ID of the instance.
	ZoneId pulumi.StringPtrInput
}

The set of arguments for constructing a LaunchTemplate resource.

func (LaunchTemplateArgs) ElementType

func (LaunchTemplateArgs) ElementType() reflect.Type

type LaunchTemplateArray

type LaunchTemplateArray []LaunchTemplateInput

func (LaunchTemplateArray) ElementType

func (LaunchTemplateArray) ElementType() reflect.Type

func (LaunchTemplateArray) ToLaunchTemplateArrayOutput

func (i LaunchTemplateArray) ToLaunchTemplateArrayOutput() LaunchTemplateArrayOutput

func (LaunchTemplateArray) ToLaunchTemplateArrayOutputWithContext

func (i LaunchTemplateArray) ToLaunchTemplateArrayOutputWithContext(ctx context.Context) LaunchTemplateArrayOutput

type LaunchTemplateArrayInput

type LaunchTemplateArrayInput interface {
	pulumi.Input

	ToLaunchTemplateArrayOutput() LaunchTemplateArrayOutput
	ToLaunchTemplateArrayOutputWithContext(context.Context) LaunchTemplateArrayOutput
}

LaunchTemplateArrayInput is an input type that accepts LaunchTemplateArray and LaunchTemplateArrayOutput values. You can construct a concrete instance of `LaunchTemplateArrayInput` via:

LaunchTemplateArray{ LaunchTemplateArgs{...} }

type LaunchTemplateArrayOutput

type LaunchTemplateArrayOutput struct{ *pulumi.OutputState }

func (LaunchTemplateArrayOutput) ElementType

func (LaunchTemplateArrayOutput) ElementType() reflect.Type

func (LaunchTemplateArrayOutput) Index

func (LaunchTemplateArrayOutput) ToLaunchTemplateArrayOutput

func (o LaunchTemplateArrayOutput) ToLaunchTemplateArrayOutput() LaunchTemplateArrayOutput

func (LaunchTemplateArrayOutput) ToLaunchTemplateArrayOutputWithContext

func (o LaunchTemplateArrayOutput) ToLaunchTemplateArrayOutputWithContext(ctx context.Context) LaunchTemplateArrayOutput

type LaunchTemplateDataDisk

type LaunchTemplateDataDisk struct {
	// The category of the disk:
	// - cloud: Basic cloud disk.
	// - cloud_efficiency: Ultra cloud disk.
	// - cloud_ssd: SSD cloud Disks.
	// - ephemeral_ssd: local SSD Disks
	// - cloud_essd: ESSD cloud Disks.
	Category *string `pulumi:"category"`
	// Delete this data disk when the instance is destroyed. It only works on cloud, cloud_efficiency, cloudSsd and cloudEssd disk. If the category of this data disk was ephemeral_ssd, please don't set this param.
	DeleteWithInstance *bool `pulumi:"deleteWithInstance"`
	// The description of the data disk.
	Description *string `pulumi:"description"`
	// -(Optional, Bool) Encrypted the data in this disk.
	Encrypted *bool `pulumi:"encrypted"`
	// The name of the data disk.
	Name             *string `pulumi:"name"`
	PerformanceLevel *string `pulumi:"performanceLevel"`
	// The size of the data disk.
	// - cloud:[5, 2000]
	// - cloud_efficiency:[20, 32768]
	// - cloud_ssd:[20, 32768]
	// - cloud_essd:[20, 32768]
	// - ephemeral_ssd: [5, 800]
	Size *int `pulumi:"size"`
	// The snapshot ID used to initialize the data disk. If the size specified by snapshot is greater that the size of the disk, use the size specified by snapshot as the size of the data disk.
	SnapshotId *string `pulumi:"snapshotId"`
}

type LaunchTemplateDataDiskArgs

type LaunchTemplateDataDiskArgs struct {
	// The category of the disk:
	// - cloud: Basic cloud disk.
	// - cloud_efficiency: Ultra cloud disk.
	// - cloud_ssd: SSD cloud Disks.
	// - ephemeral_ssd: local SSD Disks
	// - cloud_essd: ESSD cloud Disks.
	Category pulumi.StringPtrInput `pulumi:"category"`
	// Delete this data disk when the instance is destroyed. It only works on cloud, cloud_efficiency, cloudSsd and cloudEssd disk. If the category of this data disk was ephemeral_ssd, please don't set this param.
	DeleteWithInstance pulumi.BoolPtrInput `pulumi:"deleteWithInstance"`
	// The description of the data disk.
	Description pulumi.StringPtrInput `pulumi:"description"`
	// -(Optional, Bool) Encrypted the data in this disk.
	Encrypted pulumi.BoolPtrInput `pulumi:"encrypted"`
	// The name of the data disk.
	Name             pulumi.StringPtrInput `pulumi:"name"`
	PerformanceLevel pulumi.StringPtrInput `pulumi:"performanceLevel"`
	// The size of the data disk.
	// - cloud:[5, 2000]
	// - cloud_efficiency:[20, 32768]
	// - cloud_ssd:[20, 32768]
	// - cloud_essd:[20, 32768]
	// - ephemeral_ssd: [5, 800]
	Size pulumi.IntPtrInput `pulumi:"size"`
	// The snapshot ID used to initialize the data disk. If the size specified by snapshot is greater that the size of the disk, use the size specified by snapshot as the size of the data disk.
	SnapshotId pulumi.StringPtrInput `pulumi:"snapshotId"`
}

func (LaunchTemplateDataDiskArgs) ElementType

func (LaunchTemplateDataDiskArgs) ElementType() reflect.Type

func (LaunchTemplateDataDiskArgs) ToLaunchTemplateDataDiskOutput

func (i LaunchTemplateDataDiskArgs) ToLaunchTemplateDataDiskOutput() LaunchTemplateDataDiskOutput

func (LaunchTemplateDataDiskArgs) ToLaunchTemplateDataDiskOutputWithContext

func (i LaunchTemplateDataDiskArgs) ToLaunchTemplateDataDiskOutputWithContext(ctx context.Context) LaunchTemplateDataDiskOutput

type LaunchTemplateDataDiskArray

type LaunchTemplateDataDiskArray []LaunchTemplateDataDiskInput

func (LaunchTemplateDataDiskArray) ElementType

func (LaunchTemplateDataDiskArray) ToLaunchTemplateDataDiskArrayOutput

func (i LaunchTemplateDataDiskArray) ToLaunchTemplateDataDiskArrayOutput() LaunchTemplateDataDiskArrayOutput

func (LaunchTemplateDataDiskArray) ToLaunchTemplateDataDiskArrayOutputWithContext

func (i LaunchTemplateDataDiskArray) ToLaunchTemplateDataDiskArrayOutputWithContext(ctx context.Context) LaunchTemplateDataDiskArrayOutput

type LaunchTemplateDataDiskArrayInput

type LaunchTemplateDataDiskArrayInput interface {
	pulumi.Input

	ToLaunchTemplateDataDiskArrayOutput() LaunchTemplateDataDiskArrayOutput
	ToLaunchTemplateDataDiskArrayOutputWithContext(context.Context) LaunchTemplateDataDiskArrayOutput
}

LaunchTemplateDataDiskArrayInput is an input type that accepts LaunchTemplateDataDiskArray and LaunchTemplateDataDiskArrayOutput values. You can construct a concrete instance of `LaunchTemplateDataDiskArrayInput` via:

LaunchTemplateDataDiskArray{ LaunchTemplateDataDiskArgs{...} }

type LaunchTemplateDataDiskArrayOutput

type LaunchTemplateDataDiskArrayOutput struct{ *pulumi.OutputState }

func (LaunchTemplateDataDiskArrayOutput) ElementType

func (LaunchTemplateDataDiskArrayOutput) Index

func (LaunchTemplateDataDiskArrayOutput) ToLaunchTemplateDataDiskArrayOutput

func (o LaunchTemplateDataDiskArrayOutput) ToLaunchTemplateDataDiskArrayOutput() LaunchTemplateDataDiskArrayOutput

func (LaunchTemplateDataDiskArrayOutput) ToLaunchTemplateDataDiskArrayOutputWithContext

func (o LaunchTemplateDataDiskArrayOutput) ToLaunchTemplateDataDiskArrayOutputWithContext(ctx context.Context) LaunchTemplateDataDiskArrayOutput

type LaunchTemplateDataDiskInput

type LaunchTemplateDataDiskInput interface {
	pulumi.Input

	ToLaunchTemplateDataDiskOutput() LaunchTemplateDataDiskOutput
	ToLaunchTemplateDataDiskOutputWithContext(context.Context) LaunchTemplateDataDiskOutput
}

LaunchTemplateDataDiskInput is an input type that accepts LaunchTemplateDataDiskArgs and LaunchTemplateDataDiskOutput values. You can construct a concrete instance of `LaunchTemplateDataDiskInput` via:

LaunchTemplateDataDiskArgs{...}

type LaunchTemplateDataDiskOutput

type LaunchTemplateDataDiskOutput struct{ *pulumi.OutputState }

func (LaunchTemplateDataDiskOutput) Category

The category of the disk: - cloud: Basic cloud disk. - cloud_efficiency: Ultra cloud disk. - cloud_ssd: SSD cloud Disks. - ephemeral_ssd: local SSD Disks - cloud_essd: ESSD cloud Disks.

func (LaunchTemplateDataDiskOutput) DeleteWithInstance

func (o LaunchTemplateDataDiskOutput) DeleteWithInstance() pulumi.BoolPtrOutput

Delete this data disk when the instance is destroyed. It only works on cloud, cloud_efficiency, cloudSsd and cloudEssd disk. If the category of this data disk was ephemeral_ssd, please don't set this param.

func (LaunchTemplateDataDiskOutput) Description

The description of the data disk.

func (LaunchTemplateDataDiskOutput) ElementType

func (LaunchTemplateDataDiskOutput) Encrypted

-(Optional, Bool) Encrypted the data in this disk.

func (LaunchTemplateDataDiskOutput) Name

The name of the data disk.

func (LaunchTemplateDataDiskOutput) PerformanceLevel

func (LaunchTemplateDataDiskOutput) Size

The size of the data disk. - cloud:[5, 2000] - cloud_efficiency:[20, 32768] - cloud_ssd:[20, 32768] - cloud_essd:[20, 32768] - ephemeral_ssd: [5, 800]

func (LaunchTemplateDataDiskOutput) SnapshotId

The snapshot ID used to initialize the data disk. If the size specified by snapshot is greater that the size of the disk, use the size specified by snapshot as the size of the data disk.

func (LaunchTemplateDataDiskOutput) ToLaunchTemplateDataDiskOutput

func (o LaunchTemplateDataDiskOutput) ToLaunchTemplateDataDiskOutput() LaunchTemplateDataDiskOutput

func (LaunchTemplateDataDiskOutput) ToLaunchTemplateDataDiskOutputWithContext

func (o LaunchTemplateDataDiskOutput) ToLaunchTemplateDataDiskOutputWithContext(ctx context.Context) LaunchTemplateDataDiskOutput

type LaunchTemplateInput

type LaunchTemplateInput interface {
	pulumi.Input

	ToLaunchTemplateOutput() LaunchTemplateOutput
	ToLaunchTemplateOutputWithContext(ctx context.Context) LaunchTemplateOutput
}

type LaunchTemplateMap

type LaunchTemplateMap map[string]LaunchTemplateInput

func (LaunchTemplateMap) ElementType

func (LaunchTemplateMap) ElementType() reflect.Type

func (LaunchTemplateMap) ToLaunchTemplateMapOutput

func (i LaunchTemplateMap) ToLaunchTemplateMapOutput() LaunchTemplateMapOutput

func (LaunchTemplateMap) ToLaunchTemplateMapOutputWithContext

func (i LaunchTemplateMap) ToLaunchTemplateMapOutputWithContext(ctx context.Context) LaunchTemplateMapOutput

type LaunchTemplateMapInput

type LaunchTemplateMapInput interface {
	pulumi.Input

	ToLaunchTemplateMapOutput() LaunchTemplateMapOutput
	ToLaunchTemplateMapOutputWithContext(context.Context) LaunchTemplateMapOutput
}

LaunchTemplateMapInput is an input type that accepts LaunchTemplateMap and LaunchTemplateMapOutput values. You can construct a concrete instance of `LaunchTemplateMapInput` via:

LaunchTemplateMap{ "key": LaunchTemplateArgs{...} }

type LaunchTemplateMapOutput

type LaunchTemplateMapOutput struct{ *pulumi.OutputState }

func (LaunchTemplateMapOutput) ElementType

func (LaunchTemplateMapOutput) ElementType() reflect.Type

func (LaunchTemplateMapOutput) MapIndex

func (LaunchTemplateMapOutput) ToLaunchTemplateMapOutput

func (o LaunchTemplateMapOutput) ToLaunchTemplateMapOutput() LaunchTemplateMapOutput

func (LaunchTemplateMapOutput) ToLaunchTemplateMapOutputWithContext

func (o LaunchTemplateMapOutput) ToLaunchTemplateMapOutputWithContext(ctx context.Context) LaunchTemplateMapOutput

type LaunchTemplateNetworkInterfaces

type LaunchTemplateNetworkInterfaces struct {
	// The description of the data disk.
	Description *string `pulumi:"description"`
	// The name of the data disk.
	Name *string `pulumi:"name"`
	// The primary private IP address of the ENI.
	PrimaryIp *string `pulumi:"primaryIp"`
	// The security group ID must be one in the same VPC.
	SecurityGroupId *string `pulumi:"securityGroupId"`
	// The VSwitch ID for ENI. The instance must be in the same zone of the same VPC network as the ENI, but they may belong to different VSwitches.
	VswitchId *string `pulumi:"vswitchId"`
}

type LaunchTemplateNetworkInterfacesArgs

type LaunchTemplateNetworkInterfacesArgs struct {
	// The description of the data disk.
	Description pulumi.StringPtrInput `pulumi:"description"`
	// The name of the data disk.
	Name pulumi.StringPtrInput `pulumi:"name"`
	// The primary private IP address of the ENI.
	PrimaryIp pulumi.StringPtrInput `pulumi:"primaryIp"`
	// The security group ID must be one in the same VPC.
	SecurityGroupId pulumi.StringPtrInput `pulumi:"securityGroupId"`
	// The VSwitch ID for ENI. The instance must be in the same zone of the same VPC network as the ENI, but they may belong to different VSwitches.
	VswitchId pulumi.StringPtrInput `pulumi:"vswitchId"`
}

func (LaunchTemplateNetworkInterfacesArgs) ElementType

func (LaunchTemplateNetworkInterfacesArgs) ToLaunchTemplateNetworkInterfacesOutput

func (i LaunchTemplateNetworkInterfacesArgs) ToLaunchTemplateNetworkInterfacesOutput() LaunchTemplateNetworkInterfacesOutput

func (LaunchTemplateNetworkInterfacesArgs) ToLaunchTemplateNetworkInterfacesOutputWithContext

func (i LaunchTemplateNetworkInterfacesArgs) ToLaunchTemplateNetworkInterfacesOutputWithContext(ctx context.Context) LaunchTemplateNetworkInterfacesOutput

func (LaunchTemplateNetworkInterfacesArgs) ToLaunchTemplateNetworkInterfacesPtrOutput

func (i LaunchTemplateNetworkInterfacesArgs) ToLaunchTemplateNetworkInterfacesPtrOutput() LaunchTemplateNetworkInterfacesPtrOutput

func (LaunchTemplateNetworkInterfacesArgs) ToLaunchTemplateNetworkInterfacesPtrOutputWithContext

func (i LaunchTemplateNetworkInterfacesArgs) ToLaunchTemplateNetworkInterfacesPtrOutputWithContext(ctx context.Context) LaunchTemplateNetworkInterfacesPtrOutput

type LaunchTemplateNetworkInterfacesInput

type LaunchTemplateNetworkInterfacesInput interface {
	pulumi.Input

	ToLaunchTemplateNetworkInterfacesOutput() LaunchTemplateNetworkInterfacesOutput
	ToLaunchTemplateNetworkInterfacesOutputWithContext(context.Context) LaunchTemplateNetworkInterfacesOutput
}

LaunchTemplateNetworkInterfacesInput is an input type that accepts LaunchTemplateNetworkInterfacesArgs and LaunchTemplateNetworkInterfacesOutput values. You can construct a concrete instance of `LaunchTemplateNetworkInterfacesInput` via:

LaunchTemplateNetworkInterfacesArgs{...}

type LaunchTemplateNetworkInterfacesOutput

type LaunchTemplateNetworkInterfacesOutput struct{ *pulumi.OutputState }

func (LaunchTemplateNetworkInterfacesOutput) Description

The description of the data disk.

func (LaunchTemplateNetworkInterfacesOutput) ElementType

func (LaunchTemplateNetworkInterfacesOutput) Name

The name of the data disk.

func (LaunchTemplateNetworkInterfacesOutput) PrimaryIp

The primary private IP address of the ENI.

func (LaunchTemplateNetworkInterfacesOutput) SecurityGroupId

The security group ID must be one in the same VPC.

func (LaunchTemplateNetworkInterfacesOutput) ToLaunchTemplateNetworkInterfacesOutput

func (o LaunchTemplateNetworkInterfacesOutput) ToLaunchTemplateNetworkInterfacesOutput() LaunchTemplateNetworkInterfacesOutput

func (LaunchTemplateNetworkInterfacesOutput) ToLaunchTemplateNetworkInterfacesOutputWithContext

func (o LaunchTemplateNetworkInterfacesOutput) ToLaunchTemplateNetworkInterfacesOutputWithContext(ctx context.Context) LaunchTemplateNetworkInterfacesOutput

func (LaunchTemplateNetworkInterfacesOutput) ToLaunchTemplateNetworkInterfacesPtrOutput

func (o LaunchTemplateNetworkInterfacesOutput) ToLaunchTemplateNetworkInterfacesPtrOutput() LaunchTemplateNetworkInterfacesPtrOutput

func (LaunchTemplateNetworkInterfacesOutput) ToLaunchTemplateNetworkInterfacesPtrOutputWithContext

func (o LaunchTemplateNetworkInterfacesOutput) ToLaunchTemplateNetworkInterfacesPtrOutputWithContext(ctx context.Context) LaunchTemplateNetworkInterfacesPtrOutput

func (LaunchTemplateNetworkInterfacesOutput) VswitchId

The VSwitch ID for ENI. The instance must be in the same zone of the same VPC network as the ENI, but they may belong to different VSwitches.

type LaunchTemplateNetworkInterfacesPtrInput

type LaunchTemplateNetworkInterfacesPtrInput interface {
	pulumi.Input

	ToLaunchTemplateNetworkInterfacesPtrOutput() LaunchTemplateNetworkInterfacesPtrOutput
	ToLaunchTemplateNetworkInterfacesPtrOutputWithContext(context.Context) LaunchTemplateNetworkInterfacesPtrOutput
}

LaunchTemplateNetworkInterfacesPtrInput is an input type that accepts LaunchTemplateNetworkInterfacesArgs, LaunchTemplateNetworkInterfacesPtr and LaunchTemplateNetworkInterfacesPtrOutput values. You can construct a concrete instance of `LaunchTemplateNetworkInterfacesPtrInput` via:

        LaunchTemplateNetworkInterfacesArgs{...}

or:

        nil

type LaunchTemplateNetworkInterfacesPtrOutput

type LaunchTemplateNetworkInterfacesPtrOutput struct{ *pulumi.OutputState }

func (LaunchTemplateNetworkInterfacesPtrOutput) Description

The description of the data disk.

func (LaunchTemplateNetworkInterfacesPtrOutput) Elem

func (LaunchTemplateNetworkInterfacesPtrOutput) ElementType

func (LaunchTemplateNetworkInterfacesPtrOutput) Name

The name of the data disk.

func (LaunchTemplateNetworkInterfacesPtrOutput) PrimaryIp

The primary private IP address of the ENI.

func (LaunchTemplateNetworkInterfacesPtrOutput) SecurityGroupId

The security group ID must be one in the same VPC.

func (LaunchTemplateNetworkInterfacesPtrOutput) ToLaunchTemplateNetworkInterfacesPtrOutput

func (o LaunchTemplateNetworkInterfacesPtrOutput) ToLaunchTemplateNetworkInterfacesPtrOutput() LaunchTemplateNetworkInterfacesPtrOutput

func (LaunchTemplateNetworkInterfacesPtrOutput) ToLaunchTemplateNetworkInterfacesPtrOutputWithContext

func (o LaunchTemplateNetworkInterfacesPtrOutput) ToLaunchTemplateNetworkInterfacesPtrOutputWithContext(ctx context.Context) LaunchTemplateNetworkInterfacesPtrOutput

func (LaunchTemplateNetworkInterfacesPtrOutput) VswitchId

The VSwitch ID for ENI. The instance must be in the same zone of the same VPC network as the ENI, but they may belong to different VSwitches.

type LaunchTemplateOutput

type LaunchTemplateOutput struct{ *pulumi.OutputState }

func (LaunchTemplateOutput) AutoReleaseTime

func (o LaunchTemplateOutput) AutoReleaseTime() pulumi.StringPtrOutput

Instance auto release time. The time is presented using the ISO8601 standard and in UTC time. The format is YYYY-MM-DDTHH:MM:SSZ.

func (LaunchTemplateOutput) DataDisks

The list of data disks created with instance.

func (LaunchTemplateOutput) DeploymentSetId

func (o LaunchTemplateOutput) DeploymentSetId() pulumi.StringPtrOutput

func (LaunchTemplateOutput) Description

The description of the data disk.

func (LaunchTemplateOutput) ElementType

func (LaunchTemplateOutput) ElementType() reflect.Type

func (LaunchTemplateOutput) EnableVmOsConfig

func (o LaunchTemplateOutput) EnableVmOsConfig() pulumi.BoolPtrOutput

func (LaunchTemplateOutput) HostName

Instance host name.It cannot start or end with a period (.) or a hyphen (-) and it cannot have two or more consecutive periods (.) or hyphens (-).For Windows: The host name can be [2, 15] characters in length. It can contain A-Z, a-z, numbers, periods (.), and hyphens (-). It cannot only contain numbers. For other operating systems: The host name can be [2, 64] characters in length. It can be segments separated by periods (.). It can contain A-Z, a-z, numbers, and hyphens (-).

func (LaunchTemplateOutput) ImageId

Image ID.

func (LaunchTemplateOutput) ImageOwnerAlias

func (o LaunchTemplateOutput) ImageOwnerAlias() pulumi.StringPtrOutput

func (LaunchTemplateOutput) InstanceChargeType

func (o LaunchTemplateOutput) InstanceChargeType() pulumi.StringPtrOutput

Billing methods. Optional values: - PrePaid: Monthly, or annual subscription. Make sure that your registered credit card is invalid or you have insufficient balance in your PayPal account. Otherwise, InvalidPayMethod error may occur. - PostPaid: Pay-As-You-Go.

func (LaunchTemplateOutput) InstanceName

func (o LaunchTemplateOutput) InstanceName() pulumi.StringPtrOutput

The name of the instance. The name is a string of 2 to 128 characters. It must begin with an English or a Chinese character. It can contain A-Z, a-z, Chinese characters, numbers, periods (.), colons (:), underscores (_), and hyphens (-).

func (LaunchTemplateOutput) InstanceType

func (o LaunchTemplateOutput) InstanceType() pulumi.StringPtrOutput

Instance type. For more information, call resourceAlicloudInstances to obtain the latest instance type list.

func (LaunchTemplateOutput) InternetChargeType

func (o LaunchTemplateOutput) InternetChargeType() pulumi.StringPtrOutput

Internet bandwidth billing method. Optional values: `PayByTraffic` | `PayByBandwidth`.

func (LaunchTemplateOutput) InternetMaxBandwidthIn

func (o LaunchTemplateOutput) InternetMaxBandwidthIn() pulumi.IntOutput

The maximum inbound bandwidth from the Internet network, measured in Mbit/s. Value range: [1, 200].

func (LaunchTemplateOutput) InternetMaxBandwidthOut

func (o LaunchTemplateOutput) InternetMaxBandwidthOut() pulumi.IntPtrOutput

Maximum outbound bandwidth from the Internet, its unit of measurement is Mbit/s. Value range: [0, 100].

func (LaunchTemplateOutput) IoOptimized

Whether it is an I/O-optimized instance or not. Optional values: - none - optimized

func (LaunchTemplateOutput) KeyPairName

The name of the key pair. - Ignore this parameter for Windows instances. It is null by default. Even if you enter this parameter, only the Password content is used. - The password logon method for Linux instances is set to forbidden upon initialization.

func (LaunchTemplateOutput) LaunchTemplateName

func (o LaunchTemplateOutput) LaunchTemplateName() pulumi.StringOutput

func (LaunchTemplateOutput) Name deprecated

The name of the data disk.

Deprecated: Field 'name' has been deprecated from provider version 1.120.0. New field 'launch_template_name' instead.

func (LaunchTemplateOutput) NetworkInterfaces

The list of network interfaces created with instance.

func (LaunchTemplateOutput) NetworkType

Network type of the instance. Value options: `classic` | `vpc`.

func (LaunchTemplateOutput) PasswordInherit

func (o LaunchTemplateOutput) PasswordInherit() pulumi.BoolPtrOutput

func (LaunchTemplateOutput) Period

func (LaunchTemplateOutput) PrivateIpAddress

func (o LaunchTemplateOutput) PrivateIpAddress() pulumi.StringPtrOutput

func (LaunchTemplateOutput) RamRoleName

The RAM role name of the instance. You can use the RAM API ListRoles to query instance RAM role names.

func (LaunchTemplateOutput) ResourceGroupId

func (o LaunchTemplateOutput) ResourceGroupId() pulumi.StringPtrOutput

func (LaunchTemplateOutput) SecurityEnhancementStrategy

func (o LaunchTemplateOutput) SecurityEnhancementStrategy() pulumi.StringPtrOutput

Whether or not to activate the security enhancement feature and install network security software free of charge. Optional values: Active | Deactive.

func (LaunchTemplateOutput) SecurityGroupId

func (o LaunchTemplateOutput) SecurityGroupId() pulumi.StringPtrOutput

The security group ID must be one in the same VPC.

func (LaunchTemplateOutput) SecurityGroupIds

func (o LaunchTemplateOutput) SecurityGroupIds() pulumi.StringArrayOutput

func (LaunchTemplateOutput) SpotDuration

func (o LaunchTemplateOutput) SpotDuration() pulumi.StringPtrOutput

func (LaunchTemplateOutput) SpotPriceLimit

func (o LaunchTemplateOutput) SpotPriceLimit() pulumi.Float64PtrOutput

-(Optional) Sets the maximum hourly instance price. Supports up to three decimal places.

func (LaunchTemplateOutput) SpotStrategy

func (o LaunchTemplateOutput) SpotStrategy() pulumi.StringPtrOutput

The spot strategy for a Pay-As-You-Go instance. This parameter is valid and required only when InstanceChargeType is set to PostPaid. Value range: - NoSpot: Normal Pay-As-You-Go instance. - SpotWithPriceLimit: Sets the maximum price for a spot instance. - SpotAsPriceGo: The system automatically calculates the price. The maximum value is the Pay-As-You-Go price.

func (LaunchTemplateOutput) SystemDisk

func (LaunchTemplateOutput) SystemDiskCategory deprecated

func (o LaunchTemplateOutput) SystemDiskCategory() pulumi.StringOutput

The category of the system disk. System disk type. Optional values: - cloud: Basic cloud disk. - cloud_efficiency: Ultra cloud disk. - cloud_ssd: SSD cloud Disks. - ephemeral_ssd: local SSD Disks - cloud_essd: ESSD cloud Disks.

Deprecated: Field 'system_disk_category' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.

func (LaunchTemplateOutput) SystemDiskDescription deprecated

func (o LaunchTemplateOutput) SystemDiskDescription() pulumi.StringOutput

System disk description. It cannot begin with http:// or https://.

Deprecated: Field 'system_disk_description' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.

func (LaunchTemplateOutput) SystemDiskName deprecated

func (o LaunchTemplateOutput) SystemDiskName() pulumi.StringOutput

System disk name. The name is a string of 2 to 128 characters. It must begin with an English or a Chinese character. It can contain A-Z, a-z, Chinese characters, numbers, periods (.), colons (:), underscores (_), and hyphens (-).

Deprecated: Field 'system_disk_name' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.

func (LaunchTemplateOutput) SystemDiskSize deprecated

func (o LaunchTemplateOutput) SystemDiskSize() pulumi.IntOutput

Size of the system disk, measured in GB. Value range: [20, 500].

Deprecated: Field 'system_disk_size' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.

func (LaunchTemplateOutput) Tags

A mapping of tags to assign to the resource. - Key: It can be up to 64 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It cannot be a null string. - Value: It can be up to 128 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It can be a null string.

func (LaunchTemplateOutput) TemplateResourceGroupId

func (o LaunchTemplateOutput) TemplateResourceGroupId() pulumi.StringPtrOutput

func (LaunchTemplateOutput) TemplateTags

func (o LaunchTemplateOutput) TemplateTags() pulumi.MapOutput

func (LaunchTemplateOutput) ToLaunchTemplateOutput

func (o LaunchTemplateOutput) ToLaunchTemplateOutput() LaunchTemplateOutput

func (LaunchTemplateOutput) ToLaunchTemplateOutputWithContext

func (o LaunchTemplateOutput) ToLaunchTemplateOutputWithContext(ctx context.Context) LaunchTemplateOutput

func (LaunchTemplateOutput) UserData

func (LaunchTemplateOutput) Userdata deprecated

User data of the instance, which is Base64-encoded. Size of the raw data cannot exceed 16 KB.

Deprecated: Field 'userdata' has been deprecated from provider version 1.120.0. New field 'user_data' instead.

func (LaunchTemplateOutput) VersionDescription

func (o LaunchTemplateOutput) VersionDescription() pulumi.StringPtrOutput

func (LaunchTemplateOutput) VpcId

func (LaunchTemplateOutput) VswitchId

The VSwitch ID for ENI. The instance must be in the same zone of the same VPC network as the ENI, but they may belong to different VSwitches.

func (LaunchTemplateOutput) ZoneId

The zone ID of the instance.

type LaunchTemplateState

type LaunchTemplateState struct {
	// Instance auto release time. The time is presented using the ISO8601 standard and in UTC time. The format is  YYYY-MM-DDTHH:MM:SSZ.
	AutoReleaseTime pulumi.StringPtrInput
	// The list of data disks created with instance.
	DataDisks       LaunchTemplateDataDiskArrayInput
	DeploymentSetId pulumi.StringPtrInput
	// The description of the data disk.
	Description      pulumi.StringPtrInput
	EnableVmOsConfig pulumi.BoolPtrInput
	// Instance host name.It cannot start or end with a period (.) or a hyphen (-) and it cannot have two or more consecutive periods (.) or hyphens (-).For Windows: The host name can be [2, 15] characters in length. It can contain A-Z, a-z, numbers, periods (.), and hyphens (-). It cannot only contain numbers. For other operating systems: The host name can be [2, 64] characters in length. It can be segments separated by periods (.). It can contain A-Z, a-z, numbers, and hyphens (-).
	HostName pulumi.StringPtrInput
	// Image ID.
	ImageId         pulumi.StringPtrInput
	ImageOwnerAlias pulumi.StringPtrInput
	// Billing methods. Optional values:
	// - PrePaid: Monthly, or annual subscription. Make sure that your registered credit card is invalid or you have insufficient balance in your PayPal account. Otherwise, InvalidPayMethod error may occur.
	// - PostPaid: Pay-As-You-Go.
	InstanceChargeType pulumi.StringPtrInput
	// The name of the instance. The name is a string of 2 to 128 characters. It must begin with an English or a Chinese character. It can contain A-Z, a-z, Chinese characters, numbers, periods (.), colons (:), underscores (_), and hyphens (-).
	InstanceName pulumi.StringPtrInput
	// Instance type. For more information, call resourceAlicloudInstances to obtain the latest instance type list.
	InstanceType pulumi.StringPtrInput
	// Internet bandwidth billing method. Optional values: `PayByTraffic` | `PayByBandwidth`.
	InternetChargeType pulumi.StringPtrInput
	// The maximum inbound bandwidth from the Internet network, measured in Mbit/s. Value range: [1, 200].
	InternetMaxBandwidthIn pulumi.IntPtrInput
	// Maximum outbound bandwidth from the Internet, its unit of measurement is Mbit/s. Value range: [0, 100].
	InternetMaxBandwidthOut pulumi.IntPtrInput
	// Whether it is an I/O-optimized instance or not. Optional values:
	// - none
	// - optimized
	IoOptimized pulumi.StringPtrInput
	// The name of the key pair.
	// - Ignore this parameter for Windows instances. It is null by default. Even if you enter this parameter, only the  Password content is used.
	// - The password logon method for Linux instances is set to forbidden upon initialization.
	KeyPairName        pulumi.StringPtrInput
	LaunchTemplateName pulumi.StringPtrInput
	// The name of the data disk.
	//
	// Deprecated: Field 'name' has been deprecated from provider version 1.120.0. New field 'launch_template_name' instead.
	Name pulumi.StringPtrInput
	// The list of network interfaces created with instance.
	NetworkInterfaces LaunchTemplateNetworkInterfacesPtrInput
	// Network type of the instance. Value options: `classic` | `vpc`.
	NetworkType      pulumi.StringPtrInput
	PasswordInherit  pulumi.BoolPtrInput
	Period           pulumi.IntPtrInput
	PrivateIpAddress pulumi.StringPtrInput
	// The RAM role name of the instance. You can use the RAM API ListRoles to query instance RAM role names.
	RamRoleName     pulumi.StringPtrInput
	ResourceGroupId pulumi.StringPtrInput
	// Whether or not to activate the security enhancement feature and install network security software free of charge. Optional values: Active | Deactive.
	SecurityEnhancementStrategy pulumi.StringPtrInput
	// The security group ID must be one in the same VPC.
	SecurityGroupId  pulumi.StringPtrInput
	SecurityGroupIds pulumi.StringArrayInput
	SpotDuration     pulumi.StringPtrInput
	// -(Optional) 	Sets the maximum hourly instance price. Supports up to three decimal places.
	SpotPriceLimit pulumi.Float64PtrInput
	// The spot strategy for a Pay-As-You-Go instance. This parameter is valid and required only when InstanceChargeType is set to PostPaid. Value range:
	// - NoSpot: Normal Pay-As-You-Go instance.
	// - SpotWithPriceLimit: Sets the maximum price for a spot instance.
	// - SpotAsPriceGo: The system automatically calculates the price. The maximum value is the Pay-As-You-Go price.
	SpotStrategy pulumi.StringPtrInput
	SystemDisk   LaunchTemplateSystemDiskPtrInput
	// The category of the system disk. System disk type. Optional values:
	// - cloud: Basic cloud disk.
	// - cloud_efficiency: Ultra cloud disk.
	// - cloud_ssd: SSD cloud Disks.
	// - ephemeral_ssd: local SSD Disks
	// - cloud_essd: ESSD cloud Disks.
	//
	// Deprecated: Field 'system_disk_category' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.
	SystemDiskCategory pulumi.StringPtrInput
	// System disk description. It cannot begin with http:// or https://.
	//
	// Deprecated: Field 'system_disk_description' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.
	SystemDiskDescription pulumi.StringPtrInput
	// System disk name. The name is a string of 2 to 128 characters. It must begin with an English or a Chinese character. It can contain A-Z, a-z, Chinese characters, numbers, periods (.), colons (:), underscores (_), and hyphens (-).
	//
	// Deprecated: Field 'system_disk_name' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.
	SystemDiskName pulumi.StringPtrInput
	// Size of the system disk, measured in GB. Value range: [20, 500].
	//
	// Deprecated: Field 'system_disk_size' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.
	SystemDiskSize pulumi.IntPtrInput
	// A mapping of tags to assign to the resource.
	// - Key: It can be up to 64 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It cannot be a null string.
	// - Value: It can be up to 128 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It can be a null string.
	Tags                    pulumi.MapInput
	TemplateResourceGroupId pulumi.StringPtrInput
	TemplateTags            pulumi.MapInput
	UserData                pulumi.StringPtrInput
	// User data of the instance, which is Base64-encoded. Size of the raw data cannot exceed 16 KB.
	//
	// Deprecated: Field 'userdata' has been deprecated from provider version 1.120.0. New field 'user_data' instead.
	Userdata           pulumi.StringPtrInput
	VersionDescription pulumi.StringPtrInput
	VpcId              pulumi.StringPtrInput
	// The VSwitch ID for ENI. The instance must be in the same zone of the same VPC network as the ENI, but they may belong to different VSwitches.
	VswitchId pulumi.StringPtrInput
	// The zone ID of the instance.
	ZoneId pulumi.StringPtrInput
}

func (LaunchTemplateState) ElementType

func (LaunchTemplateState) ElementType() reflect.Type

type LaunchTemplateSystemDisk

type LaunchTemplateSystemDisk struct {
	// The category of the disk:
	// - cloud: Basic cloud disk.
	// - cloud_efficiency: Ultra cloud disk.
	// - cloud_ssd: SSD cloud Disks.
	// - ephemeral_ssd: local SSD Disks
	// - cloud_essd: ESSD cloud Disks.
	Category *string `pulumi:"category"`
	// Delete this data disk when the instance is destroyed. It only works on cloud, cloud_efficiency, cloudSsd and cloudEssd disk. If the category of this data disk was ephemeral_ssd, please don't set this param.
	DeleteWithInstance *bool `pulumi:"deleteWithInstance"`
	// The description of the data disk.
	Description *string `pulumi:"description"`
	Iops        *string `pulumi:"iops"`
	// The name of the data disk.
	Name             *string `pulumi:"name"`
	PerformanceLevel *string `pulumi:"performanceLevel"`
	// The size of the data disk.
	// - cloud:[5, 2000]
	// - cloud_efficiency:[20, 32768]
	// - cloud_ssd:[20, 32768]
	// - cloud_essd:[20, 32768]
	// - ephemeral_ssd: [5, 800]
	Size *int `pulumi:"size"`
}

type LaunchTemplateSystemDiskArgs

type LaunchTemplateSystemDiskArgs struct {
	// The category of the disk:
	// - cloud: Basic cloud disk.
	// - cloud_efficiency: Ultra cloud disk.
	// - cloud_ssd: SSD cloud Disks.
	// - ephemeral_ssd: local SSD Disks
	// - cloud_essd: ESSD cloud Disks.
	Category pulumi.StringPtrInput `pulumi:"category"`
	// Delete this data disk when the instance is destroyed. It only works on cloud, cloud_efficiency, cloudSsd and cloudEssd disk. If the category of this data disk was ephemeral_ssd, please don't set this param.
	DeleteWithInstance pulumi.BoolPtrInput `pulumi:"deleteWithInstance"`
	// The description of the data disk.
	Description pulumi.StringPtrInput `pulumi:"description"`
	Iops        pulumi.StringPtrInput `pulumi:"iops"`
	// The name of the data disk.
	Name             pulumi.StringPtrInput `pulumi:"name"`
	PerformanceLevel pulumi.StringPtrInput `pulumi:"performanceLevel"`
	// The size of the data disk.
	// - cloud:[5, 2000]
	// - cloud_efficiency:[20, 32768]
	// - cloud_ssd:[20, 32768]
	// - cloud_essd:[20, 32768]
	// - ephemeral_ssd: [5, 800]
	Size pulumi.IntPtrInput `pulumi:"size"`
}

func (LaunchTemplateSystemDiskArgs) ElementType

func (LaunchTemplateSystemDiskArgs) ToLaunchTemplateSystemDiskOutput

func (i LaunchTemplateSystemDiskArgs) ToLaunchTemplateSystemDiskOutput() LaunchTemplateSystemDiskOutput

func (LaunchTemplateSystemDiskArgs) ToLaunchTemplateSystemDiskOutputWithContext

func (i LaunchTemplateSystemDiskArgs) ToLaunchTemplateSystemDiskOutputWithContext(ctx context.Context) LaunchTemplateSystemDiskOutput

func (LaunchTemplateSystemDiskArgs) ToLaunchTemplateSystemDiskPtrOutput

func (i LaunchTemplateSystemDiskArgs) ToLaunchTemplateSystemDiskPtrOutput() LaunchTemplateSystemDiskPtrOutput

func (LaunchTemplateSystemDiskArgs) ToLaunchTemplateSystemDiskPtrOutputWithContext

func (i LaunchTemplateSystemDiskArgs) ToLaunchTemplateSystemDiskPtrOutputWithContext(ctx context.Context) LaunchTemplateSystemDiskPtrOutput

type LaunchTemplateSystemDiskInput

type LaunchTemplateSystemDiskInput interface {
	pulumi.Input

	ToLaunchTemplateSystemDiskOutput() LaunchTemplateSystemDiskOutput
	ToLaunchTemplateSystemDiskOutputWithContext(context.Context) LaunchTemplateSystemDiskOutput
}

LaunchTemplateSystemDiskInput is an input type that accepts LaunchTemplateSystemDiskArgs and LaunchTemplateSystemDiskOutput values. You can construct a concrete instance of `LaunchTemplateSystemDiskInput` via:

LaunchTemplateSystemDiskArgs{...}

type LaunchTemplateSystemDiskOutput

type LaunchTemplateSystemDiskOutput struct{ *pulumi.OutputState }

func (LaunchTemplateSystemDiskOutput) Category

The category of the disk: - cloud: Basic cloud disk. - cloud_efficiency: Ultra cloud disk. - cloud_ssd: SSD cloud Disks. - ephemeral_ssd: local SSD Disks - cloud_essd: ESSD cloud Disks.

func (LaunchTemplateSystemDiskOutput) DeleteWithInstance

func (o LaunchTemplateSystemDiskOutput) DeleteWithInstance() pulumi.BoolPtrOutput

Delete this data disk when the instance is destroyed. It only works on cloud, cloud_efficiency, cloudSsd and cloudEssd disk. If the category of this data disk was ephemeral_ssd, please don't set this param.

func (LaunchTemplateSystemDiskOutput) Description

The description of the data disk.

func (LaunchTemplateSystemDiskOutput) ElementType

func (LaunchTemplateSystemDiskOutput) Iops

func (LaunchTemplateSystemDiskOutput) Name

The name of the data disk.

func (LaunchTemplateSystemDiskOutput) PerformanceLevel

func (LaunchTemplateSystemDiskOutput) Size

The size of the data disk. - cloud:[5, 2000] - cloud_efficiency:[20, 32768] - cloud_ssd:[20, 32768] - cloud_essd:[20, 32768] - ephemeral_ssd: [5, 800]

func (LaunchTemplateSystemDiskOutput) ToLaunchTemplateSystemDiskOutput

func (o LaunchTemplateSystemDiskOutput) ToLaunchTemplateSystemDiskOutput() LaunchTemplateSystemDiskOutput

func (LaunchTemplateSystemDiskOutput) ToLaunchTemplateSystemDiskOutputWithContext

func (o LaunchTemplateSystemDiskOutput) ToLaunchTemplateSystemDiskOutputWithContext(ctx context.Context) LaunchTemplateSystemDiskOutput

func (LaunchTemplateSystemDiskOutput) ToLaunchTemplateSystemDiskPtrOutput

func (o LaunchTemplateSystemDiskOutput) ToLaunchTemplateSystemDiskPtrOutput() LaunchTemplateSystemDiskPtrOutput

func (LaunchTemplateSystemDiskOutput) ToLaunchTemplateSystemDiskPtrOutputWithContext

func (o LaunchTemplateSystemDiskOutput) ToLaunchTemplateSystemDiskPtrOutputWithContext(ctx context.Context) LaunchTemplateSystemDiskPtrOutput

type LaunchTemplateSystemDiskPtrInput

type LaunchTemplateSystemDiskPtrInput interface {
	pulumi.Input

	ToLaunchTemplateSystemDiskPtrOutput() LaunchTemplateSystemDiskPtrOutput
	ToLaunchTemplateSystemDiskPtrOutputWithContext(context.Context) LaunchTemplateSystemDiskPtrOutput
}

LaunchTemplateSystemDiskPtrInput is an input type that accepts LaunchTemplateSystemDiskArgs, LaunchTemplateSystemDiskPtr and LaunchTemplateSystemDiskPtrOutput values. You can construct a concrete instance of `LaunchTemplateSystemDiskPtrInput` via:

        LaunchTemplateSystemDiskArgs{...}

or:

        nil

type LaunchTemplateSystemDiskPtrOutput

type LaunchTemplateSystemDiskPtrOutput struct{ *pulumi.OutputState }

func (LaunchTemplateSystemDiskPtrOutput) Category

The category of the disk: - cloud: Basic cloud disk. - cloud_efficiency: Ultra cloud disk. - cloud_ssd: SSD cloud Disks. - ephemeral_ssd: local SSD Disks - cloud_essd: ESSD cloud Disks.

func (LaunchTemplateSystemDiskPtrOutput) DeleteWithInstance

Delete this data disk when the instance is destroyed. It only works on cloud, cloud_efficiency, cloudSsd and cloudEssd disk. If the category of this data disk was ephemeral_ssd, please don't set this param.

func (LaunchTemplateSystemDiskPtrOutput) Description

The description of the data disk.

func (LaunchTemplateSystemDiskPtrOutput) Elem

func (LaunchTemplateSystemDiskPtrOutput) ElementType

func (LaunchTemplateSystemDiskPtrOutput) Iops

func (LaunchTemplateSystemDiskPtrOutput) Name

The name of the data disk.

func (LaunchTemplateSystemDiskPtrOutput) PerformanceLevel

func (LaunchTemplateSystemDiskPtrOutput) Size

The size of the data disk. - cloud:[5, 2000] - cloud_efficiency:[20, 32768] - cloud_ssd:[20, 32768] - cloud_essd:[20, 32768] - ephemeral_ssd: [5, 800]

func (LaunchTemplateSystemDiskPtrOutput) ToLaunchTemplateSystemDiskPtrOutput

func (o LaunchTemplateSystemDiskPtrOutput) ToLaunchTemplateSystemDiskPtrOutput() LaunchTemplateSystemDiskPtrOutput

func (LaunchTemplateSystemDiskPtrOutput) ToLaunchTemplateSystemDiskPtrOutputWithContext

func (o LaunchTemplateSystemDiskPtrOutput) ToLaunchTemplateSystemDiskPtrOutputWithContext(ctx context.Context) LaunchTemplateSystemDiskPtrOutput

type LookupEcsImagePipelineArgs

type LookupEcsImagePipelineArgs struct {
	// A list of Image Pipeline ids.
	Ids []string `pulumi:"ids"`
	// The name of the image template.
	Name *string `pulumi:"name"`
	// A regex string to filter results by Image Pipeline name.
	NameRegex  *string `pulumi:"nameRegex"`
	OutputFile *string `pulumi:"outputFile"`
	// The ID of the resource group to which the image template belongs.
	ResourceGroupId *string `pulumi:"resourceGroupId"`
	// A mapping of tags to assign to the resource.
	Tags map[string]interface{} `pulumi:"tags"`
}

A collection of arguments for invoking getEcsImagePipeline.

type LookupEcsImagePipelineOutputArgs

type LookupEcsImagePipelineOutputArgs struct {
	// A list of Image Pipeline ids.
	Ids pulumi.StringArrayInput `pulumi:"ids"`
	// The name of the image template.
	Name pulumi.StringPtrInput `pulumi:"name"`
	// A regex string to filter results by Image Pipeline name.
	NameRegex  pulumi.StringPtrInput `pulumi:"nameRegex"`
	OutputFile pulumi.StringPtrInput `pulumi:"outputFile"`
	// The ID of the resource group to which the image template belongs.
	ResourceGroupId pulumi.StringPtrInput `pulumi:"resourceGroupId"`
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapInput `pulumi:"tags"`
}

A collection of arguments for invoking getEcsImagePipeline.

func (LookupEcsImagePipelineOutputArgs) ElementType

type LookupEcsImagePipelineResult

type LookupEcsImagePipelineResult struct {
	// The provider-assigned unique ID for this managed resource.
	Id              string                        `pulumi:"id"`
	Ids             []string                      `pulumi:"ids"`
	Name            *string                       `pulumi:"name"`
	NameRegex       *string                       `pulumi:"nameRegex"`
	Names           []string                      `pulumi:"names"`
	OutputFile      *string                       `pulumi:"outputFile"`
	Pipelines       []GetEcsImagePipelinePipeline `pulumi:"pipelines"`
	ResourceGroupId *string                       `pulumi:"resourceGroupId"`
	Tags            map[string]interface{}        `pulumi:"tags"`
}

A collection of values returned by getEcsImagePipeline.

func LookupEcsImagePipeline

func LookupEcsImagePipeline(ctx *pulumi.Context, args *LookupEcsImagePipelineArgs, opts ...pulumi.InvokeOption) (*LookupEcsImagePipelineResult, error)

This data source provides the Ecs Image Pipelines of the current Alibaba Cloud user.

> **NOTE:** Available in v1.163.0+.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/go/alicloud/ecs"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		ids, err := ecs.LookupEcsImagePipeline(ctx, &ecs.LookupEcsImagePipelineArgs{
			Ids: []string{
				"example_value",
			},
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("ecsImagePipelineId1", ids.Pipelines[0].Id)
		nameRegex, err := ecs.LookupEcsImagePipeline(ctx, &ecs.LookupEcsImagePipelineArgs{
			NameRegex: pulumi.StringRef("^my-ImagePipeline"),
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("ecsImagePipelineId2", nameRegex.Pipelines[0].Id)
		return nil
	})
}

```

type LookupEcsImagePipelineResultOutput

type LookupEcsImagePipelineResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getEcsImagePipeline.

func (LookupEcsImagePipelineResultOutput) ElementType

func (LookupEcsImagePipelineResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (LookupEcsImagePipelineResultOutput) Ids

func (LookupEcsImagePipelineResultOutput) Name

func (LookupEcsImagePipelineResultOutput) NameRegex

func (LookupEcsImagePipelineResultOutput) Names

func (LookupEcsImagePipelineResultOutput) OutputFile

func (LookupEcsImagePipelineResultOutput) Pipelines

func (LookupEcsImagePipelineResultOutput) ResourceGroupId

func (LookupEcsImagePipelineResultOutput) Tags

func (LookupEcsImagePipelineResultOutput) ToLookupEcsImagePipelineResultOutput

func (o LookupEcsImagePipelineResultOutput) ToLookupEcsImagePipelineResultOutput() LookupEcsImagePipelineResultOutput

func (LookupEcsImagePipelineResultOutput) ToLookupEcsImagePipelineResultOutputWithContext

func (o LookupEcsImagePipelineResultOutput) ToLookupEcsImagePipelineResultOutputWithContext(ctx context.Context) LookupEcsImagePipelineResultOutput

type ReservedInstance

type ReservedInstance struct {
	pulumi.CustomResourceState

	// Indicates the sharing status of the reserved instance when the AllocationType parameter is set to Shared. Valid values: `allocated`: The reserved instance is allocated to another account. `beAllocated`: The reserved instance is allocated by another account.
	AllocationStatus pulumi.StringOutput `pulumi:"allocationStatus"`
	// The auto-renewal term of the reserved instance. This parameter takes effect only when AutoRenew is set to true. Valid values: 1, 12, 36, and 60. Default value when `periodUnit` is set to Month: 1 Default value when `periodUnit` is set to Year: 12
	AutoRenewPeriod pulumi.IntOutput `pulumi:"autoRenewPeriod"`
	// The time when the reserved instance was created.
	CreateTime pulumi.StringOutput `pulumi:"createTime"`
	// Description of the RI. 2 to 256 English or Chinese characters. It cannot start with `http://` or `https://`.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// The time when the reserved instance expires.
	ExpiredTime pulumi.StringOutput `pulumi:"expiredTime"`
	// Number of instances allocated to an RI (An RI is a coupon that includes one or more allocated instances.).
	InstanceAmount pulumi.IntOutput `pulumi:"instanceAmount"`
	// Instance type of the RI. For more information, see [Instance type families](https://www.alibabacloud.com/help/doc-detail/25378.html).
	InstanceType pulumi.StringOutput `pulumi:"instanceType"`
	// Field `name` has been deprecated from provider version 1.194.0. New field `reservedInstanceName` instead.
	//
	// Deprecated: Field 'name' has been deprecated from provider version 1.194.0. New field 'reserved_instance_name' instead.
	Name pulumi.StringOutput `pulumi:"name"`
	// Payment type of the RI. Default value: `All Upfront`. Valid values:
	// - `No Upfront`: No upfront payment.
	// - `Partial Upfront`: A portion of upfront payment.
	// - `All Upfront`: Full upfront payment.
	OfferingType pulumi.StringOutput `pulumi:"offeringType"`
	// Details about the lock status of the reserved instance.
	OperationLocks ReservedInstanceOperationLockArrayOutput `pulumi:"operationLocks"`
	// The validity period of the reserved instance. Default value: `1`. **NOTE:** From version 1.183.0, `period` can be set to `5`, when `periodUnit` is `Year`.
	// - When `periodUnit` is `Year`, Valid values: `1`, `3`, `5`.
	// - When `periodUnit` is `Month`, Valid values: `1`.
	Period pulumi.IntPtrOutput `pulumi:"period"`
	// The unit of the validity period of the reserved instance. Valid value: `Month`, `Year`. Default value: `Year`. **NOTE:** From version 1.183.0, `periodUnit` can be set to `Month`.
	PeriodUnit pulumi.StringPtrOutput `pulumi:"periodUnit"`
	// The operating system type of the image used by the instance. Optional values: `Windows`, `Linux`. Default is `Linux`.
	Platform pulumi.StringOutput `pulumi:"platform"`
	// Automatic renewal status. Valid values: `AutoRenewal`,`Normal`.
	RenewalStatus pulumi.StringOutput `pulumi:"renewalStatus"`
	// Name of the RI. The name must be a string of 2 to 128 characters in length and can contain letters, numbers, colons (:), underscores (_), and hyphens. It must start with a letter. It cannot start with http:// or https://.
	ReservedInstanceName pulumi.StringOutput `pulumi:"reservedInstanceName"`
	// Resource group ID.
	ResourceGroupId pulumi.StringOutput `pulumi:"resourceGroupId"`
	// Scope of the RI. Optional values: `Region`: region-level, `Zone`: zone-level. Default is `Region`.
	Scope pulumi.StringOutput `pulumi:"scope"`
	// The time when the reserved instance took effect.
	StartTime pulumi.StringOutput `pulumi:"startTime"`
	// The status of the reserved instance.
	Status pulumi.StringOutput `pulumi:"status"`
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapOutput `pulumi:"tags"`
	// ID of the zone to which the RI belongs. When Scope is set to Zone, this parameter is required. For information about the zone list, see [DescribeZones](https://www.alibabacloud.com/help/doc-detail/25610.html).
	ZoneId pulumi.StringPtrOutput `pulumi:"zoneId"`
}

Provides an Reserved Instance resource.

> **NOTE:** Available in 1.65.0+

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ecs.NewReservedInstance(ctx, "default", &ecs.ReservedInstanceArgs{
			InstanceType:   pulumi.String("ecs.g6.large"),
			InstanceAmount: pulumi.Int(1),
			PeriodUnit:     pulumi.String("Year"),
			OfferingType:   pulumi.String("All Upfront"),
			Description:    pulumi.String("ReservedInstance"),
			ZoneId:         pulumi.String("cn-hangzhou-h"),
			Scope:          pulumi.String("Zone"),
			Period:         pulumi.Int(1),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

reservedInstance can be imported using id, e.g.

```sh

$ pulumi import alicloud:ecs/reservedInstance:ReservedInstance default ecsri-uf6df4xm0h3licit****

```

func GetReservedInstance

func GetReservedInstance(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ReservedInstanceState, opts ...pulumi.ResourceOption) (*ReservedInstance, error)

GetReservedInstance gets an existing ReservedInstance 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 NewReservedInstance

func NewReservedInstance(ctx *pulumi.Context,
	name string, args *ReservedInstanceArgs, opts ...pulumi.ResourceOption) (*ReservedInstance, error)

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

func (*ReservedInstance) ElementType

func (*ReservedInstance) ElementType() reflect.Type

func (*ReservedInstance) ToReservedInstanceOutput

func (i *ReservedInstance) ToReservedInstanceOutput() ReservedInstanceOutput

func (*ReservedInstance) ToReservedInstanceOutputWithContext

func (i *ReservedInstance) ToReservedInstanceOutputWithContext(ctx context.Context) ReservedInstanceOutput

type ReservedInstanceArgs

type ReservedInstanceArgs struct {
	// The auto-renewal term of the reserved instance. This parameter takes effect only when AutoRenew is set to true. Valid values: 1, 12, 36, and 60. Default value when `periodUnit` is set to Month: 1 Default value when `periodUnit` is set to Year: 12
	AutoRenewPeriod pulumi.IntPtrInput
	// Description of the RI. 2 to 256 English or Chinese characters. It cannot start with `http://` or `https://`.
	Description pulumi.StringPtrInput
	// Number of instances allocated to an RI (An RI is a coupon that includes one or more allocated instances.).
	InstanceAmount pulumi.IntPtrInput
	// Instance type of the RI. For more information, see [Instance type families](https://www.alibabacloud.com/help/doc-detail/25378.html).
	InstanceType pulumi.StringInput
	// Field `name` has been deprecated from provider version 1.194.0. New field `reservedInstanceName` instead.
	//
	// Deprecated: Field 'name' has been deprecated from provider version 1.194.0. New field 'reserved_instance_name' instead.
	Name pulumi.StringPtrInput
	// Payment type of the RI. Default value: `All Upfront`. Valid values:
	// - `No Upfront`: No upfront payment.
	// - `Partial Upfront`: A portion of upfront payment.
	// - `All Upfront`: Full upfront payment.
	OfferingType pulumi.StringPtrInput
	// The validity period of the reserved instance. Default value: `1`. **NOTE:** From version 1.183.0, `period` can be set to `5`, when `periodUnit` is `Year`.
	// - When `periodUnit` is `Year`, Valid values: `1`, `3`, `5`.
	// - When `periodUnit` is `Month`, Valid values: `1`.
	Period pulumi.IntPtrInput
	// The unit of the validity period of the reserved instance. Valid value: `Month`, `Year`. Default value: `Year`. **NOTE:** From version 1.183.0, `periodUnit` can be set to `Month`.
	PeriodUnit pulumi.StringPtrInput
	// The operating system type of the image used by the instance. Optional values: `Windows`, `Linux`. Default is `Linux`.
	Platform pulumi.StringPtrInput
	// Automatic renewal status. Valid values: `AutoRenewal`,`Normal`.
	RenewalStatus pulumi.StringPtrInput
	// Name of the RI. The name must be a string of 2 to 128 characters in length and can contain letters, numbers, colons (:), underscores (_), and hyphens. It must start with a letter. It cannot start with http:// or https://.
	ReservedInstanceName pulumi.StringPtrInput
	// Resource group ID.
	ResourceGroupId pulumi.StringPtrInput
	// Scope of the RI. Optional values: `Region`: region-level, `Zone`: zone-level. Default is `Region`.
	Scope pulumi.StringPtrInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapInput
	// ID of the zone to which the RI belongs. When Scope is set to Zone, this parameter is required. For information about the zone list, see [DescribeZones](https://www.alibabacloud.com/help/doc-detail/25610.html).
	ZoneId pulumi.StringPtrInput
}

The set of arguments for constructing a ReservedInstance resource.

func (ReservedInstanceArgs) ElementType

func (ReservedInstanceArgs) ElementType() reflect.Type

type ReservedInstanceArray

type ReservedInstanceArray []ReservedInstanceInput

func (ReservedInstanceArray) ElementType

func (ReservedInstanceArray) ElementType() reflect.Type

func (ReservedInstanceArray) ToReservedInstanceArrayOutput

func (i ReservedInstanceArray) ToReservedInstanceArrayOutput() ReservedInstanceArrayOutput

func (ReservedInstanceArray) ToReservedInstanceArrayOutputWithContext

func (i ReservedInstanceArray) ToReservedInstanceArrayOutputWithContext(ctx context.Context) ReservedInstanceArrayOutput

type ReservedInstanceArrayInput

type ReservedInstanceArrayInput interface {
	pulumi.Input

	ToReservedInstanceArrayOutput() ReservedInstanceArrayOutput
	ToReservedInstanceArrayOutputWithContext(context.Context) ReservedInstanceArrayOutput
}

ReservedInstanceArrayInput is an input type that accepts ReservedInstanceArray and ReservedInstanceArrayOutput values. You can construct a concrete instance of `ReservedInstanceArrayInput` via:

ReservedInstanceArray{ ReservedInstanceArgs{...} }

type ReservedInstanceArrayOutput

type ReservedInstanceArrayOutput struct{ *pulumi.OutputState }

func (ReservedInstanceArrayOutput) ElementType

func (ReservedInstanceArrayOutput) Index

func (ReservedInstanceArrayOutput) ToReservedInstanceArrayOutput

func (o ReservedInstanceArrayOutput) ToReservedInstanceArrayOutput() ReservedInstanceArrayOutput

func (ReservedInstanceArrayOutput) ToReservedInstanceArrayOutputWithContext

func (o ReservedInstanceArrayOutput) ToReservedInstanceArrayOutputWithContext(ctx context.Context) ReservedInstanceArrayOutput

type ReservedInstanceInput

type ReservedInstanceInput interface {
	pulumi.Input

	ToReservedInstanceOutput() ReservedInstanceOutput
	ToReservedInstanceOutputWithContext(ctx context.Context) ReservedInstanceOutput
}

type ReservedInstanceMap

type ReservedInstanceMap map[string]ReservedInstanceInput

func (ReservedInstanceMap) ElementType

func (ReservedInstanceMap) ElementType() reflect.Type

func (ReservedInstanceMap) ToReservedInstanceMapOutput

func (i ReservedInstanceMap) ToReservedInstanceMapOutput() ReservedInstanceMapOutput

func (ReservedInstanceMap) ToReservedInstanceMapOutputWithContext

func (i ReservedInstanceMap) ToReservedInstanceMapOutputWithContext(ctx context.Context) ReservedInstanceMapOutput

type ReservedInstanceMapInput

type ReservedInstanceMapInput interface {
	pulumi.Input

	ToReservedInstanceMapOutput() ReservedInstanceMapOutput
	ToReservedInstanceMapOutputWithContext(context.Context) ReservedInstanceMapOutput
}

ReservedInstanceMapInput is an input type that accepts ReservedInstanceMap and ReservedInstanceMapOutput values. You can construct a concrete instance of `ReservedInstanceMapInput` via:

ReservedInstanceMap{ "key": ReservedInstanceArgs{...} }

type ReservedInstanceMapOutput

type ReservedInstanceMapOutput struct{ *pulumi.OutputState }

func (ReservedInstanceMapOutput) ElementType

func (ReservedInstanceMapOutput) ElementType() reflect.Type

func (ReservedInstanceMapOutput) MapIndex

func (ReservedInstanceMapOutput) ToReservedInstanceMapOutput

func (o ReservedInstanceMapOutput) ToReservedInstanceMapOutput() ReservedInstanceMapOutput

func (ReservedInstanceMapOutput) ToReservedInstanceMapOutputWithContext

func (o ReservedInstanceMapOutput) ToReservedInstanceMapOutputWithContext(ctx context.Context) ReservedInstanceMapOutput

type ReservedInstanceOperationLock

type ReservedInstanceOperationLock struct {
	// The reason why the reserved instance was locked.
	LockReason *string `pulumi:"lockReason"`
}

type ReservedInstanceOperationLockArgs

type ReservedInstanceOperationLockArgs struct {
	// The reason why the reserved instance was locked.
	LockReason pulumi.StringPtrInput `pulumi:"lockReason"`
}

func (ReservedInstanceOperationLockArgs) ElementType

func (ReservedInstanceOperationLockArgs) ToReservedInstanceOperationLockOutput

func (i ReservedInstanceOperationLockArgs) ToReservedInstanceOperationLockOutput() ReservedInstanceOperationLockOutput

func (ReservedInstanceOperationLockArgs) ToReservedInstanceOperationLockOutputWithContext

func (i ReservedInstanceOperationLockArgs) ToReservedInstanceOperationLockOutputWithContext(ctx context.Context) ReservedInstanceOperationLockOutput

type ReservedInstanceOperationLockArray

type ReservedInstanceOperationLockArray []ReservedInstanceOperationLockInput

func (ReservedInstanceOperationLockArray) ElementType

func (ReservedInstanceOperationLockArray) ToReservedInstanceOperationLockArrayOutput

func (i ReservedInstanceOperationLockArray) ToReservedInstanceOperationLockArrayOutput() ReservedInstanceOperationLockArrayOutput

func (ReservedInstanceOperationLockArray) ToReservedInstanceOperationLockArrayOutputWithContext

func (i ReservedInstanceOperationLockArray) ToReservedInstanceOperationLockArrayOutputWithContext(ctx context.Context) ReservedInstanceOperationLockArrayOutput

type ReservedInstanceOperationLockArrayInput

type ReservedInstanceOperationLockArrayInput interface {
	pulumi.Input

	ToReservedInstanceOperationLockArrayOutput() ReservedInstanceOperationLockArrayOutput
	ToReservedInstanceOperationLockArrayOutputWithContext(context.Context) ReservedInstanceOperationLockArrayOutput
}

ReservedInstanceOperationLockArrayInput is an input type that accepts ReservedInstanceOperationLockArray and ReservedInstanceOperationLockArrayOutput values. You can construct a concrete instance of `ReservedInstanceOperationLockArrayInput` via:

ReservedInstanceOperationLockArray{ ReservedInstanceOperationLockArgs{...} }

type ReservedInstanceOperationLockArrayOutput

type ReservedInstanceOperationLockArrayOutput struct{ *pulumi.OutputState }

func (ReservedInstanceOperationLockArrayOutput) ElementType

func (ReservedInstanceOperationLockArrayOutput) Index

func (ReservedInstanceOperationLockArrayOutput) ToReservedInstanceOperationLockArrayOutput

func (o ReservedInstanceOperationLockArrayOutput) ToReservedInstanceOperationLockArrayOutput() ReservedInstanceOperationLockArrayOutput

func (ReservedInstanceOperationLockArrayOutput) ToReservedInstanceOperationLockArrayOutputWithContext

func (o ReservedInstanceOperationLockArrayOutput) ToReservedInstanceOperationLockArrayOutputWithContext(ctx context.Context) ReservedInstanceOperationLockArrayOutput

type ReservedInstanceOperationLockInput

type ReservedInstanceOperationLockInput interface {
	pulumi.Input

	ToReservedInstanceOperationLockOutput() ReservedInstanceOperationLockOutput
	ToReservedInstanceOperationLockOutputWithContext(context.Context) ReservedInstanceOperationLockOutput
}

ReservedInstanceOperationLockInput is an input type that accepts ReservedInstanceOperationLockArgs and ReservedInstanceOperationLockOutput values. You can construct a concrete instance of `ReservedInstanceOperationLockInput` via:

ReservedInstanceOperationLockArgs{...}

type ReservedInstanceOperationLockOutput

type ReservedInstanceOperationLockOutput struct{ *pulumi.OutputState }

func (ReservedInstanceOperationLockOutput) ElementType

func (ReservedInstanceOperationLockOutput) LockReason

The reason why the reserved instance was locked.

func (ReservedInstanceOperationLockOutput) ToReservedInstanceOperationLockOutput

func (o ReservedInstanceOperationLockOutput) ToReservedInstanceOperationLockOutput() ReservedInstanceOperationLockOutput

func (ReservedInstanceOperationLockOutput) ToReservedInstanceOperationLockOutputWithContext

func (o ReservedInstanceOperationLockOutput) ToReservedInstanceOperationLockOutputWithContext(ctx context.Context) ReservedInstanceOperationLockOutput

type ReservedInstanceOutput

type ReservedInstanceOutput struct{ *pulumi.OutputState }

func (ReservedInstanceOutput) AllocationStatus

func (o ReservedInstanceOutput) AllocationStatus() pulumi.StringOutput

Indicates the sharing status of the reserved instance when the AllocationType parameter is set to Shared. Valid values: `allocated`: The reserved instance is allocated to another account. `beAllocated`: The reserved instance is allocated by another account.

func (ReservedInstanceOutput) AutoRenewPeriod

func (o ReservedInstanceOutput) AutoRenewPeriod() pulumi.IntOutput

The auto-renewal term of the reserved instance. This parameter takes effect only when AutoRenew is set to true. Valid values: 1, 12, 36, and 60. Default value when `periodUnit` is set to Month: 1 Default value when `periodUnit` is set to Year: 12

func (ReservedInstanceOutput) CreateTime

The time when the reserved instance was created.

func (ReservedInstanceOutput) Description

Description of the RI. 2 to 256 English or Chinese characters. It cannot start with `http://` or `https://`.

func (ReservedInstanceOutput) ElementType

func (ReservedInstanceOutput) ElementType() reflect.Type

func (ReservedInstanceOutput) ExpiredTime

func (o ReservedInstanceOutput) ExpiredTime() pulumi.StringOutput

The time when the reserved instance expires.

func (ReservedInstanceOutput) InstanceAmount

func (o ReservedInstanceOutput) InstanceAmount() pulumi.IntOutput

Number of instances allocated to an RI (An RI is a coupon that includes one or more allocated instances.).

func (ReservedInstanceOutput) InstanceType

func (o ReservedInstanceOutput) InstanceType() pulumi.StringOutput

Instance type of the RI. For more information, see [Instance type families](https://www.alibabacloud.com/help/doc-detail/25378.html).

func (ReservedInstanceOutput) Name deprecated

Field `name` has been deprecated from provider version 1.194.0. New field `reservedInstanceName` instead.

Deprecated: Field 'name' has been deprecated from provider version 1.194.0. New field 'reserved_instance_name' instead.

func (ReservedInstanceOutput) OfferingType

func (o ReservedInstanceOutput) OfferingType() pulumi.StringOutput

Payment type of the RI. Default value: `All Upfront`. Valid values: - `No Upfront`: No upfront payment. - `Partial Upfront`: A portion of upfront payment. - `All Upfront`: Full upfront payment.

func (ReservedInstanceOutput) OperationLocks

Details about the lock status of the reserved instance.

func (ReservedInstanceOutput) Period

The validity period of the reserved instance. Default value: `1`. **NOTE:** From version 1.183.0, `period` can be set to `5`, when `periodUnit` is `Year`. - When `periodUnit` is `Year`, Valid values: `1`, `3`, `5`. - When `periodUnit` is `Month`, Valid values: `1`.

func (ReservedInstanceOutput) PeriodUnit

The unit of the validity period of the reserved instance. Valid value: `Month`, `Year`. Default value: `Year`. **NOTE:** From version 1.183.0, `periodUnit` can be set to `Month`.

func (ReservedInstanceOutput) Platform

The operating system type of the image used by the instance. Optional values: `Windows`, `Linux`. Default is `Linux`.

func (ReservedInstanceOutput) RenewalStatus

func (o ReservedInstanceOutput) RenewalStatus() pulumi.StringOutput

Automatic renewal status. Valid values: `AutoRenewal`,`Normal`.

func (ReservedInstanceOutput) ReservedInstanceName

func (o ReservedInstanceOutput) ReservedInstanceName() pulumi.StringOutput

Name of the RI. The name must be a string of 2 to 128 characters in length and can contain letters, numbers, colons (:), underscores (_), and hyphens. It must start with a letter. It cannot start with http:// or https://.

func (ReservedInstanceOutput) ResourceGroupId

func (o ReservedInstanceOutput) ResourceGroupId() pulumi.StringOutput

Resource group ID.

func (ReservedInstanceOutput) Scope

Scope of the RI. Optional values: `Region`: region-level, `Zone`: zone-level. Default is `Region`.

func (ReservedInstanceOutput) StartTime

The time when the reserved instance took effect.

func (ReservedInstanceOutput) Status

The status of the reserved instance.

func (ReservedInstanceOutput) Tags

A mapping of tags to assign to the resource.

func (ReservedInstanceOutput) ToReservedInstanceOutput

func (o ReservedInstanceOutput) ToReservedInstanceOutput() ReservedInstanceOutput

func (ReservedInstanceOutput) ToReservedInstanceOutputWithContext

func (o ReservedInstanceOutput) ToReservedInstanceOutputWithContext(ctx context.Context) ReservedInstanceOutput

func (ReservedInstanceOutput) ZoneId

ID of the zone to which the RI belongs. When Scope is set to Zone, this parameter is required. For information about the zone list, see [DescribeZones](https://www.alibabacloud.com/help/doc-detail/25610.html).

type ReservedInstanceState

type ReservedInstanceState struct {
	// Indicates the sharing status of the reserved instance when the AllocationType parameter is set to Shared. Valid values: `allocated`: The reserved instance is allocated to another account. `beAllocated`: The reserved instance is allocated by another account.
	AllocationStatus pulumi.StringPtrInput
	// The auto-renewal term of the reserved instance. This parameter takes effect only when AutoRenew is set to true. Valid values: 1, 12, 36, and 60. Default value when `periodUnit` is set to Month: 1 Default value when `periodUnit` is set to Year: 12
	AutoRenewPeriod pulumi.IntPtrInput
	// The time when the reserved instance was created.
	CreateTime pulumi.StringPtrInput
	// Description of the RI. 2 to 256 English or Chinese characters. It cannot start with `http://` or `https://`.
	Description pulumi.StringPtrInput
	// The time when the reserved instance expires.
	ExpiredTime pulumi.StringPtrInput
	// Number of instances allocated to an RI (An RI is a coupon that includes one or more allocated instances.).
	InstanceAmount pulumi.IntPtrInput
	// Instance type of the RI. For more information, see [Instance type families](https://www.alibabacloud.com/help/doc-detail/25378.html).
	InstanceType pulumi.StringPtrInput
	// Field `name` has been deprecated from provider version 1.194.0. New field `reservedInstanceName` instead.
	//
	// Deprecated: Field 'name' has been deprecated from provider version 1.194.0. New field 'reserved_instance_name' instead.
	Name pulumi.StringPtrInput
	// Payment type of the RI. Default value: `All Upfront`. Valid values:
	// - `No Upfront`: No upfront payment.
	// - `Partial Upfront`: A portion of upfront payment.
	// - `All Upfront`: Full upfront payment.
	OfferingType pulumi.StringPtrInput
	// Details about the lock status of the reserved instance.
	OperationLocks ReservedInstanceOperationLockArrayInput
	// The validity period of the reserved instance. Default value: `1`. **NOTE:** From version 1.183.0, `period` can be set to `5`, when `periodUnit` is `Year`.
	// - When `periodUnit` is `Year`, Valid values: `1`, `3`, `5`.
	// - When `periodUnit` is `Month`, Valid values: `1`.
	Period pulumi.IntPtrInput
	// The unit of the validity period of the reserved instance. Valid value: `Month`, `Year`. Default value: `Year`. **NOTE:** From version 1.183.0, `periodUnit` can be set to `Month`.
	PeriodUnit pulumi.StringPtrInput
	// The operating system type of the image used by the instance. Optional values: `Windows`, `Linux`. Default is `Linux`.
	Platform pulumi.StringPtrInput
	// Automatic renewal status. Valid values: `AutoRenewal`,`Normal`.
	RenewalStatus pulumi.StringPtrInput
	// Name of the RI. The name must be a string of 2 to 128 characters in length and can contain letters, numbers, colons (:), underscores (_), and hyphens. It must start with a letter. It cannot start with http:// or https://.
	ReservedInstanceName pulumi.StringPtrInput
	// Resource group ID.
	ResourceGroupId pulumi.StringPtrInput
	// Scope of the RI. Optional values: `Region`: region-level, `Zone`: zone-level. Default is `Region`.
	Scope pulumi.StringPtrInput
	// The time when the reserved instance took effect.
	StartTime pulumi.StringPtrInput
	// The status of the reserved instance.
	Status pulumi.StringPtrInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapInput
	// ID of the zone to which the RI belongs. When Scope is set to Zone, this parameter is required. For information about the zone list, see [DescribeZones](https://www.alibabacloud.com/help/doc-detail/25610.html).
	ZoneId pulumi.StringPtrInput
}

func (ReservedInstanceState) ElementType

func (ReservedInstanceState) ElementType() reflect.Type

type SecurityGroup

type SecurityGroup struct {
	pulumi.CustomResourceState

	// The security group description. Defaults to null.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// Field 'inner_access' has been deprecated from provider version 1.55.3. Use 'inner_access_policy' replaces it.
	//
	// Deprecated: Field 'inner_access' has been deprecated from provider version 1.55.3. Use 'inner_access_policy' replaces it.
	InnerAccess pulumi.BoolOutput `pulumi:"innerAccess"`
	// Whether to allow both machines to access each other on all ports in the same security group. Valid values: ["Accept", "Drop"]
	InnerAccessPolicy pulumi.StringOutput `pulumi:"innerAccessPolicy"`
	// The name of the security group. Defaults to null.
	Name pulumi.StringOutput `pulumi:"name"`
	// The Id of resource group which the securityGroup belongs.
	ResourceGroupId pulumi.StringPtrOutput `pulumi:"resourceGroupId"`
	// The type of the security group. Valid values:
	// `normal`: basic security group.
	// `enterprise`: advanced security group For more information.
	SecurityGroupType pulumi.StringPtrOutput `pulumi:"securityGroupType"`
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapOutput `pulumi:"tags"`
	// The VPC ID.
	VpcId pulumi.StringPtrOutput `pulumi:"vpcId"`
}

## Import

Security Group can be imported using the id, e.g.

```sh

$ pulumi import alicloud:ecs/securityGroup:SecurityGroup example sg-abc123456

```

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 {
	// The security group description. Defaults to null.
	Description pulumi.StringPtrInput
	// Field 'inner_access' has been deprecated from provider version 1.55.3. Use 'inner_access_policy' replaces it.
	//
	// Deprecated: Field 'inner_access' has been deprecated from provider version 1.55.3. Use 'inner_access_policy' replaces it.
	InnerAccess pulumi.BoolPtrInput
	// Whether to allow both machines to access each other on all ports in the same security group. Valid values: ["Accept", "Drop"]
	InnerAccessPolicy pulumi.StringPtrInput
	// The name of the security group. Defaults to null.
	Name pulumi.StringPtrInput
	// The Id of resource group which the securityGroup belongs.
	ResourceGroupId pulumi.StringPtrInput
	// The type of the security group. Valid values:
	// `normal`: basic security group.
	// `enterprise`: advanced security group For more information.
	SecurityGroupType pulumi.StringPtrInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapInput
	// The VPC ID.
	VpcId 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

The security group description. Defaults to null.

func (SecurityGroupOutput) ElementType

func (SecurityGroupOutput) ElementType() reflect.Type

func (SecurityGroupOutput) InnerAccess deprecated

func (o SecurityGroupOutput) InnerAccess() pulumi.BoolOutput

Field 'inner_access' has been deprecated from provider version 1.55.3. Use 'inner_access_policy' replaces it.

Deprecated: Field 'inner_access' has been deprecated from provider version 1.55.3. Use 'inner_access_policy' replaces it.

func (SecurityGroupOutput) InnerAccessPolicy

func (o SecurityGroupOutput) InnerAccessPolicy() pulumi.StringOutput

Whether to allow both machines to access each other on all ports in the same security group. Valid values: ["Accept", "Drop"]

func (SecurityGroupOutput) Name

The name of the security group. Defaults to null.

func (SecurityGroupOutput) ResourceGroupId

func (o SecurityGroupOutput) ResourceGroupId() pulumi.StringPtrOutput

The Id of resource group which the securityGroup belongs.

func (SecurityGroupOutput) SecurityGroupType

func (o SecurityGroupOutput) SecurityGroupType() pulumi.StringPtrOutput

The type of the security group. Valid values: `normal`: basic security group. `enterprise`: advanced security group For more information.

func (SecurityGroupOutput) Tags

A mapping of tags to assign to the resource.

func (SecurityGroupOutput) ToSecurityGroupOutput

func (o SecurityGroupOutput) ToSecurityGroupOutput() SecurityGroupOutput

func (SecurityGroupOutput) ToSecurityGroupOutputWithContext

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

func (SecurityGroupOutput) VpcId

The VPC ID.

type SecurityGroupRule

type SecurityGroupRule struct {
	pulumi.CustomResourceState

	// The target IP address range. The default value is 0.0.0.0/0 (which means no restriction will be applied). Other supported formats include 10.159.6.18/12. Only IPv4 is supported.
	CidrIp pulumi.StringPtrOutput `pulumi:"cidrIp"`
	// The description of the security group rule. The description can be up to 1 to 512 characters in length. Defaults to null.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// The protocol. Can be `tcp`, `udp`, `icmp`, `gre` or `all`.
	IpProtocol pulumi.StringOutput `pulumi:"ipProtocol"`
	// Source IPv6 CIDR address block that requires access. Supports IP address ranges in CIDR format and IPv6 format. **NOTE:** This parameter cannot be set at the same time as the `cidrIp` parameter.
	Ipv6CidrIp pulumi.StringPtrOutput `pulumi:"ipv6CidrIp"`
	// Network type, can be either `internet` or `intranet`, the default value is `internet`.
	NicType pulumi.StringOutput `pulumi:"nicType"`
	// Authorization policy, can be either `accept` or `drop`, the default value is `accept`.
	Policy pulumi.StringPtrOutput `pulumi:"policy"`
	// The range of port numbers relevant to the IP protocol. Default to "-1/-1". When the protocol is tcp or udp, each side port number range from 1 to 65535 and '-1/-1' will be invalid.
	// For example, `1/200` means that the range of the port numbers is 1-200. Other protocols' 'port_range' can only be "-1/-1", and other values will be invalid.
	PortRange pulumi.StringPtrOutput `pulumi:"portRange"`
	// The ID of the source/destination prefix list to which you want to control access. **NOTE:** If you specify `cidrIp`,`sourceSecurityGroupId`,`ipv6CidrIp` parameter, this parameter is ignored.
	PrefixListId pulumi.StringOutput `pulumi:"prefixListId"`
	// Authorization policy priority, with parameter values: `1-100`, default value: 1.
	Priority pulumi.IntPtrOutput `pulumi:"priority"`
	// The security group to apply this rule to.
	SecurityGroupId pulumi.StringOutput `pulumi:"securityGroupId"`
	// The Alibaba Cloud user account Id of the target security group when security groups are authorized across accounts.  This parameter is invalid if `cidrIp` has already been set.
	SourceGroupOwnerAccount pulumi.StringPtrOutput `pulumi:"sourceGroupOwnerAccount"`
	// The target security group ID within the same region. If this field is specified, the `nicType` can only select `intranet`.
	SourceSecurityGroupId pulumi.StringPtrOutput `pulumi:"sourceSecurityGroupId"`
	// The type of rule being created. Valid options are `ingress` (inbound) or `egress` (outbound).
	Type pulumi.StringOutput `pulumi:"type"`
}

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 {
	// The target IP address range. The default value is 0.0.0.0/0 (which means no restriction will be applied). Other supported formats include 10.159.6.18/12. Only IPv4 is supported.
	CidrIp pulumi.StringPtrInput
	// The description of the security group rule. The description can be up to 1 to 512 characters in length. Defaults to null.
	Description pulumi.StringPtrInput
	// The protocol. Can be `tcp`, `udp`, `icmp`, `gre` or `all`.
	IpProtocol pulumi.StringInput
	// Source IPv6 CIDR address block that requires access. Supports IP address ranges in CIDR format and IPv6 format. **NOTE:** This parameter cannot be set at the same time as the `cidrIp` parameter.
	Ipv6CidrIp pulumi.StringPtrInput
	// Network type, can be either `internet` or `intranet`, the default value is `internet`.
	NicType pulumi.StringPtrInput
	// Authorization policy, can be either `accept` or `drop`, the default value is `accept`.
	Policy pulumi.StringPtrInput
	// The range of port numbers relevant to the IP protocol. Default to "-1/-1". When the protocol is tcp or udp, each side port number range from 1 to 65535 and '-1/-1' will be invalid.
	// For example, `1/200` means that the range of the port numbers is 1-200. Other protocols' 'port_range' can only be "-1/-1", and other values will be invalid.
	PortRange pulumi.StringPtrInput
	// The ID of the source/destination prefix list to which you want to control access. **NOTE:** If you specify `cidrIp`,`sourceSecurityGroupId`,`ipv6CidrIp` parameter, this parameter is ignored.
	PrefixListId pulumi.StringPtrInput
	// Authorization policy priority, with parameter values: `1-100`, default value: 1.
	Priority pulumi.IntPtrInput
	// The security group to apply this rule to.
	SecurityGroupId pulumi.StringInput
	// The Alibaba Cloud user account Id of the target security group when security groups are authorized across accounts.  This parameter is invalid if `cidrIp` has already been set.
	SourceGroupOwnerAccount pulumi.StringPtrInput
	// The target security group ID within the same region. If this field is specified, the `nicType` can only select `intranet`.
	SourceSecurityGroupId pulumi.StringPtrInput
	// The type of rule being created. Valid options are `ingress` (inbound) or `egress` (outbound).
	Type 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) CidrIp

The target IP address range. The default value is 0.0.0.0/0 (which means no restriction will be applied). Other supported formats include 10.159.6.18/12. Only IPv4 is supported.

func (SecurityGroupRuleOutput) Description

The description of the security group rule. The description can be up to 1 to 512 characters in length. Defaults to null.

func (SecurityGroupRuleOutput) ElementType

func (SecurityGroupRuleOutput) ElementType() reflect.Type

func (SecurityGroupRuleOutput) IpProtocol

The protocol. Can be `tcp`, `udp`, `icmp`, `gre` or `all`.

func (SecurityGroupRuleOutput) Ipv6CidrIp

Source IPv6 CIDR address block that requires access. Supports IP address ranges in CIDR format and IPv6 format. **NOTE:** This parameter cannot be set at the same time as the `cidrIp` parameter.

func (SecurityGroupRuleOutput) NicType

Network type, can be either `internet` or `intranet`, the default value is `internet`.

func (SecurityGroupRuleOutput) Policy

Authorization policy, can be either `accept` or `drop`, the default value is `accept`.

func (SecurityGroupRuleOutput) PortRange

The range of port numbers relevant to the IP protocol. Default to "-1/-1". When the protocol is tcp or udp, each side port number range from 1 to 65535 and '-1/-1' will be invalid. For example, `1/200` means that the range of the port numbers is 1-200. Other protocols' 'port_range' can only be "-1/-1", and other values will be invalid.

func (SecurityGroupRuleOutput) PrefixListId

func (o SecurityGroupRuleOutput) PrefixListId() pulumi.StringOutput

The ID of the source/destination prefix list to which you want to control access. **NOTE:** If you specify `cidrIp`,`sourceSecurityGroupId`,`ipv6CidrIp` parameter, this parameter is ignored.

func (SecurityGroupRuleOutput) Priority

Authorization policy priority, with parameter values: `1-100`, default value: 1.

func (SecurityGroupRuleOutput) SecurityGroupId

func (o SecurityGroupRuleOutput) SecurityGroupId() pulumi.StringOutput

The security group to apply this rule to.

func (SecurityGroupRuleOutput) SourceGroupOwnerAccount

func (o SecurityGroupRuleOutput) SourceGroupOwnerAccount() pulumi.StringPtrOutput

The Alibaba Cloud user account Id of the target security group when security groups are authorized across accounts. This parameter is invalid if `cidrIp` has already been set.

func (SecurityGroupRuleOutput) SourceSecurityGroupId

func (o SecurityGroupRuleOutput) SourceSecurityGroupId() pulumi.StringPtrOutput

The target security group ID within the same region. If this field is specified, the `nicType` can only select `intranet`.

func (SecurityGroupRuleOutput) ToSecurityGroupRuleOutput

func (o SecurityGroupRuleOutput) ToSecurityGroupRuleOutput() SecurityGroupRuleOutput

func (SecurityGroupRuleOutput) ToSecurityGroupRuleOutputWithContext

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

func (SecurityGroupRuleOutput) Type

The type of rule being created. Valid options are `ingress` (inbound) or `egress` (outbound).

type SecurityGroupRuleState

type SecurityGroupRuleState struct {
	// The target IP address range. The default value is 0.0.0.0/0 (which means no restriction will be applied). Other supported formats include 10.159.6.18/12. Only IPv4 is supported.
	CidrIp pulumi.StringPtrInput
	// The description of the security group rule. The description can be up to 1 to 512 characters in length. Defaults to null.
	Description pulumi.StringPtrInput
	// The protocol. Can be `tcp`, `udp`, `icmp`, `gre` or `all`.
	IpProtocol pulumi.StringPtrInput
	// Source IPv6 CIDR address block that requires access. Supports IP address ranges in CIDR format and IPv6 format. **NOTE:** This parameter cannot be set at the same time as the `cidrIp` parameter.
	Ipv6CidrIp pulumi.StringPtrInput
	// Network type, can be either `internet` or `intranet`, the default value is `internet`.
	NicType pulumi.StringPtrInput
	// Authorization policy, can be either `accept` or `drop`, the default value is `accept`.
	Policy pulumi.StringPtrInput
	// The range of port numbers relevant to the IP protocol. Default to "-1/-1". When the protocol is tcp or udp, each side port number range from 1 to 65535 and '-1/-1' will be invalid.
	// For example, `1/200` means that the range of the port numbers is 1-200. Other protocols' 'port_range' can only be "-1/-1", and other values will be invalid.
	PortRange pulumi.StringPtrInput
	// The ID of the source/destination prefix list to which you want to control access. **NOTE:** If you specify `cidrIp`,`sourceSecurityGroupId`,`ipv6CidrIp` parameter, this parameter is ignored.
	PrefixListId pulumi.StringPtrInput
	// Authorization policy priority, with parameter values: `1-100`, default value: 1.
	Priority pulumi.IntPtrInput
	// The security group to apply this rule to.
	SecurityGroupId pulumi.StringPtrInput
	// The Alibaba Cloud user account Id of the target security group when security groups are authorized across accounts.  This parameter is invalid if `cidrIp` has already been set.
	SourceGroupOwnerAccount pulumi.StringPtrInput
	// The target security group ID within the same region. If this field is specified, the `nicType` can only select `intranet`.
	SourceSecurityGroupId pulumi.StringPtrInput
	// The type of rule being created. Valid options are `ingress` (inbound) or `egress` (outbound).
	Type pulumi.StringPtrInput
}

func (SecurityGroupRuleState) ElementType

func (SecurityGroupRuleState) ElementType() reflect.Type

type SecurityGroupState

type SecurityGroupState struct {
	// The security group description. Defaults to null.
	Description pulumi.StringPtrInput
	// Field 'inner_access' has been deprecated from provider version 1.55.3. Use 'inner_access_policy' replaces it.
	//
	// Deprecated: Field 'inner_access' has been deprecated from provider version 1.55.3. Use 'inner_access_policy' replaces it.
	InnerAccess pulumi.BoolPtrInput
	// Whether to allow both machines to access each other on all ports in the same security group. Valid values: ["Accept", "Drop"]
	InnerAccessPolicy pulumi.StringPtrInput
	// The name of the security group. Defaults to null.
	Name pulumi.StringPtrInput
	// The Id of resource group which the securityGroup belongs.
	ResourceGroupId pulumi.StringPtrInput
	// The type of the security group. Valid values:
	// `normal`: basic security group.
	// `enterprise`: advanced security group For more information.
	SecurityGroupType pulumi.StringPtrInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapInput
	// The VPC ID.
	VpcId pulumi.StringPtrInput
}

func (SecurityGroupState) ElementType

func (SecurityGroupState) ElementType() reflect.Type

type Snapshot

type Snapshot struct {
	pulumi.CustomResourceState

	Category pulumi.StringPtrOutput `pulumi:"category"`
	// Description of the snapshot. This description can have a string of 2 to 256 characters, It cannot begin with http:// or https://. Default value is null.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// The source disk ID.
	DiskId                     pulumi.StringOutput  `pulumi:"diskId"`
	Force                      pulumi.BoolPtrOutput `pulumi:"force"`
	InstantAccess              pulumi.BoolPtrOutput `pulumi:"instantAccess"`
	InstantAccessRetentionDays pulumi.IntPtrOutput  `pulumi:"instantAccessRetentionDays"`
	// The name of the snapshot to be created. The name must be 2 to 128 characters in length. It must start with a letter and cannot start with http:// or https://. It can contain letters, digits, colons (:), underscores (_), and hyphens (-).
	// It cannot start with auto, because snapshot names starting with auto are recognized as automatic snapshots.
	//
	// Deprecated: Field 'name' has been deprecated from provider version 1.120.0. New field 'snapshot_name' instead.
	Name pulumi.StringOutput `pulumi:"name"`
	// The ID of the resource group.
	ResourceGroupId pulumi.StringPtrOutput `pulumi:"resourceGroupId"`
	RetentionDays   pulumi.IntPtrOutput    `pulumi:"retentionDays"`
	SnapshotName    pulumi.StringOutput    `pulumi:"snapshotName"`
	Status          pulumi.StringOutput    `pulumi:"status"`
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapOutput `pulumi:"tags"`
}

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ecs.NewSnapshot(ctx, "snapshot", &ecs.SnapshotArgs{
			DiskId:      pulumi.Any(alicloud_disk_attachment.Instance - attachment.Disk_id),
			Description: pulumi.String("this snapshot is created for testing"),
			Tags: pulumi.AnyMap{
				"version": pulumi.Any("1.2"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

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

```sh

$ pulumi import alicloud:ecs/snapshot:Snapshot snapshot s-abc1234567890000

```

func GetSnapshot

func GetSnapshot(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *SnapshotState, opts ...pulumi.ResourceOption) (*Snapshot, error)

GetSnapshot gets an existing Snapshot 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 NewSnapshot

func NewSnapshot(ctx *pulumi.Context,
	name string, args *SnapshotArgs, opts ...pulumi.ResourceOption) (*Snapshot, error)

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

func (*Snapshot) ElementType

func (*Snapshot) ElementType() reflect.Type

func (*Snapshot) ToSnapshotOutput

func (i *Snapshot) ToSnapshotOutput() SnapshotOutput

func (*Snapshot) ToSnapshotOutputWithContext

func (i *Snapshot) ToSnapshotOutputWithContext(ctx context.Context) SnapshotOutput

type SnapshotArgs

type SnapshotArgs struct {
	Category pulumi.StringPtrInput
	// Description of the snapshot. This description can have a string of 2 to 256 characters, It cannot begin with http:// or https://. Default value is null.
	Description pulumi.StringPtrInput
	// The source disk ID.
	DiskId                     pulumi.StringInput
	Force                      pulumi.BoolPtrInput
	InstantAccess              pulumi.BoolPtrInput
	InstantAccessRetentionDays pulumi.IntPtrInput
	// The name of the snapshot to be created. The name must be 2 to 128 characters in length. It must start with a letter and cannot start with http:// or https://. It can contain letters, digits, colons (:), underscores (_), and hyphens (-).
	// It cannot start with auto, because snapshot names starting with auto are recognized as automatic snapshots.
	//
	// Deprecated: Field 'name' has been deprecated from provider version 1.120.0. New field 'snapshot_name' instead.
	Name pulumi.StringPtrInput
	// The ID of the resource group.
	ResourceGroupId pulumi.StringPtrInput
	RetentionDays   pulumi.IntPtrInput
	SnapshotName    pulumi.StringPtrInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapInput
}

The set of arguments for constructing a Snapshot resource.

func (SnapshotArgs) ElementType

func (SnapshotArgs) ElementType() reflect.Type

type SnapshotArray

type SnapshotArray []SnapshotInput

func (SnapshotArray) ElementType

func (SnapshotArray) ElementType() reflect.Type

func (SnapshotArray) ToSnapshotArrayOutput

func (i SnapshotArray) ToSnapshotArrayOutput() SnapshotArrayOutput

func (SnapshotArray) ToSnapshotArrayOutputWithContext

func (i SnapshotArray) ToSnapshotArrayOutputWithContext(ctx context.Context) SnapshotArrayOutput

type SnapshotArrayInput

type SnapshotArrayInput interface {
	pulumi.Input

	ToSnapshotArrayOutput() SnapshotArrayOutput
	ToSnapshotArrayOutputWithContext(context.Context) SnapshotArrayOutput
}

SnapshotArrayInput is an input type that accepts SnapshotArray and SnapshotArrayOutput values. You can construct a concrete instance of `SnapshotArrayInput` via:

SnapshotArray{ SnapshotArgs{...} }

type SnapshotArrayOutput

type SnapshotArrayOutput struct{ *pulumi.OutputState }

func (SnapshotArrayOutput) ElementType

func (SnapshotArrayOutput) ElementType() reflect.Type

func (SnapshotArrayOutput) Index

func (SnapshotArrayOutput) ToSnapshotArrayOutput

func (o SnapshotArrayOutput) ToSnapshotArrayOutput() SnapshotArrayOutput

func (SnapshotArrayOutput) ToSnapshotArrayOutputWithContext

func (o SnapshotArrayOutput) ToSnapshotArrayOutputWithContext(ctx context.Context) SnapshotArrayOutput

type SnapshotInput

type SnapshotInput interface {
	pulumi.Input

	ToSnapshotOutput() SnapshotOutput
	ToSnapshotOutputWithContext(ctx context.Context) SnapshotOutput
}

type SnapshotMap

type SnapshotMap map[string]SnapshotInput

func (SnapshotMap) ElementType

func (SnapshotMap) ElementType() reflect.Type

func (SnapshotMap) ToSnapshotMapOutput

func (i SnapshotMap) ToSnapshotMapOutput() SnapshotMapOutput

func (SnapshotMap) ToSnapshotMapOutputWithContext

func (i SnapshotMap) ToSnapshotMapOutputWithContext(ctx context.Context) SnapshotMapOutput

type SnapshotMapInput

type SnapshotMapInput interface {
	pulumi.Input

	ToSnapshotMapOutput() SnapshotMapOutput
	ToSnapshotMapOutputWithContext(context.Context) SnapshotMapOutput
}

SnapshotMapInput is an input type that accepts SnapshotMap and SnapshotMapOutput values. You can construct a concrete instance of `SnapshotMapInput` via:

SnapshotMap{ "key": SnapshotArgs{...} }

type SnapshotMapOutput

type SnapshotMapOutput struct{ *pulumi.OutputState }

func (SnapshotMapOutput) ElementType

func (SnapshotMapOutput) ElementType() reflect.Type

func (SnapshotMapOutput) MapIndex

func (SnapshotMapOutput) ToSnapshotMapOutput

func (o SnapshotMapOutput) ToSnapshotMapOutput() SnapshotMapOutput

func (SnapshotMapOutput) ToSnapshotMapOutputWithContext

func (o SnapshotMapOutput) ToSnapshotMapOutputWithContext(ctx context.Context) SnapshotMapOutput

type SnapshotOutput

type SnapshotOutput struct{ *pulumi.OutputState }

func (SnapshotOutput) Category

func (o SnapshotOutput) Category() pulumi.StringPtrOutput

func (SnapshotOutput) Description

func (o SnapshotOutput) Description() pulumi.StringPtrOutput

Description of the snapshot. This description can have a string of 2 to 256 characters, It cannot begin with http:// or https://. Default value is null.

func (SnapshotOutput) DiskId

func (o SnapshotOutput) DiskId() pulumi.StringOutput

The source disk ID.

func (SnapshotOutput) ElementType

func (SnapshotOutput) ElementType() reflect.Type

func (SnapshotOutput) Force

func (SnapshotOutput) InstantAccess

func (o SnapshotOutput) InstantAccess() pulumi.BoolPtrOutput

func (SnapshotOutput) InstantAccessRetentionDays

func (o SnapshotOutput) InstantAccessRetentionDays() pulumi.IntPtrOutput

func (SnapshotOutput) Name deprecated

The name of the snapshot to be created. The name must be 2 to 128 characters in length. It must start with a letter and cannot start with http:// or https://. It can contain letters, digits, colons (:), underscores (_), and hyphens (-). It cannot start with auto, because snapshot names starting with auto are recognized as automatic snapshots.

Deprecated: Field 'name' has been deprecated from provider version 1.120.0. New field 'snapshot_name' instead.

func (SnapshotOutput) ResourceGroupId

func (o SnapshotOutput) ResourceGroupId() pulumi.StringPtrOutput

The ID of the resource group.

func (SnapshotOutput) RetentionDays

func (o SnapshotOutput) RetentionDays() pulumi.IntPtrOutput

func (SnapshotOutput) SnapshotName

func (o SnapshotOutput) SnapshotName() pulumi.StringOutput

func (SnapshotOutput) Status

func (o SnapshotOutput) Status() pulumi.StringOutput

func (SnapshotOutput) Tags

func (o SnapshotOutput) Tags() pulumi.MapOutput

A mapping of tags to assign to the resource.

func (SnapshotOutput) ToSnapshotOutput

func (o SnapshotOutput) ToSnapshotOutput() SnapshotOutput

func (SnapshotOutput) ToSnapshotOutputWithContext

func (o SnapshotOutput) ToSnapshotOutputWithContext(ctx context.Context) SnapshotOutput

type SnapshotPolicy

type SnapshotPolicy struct {
	pulumi.CustomResourceState

	CopiedSnapshotsRetentionDays pulumi.IntPtrOutput  `pulumi:"copiedSnapshotsRetentionDays"`
	EnableCrossRegionCopy        pulumi.BoolPtrOutput `pulumi:"enableCrossRegionCopy"`
	// The snapshot policy name.
	Name pulumi.StringOutput `pulumi:"name"`
	// The automatic snapshot repetition dates. The unit of measurement is day and the repeating cycle is a week. Value range: [1, 7], which represents days starting from Monday to Sunday, for example 1  indicates Monday. When you want to schedule multiple automatic snapshot tasks for a disk in a week, you can set the RepeatWeekdays to an array.
	// - A maximum of seven time points can be selected.
	// - The format is  an JSON array of ["1", "2", … "7"]  and the time points are separated by commas (,).
	RepeatWeekdays pulumi.StringArrayOutput `pulumi:"repeatWeekdays"`
	// The snapshot retention time, and the unit of measurement is day. Optional values:
	// - -1: The automatic snapshots are retained permanently.
	// - [1, 65536]: The number of days retained.
	RetentionDays     pulumi.IntOutput         `pulumi:"retentionDays"`
	Status            pulumi.StringOutput      `pulumi:"status"`
	Tags              pulumi.MapOutput         `pulumi:"tags"`
	TargetCopyRegions pulumi.StringArrayOutput `pulumi:"targetCopyRegions"`
	// The automatic snapshot creation schedule, and the unit of measurement is hour. Value range: [0, 23], which represents from 00:00 to 24:00,  for example 1 indicates 01:00. When you want to schedule multiple automatic snapshot tasks for a disk in a day, you can set the TimePoints to an array.
	// - A maximum of 24 time points can be selected.
	// - The format is  an JSON array of ["0", "1", … "23"] and the time points are separated by commas (,).
	TimePoints pulumi.StringArrayOutput `pulumi:"timePoints"`
}

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ecs.NewSnapshotPolicy(ctx, "sp", &ecs.SnapshotPolicyArgs{
			RepeatWeekdays: pulumi.StringArray{
				pulumi.String("1"),
				pulumi.String("2"),
				pulumi.String("3"),
			},
			RetentionDays: -1,
			TimePoints: pulumi.StringArray{
				pulumi.String("1"),
				pulumi.String("22"),
				pulumi.String("23"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

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

```sh

$ pulumi import alicloud:ecs/snapshotPolicy:SnapshotPolicy snapshot sp-abc1234567890000

```

func GetSnapshotPolicy

func GetSnapshotPolicy(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *SnapshotPolicyState, opts ...pulumi.ResourceOption) (*SnapshotPolicy, error)

GetSnapshotPolicy gets an existing SnapshotPolicy 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 NewSnapshotPolicy

func NewSnapshotPolicy(ctx *pulumi.Context,
	name string, args *SnapshotPolicyArgs, opts ...pulumi.ResourceOption) (*SnapshotPolicy, error)

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

func (*SnapshotPolicy) ElementType

func (*SnapshotPolicy) ElementType() reflect.Type

func (*SnapshotPolicy) ToSnapshotPolicyOutput

func (i *SnapshotPolicy) ToSnapshotPolicyOutput() SnapshotPolicyOutput

func (*SnapshotPolicy) ToSnapshotPolicyOutputWithContext

func (i *SnapshotPolicy) ToSnapshotPolicyOutputWithContext(ctx context.Context) SnapshotPolicyOutput

type SnapshotPolicyArgs

type SnapshotPolicyArgs struct {
	CopiedSnapshotsRetentionDays pulumi.IntPtrInput
	EnableCrossRegionCopy        pulumi.BoolPtrInput
	// The snapshot policy name.
	Name pulumi.StringPtrInput
	// The automatic snapshot repetition dates. The unit of measurement is day and the repeating cycle is a week. Value range: [1, 7], which represents days starting from Monday to Sunday, for example 1  indicates Monday. When you want to schedule multiple automatic snapshot tasks for a disk in a week, you can set the RepeatWeekdays to an array.
	// - A maximum of seven time points can be selected.
	// - The format is  an JSON array of ["1", "2", … "7"]  and the time points are separated by commas (,).
	RepeatWeekdays pulumi.StringArrayInput
	// The snapshot retention time, and the unit of measurement is day. Optional values:
	// - -1: The automatic snapshots are retained permanently.
	// - [1, 65536]: The number of days retained.
	RetentionDays     pulumi.IntInput
	Tags              pulumi.MapInput
	TargetCopyRegions pulumi.StringArrayInput
	// The automatic snapshot creation schedule, and the unit of measurement is hour. Value range: [0, 23], which represents from 00:00 to 24:00,  for example 1 indicates 01:00. When you want to schedule multiple automatic snapshot tasks for a disk in a day, you can set the TimePoints to an array.
	// - A maximum of 24 time points can be selected.
	// - The format is  an JSON array of ["0", "1", … "23"] and the time points are separated by commas (,).
	TimePoints pulumi.StringArrayInput
}

The set of arguments for constructing a SnapshotPolicy resource.

func (SnapshotPolicyArgs) ElementType

func (SnapshotPolicyArgs) ElementType() reflect.Type

type SnapshotPolicyArray

type SnapshotPolicyArray []SnapshotPolicyInput

func (SnapshotPolicyArray) ElementType

func (SnapshotPolicyArray) ElementType() reflect.Type

func (SnapshotPolicyArray) ToSnapshotPolicyArrayOutput

func (i SnapshotPolicyArray) ToSnapshotPolicyArrayOutput() SnapshotPolicyArrayOutput

func (SnapshotPolicyArray) ToSnapshotPolicyArrayOutputWithContext

func (i SnapshotPolicyArray) ToSnapshotPolicyArrayOutputWithContext(ctx context.Context) SnapshotPolicyArrayOutput

type SnapshotPolicyArrayInput

type SnapshotPolicyArrayInput interface {
	pulumi.Input

	ToSnapshotPolicyArrayOutput() SnapshotPolicyArrayOutput
	ToSnapshotPolicyArrayOutputWithContext(context.Context) SnapshotPolicyArrayOutput
}

SnapshotPolicyArrayInput is an input type that accepts SnapshotPolicyArray and SnapshotPolicyArrayOutput values. You can construct a concrete instance of `SnapshotPolicyArrayInput` via:

SnapshotPolicyArray{ SnapshotPolicyArgs{...} }

type SnapshotPolicyArrayOutput

type SnapshotPolicyArrayOutput struct{ *pulumi.OutputState }

func (SnapshotPolicyArrayOutput) ElementType

func (SnapshotPolicyArrayOutput) ElementType() reflect.Type

func (SnapshotPolicyArrayOutput) Index

func (SnapshotPolicyArrayOutput) ToSnapshotPolicyArrayOutput

func (o SnapshotPolicyArrayOutput) ToSnapshotPolicyArrayOutput() SnapshotPolicyArrayOutput

func (SnapshotPolicyArrayOutput) ToSnapshotPolicyArrayOutputWithContext

func (o SnapshotPolicyArrayOutput) ToSnapshotPolicyArrayOutputWithContext(ctx context.Context) SnapshotPolicyArrayOutput

type SnapshotPolicyInput

type SnapshotPolicyInput interface {
	pulumi.Input

	ToSnapshotPolicyOutput() SnapshotPolicyOutput
	ToSnapshotPolicyOutputWithContext(ctx context.Context) SnapshotPolicyOutput
}

type SnapshotPolicyMap

type SnapshotPolicyMap map[string]SnapshotPolicyInput

func (SnapshotPolicyMap) ElementType

func (SnapshotPolicyMap) ElementType() reflect.Type

func (SnapshotPolicyMap) ToSnapshotPolicyMapOutput

func (i SnapshotPolicyMap) ToSnapshotPolicyMapOutput() SnapshotPolicyMapOutput

func (SnapshotPolicyMap) ToSnapshotPolicyMapOutputWithContext

func (i SnapshotPolicyMap) ToSnapshotPolicyMapOutputWithContext(ctx context.Context) SnapshotPolicyMapOutput

type SnapshotPolicyMapInput

type SnapshotPolicyMapInput interface {
	pulumi.Input

	ToSnapshotPolicyMapOutput() SnapshotPolicyMapOutput
	ToSnapshotPolicyMapOutputWithContext(context.Context) SnapshotPolicyMapOutput
}

SnapshotPolicyMapInput is an input type that accepts SnapshotPolicyMap and SnapshotPolicyMapOutput values. You can construct a concrete instance of `SnapshotPolicyMapInput` via:

SnapshotPolicyMap{ "key": SnapshotPolicyArgs{...} }

type SnapshotPolicyMapOutput

type SnapshotPolicyMapOutput struct{ *pulumi.OutputState }

func (SnapshotPolicyMapOutput) ElementType

func (SnapshotPolicyMapOutput) ElementType() reflect.Type

func (SnapshotPolicyMapOutput) MapIndex

func (SnapshotPolicyMapOutput) ToSnapshotPolicyMapOutput

func (o SnapshotPolicyMapOutput) ToSnapshotPolicyMapOutput() SnapshotPolicyMapOutput

func (SnapshotPolicyMapOutput) ToSnapshotPolicyMapOutputWithContext

func (o SnapshotPolicyMapOutput) ToSnapshotPolicyMapOutputWithContext(ctx context.Context) SnapshotPolicyMapOutput

type SnapshotPolicyOutput

type SnapshotPolicyOutput struct{ *pulumi.OutputState }

func (SnapshotPolicyOutput) CopiedSnapshotsRetentionDays

func (o SnapshotPolicyOutput) CopiedSnapshotsRetentionDays() pulumi.IntPtrOutput

func (SnapshotPolicyOutput) ElementType

func (SnapshotPolicyOutput) ElementType() reflect.Type

func (SnapshotPolicyOutput) EnableCrossRegionCopy

func (o SnapshotPolicyOutput) EnableCrossRegionCopy() pulumi.BoolPtrOutput

func (SnapshotPolicyOutput) Name

The snapshot policy name.

func (SnapshotPolicyOutput) RepeatWeekdays

func (o SnapshotPolicyOutput) RepeatWeekdays() pulumi.StringArrayOutput

The automatic snapshot repetition dates. The unit of measurement is day and the repeating cycle is a week. Value range: [1, 7], which represents days starting from Monday to Sunday, for example 1 indicates Monday. When you want to schedule multiple automatic snapshot tasks for a disk in a week, you can set the RepeatWeekdays to an array. - A maximum of seven time points can be selected. - The format is an JSON array of ["1", "2", … "7"] and the time points are separated by commas (,).

func (SnapshotPolicyOutput) RetentionDays

func (o SnapshotPolicyOutput) RetentionDays() pulumi.IntOutput

The snapshot retention time, and the unit of measurement is day. Optional values: - -1: The automatic snapshots are retained permanently. - [1, 65536]: The number of days retained.

func (SnapshotPolicyOutput) Status

func (SnapshotPolicyOutput) Tags

func (SnapshotPolicyOutput) TargetCopyRegions

func (o SnapshotPolicyOutput) TargetCopyRegions() pulumi.StringArrayOutput

func (SnapshotPolicyOutput) TimePoints

The automatic snapshot creation schedule, and the unit of measurement is hour. Value range: [0, 23], which represents from 00:00 to 24:00, for example 1 indicates 01:00. When you want to schedule multiple automatic snapshot tasks for a disk in a day, you can set the TimePoints to an array. - A maximum of 24 time points can be selected. - The format is an JSON array of ["0", "1", … "23"] and the time points are separated by commas (,).

func (SnapshotPolicyOutput) ToSnapshotPolicyOutput

func (o SnapshotPolicyOutput) ToSnapshotPolicyOutput() SnapshotPolicyOutput

func (SnapshotPolicyOutput) ToSnapshotPolicyOutputWithContext

func (o SnapshotPolicyOutput) ToSnapshotPolicyOutputWithContext(ctx context.Context) SnapshotPolicyOutput

type SnapshotPolicyState

type SnapshotPolicyState struct {
	CopiedSnapshotsRetentionDays pulumi.IntPtrInput
	EnableCrossRegionCopy        pulumi.BoolPtrInput
	// The snapshot policy name.
	Name pulumi.StringPtrInput
	// The automatic snapshot repetition dates. The unit of measurement is day and the repeating cycle is a week. Value range: [1, 7], which represents days starting from Monday to Sunday, for example 1  indicates Monday. When you want to schedule multiple automatic snapshot tasks for a disk in a week, you can set the RepeatWeekdays to an array.
	// - A maximum of seven time points can be selected.
	// - The format is  an JSON array of ["1", "2", … "7"]  and the time points are separated by commas (,).
	RepeatWeekdays pulumi.StringArrayInput
	// The snapshot retention time, and the unit of measurement is day. Optional values:
	// - -1: The automatic snapshots are retained permanently.
	// - [1, 65536]: The number of days retained.
	RetentionDays     pulumi.IntPtrInput
	Status            pulumi.StringPtrInput
	Tags              pulumi.MapInput
	TargetCopyRegions pulumi.StringArrayInput
	// The automatic snapshot creation schedule, and the unit of measurement is hour. Value range: [0, 23], which represents from 00:00 to 24:00,  for example 1 indicates 01:00. When you want to schedule multiple automatic snapshot tasks for a disk in a day, you can set the TimePoints to an array.
	// - A maximum of 24 time points can be selected.
	// - The format is  an JSON array of ["0", "1", … "23"] and the time points are separated by commas (,).
	TimePoints pulumi.StringArrayInput
}

func (SnapshotPolicyState) ElementType

func (SnapshotPolicyState) ElementType() reflect.Type

type SnapshotState

type SnapshotState struct {
	Category pulumi.StringPtrInput
	// Description of the snapshot. This description can have a string of 2 to 256 characters, It cannot begin with http:// or https://. Default value is null.
	Description pulumi.StringPtrInput
	// The source disk ID.
	DiskId                     pulumi.StringPtrInput
	Force                      pulumi.BoolPtrInput
	InstantAccess              pulumi.BoolPtrInput
	InstantAccessRetentionDays pulumi.IntPtrInput
	// The name of the snapshot to be created. The name must be 2 to 128 characters in length. It must start with a letter and cannot start with http:// or https://. It can contain letters, digits, colons (:), underscores (_), and hyphens (-).
	// It cannot start with auto, because snapshot names starting with auto are recognized as automatic snapshots.
	//
	// Deprecated: Field 'name' has been deprecated from provider version 1.120.0. New field 'snapshot_name' instead.
	Name pulumi.StringPtrInput
	// The ID of the resource group.
	ResourceGroupId pulumi.StringPtrInput
	RetentionDays   pulumi.IntPtrInput
	SnapshotName    pulumi.StringPtrInput
	Status          pulumi.StringPtrInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapInput
}

func (SnapshotState) ElementType

func (SnapshotState) ElementType() reflect.Type

type StorageCapacityUnit

type StorageCapacityUnit struct {
	pulumi.CustomResourceState

	// The capacity of the Storage Capacity Unit. Unit: GiB. Valid values: `20`, `40`, `100`, `200`, `500`, `1024`, `2048`, `5120`, `10240`, `20480`, and `51200`.
	Capacity pulumi.IntOutput `pulumi:"capacity"`
	// The description of the Storage Capacity Unit. The description must be 2 to 256 characters in length and cannot start with `http://` or `https://`.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// The validity period of the Storage Capacity Unit. Default value: `1`.
	// * When PeriodUnit is set to Month, Valid values: `1`, `2`, `3`, `6`.
	// * When PeriodUnit is set to Year, Valid values: `1`, `3`, `5`.
	Period pulumi.IntOutput `pulumi:"period"`
	// The unit of the validity period of the Storage Capacity Unit. Default value: `Month`. Valid values: `Month`, `Year`.
	PeriodUnit pulumi.StringOutput `pulumi:"periodUnit"`
	// The time when the Storage Capacity Unit takes effect. It cannot be earlier than or more than six months later than the time when the Storage Capacity Unit is created. Specify the time in the ISO 8601 standard in the `yyyy-MM-ddTHH:mm:ssZ` format. The time must be in UTC. **NOTE:** This parameter is empty by default. The Storage Capacity Unit immediately takes effect after it is created.
	StartTime pulumi.StringOutput `pulumi:"startTime"`
	// The status of Storage Capacity Unit.
	Status pulumi.StringOutput `pulumi:"status"`
	// The name of the Storage Capacity Unit.
	StorageCapacityUnitName pulumi.StringOutput `pulumi:"storageCapacityUnitName"`
}

Provides a ECS Storage Capacity Unit resource.

For information about ECS Storage Capacity Unit and how to use it, see [What is Storage Capacity Unit](https://www.alibabacloud.com/help/en/doc-detail/161157.html).

> **NOTE:** Available in v1.155.0+.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/ecs"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ecs.NewStorageCapacityUnit(ctx, "default", &ecs.StorageCapacityUnitArgs{
			Capacity:                pulumi.Int(20),
			Description:             pulumi.String("tftestdescription"),
			StorageCapacityUnitName: pulumi.String("tftestname"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

ECS Storage Capacity Unit can be imported using the id, e.g.

```sh

$ pulumi import alicloud:ecs/storageCapacityUnit:StorageCapacityUnit example <id>

```

func GetStorageCapacityUnit

func GetStorageCapacityUnit(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *StorageCapacityUnitState, opts ...pulumi.ResourceOption) (*StorageCapacityUnit, error)

GetStorageCapacityUnit gets an existing StorageCapacityUnit 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 NewStorageCapacityUnit

func NewStorageCapacityUnit(ctx *pulumi.Context,
	name string, args *StorageCapacityUnitArgs, opts ...pulumi.ResourceOption) (*StorageCapacityUnit, error)

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

func (*StorageCapacityUnit) ElementType

func (*StorageCapacityUnit) ElementType() reflect.Type

func (*StorageCapacityUnit) ToStorageCapacityUnitOutput

func (i *StorageCapacityUnit) ToStorageCapacityUnitOutput() StorageCapacityUnitOutput

func (*StorageCapacityUnit) ToStorageCapacityUnitOutputWithContext

func (i *StorageCapacityUnit) ToStorageCapacityUnitOutputWithContext(ctx context.Context) StorageCapacityUnitOutput

type StorageCapacityUnitArgs

type StorageCapacityUnitArgs struct {
	// The capacity of the Storage Capacity Unit. Unit: GiB. Valid values: `20`, `40`, `100`, `200`, `500`, `1024`, `2048`, `5120`, `10240`, `20480`, and `51200`.
	Capacity pulumi.IntInput
	// The description of the Storage Capacity Unit. The description must be 2 to 256 characters in length and cannot start with `http://` or `https://`.
	Description pulumi.StringPtrInput
	// The validity period of the Storage Capacity Unit. Default value: `1`.
	// * When PeriodUnit is set to Month, Valid values: `1`, `2`, `3`, `6`.
	// * When PeriodUnit is set to Year, Valid values: `1`, `3`, `5`.
	Period pulumi.IntPtrInput
	// The unit of the validity period of the Storage Capacity Unit. Default value: `Month`. Valid values: `Month`, `Year`.
	PeriodUnit pulumi.StringPtrInput
	// The time when the Storage Capacity Unit takes effect. It cannot be earlier than or more than six months later than the time when the Storage Capacity Unit is created. Specify the time in the ISO 8601 standard in the `yyyy-MM-ddTHH:mm:ssZ` format. The time must be in UTC. **NOTE:** This parameter is empty by default. The Storage Capacity Unit immediately takes effect after it is created.
	StartTime pulumi.StringPtrInput
	// The name of the Storage Capacity Unit.
	StorageCapacityUnitName pulumi.StringPtrInput
}

The set of arguments for constructing a StorageCapacityUnit resource.

func (StorageCapacityUnitArgs) ElementType

func (StorageCapacityUnitArgs) ElementType() reflect.Type

type StorageCapacityUnitArray

type StorageCapacityUnitArray []StorageCapacityUnitInput

func (StorageCapacityUnitArray) ElementType

func (StorageCapacityUnitArray) ElementType() reflect.Type

func (StorageCapacityUnitArray) ToStorageCapacityUnitArrayOutput

func (i StorageCapacityUnitArray) ToStorageCapacityUnitArrayOutput() StorageCapacityUnitArrayOutput

func (StorageCapacityUnitArray) ToStorageCapacityUnitArrayOutputWithContext

func (i StorageCapacityUnitArray) ToStorageCapacityUnitArrayOutputWithContext(ctx context.Context) StorageCapacityUnitArrayOutput

type StorageCapacityUnitArrayInput

type StorageCapacityUnitArrayInput interface {
	pulumi.Input

	ToStorageCapacityUnitArrayOutput() StorageCapacityUnitArrayOutput
	ToStorageCapacityUnitArrayOutputWithContext(context.Context) StorageCapacityUnitArrayOutput
}

StorageCapacityUnitArrayInput is an input type that accepts StorageCapacityUnitArray and StorageCapacityUnitArrayOutput values. You can construct a concrete instance of `StorageCapacityUnitArrayInput` via:

StorageCapacityUnitArray{ StorageCapacityUnitArgs{...} }

type StorageCapacityUnitArrayOutput

type StorageCapacityUnitArrayOutput struct{ *pulumi.OutputState }

func (StorageCapacityUnitArrayOutput) ElementType

func (StorageCapacityUnitArrayOutput) Index

func (StorageCapacityUnitArrayOutput) ToStorageCapacityUnitArrayOutput

func (o StorageCapacityUnitArrayOutput) ToStorageCapacityUnitArrayOutput() StorageCapacityUnitArrayOutput

func (StorageCapacityUnitArrayOutput) ToStorageCapacityUnitArrayOutputWithContext

func (o StorageCapacityUnitArrayOutput) ToStorageCapacityUnitArrayOutputWithContext(ctx context.Context) StorageCapacityUnitArrayOutput

type StorageCapacityUnitInput

type StorageCapacityUnitInput interface {
	pulumi.Input

	ToStorageCapacityUnitOutput() StorageCapacityUnitOutput
	ToStorageCapacityUnitOutputWithContext(ctx context.Context) StorageCapacityUnitOutput
}

type StorageCapacityUnitMap

type StorageCapacityUnitMap map[string]StorageCapacityUnitInput

func (StorageCapacityUnitMap) ElementType

func (StorageCapacityUnitMap) ElementType() reflect.Type

func (StorageCapacityUnitMap) ToStorageCapacityUnitMapOutput

func (i StorageCapacityUnitMap) ToStorageCapacityUnitMapOutput() StorageCapacityUnitMapOutput

func (StorageCapacityUnitMap) ToStorageCapacityUnitMapOutputWithContext

func (i StorageCapacityUnitMap) ToStorageCapacityUnitMapOutputWithContext(ctx context.Context) StorageCapacityUnitMapOutput

type StorageCapacityUnitMapInput

type StorageCapacityUnitMapInput interface {
	pulumi.Input

	ToStorageCapacityUnitMapOutput() StorageCapacityUnitMapOutput
	ToStorageCapacityUnitMapOutputWithContext(context.Context) StorageCapacityUnitMapOutput
}

StorageCapacityUnitMapInput is an input type that accepts StorageCapacityUnitMap and StorageCapacityUnitMapOutput values. You can construct a concrete instance of `StorageCapacityUnitMapInput` via:

StorageCapacityUnitMap{ "key": StorageCapacityUnitArgs{...} }

type StorageCapacityUnitMapOutput

type StorageCapacityUnitMapOutput struct{ *pulumi.OutputState }

func (StorageCapacityUnitMapOutput) ElementType

func (StorageCapacityUnitMapOutput) MapIndex

func (StorageCapacityUnitMapOutput) ToStorageCapacityUnitMapOutput

func (o StorageCapacityUnitMapOutput) ToStorageCapacityUnitMapOutput() StorageCapacityUnitMapOutput

func (StorageCapacityUnitMapOutput) ToStorageCapacityUnitMapOutputWithContext

func (o StorageCapacityUnitMapOutput) ToStorageCapacityUnitMapOutputWithContext(ctx context.Context) StorageCapacityUnitMapOutput

type StorageCapacityUnitOutput

type StorageCapacityUnitOutput struct{ *pulumi.OutputState }

func (StorageCapacityUnitOutput) Capacity

The capacity of the Storage Capacity Unit. Unit: GiB. Valid values: `20`, `40`, `100`, `200`, `500`, `1024`, `2048`, `5120`, `10240`, `20480`, and `51200`.

func (StorageCapacityUnitOutput) Description

The description of the Storage Capacity Unit. The description must be 2 to 256 characters in length and cannot start with `http://` or `https://`.

func (StorageCapacityUnitOutput) ElementType

func (StorageCapacityUnitOutput) ElementType() reflect.Type

func (StorageCapacityUnitOutput) Period

The validity period of the Storage Capacity Unit. Default value: `1`. * When PeriodUnit is set to Month, Valid values: `1`, `2`, `3`, `6`. * When PeriodUnit is set to Year, Valid values: `1`, `3`, `5`.

func (StorageCapacityUnitOutput) PeriodUnit

The unit of the validity period of the Storage Capacity Unit. Default value: `Month`. Valid values: `Month`, `Year`.

func (StorageCapacityUnitOutput) StartTime

The time when the Storage Capacity Unit takes effect. It cannot be earlier than or more than six months later than the time when the Storage Capacity Unit is created. Specify the time in the ISO 8601 standard in the `yyyy-MM-ddTHH:mm:ssZ` format. The time must be in UTC. **NOTE:** This parameter is empty by default. The Storage Capacity Unit immediately takes effect after it is created.

func (StorageCapacityUnitOutput) Status

The status of Storage Capacity Unit.

func (StorageCapacityUnitOutput) StorageCapacityUnitName

func (o StorageCapacityUnitOutput) StorageCapacityUnitName() pulumi.StringOutput

The name of the Storage Capacity Unit.

func (StorageCapacityUnitOutput) ToStorageCapacityUnitOutput

func (o StorageCapacityUnitOutput) ToStorageCapacityUnitOutput() StorageCapacityUnitOutput

func (StorageCapacityUnitOutput) ToStorageCapacityUnitOutputWithContext

func (o StorageCapacityUnitOutput) ToStorageCapacityUnitOutputWithContext(ctx context.Context) StorageCapacityUnitOutput

type StorageCapacityUnitState

type StorageCapacityUnitState struct {
	// The capacity of the Storage Capacity Unit. Unit: GiB. Valid values: `20`, `40`, `100`, `200`, `500`, `1024`, `2048`, `5120`, `10240`, `20480`, and `51200`.
	Capacity pulumi.IntPtrInput
	// The description of the Storage Capacity Unit. The description must be 2 to 256 characters in length and cannot start with `http://` or `https://`.
	Description pulumi.StringPtrInput
	// The validity period of the Storage Capacity Unit. Default value: `1`.
	// * When PeriodUnit is set to Month, Valid values: `1`, `2`, `3`, `6`.
	// * When PeriodUnit is set to Year, Valid values: `1`, `3`, `5`.
	Period pulumi.IntPtrInput
	// The unit of the validity period of the Storage Capacity Unit. Default value: `Month`. Valid values: `Month`, `Year`.
	PeriodUnit pulumi.StringPtrInput
	// The time when the Storage Capacity Unit takes effect. It cannot be earlier than or more than six months later than the time when the Storage Capacity Unit is created. Specify the time in the ISO 8601 standard in the `yyyy-MM-ddTHH:mm:ssZ` format. The time must be in UTC. **NOTE:** This parameter is empty by default. The Storage Capacity Unit immediately takes effect after it is created.
	StartTime pulumi.StringPtrInput
	// The status of Storage Capacity Unit.
	Status pulumi.StringPtrInput
	// The name of the Storage Capacity Unit.
	StorageCapacityUnitName pulumi.StringPtrInput
}

func (StorageCapacityUnitState) ElementType

func (StorageCapacityUnitState) ElementType() reflect.Type

Source Files

Jump to

Keyboard shortcuts

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