as

package
v0.0.3 Latest Latest
Warning

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

Go to latest
Published: Oct 19, 2022 License: Apache-2.0 Imports: 7 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Attachment

type Attachment struct {
	pulumi.CustomResourceState

	// ID list of CVM instances to be attached to the scaling group.
	InstanceIds pulumi.StringArrayOutput `pulumi:"instanceIds"`
	// ID of a scaling group.
	ScalingGroupId pulumi.StringOutput `pulumi:"scalingGroupId"`
}

Provides a resource to attach or detach CVM instances to a specified scaling group.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/tencentcloudstack/pulumi-tencentcloud/sdk/go/tencentcloud/As"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := As.NewAttachment(ctx, "attachment", &As.AttachmentArgs{
			InstanceIds: pulumi.StringArray{
				pulumi.String("ins-01"),
				pulumi.String("ins-02"),
			},
			ScalingGroupId: pulumi.String("sg-afasfa"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetAttachment

func GetAttachment(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AttachmentState, opts ...pulumi.ResourceOption) (*Attachment, error)

GetAttachment gets an existing Attachment 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 NewAttachment

func NewAttachment(ctx *pulumi.Context,
	name string, args *AttachmentArgs, opts ...pulumi.ResourceOption) (*Attachment, error)

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

func (*Attachment) ElementType

func (*Attachment) ElementType() reflect.Type

func (*Attachment) ToAttachmentOutput

func (i *Attachment) ToAttachmentOutput() AttachmentOutput

func (*Attachment) ToAttachmentOutputWithContext

func (i *Attachment) ToAttachmentOutputWithContext(ctx context.Context) AttachmentOutput

type AttachmentArgs

type AttachmentArgs struct {
	// ID list of CVM instances to be attached to the scaling group.
	InstanceIds pulumi.StringArrayInput
	// ID of a scaling group.
	ScalingGroupId pulumi.StringInput
}

The set of arguments for constructing a Attachment resource.

func (AttachmentArgs) ElementType

func (AttachmentArgs) ElementType() reflect.Type

type AttachmentArray

type AttachmentArray []AttachmentInput

func (AttachmentArray) ElementType

func (AttachmentArray) ElementType() reflect.Type

func (AttachmentArray) ToAttachmentArrayOutput

func (i AttachmentArray) ToAttachmentArrayOutput() AttachmentArrayOutput

func (AttachmentArray) ToAttachmentArrayOutputWithContext

func (i AttachmentArray) ToAttachmentArrayOutputWithContext(ctx context.Context) AttachmentArrayOutput

type AttachmentArrayInput

type AttachmentArrayInput interface {
	pulumi.Input

	ToAttachmentArrayOutput() AttachmentArrayOutput
	ToAttachmentArrayOutputWithContext(context.Context) AttachmentArrayOutput
}

AttachmentArrayInput is an input type that accepts AttachmentArray and AttachmentArrayOutput values. You can construct a concrete instance of `AttachmentArrayInput` via:

AttachmentArray{ AttachmentArgs{...} }

type AttachmentArrayOutput

type AttachmentArrayOutput struct{ *pulumi.OutputState }

func (AttachmentArrayOutput) ElementType

func (AttachmentArrayOutput) ElementType() reflect.Type

func (AttachmentArrayOutput) Index

func (AttachmentArrayOutput) ToAttachmentArrayOutput

func (o AttachmentArrayOutput) ToAttachmentArrayOutput() AttachmentArrayOutput

func (AttachmentArrayOutput) ToAttachmentArrayOutputWithContext

func (o AttachmentArrayOutput) ToAttachmentArrayOutputWithContext(ctx context.Context) AttachmentArrayOutput

type AttachmentInput

type AttachmentInput interface {
	pulumi.Input

	ToAttachmentOutput() AttachmentOutput
	ToAttachmentOutputWithContext(ctx context.Context) AttachmentOutput
}

type AttachmentMap

type AttachmentMap map[string]AttachmentInput

func (AttachmentMap) ElementType

func (AttachmentMap) ElementType() reflect.Type

func (AttachmentMap) ToAttachmentMapOutput

func (i AttachmentMap) ToAttachmentMapOutput() AttachmentMapOutput

func (AttachmentMap) ToAttachmentMapOutputWithContext

func (i AttachmentMap) ToAttachmentMapOutputWithContext(ctx context.Context) AttachmentMapOutput

type AttachmentMapInput

type AttachmentMapInput interface {
	pulumi.Input

	ToAttachmentMapOutput() AttachmentMapOutput
	ToAttachmentMapOutputWithContext(context.Context) AttachmentMapOutput
}

AttachmentMapInput is an input type that accepts AttachmentMap and AttachmentMapOutput values. You can construct a concrete instance of `AttachmentMapInput` via:

AttachmentMap{ "key": AttachmentArgs{...} }

type AttachmentMapOutput

type AttachmentMapOutput struct{ *pulumi.OutputState }

func (AttachmentMapOutput) ElementType

func (AttachmentMapOutput) ElementType() reflect.Type

func (AttachmentMapOutput) MapIndex

func (AttachmentMapOutput) ToAttachmentMapOutput

func (o AttachmentMapOutput) ToAttachmentMapOutput() AttachmentMapOutput

func (AttachmentMapOutput) ToAttachmentMapOutputWithContext

func (o AttachmentMapOutput) ToAttachmentMapOutputWithContext(ctx context.Context) AttachmentMapOutput

type AttachmentOutput

type AttachmentOutput struct{ *pulumi.OutputState }

func (AttachmentOutput) ElementType

func (AttachmentOutput) ElementType() reflect.Type

func (AttachmentOutput) InstanceIds

func (o AttachmentOutput) InstanceIds() pulumi.StringArrayOutput

ID list of CVM instances to be attached to the scaling group.

func (AttachmentOutput) ScalingGroupId

func (o AttachmentOutput) ScalingGroupId() pulumi.StringOutput

ID of a scaling group.

func (AttachmentOutput) ToAttachmentOutput

func (o AttachmentOutput) ToAttachmentOutput() AttachmentOutput

func (AttachmentOutput) ToAttachmentOutputWithContext

func (o AttachmentOutput) ToAttachmentOutputWithContext(ctx context.Context) AttachmentOutput

type AttachmentState

type AttachmentState struct {
	// ID list of CVM instances to be attached to the scaling group.
	InstanceIds pulumi.StringArrayInput
	// ID of a scaling group.
	ScalingGroupId pulumi.StringPtrInput
}

func (AttachmentState) ElementType

func (AttachmentState) ElementType() reflect.Type

type GetScalingConfigsArgs

type GetScalingConfigsArgs struct {
	// Launch configuration ID.
	ConfigurationId *string `pulumi:"configurationId"`
	// Launch configuration name.
	ConfigurationName *string `pulumi:"configurationName"`
	// Used to save results.
	ResultOutputFile *string `pulumi:"resultOutputFile"`
}

A collection of arguments for invoking getScalingConfigs.

type GetScalingConfigsConfigurationList

type GetScalingConfigsConfigurationList struct {
	// Launch configuration ID.
	ConfigurationId string `pulumi:"configurationId"`
	// Launch configuration name.
	ConfigurationName string `pulumi:"configurationName"`
	// The time when the launch configuration was created.
	CreateTime string `pulumi:"createTime"`
	// Configurations of data disk.
	DataDisks []GetScalingConfigsConfigurationListDataDisk `pulumi:"dataDisks"`
	// Policy of cloud disk type.
	DiskTypePolicy string `pulumi:"diskTypePolicy"`
	// Whether to activate cloud monitor service.
	EnhancedMonitorService bool `pulumi:"enhancedMonitorService"`
	// Whether to activate cloud security service.
	EnhancedSecurityService bool `pulumi:"enhancedSecurityService"`
	// ID of available image, for example `img-8toqc6s3`.
	ImageId string `pulumi:"imageId"`
	// A tag list associates with an instance.
	InstanceTags map[string]interface{} `pulumi:"instanceTags"`
	// Instance type list of the scaling configuration.
	InstanceTypes []string `pulumi:"instanceTypes"`
	// Charge types for network traffic.
	InternetChargeType string `pulumi:"internetChargeType"`
	// Max bandwidth of Internet access in Mbps.
	InternetMaxBandwidthOut int `pulumi:"internetMaxBandwidthOut"`
	// ID list of login keys.
	KeyIds []string `pulumi:"keyIds"`
	// ID of the project to which the configuration belongs. Default value is 0.
	ProjectId int `pulumi:"projectId"`
	// Specify whether to assign an Internet IP address.
	PublicIpAssigned bool `pulumi:"publicIpAssigned"`
	// Security groups to which the instance belongs.
	SecurityGroupIds []string `pulumi:"securityGroupIds"`
	// Current status of a launch configuration.
	Status string `pulumi:"status"`
	// System disk size of the scaling configuration in GB.
	SystemDiskSize int `pulumi:"systemDiskSize"`
	// System disk category of the scaling configuration.
	SystemDiskType string `pulumi:"systemDiskType"`
	// Base64-encoded User Data text.
	UserData string `pulumi:"userData"`
}

type GetScalingConfigsConfigurationListArgs

type GetScalingConfigsConfigurationListArgs struct {
	// Launch configuration ID.
	ConfigurationId pulumi.StringInput `pulumi:"configurationId"`
	// Launch configuration name.
	ConfigurationName pulumi.StringInput `pulumi:"configurationName"`
	// The time when the launch configuration was created.
	CreateTime pulumi.StringInput `pulumi:"createTime"`
	// Configurations of data disk.
	DataDisks GetScalingConfigsConfigurationListDataDiskArrayInput `pulumi:"dataDisks"`
	// Policy of cloud disk type.
	DiskTypePolicy pulumi.StringInput `pulumi:"diskTypePolicy"`
	// Whether to activate cloud monitor service.
	EnhancedMonitorService pulumi.BoolInput `pulumi:"enhancedMonitorService"`
	// Whether to activate cloud security service.
	EnhancedSecurityService pulumi.BoolInput `pulumi:"enhancedSecurityService"`
	// ID of available image, for example `img-8toqc6s3`.
	ImageId pulumi.StringInput `pulumi:"imageId"`
	// A tag list associates with an instance.
	InstanceTags pulumi.MapInput `pulumi:"instanceTags"`
	// Instance type list of the scaling configuration.
	InstanceTypes pulumi.StringArrayInput `pulumi:"instanceTypes"`
	// Charge types for network traffic.
	InternetChargeType pulumi.StringInput `pulumi:"internetChargeType"`
	// Max bandwidth of Internet access in Mbps.
	InternetMaxBandwidthOut pulumi.IntInput `pulumi:"internetMaxBandwidthOut"`
	// ID list of login keys.
	KeyIds pulumi.StringArrayInput `pulumi:"keyIds"`
	// ID of the project to which the configuration belongs. Default value is 0.
	ProjectId pulumi.IntInput `pulumi:"projectId"`
	// Specify whether to assign an Internet IP address.
	PublicIpAssigned pulumi.BoolInput `pulumi:"publicIpAssigned"`
	// Security groups to which the instance belongs.
	SecurityGroupIds pulumi.StringArrayInput `pulumi:"securityGroupIds"`
	// Current status of a launch configuration.
	Status pulumi.StringInput `pulumi:"status"`
	// System disk size of the scaling configuration in GB.
	SystemDiskSize pulumi.IntInput `pulumi:"systemDiskSize"`
	// System disk category of the scaling configuration.
	SystemDiskType pulumi.StringInput `pulumi:"systemDiskType"`
	// Base64-encoded User Data text.
	UserData pulumi.StringInput `pulumi:"userData"`
}

func (GetScalingConfigsConfigurationListArgs) ElementType

func (GetScalingConfigsConfigurationListArgs) ToGetScalingConfigsConfigurationListOutput

func (i GetScalingConfigsConfigurationListArgs) ToGetScalingConfigsConfigurationListOutput() GetScalingConfigsConfigurationListOutput

func (GetScalingConfigsConfigurationListArgs) ToGetScalingConfigsConfigurationListOutputWithContext

func (i GetScalingConfigsConfigurationListArgs) ToGetScalingConfigsConfigurationListOutputWithContext(ctx context.Context) GetScalingConfigsConfigurationListOutput

type GetScalingConfigsConfigurationListArray

type GetScalingConfigsConfigurationListArray []GetScalingConfigsConfigurationListInput

func (GetScalingConfigsConfigurationListArray) ElementType

func (GetScalingConfigsConfigurationListArray) ToGetScalingConfigsConfigurationListArrayOutput

func (i GetScalingConfigsConfigurationListArray) ToGetScalingConfigsConfigurationListArrayOutput() GetScalingConfigsConfigurationListArrayOutput

func (GetScalingConfigsConfigurationListArray) ToGetScalingConfigsConfigurationListArrayOutputWithContext

func (i GetScalingConfigsConfigurationListArray) ToGetScalingConfigsConfigurationListArrayOutputWithContext(ctx context.Context) GetScalingConfigsConfigurationListArrayOutput

type GetScalingConfigsConfigurationListArrayInput

type GetScalingConfigsConfigurationListArrayInput interface {
	pulumi.Input

	ToGetScalingConfigsConfigurationListArrayOutput() GetScalingConfigsConfigurationListArrayOutput
	ToGetScalingConfigsConfigurationListArrayOutputWithContext(context.Context) GetScalingConfigsConfigurationListArrayOutput
}

GetScalingConfigsConfigurationListArrayInput is an input type that accepts GetScalingConfigsConfigurationListArray and GetScalingConfigsConfigurationListArrayOutput values. You can construct a concrete instance of `GetScalingConfigsConfigurationListArrayInput` via:

GetScalingConfigsConfigurationListArray{ GetScalingConfigsConfigurationListArgs{...} }

type GetScalingConfigsConfigurationListArrayOutput

type GetScalingConfigsConfigurationListArrayOutput struct{ *pulumi.OutputState }

func (GetScalingConfigsConfigurationListArrayOutput) ElementType

func (GetScalingConfigsConfigurationListArrayOutput) Index

func (GetScalingConfigsConfigurationListArrayOutput) ToGetScalingConfigsConfigurationListArrayOutput

func (o GetScalingConfigsConfigurationListArrayOutput) ToGetScalingConfigsConfigurationListArrayOutput() GetScalingConfigsConfigurationListArrayOutput

func (GetScalingConfigsConfigurationListArrayOutput) ToGetScalingConfigsConfigurationListArrayOutputWithContext

func (o GetScalingConfigsConfigurationListArrayOutput) ToGetScalingConfigsConfigurationListArrayOutputWithContext(ctx context.Context) GetScalingConfigsConfigurationListArrayOutput

type GetScalingConfigsConfigurationListDataDisk

type GetScalingConfigsConfigurationListDataDisk struct {
	// Indicates whether the disk remove after instance terminated.
	DeleteWithInstance bool `pulumi:"deleteWithInstance"`
	// Volume of disk in GB. Default is `0`.
	DiskSize int `pulumi:"diskSize"`
	// Type of disk.
	DiskType string `pulumi:"diskType"`
	// Data disk snapshot ID.
	SnapshotId string `pulumi:"snapshotId"`
}

type GetScalingConfigsConfigurationListDataDiskArgs

type GetScalingConfigsConfigurationListDataDiskArgs struct {
	// Indicates whether the disk remove after instance terminated.
	DeleteWithInstance pulumi.BoolInput `pulumi:"deleteWithInstance"`
	// Volume of disk in GB. Default is `0`.
	DiskSize pulumi.IntInput `pulumi:"diskSize"`
	// Type of disk.
	DiskType pulumi.StringInput `pulumi:"diskType"`
	// Data disk snapshot ID.
	SnapshotId pulumi.StringInput `pulumi:"snapshotId"`
}

func (GetScalingConfigsConfigurationListDataDiskArgs) ElementType

func (GetScalingConfigsConfigurationListDataDiskArgs) ToGetScalingConfigsConfigurationListDataDiskOutput

func (i GetScalingConfigsConfigurationListDataDiskArgs) ToGetScalingConfigsConfigurationListDataDiskOutput() GetScalingConfigsConfigurationListDataDiskOutput

func (GetScalingConfigsConfigurationListDataDiskArgs) ToGetScalingConfigsConfigurationListDataDiskOutputWithContext

func (i GetScalingConfigsConfigurationListDataDiskArgs) ToGetScalingConfigsConfigurationListDataDiskOutputWithContext(ctx context.Context) GetScalingConfigsConfigurationListDataDiskOutput

type GetScalingConfigsConfigurationListDataDiskArray

type GetScalingConfigsConfigurationListDataDiskArray []GetScalingConfigsConfigurationListDataDiskInput

func (GetScalingConfigsConfigurationListDataDiskArray) ElementType

func (GetScalingConfigsConfigurationListDataDiskArray) ToGetScalingConfigsConfigurationListDataDiskArrayOutput

func (i GetScalingConfigsConfigurationListDataDiskArray) ToGetScalingConfigsConfigurationListDataDiskArrayOutput() GetScalingConfigsConfigurationListDataDiskArrayOutput

func (GetScalingConfigsConfigurationListDataDiskArray) ToGetScalingConfigsConfigurationListDataDiskArrayOutputWithContext

func (i GetScalingConfigsConfigurationListDataDiskArray) ToGetScalingConfigsConfigurationListDataDiskArrayOutputWithContext(ctx context.Context) GetScalingConfigsConfigurationListDataDiskArrayOutput

type GetScalingConfigsConfigurationListDataDiskArrayInput

type GetScalingConfigsConfigurationListDataDiskArrayInput interface {
	pulumi.Input

	ToGetScalingConfigsConfigurationListDataDiskArrayOutput() GetScalingConfigsConfigurationListDataDiskArrayOutput
	ToGetScalingConfigsConfigurationListDataDiskArrayOutputWithContext(context.Context) GetScalingConfigsConfigurationListDataDiskArrayOutput
}

GetScalingConfigsConfigurationListDataDiskArrayInput is an input type that accepts GetScalingConfigsConfigurationListDataDiskArray and GetScalingConfigsConfigurationListDataDiskArrayOutput values. You can construct a concrete instance of `GetScalingConfigsConfigurationListDataDiskArrayInput` via:

GetScalingConfigsConfigurationListDataDiskArray{ GetScalingConfigsConfigurationListDataDiskArgs{...} }

type GetScalingConfigsConfigurationListDataDiskArrayOutput

type GetScalingConfigsConfigurationListDataDiskArrayOutput struct{ *pulumi.OutputState }

func (GetScalingConfigsConfigurationListDataDiskArrayOutput) ElementType

func (GetScalingConfigsConfigurationListDataDiskArrayOutput) Index

func (GetScalingConfigsConfigurationListDataDiskArrayOutput) ToGetScalingConfigsConfigurationListDataDiskArrayOutput

func (GetScalingConfigsConfigurationListDataDiskArrayOutput) ToGetScalingConfigsConfigurationListDataDiskArrayOutputWithContext

func (o GetScalingConfigsConfigurationListDataDiskArrayOutput) ToGetScalingConfigsConfigurationListDataDiskArrayOutputWithContext(ctx context.Context) GetScalingConfigsConfigurationListDataDiskArrayOutput

type GetScalingConfigsConfigurationListDataDiskInput

type GetScalingConfigsConfigurationListDataDiskInput interface {
	pulumi.Input

	ToGetScalingConfigsConfigurationListDataDiskOutput() GetScalingConfigsConfigurationListDataDiskOutput
	ToGetScalingConfigsConfigurationListDataDiskOutputWithContext(context.Context) GetScalingConfigsConfigurationListDataDiskOutput
}

GetScalingConfigsConfigurationListDataDiskInput is an input type that accepts GetScalingConfigsConfigurationListDataDiskArgs and GetScalingConfigsConfigurationListDataDiskOutput values. You can construct a concrete instance of `GetScalingConfigsConfigurationListDataDiskInput` via:

GetScalingConfigsConfigurationListDataDiskArgs{...}

type GetScalingConfigsConfigurationListDataDiskOutput

type GetScalingConfigsConfigurationListDataDiskOutput struct{ *pulumi.OutputState }

func (GetScalingConfigsConfigurationListDataDiskOutput) DeleteWithInstance

Indicates whether the disk remove after instance terminated.

func (GetScalingConfigsConfigurationListDataDiskOutput) DiskSize

Volume of disk in GB. Default is `0`.

func (GetScalingConfigsConfigurationListDataDiskOutput) DiskType

Type of disk.

func (GetScalingConfigsConfigurationListDataDiskOutput) ElementType

func (GetScalingConfigsConfigurationListDataDiskOutput) SnapshotId

Data disk snapshot ID.

func (GetScalingConfigsConfigurationListDataDiskOutput) ToGetScalingConfigsConfigurationListDataDiskOutput

func (o GetScalingConfigsConfigurationListDataDiskOutput) ToGetScalingConfigsConfigurationListDataDiskOutput() GetScalingConfigsConfigurationListDataDiskOutput

func (GetScalingConfigsConfigurationListDataDiskOutput) ToGetScalingConfigsConfigurationListDataDiskOutputWithContext

func (o GetScalingConfigsConfigurationListDataDiskOutput) ToGetScalingConfigsConfigurationListDataDiskOutputWithContext(ctx context.Context) GetScalingConfigsConfigurationListDataDiskOutput

type GetScalingConfigsConfigurationListInput

type GetScalingConfigsConfigurationListInput interface {
	pulumi.Input

	ToGetScalingConfigsConfigurationListOutput() GetScalingConfigsConfigurationListOutput
	ToGetScalingConfigsConfigurationListOutputWithContext(context.Context) GetScalingConfigsConfigurationListOutput
}

GetScalingConfigsConfigurationListInput is an input type that accepts GetScalingConfigsConfigurationListArgs and GetScalingConfigsConfigurationListOutput values. You can construct a concrete instance of `GetScalingConfigsConfigurationListInput` via:

GetScalingConfigsConfigurationListArgs{...}

type GetScalingConfigsConfigurationListOutput

type GetScalingConfigsConfigurationListOutput struct{ *pulumi.OutputState }

func (GetScalingConfigsConfigurationListOutput) ConfigurationId

Launch configuration ID.

func (GetScalingConfigsConfigurationListOutput) ConfigurationName

Launch configuration name.

func (GetScalingConfigsConfigurationListOutput) CreateTime

The time when the launch configuration was created.

func (GetScalingConfigsConfigurationListOutput) DataDisks

Configurations of data disk.

func (GetScalingConfigsConfigurationListOutput) DiskTypePolicy

Policy of cloud disk type.

func (GetScalingConfigsConfigurationListOutput) ElementType

func (GetScalingConfigsConfigurationListOutput) EnhancedMonitorService

func (o GetScalingConfigsConfigurationListOutput) EnhancedMonitorService() pulumi.BoolOutput

Whether to activate cloud monitor service.

func (GetScalingConfigsConfigurationListOutput) EnhancedSecurityService

func (o GetScalingConfigsConfigurationListOutput) EnhancedSecurityService() pulumi.BoolOutput

Whether to activate cloud security service.

func (GetScalingConfigsConfigurationListOutput) ImageId

ID of available image, for example `img-8toqc6s3`.

func (GetScalingConfigsConfigurationListOutput) InstanceTags

A tag list associates with an instance.

func (GetScalingConfigsConfigurationListOutput) InstanceTypes

Instance type list of the scaling configuration.

func (GetScalingConfigsConfigurationListOutput) InternetChargeType

Charge types for network traffic.

func (GetScalingConfigsConfigurationListOutput) InternetMaxBandwidthOut

func (o GetScalingConfigsConfigurationListOutput) InternetMaxBandwidthOut() pulumi.IntOutput

Max bandwidth of Internet access in Mbps.

func (GetScalingConfigsConfigurationListOutput) KeyIds

ID list of login keys.

func (GetScalingConfigsConfigurationListOutput) ProjectId

ID of the project to which the configuration belongs. Default value is 0.

func (GetScalingConfigsConfigurationListOutput) PublicIpAssigned

Specify whether to assign an Internet IP address.

func (GetScalingConfigsConfigurationListOutput) SecurityGroupIds

Security groups to which the instance belongs.

func (GetScalingConfigsConfigurationListOutput) Status

Current status of a launch configuration.

func (GetScalingConfigsConfigurationListOutput) SystemDiskSize

System disk size of the scaling configuration in GB.

func (GetScalingConfigsConfigurationListOutput) SystemDiskType

System disk category of the scaling configuration.

func (GetScalingConfigsConfigurationListOutput) ToGetScalingConfigsConfigurationListOutput

func (o GetScalingConfigsConfigurationListOutput) ToGetScalingConfigsConfigurationListOutput() GetScalingConfigsConfigurationListOutput

func (GetScalingConfigsConfigurationListOutput) ToGetScalingConfigsConfigurationListOutputWithContext

func (o GetScalingConfigsConfigurationListOutput) ToGetScalingConfigsConfigurationListOutputWithContext(ctx context.Context) GetScalingConfigsConfigurationListOutput

func (GetScalingConfigsConfigurationListOutput) UserData

Base64-encoded User Data text.

type GetScalingConfigsOutputArgs

type GetScalingConfigsOutputArgs struct {
	// Launch configuration ID.
	ConfigurationId pulumi.StringPtrInput `pulumi:"configurationId"`
	// Launch configuration name.
	ConfigurationName pulumi.StringPtrInput `pulumi:"configurationName"`
	// Used to save results.
	ResultOutputFile pulumi.StringPtrInput `pulumi:"resultOutputFile"`
}

A collection of arguments for invoking getScalingConfigs.

func (GetScalingConfigsOutputArgs) ElementType

type GetScalingConfigsResult

type GetScalingConfigsResult struct {
	// Launch configuration ID.
	ConfigurationId *string `pulumi:"configurationId"`
	// A list of configuration. Each element contains the following attributes:
	ConfigurationLists []GetScalingConfigsConfigurationList `pulumi:"configurationLists"`
	// Launch configuration name.
	ConfigurationName *string `pulumi:"configurationName"`
	// The provider-assigned unique ID for this managed resource.
	Id               string  `pulumi:"id"`
	ResultOutputFile *string `pulumi:"resultOutputFile"`
}

A collection of values returned by getScalingConfigs.

func GetScalingConfigs

func GetScalingConfigs(ctx *pulumi.Context, args *GetScalingConfigsArgs, opts ...pulumi.InvokeOption) (*GetScalingConfigsResult, error)

Use this data source to query scaling configuration information.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-tencentcloud/sdk/go/tencentcloud/As"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/tencentcloudstack/pulumi-tencentcloud/sdk/go/tencentcloud/As"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := As.GetScalingConfigs(ctx, &as.GetScalingConfigsArgs{
			ConfigurationId:  pulumi.StringRef("asc-oqio4yyj"),
			ResultOutputFile: pulumi.StringRef("my_test_path"),
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetScalingConfigsResultOutput

type GetScalingConfigsResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getScalingConfigs.

func (GetScalingConfigsResultOutput) ConfigurationId

Launch configuration ID.

func (GetScalingConfigsResultOutput) ConfigurationLists

A list of configuration. Each element contains the following attributes:

func (GetScalingConfigsResultOutput) ConfigurationName

Launch configuration name.

func (GetScalingConfigsResultOutput) ElementType

func (GetScalingConfigsResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetScalingConfigsResultOutput) ResultOutputFile

func (GetScalingConfigsResultOutput) ToGetScalingConfigsResultOutput

func (o GetScalingConfigsResultOutput) ToGetScalingConfigsResultOutput() GetScalingConfigsResultOutput

func (GetScalingConfigsResultOutput) ToGetScalingConfigsResultOutputWithContext

func (o GetScalingConfigsResultOutput) ToGetScalingConfigsResultOutputWithContext(ctx context.Context) GetScalingConfigsResultOutput

type GetScalingGroupsArgs

type GetScalingGroupsArgs struct {
	// Filter results by launch configuration ID.
	ConfigurationId *string `pulumi:"configurationId"`
	// Used to save results.
	ResultOutputFile *string `pulumi:"resultOutputFile"`
	// A specified scaling group ID used to query.
	ScalingGroupId *string `pulumi:"scalingGroupId"`
	// A scaling group name used to query.
	ScalingGroupName *string `pulumi:"scalingGroupName"`
	// Tags used to query.
	Tags map[string]interface{} `pulumi:"tags"`
}

A collection of arguments for invoking getScalingGroups.

type GetScalingGroupsOutputArgs

type GetScalingGroupsOutputArgs struct {
	// Filter results by launch configuration ID.
	ConfigurationId pulumi.StringPtrInput `pulumi:"configurationId"`
	// Used to save results.
	ResultOutputFile pulumi.StringPtrInput `pulumi:"resultOutputFile"`
	// A specified scaling group ID used to query.
	ScalingGroupId pulumi.StringPtrInput `pulumi:"scalingGroupId"`
	// A scaling group name used to query.
	ScalingGroupName pulumi.StringPtrInput `pulumi:"scalingGroupName"`
	// Tags used to query.
	Tags pulumi.MapInput `pulumi:"tags"`
}

A collection of arguments for invoking getScalingGroups.

func (GetScalingGroupsOutputArgs) ElementType

func (GetScalingGroupsOutputArgs) ElementType() reflect.Type

type GetScalingGroupsResult

type GetScalingGroupsResult struct {
	// Launch configuration ID.
	ConfigurationId *string `pulumi:"configurationId"`
	// The provider-assigned unique ID for this managed resource.
	Id               string  `pulumi:"id"`
	ResultOutputFile *string `pulumi:"resultOutputFile"`
	// Auto scaling group ID.
	ScalingGroupId *string `pulumi:"scalingGroupId"`
	// A list of scaling group. Each element contains the following attributes:
	ScalingGroupLists []GetScalingGroupsScalingGroupList `pulumi:"scalingGroupLists"`
	// Auto scaling group name.
	ScalingGroupName *string `pulumi:"scalingGroupName"`
	// Tags of the scaling group.
	Tags map[string]interface{} `pulumi:"tags"`
}

A collection of values returned by getScalingGroups.

func GetScalingGroups

func GetScalingGroups(ctx *pulumi.Context, args *GetScalingGroupsArgs, opts ...pulumi.InvokeOption) (*GetScalingGroupsResult, error)

Use this data source to query the detail information of an existing autoscaling group.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-tencentcloud/sdk/go/tencentcloud/As"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/tencentcloudstack/pulumi-tencentcloud/sdk/go/tencentcloud/As"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := As.GetScalingGroups(ctx, &as.GetScalingGroupsArgs{
			ConfigurationId:  pulumi.StringRef("asc-oqio4yyj"),
			ResultOutputFile: pulumi.StringRef("my_test_path"),
			ScalingGroupName: pulumi.StringRef("myasgroup"),
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetScalingGroupsResultOutput

type GetScalingGroupsResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getScalingGroups.

func (GetScalingGroupsResultOutput) ConfigurationId

Launch configuration ID.

func (GetScalingGroupsResultOutput) ElementType

func (GetScalingGroupsResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetScalingGroupsResultOutput) ResultOutputFile

func (GetScalingGroupsResultOutput) ScalingGroupId

Auto scaling group ID.

func (GetScalingGroupsResultOutput) ScalingGroupLists

A list of scaling group. Each element contains the following attributes:

func (GetScalingGroupsResultOutput) ScalingGroupName

Auto scaling group name.

func (GetScalingGroupsResultOutput) Tags

Tags of the scaling group.

func (GetScalingGroupsResultOutput) ToGetScalingGroupsResultOutput

func (o GetScalingGroupsResultOutput) ToGetScalingGroupsResultOutput() GetScalingGroupsResultOutput

func (GetScalingGroupsResultOutput) ToGetScalingGroupsResultOutputWithContext

func (o GetScalingGroupsResultOutput) ToGetScalingGroupsResultOutputWithContext(ctx context.Context) GetScalingGroupsResultOutput

type GetScalingGroupsScalingGroupList

type GetScalingGroupsScalingGroupList struct {
	// Filter results by launch configuration ID.
	ConfigurationId string `pulumi:"configurationId"`
	// The time when the AS group was created.
	CreateTime string `pulumi:"createTime"`
	// Default cooldown time of scaling group.
	DefaultCooldown int `pulumi:"defaultCooldown"`
	// The desired number of CVM instances.
	DesiredCapacity int `pulumi:"desiredCapacity"`
	// A list of application clb ids.
	ForwardBalancerIds []GetScalingGroupsScalingGroupListForwardBalancerId `pulumi:"forwardBalancerIds"`
	// Number of instance.
	InstanceCount int `pulumi:"instanceCount"`
	// A list of traditional clb ids which the CVM instances attached to.
	LoadBalancerIds []string `pulumi:"loadBalancerIds"`
	// The maximum number of CVM instances.
	MaxSize int `pulumi:"maxSize"`
	// The minimum number of CVM instances.
	MinSize int `pulumi:"minSize"`
	// Multi zone or subnet strategy, Valid values: PRIORITY and EQUALITY.
	MultiZoneSubnetPolicy string `pulumi:"multiZoneSubnetPolicy"`
	// ID of the project to which the scaling group belongs. Default value is 0.
	ProjectId int `pulumi:"projectId"`
	// A retry policy can be used when a creation fails.
	RetryPolicy string `pulumi:"retryPolicy"`
	// A specified scaling group ID used to query.
	ScalingGroupId string `pulumi:"scalingGroupId"`
	// A scaling group name used to query.
	ScalingGroupName string `pulumi:"scalingGroupName"`
	// Current status of a scaling group.
	Status string `pulumi:"status"`
	// A list of subnet IDs.
	SubnetIds []string `pulumi:"subnetIds"`
	// Tags used to query.
	Tags map[string]interface{} `pulumi:"tags"`
	// A policy used to select a CVM instance to be terminated from the scaling group.
	TerminationPolicies []string `pulumi:"terminationPolicies"`
	// ID of the vpc with which the instance is associated.
	VpcId string `pulumi:"vpcId"`
	// A list of available zones.
	Zones []string `pulumi:"zones"`
}

type GetScalingGroupsScalingGroupListArgs

type GetScalingGroupsScalingGroupListArgs struct {
	// Filter results by launch configuration ID.
	ConfigurationId pulumi.StringInput `pulumi:"configurationId"`
	// The time when the AS group was created.
	CreateTime pulumi.StringInput `pulumi:"createTime"`
	// Default cooldown time of scaling group.
	DefaultCooldown pulumi.IntInput `pulumi:"defaultCooldown"`
	// The desired number of CVM instances.
	DesiredCapacity pulumi.IntInput `pulumi:"desiredCapacity"`
	// A list of application clb ids.
	ForwardBalancerIds GetScalingGroupsScalingGroupListForwardBalancerIdArrayInput `pulumi:"forwardBalancerIds"`
	// Number of instance.
	InstanceCount pulumi.IntInput `pulumi:"instanceCount"`
	// A list of traditional clb ids which the CVM instances attached to.
	LoadBalancerIds pulumi.StringArrayInput `pulumi:"loadBalancerIds"`
	// The maximum number of CVM instances.
	MaxSize pulumi.IntInput `pulumi:"maxSize"`
	// The minimum number of CVM instances.
	MinSize pulumi.IntInput `pulumi:"minSize"`
	// Multi zone or subnet strategy, Valid values: PRIORITY and EQUALITY.
	MultiZoneSubnetPolicy pulumi.StringInput `pulumi:"multiZoneSubnetPolicy"`
	// ID of the project to which the scaling group belongs. Default value is 0.
	ProjectId pulumi.IntInput `pulumi:"projectId"`
	// A retry policy can be used when a creation fails.
	RetryPolicy pulumi.StringInput `pulumi:"retryPolicy"`
	// A specified scaling group ID used to query.
	ScalingGroupId pulumi.StringInput `pulumi:"scalingGroupId"`
	// A scaling group name used to query.
	ScalingGroupName pulumi.StringInput `pulumi:"scalingGroupName"`
	// Current status of a scaling group.
	Status pulumi.StringInput `pulumi:"status"`
	// A list of subnet IDs.
	SubnetIds pulumi.StringArrayInput `pulumi:"subnetIds"`
	// Tags used to query.
	Tags pulumi.MapInput `pulumi:"tags"`
	// A policy used to select a CVM instance to be terminated from the scaling group.
	TerminationPolicies pulumi.StringArrayInput `pulumi:"terminationPolicies"`
	// ID of the vpc with which the instance is associated.
	VpcId pulumi.StringInput `pulumi:"vpcId"`
	// A list of available zones.
	Zones pulumi.StringArrayInput `pulumi:"zones"`
}

func (GetScalingGroupsScalingGroupListArgs) ElementType

func (GetScalingGroupsScalingGroupListArgs) ToGetScalingGroupsScalingGroupListOutput

func (i GetScalingGroupsScalingGroupListArgs) ToGetScalingGroupsScalingGroupListOutput() GetScalingGroupsScalingGroupListOutput

func (GetScalingGroupsScalingGroupListArgs) ToGetScalingGroupsScalingGroupListOutputWithContext

func (i GetScalingGroupsScalingGroupListArgs) ToGetScalingGroupsScalingGroupListOutputWithContext(ctx context.Context) GetScalingGroupsScalingGroupListOutput

type GetScalingGroupsScalingGroupListArray

type GetScalingGroupsScalingGroupListArray []GetScalingGroupsScalingGroupListInput

func (GetScalingGroupsScalingGroupListArray) ElementType

func (GetScalingGroupsScalingGroupListArray) ToGetScalingGroupsScalingGroupListArrayOutput

func (i GetScalingGroupsScalingGroupListArray) ToGetScalingGroupsScalingGroupListArrayOutput() GetScalingGroupsScalingGroupListArrayOutput

func (GetScalingGroupsScalingGroupListArray) ToGetScalingGroupsScalingGroupListArrayOutputWithContext

func (i GetScalingGroupsScalingGroupListArray) ToGetScalingGroupsScalingGroupListArrayOutputWithContext(ctx context.Context) GetScalingGroupsScalingGroupListArrayOutput

type GetScalingGroupsScalingGroupListArrayInput

type GetScalingGroupsScalingGroupListArrayInput interface {
	pulumi.Input

	ToGetScalingGroupsScalingGroupListArrayOutput() GetScalingGroupsScalingGroupListArrayOutput
	ToGetScalingGroupsScalingGroupListArrayOutputWithContext(context.Context) GetScalingGroupsScalingGroupListArrayOutput
}

GetScalingGroupsScalingGroupListArrayInput is an input type that accepts GetScalingGroupsScalingGroupListArray and GetScalingGroupsScalingGroupListArrayOutput values. You can construct a concrete instance of `GetScalingGroupsScalingGroupListArrayInput` via:

GetScalingGroupsScalingGroupListArray{ GetScalingGroupsScalingGroupListArgs{...} }

type GetScalingGroupsScalingGroupListArrayOutput

type GetScalingGroupsScalingGroupListArrayOutput struct{ *pulumi.OutputState }

func (GetScalingGroupsScalingGroupListArrayOutput) ElementType

func (GetScalingGroupsScalingGroupListArrayOutput) Index

func (GetScalingGroupsScalingGroupListArrayOutput) ToGetScalingGroupsScalingGroupListArrayOutput

func (o GetScalingGroupsScalingGroupListArrayOutput) ToGetScalingGroupsScalingGroupListArrayOutput() GetScalingGroupsScalingGroupListArrayOutput

func (GetScalingGroupsScalingGroupListArrayOutput) ToGetScalingGroupsScalingGroupListArrayOutputWithContext

func (o GetScalingGroupsScalingGroupListArrayOutput) ToGetScalingGroupsScalingGroupListArrayOutputWithContext(ctx context.Context) GetScalingGroupsScalingGroupListArrayOutput

type GetScalingGroupsScalingGroupListForwardBalancerId

type GetScalingGroupsScalingGroupListForwardBalancerId struct {
	// Listener ID for application load balancers.
	ListenerId string `pulumi:"listenerId"`
	// ID of available load balancers.
	LoadBalancerId string `pulumi:"loadBalancerId"`
	// ID of forwarding rules.
	LocationId string `pulumi:"locationId"`
	// Attribute list of target rules.
	TargetAttributes []GetScalingGroupsScalingGroupListForwardBalancerIdTargetAttribute `pulumi:"targetAttributes"`
}

type GetScalingGroupsScalingGroupListForwardBalancerIdArgs

type GetScalingGroupsScalingGroupListForwardBalancerIdArgs struct {
	// Listener ID for application load balancers.
	ListenerId pulumi.StringInput `pulumi:"listenerId"`
	// ID of available load balancers.
	LoadBalancerId pulumi.StringInput `pulumi:"loadBalancerId"`
	// ID of forwarding rules.
	LocationId pulumi.StringInput `pulumi:"locationId"`
	// Attribute list of target rules.
	TargetAttributes GetScalingGroupsScalingGroupListForwardBalancerIdTargetAttributeArrayInput `pulumi:"targetAttributes"`
}

func (GetScalingGroupsScalingGroupListForwardBalancerIdArgs) ElementType

func (GetScalingGroupsScalingGroupListForwardBalancerIdArgs) ToGetScalingGroupsScalingGroupListForwardBalancerIdOutput

func (i GetScalingGroupsScalingGroupListForwardBalancerIdArgs) ToGetScalingGroupsScalingGroupListForwardBalancerIdOutput() GetScalingGroupsScalingGroupListForwardBalancerIdOutput

func (GetScalingGroupsScalingGroupListForwardBalancerIdArgs) ToGetScalingGroupsScalingGroupListForwardBalancerIdOutputWithContext

func (i GetScalingGroupsScalingGroupListForwardBalancerIdArgs) ToGetScalingGroupsScalingGroupListForwardBalancerIdOutputWithContext(ctx context.Context) GetScalingGroupsScalingGroupListForwardBalancerIdOutput

type GetScalingGroupsScalingGroupListForwardBalancerIdArray

type GetScalingGroupsScalingGroupListForwardBalancerIdArray []GetScalingGroupsScalingGroupListForwardBalancerIdInput

func (GetScalingGroupsScalingGroupListForwardBalancerIdArray) ElementType

func (GetScalingGroupsScalingGroupListForwardBalancerIdArray) ToGetScalingGroupsScalingGroupListForwardBalancerIdArrayOutput

func (i GetScalingGroupsScalingGroupListForwardBalancerIdArray) ToGetScalingGroupsScalingGroupListForwardBalancerIdArrayOutput() GetScalingGroupsScalingGroupListForwardBalancerIdArrayOutput

func (GetScalingGroupsScalingGroupListForwardBalancerIdArray) ToGetScalingGroupsScalingGroupListForwardBalancerIdArrayOutputWithContext

func (i GetScalingGroupsScalingGroupListForwardBalancerIdArray) ToGetScalingGroupsScalingGroupListForwardBalancerIdArrayOutputWithContext(ctx context.Context) GetScalingGroupsScalingGroupListForwardBalancerIdArrayOutput

type GetScalingGroupsScalingGroupListForwardBalancerIdArrayInput

type GetScalingGroupsScalingGroupListForwardBalancerIdArrayInput interface {
	pulumi.Input

	ToGetScalingGroupsScalingGroupListForwardBalancerIdArrayOutput() GetScalingGroupsScalingGroupListForwardBalancerIdArrayOutput
	ToGetScalingGroupsScalingGroupListForwardBalancerIdArrayOutputWithContext(context.Context) GetScalingGroupsScalingGroupListForwardBalancerIdArrayOutput
}

GetScalingGroupsScalingGroupListForwardBalancerIdArrayInput is an input type that accepts GetScalingGroupsScalingGroupListForwardBalancerIdArray and GetScalingGroupsScalingGroupListForwardBalancerIdArrayOutput values. You can construct a concrete instance of `GetScalingGroupsScalingGroupListForwardBalancerIdArrayInput` via:

GetScalingGroupsScalingGroupListForwardBalancerIdArray{ GetScalingGroupsScalingGroupListForwardBalancerIdArgs{...} }

type GetScalingGroupsScalingGroupListForwardBalancerIdArrayOutput

type GetScalingGroupsScalingGroupListForwardBalancerIdArrayOutput struct{ *pulumi.OutputState }

func (GetScalingGroupsScalingGroupListForwardBalancerIdArrayOutput) ElementType

func (GetScalingGroupsScalingGroupListForwardBalancerIdArrayOutput) Index

func (GetScalingGroupsScalingGroupListForwardBalancerIdArrayOutput) ToGetScalingGroupsScalingGroupListForwardBalancerIdArrayOutput

func (GetScalingGroupsScalingGroupListForwardBalancerIdArrayOutput) ToGetScalingGroupsScalingGroupListForwardBalancerIdArrayOutputWithContext

func (o GetScalingGroupsScalingGroupListForwardBalancerIdArrayOutput) ToGetScalingGroupsScalingGroupListForwardBalancerIdArrayOutputWithContext(ctx context.Context) GetScalingGroupsScalingGroupListForwardBalancerIdArrayOutput

type GetScalingGroupsScalingGroupListForwardBalancerIdInput

type GetScalingGroupsScalingGroupListForwardBalancerIdInput interface {
	pulumi.Input

	ToGetScalingGroupsScalingGroupListForwardBalancerIdOutput() GetScalingGroupsScalingGroupListForwardBalancerIdOutput
	ToGetScalingGroupsScalingGroupListForwardBalancerIdOutputWithContext(context.Context) GetScalingGroupsScalingGroupListForwardBalancerIdOutput
}

GetScalingGroupsScalingGroupListForwardBalancerIdInput is an input type that accepts GetScalingGroupsScalingGroupListForwardBalancerIdArgs and GetScalingGroupsScalingGroupListForwardBalancerIdOutput values. You can construct a concrete instance of `GetScalingGroupsScalingGroupListForwardBalancerIdInput` via:

GetScalingGroupsScalingGroupListForwardBalancerIdArgs{...}

type GetScalingGroupsScalingGroupListForwardBalancerIdOutput

type GetScalingGroupsScalingGroupListForwardBalancerIdOutput struct{ *pulumi.OutputState }

func (GetScalingGroupsScalingGroupListForwardBalancerIdOutput) ElementType

func (GetScalingGroupsScalingGroupListForwardBalancerIdOutput) ListenerId

Listener ID for application load balancers.

func (GetScalingGroupsScalingGroupListForwardBalancerIdOutput) LoadBalancerId

ID of available load balancers.

func (GetScalingGroupsScalingGroupListForwardBalancerIdOutput) LocationId

ID of forwarding rules.

func (GetScalingGroupsScalingGroupListForwardBalancerIdOutput) TargetAttributes

Attribute list of target rules.

func (GetScalingGroupsScalingGroupListForwardBalancerIdOutput) ToGetScalingGroupsScalingGroupListForwardBalancerIdOutput

func (GetScalingGroupsScalingGroupListForwardBalancerIdOutput) ToGetScalingGroupsScalingGroupListForwardBalancerIdOutputWithContext

func (o GetScalingGroupsScalingGroupListForwardBalancerIdOutput) ToGetScalingGroupsScalingGroupListForwardBalancerIdOutputWithContext(ctx context.Context) GetScalingGroupsScalingGroupListForwardBalancerIdOutput

type GetScalingGroupsScalingGroupListForwardBalancerIdTargetAttribute

type GetScalingGroupsScalingGroupListForwardBalancerIdTargetAttribute struct {
	// Port number.
	Port int `pulumi:"port"`
	// Weight.
	Weight int `pulumi:"weight"`
}

type GetScalingGroupsScalingGroupListForwardBalancerIdTargetAttributeArgs

type GetScalingGroupsScalingGroupListForwardBalancerIdTargetAttributeArgs struct {
	// Port number.
	Port pulumi.IntInput `pulumi:"port"`
	// Weight.
	Weight pulumi.IntInput `pulumi:"weight"`
}

func (GetScalingGroupsScalingGroupListForwardBalancerIdTargetAttributeArgs) ElementType

func (GetScalingGroupsScalingGroupListForwardBalancerIdTargetAttributeArgs) ToGetScalingGroupsScalingGroupListForwardBalancerIdTargetAttributeOutput

func (GetScalingGroupsScalingGroupListForwardBalancerIdTargetAttributeArgs) ToGetScalingGroupsScalingGroupListForwardBalancerIdTargetAttributeOutputWithContext

func (i GetScalingGroupsScalingGroupListForwardBalancerIdTargetAttributeArgs) ToGetScalingGroupsScalingGroupListForwardBalancerIdTargetAttributeOutputWithContext(ctx context.Context) GetScalingGroupsScalingGroupListForwardBalancerIdTargetAttributeOutput

type GetScalingGroupsScalingGroupListForwardBalancerIdTargetAttributeArray

type GetScalingGroupsScalingGroupListForwardBalancerIdTargetAttributeArray []GetScalingGroupsScalingGroupListForwardBalancerIdTargetAttributeInput

func (GetScalingGroupsScalingGroupListForwardBalancerIdTargetAttributeArray) ElementType

func (GetScalingGroupsScalingGroupListForwardBalancerIdTargetAttributeArray) ToGetScalingGroupsScalingGroupListForwardBalancerIdTargetAttributeArrayOutput

func (GetScalingGroupsScalingGroupListForwardBalancerIdTargetAttributeArray) ToGetScalingGroupsScalingGroupListForwardBalancerIdTargetAttributeArrayOutputWithContext

func (i GetScalingGroupsScalingGroupListForwardBalancerIdTargetAttributeArray) ToGetScalingGroupsScalingGroupListForwardBalancerIdTargetAttributeArrayOutputWithContext(ctx context.Context) GetScalingGroupsScalingGroupListForwardBalancerIdTargetAttributeArrayOutput

type GetScalingGroupsScalingGroupListForwardBalancerIdTargetAttributeArrayInput

type GetScalingGroupsScalingGroupListForwardBalancerIdTargetAttributeArrayInput interface {
	pulumi.Input

	ToGetScalingGroupsScalingGroupListForwardBalancerIdTargetAttributeArrayOutput() GetScalingGroupsScalingGroupListForwardBalancerIdTargetAttributeArrayOutput
	ToGetScalingGroupsScalingGroupListForwardBalancerIdTargetAttributeArrayOutputWithContext(context.Context) GetScalingGroupsScalingGroupListForwardBalancerIdTargetAttributeArrayOutput
}

GetScalingGroupsScalingGroupListForwardBalancerIdTargetAttributeArrayInput is an input type that accepts GetScalingGroupsScalingGroupListForwardBalancerIdTargetAttributeArray and GetScalingGroupsScalingGroupListForwardBalancerIdTargetAttributeArrayOutput values. You can construct a concrete instance of `GetScalingGroupsScalingGroupListForwardBalancerIdTargetAttributeArrayInput` via:

GetScalingGroupsScalingGroupListForwardBalancerIdTargetAttributeArray{ GetScalingGroupsScalingGroupListForwardBalancerIdTargetAttributeArgs{...} }

type GetScalingGroupsScalingGroupListForwardBalancerIdTargetAttributeArrayOutput

type GetScalingGroupsScalingGroupListForwardBalancerIdTargetAttributeArrayOutput struct{ *pulumi.OutputState }

func (GetScalingGroupsScalingGroupListForwardBalancerIdTargetAttributeArrayOutput) ElementType

func (GetScalingGroupsScalingGroupListForwardBalancerIdTargetAttributeArrayOutput) ToGetScalingGroupsScalingGroupListForwardBalancerIdTargetAttributeArrayOutput

func (GetScalingGroupsScalingGroupListForwardBalancerIdTargetAttributeArrayOutput) ToGetScalingGroupsScalingGroupListForwardBalancerIdTargetAttributeArrayOutputWithContext

type GetScalingGroupsScalingGroupListForwardBalancerIdTargetAttributeInput

type GetScalingGroupsScalingGroupListForwardBalancerIdTargetAttributeInput interface {
	pulumi.Input

	ToGetScalingGroupsScalingGroupListForwardBalancerIdTargetAttributeOutput() GetScalingGroupsScalingGroupListForwardBalancerIdTargetAttributeOutput
	ToGetScalingGroupsScalingGroupListForwardBalancerIdTargetAttributeOutputWithContext(context.Context) GetScalingGroupsScalingGroupListForwardBalancerIdTargetAttributeOutput
}

GetScalingGroupsScalingGroupListForwardBalancerIdTargetAttributeInput is an input type that accepts GetScalingGroupsScalingGroupListForwardBalancerIdTargetAttributeArgs and GetScalingGroupsScalingGroupListForwardBalancerIdTargetAttributeOutput values. You can construct a concrete instance of `GetScalingGroupsScalingGroupListForwardBalancerIdTargetAttributeInput` via:

GetScalingGroupsScalingGroupListForwardBalancerIdTargetAttributeArgs{...}

type GetScalingGroupsScalingGroupListForwardBalancerIdTargetAttributeOutput

type GetScalingGroupsScalingGroupListForwardBalancerIdTargetAttributeOutput struct{ *pulumi.OutputState }

func (GetScalingGroupsScalingGroupListForwardBalancerIdTargetAttributeOutput) ElementType

func (GetScalingGroupsScalingGroupListForwardBalancerIdTargetAttributeOutput) Port

Port number.

func (GetScalingGroupsScalingGroupListForwardBalancerIdTargetAttributeOutput) ToGetScalingGroupsScalingGroupListForwardBalancerIdTargetAttributeOutput

func (GetScalingGroupsScalingGroupListForwardBalancerIdTargetAttributeOutput) ToGetScalingGroupsScalingGroupListForwardBalancerIdTargetAttributeOutputWithContext

func (o GetScalingGroupsScalingGroupListForwardBalancerIdTargetAttributeOutput) ToGetScalingGroupsScalingGroupListForwardBalancerIdTargetAttributeOutputWithContext(ctx context.Context) GetScalingGroupsScalingGroupListForwardBalancerIdTargetAttributeOutput

func (GetScalingGroupsScalingGroupListForwardBalancerIdTargetAttributeOutput) Weight

Weight.

type GetScalingGroupsScalingGroupListInput

type GetScalingGroupsScalingGroupListInput interface {
	pulumi.Input

	ToGetScalingGroupsScalingGroupListOutput() GetScalingGroupsScalingGroupListOutput
	ToGetScalingGroupsScalingGroupListOutputWithContext(context.Context) GetScalingGroupsScalingGroupListOutput
}

GetScalingGroupsScalingGroupListInput is an input type that accepts GetScalingGroupsScalingGroupListArgs and GetScalingGroupsScalingGroupListOutput values. You can construct a concrete instance of `GetScalingGroupsScalingGroupListInput` via:

GetScalingGroupsScalingGroupListArgs{...}

type GetScalingGroupsScalingGroupListOutput

type GetScalingGroupsScalingGroupListOutput struct{ *pulumi.OutputState }

func (GetScalingGroupsScalingGroupListOutput) ConfigurationId

Filter results by launch configuration ID.

func (GetScalingGroupsScalingGroupListOutput) CreateTime

The time when the AS group was created.

func (GetScalingGroupsScalingGroupListOutput) DefaultCooldown

Default cooldown time of scaling group.

func (GetScalingGroupsScalingGroupListOutput) DesiredCapacity

The desired number of CVM instances.

func (GetScalingGroupsScalingGroupListOutput) ElementType

func (GetScalingGroupsScalingGroupListOutput) ForwardBalancerIds

A list of application clb ids.

func (GetScalingGroupsScalingGroupListOutput) InstanceCount

Number of instance.

func (GetScalingGroupsScalingGroupListOutput) LoadBalancerIds

A list of traditional clb ids which the CVM instances attached to.

func (GetScalingGroupsScalingGroupListOutput) MaxSize

The maximum number of CVM instances.

func (GetScalingGroupsScalingGroupListOutput) MinSize

The minimum number of CVM instances.

func (GetScalingGroupsScalingGroupListOutput) MultiZoneSubnetPolicy

Multi zone or subnet strategy, Valid values: PRIORITY and EQUALITY.

func (GetScalingGroupsScalingGroupListOutput) ProjectId

ID of the project to which the scaling group belongs. Default value is 0.

func (GetScalingGroupsScalingGroupListOutput) RetryPolicy

A retry policy can be used when a creation fails.

func (GetScalingGroupsScalingGroupListOutput) ScalingGroupId

A specified scaling group ID used to query.

func (GetScalingGroupsScalingGroupListOutput) ScalingGroupName

A scaling group name used to query.

func (GetScalingGroupsScalingGroupListOutput) Status

Current status of a scaling group.

func (GetScalingGroupsScalingGroupListOutput) SubnetIds

A list of subnet IDs.

func (GetScalingGroupsScalingGroupListOutput) Tags

Tags used to query.

func (GetScalingGroupsScalingGroupListOutput) TerminationPolicies

A policy used to select a CVM instance to be terminated from the scaling group.

func (GetScalingGroupsScalingGroupListOutput) ToGetScalingGroupsScalingGroupListOutput

func (o GetScalingGroupsScalingGroupListOutput) ToGetScalingGroupsScalingGroupListOutput() GetScalingGroupsScalingGroupListOutput

func (GetScalingGroupsScalingGroupListOutput) ToGetScalingGroupsScalingGroupListOutputWithContext

func (o GetScalingGroupsScalingGroupListOutput) ToGetScalingGroupsScalingGroupListOutputWithContext(ctx context.Context) GetScalingGroupsScalingGroupListOutput

func (GetScalingGroupsScalingGroupListOutput) VpcId

ID of the vpc with which the instance is associated.

func (GetScalingGroupsScalingGroupListOutput) Zones

A list of available zones.

type GetScalingPoliciesArgs

type GetScalingPoliciesArgs struct {
	// Scaling policy name.
	PolicyName *string `pulumi:"policyName"`
	// Used to save results.
	ResultOutputFile *string `pulumi:"resultOutputFile"`
	// Scaling group ID.
	ScalingGroupId *string `pulumi:"scalingGroupId"`
	// Scaling policy ID.
	ScalingPolicyId *string `pulumi:"scalingPolicyId"`
}

A collection of arguments for invoking getScalingPolicies.

type GetScalingPoliciesOutputArgs

type GetScalingPoliciesOutputArgs struct {
	// Scaling policy name.
	PolicyName pulumi.StringPtrInput `pulumi:"policyName"`
	// Used to save results.
	ResultOutputFile pulumi.StringPtrInput `pulumi:"resultOutputFile"`
	// Scaling group ID.
	ScalingGroupId pulumi.StringPtrInput `pulumi:"scalingGroupId"`
	// Scaling policy ID.
	ScalingPolicyId pulumi.StringPtrInput `pulumi:"scalingPolicyId"`
}

A collection of arguments for invoking getScalingPolicies.

func (GetScalingPoliciesOutputArgs) ElementType

type GetScalingPoliciesResult

type GetScalingPoliciesResult struct {
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// Scaling policy name.
	PolicyName       *string `pulumi:"policyName"`
	ResultOutputFile *string `pulumi:"resultOutputFile"`
	// Scaling policy ID.
	ScalingGroupId  *string `pulumi:"scalingGroupId"`
	ScalingPolicyId *string `pulumi:"scalingPolicyId"`
	// A list of scaling policy. Each element contains the following attributes:
	ScalingPolicyLists []GetScalingPoliciesScalingPolicyList `pulumi:"scalingPolicyLists"`
}

A collection of values returned by getScalingPolicies.

func GetScalingPolicies

func GetScalingPolicies(ctx *pulumi.Context, args *GetScalingPoliciesArgs, opts ...pulumi.InvokeOption) (*GetScalingPoliciesResult, error)

Use this data source to query detailed information of scaling policy.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-tencentcloud/sdk/go/tencentcloud/As"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/tencentcloudstack/pulumi-tencentcloud/sdk/go/tencentcloud/As"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := As.GetScalingPolicies(ctx, &as.GetScalingPoliciesArgs{
			ResultOutputFile: pulumi.StringRef("mytestpath"),
			ScalingPolicyId:  pulumi.StringRef("asg-mvyghxu7"),
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetScalingPoliciesResultOutput

type GetScalingPoliciesResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getScalingPolicies.

func (GetScalingPoliciesResultOutput) ElementType

func (GetScalingPoliciesResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetScalingPoliciesResultOutput) PolicyName

Scaling policy name.

func (GetScalingPoliciesResultOutput) ResultOutputFile

func (GetScalingPoliciesResultOutput) ScalingGroupId

Scaling policy ID.

func (GetScalingPoliciesResultOutput) ScalingPolicyId

func (GetScalingPoliciesResultOutput) ScalingPolicyLists

A list of scaling policy. Each element contains the following attributes:

func (GetScalingPoliciesResultOutput) ToGetScalingPoliciesResultOutput

func (o GetScalingPoliciesResultOutput) ToGetScalingPoliciesResultOutput() GetScalingPoliciesResultOutput

func (GetScalingPoliciesResultOutput) ToGetScalingPoliciesResultOutputWithContext

func (o GetScalingPoliciesResultOutput) ToGetScalingPoliciesResultOutputWithContext(ctx context.Context) GetScalingPoliciesResultOutput

type GetScalingPoliciesScalingPolicyList

type GetScalingPoliciesScalingPolicyList struct {
	// Adjustment type of the scaling rule.
	AdjustmentType string `pulumi:"adjustmentType"`
	// Adjustment value of the scaling rule.
	AdjustmentValue int `pulumi:"adjustmentValue"`
	// Comparison operator.
	ComparisonOperator string `pulumi:"comparisonOperator"`
	// Retry times.
	ContinuousTime int `pulumi:"continuousTime"`
	// Cool down time of the scaling rule.
	Cooldown int `pulumi:"cooldown"`
	// Name of an indicator.
	MetricName string `pulumi:"metricName"`
	// Users need to be notified when an alarm is triggered.
	NotificationUserGroupIds []string `pulumi:"notificationUserGroupIds"`
	// Time period in second.
	Period int `pulumi:"period"`
	// Scaling policy name.
	PolicyName string `pulumi:"policyName"`
	// Scaling group ID.
	ScalingGroupId string `pulumi:"scalingGroupId"`
	// Statistic types.
	Statistic string `pulumi:"statistic"`
	// Alarm threshold.
	Threshold int `pulumi:"threshold"`
}

type GetScalingPoliciesScalingPolicyListArgs

type GetScalingPoliciesScalingPolicyListArgs struct {
	// Adjustment type of the scaling rule.
	AdjustmentType pulumi.StringInput `pulumi:"adjustmentType"`
	// Adjustment value of the scaling rule.
	AdjustmentValue pulumi.IntInput `pulumi:"adjustmentValue"`
	// Comparison operator.
	ComparisonOperator pulumi.StringInput `pulumi:"comparisonOperator"`
	// Retry times.
	ContinuousTime pulumi.IntInput `pulumi:"continuousTime"`
	// Cool down time of the scaling rule.
	Cooldown pulumi.IntInput `pulumi:"cooldown"`
	// Name of an indicator.
	MetricName pulumi.StringInput `pulumi:"metricName"`
	// Users need to be notified when an alarm is triggered.
	NotificationUserGroupIds pulumi.StringArrayInput `pulumi:"notificationUserGroupIds"`
	// Time period in second.
	Period pulumi.IntInput `pulumi:"period"`
	// Scaling policy name.
	PolicyName pulumi.StringInput `pulumi:"policyName"`
	// Scaling group ID.
	ScalingGroupId pulumi.StringInput `pulumi:"scalingGroupId"`
	// Statistic types.
	Statistic pulumi.StringInput `pulumi:"statistic"`
	// Alarm threshold.
	Threshold pulumi.IntInput `pulumi:"threshold"`
}

func (GetScalingPoliciesScalingPolicyListArgs) ElementType

func (GetScalingPoliciesScalingPolicyListArgs) ToGetScalingPoliciesScalingPolicyListOutput

func (i GetScalingPoliciesScalingPolicyListArgs) ToGetScalingPoliciesScalingPolicyListOutput() GetScalingPoliciesScalingPolicyListOutput

func (GetScalingPoliciesScalingPolicyListArgs) ToGetScalingPoliciesScalingPolicyListOutputWithContext

func (i GetScalingPoliciesScalingPolicyListArgs) ToGetScalingPoliciesScalingPolicyListOutputWithContext(ctx context.Context) GetScalingPoliciesScalingPolicyListOutput

type GetScalingPoliciesScalingPolicyListArray

type GetScalingPoliciesScalingPolicyListArray []GetScalingPoliciesScalingPolicyListInput

func (GetScalingPoliciesScalingPolicyListArray) ElementType

func (GetScalingPoliciesScalingPolicyListArray) ToGetScalingPoliciesScalingPolicyListArrayOutput

func (i GetScalingPoliciesScalingPolicyListArray) ToGetScalingPoliciesScalingPolicyListArrayOutput() GetScalingPoliciesScalingPolicyListArrayOutput

func (GetScalingPoliciesScalingPolicyListArray) ToGetScalingPoliciesScalingPolicyListArrayOutputWithContext

func (i GetScalingPoliciesScalingPolicyListArray) ToGetScalingPoliciesScalingPolicyListArrayOutputWithContext(ctx context.Context) GetScalingPoliciesScalingPolicyListArrayOutput

type GetScalingPoliciesScalingPolicyListArrayInput

type GetScalingPoliciesScalingPolicyListArrayInput interface {
	pulumi.Input

	ToGetScalingPoliciesScalingPolicyListArrayOutput() GetScalingPoliciesScalingPolicyListArrayOutput
	ToGetScalingPoliciesScalingPolicyListArrayOutputWithContext(context.Context) GetScalingPoliciesScalingPolicyListArrayOutput
}

GetScalingPoliciesScalingPolicyListArrayInput is an input type that accepts GetScalingPoliciesScalingPolicyListArray and GetScalingPoliciesScalingPolicyListArrayOutput values. You can construct a concrete instance of `GetScalingPoliciesScalingPolicyListArrayInput` via:

GetScalingPoliciesScalingPolicyListArray{ GetScalingPoliciesScalingPolicyListArgs{...} }

type GetScalingPoliciesScalingPolicyListArrayOutput

type GetScalingPoliciesScalingPolicyListArrayOutput struct{ *pulumi.OutputState }

func (GetScalingPoliciesScalingPolicyListArrayOutput) ElementType

func (GetScalingPoliciesScalingPolicyListArrayOutput) Index

func (GetScalingPoliciesScalingPolicyListArrayOutput) ToGetScalingPoliciesScalingPolicyListArrayOutput

func (o GetScalingPoliciesScalingPolicyListArrayOutput) ToGetScalingPoliciesScalingPolicyListArrayOutput() GetScalingPoliciesScalingPolicyListArrayOutput

func (GetScalingPoliciesScalingPolicyListArrayOutput) ToGetScalingPoliciesScalingPolicyListArrayOutputWithContext

func (o GetScalingPoliciesScalingPolicyListArrayOutput) ToGetScalingPoliciesScalingPolicyListArrayOutputWithContext(ctx context.Context) GetScalingPoliciesScalingPolicyListArrayOutput

type GetScalingPoliciesScalingPolicyListInput

type GetScalingPoliciesScalingPolicyListInput interface {
	pulumi.Input

	ToGetScalingPoliciesScalingPolicyListOutput() GetScalingPoliciesScalingPolicyListOutput
	ToGetScalingPoliciesScalingPolicyListOutputWithContext(context.Context) GetScalingPoliciesScalingPolicyListOutput
}

GetScalingPoliciesScalingPolicyListInput is an input type that accepts GetScalingPoliciesScalingPolicyListArgs and GetScalingPoliciesScalingPolicyListOutput values. You can construct a concrete instance of `GetScalingPoliciesScalingPolicyListInput` via:

GetScalingPoliciesScalingPolicyListArgs{...}

type GetScalingPoliciesScalingPolicyListOutput

type GetScalingPoliciesScalingPolicyListOutput struct{ *pulumi.OutputState }

func (GetScalingPoliciesScalingPolicyListOutput) AdjustmentType

Adjustment type of the scaling rule.

func (GetScalingPoliciesScalingPolicyListOutput) AdjustmentValue

Adjustment value of the scaling rule.

func (GetScalingPoliciesScalingPolicyListOutput) ComparisonOperator

Comparison operator.

func (GetScalingPoliciesScalingPolicyListOutput) ContinuousTime

Retry times.

func (GetScalingPoliciesScalingPolicyListOutput) Cooldown

Cool down time of the scaling rule.

func (GetScalingPoliciesScalingPolicyListOutput) ElementType

func (GetScalingPoliciesScalingPolicyListOutput) MetricName

Name of an indicator.

func (GetScalingPoliciesScalingPolicyListOutput) NotificationUserGroupIds

Users need to be notified when an alarm is triggered.

func (GetScalingPoliciesScalingPolicyListOutput) Period

Time period in second.

func (GetScalingPoliciesScalingPolicyListOutput) PolicyName

Scaling policy name.

func (GetScalingPoliciesScalingPolicyListOutput) ScalingGroupId

Scaling group ID.

func (GetScalingPoliciesScalingPolicyListOutput) Statistic

Statistic types.

func (GetScalingPoliciesScalingPolicyListOutput) Threshold

Alarm threshold.

func (GetScalingPoliciesScalingPolicyListOutput) ToGetScalingPoliciesScalingPolicyListOutput

func (o GetScalingPoliciesScalingPolicyListOutput) ToGetScalingPoliciesScalingPolicyListOutput() GetScalingPoliciesScalingPolicyListOutput

func (GetScalingPoliciesScalingPolicyListOutput) ToGetScalingPoliciesScalingPolicyListOutputWithContext

func (o GetScalingPoliciesScalingPolicyListOutput) ToGetScalingPoliciesScalingPolicyListOutputWithContext(ctx context.Context) GetScalingPoliciesScalingPolicyListOutput

type LifecycleHook

type LifecycleHook struct {
	pulumi.CustomResourceState

	// Defines the action the AS group should take when the lifecycle hook timeout elapses or if an unexpected failure occurs. Valid values: `CONTINUE` and `ABANDON`. The default value is `CONTINUE`.
	DefaultResult pulumi.StringPtrOutput `pulumi:"defaultResult"`
	// Defines the amount of time, in seconds, that can elapse before the lifecycle hook times out. Valid value ranges: (30~7200). and default value is `300`.
	HeartbeatTimeout pulumi.IntPtrOutput `pulumi:"heartbeatTimeout"`
	// The name of the lifecycle hook.
	LifecycleHookName pulumi.StringOutput `pulumi:"lifecycleHookName"`
	// The instance state to which you want to attach the lifecycle hook. Valid values: `INSTANCE_LAUNCHING` and `INSTANCE_TERMINATING`.
	LifecycleTransition pulumi.StringOutput `pulumi:"lifecycleTransition"`
	// Contains additional information that you want to include any time AS sends a message to the notification target.
	NotificationMetadata pulumi.StringPtrOutput `pulumi:"notificationMetadata"`
	// For CMQ_QUEUE type, a name of queue must be set.
	NotificationQueueName pulumi.StringPtrOutput `pulumi:"notificationQueueName"`
	// Target type. Valid values: `CMQ_QUEUE`, `CMQ_TOPIC`.
	NotificationTargetType pulumi.StringPtrOutput `pulumi:"notificationTargetType"`
	// For CMQ_TOPIC type, a name of topic must be set.
	NotificationTopicName pulumi.StringPtrOutput `pulumi:"notificationTopicName"`
	// ID of a scaling group.
	ScalingGroupId pulumi.StringOutput `pulumi:"scalingGroupId"`
}

Provides a resource for an AS (Auto scaling) lifecycle hook.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/tencentcloudstack/pulumi-tencentcloud/sdk/go/tencentcloud/As"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := As.NewLifecycleHook(ctx, "lifecycleHook", &As.LifecycleHookArgs{
			DefaultResult:          pulumi.String("CONTINUE"),
			HeartbeatTimeout:       pulumi.Int(500),
			LifecycleHookName:      pulumi.String("tf-as-lifecycle-hook"),
			LifecycleTransition:    pulumi.String("INSTANCE_LAUNCHING"),
			NotificationMetadata:   pulumi.String("tf test"),
			NotificationQueueName:  pulumi.String("lifcyclehook"),
			NotificationTargetType: pulumi.String("CMQ_QUEUE"),
			ScalingGroupId:         pulumi.String("sg-12af45"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetLifecycleHook

func GetLifecycleHook(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *LifecycleHookState, opts ...pulumi.ResourceOption) (*LifecycleHook, error)

GetLifecycleHook gets an existing LifecycleHook 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 NewLifecycleHook

func NewLifecycleHook(ctx *pulumi.Context,
	name string, args *LifecycleHookArgs, opts ...pulumi.ResourceOption) (*LifecycleHook, error)

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

func (*LifecycleHook) ElementType

func (*LifecycleHook) ElementType() reflect.Type

func (*LifecycleHook) ToLifecycleHookOutput

func (i *LifecycleHook) ToLifecycleHookOutput() LifecycleHookOutput

func (*LifecycleHook) ToLifecycleHookOutputWithContext

func (i *LifecycleHook) ToLifecycleHookOutputWithContext(ctx context.Context) LifecycleHookOutput

type LifecycleHookArgs

type LifecycleHookArgs struct {
	// Defines the action the AS group should take when the lifecycle hook timeout elapses or if an unexpected failure occurs. Valid values: `CONTINUE` and `ABANDON`. The default value is `CONTINUE`.
	DefaultResult pulumi.StringPtrInput
	// Defines the amount of time, in seconds, that can elapse before the lifecycle hook times out. Valid value ranges: (30~7200). and default value is `300`.
	HeartbeatTimeout pulumi.IntPtrInput
	// The name of the lifecycle hook.
	LifecycleHookName pulumi.StringInput
	// The instance state to which you want to attach the lifecycle hook. Valid values: `INSTANCE_LAUNCHING` and `INSTANCE_TERMINATING`.
	LifecycleTransition pulumi.StringInput
	// Contains additional information that you want to include any time AS sends a message to the notification target.
	NotificationMetadata pulumi.StringPtrInput
	// For CMQ_QUEUE type, a name of queue must be set.
	NotificationQueueName pulumi.StringPtrInput
	// Target type. Valid values: `CMQ_QUEUE`, `CMQ_TOPIC`.
	NotificationTargetType pulumi.StringPtrInput
	// For CMQ_TOPIC type, a name of topic must be set.
	NotificationTopicName pulumi.StringPtrInput
	// ID of a scaling group.
	ScalingGroupId pulumi.StringInput
}

The set of arguments for constructing a LifecycleHook resource.

func (LifecycleHookArgs) ElementType

func (LifecycleHookArgs) ElementType() reflect.Type

type LifecycleHookArray

type LifecycleHookArray []LifecycleHookInput

func (LifecycleHookArray) ElementType

func (LifecycleHookArray) ElementType() reflect.Type

func (LifecycleHookArray) ToLifecycleHookArrayOutput

func (i LifecycleHookArray) ToLifecycleHookArrayOutput() LifecycleHookArrayOutput

func (LifecycleHookArray) ToLifecycleHookArrayOutputWithContext

func (i LifecycleHookArray) ToLifecycleHookArrayOutputWithContext(ctx context.Context) LifecycleHookArrayOutput

type LifecycleHookArrayInput

type LifecycleHookArrayInput interface {
	pulumi.Input

	ToLifecycleHookArrayOutput() LifecycleHookArrayOutput
	ToLifecycleHookArrayOutputWithContext(context.Context) LifecycleHookArrayOutput
}

LifecycleHookArrayInput is an input type that accepts LifecycleHookArray and LifecycleHookArrayOutput values. You can construct a concrete instance of `LifecycleHookArrayInput` via:

LifecycleHookArray{ LifecycleHookArgs{...} }

type LifecycleHookArrayOutput

type LifecycleHookArrayOutput struct{ *pulumi.OutputState }

func (LifecycleHookArrayOutput) ElementType

func (LifecycleHookArrayOutput) ElementType() reflect.Type

func (LifecycleHookArrayOutput) Index

func (LifecycleHookArrayOutput) ToLifecycleHookArrayOutput

func (o LifecycleHookArrayOutput) ToLifecycleHookArrayOutput() LifecycleHookArrayOutput

func (LifecycleHookArrayOutput) ToLifecycleHookArrayOutputWithContext

func (o LifecycleHookArrayOutput) ToLifecycleHookArrayOutputWithContext(ctx context.Context) LifecycleHookArrayOutput

type LifecycleHookInput

type LifecycleHookInput interface {
	pulumi.Input

	ToLifecycleHookOutput() LifecycleHookOutput
	ToLifecycleHookOutputWithContext(ctx context.Context) LifecycleHookOutput
}

type LifecycleHookMap

type LifecycleHookMap map[string]LifecycleHookInput

func (LifecycleHookMap) ElementType

func (LifecycleHookMap) ElementType() reflect.Type

func (LifecycleHookMap) ToLifecycleHookMapOutput

func (i LifecycleHookMap) ToLifecycleHookMapOutput() LifecycleHookMapOutput

func (LifecycleHookMap) ToLifecycleHookMapOutputWithContext

func (i LifecycleHookMap) ToLifecycleHookMapOutputWithContext(ctx context.Context) LifecycleHookMapOutput

type LifecycleHookMapInput

type LifecycleHookMapInput interface {
	pulumi.Input

	ToLifecycleHookMapOutput() LifecycleHookMapOutput
	ToLifecycleHookMapOutputWithContext(context.Context) LifecycleHookMapOutput
}

LifecycleHookMapInput is an input type that accepts LifecycleHookMap and LifecycleHookMapOutput values. You can construct a concrete instance of `LifecycleHookMapInput` via:

LifecycleHookMap{ "key": LifecycleHookArgs{...} }

type LifecycleHookMapOutput

type LifecycleHookMapOutput struct{ *pulumi.OutputState }

func (LifecycleHookMapOutput) ElementType

func (LifecycleHookMapOutput) ElementType() reflect.Type

func (LifecycleHookMapOutput) MapIndex

func (LifecycleHookMapOutput) ToLifecycleHookMapOutput

func (o LifecycleHookMapOutput) ToLifecycleHookMapOutput() LifecycleHookMapOutput

func (LifecycleHookMapOutput) ToLifecycleHookMapOutputWithContext

func (o LifecycleHookMapOutput) ToLifecycleHookMapOutputWithContext(ctx context.Context) LifecycleHookMapOutput

type LifecycleHookOutput

type LifecycleHookOutput struct{ *pulumi.OutputState }

func (LifecycleHookOutput) DefaultResult

func (o LifecycleHookOutput) DefaultResult() pulumi.StringPtrOutput

Defines the action the AS group should take when the lifecycle hook timeout elapses or if an unexpected failure occurs. Valid values: `CONTINUE` and `ABANDON`. The default value is `CONTINUE`.

func (LifecycleHookOutput) ElementType

func (LifecycleHookOutput) ElementType() reflect.Type

func (LifecycleHookOutput) HeartbeatTimeout

func (o LifecycleHookOutput) HeartbeatTimeout() pulumi.IntPtrOutput

Defines the amount of time, in seconds, that can elapse before the lifecycle hook times out. Valid value ranges: (30~7200). and default value is `300`.

func (LifecycleHookOutput) LifecycleHookName

func (o LifecycleHookOutput) LifecycleHookName() pulumi.StringOutput

The name of the lifecycle hook.

func (LifecycleHookOutput) LifecycleTransition

func (o LifecycleHookOutput) LifecycleTransition() pulumi.StringOutput

The instance state to which you want to attach the lifecycle hook. Valid values: `INSTANCE_LAUNCHING` and `INSTANCE_TERMINATING`.

func (LifecycleHookOutput) NotificationMetadata

func (o LifecycleHookOutput) NotificationMetadata() pulumi.StringPtrOutput

Contains additional information that you want to include any time AS sends a message to the notification target.

func (LifecycleHookOutput) NotificationQueueName

func (o LifecycleHookOutput) NotificationQueueName() pulumi.StringPtrOutput

For CMQ_QUEUE type, a name of queue must be set.

func (LifecycleHookOutput) NotificationTargetType

func (o LifecycleHookOutput) NotificationTargetType() pulumi.StringPtrOutput

Target type. Valid values: `CMQ_QUEUE`, `CMQ_TOPIC`.

func (LifecycleHookOutput) NotificationTopicName

func (o LifecycleHookOutput) NotificationTopicName() pulumi.StringPtrOutput

For CMQ_TOPIC type, a name of topic must be set.

func (LifecycleHookOutput) ScalingGroupId

func (o LifecycleHookOutput) ScalingGroupId() pulumi.StringOutput

ID of a scaling group.

func (LifecycleHookOutput) ToLifecycleHookOutput

func (o LifecycleHookOutput) ToLifecycleHookOutput() LifecycleHookOutput

func (LifecycleHookOutput) ToLifecycleHookOutputWithContext

func (o LifecycleHookOutput) ToLifecycleHookOutputWithContext(ctx context.Context) LifecycleHookOutput

type LifecycleHookState

type LifecycleHookState struct {
	// Defines the action the AS group should take when the lifecycle hook timeout elapses or if an unexpected failure occurs. Valid values: `CONTINUE` and `ABANDON`. The default value is `CONTINUE`.
	DefaultResult pulumi.StringPtrInput
	// Defines the amount of time, in seconds, that can elapse before the lifecycle hook times out. Valid value ranges: (30~7200). and default value is `300`.
	HeartbeatTimeout pulumi.IntPtrInput
	// The name of the lifecycle hook.
	LifecycleHookName pulumi.StringPtrInput
	// The instance state to which you want to attach the lifecycle hook. Valid values: `INSTANCE_LAUNCHING` and `INSTANCE_TERMINATING`.
	LifecycleTransition pulumi.StringPtrInput
	// Contains additional information that you want to include any time AS sends a message to the notification target.
	NotificationMetadata pulumi.StringPtrInput
	// For CMQ_QUEUE type, a name of queue must be set.
	NotificationQueueName pulumi.StringPtrInput
	// Target type. Valid values: `CMQ_QUEUE`, `CMQ_TOPIC`.
	NotificationTargetType pulumi.StringPtrInput
	// For CMQ_TOPIC type, a name of topic must be set.
	NotificationTopicName pulumi.StringPtrInput
	// ID of a scaling group.
	ScalingGroupId pulumi.StringPtrInput
}

func (LifecycleHookState) ElementType

func (LifecycleHookState) ElementType() reflect.Type

type Notification

type Notification struct {
	pulumi.CustomResourceState

	// A list of Notification Types that trigger notifications. Acceptable values are `SCALE_OUT_FAILED`, `SCALE_IN_SUCCESSFUL`, `SCALE_IN_FAILED`, `REPLACE_UNHEALTHY_INSTANCE_SUCCESSFUL` and `REPLACE_UNHEALTHY_INSTANCE_FAILED`.
	NotificationTypes pulumi.StringArrayOutput `pulumi:"notificationTypes"`
	// A group of user IDs to be notified.
	NotificationUserGroupIds pulumi.StringArrayOutput `pulumi:"notificationUserGroupIds"`
	// ID of a scaling group.
	ScalingGroupId pulumi.StringOutput `pulumi:"scalingGroupId"`
}

Provides a resource for an AS (Auto scaling) notification.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/tencentcloudstack/pulumi-tencentcloud/sdk/go/tencentcloud/As"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := As.NewNotification(ctx, "asNotification", &As.NotificationArgs{
			NotificationTypes: pulumi.StringArray{
				pulumi.String("SCALE_OUT_FAILED"),
				pulumi.String("SCALE_IN_SUCCESSFUL"),
				pulumi.String("SCALE_IN_FAILED"),
				pulumi.String("REPLACE_UNHEALTHY_INSTANCE_FAILED"),
			},
			NotificationUserGroupIds: pulumi.StringArray{
				pulumi.String("76955"),
			},
			ScalingGroupId: pulumi.String("sg-12af45"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetNotification

func GetNotification(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *NotificationState, opts ...pulumi.ResourceOption) (*Notification, error)

GetNotification gets an existing Notification 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 NewNotification

func NewNotification(ctx *pulumi.Context,
	name string, args *NotificationArgs, opts ...pulumi.ResourceOption) (*Notification, error)

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

func (*Notification) ElementType

func (*Notification) ElementType() reflect.Type

func (*Notification) ToNotificationOutput

func (i *Notification) ToNotificationOutput() NotificationOutput

func (*Notification) ToNotificationOutputWithContext

func (i *Notification) ToNotificationOutputWithContext(ctx context.Context) NotificationOutput

type NotificationArgs

type NotificationArgs struct {
	// A list of Notification Types that trigger notifications. Acceptable values are `SCALE_OUT_FAILED`, `SCALE_IN_SUCCESSFUL`, `SCALE_IN_FAILED`, `REPLACE_UNHEALTHY_INSTANCE_SUCCESSFUL` and `REPLACE_UNHEALTHY_INSTANCE_FAILED`.
	NotificationTypes pulumi.StringArrayInput
	// A group of user IDs to be notified.
	NotificationUserGroupIds pulumi.StringArrayInput
	// ID of a scaling group.
	ScalingGroupId pulumi.StringInput
}

The set of arguments for constructing a Notification resource.

func (NotificationArgs) ElementType

func (NotificationArgs) ElementType() reflect.Type

type NotificationArray

type NotificationArray []NotificationInput

func (NotificationArray) ElementType

func (NotificationArray) ElementType() reflect.Type

func (NotificationArray) ToNotificationArrayOutput

func (i NotificationArray) ToNotificationArrayOutput() NotificationArrayOutput

func (NotificationArray) ToNotificationArrayOutputWithContext

func (i NotificationArray) ToNotificationArrayOutputWithContext(ctx context.Context) NotificationArrayOutput

type NotificationArrayInput

type NotificationArrayInput interface {
	pulumi.Input

	ToNotificationArrayOutput() NotificationArrayOutput
	ToNotificationArrayOutputWithContext(context.Context) NotificationArrayOutput
}

NotificationArrayInput is an input type that accepts NotificationArray and NotificationArrayOutput values. You can construct a concrete instance of `NotificationArrayInput` via:

NotificationArray{ NotificationArgs{...} }

type NotificationArrayOutput

type NotificationArrayOutput struct{ *pulumi.OutputState }

func (NotificationArrayOutput) ElementType

func (NotificationArrayOutput) ElementType() reflect.Type

func (NotificationArrayOutput) Index

func (NotificationArrayOutput) ToNotificationArrayOutput

func (o NotificationArrayOutput) ToNotificationArrayOutput() NotificationArrayOutput

func (NotificationArrayOutput) ToNotificationArrayOutputWithContext

func (o NotificationArrayOutput) ToNotificationArrayOutputWithContext(ctx context.Context) NotificationArrayOutput

type NotificationInput

type NotificationInput interface {
	pulumi.Input

	ToNotificationOutput() NotificationOutput
	ToNotificationOutputWithContext(ctx context.Context) NotificationOutput
}

type NotificationMap

type NotificationMap map[string]NotificationInput

func (NotificationMap) ElementType

func (NotificationMap) ElementType() reflect.Type

func (NotificationMap) ToNotificationMapOutput

func (i NotificationMap) ToNotificationMapOutput() NotificationMapOutput

func (NotificationMap) ToNotificationMapOutputWithContext

func (i NotificationMap) ToNotificationMapOutputWithContext(ctx context.Context) NotificationMapOutput

type NotificationMapInput

type NotificationMapInput interface {
	pulumi.Input

	ToNotificationMapOutput() NotificationMapOutput
	ToNotificationMapOutputWithContext(context.Context) NotificationMapOutput
}

NotificationMapInput is an input type that accepts NotificationMap and NotificationMapOutput values. You can construct a concrete instance of `NotificationMapInput` via:

NotificationMap{ "key": NotificationArgs{...} }

type NotificationMapOutput

type NotificationMapOutput struct{ *pulumi.OutputState }

func (NotificationMapOutput) ElementType

func (NotificationMapOutput) ElementType() reflect.Type

func (NotificationMapOutput) MapIndex

func (NotificationMapOutput) ToNotificationMapOutput

func (o NotificationMapOutput) ToNotificationMapOutput() NotificationMapOutput

func (NotificationMapOutput) ToNotificationMapOutputWithContext

func (o NotificationMapOutput) ToNotificationMapOutputWithContext(ctx context.Context) NotificationMapOutput

type NotificationOutput

type NotificationOutput struct{ *pulumi.OutputState }

func (NotificationOutput) ElementType

func (NotificationOutput) ElementType() reflect.Type

func (NotificationOutput) NotificationTypes

func (o NotificationOutput) NotificationTypes() pulumi.StringArrayOutput

A list of Notification Types that trigger notifications. Acceptable values are `SCALE_OUT_FAILED`, `SCALE_IN_SUCCESSFUL`, `SCALE_IN_FAILED`, `REPLACE_UNHEALTHY_INSTANCE_SUCCESSFUL` and `REPLACE_UNHEALTHY_INSTANCE_FAILED`.

func (NotificationOutput) NotificationUserGroupIds

func (o NotificationOutput) NotificationUserGroupIds() pulumi.StringArrayOutput

A group of user IDs to be notified.

func (NotificationOutput) ScalingGroupId

func (o NotificationOutput) ScalingGroupId() pulumi.StringOutput

ID of a scaling group.

func (NotificationOutput) ToNotificationOutput

func (o NotificationOutput) ToNotificationOutput() NotificationOutput

func (NotificationOutput) ToNotificationOutputWithContext

func (o NotificationOutput) ToNotificationOutputWithContext(ctx context.Context) NotificationOutput

type NotificationState

type NotificationState struct {
	// A list of Notification Types that trigger notifications. Acceptable values are `SCALE_OUT_FAILED`, `SCALE_IN_SUCCESSFUL`, `SCALE_IN_FAILED`, `REPLACE_UNHEALTHY_INSTANCE_SUCCESSFUL` and `REPLACE_UNHEALTHY_INSTANCE_FAILED`.
	NotificationTypes pulumi.StringArrayInput
	// A group of user IDs to be notified.
	NotificationUserGroupIds pulumi.StringArrayInput
	// ID of a scaling group.
	ScalingGroupId pulumi.StringPtrInput
}

func (NotificationState) ElementType

func (NotificationState) ElementType() reflect.Type

type ScalingConfig

type ScalingConfig struct {
	pulumi.CustomResourceState

	// CAM role name authorized to access.
	CamRoleName pulumi.StringPtrOutput `pulumi:"camRoleName"`
	// Name of a launch configuration.
	ConfigurationName pulumi.StringOutput `pulumi:"configurationName"`
	// The time when the launch configuration was created.
	CreateTime pulumi.StringOutput `pulumi:"createTime"`
	// Configurations of data disk.
	DataDisks ScalingConfigDataDiskArrayOutput `pulumi:"dataDisks"`
	// Policy of cloud disk type. Valid values: `ORIGINAL` and `AUTOMATIC`. Default is `ORIGINAL`.
	DiskTypePolicy pulumi.StringPtrOutput `pulumi:"diskTypePolicy"`
	// To specify whether to enable cloud monitor service. Default is `TRUE`.
	EnhancedMonitorService pulumi.BoolPtrOutput `pulumi:"enhancedMonitorService"`
	// To specify whether to enable cloud security service. Default is `TRUE`.
	EnhancedSecurityService pulumi.BoolPtrOutput `pulumi:"enhancedSecurityService"`
	// An available image ID for a cvm instance.
	ImageId pulumi.StringOutput `pulumi:"imageId"`
	// Charge type of instance. Valid values are `PREPAID`, `POSTPAID_BY_HOUR`, `SPOTPAID`. The default is `POSTPAID_BY_HOUR`. NOTE: `SPOTPAID` instance must set `spotInstanceType` and `spotMaxPrice` at the same time.
	InstanceChargeType pulumi.StringPtrOutput `pulumi:"instanceChargeType"`
	// The tenancy (in month) of the prepaid instance, NOTE: it only works when instanceChargeType is set to `PREPAID`. Valid values are `1`, `2`, `3`, `4`, `5`, `6`, `7`, `8`, `9`, `10`, `11`, `12`, `24`, `36`.
	InstanceChargeTypePrepaidPeriod pulumi.IntPtrOutput `pulumi:"instanceChargeTypePrepaidPeriod"`
	// Auto renewal flag. Valid values: `NOTIFY_AND_AUTO_RENEW`: notify upon expiration and renew automatically, `NOTIFY_AND_MANUAL_RENEW`: notify upon expiration but do not renew automatically, `DISABLE_NOTIFY_AND_MANUAL_RENEW`: neither notify upon expiration nor renew automatically. Default value: `NOTIFY_AND_MANUAL_RENEW`. If this parameter is specified as `NOTIFY_AND_AUTO_RENEW`, the instance will be automatically renewed on a monthly basis if the account balance is sufficient. NOTE: it only works when instanceChargeType is set to `PREPAID`.
	InstanceChargeTypePrepaidRenewFlag pulumi.StringOutput `pulumi:"instanceChargeTypePrepaidRenewFlag"`
	// Settings of CVM instance names.
	InstanceNameSettings ScalingConfigInstanceNameSettingsPtrOutput `pulumi:"instanceNameSettings"`
	// A list of tags used to associate different resources.
	InstanceTags pulumi.MapOutput `pulumi:"instanceTags"`
	// Specified types of CVM instances.
	InstanceTypes pulumi.StringArrayOutput `pulumi:"instanceTypes"`
	// Charge types for network traffic. Valid values: `BANDWIDTH_PREPAID`, `TRAFFIC_POSTPAID_BY_HOUR`, `TRAFFIC_POSTPAID_BY_HOUR` and `BANDWIDTH_PACKAGE`.
	InternetChargeType pulumi.StringPtrOutput `pulumi:"internetChargeType"`
	// Max bandwidth of Internet access in Mbps. Default is `0`.
	InternetMaxBandwidthOut pulumi.IntPtrOutput `pulumi:"internetMaxBandwidthOut"`
	// Specify whether to keep original settings of a CVM image. And it can't be used with password or keyIds together.
	KeepImageLogin pulumi.BoolPtrOutput `pulumi:"keepImageLogin"`
	// ID list of keys.
	KeyIds pulumi.StringArrayOutput `pulumi:"keyIds"`
	// Password to access.
	Password pulumi.StringPtrOutput `pulumi:"password"`
	// Specifys to which project the configuration belongs.
	ProjectId pulumi.IntPtrOutput `pulumi:"projectId"`
	// Specify whether to assign an Internet IP address.
	PublicIpAssigned pulumi.BoolPtrOutput `pulumi:"publicIpAssigned"`
	// Security groups to which a CVM instance belongs.
	SecurityGroupIds pulumi.StringArrayOutput `pulumi:"securityGroupIds"`
	// Type of spot instance, only support `one-time` now. Note: it only works when instanceChargeType is set to `SPOTPAID`.
	SpotInstanceType pulumi.StringPtrOutput `pulumi:"spotInstanceType"`
	// Max price of a spot instance, is the format of decimal string, for example "0.50". Note: it only works when instanceChargeType is set to `SPOTPAID`.
	SpotMaxPrice pulumi.StringPtrOutput `pulumi:"spotMaxPrice"`
	// Current statues of a launch configuration.
	Status pulumi.StringOutput `pulumi:"status"`
	// Volume of system disk in GB. Default is `50`.
	SystemDiskSize pulumi.IntPtrOutput `pulumi:"systemDiskSize"`
	// Type of a CVM disk. Valid values: `CLOUD_PREMIUM` and `CLOUD_SSD`. Default is `CLOUD_PREMIUM`. valid when diskTypePolicy is ORIGINAL.
	SystemDiskType pulumi.StringPtrOutput `pulumi:"systemDiskType"`
	// ase64-encoded User Data text, the length limit is 16KB.
	UserData pulumi.StringPtrOutput `pulumi:"userData"`
}

Provides a resource to create a configuration for an AS (Auto scaling) instance.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-tencentcloud/sdk/go/tencentcloud/As"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/tencentcloudstack/pulumi-tencentcloud/sdk/go/tencentcloud/As"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := As.NewScalingConfig(ctx, "launchConfiguration", &As.ScalingConfigArgs{
			ConfigurationName: pulumi.String("launch-configuration"),
			DataDisks: as.ScalingConfigDataDiskArray{
				&as.ScalingConfigDataDiskArgs{
					DiskSize: pulumi.Int(50),
					DiskType: pulumi.String("CLOUD_PREMIUM"),
				},
			},
			EnhancedMonitorService:  pulumi.Bool(false),
			EnhancedSecurityService: pulumi.Bool(false),
			ImageId:                 pulumi.String("img-9qabwvbn"),
			InstanceTags: pulumi.AnyMap{
				"tag": pulumi.Any("as"),
			},
			InstanceTypes: pulumi.StringArray{
				pulumi.String("SA1.SMALL1"),
			},
			InternetChargeType:      pulumi.String("TRAFFIC_POSTPAID_BY_HOUR"),
			InternetMaxBandwidthOut: pulumi.Int(10),
			Password:                pulumi.String("test123#"),
			ProjectId:               pulumi.Int(0),
			PublicIpAssigned:        pulumi.Bool(true),
			SystemDiskSize:          pulumi.Int(50),
			SystemDiskType:          pulumi.String("CLOUD_PREMIUM"),
			UserData:                pulumi.String("dGVzdA=="),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

Using SPOT charge type

```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/tencentcloudstack/pulumi-tencentcloud/sdk/go/tencentcloud/As"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := As.NewScalingConfig(ctx, "launchConfiguration", &As.ScalingConfigArgs{
			ConfigurationName:  pulumi.String("launch-configuration"),
			ImageId:            pulumi.String("img-9qabwvbn"),
			InstanceChargeType: pulumi.String("SPOTPAID"),
			InstanceTypes: pulumi.StringArray{
				pulumi.String("SA1.SMALL1"),
			},
			SpotInstanceType: pulumi.String("one-time"),
			SpotMaxPrice:     pulumi.String("1000"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

AutoScaling Configuration can be imported using the id, e.g.

```sh

$ pulumi import tencentcloud:As/scalingConfig:ScalingConfig scaling_config asc-n32ymck2

```

func GetScalingConfig

func GetScalingConfig(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ScalingConfigState, opts ...pulumi.ResourceOption) (*ScalingConfig, error)

GetScalingConfig gets an existing ScalingConfig 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 NewScalingConfig

func NewScalingConfig(ctx *pulumi.Context,
	name string, args *ScalingConfigArgs, opts ...pulumi.ResourceOption) (*ScalingConfig, error)

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

func (*ScalingConfig) ElementType

func (*ScalingConfig) ElementType() reflect.Type

func (*ScalingConfig) ToScalingConfigOutput

func (i *ScalingConfig) ToScalingConfigOutput() ScalingConfigOutput

func (*ScalingConfig) ToScalingConfigOutputWithContext

func (i *ScalingConfig) ToScalingConfigOutputWithContext(ctx context.Context) ScalingConfigOutput

type ScalingConfigArgs

type ScalingConfigArgs struct {
	// CAM role name authorized to access.
	CamRoleName pulumi.StringPtrInput
	// Name of a launch configuration.
	ConfigurationName pulumi.StringInput
	// Configurations of data disk.
	DataDisks ScalingConfigDataDiskArrayInput
	// Policy of cloud disk type. Valid values: `ORIGINAL` and `AUTOMATIC`. Default is `ORIGINAL`.
	DiskTypePolicy pulumi.StringPtrInput
	// To specify whether to enable cloud monitor service. Default is `TRUE`.
	EnhancedMonitorService pulumi.BoolPtrInput
	// To specify whether to enable cloud security service. Default is `TRUE`.
	EnhancedSecurityService pulumi.BoolPtrInput
	// An available image ID for a cvm instance.
	ImageId pulumi.StringInput
	// Charge type of instance. Valid values are `PREPAID`, `POSTPAID_BY_HOUR`, `SPOTPAID`. The default is `POSTPAID_BY_HOUR`. NOTE: `SPOTPAID` instance must set `spotInstanceType` and `spotMaxPrice` at the same time.
	InstanceChargeType pulumi.StringPtrInput
	// The tenancy (in month) of the prepaid instance, NOTE: it only works when instanceChargeType is set to `PREPAID`. Valid values are `1`, `2`, `3`, `4`, `5`, `6`, `7`, `8`, `9`, `10`, `11`, `12`, `24`, `36`.
	InstanceChargeTypePrepaidPeriod pulumi.IntPtrInput
	// Auto renewal flag. Valid values: `NOTIFY_AND_AUTO_RENEW`: notify upon expiration and renew automatically, `NOTIFY_AND_MANUAL_RENEW`: notify upon expiration but do not renew automatically, `DISABLE_NOTIFY_AND_MANUAL_RENEW`: neither notify upon expiration nor renew automatically. Default value: `NOTIFY_AND_MANUAL_RENEW`. If this parameter is specified as `NOTIFY_AND_AUTO_RENEW`, the instance will be automatically renewed on a monthly basis if the account balance is sufficient. NOTE: it only works when instanceChargeType is set to `PREPAID`.
	InstanceChargeTypePrepaidRenewFlag pulumi.StringPtrInput
	// Settings of CVM instance names.
	InstanceNameSettings ScalingConfigInstanceNameSettingsPtrInput
	// A list of tags used to associate different resources.
	InstanceTags pulumi.MapInput
	// Specified types of CVM instances.
	InstanceTypes pulumi.StringArrayInput
	// Charge types for network traffic. Valid values: `BANDWIDTH_PREPAID`, `TRAFFIC_POSTPAID_BY_HOUR`, `TRAFFIC_POSTPAID_BY_HOUR` and `BANDWIDTH_PACKAGE`.
	InternetChargeType pulumi.StringPtrInput
	// Max bandwidth of Internet access in Mbps. Default is `0`.
	InternetMaxBandwidthOut pulumi.IntPtrInput
	// Specify whether to keep original settings of a CVM image. And it can't be used with password or keyIds together.
	KeepImageLogin pulumi.BoolPtrInput
	// ID list of keys.
	KeyIds pulumi.StringArrayInput
	// Password to access.
	Password pulumi.StringPtrInput
	// Specifys to which project the configuration belongs.
	ProjectId pulumi.IntPtrInput
	// Specify whether to assign an Internet IP address.
	PublicIpAssigned pulumi.BoolPtrInput
	// Security groups to which a CVM instance belongs.
	SecurityGroupIds pulumi.StringArrayInput
	// Type of spot instance, only support `one-time` now. Note: it only works when instanceChargeType is set to `SPOTPAID`.
	SpotInstanceType pulumi.StringPtrInput
	// Max price of a spot instance, is the format of decimal string, for example "0.50". Note: it only works when instanceChargeType is set to `SPOTPAID`.
	SpotMaxPrice pulumi.StringPtrInput
	// Volume of system disk in GB. Default is `50`.
	SystemDiskSize pulumi.IntPtrInput
	// Type of a CVM disk. Valid values: `CLOUD_PREMIUM` and `CLOUD_SSD`. Default is `CLOUD_PREMIUM`. valid when diskTypePolicy is ORIGINAL.
	SystemDiskType pulumi.StringPtrInput
	// ase64-encoded User Data text, the length limit is 16KB.
	UserData pulumi.StringPtrInput
}

The set of arguments for constructing a ScalingConfig resource.

func (ScalingConfigArgs) ElementType

func (ScalingConfigArgs) ElementType() reflect.Type

type ScalingConfigArray

type ScalingConfigArray []ScalingConfigInput

func (ScalingConfigArray) ElementType

func (ScalingConfigArray) ElementType() reflect.Type

func (ScalingConfigArray) ToScalingConfigArrayOutput

func (i ScalingConfigArray) ToScalingConfigArrayOutput() ScalingConfigArrayOutput

func (ScalingConfigArray) ToScalingConfigArrayOutputWithContext

func (i ScalingConfigArray) ToScalingConfigArrayOutputWithContext(ctx context.Context) ScalingConfigArrayOutput

type ScalingConfigArrayInput

type ScalingConfigArrayInput interface {
	pulumi.Input

	ToScalingConfigArrayOutput() ScalingConfigArrayOutput
	ToScalingConfigArrayOutputWithContext(context.Context) ScalingConfigArrayOutput
}

ScalingConfigArrayInput is an input type that accepts ScalingConfigArray and ScalingConfigArrayOutput values. You can construct a concrete instance of `ScalingConfigArrayInput` via:

ScalingConfigArray{ ScalingConfigArgs{...} }

type ScalingConfigArrayOutput

type ScalingConfigArrayOutput struct{ *pulumi.OutputState }

func (ScalingConfigArrayOutput) ElementType

func (ScalingConfigArrayOutput) ElementType() reflect.Type

func (ScalingConfigArrayOutput) Index

func (ScalingConfigArrayOutput) ToScalingConfigArrayOutput

func (o ScalingConfigArrayOutput) ToScalingConfigArrayOutput() ScalingConfigArrayOutput

func (ScalingConfigArrayOutput) ToScalingConfigArrayOutputWithContext

func (o ScalingConfigArrayOutput) ToScalingConfigArrayOutputWithContext(ctx context.Context) ScalingConfigArrayOutput

type ScalingConfigDataDisk

type ScalingConfigDataDisk struct {
	// Indicates whether the disk remove after instance terminated.
	DeleteWithInstance *bool `pulumi:"deleteWithInstance"`
	// Volume of disk in GB. Default is `0`.
	DiskSize *int `pulumi:"diskSize"`
	// Types of disk. Valid values: `CLOUD_PREMIUM` and `CLOUD_SSD`. valid when diskTypePolicy is ORIGINAL.
	DiskType *string `pulumi:"diskType"`
	// Data disk snapshot ID.
	SnapshotId *string `pulumi:"snapshotId"`
}

type ScalingConfigDataDiskArgs

type ScalingConfigDataDiskArgs struct {
	// Indicates whether the disk remove after instance terminated.
	DeleteWithInstance pulumi.BoolPtrInput `pulumi:"deleteWithInstance"`
	// Volume of disk in GB. Default is `0`.
	DiskSize pulumi.IntPtrInput `pulumi:"diskSize"`
	// Types of disk. Valid values: `CLOUD_PREMIUM` and `CLOUD_SSD`. valid when diskTypePolicy is ORIGINAL.
	DiskType pulumi.StringPtrInput `pulumi:"diskType"`
	// Data disk snapshot ID.
	SnapshotId pulumi.StringPtrInput `pulumi:"snapshotId"`
}

func (ScalingConfigDataDiskArgs) ElementType

func (ScalingConfigDataDiskArgs) ElementType() reflect.Type

func (ScalingConfigDataDiskArgs) ToScalingConfigDataDiskOutput

func (i ScalingConfigDataDiskArgs) ToScalingConfigDataDiskOutput() ScalingConfigDataDiskOutput

func (ScalingConfigDataDiskArgs) ToScalingConfigDataDiskOutputWithContext

func (i ScalingConfigDataDiskArgs) ToScalingConfigDataDiskOutputWithContext(ctx context.Context) ScalingConfigDataDiskOutput

type ScalingConfigDataDiskArray

type ScalingConfigDataDiskArray []ScalingConfigDataDiskInput

func (ScalingConfigDataDiskArray) ElementType

func (ScalingConfigDataDiskArray) ElementType() reflect.Type

func (ScalingConfigDataDiskArray) ToScalingConfigDataDiskArrayOutput

func (i ScalingConfigDataDiskArray) ToScalingConfigDataDiskArrayOutput() ScalingConfigDataDiskArrayOutput

func (ScalingConfigDataDiskArray) ToScalingConfigDataDiskArrayOutputWithContext

func (i ScalingConfigDataDiskArray) ToScalingConfigDataDiskArrayOutputWithContext(ctx context.Context) ScalingConfigDataDiskArrayOutput

type ScalingConfigDataDiskArrayInput

type ScalingConfigDataDiskArrayInput interface {
	pulumi.Input

	ToScalingConfigDataDiskArrayOutput() ScalingConfigDataDiskArrayOutput
	ToScalingConfigDataDiskArrayOutputWithContext(context.Context) ScalingConfigDataDiskArrayOutput
}

ScalingConfigDataDiskArrayInput is an input type that accepts ScalingConfigDataDiskArray and ScalingConfigDataDiskArrayOutput values. You can construct a concrete instance of `ScalingConfigDataDiskArrayInput` via:

ScalingConfigDataDiskArray{ ScalingConfigDataDiskArgs{...} }

type ScalingConfigDataDiskArrayOutput

type ScalingConfigDataDiskArrayOutput struct{ *pulumi.OutputState }

func (ScalingConfigDataDiskArrayOutput) ElementType

func (ScalingConfigDataDiskArrayOutput) Index

func (ScalingConfigDataDiskArrayOutput) ToScalingConfigDataDiskArrayOutput

func (o ScalingConfigDataDiskArrayOutput) ToScalingConfigDataDiskArrayOutput() ScalingConfigDataDiskArrayOutput

func (ScalingConfigDataDiskArrayOutput) ToScalingConfigDataDiskArrayOutputWithContext

func (o ScalingConfigDataDiskArrayOutput) ToScalingConfigDataDiskArrayOutputWithContext(ctx context.Context) ScalingConfigDataDiskArrayOutput

type ScalingConfigDataDiskInput

type ScalingConfigDataDiskInput interface {
	pulumi.Input

	ToScalingConfigDataDiskOutput() ScalingConfigDataDiskOutput
	ToScalingConfigDataDiskOutputWithContext(context.Context) ScalingConfigDataDiskOutput
}

ScalingConfigDataDiskInput is an input type that accepts ScalingConfigDataDiskArgs and ScalingConfigDataDiskOutput values. You can construct a concrete instance of `ScalingConfigDataDiskInput` via:

ScalingConfigDataDiskArgs{...}

type ScalingConfigDataDiskOutput

type ScalingConfigDataDiskOutput struct{ *pulumi.OutputState }

func (ScalingConfigDataDiskOutput) DeleteWithInstance

func (o ScalingConfigDataDiskOutput) DeleteWithInstance() pulumi.BoolPtrOutput

Indicates whether the disk remove after instance terminated.

func (ScalingConfigDataDiskOutput) DiskSize

Volume of disk in GB. Default is `0`.

func (ScalingConfigDataDiskOutput) DiskType

Types of disk. Valid values: `CLOUD_PREMIUM` and `CLOUD_SSD`. valid when diskTypePolicy is ORIGINAL.

func (ScalingConfigDataDiskOutput) ElementType

func (ScalingConfigDataDiskOutput) SnapshotId

Data disk snapshot ID.

func (ScalingConfigDataDiskOutput) ToScalingConfigDataDiskOutput

func (o ScalingConfigDataDiskOutput) ToScalingConfigDataDiskOutput() ScalingConfigDataDiskOutput

func (ScalingConfigDataDiskOutput) ToScalingConfigDataDiskOutputWithContext

func (o ScalingConfigDataDiskOutput) ToScalingConfigDataDiskOutputWithContext(ctx context.Context) ScalingConfigDataDiskOutput

type ScalingConfigInput

type ScalingConfigInput interface {
	pulumi.Input

	ToScalingConfigOutput() ScalingConfigOutput
	ToScalingConfigOutputWithContext(ctx context.Context) ScalingConfigOutput
}

type ScalingConfigInstanceNameSettings

type ScalingConfigInstanceNameSettings struct {
	// CVM instance name.
	InstanceName string `pulumi:"instanceName"`
	// Type of CVM instance name. Valid values: `ORIGINAL` and `UNIQUE`. Default is `ORIGINAL`.
	InstanceNameStyle *string `pulumi:"instanceNameStyle"`
}

type ScalingConfigInstanceNameSettingsArgs

type ScalingConfigInstanceNameSettingsArgs struct {
	// CVM instance name.
	InstanceName pulumi.StringInput `pulumi:"instanceName"`
	// Type of CVM instance name. Valid values: `ORIGINAL` and `UNIQUE`. Default is `ORIGINAL`.
	InstanceNameStyle pulumi.StringPtrInput `pulumi:"instanceNameStyle"`
}

func (ScalingConfigInstanceNameSettingsArgs) ElementType

func (ScalingConfigInstanceNameSettingsArgs) ToScalingConfigInstanceNameSettingsOutput

func (i ScalingConfigInstanceNameSettingsArgs) ToScalingConfigInstanceNameSettingsOutput() ScalingConfigInstanceNameSettingsOutput

func (ScalingConfigInstanceNameSettingsArgs) ToScalingConfigInstanceNameSettingsOutputWithContext

func (i ScalingConfigInstanceNameSettingsArgs) ToScalingConfigInstanceNameSettingsOutputWithContext(ctx context.Context) ScalingConfigInstanceNameSettingsOutput

func (ScalingConfigInstanceNameSettingsArgs) ToScalingConfigInstanceNameSettingsPtrOutput

func (i ScalingConfigInstanceNameSettingsArgs) ToScalingConfigInstanceNameSettingsPtrOutput() ScalingConfigInstanceNameSettingsPtrOutput

func (ScalingConfigInstanceNameSettingsArgs) ToScalingConfigInstanceNameSettingsPtrOutputWithContext

func (i ScalingConfigInstanceNameSettingsArgs) ToScalingConfigInstanceNameSettingsPtrOutputWithContext(ctx context.Context) ScalingConfigInstanceNameSettingsPtrOutput

type ScalingConfigInstanceNameSettingsInput

type ScalingConfigInstanceNameSettingsInput interface {
	pulumi.Input

	ToScalingConfigInstanceNameSettingsOutput() ScalingConfigInstanceNameSettingsOutput
	ToScalingConfigInstanceNameSettingsOutputWithContext(context.Context) ScalingConfigInstanceNameSettingsOutput
}

ScalingConfigInstanceNameSettingsInput is an input type that accepts ScalingConfigInstanceNameSettingsArgs and ScalingConfigInstanceNameSettingsOutput values. You can construct a concrete instance of `ScalingConfigInstanceNameSettingsInput` via:

ScalingConfigInstanceNameSettingsArgs{...}

type ScalingConfigInstanceNameSettingsOutput

type ScalingConfigInstanceNameSettingsOutput struct{ *pulumi.OutputState }

func (ScalingConfigInstanceNameSettingsOutput) ElementType

func (ScalingConfigInstanceNameSettingsOutput) InstanceName

CVM instance name.

func (ScalingConfigInstanceNameSettingsOutput) InstanceNameStyle

Type of CVM instance name. Valid values: `ORIGINAL` and `UNIQUE`. Default is `ORIGINAL`.

func (ScalingConfigInstanceNameSettingsOutput) ToScalingConfigInstanceNameSettingsOutput

func (o ScalingConfigInstanceNameSettingsOutput) ToScalingConfigInstanceNameSettingsOutput() ScalingConfigInstanceNameSettingsOutput

func (ScalingConfigInstanceNameSettingsOutput) ToScalingConfigInstanceNameSettingsOutputWithContext

func (o ScalingConfigInstanceNameSettingsOutput) ToScalingConfigInstanceNameSettingsOutputWithContext(ctx context.Context) ScalingConfigInstanceNameSettingsOutput

func (ScalingConfigInstanceNameSettingsOutput) ToScalingConfigInstanceNameSettingsPtrOutput

func (o ScalingConfigInstanceNameSettingsOutput) ToScalingConfigInstanceNameSettingsPtrOutput() ScalingConfigInstanceNameSettingsPtrOutput

func (ScalingConfigInstanceNameSettingsOutput) ToScalingConfigInstanceNameSettingsPtrOutputWithContext

func (o ScalingConfigInstanceNameSettingsOutput) ToScalingConfigInstanceNameSettingsPtrOutputWithContext(ctx context.Context) ScalingConfigInstanceNameSettingsPtrOutput

type ScalingConfigInstanceNameSettingsPtrInput

type ScalingConfigInstanceNameSettingsPtrInput interface {
	pulumi.Input

	ToScalingConfigInstanceNameSettingsPtrOutput() ScalingConfigInstanceNameSettingsPtrOutput
	ToScalingConfigInstanceNameSettingsPtrOutputWithContext(context.Context) ScalingConfigInstanceNameSettingsPtrOutput
}

ScalingConfigInstanceNameSettingsPtrInput is an input type that accepts ScalingConfigInstanceNameSettingsArgs, ScalingConfigInstanceNameSettingsPtr and ScalingConfigInstanceNameSettingsPtrOutput values. You can construct a concrete instance of `ScalingConfigInstanceNameSettingsPtrInput` via:

        ScalingConfigInstanceNameSettingsArgs{...}

or:

        nil

type ScalingConfigInstanceNameSettingsPtrOutput

type ScalingConfigInstanceNameSettingsPtrOutput struct{ *pulumi.OutputState }

func (ScalingConfigInstanceNameSettingsPtrOutput) Elem

func (ScalingConfigInstanceNameSettingsPtrOutput) ElementType

func (ScalingConfigInstanceNameSettingsPtrOutput) InstanceName

CVM instance name.

func (ScalingConfigInstanceNameSettingsPtrOutput) InstanceNameStyle

Type of CVM instance name. Valid values: `ORIGINAL` and `UNIQUE`. Default is `ORIGINAL`.

func (ScalingConfigInstanceNameSettingsPtrOutput) ToScalingConfigInstanceNameSettingsPtrOutput

func (o ScalingConfigInstanceNameSettingsPtrOutput) ToScalingConfigInstanceNameSettingsPtrOutput() ScalingConfigInstanceNameSettingsPtrOutput

func (ScalingConfigInstanceNameSettingsPtrOutput) ToScalingConfigInstanceNameSettingsPtrOutputWithContext

func (o ScalingConfigInstanceNameSettingsPtrOutput) ToScalingConfigInstanceNameSettingsPtrOutputWithContext(ctx context.Context) ScalingConfigInstanceNameSettingsPtrOutput

type ScalingConfigMap

type ScalingConfigMap map[string]ScalingConfigInput

func (ScalingConfigMap) ElementType

func (ScalingConfigMap) ElementType() reflect.Type

func (ScalingConfigMap) ToScalingConfigMapOutput

func (i ScalingConfigMap) ToScalingConfigMapOutput() ScalingConfigMapOutput

func (ScalingConfigMap) ToScalingConfigMapOutputWithContext

func (i ScalingConfigMap) ToScalingConfigMapOutputWithContext(ctx context.Context) ScalingConfigMapOutput

type ScalingConfigMapInput

type ScalingConfigMapInput interface {
	pulumi.Input

	ToScalingConfigMapOutput() ScalingConfigMapOutput
	ToScalingConfigMapOutputWithContext(context.Context) ScalingConfigMapOutput
}

ScalingConfigMapInput is an input type that accepts ScalingConfigMap and ScalingConfigMapOutput values. You can construct a concrete instance of `ScalingConfigMapInput` via:

ScalingConfigMap{ "key": ScalingConfigArgs{...} }

type ScalingConfigMapOutput

type ScalingConfigMapOutput struct{ *pulumi.OutputState }

func (ScalingConfigMapOutput) ElementType

func (ScalingConfigMapOutput) ElementType() reflect.Type

func (ScalingConfigMapOutput) MapIndex

func (ScalingConfigMapOutput) ToScalingConfigMapOutput

func (o ScalingConfigMapOutput) ToScalingConfigMapOutput() ScalingConfigMapOutput

func (ScalingConfigMapOutput) ToScalingConfigMapOutputWithContext

func (o ScalingConfigMapOutput) ToScalingConfigMapOutputWithContext(ctx context.Context) ScalingConfigMapOutput

type ScalingConfigOutput

type ScalingConfigOutput struct{ *pulumi.OutputState }

func (ScalingConfigOutput) CamRoleName

func (o ScalingConfigOutput) CamRoleName() pulumi.StringPtrOutput

CAM role name authorized to access.

func (ScalingConfigOutput) ConfigurationName

func (o ScalingConfigOutput) ConfigurationName() pulumi.StringOutput

Name of a launch configuration.

func (ScalingConfigOutput) CreateTime

func (o ScalingConfigOutput) CreateTime() pulumi.StringOutput

The time when the launch configuration was created.

func (ScalingConfigOutput) DataDisks

Configurations of data disk.

func (ScalingConfigOutput) DiskTypePolicy

func (o ScalingConfigOutput) DiskTypePolicy() pulumi.StringPtrOutput

Policy of cloud disk type. Valid values: `ORIGINAL` and `AUTOMATIC`. Default is `ORIGINAL`.

func (ScalingConfigOutput) ElementType

func (ScalingConfigOutput) ElementType() reflect.Type

func (ScalingConfigOutput) EnhancedMonitorService

func (o ScalingConfigOutput) EnhancedMonitorService() pulumi.BoolPtrOutput

To specify whether to enable cloud monitor service. Default is `TRUE`.

func (ScalingConfigOutput) EnhancedSecurityService

func (o ScalingConfigOutput) EnhancedSecurityService() pulumi.BoolPtrOutput

To specify whether to enable cloud security service. Default is `TRUE`.

func (ScalingConfigOutput) ImageId

An available image ID for a cvm instance.

func (ScalingConfigOutput) InstanceChargeType

func (o ScalingConfigOutput) InstanceChargeType() pulumi.StringPtrOutput

Charge type of instance. Valid values are `PREPAID`, `POSTPAID_BY_HOUR`, `SPOTPAID`. The default is `POSTPAID_BY_HOUR`. NOTE: `SPOTPAID` instance must set `spotInstanceType` and `spotMaxPrice` at the same time.

func (ScalingConfigOutput) InstanceChargeTypePrepaidPeriod

func (o ScalingConfigOutput) InstanceChargeTypePrepaidPeriod() pulumi.IntPtrOutput

The tenancy (in month) of the prepaid instance, NOTE: it only works when instanceChargeType is set to `PREPAID`. Valid values are `1`, `2`, `3`, `4`, `5`, `6`, `7`, `8`, `9`, `10`, `11`, `12`, `24`, `36`.

func (ScalingConfigOutput) InstanceChargeTypePrepaidRenewFlag

func (o ScalingConfigOutput) InstanceChargeTypePrepaidRenewFlag() pulumi.StringOutput

Auto renewal flag. Valid values: `NOTIFY_AND_AUTO_RENEW`: notify upon expiration and renew automatically, `NOTIFY_AND_MANUAL_RENEW`: notify upon expiration but do not renew automatically, `DISABLE_NOTIFY_AND_MANUAL_RENEW`: neither notify upon expiration nor renew automatically. Default value: `NOTIFY_AND_MANUAL_RENEW`. If this parameter is specified as `NOTIFY_AND_AUTO_RENEW`, the instance will be automatically renewed on a monthly basis if the account balance is sufficient. NOTE: it only works when instanceChargeType is set to `PREPAID`.

func (ScalingConfigOutput) InstanceNameSettings

Settings of CVM instance names.

func (ScalingConfigOutput) InstanceTags

func (o ScalingConfigOutput) InstanceTags() pulumi.MapOutput

A list of tags used to associate different resources.

func (ScalingConfigOutput) InstanceTypes

func (o ScalingConfigOutput) InstanceTypes() pulumi.StringArrayOutput

Specified types of CVM instances.

func (ScalingConfigOutput) InternetChargeType

func (o ScalingConfigOutput) InternetChargeType() pulumi.StringPtrOutput

Charge types for network traffic. Valid values: `BANDWIDTH_PREPAID`, `TRAFFIC_POSTPAID_BY_HOUR`, `TRAFFIC_POSTPAID_BY_HOUR` and `BANDWIDTH_PACKAGE`.

func (ScalingConfigOutput) InternetMaxBandwidthOut

func (o ScalingConfigOutput) InternetMaxBandwidthOut() pulumi.IntPtrOutput

Max bandwidth of Internet access in Mbps. Default is `0`.

func (ScalingConfigOutput) KeepImageLogin

func (o ScalingConfigOutput) KeepImageLogin() pulumi.BoolPtrOutput

Specify whether to keep original settings of a CVM image. And it can't be used with password or keyIds together.

func (ScalingConfigOutput) KeyIds

ID list of keys.

func (ScalingConfigOutput) Password

Password to access.

func (ScalingConfigOutput) ProjectId

func (o ScalingConfigOutput) ProjectId() pulumi.IntPtrOutput

Specifys to which project the configuration belongs.

func (ScalingConfigOutput) PublicIpAssigned

func (o ScalingConfigOutput) PublicIpAssigned() pulumi.BoolPtrOutput

Specify whether to assign an Internet IP address.

func (ScalingConfigOutput) SecurityGroupIds

func (o ScalingConfigOutput) SecurityGroupIds() pulumi.StringArrayOutput

Security groups to which a CVM instance belongs.

func (ScalingConfigOutput) SpotInstanceType

func (o ScalingConfigOutput) SpotInstanceType() pulumi.StringPtrOutput

Type of spot instance, only support `one-time` now. Note: it only works when instanceChargeType is set to `SPOTPAID`.

func (ScalingConfigOutput) SpotMaxPrice

func (o ScalingConfigOutput) SpotMaxPrice() pulumi.StringPtrOutput

Max price of a spot instance, is the format of decimal string, for example "0.50". Note: it only works when instanceChargeType is set to `SPOTPAID`.

func (ScalingConfigOutput) Status

Current statues of a launch configuration.

func (ScalingConfigOutput) SystemDiskSize

func (o ScalingConfigOutput) SystemDiskSize() pulumi.IntPtrOutput

Volume of system disk in GB. Default is `50`.

func (ScalingConfigOutput) SystemDiskType

func (o ScalingConfigOutput) SystemDiskType() pulumi.StringPtrOutput

Type of a CVM disk. Valid values: `CLOUD_PREMIUM` and `CLOUD_SSD`. Default is `CLOUD_PREMIUM`. valid when diskTypePolicy is ORIGINAL.

func (ScalingConfigOutput) ToScalingConfigOutput

func (o ScalingConfigOutput) ToScalingConfigOutput() ScalingConfigOutput

func (ScalingConfigOutput) ToScalingConfigOutputWithContext

func (o ScalingConfigOutput) ToScalingConfigOutputWithContext(ctx context.Context) ScalingConfigOutput

func (ScalingConfigOutput) UserData

ase64-encoded User Data text, the length limit is 16KB.

type ScalingConfigState

type ScalingConfigState struct {
	// CAM role name authorized to access.
	CamRoleName pulumi.StringPtrInput
	// Name of a launch configuration.
	ConfigurationName pulumi.StringPtrInput
	// The time when the launch configuration was created.
	CreateTime pulumi.StringPtrInput
	// Configurations of data disk.
	DataDisks ScalingConfigDataDiskArrayInput
	// Policy of cloud disk type. Valid values: `ORIGINAL` and `AUTOMATIC`. Default is `ORIGINAL`.
	DiskTypePolicy pulumi.StringPtrInput
	// To specify whether to enable cloud monitor service. Default is `TRUE`.
	EnhancedMonitorService pulumi.BoolPtrInput
	// To specify whether to enable cloud security service. Default is `TRUE`.
	EnhancedSecurityService pulumi.BoolPtrInput
	// An available image ID for a cvm instance.
	ImageId pulumi.StringPtrInput
	// Charge type of instance. Valid values are `PREPAID`, `POSTPAID_BY_HOUR`, `SPOTPAID`. The default is `POSTPAID_BY_HOUR`. NOTE: `SPOTPAID` instance must set `spotInstanceType` and `spotMaxPrice` at the same time.
	InstanceChargeType pulumi.StringPtrInput
	// The tenancy (in month) of the prepaid instance, NOTE: it only works when instanceChargeType is set to `PREPAID`. Valid values are `1`, `2`, `3`, `4`, `5`, `6`, `7`, `8`, `9`, `10`, `11`, `12`, `24`, `36`.
	InstanceChargeTypePrepaidPeriod pulumi.IntPtrInput
	// Auto renewal flag. Valid values: `NOTIFY_AND_AUTO_RENEW`: notify upon expiration and renew automatically, `NOTIFY_AND_MANUAL_RENEW`: notify upon expiration but do not renew automatically, `DISABLE_NOTIFY_AND_MANUAL_RENEW`: neither notify upon expiration nor renew automatically. Default value: `NOTIFY_AND_MANUAL_RENEW`. If this parameter is specified as `NOTIFY_AND_AUTO_RENEW`, the instance will be automatically renewed on a monthly basis if the account balance is sufficient. NOTE: it only works when instanceChargeType is set to `PREPAID`.
	InstanceChargeTypePrepaidRenewFlag pulumi.StringPtrInput
	// Settings of CVM instance names.
	InstanceNameSettings ScalingConfigInstanceNameSettingsPtrInput
	// A list of tags used to associate different resources.
	InstanceTags pulumi.MapInput
	// Specified types of CVM instances.
	InstanceTypes pulumi.StringArrayInput
	// Charge types for network traffic. Valid values: `BANDWIDTH_PREPAID`, `TRAFFIC_POSTPAID_BY_HOUR`, `TRAFFIC_POSTPAID_BY_HOUR` and `BANDWIDTH_PACKAGE`.
	InternetChargeType pulumi.StringPtrInput
	// Max bandwidth of Internet access in Mbps. Default is `0`.
	InternetMaxBandwidthOut pulumi.IntPtrInput
	// Specify whether to keep original settings of a CVM image. And it can't be used with password or keyIds together.
	KeepImageLogin pulumi.BoolPtrInput
	// ID list of keys.
	KeyIds pulumi.StringArrayInput
	// Password to access.
	Password pulumi.StringPtrInput
	// Specifys to which project the configuration belongs.
	ProjectId pulumi.IntPtrInput
	// Specify whether to assign an Internet IP address.
	PublicIpAssigned pulumi.BoolPtrInput
	// Security groups to which a CVM instance belongs.
	SecurityGroupIds pulumi.StringArrayInput
	// Type of spot instance, only support `one-time` now. Note: it only works when instanceChargeType is set to `SPOTPAID`.
	SpotInstanceType pulumi.StringPtrInput
	// Max price of a spot instance, is the format of decimal string, for example "0.50". Note: it only works when instanceChargeType is set to `SPOTPAID`.
	SpotMaxPrice pulumi.StringPtrInput
	// Current statues of a launch configuration.
	Status pulumi.StringPtrInput
	// Volume of system disk in GB. Default is `50`.
	SystemDiskSize pulumi.IntPtrInput
	// Type of a CVM disk. Valid values: `CLOUD_PREMIUM` and `CLOUD_SSD`. Default is `CLOUD_PREMIUM`. valid when diskTypePolicy is ORIGINAL.
	SystemDiskType pulumi.StringPtrInput
	// ase64-encoded User Data text, the length limit is 16KB.
	UserData pulumi.StringPtrInput
}

func (ScalingConfigState) ElementType

func (ScalingConfigState) ElementType() reflect.Type

type ScalingGroup

type ScalingGroup struct {
	pulumi.CustomResourceState

	// An available ID for a launch configuration.
	ConfigurationId pulumi.StringOutput `pulumi:"configurationId"`
	// The time when the AS group was created.
	CreateTime pulumi.StringOutput `pulumi:"createTime"`
	// Default cooldown time in second, and default value is `300`.
	DefaultCooldown pulumi.IntPtrOutput `pulumi:"defaultCooldown"`
	// Desired volume of CVM instances, which is between `maxSize` and `minSize`.
	DesiredCapacity pulumi.IntOutput `pulumi:"desiredCapacity"`
	// List of application load balancers, which can't be specified with `loadBalancerIds` together.
	ForwardBalancerIds ScalingGroupForwardBalancerIdArrayOutput `pulumi:"forwardBalancerIds"`
	// Instance number of a scaling group.
	InstanceCount pulumi.IntOutput `pulumi:"instanceCount"`
	// ID list of traditional load balancers.
	LoadBalancerIds pulumi.StringArrayOutput `pulumi:"loadBalancerIds"`
	// Maximum number of CVM instances. Valid value ranges: (0~2000).
	MaxSize pulumi.IntOutput `pulumi:"maxSize"`
	// Minimum number of CVM instances. Valid value ranges: (0~2000).
	MinSize pulumi.IntOutput `pulumi:"minSize"`
	// Multi zone or subnet strategy, Valid values: PRIORITY and EQUALITY.
	MultiZoneSubnetPolicy pulumi.StringPtrOutput `pulumi:"multiZoneSubnetPolicy"`
	// Specifies to which project the scaling group belongs.
	ProjectId pulumi.IntPtrOutput `pulumi:"projectId"`
	// Enable unhealthy instance replacement. If set to `true`, AS will replace instances that are found unhealthy in the CLB health check.
	ReplaceLoadBalancerUnhealthy pulumi.BoolPtrOutput `pulumi:"replaceLoadBalancerUnhealthy"`
	// Enables unhealthy instance replacement. If set to `true`, AS will replace instances that are flagged as unhealthy by Cloud Monitor.
	ReplaceMonitorUnhealthy pulumi.BoolPtrOutput `pulumi:"replaceMonitorUnhealthy"`
	// Available values for retry policies. Valid values: IMMEDIATE_RETRY and INCREMENTAL_INTERVALS.
	RetryPolicy pulumi.StringPtrOutput `pulumi:"retryPolicy"`
	// Name of a scaling group.
	ScalingGroupName pulumi.StringOutput `pulumi:"scalingGroupName"`
	// Indicates scaling mode which creates and terminates instances (classic method), or method first tries to start stopped instances (wake up stopped) to perform scaling operations. Available values: `CLASSIC_SCALING`, `WAKE_UP_STOPPED_SCALING`. Default: `CLASSIC_SCALING`.
	ScalingMode pulumi.StringPtrOutput `pulumi:"scalingMode"`
	// Current status of a scaling group.
	Status pulumi.StringOutput `pulumi:"status"`
	// ID list of subnet, and for VPC it is required.
	SubnetIds pulumi.StringArrayOutput `pulumi:"subnetIds"`
	// Tags of a scaling group.
	Tags pulumi.MapOutput `pulumi:"tags"`
	// Available values for termination policies. Valid values: OLDEST_INSTANCE and NEWEST_INSTANCE.
	TerminationPolicies pulumi.StringOutput `pulumi:"terminationPolicies"`
	// ID of VPC network.
	VpcId pulumi.StringOutput `pulumi:"vpcId"`
	// List of available zones, for Basic network it is required.
	Zones pulumi.StringArrayOutput `pulumi:"zones"`
}

Provides a resource to create a group of AS (Auto scaling) instances.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-tencentcloud/sdk/go/tencentcloud/As"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/tencentcloudstack/pulumi-tencentcloud/sdk/go/tencentcloud/As"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := As.NewScalingGroup(ctx, "scalingGroup", &As.ScalingGroupArgs{
			ConfigurationId: pulumi.String("asc-oqio4yyj"),
			DefaultCooldown: pulumi.Int(400),
			DesiredCapacity: pulumi.Int(1),
			ForwardBalancerIds: as.ScalingGroupForwardBalancerIdArray{
				&as.ScalingGroupForwardBalancerIdArgs{
					ListenerId:     pulumi.String("lbl-81wr497k"),
					LoadBalancerId: pulumi.String("lb-hk693b1l"),
					RuleId:         pulumi.String("loc-kiodx943"),
					TargetAttributes: as.ScalingGroupForwardBalancerIdTargetAttributeArray{
						&as.ScalingGroupForwardBalancerIdTargetAttributeArgs{
							Port:   pulumi.Int(80),
							Weight: pulumi.Int(90),
						},
					},
				},
			},
			MaxSize:          pulumi.Int(1),
			MinSize:          pulumi.Int(0),
			ProjectId:        pulumi.Int(0),
			RetryPolicy:      pulumi.String("INCREMENTAL_INTERVALS"),
			ScalingGroupName: pulumi.String("tf-as-scaling-group"),
			SubnetIds: pulumi.StringArray{
				pulumi.String("subnet-mc3egos"),
			},
			TerminationPolicies: pulumi.String("NEWEST_INSTANCE"),
			VpcId:               pulumi.String("vpc-3efmz0z"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

AutoScaling Groups can be imported using the id, e.g.

```sh

$ pulumi import tencentcloud:As/scalingGroup:ScalingGroup scaling_group asg-n32ymck2

```

func GetScalingGroup

func GetScalingGroup(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ScalingGroupState, opts ...pulumi.ResourceOption) (*ScalingGroup, error)

GetScalingGroup gets an existing ScalingGroup 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 NewScalingGroup

func NewScalingGroup(ctx *pulumi.Context,
	name string, args *ScalingGroupArgs, opts ...pulumi.ResourceOption) (*ScalingGroup, error)

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

func (*ScalingGroup) ElementType

func (*ScalingGroup) ElementType() reflect.Type

func (*ScalingGroup) ToScalingGroupOutput

func (i *ScalingGroup) ToScalingGroupOutput() ScalingGroupOutput

func (*ScalingGroup) ToScalingGroupOutputWithContext

func (i *ScalingGroup) ToScalingGroupOutputWithContext(ctx context.Context) ScalingGroupOutput

type ScalingGroupArgs

type ScalingGroupArgs struct {
	// An available ID for a launch configuration.
	ConfigurationId pulumi.StringInput
	// Default cooldown time in second, and default value is `300`.
	DefaultCooldown pulumi.IntPtrInput
	// Desired volume of CVM instances, which is between `maxSize` and `minSize`.
	DesiredCapacity pulumi.IntPtrInput
	// List of application load balancers, which can't be specified with `loadBalancerIds` together.
	ForwardBalancerIds ScalingGroupForwardBalancerIdArrayInput
	// ID list of traditional load balancers.
	LoadBalancerIds pulumi.StringArrayInput
	// Maximum number of CVM instances. Valid value ranges: (0~2000).
	MaxSize pulumi.IntInput
	// Minimum number of CVM instances. Valid value ranges: (0~2000).
	MinSize pulumi.IntInput
	// Multi zone or subnet strategy, Valid values: PRIORITY and EQUALITY.
	MultiZoneSubnetPolicy pulumi.StringPtrInput
	// Specifies to which project the scaling group belongs.
	ProjectId pulumi.IntPtrInput
	// Enable unhealthy instance replacement. If set to `true`, AS will replace instances that are found unhealthy in the CLB health check.
	ReplaceLoadBalancerUnhealthy pulumi.BoolPtrInput
	// Enables unhealthy instance replacement. If set to `true`, AS will replace instances that are flagged as unhealthy by Cloud Monitor.
	ReplaceMonitorUnhealthy pulumi.BoolPtrInput
	// Available values for retry policies. Valid values: IMMEDIATE_RETRY and INCREMENTAL_INTERVALS.
	RetryPolicy pulumi.StringPtrInput
	// Name of a scaling group.
	ScalingGroupName pulumi.StringInput
	// Indicates scaling mode which creates and terminates instances (classic method), or method first tries to start stopped instances (wake up stopped) to perform scaling operations. Available values: `CLASSIC_SCALING`, `WAKE_UP_STOPPED_SCALING`. Default: `CLASSIC_SCALING`.
	ScalingMode pulumi.StringPtrInput
	// ID list of subnet, and for VPC it is required.
	SubnetIds pulumi.StringArrayInput
	// Tags of a scaling group.
	Tags pulumi.MapInput
	// Available values for termination policies. Valid values: OLDEST_INSTANCE and NEWEST_INSTANCE.
	TerminationPolicies pulumi.StringPtrInput
	// ID of VPC network.
	VpcId pulumi.StringInput
	// List of available zones, for Basic network it is required.
	Zones pulumi.StringArrayInput
}

The set of arguments for constructing a ScalingGroup resource.

func (ScalingGroupArgs) ElementType

func (ScalingGroupArgs) ElementType() reflect.Type

type ScalingGroupArray

type ScalingGroupArray []ScalingGroupInput

func (ScalingGroupArray) ElementType

func (ScalingGroupArray) ElementType() reflect.Type

func (ScalingGroupArray) ToScalingGroupArrayOutput

func (i ScalingGroupArray) ToScalingGroupArrayOutput() ScalingGroupArrayOutput

func (ScalingGroupArray) ToScalingGroupArrayOutputWithContext

func (i ScalingGroupArray) ToScalingGroupArrayOutputWithContext(ctx context.Context) ScalingGroupArrayOutput

type ScalingGroupArrayInput

type ScalingGroupArrayInput interface {
	pulumi.Input

	ToScalingGroupArrayOutput() ScalingGroupArrayOutput
	ToScalingGroupArrayOutputWithContext(context.Context) ScalingGroupArrayOutput
}

ScalingGroupArrayInput is an input type that accepts ScalingGroupArray and ScalingGroupArrayOutput values. You can construct a concrete instance of `ScalingGroupArrayInput` via:

ScalingGroupArray{ ScalingGroupArgs{...} }

type ScalingGroupArrayOutput

type ScalingGroupArrayOutput struct{ *pulumi.OutputState }

func (ScalingGroupArrayOutput) ElementType

func (ScalingGroupArrayOutput) ElementType() reflect.Type

func (ScalingGroupArrayOutput) Index

func (ScalingGroupArrayOutput) ToScalingGroupArrayOutput

func (o ScalingGroupArrayOutput) ToScalingGroupArrayOutput() ScalingGroupArrayOutput

func (ScalingGroupArrayOutput) ToScalingGroupArrayOutputWithContext

func (o ScalingGroupArrayOutput) ToScalingGroupArrayOutputWithContext(ctx context.Context) ScalingGroupArrayOutput

type ScalingGroupForwardBalancerId

type ScalingGroupForwardBalancerId struct {
	// Listener ID for application load balancers.
	ListenerId string `pulumi:"listenerId"`
	// ID of available load balancers.
	LoadBalancerId string `pulumi:"loadBalancerId"`
	// ID of forwarding rules.
	RuleId *string `pulumi:"ruleId"`
	// Attribute list of target rules.
	TargetAttributes []ScalingGroupForwardBalancerIdTargetAttribute `pulumi:"targetAttributes"`
}

type ScalingGroupForwardBalancerIdArgs

type ScalingGroupForwardBalancerIdArgs struct {
	// Listener ID for application load balancers.
	ListenerId pulumi.StringInput `pulumi:"listenerId"`
	// ID of available load balancers.
	LoadBalancerId pulumi.StringInput `pulumi:"loadBalancerId"`
	// ID of forwarding rules.
	RuleId pulumi.StringPtrInput `pulumi:"ruleId"`
	// Attribute list of target rules.
	TargetAttributes ScalingGroupForwardBalancerIdTargetAttributeArrayInput `pulumi:"targetAttributes"`
}

func (ScalingGroupForwardBalancerIdArgs) ElementType

func (ScalingGroupForwardBalancerIdArgs) ToScalingGroupForwardBalancerIdOutput

func (i ScalingGroupForwardBalancerIdArgs) ToScalingGroupForwardBalancerIdOutput() ScalingGroupForwardBalancerIdOutput

func (ScalingGroupForwardBalancerIdArgs) ToScalingGroupForwardBalancerIdOutputWithContext

func (i ScalingGroupForwardBalancerIdArgs) ToScalingGroupForwardBalancerIdOutputWithContext(ctx context.Context) ScalingGroupForwardBalancerIdOutput

type ScalingGroupForwardBalancerIdArray

type ScalingGroupForwardBalancerIdArray []ScalingGroupForwardBalancerIdInput

func (ScalingGroupForwardBalancerIdArray) ElementType

func (ScalingGroupForwardBalancerIdArray) ToScalingGroupForwardBalancerIdArrayOutput

func (i ScalingGroupForwardBalancerIdArray) ToScalingGroupForwardBalancerIdArrayOutput() ScalingGroupForwardBalancerIdArrayOutput

func (ScalingGroupForwardBalancerIdArray) ToScalingGroupForwardBalancerIdArrayOutputWithContext

func (i ScalingGroupForwardBalancerIdArray) ToScalingGroupForwardBalancerIdArrayOutputWithContext(ctx context.Context) ScalingGroupForwardBalancerIdArrayOutput

type ScalingGroupForwardBalancerIdArrayInput

type ScalingGroupForwardBalancerIdArrayInput interface {
	pulumi.Input

	ToScalingGroupForwardBalancerIdArrayOutput() ScalingGroupForwardBalancerIdArrayOutput
	ToScalingGroupForwardBalancerIdArrayOutputWithContext(context.Context) ScalingGroupForwardBalancerIdArrayOutput
}

ScalingGroupForwardBalancerIdArrayInput is an input type that accepts ScalingGroupForwardBalancerIdArray and ScalingGroupForwardBalancerIdArrayOutput values. You can construct a concrete instance of `ScalingGroupForwardBalancerIdArrayInput` via:

ScalingGroupForwardBalancerIdArray{ ScalingGroupForwardBalancerIdArgs{...} }

type ScalingGroupForwardBalancerIdArrayOutput

type ScalingGroupForwardBalancerIdArrayOutput struct{ *pulumi.OutputState }

func (ScalingGroupForwardBalancerIdArrayOutput) ElementType

func (ScalingGroupForwardBalancerIdArrayOutput) Index

func (ScalingGroupForwardBalancerIdArrayOutput) ToScalingGroupForwardBalancerIdArrayOutput

func (o ScalingGroupForwardBalancerIdArrayOutput) ToScalingGroupForwardBalancerIdArrayOutput() ScalingGroupForwardBalancerIdArrayOutput

func (ScalingGroupForwardBalancerIdArrayOutput) ToScalingGroupForwardBalancerIdArrayOutputWithContext

func (o ScalingGroupForwardBalancerIdArrayOutput) ToScalingGroupForwardBalancerIdArrayOutputWithContext(ctx context.Context) ScalingGroupForwardBalancerIdArrayOutput

type ScalingGroupForwardBalancerIdInput

type ScalingGroupForwardBalancerIdInput interface {
	pulumi.Input

	ToScalingGroupForwardBalancerIdOutput() ScalingGroupForwardBalancerIdOutput
	ToScalingGroupForwardBalancerIdOutputWithContext(context.Context) ScalingGroupForwardBalancerIdOutput
}

ScalingGroupForwardBalancerIdInput is an input type that accepts ScalingGroupForwardBalancerIdArgs and ScalingGroupForwardBalancerIdOutput values. You can construct a concrete instance of `ScalingGroupForwardBalancerIdInput` via:

ScalingGroupForwardBalancerIdArgs{...}

type ScalingGroupForwardBalancerIdOutput

type ScalingGroupForwardBalancerIdOutput struct{ *pulumi.OutputState }

func (ScalingGroupForwardBalancerIdOutput) ElementType

func (ScalingGroupForwardBalancerIdOutput) ListenerId

Listener ID for application load balancers.

func (ScalingGroupForwardBalancerIdOutput) LoadBalancerId

ID of available load balancers.

func (ScalingGroupForwardBalancerIdOutput) RuleId

ID of forwarding rules.

func (ScalingGroupForwardBalancerIdOutput) TargetAttributes

Attribute list of target rules.

func (ScalingGroupForwardBalancerIdOutput) ToScalingGroupForwardBalancerIdOutput

func (o ScalingGroupForwardBalancerIdOutput) ToScalingGroupForwardBalancerIdOutput() ScalingGroupForwardBalancerIdOutput

func (ScalingGroupForwardBalancerIdOutput) ToScalingGroupForwardBalancerIdOutputWithContext

func (o ScalingGroupForwardBalancerIdOutput) ToScalingGroupForwardBalancerIdOutputWithContext(ctx context.Context) ScalingGroupForwardBalancerIdOutput

type ScalingGroupForwardBalancerIdTargetAttribute

type ScalingGroupForwardBalancerIdTargetAttribute struct {
	// Port number.
	Port int `pulumi:"port"`
	// Weight.
	Weight int `pulumi:"weight"`
}

type ScalingGroupForwardBalancerIdTargetAttributeArgs

type ScalingGroupForwardBalancerIdTargetAttributeArgs struct {
	// Port number.
	Port pulumi.IntInput `pulumi:"port"`
	// Weight.
	Weight pulumi.IntInput `pulumi:"weight"`
}

func (ScalingGroupForwardBalancerIdTargetAttributeArgs) ElementType

func (ScalingGroupForwardBalancerIdTargetAttributeArgs) ToScalingGroupForwardBalancerIdTargetAttributeOutput

func (i ScalingGroupForwardBalancerIdTargetAttributeArgs) ToScalingGroupForwardBalancerIdTargetAttributeOutput() ScalingGroupForwardBalancerIdTargetAttributeOutput

func (ScalingGroupForwardBalancerIdTargetAttributeArgs) ToScalingGroupForwardBalancerIdTargetAttributeOutputWithContext

func (i ScalingGroupForwardBalancerIdTargetAttributeArgs) ToScalingGroupForwardBalancerIdTargetAttributeOutputWithContext(ctx context.Context) ScalingGroupForwardBalancerIdTargetAttributeOutput

type ScalingGroupForwardBalancerIdTargetAttributeArray

type ScalingGroupForwardBalancerIdTargetAttributeArray []ScalingGroupForwardBalancerIdTargetAttributeInput

func (ScalingGroupForwardBalancerIdTargetAttributeArray) ElementType

func (ScalingGroupForwardBalancerIdTargetAttributeArray) ToScalingGroupForwardBalancerIdTargetAttributeArrayOutput

func (i ScalingGroupForwardBalancerIdTargetAttributeArray) ToScalingGroupForwardBalancerIdTargetAttributeArrayOutput() ScalingGroupForwardBalancerIdTargetAttributeArrayOutput

func (ScalingGroupForwardBalancerIdTargetAttributeArray) ToScalingGroupForwardBalancerIdTargetAttributeArrayOutputWithContext

func (i ScalingGroupForwardBalancerIdTargetAttributeArray) ToScalingGroupForwardBalancerIdTargetAttributeArrayOutputWithContext(ctx context.Context) ScalingGroupForwardBalancerIdTargetAttributeArrayOutput

type ScalingGroupForwardBalancerIdTargetAttributeArrayInput

type ScalingGroupForwardBalancerIdTargetAttributeArrayInput interface {
	pulumi.Input

	ToScalingGroupForwardBalancerIdTargetAttributeArrayOutput() ScalingGroupForwardBalancerIdTargetAttributeArrayOutput
	ToScalingGroupForwardBalancerIdTargetAttributeArrayOutputWithContext(context.Context) ScalingGroupForwardBalancerIdTargetAttributeArrayOutput
}

ScalingGroupForwardBalancerIdTargetAttributeArrayInput is an input type that accepts ScalingGroupForwardBalancerIdTargetAttributeArray and ScalingGroupForwardBalancerIdTargetAttributeArrayOutput values. You can construct a concrete instance of `ScalingGroupForwardBalancerIdTargetAttributeArrayInput` via:

ScalingGroupForwardBalancerIdTargetAttributeArray{ ScalingGroupForwardBalancerIdTargetAttributeArgs{...} }

type ScalingGroupForwardBalancerIdTargetAttributeArrayOutput

type ScalingGroupForwardBalancerIdTargetAttributeArrayOutput struct{ *pulumi.OutputState }

func (ScalingGroupForwardBalancerIdTargetAttributeArrayOutput) ElementType

func (ScalingGroupForwardBalancerIdTargetAttributeArrayOutput) Index

func (ScalingGroupForwardBalancerIdTargetAttributeArrayOutput) ToScalingGroupForwardBalancerIdTargetAttributeArrayOutput

func (ScalingGroupForwardBalancerIdTargetAttributeArrayOutput) ToScalingGroupForwardBalancerIdTargetAttributeArrayOutputWithContext

func (o ScalingGroupForwardBalancerIdTargetAttributeArrayOutput) ToScalingGroupForwardBalancerIdTargetAttributeArrayOutputWithContext(ctx context.Context) ScalingGroupForwardBalancerIdTargetAttributeArrayOutput

type ScalingGroupForwardBalancerIdTargetAttributeInput

type ScalingGroupForwardBalancerIdTargetAttributeInput interface {
	pulumi.Input

	ToScalingGroupForwardBalancerIdTargetAttributeOutput() ScalingGroupForwardBalancerIdTargetAttributeOutput
	ToScalingGroupForwardBalancerIdTargetAttributeOutputWithContext(context.Context) ScalingGroupForwardBalancerIdTargetAttributeOutput
}

ScalingGroupForwardBalancerIdTargetAttributeInput is an input type that accepts ScalingGroupForwardBalancerIdTargetAttributeArgs and ScalingGroupForwardBalancerIdTargetAttributeOutput values. You can construct a concrete instance of `ScalingGroupForwardBalancerIdTargetAttributeInput` via:

ScalingGroupForwardBalancerIdTargetAttributeArgs{...}

type ScalingGroupForwardBalancerIdTargetAttributeOutput

type ScalingGroupForwardBalancerIdTargetAttributeOutput struct{ *pulumi.OutputState }

func (ScalingGroupForwardBalancerIdTargetAttributeOutput) ElementType

func (ScalingGroupForwardBalancerIdTargetAttributeOutput) Port

Port number.

func (ScalingGroupForwardBalancerIdTargetAttributeOutput) ToScalingGroupForwardBalancerIdTargetAttributeOutput

func (o ScalingGroupForwardBalancerIdTargetAttributeOutput) ToScalingGroupForwardBalancerIdTargetAttributeOutput() ScalingGroupForwardBalancerIdTargetAttributeOutput

func (ScalingGroupForwardBalancerIdTargetAttributeOutput) ToScalingGroupForwardBalancerIdTargetAttributeOutputWithContext

func (o ScalingGroupForwardBalancerIdTargetAttributeOutput) ToScalingGroupForwardBalancerIdTargetAttributeOutputWithContext(ctx context.Context) ScalingGroupForwardBalancerIdTargetAttributeOutput

func (ScalingGroupForwardBalancerIdTargetAttributeOutput) Weight

Weight.

type ScalingGroupInput

type ScalingGroupInput interface {
	pulumi.Input

	ToScalingGroupOutput() ScalingGroupOutput
	ToScalingGroupOutputWithContext(ctx context.Context) ScalingGroupOutput
}

type ScalingGroupMap

type ScalingGroupMap map[string]ScalingGroupInput

func (ScalingGroupMap) ElementType

func (ScalingGroupMap) ElementType() reflect.Type

func (ScalingGroupMap) ToScalingGroupMapOutput

func (i ScalingGroupMap) ToScalingGroupMapOutput() ScalingGroupMapOutput

func (ScalingGroupMap) ToScalingGroupMapOutputWithContext

func (i ScalingGroupMap) ToScalingGroupMapOutputWithContext(ctx context.Context) ScalingGroupMapOutput

type ScalingGroupMapInput

type ScalingGroupMapInput interface {
	pulumi.Input

	ToScalingGroupMapOutput() ScalingGroupMapOutput
	ToScalingGroupMapOutputWithContext(context.Context) ScalingGroupMapOutput
}

ScalingGroupMapInput is an input type that accepts ScalingGroupMap and ScalingGroupMapOutput values. You can construct a concrete instance of `ScalingGroupMapInput` via:

ScalingGroupMap{ "key": ScalingGroupArgs{...} }

type ScalingGroupMapOutput

type ScalingGroupMapOutput struct{ *pulumi.OutputState }

func (ScalingGroupMapOutput) ElementType

func (ScalingGroupMapOutput) ElementType() reflect.Type

func (ScalingGroupMapOutput) MapIndex

func (ScalingGroupMapOutput) ToScalingGroupMapOutput

func (o ScalingGroupMapOutput) ToScalingGroupMapOutput() ScalingGroupMapOutput

func (ScalingGroupMapOutput) ToScalingGroupMapOutputWithContext

func (o ScalingGroupMapOutput) ToScalingGroupMapOutputWithContext(ctx context.Context) ScalingGroupMapOutput

type ScalingGroupOutput

type ScalingGroupOutput struct{ *pulumi.OutputState }

func (ScalingGroupOutput) ConfigurationId

func (o ScalingGroupOutput) ConfigurationId() pulumi.StringOutput

An available ID for a launch configuration.

func (ScalingGroupOutput) CreateTime

func (o ScalingGroupOutput) CreateTime() pulumi.StringOutput

The time when the AS group was created.

func (ScalingGroupOutput) DefaultCooldown

func (o ScalingGroupOutput) DefaultCooldown() pulumi.IntPtrOutput

Default cooldown time in second, and default value is `300`.

func (ScalingGroupOutput) DesiredCapacity

func (o ScalingGroupOutput) DesiredCapacity() pulumi.IntOutput

Desired volume of CVM instances, which is between `maxSize` and `minSize`.

func (ScalingGroupOutput) ElementType

func (ScalingGroupOutput) ElementType() reflect.Type

func (ScalingGroupOutput) ForwardBalancerIds

List of application load balancers, which can't be specified with `loadBalancerIds` together.

func (ScalingGroupOutput) InstanceCount

func (o ScalingGroupOutput) InstanceCount() pulumi.IntOutput

Instance number of a scaling group.

func (ScalingGroupOutput) LoadBalancerIds

func (o ScalingGroupOutput) LoadBalancerIds() pulumi.StringArrayOutput

ID list of traditional load balancers.

func (ScalingGroupOutput) MaxSize

func (o ScalingGroupOutput) MaxSize() pulumi.IntOutput

Maximum number of CVM instances. Valid value ranges: (0~2000).

func (ScalingGroupOutput) MinSize

func (o ScalingGroupOutput) MinSize() pulumi.IntOutput

Minimum number of CVM instances. Valid value ranges: (0~2000).

func (ScalingGroupOutput) MultiZoneSubnetPolicy

func (o ScalingGroupOutput) MultiZoneSubnetPolicy() pulumi.StringPtrOutput

Multi zone or subnet strategy, Valid values: PRIORITY and EQUALITY.

func (ScalingGroupOutput) ProjectId

func (o ScalingGroupOutput) ProjectId() pulumi.IntPtrOutput

Specifies to which project the scaling group belongs.

func (ScalingGroupOutput) ReplaceLoadBalancerUnhealthy

func (o ScalingGroupOutput) ReplaceLoadBalancerUnhealthy() pulumi.BoolPtrOutput

Enable unhealthy instance replacement. If set to `true`, AS will replace instances that are found unhealthy in the CLB health check.

func (ScalingGroupOutput) ReplaceMonitorUnhealthy

func (o ScalingGroupOutput) ReplaceMonitorUnhealthy() pulumi.BoolPtrOutput

Enables unhealthy instance replacement. If set to `true`, AS will replace instances that are flagged as unhealthy by Cloud Monitor.

func (ScalingGroupOutput) RetryPolicy

func (o ScalingGroupOutput) RetryPolicy() pulumi.StringPtrOutput

Available values for retry policies. Valid values: IMMEDIATE_RETRY and INCREMENTAL_INTERVALS.

func (ScalingGroupOutput) ScalingGroupName

func (o ScalingGroupOutput) ScalingGroupName() pulumi.StringOutput

Name of a scaling group.

func (ScalingGroupOutput) ScalingMode

func (o ScalingGroupOutput) ScalingMode() pulumi.StringPtrOutput

Indicates scaling mode which creates and terminates instances (classic method), or method first tries to start stopped instances (wake up stopped) to perform scaling operations. Available values: `CLASSIC_SCALING`, `WAKE_UP_STOPPED_SCALING`. Default: `CLASSIC_SCALING`.

func (ScalingGroupOutput) Status

Current status of a scaling group.

func (ScalingGroupOutput) SubnetIds

ID list of subnet, and for VPC it is required.

func (ScalingGroupOutput) Tags

Tags of a scaling group.

func (ScalingGroupOutput) TerminationPolicies

func (o ScalingGroupOutput) TerminationPolicies() pulumi.StringOutput

Available values for termination policies. Valid values: OLDEST_INSTANCE and NEWEST_INSTANCE.

func (ScalingGroupOutput) ToScalingGroupOutput

func (o ScalingGroupOutput) ToScalingGroupOutput() ScalingGroupOutput

func (ScalingGroupOutput) ToScalingGroupOutputWithContext

func (o ScalingGroupOutput) ToScalingGroupOutputWithContext(ctx context.Context) ScalingGroupOutput

func (ScalingGroupOutput) VpcId

ID of VPC network.

func (ScalingGroupOutput) Zones

List of available zones, for Basic network it is required.

type ScalingGroupState

type ScalingGroupState struct {
	// An available ID for a launch configuration.
	ConfigurationId pulumi.StringPtrInput
	// The time when the AS group was created.
	CreateTime pulumi.StringPtrInput
	// Default cooldown time in second, and default value is `300`.
	DefaultCooldown pulumi.IntPtrInput
	// Desired volume of CVM instances, which is between `maxSize` and `minSize`.
	DesiredCapacity pulumi.IntPtrInput
	// List of application load balancers, which can't be specified with `loadBalancerIds` together.
	ForwardBalancerIds ScalingGroupForwardBalancerIdArrayInput
	// Instance number of a scaling group.
	InstanceCount pulumi.IntPtrInput
	// ID list of traditional load balancers.
	LoadBalancerIds pulumi.StringArrayInput
	// Maximum number of CVM instances. Valid value ranges: (0~2000).
	MaxSize pulumi.IntPtrInput
	// Minimum number of CVM instances. Valid value ranges: (0~2000).
	MinSize pulumi.IntPtrInput
	// Multi zone or subnet strategy, Valid values: PRIORITY and EQUALITY.
	MultiZoneSubnetPolicy pulumi.StringPtrInput
	// Specifies to which project the scaling group belongs.
	ProjectId pulumi.IntPtrInput
	// Enable unhealthy instance replacement. If set to `true`, AS will replace instances that are found unhealthy in the CLB health check.
	ReplaceLoadBalancerUnhealthy pulumi.BoolPtrInput
	// Enables unhealthy instance replacement. If set to `true`, AS will replace instances that are flagged as unhealthy by Cloud Monitor.
	ReplaceMonitorUnhealthy pulumi.BoolPtrInput
	// Available values for retry policies. Valid values: IMMEDIATE_RETRY and INCREMENTAL_INTERVALS.
	RetryPolicy pulumi.StringPtrInput
	// Name of a scaling group.
	ScalingGroupName pulumi.StringPtrInput
	// Indicates scaling mode which creates and terminates instances (classic method), or method first tries to start stopped instances (wake up stopped) to perform scaling operations. Available values: `CLASSIC_SCALING`, `WAKE_UP_STOPPED_SCALING`. Default: `CLASSIC_SCALING`.
	ScalingMode pulumi.StringPtrInput
	// Current status of a scaling group.
	Status pulumi.StringPtrInput
	// ID list of subnet, and for VPC it is required.
	SubnetIds pulumi.StringArrayInput
	// Tags of a scaling group.
	Tags pulumi.MapInput
	// Available values for termination policies. Valid values: OLDEST_INSTANCE and NEWEST_INSTANCE.
	TerminationPolicies pulumi.StringPtrInput
	// ID of VPC network.
	VpcId pulumi.StringPtrInput
	// List of available zones, for Basic network it is required.
	Zones pulumi.StringArrayInput
}

func (ScalingGroupState) ElementType

func (ScalingGroupState) ElementType() reflect.Type

type ScalingPolicy

type ScalingPolicy struct {
	pulumi.CustomResourceState

	// Specifies whether the adjustment is an absolute number or a percentage of the current capacity. Valid values: `CHANGE_IN_CAPACITY`, `EXACT_CAPACITY` and `PERCENT_CHANGE_IN_CAPACITY`.
	AdjustmentType pulumi.StringOutput `pulumi:"adjustmentType"`
	// Define the number of instances by which to scale.For `CHANGE_IN_CAPACITY` type or PERCENT_CHANGE_IN_CAPACITY, a positive increment adds to the current capacity and a negative value removes from the current capacity. For `EXACT_CAPACITY` type, it defines an absolute number of the existing Auto Scaling group size.
	AdjustmentValue pulumi.IntOutput `pulumi:"adjustmentValue"`
	// Comparison operator. Valid values: `GREATER_THAN`, `GREATER_THAN_OR_EQUAL_TO`, `LESS_THAN`, `LESS_THAN_OR_EQUAL_TO`, `EQUAL_TO` and `NOT_EQUAL_TO`.
	ComparisonOperator pulumi.StringOutput `pulumi:"comparisonOperator"`
	// Retry times. Valid value ranges: (1~10).
	ContinuousTime pulumi.IntOutput `pulumi:"continuousTime"`
	// Cooldwon time in second. Default is `30`0.
	Cooldown pulumi.IntPtrOutput `pulumi:"cooldown"`
	// Name of an indicator. Valid values: `CPU_UTILIZATION`, `MEM_UTILIZATION`, `LAN_TRAFFIC_OUT`, `LAN_TRAFFIC_IN`, `WAN_TRAFFIC_OUT` and `WAN_TRAFFIC_IN`.
	MetricName pulumi.StringOutput `pulumi:"metricName"`
	// An ID group of users to be notified when an alarm is triggered.
	NotificationUserGroupIds pulumi.StringArrayOutput `pulumi:"notificationUserGroupIds"`
	// Time period in second. Valid values: `60` and `300`.
	Period pulumi.IntOutput `pulumi:"period"`
	// Name of a policy used to define a reaction when an alarm is triggered.
	PolicyName pulumi.StringOutput `pulumi:"policyName"`
	// ID of a scaling group.
	ScalingGroupId pulumi.StringOutput `pulumi:"scalingGroupId"`
	// Statistic types. Valid values: `AVERAGE`, `MAXIMUM` and `MINIMUM`. Default is `AVERAGE`.
	Statistic pulumi.StringPtrOutput `pulumi:"statistic"`
	// Alarm threshold.
	Threshold pulumi.IntOutput `pulumi:"threshold"`
}

Provides a resource for an AS (Auto scaling) policy.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/tencentcloudstack/pulumi-tencentcloud/sdk/go/tencentcloud/As"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := As.NewScalingPolicy(ctx, "scalingPolicy", &As.ScalingPolicyArgs{
			AdjustmentType:     pulumi.String("EXACT_CAPACITY"),
			AdjustmentValue:    pulumi.Int(0),
			ComparisonOperator: pulumi.String("GREATER_THAN"),
			ContinuousTime:     pulumi.Int(10),
			Cooldown:           pulumi.Int(360),
			MetricName:         pulumi.String("CPU_UTILIZATION"),
			Period:             pulumi.Int(300),
			PolicyName:         pulumi.String("tf-as-scaling-policy"),
			ScalingGroupId:     pulumi.String("asg-n32ymck2"),
			Statistic:          pulumi.String("AVERAGE"),
			Threshold:          pulumi.Int(80),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetScalingPolicy

func GetScalingPolicy(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ScalingPolicyState, opts ...pulumi.ResourceOption) (*ScalingPolicy, error)

GetScalingPolicy gets an existing ScalingPolicy 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 NewScalingPolicy

func NewScalingPolicy(ctx *pulumi.Context,
	name string, args *ScalingPolicyArgs, opts ...pulumi.ResourceOption) (*ScalingPolicy, error)

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

func (*ScalingPolicy) ElementType

func (*ScalingPolicy) ElementType() reflect.Type

func (*ScalingPolicy) ToScalingPolicyOutput

func (i *ScalingPolicy) ToScalingPolicyOutput() ScalingPolicyOutput

func (*ScalingPolicy) ToScalingPolicyOutputWithContext

func (i *ScalingPolicy) ToScalingPolicyOutputWithContext(ctx context.Context) ScalingPolicyOutput

type ScalingPolicyArgs

type ScalingPolicyArgs struct {
	// Specifies whether the adjustment is an absolute number or a percentage of the current capacity. Valid values: `CHANGE_IN_CAPACITY`, `EXACT_CAPACITY` and `PERCENT_CHANGE_IN_CAPACITY`.
	AdjustmentType pulumi.StringInput
	// Define the number of instances by which to scale.For `CHANGE_IN_CAPACITY` type or PERCENT_CHANGE_IN_CAPACITY, a positive increment adds to the current capacity and a negative value removes from the current capacity. For `EXACT_CAPACITY` type, it defines an absolute number of the existing Auto Scaling group size.
	AdjustmentValue pulumi.IntInput
	// Comparison operator. Valid values: `GREATER_THAN`, `GREATER_THAN_OR_EQUAL_TO`, `LESS_THAN`, `LESS_THAN_OR_EQUAL_TO`, `EQUAL_TO` and `NOT_EQUAL_TO`.
	ComparisonOperator pulumi.StringInput
	// Retry times. Valid value ranges: (1~10).
	ContinuousTime pulumi.IntInput
	// Cooldwon time in second. Default is `30`0.
	Cooldown pulumi.IntPtrInput
	// Name of an indicator. Valid values: `CPU_UTILIZATION`, `MEM_UTILIZATION`, `LAN_TRAFFIC_OUT`, `LAN_TRAFFIC_IN`, `WAN_TRAFFIC_OUT` and `WAN_TRAFFIC_IN`.
	MetricName pulumi.StringInput
	// An ID group of users to be notified when an alarm is triggered.
	NotificationUserGroupIds pulumi.StringArrayInput
	// Time period in second. Valid values: `60` and `300`.
	Period pulumi.IntInput
	// Name of a policy used to define a reaction when an alarm is triggered.
	PolicyName pulumi.StringInput
	// ID of a scaling group.
	ScalingGroupId pulumi.StringInput
	// Statistic types. Valid values: `AVERAGE`, `MAXIMUM` and `MINIMUM`. Default is `AVERAGE`.
	Statistic pulumi.StringPtrInput
	// Alarm threshold.
	Threshold pulumi.IntInput
}

The set of arguments for constructing a ScalingPolicy resource.

func (ScalingPolicyArgs) ElementType

func (ScalingPolicyArgs) ElementType() reflect.Type

type ScalingPolicyArray

type ScalingPolicyArray []ScalingPolicyInput

func (ScalingPolicyArray) ElementType

func (ScalingPolicyArray) ElementType() reflect.Type

func (ScalingPolicyArray) ToScalingPolicyArrayOutput

func (i ScalingPolicyArray) ToScalingPolicyArrayOutput() ScalingPolicyArrayOutput

func (ScalingPolicyArray) ToScalingPolicyArrayOutputWithContext

func (i ScalingPolicyArray) ToScalingPolicyArrayOutputWithContext(ctx context.Context) ScalingPolicyArrayOutput

type ScalingPolicyArrayInput

type ScalingPolicyArrayInput interface {
	pulumi.Input

	ToScalingPolicyArrayOutput() ScalingPolicyArrayOutput
	ToScalingPolicyArrayOutputWithContext(context.Context) ScalingPolicyArrayOutput
}

ScalingPolicyArrayInput is an input type that accepts ScalingPolicyArray and ScalingPolicyArrayOutput values. You can construct a concrete instance of `ScalingPolicyArrayInput` via:

ScalingPolicyArray{ ScalingPolicyArgs{...} }

type ScalingPolicyArrayOutput

type ScalingPolicyArrayOutput struct{ *pulumi.OutputState }

func (ScalingPolicyArrayOutput) ElementType

func (ScalingPolicyArrayOutput) ElementType() reflect.Type

func (ScalingPolicyArrayOutput) Index

func (ScalingPolicyArrayOutput) ToScalingPolicyArrayOutput

func (o ScalingPolicyArrayOutput) ToScalingPolicyArrayOutput() ScalingPolicyArrayOutput

func (ScalingPolicyArrayOutput) ToScalingPolicyArrayOutputWithContext

func (o ScalingPolicyArrayOutput) ToScalingPolicyArrayOutputWithContext(ctx context.Context) ScalingPolicyArrayOutput

type ScalingPolicyInput

type ScalingPolicyInput interface {
	pulumi.Input

	ToScalingPolicyOutput() ScalingPolicyOutput
	ToScalingPolicyOutputWithContext(ctx context.Context) ScalingPolicyOutput
}

type ScalingPolicyMap

type ScalingPolicyMap map[string]ScalingPolicyInput

func (ScalingPolicyMap) ElementType

func (ScalingPolicyMap) ElementType() reflect.Type

func (ScalingPolicyMap) ToScalingPolicyMapOutput

func (i ScalingPolicyMap) ToScalingPolicyMapOutput() ScalingPolicyMapOutput

func (ScalingPolicyMap) ToScalingPolicyMapOutputWithContext

func (i ScalingPolicyMap) ToScalingPolicyMapOutputWithContext(ctx context.Context) ScalingPolicyMapOutput

type ScalingPolicyMapInput

type ScalingPolicyMapInput interface {
	pulumi.Input

	ToScalingPolicyMapOutput() ScalingPolicyMapOutput
	ToScalingPolicyMapOutputWithContext(context.Context) ScalingPolicyMapOutput
}

ScalingPolicyMapInput is an input type that accepts ScalingPolicyMap and ScalingPolicyMapOutput values. You can construct a concrete instance of `ScalingPolicyMapInput` via:

ScalingPolicyMap{ "key": ScalingPolicyArgs{...} }

type ScalingPolicyMapOutput

type ScalingPolicyMapOutput struct{ *pulumi.OutputState }

func (ScalingPolicyMapOutput) ElementType

func (ScalingPolicyMapOutput) ElementType() reflect.Type

func (ScalingPolicyMapOutput) MapIndex

func (ScalingPolicyMapOutput) ToScalingPolicyMapOutput

func (o ScalingPolicyMapOutput) ToScalingPolicyMapOutput() ScalingPolicyMapOutput

func (ScalingPolicyMapOutput) ToScalingPolicyMapOutputWithContext

func (o ScalingPolicyMapOutput) ToScalingPolicyMapOutputWithContext(ctx context.Context) ScalingPolicyMapOutput

type ScalingPolicyOutput

type ScalingPolicyOutput struct{ *pulumi.OutputState }

func (ScalingPolicyOutput) AdjustmentType

func (o ScalingPolicyOutput) AdjustmentType() pulumi.StringOutput

Specifies whether the adjustment is an absolute number or a percentage of the current capacity. Valid values: `CHANGE_IN_CAPACITY`, `EXACT_CAPACITY` and `PERCENT_CHANGE_IN_CAPACITY`.

func (ScalingPolicyOutput) AdjustmentValue

func (o ScalingPolicyOutput) AdjustmentValue() pulumi.IntOutput

Define the number of instances by which to scale.For `CHANGE_IN_CAPACITY` type or PERCENT_CHANGE_IN_CAPACITY, a positive increment adds to the current capacity and a negative value removes from the current capacity. For `EXACT_CAPACITY` type, it defines an absolute number of the existing Auto Scaling group size.

func (ScalingPolicyOutput) ComparisonOperator

func (o ScalingPolicyOutput) ComparisonOperator() pulumi.StringOutput

Comparison operator. Valid values: `GREATER_THAN`, `GREATER_THAN_OR_EQUAL_TO`, `LESS_THAN`, `LESS_THAN_OR_EQUAL_TO`, `EQUAL_TO` and `NOT_EQUAL_TO`.

func (ScalingPolicyOutput) ContinuousTime

func (o ScalingPolicyOutput) ContinuousTime() pulumi.IntOutput

Retry times. Valid value ranges: (1~10).

func (ScalingPolicyOutput) Cooldown

Cooldwon time in second. Default is `30`0.

func (ScalingPolicyOutput) ElementType

func (ScalingPolicyOutput) ElementType() reflect.Type

func (ScalingPolicyOutput) MetricName

func (o ScalingPolicyOutput) MetricName() pulumi.StringOutput

Name of an indicator. Valid values: `CPU_UTILIZATION`, `MEM_UTILIZATION`, `LAN_TRAFFIC_OUT`, `LAN_TRAFFIC_IN`, `WAN_TRAFFIC_OUT` and `WAN_TRAFFIC_IN`.

func (ScalingPolicyOutput) NotificationUserGroupIds

func (o ScalingPolicyOutput) NotificationUserGroupIds() pulumi.StringArrayOutput

An ID group of users to be notified when an alarm is triggered.

func (ScalingPolicyOutput) Period

Time period in second. Valid values: `60` and `300`.

func (ScalingPolicyOutput) PolicyName

func (o ScalingPolicyOutput) PolicyName() pulumi.StringOutput

Name of a policy used to define a reaction when an alarm is triggered.

func (ScalingPolicyOutput) ScalingGroupId

func (o ScalingPolicyOutput) ScalingGroupId() pulumi.StringOutput

ID of a scaling group.

func (ScalingPolicyOutput) Statistic

Statistic types. Valid values: `AVERAGE`, `MAXIMUM` and `MINIMUM`. Default is `AVERAGE`.

func (ScalingPolicyOutput) Threshold

func (o ScalingPolicyOutput) Threshold() pulumi.IntOutput

Alarm threshold.

func (ScalingPolicyOutput) ToScalingPolicyOutput

func (o ScalingPolicyOutput) ToScalingPolicyOutput() ScalingPolicyOutput

func (ScalingPolicyOutput) ToScalingPolicyOutputWithContext

func (o ScalingPolicyOutput) ToScalingPolicyOutputWithContext(ctx context.Context) ScalingPolicyOutput

type ScalingPolicyState

type ScalingPolicyState struct {
	// Specifies whether the adjustment is an absolute number or a percentage of the current capacity. Valid values: `CHANGE_IN_CAPACITY`, `EXACT_CAPACITY` and `PERCENT_CHANGE_IN_CAPACITY`.
	AdjustmentType pulumi.StringPtrInput
	// Define the number of instances by which to scale.For `CHANGE_IN_CAPACITY` type or PERCENT_CHANGE_IN_CAPACITY, a positive increment adds to the current capacity and a negative value removes from the current capacity. For `EXACT_CAPACITY` type, it defines an absolute number of the existing Auto Scaling group size.
	AdjustmentValue pulumi.IntPtrInput
	// Comparison operator. Valid values: `GREATER_THAN`, `GREATER_THAN_OR_EQUAL_TO`, `LESS_THAN`, `LESS_THAN_OR_EQUAL_TO`, `EQUAL_TO` and `NOT_EQUAL_TO`.
	ComparisonOperator pulumi.StringPtrInput
	// Retry times. Valid value ranges: (1~10).
	ContinuousTime pulumi.IntPtrInput
	// Cooldwon time in second. Default is `30`0.
	Cooldown pulumi.IntPtrInput
	// Name of an indicator. Valid values: `CPU_UTILIZATION`, `MEM_UTILIZATION`, `LAN_TRAFFIC_OUT`, `LAN_TRAFFIC_IN`, `WAN_TRAFFIC_OUT` and `WAN_TRAFFIC_IN`.
	MetricName pulumi.StringPtrInput
	// An ID group of users to be notified when an alarm is triggered.
	NotificationUserGroupIds pulumi.StringArrayInput
	// Time period in second. Valid values: `60` and `300`.
	Period pulumi.IntPtrInput
	// Name of a policy used to define a reaction when an alarm is triggered.
	PolicyName pulumi.StringPtrInput
	// ID of a scaling group.
	ScalingGroupId pulumi.StringPtrInput
	// Statistic types. Valid values: `AVERAGE`, `MAXIMUM` and `MINIMUM`. Default is `AVERAGE`.
	Statistic pulumi.StringPtrInput
	// Alarm threshold.
	Threshold pulumi.IntPtrInput
}

func (ScalingPolicyState) ElementType

func (ScalingPolicyState) ElementType() reflect.Type

type Schedule

type Schedule struct {
	pulumi.CustomResourceState

	// The desired number of CVM instances that should be running in the group.
	DesiredCapacity pulumi.IntOutput `pulumi:"desiredCapacity"`
	// The time for this action to end, in "YYYY-MM-DDThh:mm:ss+08:00" format (UTC+8).
	EndTime pulumi.StringPtrOutput `pulumi:"endTime"`
	// The maximum size for the Auto Scaling group.
	MaxSize pulumi.IntOutput `pulumi:"maxSize"`
	// The minimum size for the Auto Scaling group.
	MinSize pulumi.IntOutput `pulumi:"minSize"`
	// The time when recurring future actions will start. Start time is specified by the user following the Unix cron syntax format. And this argument should be set with endTime together.
	Recurrence pulumi.StringPtrOutput `pulumi:"recurrence"`
	// ID of a scaling group.
	ScalingGroupId pulumi.StringOutput `pulumi:"scalingGroupId"`
	// The name of this scaling action.
	ScheduleActionName pulumi.StringOutput `pulumi:"scheduleActionName"`
	// The time for this action to start, in "YYYY-MM-DDThh:mm:ss+08:00" format (UTC+8).
	StartTime pulumi.StringOutput `pulumi:"startTime"`
}

Provides a resource for an AS (Auto scaling) schedule.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/tencentcloudstack/pulumi-tencentcloud/sdk/go/tencentcloud/As"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := As.NewSchedule(ctx, "schedule", &As.ScheduleArgs{
			DesiredCapacity:    pulumi.Int(0),
			EndTime:            pulumi.String("2019-12-01T00:00:00+08:00"),
			MaxSize:            pulumi.Int(10),
			MinSize:            pulumi.Int(0),
			Recurrence:         pulumi.String("0 0 * * *"),
			ScalingGroupId:     pulumi.String("sg-12af45"),
			ScheduleActionName: pulumi.String("tf-as-schedule"),
			StartTime:          pulumi.String("2019-01-01T00:00:00+08:00"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetSchedule

func GetSchedule(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ScheduleState, opts ...pulumi.ResourceOption) (*Schedule, error)

GetSchedule gets an existing Schedule 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 NewSchedule

func NewSchedule(ctx *pulumi.Context,
	name string, args *ScheduleArgs, opts ...pulumi.ResourceOption) (*Schedule, error)

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

func (*Schedule) ElementType

func (*Schedule) ElementType() reflect.Type

func (*Schedule) ToScheduleOutput

func (i *Schedule) ToScheduleOutput() ScheduleOutput

func (*Schedule) ToScheduleOutputWithContext

func (i *Schedule) ToScheduleOutputWithContext(ctx context.Context) ScheduleOutput

type ScheduleArgs

type ScheduleArgs struct {
	// The desired number of CVM instances that should be running in the group.
	DesiredCapacity pulumi.IntInput
	// The time for this action to end, in "YYYY-MM-DDThh:mm:ss+08:00" format (UTC+8).
	EndTime pulumi.StringPtrInput
	// The maximum size for the Auto Scaling group.
	MaxSize pulumi.IntInput
	// The minimum size for the Auto Scaling group.
	MinSize pulumi.IntInput
	// The time when recurring future actions will start. Start time is specified by the user following the Unix cron syntax format. And this argument should be set with endTime together.
	Recurrence pulumi.StringPtrInput
	// ID of a scaling group.
	ScalingGroupId pulumi.StringInput
	// The name of this scaling action.
	ScheduleActionName pulumi.StringInput
	// The time for this action to start, in "YYYY-MM-DDThh:mm:ss+08:00" format (UTC+8).
	StartTime pulumi.StringInput
}

The set of arguments for constructing a Schedule resource.

func (ScheduleArgs) ElementType

func (ScheduleArgs) ElementType() reflect.Type

type ScheduleArray

type ScheduleArray []ScheduleInput

func (ScheduleArray) ElementType

func (ScheduleArray) ElementType() reflect.Type

func (ScheduleArray) ToScheduleArrayOutput

func (i ScheduleArray) ToScheduleArrayOutput() ScheduleArrayOutput

func (ScheduleArray) ToScheduleArrayOutputWithContext

func (i ScheduleArray) ToScheduleArrayOutputWithContext(ctx context.Context) ScheduleArrayOutput

type ScheduleArrayInput

type ScheduleArrayInput interface {
	pulumi.Input

	ToScheduleArrayOutput() ScheduleArrayOutput
	ToScheduleArrayOutputWithContext(context.Context) ScheduleArrayOutput
}

ScheduleArrayInput is an input type that accepts ScheduleArray and ScheduleArrayOutput values. You can construct a concrete instance of `ScheduleArrayInput` via:

ScheduleArray{ ScheduleArgs{...} }

type ScheduleArrayOutput

type ScheduleArrayOutput struct{ *pulumi.OutputState }

func (ScheduleArrayOutput) ElementType

func (ScheduleArrayOutput) ElementType() reflect.Type

func (ScheduleArrayOutput) Index

func (ScheduleArrayOutput) ToScheduleArrayOutput

func (o ScheduleArrayOutput) ToScheduleArrayOutput() ScheduleArrayOutput

func (ScheduleArrayOutput) ToScheduleArrayOutputWithContext

func (o ScheduleArrayOutput) ToScheduleArrayOutputWithContext(ctx context.Context) ScheduleArrayOutput

type ScheduleInput

type ScheduleInput interface {
	pulumi.Input

	ToScheduleOutput() ScheduleOutput
	ToScheduleOutputWithContext(ctx context.Context) ScheduleOutput
}

type ScheduleMap

type ScheduleMap map[string]ScheduleInput

func (ScheduleMap) ElementType

func (ScheduleMap) ElementType() reflect.Type

func (ScheduleMap) ToScheduleMapOutput

func (i ScheduleMap) ToScheduleMapOutput() ScheduleMapOutput

func (ScheduleMap) ToScheduleMapOutputWithContext

func (i ScheduleMap) ToScheduleMapOutputWithContext(ctx context.Context) ScheduleMapOutput

type ScheduleMapInput

type ScheduleMapInput interface {
	pulumi.Input

	ToScheduleMapOutput() ScheduleMapOutput
	ToScheduleMapOutputWithContext(context.Context) ScheduleMapOutput
}

ScheduleMapInput is an input type that accepts ScheduleMap and ScheduleMapOutput values. You can construct a concrete instance of `ScheduleMapInput` via:

ScheduleMap{ "key": ScheduleArgs{...} }

type ScheduleMapOutput

type ScheduleMapOutput struct{ *pulumi.OutputState }

func (ScheduleMapOutput) ElementType

func (ScheduleMapOutput) ElementType() reflect.Type

func (ScheduleMapOutput) MapIndex

func (ScheduleMapOutput) ToScheduleMapOutput

func (o ScheduleMapOutput) ToScheduleMapOutput() ScheduleMapOutput

func (ScheduleMapOutput) ToScheduleMapOutputWithContext

func (o ScheduleMapOutput) ToScheduleMapOutputWithContext(ctx context.Context) ScheduleMapOutput

type ScheduleOutput

type ScheduleOutput struct{ *pulumi.OutputState }

func (ScheduleOutput) DesiredCapacity

func (o ScheduleOutput) DesiredCapacity() pulumi.IntOutput

The desired number of CVM instances that should be running in the group.

func (ScheduleOutput) ElementType

func (ScheduleOutput) ElementType() reflect.Type

func (ScheduleOutput) EndTime

The time for this action to end, in "YYYY-MM-DDThh:mm:ss+08:00" format (UTC+8).

func (ScheduleOutput) MaxSize

func (o ScheduleOutput) MaxSize() pulumi.IntOutput

The maximum size for the Auto Scaling group.

func (ScheduleOutput) MinSize

func (o ScheduleOutput) MinSize() pulumi.IntOutput

The minimum size for the Auto Scaling group.

func (ScheduleOutput) Recurrence

func (o ScheduleOutput) Recurrence() pulumi.StringPtrOutput

The time when recurring future actions will start. Start time is specified by the user following the Unix cron syntax format. And this argument should be set with endTime together.

func (ScheduleOutput) ScalingGroupId

func (o ScheduleOutput) ScalingGroupId() pulumi.StringOutput

ID of a scaling group.

func (ScheduleOutput) ScheduleActionName

func (o ScheduleOutput) ScheduleActionName() pulumi.StringOutput

The name of this scaling action.

func (ScheduleOutput) StartTime

func (o ScheduleOutput) StartTime() pulumi.StringOutput

The time for this action to start, in "YYYY-MM-DDThh:mm:ss+08:00" format (UTC+8).

func (ScheduleOutput) ToScheduleOutput

func (o ScheduleOutput) ToScheduleOutput() ScheduleOutput

func (ScheduleOutput) ToScheduleOutputWithContext

func (o ScheduleOutput) ToScheduleOutputWithContext(ctx context.Context) ScheduleOutput

type ScheduleState

type ScheduleState struct {
	// The desired number of CVM instances that should be running in the group.
	DesiredCapacity pulumi.IntPtrInput
	// The time for this action to end, in "YYYY-MM-DDThh:mm:ss+08:00" format (UTC+8).
	EndTime pulumi.StringPtrInput
	// The maximum size for the Auto Scaling group.
	MaxSize pulumi.IntPtrInput
	// The minimum size for the Auto Scaling group.
	MinSize pulumi.IntPtrInput
	// The time when recurring future actions will start. Start time is specified by the user following the Unix cron syntax format. And this argument should be set with endTime together.
	Recurrence pulumi.StringPtrInput
	// ID of a scaling group.
	ScalingGroupId pulumi.StringPtrInput
	// The name of this scaling action.
	ScheduleActionName pulumi.StringPtrInput
	// The time for this action to start, in "YYYY-MM-DDThh:mm:ss+08:00" format (UTC+8).
	StartTime pulumi.StringPtrInput
}

func (ScheduleState) ElementType

func (ScheduleState) ElementType() reflect.Type

Jump to

Keyboard shortcuts

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