v1alpha1

package
v0.8.0 Latest Latest
Warning

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

Go to latest
Published: May 17, 2024 License: Apache-2.0 Imports: 12 Imported by: 0

Documentation

Overview

+kubebuilder:object:generate=true +groupName=as.tencentcloud.crossplane.io +versionName=v1alpha1

Index

Constants

View Source
const (
	CRDGroup   = "as.tencentcloud.crossplane.io"
	CRDVersion = "v1alpha1"
)

Package type metadata.

Variables

View Source
var (
	Attachment_Kind             = "Attachment"
	Attachment_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: Attachment_Kind}.String()
	Attachment_KindAPIVersion   = Attachment_Kind + "." + CRDGroupVersion.String()
	Attachment_GroupVersionKind = CRDGroupVersion.WithKind(Attachment_Kind)
)

Repository type metadata.

View Source
var (
	// CRDGroupVersion is the API Group Version used to register the objects
	CRDGroupVersion = schema.GroupVersion{Group: CRDGroup, Version: CRDVersion}

	// SchemeBuilder is used to add go types to the GroupVersionKind scheme
	SchemeBuilder = &scheme.Builder{GroupVersion: CRDGroupVersion}

	// AddToScheme adds the types in this group-version to the given scheme.
	AddToScheme = SchemeBuilder.AddToScheme
)
View Source
var (
	LifecycleHook_Kind             = "LifecycleHook"
	LifecycleHook_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: LifecycleHook_Kind}.String()
	LifecycleHook_KindAPIVersion   = LifecycleHook_Kind + "." + CRDGroupVersion.String()
	LifecycleHook_GroupVersionKind = CRDGroupVersion.WithKind(LifecycleHook_Kind)
)

Repository type metadata.

View Source
var (
	Notification_Kind             = "Notification"
	Notification_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: Notification_Kind}.String()
	Notification_KindAPIVersion   = Notification_Kind + "." + CRDGroupVersion.String()
	Notification_GroupVersionKind = CRDGroupVersion.WithKind(Notification_Kind)
)

Repository type metadata.

View Source
var (
	ScalingConfig_Kind             = "ScalingConfig"
	ScalingConfig_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: ScalingConfig_Kind}.String()
	ScalingConfig_KindAPIVersion   = ScalingConfig_Kind + "." + CRDGroupVersion.String()
	ScalingConfig_GroupVersionKind = CRDGroupVersion.WithKind(ScalingConfig_Kind)
)

Repository type metadata.

View Source
var (
	ScalingGroup_Kind             = "ScalingGroup"
	ScalingGroup_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: ScalingGroup_Kind}.String()
	ScalingGroup_KindAPIVersion   = ScalingGroup_Kind + "." + CRDGroupVersion.String()
	ScalingGroup_GroupVersionKind = CRDGroupVersion.WithKind(ScalingGroup_Kind)
)

Repository type metadata.

View Source
var (
	ScalingPolicy_Kind             = "ScalingPolicy"
	ScalingPolicy_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: ScalingPolicy_Kind}.String()
	ScalingPolicy_KindAPIVersion   = ScalingPolicy_Kind + "." + CRDGroupVersion.String()
	ScalingPolicy_GroupVersionKind = CRDGroupVersion.WithKind(ScalingPolicy_Kind)
)

Repository type metadata.

View Source
var (
	Schedule_Kind             = "Schedule"
	Schedule_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: Schedule_Kind}.String()
	Schedule_KindAPIVersion   = Schedule_Kind + "." + CRDGroupVersion.String()
	Schedule_GroupVersionKind = CRDGroupVersion.WithKind(Schedule_Kind)
)

Repository type metadata.

Functions

This section is empty.

Types

type Attachment

type Attachment struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.instanceIds) || (has(self.initProvider) && has(self.initProvider.instanceIds))",message="spec.forProvider.instanceIds is a required parameter"
	Spec   AttachmentSpec   `json:"spec"`
	Status AttachmentStatus `json:"status,omitempty"`
}

Attachment is the Schema for the Attachments API. Provides a resource to attach or detach CVM instances to a specified scaling group. +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:subresource:status +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,tencentcloud}

func (*Attachment) DeepCopy

func (in *Attachment) DeepCopy() *Attachment

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Attachment.

func (*Attachment) DeepCopyInto

func (in *Attachment) DeepCopyInto(out *Attachment)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*Attachment) DeepCopyObject

func (in *Attachment) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*Attachment) GetCondition

func (mg *Attachment) GetCondition(ct xpv1.ConditionType) xpv1.Condition

GetCondition of this Attachment.

func (*Attachment) GetConnectionDetailsMapping

func (tr *Attachment) GetConnectionDetailsMapping() map[string]string

GetConnectionDetailsMapping for this Attachment

func (*Attachment) GetDeletionPolicy

func (mg *Attachment) GetDeletionPolicy() xpv1.DeletionPolicy

GetDeletionPolicy of this Attachment.

func (*Attachment) GetID

func (tr *Attachment) GetID() string

GetID returns ID of underlying Terraform resource of this Attachment

func (*Attachment) GetInitParameters added in v0.8.0

func (tr *Attachment) GetInitParameters() (map[string]any, error)

GetInitParameters of this Attachment

func (*Attachment) GetManagementPolicies added in v0.8.0

func (mg *Attachment) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this Attachment.

func (*Attachment) GetObservation

func (tr *Attachment) GetObservation() (map[string]any, error)

GetObservation of this Attachment

func (*Attachment) GetParameters

func (tr *Attachment) GetParameters() (map[string]any, error)

GetParameters of this Attachment

func (*Attachment) GetProviderConfigReference

func (mg *Attachment) GetProviderConfigReference() *xpv1.Reference

GetProviderConfigReference of this Attachment.

func (*Attachment) GetPublishConnectionDetailsTo

func (mg *Attachment) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo

GetPublishConnectionDetailsTo of this Attachment.

func (*Attachment) GetTerraformResourceType

func (mg *Attachment) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this Attachment

func (*Attachment) GetTerraformSchemaVersion

func (tr *Attachment) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*Attachment) GetWriteConnectionSecretToReference

func (mg *Attachment) GetWriteConnectionSecretToReference() *xpv1.SecretReference

GetWriteConnectionSecretToReference of this Attachment.

func (*Attachment) LateInitialize

func (tr *Attachment) LateInitialize(attrs []byte) (bool, error)

LateInitialize this Attachment using its observed tfState. returns True if there are any spec changes for the resource.

func (*Attachment) ResolveReferences

func (mg *Attachment) ResolveReferences(ctx context.Context, c client.Reader) error

ResolveReferences of this Attachment.

func (*Attachment) SetConditions

func (mg *Attachment) SetConditions(c ...xpv1.Condition)

SetConditions of this Attachment.

func (*Attachment) SetDeletionPolicy

func (mg *Attachment) SetDeletionPolicy(r xpv1.DeletionPolicy)

SetDeletionPolicy of this Attachment.

func (*Attachment) SetManagementPolicies added in v0.8.0

func (mg *Attachment) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this Attachment.

func (*Attachment) SetObservation

func (tr *Attachment) SetObservation(obs map[string]any) error

SetObservation for this Attachment

func (*Attachment) SetParameters

func (tr *Attachment) SetParameters(params map[string]any) error

SetParameters for this Attachment

func (*Attachment) SetProviderConfigReference

func (mg *Attachment) SetProviderConfigReference(r *xpv1.Reference)

SetProviderConfigReference of this Attachment.

func (*Attachment) SetPublishConnectionDetailsTo

func (mg *Attachment) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)

SetPublishConnectionDetailsTo of this Attachment.

func (*Attachment) SetWriteConnectionSecretToReference

func (mg *Attachment) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)

SetWriteConnectionSecretToReference of this Attachment.

type AttachmentInitParameters added in v0.8.0

type AttachmentInitParameters struct {

	// ID list of CVM instances to be attached to the scaling group.
	// ID list of CVM instances to be attached to the scaling group.
	InstanceIds []*string `json:"instanceIds,omitempty" tf:"instance_ids,omitempty"`
}

func (*AttachmentInitParameters) DeepCopy added in v0.8.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AttachmentInitParameters.

func (*AttachmentInitParameters) DeepCopyInto added in v0.8.0

func (in *AttachmentInitParameters) DeepCopyInto(out *AttachmentInitParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type AttachmentList

type AttachmentList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []Attachment `json:"items"`
}

AttachmentList contains a list of Attachments

func (*AttachmentList) DeepCopy

func (in *AttachmentList) DeepCopy() *AttachmentList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AttachmentList.

func (*AttachmentList) DeepCopyInto

func (in *AttachmentList) DeepCopyInto(out *AttachmentList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*AttachmentList) DeepCopyObject

func (in *AttachmentList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*AttachmentList) GetItems

func (l *AttachmentList) GetItems() []resource.Managed

GetItems of this AttachmentList.

type AttachmentObservation

type AttachmentObservation struct {

	// ID of the resource.
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// ID list of CVM instances to be attached to the scaling group.
	// ID list of CVM instances to be attached to the scaling group.
	InstanceIds []*string `json:"instanceIds,omitempty" tf:"instance_ids,omitempty"`

	// ID of a scaling group.
	// ID of a scaling group.
	ScalingGroupID *string `json:"scalingGroupId,omitempty" tf:"scaling_group_id,omitempty"`
}

func (*AttachmentObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AttachmentObservation.

func (*AttachmentObservation) DeepCopyInto

func (in *AttachmentObservation) DeepCopyInto(out *AttachmentObservation)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type AttachmentParameters

type AttachmentParameters struct {

	// ID list of CVM instances to be attached to the scaling group.
	// ID list of CVM instances to be attached to the scaling group.
	// +kubebuilder:validation:Optional
	InstanceIds []*string `json:"instanceIds,omitempty" tf:"instance_ids,omitempty"`

	// ID of a scaling group.
	// ID of a scaling group.
	// +crossplane:generate:reference:type=ScalingGroup
	// +kubebuilder:validation:Optional
	ScalingGroupID *string `json:"scalingGroupId,omitempty" tf:"scaling_group_id,omitempty"`

	// Reference to a ScalingGroup to populate scalingGroupId.
	// +kubebuilder:validation:Optional
	ScalingGroupIDRef *v1.Reference `json:"scalingGroupIdRef,omitempty" tf:"-"`

	// Selector for a ScalingGroup to populate scalingGroupId.
	// +kubebuilder:validation:Optional
	ScalingGroupIDSelector *v1.Selector `json:"scalingGroupIdSelector,omitempty" tf:"-"`
}

func (*AttachmentParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AttachmentParameters.

func (*AttachmentParameters) DeepCopyInto

func (in *AttachmentParameters) DeepCopyInto(out *AttachmentParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type AttachmentSpec

type AttachmentSpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     AttachmentParameters `json:"forProvider"`
	// THIS IS A BETA FIELD. It will be honored
	// unless the Management Policies feature flag is disabled.
	// InitProvider holds the same fields as ForProvider, with the exception
	// of Identifier and other resource reference fields. The fields that are
	// in InitProvider are merged into ForProvider when the resource is created.
	// The same fields are also added to the terraform ignore_changes hook, to
	// avoid updating them after creation. This is useful for fields that are
	// required on creation, but we do not desire to update them after creation,
	// for example because of an external controller is managing them, like an
	// autoscaler.
	InitProvider AttachmentInitParameters `json:"initProvider,omitempty"`
}

AttachmentSpec defines the desired state of Attachment

func (*AttachmentSpec) DeepCopy

func (in *AttachmentSpec) DeepCopy() *AttachmentSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AttachmentSpec.

func (*AttachmentSpec) DeepCopyInto

func (in *AttachmentSpec) DeepCopyInto(out *AttachmentSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type AttachmentStatus

type AttachmentStatus struct {
	v1.ResourceStatus `json:",inline"`
	AtProvider        AttachmentObservation `json:"atProvider,omitempty"`
}

AttachmentStatus defines the observed state of Attachment.

func (*AttachmentStatus) DeepCopy

func (in *AttachmentStatus) DeepCopy() *AttachmentStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AttachmentStatus.

func (*AttachmentStatus) DeepCopyInto

func (in *AttachmentStatus) DeepCopyInto(out *AttachmentStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type DataDiskInitParameters added in v0.8.0

type DataDiskInitParameters struct {

	// Indicates whether the disk remove after instance terminated. Default is false.
	// Indicates whether the disk remove after instance terminated. Default is `false`.
	DeleteWithInstance *bool `json:"deleteWithInstance,omitempty" tf:"delete_with_instance,omitempty"`

	// Volume of disk in GB. Default is 0.
	// Volume of disk in GB. Default is `0`.
	DiskSize *float64 `json:"diskSize,omitempty" tf:"disk_size,omitempty"`

	// Types of disk. Valid values: CLOUD_PREMIUM and CLOUD_SSD. valid when disk_type_policy is ORIGINAL.
	// Types of disk. Valid values: `CLOUD_PREMIUM` and `CLOUD_SSD`. valid when disk_type_policy is ORIGINAL.
	DiskType *string `json:"diskType,omitempty" tf:"disk_type,omitempty"`

	// Data disk snapshot ID.
	// Data disk snapshot ID.
	SnapshotID *string `json:"snapshotId,omitempty" tf:"snapshot_id,omitempty"`
}

func (*DataDiskInitParameters) DeepCopy added in v0.8.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataDiskInitParameters.

func (*DataDiskInitParameters) DeepCopyInto added in v0.8.0

func (in *DataDiskInitParameters) DeepCopyInto(out *DataDiskInitParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type DataDiskObservation

type DataDiskObservation struct {

	// Indicates whether the disk remove after instance terminated. Default is false.
	// Indicates whether the disk remove after instance terminated. Default is `false`.
	DeleteWithInstance *bool `json:"deleteWithInstance,omitempty" tf:"delete_with_instance,omitempty"`

	// Volume of disk in GB. Default is 0.
	// Volume of disk in GB. Default is `0`.
	DiskSize *float64 `json:"diskSize,omitempty" tf:"disk_size,omitempty"`

	// Types of disk. Valid values: CLOUD_PREMIUM and CLOUD_SSD. valid when disk_type_policy is ORIGINAL.
	// Types of disk. Valid values: `CLOUD_PREMIUM` and `CLOUD_SSD`. valid when disk_type_policy is ORIGINAL.
	DiskType *string `json:"diskType,omitempty" tf:"disk_type,omitempty"`

	// Data disk snapshot ID.
	// Data disk snapshot ID.
	SnapshotID *string `json:"snapshotId,omitempty" tf:"snapshot_id,omitempty"`
}

func (*DataDiskObservation) DeepCopy

func (in *DataDiskObservation) DeepCopy() *DataDiskObservation

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataDiskObservation.

func (*DataDiskObservation) DeepCopyInto

func (in *DataDiskObservation) DeepCopyInto(out *DataDiskObservation)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type DataDiskParameters

type DataDiskParameters struct {

	// Indicates whether the disk remove after instance terminated. Default is false.
	// Indicates whether the disk remove after instance terminated. Default is `false`.
	// +kubebuilder:validation:Optional
	DeleteWithInstance *bool `json:"deleteWithInstance,omitempty" tf:"delete_with_instance,omitempty"`

	// Volume of disk in GB. Default is 0.
	// Volume of disk in GB. Default is `0`.
	// +kubebuilder:validation:Optional
	DiskSize *float64 `json:"diskSize,omitempty" tf:"disk_size,omitempty"`

	// Types of disk. Valid values: CLOUD_PREMIUM and CLOUD_SSD. valid when disk_type_policy is ORIGINAL.
	// Types of disk. Valid values: `CLOUD_PREMIUM` and `CLOUD_SSD`. valid when disk_type_policy is ORIGINAL.
	// +kubebuilder:validation:Optional
	DiskType *string `json:"diskType,omitempty" tf:"disk_type,omitempty"`

	// Data disk snapshot ID.
	// Data disk snapshot ID.
	// +kubebuilder:validation:Optional
	SnapshotID *string `json:"snapshotId,omitempty" tf:"snapshot_id,omitempty"`
}

func (*DataDiskParameters) DeepCopy

func (in *DataDiskParameters) DeepCopy() *DataDiskParameters

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataDiskParameters.

func (*DataDiskParameters) DeepCopyInto

func (in *DataDiskParameters) DeepCopyInto(out *DataDiskParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ForwardBalancerIdsInitParameters added in v0.8.0

type ForwardBalancerIdsInitParameters struct {

	// Listener ID for application load balancers.
	// Listener ID for application load balancers.
	ListenerID *string `json:"listenerId,omitempty" tf:"listener_id,omitempty"`

	// ID of available load balancers.
	// ID of available load balancers.
	LoadBalancerID *string `json:"loadBalancerId,omitempty" tf:"load_balancer_id,omitempty"`

	// ID of forwarding rules.
	// ID of forwarding rules.
	RuleID *string `json:"ruleId,omitempty" tf:"rule_id,omitempty"`

	// Attribute list of target rules.
	// Attribute list of target rules.
	TargetAttribute []TargetAttributeInitParameters `json:"targetAttribute,omitempty" tf:"target_attribute,omitempty"`
}

func (*ForwardBalancerIdsInitParameters) DeepCopy added in v0.8.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ForwardBalancerIdsInitParameters.

func (*ForwardBalancerIdsInitParameters) DeepCopyInto added in v0.8.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ForwardBalancerIdsObservation

type ForwardBalancerIdsObservation struct {

	// Listener ID for application load balancers.
	// Listener ID for application load balancers.
	ListenerID *string `json:"listenerId,omitempty" tf:"listener_id,omitempty"`

	// ID of available load balancers.
	// ID of available load balancers.
	LoadBalancerID *string `json:"loadBalancerId,omitempty" tf:"load_balancer_id,omitempty"`

	// ID of forwarding rules.
	// ID of forwarding rules.
	RuleID *string `json:"ruleId,omitempty" tf:"rule_id,omitempty"`

	// Attribute list of target rules.
	// Attribute list of target rules.
	TargetAttribute []TargetAttributeObservation `json:"targetAttribute,omitempty" tf:"target_attribute,omitempty"`
}

func (*ForwardBalancerIdsObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ForwardBalancerIdsObservation.

func (*ForwardBalancerIdsObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ForwardBalancerIdsParameters

type ForwardBalancerIdsParameters struct {

	// Listener ID for application load balancers.
	// Listener ID for application load balancers.
	// +kubebuilder:validation:Optional
	ListenerID *string `json:"listenerId" tf:"listener_id,omitempty"`

	// ID of available load balancers.
	// ID of available load balancers.
	// +kubebuilder:validation:Optional
	LoadBalancerID *string `json:"loadBalancerId" tf:"load_balancer_id,omitempty"`

	// ID of forwarding rules.
	// ID of forwarding rules.
	// +kubebuilder:validation:Optional
	RuleID *string `json:"ruleId,omitempty" tf:"rule_id,omitempty"`

	// Attribute list of target rules.
	// Attribute list of target rules.
	// +kubebuilder:validation:Optional
	TargetAttribute []TargetAttributeParameters `json:"targetAttribute" tf:"target_attribute,omitempty"`
}

func (*ForwardBalancerIdsParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ForwardBalancerIdsParameters.

func (*ForwardBalancerIdsParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type HostNameSettingsInitParameters added in v0.8.0

type HostNameSettingsInitParameters struct {

	// The host name of the cloud server; dots (.) and dashes (-) cannot be used as the first and last characters of HostName, and cannot be used consecutively; Windows instances are not supported; other types (Linux, etc.) instances: the character length is [2, 40], it is allowed to support multiple dots, and there is a paragraph between the dots, and each paragraph is allowed to consist of letters (no uppercase and lowercase restrictions), numbers and dashes (-). Pure numbers are not allowed.
	// The host name of the cloud server; dots (.) and dashes (-) cannot be used as the first and last characters of HostName, and cannot be used consecutively; Windows instances are not supported; other types (Linux, etc.) instances: the character length is [2, 40], it is allowed to support multiple dots, and there is a paragraph between the dots, and each paragraph is allowed to consist of letters (no uppercase and lowercase restrictions), numbers and dashes (-). Pure numbers are not allowed.
	HostName *string `json:"hostName,omitempty" tf:"host_name,omitempty"`

	// The style of the host name of the cloud server, the value range includes ORIGINAL and UNIQUE, the default is ORIGINAL; ORIGINAL, the AS directly passes the HostName filled in the input parameter to the CVM, and the CVM may append a sequence to the HostName number, the HostName of the instance in the scaling group will conflict; UNIQUE, the HostName filled in as a parameter is equivalent to the host name prefix, AS and CVM will expand it, and the HostName of the instance in the scaling group can be guaranteed to be unique.
	// The style of the host name of the cloud server, the value range includes `ORIGINAL` and `UNIQUE`, the default is `ORIGINAL`; `ORIGINAL`, the AS directly passes the HostName filled in the input parameter to the CVM, and the CVM may append a sequence to the HostName number, the HostName of the instance in the scaling group will conflict; `UNIQUE`, the HostName filled in as a parameter is equivalent to the host name prefix, AS and CVM will expand it, and the HostName of the instance in the scaling group can be guaranteed to be unique.
	HostNameStyle *string `json:"hostNameStyle,omitempty" tf:"host_name_style,omitempty"`
}

func (*HostNameSettingsInitParameters) DeepCopy added in v0.8.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HostNameSettingsInitParameters.

func (*HostNameSettingsInitParameters) DeepCopyInto added in v0.8.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type HostNameSettingsObservation added in v0.7.0

type HostNameSettingsObservation struct {

	// The host name of the cloud server; dots (.) and dashes (-) cannot be used as the first and last characters of HostName, and cannot be used consecutively; Windows instances are not supported; other types (Linux, etc.) instances: the character length is [2, 40], it is allowed to support multiple dots, and there is a paragraph between the dots, and each paragraph is allowed to consist of letters (no uppercase and lowercase restrictions), numbers and dashes (-). Pure numbers are not allowed.
	// The host name of the cloud server; dots (.) and dashes (-) cannot be used as the first and last characters of HostName, and cannot be used consecutively; Windows instances are not supported; other types (Linux, etc.) instances: the character length is [2, 40], it is allowed to support multiple dots, and there is a paragraph between the dots, and each paragraph is allowed to consist of letters (no uppercase and lowercase restrictions), numbers and dashes (-). Pure numbers are not allowed.
	HostName *string `json:"hostName,omitempty" tf:"host_name,omitempty"`

	// The style of the host name of the cloud server, the value range includes ORIGINAL and UNIQUE, the default is ORIGINAL; ORIGINAL, the AS directly passes the HostName filled in the input parameter to the CVM, and the CVM may append a sequence to the HostName number, the HostName of the instance in the scaling group will conflict; UNIQUE, the HostName filled in as a parameter is equivalent to the host name prefix, AS and CVM will expand it, and the HostName of the instance in the scaling group can be guaranteed to be unique.
	// The style of the host name of the cloud server, the value range includes `ORIGINAL` and `UNIQUE`, the default is `ORIGINAL`; `ORIGINAL`, the AS directly passes the HostName filled in the input parameter to the CVM, and the CVM may append a sequence to the HostName number, the HostName of the instance in the scaling group will conflict; `UNIQUE`, the HostName filled in as a parameter is equivalent to the host name prefix, AS and CVM will expand it, and the HostName of the instance in the scaling group can be guaranteed to be unique.
	HostNameStyle *string `json:"hostNameStyle,omitempty" tf:"host_name_style,omitempty"`
}

func (*HostNameSettingsObservation) DeepCopy added in v0.7.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HostNameSettingsObservation.

func (*HostNameSettingsObservation) DeepCopyInto added in v0.7.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type HostNameSettingsParameters added in v0.7.0

type HostNameSettingsParameters struct {

	// The host name of the cloud server; dots (.) and dashes (-) cannot be used as the first and last characters of HostName, and cannot be used consecutively; Windows instances are not supported; other types (Linux, etc.) instances: the character length is [2, 40], it is allowed to support multiple dots, and there is a paragraph between the dots, and each paragraph is allowed to consist of letters (no uppercase and lowercase restrictions), numbers and dashes (-). Pure numbers are not allowed.
	// The host name of the cloud server; dots (.) and dashes (-) cannot be used as the first and last characters of HostName, and cannot be used consecutively; Windows instances are not supported; other types (Linux, etc.) instances: the character length is [2, 40], it is allowed to support multiple dots, and there is a paragraph between the dots, and each paragraph is allowed to consist of letters (no uppercase and lowercase restrictions), numbers and dashes (-). Pure numbers are not allowed.
	// +kubebuilder:validation:Optional
	HostName *string `json:"hostName" tf:"host_name,omitempty"`

	// The style of the host name of the cloud server, the value range includes ORIGINAL and UNIQUE, the default is ORIGINAL; ORIGINAL, the AS directly passes the HostName filled in the input parameter to the CVM, and the CVM may append a sequence to the HostName number, the HostName of the instance in the scaling group will conflict; UNIQUE, the HostName filled in as a parameter is equivalent to the host name prefix, AS and CVM will expand it, and the HostName of the instance in the scaling group can be guaranteed to be unique.
	// The style of the host name of the cloud server, the value range includes `ORIGINAL` and `UNIQUE`, the default is `ORIGINAL`; `ORIGINAL`, the AS directly passes the HostName filled in the input parameter to the CVM, and the CVM may append a sequence to the HostName number, the HostName of the instance in the scaling group will conflict; `UNIQUE`, the HostName filled in as a parameter is equivalent to the host name prefix, AS and CVM will expand it, and the HostName of the instance in the scaling group can be guaranteed to be unique.
	// +kubebuilder:validation:Optional
	HostNameStyle *string `json:"hostNameStyle,omitempty" tf:"host_name_style,omitempty"`
}

func (*HostNameSettingsParameters) DeepCopy added in v0.7.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HostNameSettingsParameters.

func (*HostNameSettingsParameters) DeepCopyInto added in v0.7.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceNameSettingsInitParameters added in v0.8.0

type InstanceNameSettingsInitParameters struct {

	// CVM instance name.
	// CVM instance name.
	InstanceName *string `json:"instanceName,omitempty" tf:"instance_name,omitempty"`

	// Type of CVM instance name. Valid values: ORIGINAL and UNIQUE. Default is ORIGINAL.
	// Type of CVM instance name. Valid values: `ORIGINAL` and `UNIQUE`. Default is `ORIGINAL`.
	InstanceNameStyle *string `json:"instanceNameStyle,omitempty" tf:"instance_name_style,omitempty"`
}

func (*InstanceNameSettingsInitParameters) DeepCopy added in v0.8.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceNameSettingsInitParameters.

func (*InstanceNameSettingsInitParameters) DeepCopyInto added in v0.8.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceNameSettingsObservation

type InstanceNameSettingsObservation struct {

	// CVM instance name.
	// CVM instance name.
	InstanceName *string `json:"instanceName,omitempty" tf:"instance_name,omitempty"`

	// Type of CVM instance name. Valid values: ORIGINAL and UNIQUE. Default is ORIGINAL.
	// Type of CVM instance name. Valid values: `ORIGINAL` and `UNIQUE`. Default is `ORIGINAL`.
	InstanceNameStyle *string `json:"instanceNameStyle,omitempty" tf:"instance_name_style,omitempty"`
}

func (*InstanceNameSettingsObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceNameSettingsObservation.

func (*InstanceNameSettingsObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceNameSettingsParameters

type InstanceNameSettingsParameters struct {

	// CVM instance name.
	// CVM instance name.
	// +kubebuilder:validation:Optional
	InstanceName *string `json:"instanceName" tf:"instance_name,omitempty"`

	// Type of CVM instance name. Valid values: ORIGINAL and UNIQUE. Default is ORIGINAL.
	// Type of CVM instance name. Valid values: `ORIGINAL` and `UNIQUE`. Default is `ORIGINAL`.
	// +kubebuilder:validation:Optional
	InstanceNameStyle *string `json:"instanceNameStyle,omitempty" tf:"instance_name_style,omitempty"`
}

func (*InstanceNameSettingsParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceNameSettingsParameters.

func (*InstanceNameSettingsParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type LifecycleHook

type LifecycleHook struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.lifecycleHookName) || (has(self.initProvider) && has(self.initProvider.lifecycleHookName))",message="spec.forProvider.lifecycleHookName is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.lifecycleTransition) || (has(self.initProvider) && has(self.initProvider.lifecycleTransition))",message="spec.forProvider.lifecycleTransition is a required parameter"
	Spec   LifecycleHookSpec   `json:"spec"`
	Status LifecycleHookStatus `json:"status,omitempty"`
}

LifecycleHook is the Schema for the LifecycleHooks API. Provides a resource for an AS (Auto scaling) lifecycle hook. +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:subresource:status +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,tencentcloud}

func (*LifecycleHook) DeepCopy

func (in *LifecycleHook) DeepCopy() *LifecycleHook

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LifecycleHook.

func (*LifecycleHook) DeepCopyInto

func (in *LifecycleHook) DeepCopyInto(out *LifecycleHook)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*LifecycleHook) DeepCopyObject

func (in *LifecycleHook) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*LifecycleHook) GetCondition

func (mg *LifecycleHook) GetCondition(ct xpv1.ConditionType) xpv1.Condition

GetCondition of this LifecycleHook.

func (*LifecycleHook) GetConnectionDetailsMapping

func (tr *LifecycleHook) GetConnectionDetailsMapping() map[string]string

GetConnectionDetailsMapping for this LifecycleHook

func (*LifecycleHook) GetDeletionPolicy

func (mg *LifecycleHook) GetDeletionPolicy() xpv1.DeletionPolicy

GetDeletionPolicy of this LifecycleHook.

func (*LifecycleHook) GetID

func (tr *LifecycleHook) GetID() string

GetID returns ID of underlying Terraform resource of this LifecycleHook

func (*LifecycleHook) GetInitParameters added in v0.8.0

func (tr *LifecycleHook) GetInitParameters() (map[string]any, error)

GetInitParameters of this LifecycleHook

func (*LifecycleHook) GetManagementPolicies added in v0.8.0

func (mg *LifecycleHook) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this LifecycleHook.

func (*LifecycleHook) GetObservation

func (tr *LifecycleHook) GetObservation() (map[string]any, error)

GetObservation of this LifecycleHook

func (*LifecycleHook) GetParameters

func (tr *LifecycleHook) GetParameters() (map[string]any, error)

GetParameters of this LifecycleHook

func (*LifecycleHook) GetProviderConfigReference

func (mg *LifecycleHook) GetProviderConfigReference() *xpv1.Reference

GetProviderConfigReference of this LifecycleHook.

func (*LifecycleHook) GetPublishConnectionDetailsTo

func (mg *LifecycleHook) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo

GetPublishConnectionDetailsTo of this LifecycleHook.

func (*LifecycleHook) GetTerraformResourceType

func (mg *LifecycleHook) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this LifecycleHook

func (*LifecycleHook) GetTerraformSchemaVersion

func (tr *LifecycleHook) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*LifecycleHook) GetWriteConnectionSecretToReference

func (mg *LifecycleHook) GetWriteConnectionSecretToReference() *xpv1.SecretReference

GetWriteConnectionSecretToReference of this LifecycleHook.

func (*LifecycleHook) LateInitialize

func (tr *LifecycleHook) LateInitialize(attrs []byte) (bool, error)

LateInitialize this LifecycleHook using its observed tfState. returns True if there are any spec changes for the resource.

func (*LifecycleHook) ResolveReferences

func (mg *LifecycleHook) ResolveReferences(ctx context.Context, c client.Reader) error

ResolveReferences of this LifecycleHook.

func (*LifecycleHook) SetConditions

func (mg *LifecycleHook) SetConditions(c ...xpv1.Condition)

SetConditions of this LifecycleHook.

func (*LifecycleHook) SetDeletionPolicy

func (mg *LifecycleHook) SetDeletionPolicy(r xpv1.DeletionPolicy)

SetDeletionPolicy of this LifecycleHook.

func (*LifecycleHook) SetManagementPolicies added in v0.8.0

func (mg *LifecycleHook) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this LifecycleHook.

func (*LifecycleHook) SetObservation

func (tr *LifecycleHook) SetObservation(obs map[string]any) error

SetObservation for this LifecycleHook

func (*LifecycleHook) SetParameters

func (tr *LifecycleHook) SetParameters(params map[string]any) error

SetParameters for this LifecycleHook

func (*LifecycleHook) SetProviderConfigReference

func (mg *LifecycleHook) SetProviderConfigReference(r *xpv1.Reference)

SetProviderConfigReference of this LifecycleHook.

func (*LifecycleHook) SetPublishConnectionDetailsTo

func (mg *LifecycleHook) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)

SetPublishConnectionDetailsTo of this LifecycleHook.

func (*LifecycleHook) SetWriteConnectionSecretToReference

func (mg *LifecycleHook) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)

SetWriteConnectionSecretToReference of this LifecycleHook.

type LifecycleHookInitParameters added in v0.8.0

type LifecycleHookInitParameters 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.
	// 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 *string `json:"defaultResult,omitempty" tf:"default_result,omitempty"`

	// 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.
	// 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 *float64 `json:"heartbeatTimeout,omitempty" tf:"heartbeat_timeout,omitempty"`

	// The name of the lifecycle hook.
	// The name of the lifecycle hook.
	LifecycleHookName *string `json:"lifecycleHookName,omitempty" tf:"lifecycle_hook_name,omitempty"`

	// The instance state to which you want to attach the lifecycle hook. Valid values: INSTANCE_LAUNCHING and INSTANCE_TERMINATING.
	// The instance state to which you want to attach the lifecycle hook. Valid values: `INSTANCE_LAUNCHING` and `INSTANCE_TERMINATING`.
	LifecycleTransition *string `json:"lifecycleTransition,omitempty" tf:"lifecycle_transition,omitempty"`

	// Contains additional information that you want to include any time AS sends a message to the notification target.
	// Contains additional information that you want to include any time AS sends a message to the notification target.
	NotificationMetadata *string `json:"notificationMetadata,omitempty" tf:"notification_metadata,omitempty"`

	// For CMQ_QUEUE type, a name of queue must be set.
	// For CMQ_QUEUE type, a name of queue must be set.
	NotificationQueueName *string `json:"notificationQueueName,omitempty" tf:"notification_queue_name,omitempty"`

	// Target type. Valid values: CMQ_QUEUE, CMQ_TOPIC.
	// Target type. Valid values: `CMQ_QUEUE`, `CMQ_TOPIC`.
	NotificationTargetType *string `json:"notificationTargetType,omitempty" tf:"notification_target_type,omitempty"`

	// For CMQ_TOPIC type, a name of topic must be set.
	// For CMQ_TOPIC type, a name of topic must be set.
	NotificationTopicName *string `json:"notificationTopicName,omitempty" tf:"notification_topic_name,omitempty"`
}

func (*LifecycleHookInitParameters) DeepCopy added in v0.8.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LifecycleHookInitParameters.

func (*LifecycleHookInitParameters) DeepCopyInto added in v0.8.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type LifecycleHookList

type LifecycleHookList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []LifecycleHook `json:"items"`
}

LifecycleHookList contains a list of LifecycleHooks

func (*LifecycleHookList) DeepCopy

func (in *LifecycleHookList) DeepCopy() *LifecycleHookList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LifecycleHookList.

func (*LifecycleHookList) DeepCopyInto

func (in *LifecycleHookList) DeepCopyInto(out *LifecycleHookList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*LifecycleHookList) DeepCopyObject

func (in *LifecycleHookList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*LifecycleHookList) GetItems

func (l *LifecycleHookList) GetItems() []resource.Managed

GetItems of this LifecycleHookList.

type LifecycleHookObservation

type LifecycleHookObservation 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.
	// 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 *string `json:"defaultResult,omitempty" tf:"default_result,omitempty"`

	// 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.
	// 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 *float64 `json:"heartbeatTimeout,omitempty" tf:"heartbeat_timeout,omitempty"`

	// ID of the resource.
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// The name of the lifecycle hook.
	// The name of the lifecycle hook.
	LifecycleHookName *string `json:"lifecycleHookName,omitempty" tf:"lifecycle_hook_name,omitempty"`

	// The instance state to which you want to attach the lifecycle hook. Valid values: INSTANCE_LAUNCHING and INSTANCE_TERMINATING.
	// The instance state to which you want to attach the lifecycle hook. Valid values: `INSTANCE_LAUNCHING` and `INSTANCE_TERMINATING`.
	LifecycleTransition *string `json:"lifecycleTransition,omitempty" tf:"lifecycle_transition,omitempty"`

	// Contains additional information that you want to include any time AS sends a message to the notification target.
	// Contains additional information that you want to include any time AS sends a message to the notification target.
	NotificationMetadata *string `json:"notificationMetadata,omitempty" tf:"notification_metadata,omitempty"`

	// For CMQ_QUEUE type, a name of queue must be set.
	// For CMQ_QUEUE type, a name of queue must be set.
	NotificationQueueName *string `json:"notificationQueueName,omitempty" tf:"notification_queue_name,omitempty"`

	// Target type. Valid values: CMQ_QUEUE, CMQ_TOPIC.
	// Target type. Valid values: `CMQ_QUEUE`, `CMQ_TOPIC`.
	NotificationTargetType *string `json:"notificationTargetType,omitempty" tf:"notification_target_type,omitempty"`

	// For CMQ_TOPIC type, a name of topic must be set.
	// For CMQ_TOPIC type, a name of topic must be set.
	NotificationTopicName *string `json:"notificationTopicName,omitempty" tf:"notification_topic_name,omitempty"`

	// ID of a scaling group.
	// ID of a scaling group.
	ScalingGroupID *string `json:"scalingGroupId,omitempty" tf:"scaling_group_id,omitempty"`
}

func (*LifecycleHookObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LifecycleHookObservation.

func (*LifecycleHookObservation) DeepCopyInto

func (in *LifecycleHookObservation) DeepCopyInto(out *LifecycleHookObservation)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type LifecycleHookParameters

type LifecycleHookParameters 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.
	// 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`.
	// +kubebuilder:validation:Optional
	DefaultResult *string `json:"defaultResult,omitempty" tf:"default_result,omitempty"`

	// 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.
	// 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`.
	// +kubebuilder:validation:Optional
	HeartbeatTimeout *float64 `json:"heartbeatTimeout,omitempty" tf:"heartbeat_timeout,omitempty"`

	// The name of the lifecycle hook.
	// The name of the lifecycle hook.
	// +kubebuilder:validation:Optional
	LifecycleHookName *string `json:"lifecycleHookName,omitempty" tf:"lifecycle_hook_name,omitempty"`

	// The instance state to which you want to attach the lifecycle hook. Valid values: INSTANCE_LAUNCHING and INSTANCE_TERMINATING.
	// The instance state to which you want to attach the lifecycle hook. Valid values: `INSTANCE_LAUNCHING` and `INSTANCE_TERMINATING`.
	// +kubebuilder:validation:Optional
	LifecycleTransition *string `json:"lifecycleTransition,omitempty" tf:"lifecycle_transition,omitempty"`

	// Contains additional information that you want to include any time AS sends a message to the notification target.
	// Contains additional information that you want to include any time AS sends a message to the notification target.
	// +kubebuilder:validation:Optional
	NotificationMetadata *string `json:"notificationMetadata,omitempty" tf:"notification_metadata,omitempty"`

	// For CMQ_QUEUE type, a name of queue must be set.
	// For CMQ_QUEUE type, a name of queue must be set.
	// +kubebuilder:validation:Optional
	NotificationQueueName *string `json:"notificationQueueName,omitempty" tf:"notification_queue_name,omitempty"`

	// Target type. Valid values: CMQ_QUEUE, CMQ_TOPIC.
	// Target type. Valid values: `CMQ_QUEUE`, `CMQ_TOPIC`.
	// +kubebuilder:validation:Optional
	NotificationTargetType *string `json:"notificationTargetType,omitempty" tf:"notification_target_type,omitempty"`

	// For CMQ_TOPIC type, a name of topic must be set.
	// For CMQ_TOPIC type, a name of topic must be set.
	// +kubebuilder:validation:Optional
	NotificationTopicName *string `json:"notificationTopicName,omitempty" tf:"notification_topic_name,omitempty"`

	// ID of a scaling group.
	// ID of a scaling group.
	// +crossplane:generate:reference:type=ScalingGroup
	// +kubebuilder:validation:Optional
	ScalingGroupID *string `json:"scalingGroupId,omitempty" tf:"scaling_group_id,omitempty"`

	// Reference to a ScalingGroup to populate scalingGroupId.
	// +kubebuilder:validation:Optional
	ScalingGroupIDRef *v1.Reference `json:"scalingGroupIdRef,omitempty" tf:"-"`

	// Selector for a ScalingGroup to populate scalingGroupId.
	// +kubebuilder:validation:Optional
	ScalingGroupIDSelector *v1.Selector `json:"scalingGroupIdSelector,omitempty" tf:"-"`
}

func (*LifecycleHookParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LifecycleHookParameters.

func (*LifecycleHookParameters) DeepCopyInto

func (in *LifecycleHookParameters) DeepCopyInto(out *LifecycleHookParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type LifecycleHookSpec

type LifecycleHookSpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     LifecycleHookParameters `json:"forProvider"`
	// THIS IS A BETA FIELD. It will be honored
	// unless the Management Policies feature flag is disabled.
	// InitProvider holds the same fields as ForProvider, with the exception
	// of Identifier and other resource reference fields. The fields that are
	// in InitProvider are merged into ForProvider when the resource is created.
	// The same fields are also added to the terraform ignore_changes hook, to
	// avoid updating them after creation. This is useful for fields that are
	// required on creation, but we do not desire to update them after creation,
	// for example because of an external controller is managing them, like an
	// autoscaler.
	InitProvider LifecycleHookInitParameters `json:"initProvider,omitempty"`
}

LifecycleHookSpec defines the desired state of LifecycleHook

func (*LifecycleHookSpec) DeepCopy

func (in *LifecycleHookSpec) DeepCopy() *LifecycleHookSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LifecycleHookSpec.

func (*LifecycleHookSpec) DeepCopyInto

func (in *LifecycleHookSpec) DeepCopyInto(out *LifecycleHookSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type LifecycleHookStatus

type LifecycleHookStatus struct {
	v1.ResourceStatus `json:",inline"`
	AtProvider        LifecycleHookObservation `json:"atProvider,omitempty"`
}

LifecycleHookStatus defines the observed state of LifecycleHook.

func (*LifecycleHookStatus) DeepCopy

func (in *LifecycleHookStatus) DeepCopy() *LifecycleHookStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LifecycleHookStatus.

func (*LifecycleHookStatus) DeepCopyInto

func (in *LifecycleHookStatus) DeepCopyInto(out *LifecycleHookStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Notification

type Notification struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.notificationTypes) || (has(self.initProvider) && has(self.initProvider.notificationTypes))",message="spec.forProvider.notificationTypes is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.notificationUserGroupIds) || (has(self.initProvider) && has(self.initProvider.notificationUserGroupIds))",message="spec.forProvider.notificationUserGroupIds is a required parameter"
	Spec   NotificationSpec   `json:"spec"`
	Status NotificationStatus `json:"status,omitempty"`
}

Notification is the Schema for the Notifications API. Provides a resource for an AS (Auto scaling) notification. +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:subresource:status +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,tencentcloud}

func (*Notification) DeepCopy

func (in *Notification) DeepCopy() *Notification

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Notification.

func (*Notification) DeepCopyInto

func (in *Notification) DeepCopyInto(out *Notification)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*Notification) DeepCopyObject

func (in *Notification) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*Notification) GetCondition

func (mg *Notification) GetCondition(ct xpv1.ConditionType) xpv1.Condition

GetCondition of this Notification.

func (*Notification) GetConnectionDetailsMapping

func (tr *Notification) GetConnectionDetailsMapping() map[string]string

GetConnectionDetailsMapping for this Notification

func (*Notification) GetDeletionPolicy

func (mg *Notification) GetDeletionPolicy() xpv1.DeletionPolicy

GetDeletionPolicy of this Notification.

func (*Notification) GetID

func (tr *Notification) GetID() string

GetID returns ID of underlying Terraform resource of this Notification

func (*Notification) GetInitParameters added in v0.8.0

func (tr *Notification) GetInitParameters() (map[string]any, error)

GetInitParameters of this Notification

func (*Notification) GetManagementPolicies added in v0.8.0

func (mg *Notification) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this Notification.

func (*Notification) GetObservation

func (tr *Notification) GetObservation() (map[string]any, error)

GetObservation of this Notification

func (*Notification) GetParameters

func (tr *Notification) GetParameters() (map[string]any, error)

GetParameters of this Notification

func (*Notification) GetProviderConfigReference

func (mg *Notification) GetProviderConfigReference() *xpv1.Reference

GetProviderConfigReference of this Notification.

func (*Notification) GetPublishConnectionDetailsTo

func (mg *Notification) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo

GetPublishConnectionDetailsTo of this Notification.

func (*Notification) GetTerraformResourceType

func (mg *Notification) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this Notification

func (*Notification) GetTerraformSchemaVersion

func (tr *Notification) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*Notification) GetWriteConnectionSecretToReference

func (mg *Notification) GetWriteConnectionSecretToReference() *xpv1.SecretReference

GetWriteConnectionSecretToReference of this Notification.

func (*Notification) LateInitialize

func (tr *Notification) LateInitialize(attrs []byte) (bool, error)

LateInitialize this Notification using its observed tfState. returns True if there are any spec changes for the resource.

func (*Notification) ResolveReferences

func (mg *Notification) ResolveReferences(ctx context.Context, c client.Reader) error

ResolveReferences of this Notification.

func (*Notification) SetConditions

func (mg *Notification) SetConditions(c ...xpv1.Condition)

SetConditions of this Notification.

func (*Notification) SetDeletionPolicy

func (mg *Notification) SetDeletionPolicy(r xpv1.DeletionPolicy)

SetDeletionPolicy of this Notification.

func (*Notification) SetManagementPolicies added in v0.8.0

func (mg *Notification) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this Notification.

func (*Notification) SetObservation

func (tr *Notification) SetObservation(obs map[string]any) error

SetObservation for this Notification

func (*Notification) SetParameters

func (tr *Notification) SetParameters(params map[string]any) error

SetParameters for this Notification

func (*Notification) SetProviderConfigReference

func (mg *Notification) SetProviderConfigReference(r *xpv1.Reference)

SetProviderConfigReference of this Notification.

func (*Notification) SetPublishConnectionDetailsTo

func (mg *Notification) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)

SetPublishConnectionDetailsTo of this Notification.

func (*Notification) SetWriteConnectionSecretToReference

func (mg *Notification) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)

SetWriteConnectionSecretToReference of this Notification.

type NotificationInitParameters added in v0.8.0

type NotificationInitParameters 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.
	// 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 []*string `json:"notificationTypes,omitempty" tf:"notification_types,omitempty"`

	// A group of user IDs to be notified.
	// A group of user IDs to be notified.
	NotificationUserGroupIds []*string `json:"notificationUserGroupIds,omitempty" tf:"notification_user_group_ids,omitempty"`
}

func (*NotificationInitParameters) DeepCopy added in v0.8.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NotificationInitParameters.

func (*NotificationInitParameters) DeepCopyInto added in v0.8.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NotificationList

type NotificationList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []Notification `json:"items"`
}

NotificationList contains a list of Notifications

func (*NotificationList) DeepCopy

func (in *NotificationList) DeepCopy() *NotificationList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NotificationList.

func (*NotificationList) DeepCopyInto

func (in *NotificationList) DeepCopyInto(out *NotificationList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*NotificationList) DeepCopyObject

func (in *NotificationList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*NotificationList) GetItems

func (l *NotificationList) GetItems() []resource.Managed

GetItems of this NotificationList.

type NotificationObservation

type NotificationObservation struct {

	// ID of the resource.
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// 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.
	// 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 []*string `json:"notificationTypes,omitempty" tf:"notification_types,omitempty"`

	// A group of user IDs to be notified.
	// A group of user IDs to be notified.
	NotificationUserGroupIds []*string `json:"notificationUserGroupIds,omitempty" tf:"notification_user_group_ids,omitempty"`

	// ID of a scaling group.
	// ID of a scaling group.
	ScalingGroupID *string `json:"scalingGroupId,omitempty" tf:"scaling_group_id,omitempty"`
}

func (*NotificationObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NotificationObservation.

func (*NotificationObservation) DeepCopyInto

func (in *NotificationObservation) DeepCopyInto(out *NotificationObservation)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NotificationParameters

type NotificationParameters 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.
	// 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`.
	// +kubebuilder:validation:Optional
	NotificationTypes []*string `json:"notificationTypes,omitempty" tf:"notification_types,omitempty"`

	// A group of user IDs to be notified.
	// A group of user IDs to be notified.
	// +kubebuilder:validation:Optional
	NotificationUserGroupIds []*string `json:"notificationUserGroupIds,omitempty" tf:"notification_user_group_ids,omitempty"`

	// ID of a scaling group.
	// ID of a scaling group.
	// +crossplane:generate:reference:type=ScalingGroup
	// +kubebuilder:validation:Optional
	ScalingGroupID *string `json:"scalingGroupId,omitempty" tf:"scaling_group_id,omitempty"`

	// Reference to a ScalingGroup to populate scalingGroupId.
	// +kubebuilder:validation:Optional
	ScalingGroupIDRef *v1.Reference `json:"scalingGroupIdRef,omitempty" tf:"-"`

	// Selector for a ScalingGroup to populate scalingGroupId.
	// +kubebuilder:validation:Optional
	ScalingGroupIDSelector *v1.Selector `json:"scalingGroupIdSelector,omitempty" tf:"-"`
}

func (*NotificationParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NotificationParameters.

func (*NotificationParameters) DeepCopyInto

func (in *NotificationParameters) DeepCopyInto(out *NotificationParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NotificationSpec

type NotificationSpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     NotificationParameters `json:"forProvider"`
	// THIS IS A BETA FIELD. It will be honored
	// unless the Management Policies feature flag is disabled.
	// InitProvider holds the same fields as ForProvider, with the exception
	// of Identifier and other resource reference fields. The fields that are
	// in InitProvider are merged into ForProvider when the resource is created.
	// The same fields are also added to the terraform ignore_changes hook, to
	// avoid updating them after creation. This is useful for fields that are
	// required on creation, but we do not desire to update them after creation,
	// for example because of an external controller is managing them, like an
	// autoscaler.
	InitProvider NotificationInitParameters `json:"initProvider,omitempty"`
}

NotificationSpec defines the desired state of Notification

func (*NotificationSpec) DeepCopy

func (in *NotificationSpec) DeepCopy() *NotificationSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NotificationSpec.

func (*NotificationSpec) DeepCopyInto

func (in *NotificationSpec) DeepCopyInto(out *NotificationSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NotificationStatus

type NotificationStatus struct {
	v1.ResourceStatus `json:",inline"`
	AtProvider        NotificationObservation `json:"atProvider,omitempty"`
}

NotificationStatus defines the observed state of Notification.

func (*NotificationStatus) DeepCopy

func (in *NotificationStatus) DeepCopy() *NotificationStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NotificationStatus.

func (*NotificationStatus) DeepCopyInto

func (in *NotificationStatus) DeepCopyInto(out *NotificationStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ScalingConfig

type ScalingConfig struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.configurationName) || (has(self.initProvider) && has(self.initProvider.configurationName))",message="spec.forProvider.configurationName is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.imageId) || (has(self.initProvider) && has(self.initProvider.imageId))",message="spec.forProvider.imageId is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.instanceTypes) || (has(self.initProvider) && has(self.initProvider.instanceTypes))",message="spec.forProvider.instanceTypes is a required parameter"
	Spec   ScalingConfigSpec   `json:"spec"`
	Status ScalingConfigStatus `json:"status,omitempty"`
}

ScalingConfig is the Schema for the ScalingConfigs API. Provides a resource to create a configuration for an AS (Auto scaling) instance. +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:subresource:status +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,tencentcloud}

func (*ScalingConfig) DeepCopy

func (in *ScalingConfig) DeepCopy() *ScalingConfig

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScalingConfig.

func (*ScalingConfig) DeepCopyInto

func (in *ScalingConfig) DeepCopyInto(out *ScalingConfig)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ScalingConfig) DeepCopyObject

func (in *ScalingConfig) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*ScalingConfig) GetCondition

func (mg *ScalingConfig) GetCondition(ct xpv1.ConditionType) xpv1.Condition

GetCondition of this ScalingConfig.

func (*ScalingConfig) GetConnectionDetailsMapping

func (tr *ScalingConfig) GetConnectionDetailsMapping() map[string]string

GetConnectionDetailsMapping for this ScalingConfig

func (*ScalingConfig) GetDeletionPolicy

func (mg *ScalingConfig) GetDeletionPolicy() xpv1.DeletionPolicy

GetDeletionPolicy of this ScalingConfig.

func (*ScalingConfig) GetID

func (tr *ScalingConfig) GetID() string

GetID returns ID of underlying Terraform resource of this ScalingConfig

func (*ScalingConfig) GetInitParameters added in v0.8.0

func (tr *ScalingConfig) GetInitParameters() (map[string]any, error)

GetInitParameters of this ScalingConfig

func (*ScalingConfig) GetManagementPolicies added in v0.8.0

func (mg *ScalingConfig) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this ScalingConfig.

func (*ScalingConfig) GetObservation

func (tr *ScalingConfig) GetObservation() (map[string]any, error)

GetObservation of this ScalingConfig

func (*ScalingConfig) GetParameters

func (tr *ScalingConfig) GetParameters() (map[string]any, error)

GetParameters of this ScalingConfig

func (*ScalingConfig) GetProviderConfigReference

func (mg *ScalingConfig) GetProviderConfigReference() *xpv1.Reference

GetProviderConfigReference of this ScalingConfig.

func (*ScalingConfig) GetPublishConnectionDetailsTo

func (mg *ScalingConfig) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo

GetPublishConnectionDetailsTo of this ScalingConfig.

func (*ScalingConfig) GetTerraformResourceType

func (mg *ScalingConfig) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this ScalingConfig

func (*ScalingConfig) GetTerraformSchemaVersion

func (tr *ScalingConfig) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*ScalingConfig) GetWriteConnectionSecretToReference

func (mg *ScalingConfig) GetWriteConnectionSecretToReference() *xpv1.SecretReference

GetWriteConnectionSecretToReference of this ScalingConfig.

func (*ScalingConfig) LateInitialize

func (tr *ScalingConfig) LateInitialize(attrs []byte) (bool, error)

LateInitialize this ScalingConfig using its observed tfState. returns True if there are any spec changes for the resource.

func (*ScalingConfig) SetConditions

func (mg *ScalingConfig) SetConditions(c ...xpv1.Condition)

SetConditions of this ScalingConfig.

func (*ScalingConfig) SetDeletionPolicy

func (mg *ScalingConfig) SetDeletionPolicy(r xpv1.DeletionPolicy)

SetDeletionPolicy of this ScalingConfig.

func (*ScalingConfig) SetManagementPolicies added in v0.8.0

func (mg *ScalingConfig) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this ScalingConfig.

func (*ScalingConfig) SetObservation

func (tr *ScalingConfig) SetObservation(obs map[string]any) error

SetObservation for this ScalingConfig

func (*ScalingConfig) SetParameters

func (tr *ScalingConfig) SetParameters(params map[string]any) error

SetParameters for this ScalingConfig

func (*ScalingConfig) SetProviderConfigReference

func (mg *ScalingConfig) SetProviderConfigReference(r *xpv1.Reference)

SetProviderConfigReference of this ScalingConfig.

func (*ScalingConfig) SetPublishConnectionDetailsTo

func (mg *ScalingConfig) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)

SetPublishConnectionDetailsTo of this ScalingConfig.

func (*ScalingConfig) SetWriteConnectionSecretToReference

func (mg *ScalingConfig) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)

SetWriteConnectionSecretToReference of this ScalingConfig.

type ScalingConfigInitParameters added in v0.8.0

type ScalingConfigInitParameters struct {

	// CAM role name authorized to access.
	// CAM role name authorized to access.
	CamRoleName *string `json:"camRoleName,omitempty" tf:"cam_role_name,omitempty"`

	// Name of a launch configuration.
	// Name of a launch configuration.
	ConfigurationName *string `json:"configurationName,omitempty" tf:"configuration_name,omitempty"`

	// Configurations of data disk.
	// Configurations of data disk.
	DataDisk []DataDiskInitParameters `json:"dataDisk,omitempty" tf:"data_disk,omitempty"`

	// Policy of cloud disk type. Valid values: ORIGINAL and AUTOMATIC. Default is ORIGINAL.
	// Policy of cloud disk type. Valid values: `ORIGINAL` and `AUTOMATIC`. Default is `ORIGINAL`.
	DiskTypePolicy *string `json:"diskTypePolicy,omitempty" tf:"disk_type_policy,omitempty"`

	// To specify whether to enable cloud monitor service. Default is TRUE.
	// To specify whether to enable cloud monitor service. Default is `TRUE`.
	EnhancedMonitorService *bool `json:"enhancedMonitorService,omitempty" tf:"enhanced_monitor_service,omitempty"`

	// To specify whether to enable cloud security service. Default is TRUE.
	// To specify whether to enable cloud security service. Default is `TRUE`.
	EnhancedSecurityService *bool `json:"enhancedSecurityService,omitempty" tf:"enhanced_security_service,omitempty"`

	// Related settings of the cloud server hostname (HostName).
	// Related settings of the cloud server hostname (HostName).
	HostNameSettings []HostNameSettingsInitParameters `json:"hostNameSettings,omitempty" tf:"host_name_settings,omitempty"`

	// An available image ID for a cvm instance.
	// An available image ID for a cvm instance.
	ImageID *string `json:"imageId,omitempty" tf:"image_id,omitempty"`

	// Charge type of instance. Valid values are PREPAID, POSTPAID_BY_HOUR, SPOTPAID. The default is POSTPAID_BY_HOUR. NOTE: SPOTPAID instance must set spot_instance_type and spot_max_price at the same time.
	// Charge type of instance. Valid values are `PREPAID`, `POSTPAID_BY_HOUR`, `SPOTPAID`. The default is `POSTPAID_BY_HOUR`. NOTE: `SPOTPAID` instance must set `spot_instance_type` and `spot_max_price` at the same time.
	InstanceChargeType *string `json:"instanceChargeType,omitempty" tf:"instance_charge_type,omitempty"`

	// The tenancy (in month) of the prepaid instance, NOTE: it only works when instance_charge_type is set to PREPAID. Valid values are 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 24, 36.
	// The tenancy (in month) of the prepaid instance, NOTE: it only works when instance_charge_type is set to `PREPAID`. Valid values are `1`, `2`, `3`, `4`, `5`, `6`, `7`, `8`, `9`, `10`, `11`, `12`, `24`, `36`.
	InstanceChargeTypePrepaidPeriod *float64 `json:"instanceChargeTypePrepaidPeriod,omitempty" tf:"instance_charge_type_prepaid_period,omitempty"`

	// 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 instance_charge_type is set to PREPAID.
	// 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 instance_charge_type is set to `PREPAID`.
	InstanceChargeTypePrepaidRenewFlag *string `json:"instanceChargeTypePrepaidRenewFlag,omitempty" tf:"instance_charge_type_prepaid_renew_flag,omitempty"`

	// Settings of CVM instance names.
	// Settings of CVM instance names.
	InstanceNameSettings []InstanceNameSettingsInitParameters `json:"instanceNameSettings,omitempty" tf:"instance_name_settings,omitempty"`

	// A list of tags used to associate different resources.
	// A list of tags used to associate different resources.
	InstanceTags map[string]*string `json:"instanceTags,omitempty" tf:"instance_tags,omitempty"`

	// Specified types of CVM instances.
	// Specified types of CVM instances.
	InstanceTypes []*string `json:"instanceTypes,omitempty" tf:"instance_types,omitempty"`

	// Charge types for network traffic. Valid values: BANDWIDTH_PREPAID, TRAFFIC_POSTPAID_BY_HOUR and BANDWIDTH_PACKAGE.
	// Charge types for network traffic. Valid values: `BANDWIDTH_PREPAID`, `TRAFFIC_POSTPAID_BY_HOUR` and `BANDWIDTH_PACKAGE`.
	InternetChargeType *string `json:"internetChargeType,omitempty" tf:"internet_charge_type,omitempty"`

	// Max bandwidth of Internet access in Mbps. Default is 0.
	// Max bandwidth of Internet access in Mbps. Default is `0`.
	InternetMaxBandwidthOut *float64 `json:"internetMaxBandwidthOut,omitempty" tf:"internet_max_bandwidth_out,omitempty"`

	// Specify whether to keep original settings of a CVM image. And it can't be used with password or key_ids together.
	// Specify whether to keep original settings of a CVM image. And it can't be used with password or key_ids together.
	KeepImageLogin *bool `json:"keepImageLogin,omitempty" tf:"keep_image_login,omitempty"`

	// ID list of keys.
	// ID list of keys.
	KeyIds []*string `json:"keyIds,omitempty" tf:"key_ids,omitempty"`

	// Specifys to which project the configuration belongs.
	// Specifys to which project the configuration belongs.
	ProjectID *float64 `json:"projectId,omitempty" tf:"project_id,omitempty"`

	// Specify whether to assign an Internet IP address.
	// Specify whether to assign an Internet IP address.
	PublicIPAssigned *bool `json:"publicIpAssigned,omitempty" tf:"public_ip_assigned,omitempty"`

	// Security groups to which a CVM instance belongs.
	// Security groups to which a CVM instance belongs.
	SecurityGroupIds []*string `json:"securityGroupIds,omitempty" tf:"security_group_ids,omitempty"`

	// Type of spot instance, only support one-time now. Note: it only works when instance_charge_type is set to SPOTPAID.
	// Type of spot instance, only support `one-time` now. Note: it only works when instance_charge_type is set to `SPOTPAID`.
	SpotInstanceType *string `json:"spotInstanceType,omitempty" tf:"spot_instance_type,omitempty"`

	// Max price of a spot instance, is the format of decimal string, for example "0.50". Note: it only works when instance_charge_type is set to SPOTPAID.
	// Max price of a spot instance, is the format of decimal string, for example "0.50". Note: it only works when instance_charge_type is set to `SPOTPAID`.
	SpotMaxPrice *string `json:"spotMaxPrice,omitempty" tf:"spot_max_price,omitempty"`

	// Volume of system disk in GB. Default is 50.
	// Volume of system disk in GB. Default is `50`.
	SystemDiskSize *float64 `json:"systemDiskSize,omitempty" tf:"system_disk_size,omitempty"`

	// Type of a CVM disk. Valid values: CLOUD_PREMIUM and CLOUD_SSD. Default is CLOUD_PREMIUM. valid when disk_type_policy is ORIGINAL.
	// Type of a CVM disk. Valid values: `CLOUD_PREMIUM` and `CLOUD_SSD`. Default is `CLOUD_PREMIUM`. valid when disk_type_policy is ORIGINAL.
	SystemDiskType *string `json:"systemDiskType,omitempty" tf:"system_disk_type,omitempty"`

	// ase64-encoded User Data text, the length limit is 16KB.
	// ase64-encoded User Data text, the length limit is 16KB.
	UserData *string `json:"userData,omitempty" tf:"user_data,omitempty"`
}

func (*ScalingConfigInitParameters) DeepCopy added in v0.8.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScalingConfigInitParameters.

func (*ScalingConfigInitParameters) DeepCopyInto added in v0.8.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ScalingConfigList

type ScalingConfigList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []ScalingConfig `json:"items"`
}

ScalingConfigList contains a list of ScalingConfigs

func (*ScalingConfigList) DeepCopy

func (in *ScalingConfigList) DeepCopy() *ScalingConfigList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScalingConfigList.

func (*ScalingConfigList) DeepCopyInto

func (in *ScalingConfigList) DeepCopyInto(out *ScalingConfigList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ScalingConfigList) DeepCopyObject

func (in *ScalingConfigList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*ScalingConfigList) GetItems

func (l *ScalingConfigList) GetItems() []resource.Managed

GetItems of this ScalingConfigList.

type ScalingConfigObservation

type ScalingConfigObservation struct {

	// CAM role name authorized to access.
	// CAM role name authorized to access.
	CamRoleName *string `json:"camRoleName,omitempty" tf:"cam_role_name,omitempty"`

	// Name of a launch configuration.
	// Name of a launch configuration.
	ConfigurationName *string `json:"configurationName,omitempty" tf:"configuration_name,omitempty"`

	// The time when the launch configuration was created.
	// The time when the launch configuration was created.
	CreateTime *string `json:"createTime,omitempty" tf:"create_time,omitempty"`

	// Configurations of data disk.
	// Configurations of data disk.
	DataDisk []DataDiskObservation `json:"dataDisk,omitempty" tf:"data_disk,omitempty"`

	// Policy of cloud disk type. Valid values: ORIGINAL and AUTOMATIC. Default is ORIGINAL.
	// Policy of cloud disk type. Valid values: `ORIGINAL` and `AUTOMATIC`. Default is `ORIGINAL`.
	DiskTypePolicy *string `json:"diskTypePolicy,omitempty" tf:"disk_type_policy,omitempty"`

	// To specify whether to enable cloud monitor service. Default is TRUE.
	// To specify whether to enable cloud monitor service. Default is `TRUE`.
	EnhancedMonitorService *bool `json:"enhancedMonitorService,omitempty" tf:"enhanced_monitor_service,omitempty"`

	// To specify whether to enable cloud security service. Default is TRUE.
	// To specify whether to enable cloud security service. Default is `TRUE`.
	EnhancedSecurityService *bool `json:"enhancedSecurityService,omitempty" tf:"enhanced_security_service,omitempty"`

	// Related settings of the cloud server hostname (HostName).
	// Related settings of the cloud server hostname (HostName).
	HostNameSettings []HostNameSettingsObservation `json:"hostNameSettings,omitempty" tf:"host_name_settings,omitempty"`

	// ID of the resource.
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// An available image ID for a cvm instance.
	// An available image ID for a cvm instance.
	ImageID *string `json:"imageId,omitempty" tf:"image_id,omitempty"`

	// Charge type of instance. Valid values are PREPAID, POSTPAID_BY_HOUR, SPOTPAID. The default is POSTPAID_BY_HOUR. NOTE: SPOTPAID instance must set spot_instance_type and spot_max_price at the same time.
	// Charge type of instance. Valid values are `PREPAID`, `POSTPAID_BY_HOUR`, `SPOTPAID`. The default is `POSTPAID_BY_HOUR`. NOTE: `SPOTPAID` instance must set `spot_instance_type` and `spot_max_price` at the same time.
	InstanceChargeType *string `json:"instanceChargeType,omitempty" tf:"instance_charge_type,omitempty"`

	// The tenancy (in month) of the prepaid instance, NOTE: it only works when instance_charge_type is set to PREPAID. Valid values are 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 24, 36.
	// The tenancy (in month) of the prepaid instance, NOTE: it only works when instance_charge_type is set to `PREPAID`. Valid values are `1`, `2`, `3`, `4`, `5`, `6`, `7`, `8`, `9`, `10`, `11`, `12`, `24`, `36`.
	InstanceChargeTypePrepaidPeriod *float64 `json:"instanceChargeTypePrepaidPeriod,omitempty" tf:"instance_charge_type_prepaid_period,omitempty"`

	// 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 instance_charge_type is set to PREPAID.
	// 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 instance_charge_type is set to `PREPAID`.
	InstanceChargeTypePrepaidRenewFlag *string `json:"instanceChargeTypePrepaidRenewFlag,omitempty" tf:"instance_charge_type_prepaid_renew_flag,omitempty"`

	// Settings of CVM instance names.
	// Settings of CVM instance names.
	InstanceNameSettings []InstanceNameSettingsObservation `json:"instanceNameSettings,omitempty" tf:"instance_name_settings,omitempty"`

	// A list of tags used to associate different resources.
	// A list of tags used to associate different resources.
	InstanceTags map[string]*string `json:"instanceTags,omitempty" tf:"instance_tags,omitempty"`

	// Specified types of CVM instances.
	// Specified types of CVM instances.
	InstanceTypes []*string `json:"instanceTypes,omitempty" tf:"instance_types,omitempty"`

	// Charge types for network traffic. Valid values: BANDWIDTH_PREPAID, TRAFFIC_POSTPAID_BY_HOUR and BANDWIDTH_PACKAGE.
	// Charge types for network traffic. Valid values: `BANDWIDTH_PREPAID`, `TRAFFIC_POSTPAID_BY_HOUR` and `BANDWIDTH_PACKAGE`.
	InternetChargeType *string `json:"internetChargeType,omitempty" tf:"internet_charge_type,omitempty"`

	// Max bandwidth of Internet access in Mbps. Default is 0.
	// Max bandwidth of Internet access in Mbps. Default is `0`.
	InternetMaxBandwidthOut *float64 `json:"internetMaxBandwidthOut,omitempty" tf:"internet_max_bandwidth_out,omitempty"`

	// Specify whether to keep original settings of a CVM image. And it can't be used with password or key_ids together.
	// Specify whether to keep original settings of a CVM image. And it can't be used with password or key_ids together.
	KeepImageLogin *bool `json:"keepImageLogin,omitempty" tf:"keep_image_login,omitempty"`

	// ID list of keys.
	// ID list of keys.
	KeyIds []*string `json:"keyIds,omitempty" tf:"key_ids,omitempty"`

	// Specifys to which project the configuration belongs.
	// Specifys to which project the configuration belongs.
	ProjectID *float64 `json:"projectId,omitempty" tf:"project_id,omitempty"`

	// Specify whether to assign an Internet IP address.
	// Specify whether to assign an Internet IP address.
	PublicIPAssigned *bool `json:"publicIpAssigned,omitempty" tf:"public_ip_assigned,omitempty"`

	// Security groups to which a CVM instance belongs.
	// Security groups to which a CVM instance belongs.
	SecurityGroupIds []*string `json:"securityGroupIds,omitempty" tf:"security_group_ids,omitempty"`

	// Type of spot instance, only support one-time now. Note: it only works when instance_charge_type is set to SPOTPAID.
	// Type of spot instance, only support `one-time` now. Note: it only works when instance_charge_type is set to `SPOTPAID`.
	SpotInstanceType *string `json:"spotInstanceType,omitempty" tf:"spot_instance_type,omitempty"`

	// Max price of a spot instance, is the format of decimal string, for example "0.50". Note: it only works when instance_charge_type is set to SPOTPAID.
	// Max price of a spot instance, is the format of decimal string, for example "0.50". Note: it only works when instance_charge_type is set to `SPOTPAID`.
	SpotMaxPrice *string `json:"spotMaxPrice,omitempty" tf:"spot_max_price,omitempty"`

	// Current statues of a launch configuration.
	// Current statues of a launch configuration.
	Status *string `json:"status,omitempty" tf:"status,omitempty"`

	// Volume of system disk in GB. Default is 50.
	// Volume of system disk in GB. Default is `50`.
	SystemDiskSize *float64 `json:"systemDiskSize,omitempty" tf:"system_disk_size,omitempty"`

	// Type of a CVM disk. Valid values: CLOUD_PREMIUM and CLOUD_SSD. Default is CLOUD_PREMIUM. valid when disk_type_policy is ORIGINAL.
	// Type of a CVM disk. Valid values: `CLOUD_PREMIUM` and `CLOUD_SSD`. Default is `CLOUD_PREMIUM`. valid when disk_type_policy is ORIGINAL.
	SystemDiskType *string `json:"systemDiskType,omitempty" tf:"system_disk_type,omitempty"`

	// ase64-encoded User Data text, the length limit is 16KB.
	// ase64-encoded User Data text, the length limit is 16KB.
	UserData *string `json:"userData,omitempty" tf:"user_data,omitempty"`
}

func (*ScalingConfigObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScalingConfigObservation.

func (*ScalingConfigObservation) DeepCopyInto

func (in *ScalingConfigObservation) DeepCopyInto(out *ScalingConfigObservation)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ScalingConfigParameters

type ScalingConfigParameters struct {

	// CAM role name authorized to access.
	// CAM role name authorized to access.
	// +kubebuilder:validation:Optional
	CamRoleName *string `json:"camRoleName,omitempty" tf:"cam_role_name,omitempty"`

	// Name of a launch configuration.
	// Name of a launch configuration.
	// +kubebuilder:validation:Optional
	ConfigurationName *string `json:"configurationName,omitempty" tf:"configuration_name,omitempty"`

	// Configurations of data disk.
	// Configurations of data disk.
	// +kubebuilder:validation:Optional
	DataDisk []DataDiskParameters `json:"dataDisk,omitempty" tf:"data_disk,omitempty"`

	// Policy of cloud disk type. Valid values: ORIGINAL and AUTOMATIC. Default is ORIGINAL.
	// Policy of cloud disk type. Valid values: `ORIGINAL` and `AUTOMATIC`. Default is `ORIGINAL`.
	// +kubebuilder:validation:Optional
	DiskTypePolicy *string `json:"diskTypePolicy,omitempty" tf:"disk_type_policy,omitempty"`

	// To specify whether to enable cloud monitor service. Default is TRUE.
	// To specify whether to enable cloud monitor service. Default is `TRUE`.
	// +kubebuilder:validation:Optional
	EnhancedMonitorService *bool `json:"enhancedMonitorService,omitempty" tf:"enhanced_monitor_service,omitempty"`

	// To specify whether to enable cloud security service. Default is TRUE.
	// To specify whether to enable cloud security service. Default is `TRUE`.
	// +kubebuilder:validation:Optional
	EnhancedSecurityService *bool `json:"enhancedSecurityService,omitempty" tf:"enhanced_security_service,omitempty"`

	// Related settings of the cloud server hostname (HostName).
	// Related settings of the cloud server hostname (HostName).
	// +kubebuilder:validation:Optional
	HostNameSettings []HostNameSettingsParameters `json:"hostNameSettings,omitempty" tf:"host_name_settings,omitempty"`

	// An available image ID for a cvm instance.
	// An available image ID for a cvm instance.
	// +kubebuilder:validation:Optional
	ImageID *string `json:"imageId,omitempty" tf:"image_id,omitempty"`

	// Charge type of instance. Valid values are PREPAID, POSTPAID_BY_HOUR, SPOTPAID. The default is POSTPAID_BY_HOUR. NOTE: SPOTPAID instance must set spot_instance_type and spot_max_price at the same time.
	// Charge type of instance. Valid values are `PREPAID`, `POSTPAID_BY_HOUR`, `SPOTPAID`. The default is `POSTPAID_BY_HOUR`. NOTE: `SPOTPAID` instance must set `spot_instance_type` and `spot_max_price` at the same time.
	// +kubebuilder:validation:Optional
	InstanceChargeType *string `json:"instanceChargeType,omitempty" tf:"instance_charge_type,omitempty"`

	// The tenancy (in month) of the prepaid instance, NOTE: it only works when instance_charge_type is set to PREPAID. Valid values are 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 24, 36.
	// The tenancy (in month) of the prepaid instance, NOTE: it only works when instance_charge_type is set to `PREPAID`. Valid values are `1`, `2`, `3`, `4`, `5`, `6`, `7`, `8`, `9`, `10`, `11`, `12`, `24`, `36`.
	// +kubebuilder:validation:Optional
	InstanceChargeTypePrepaidPeriod *float64 `json:"instanceChargeTypePrepaidPeriod,omitempty" tf:"instance_charge_type_prepaid_period,omitempty"`

	// 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 instance_charge_type is set to PREPAID.
	// 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 instance_charge_type is set to `PREPAID`.
	// +kubebuilder:validation:Optional
	InstanceChargeTypePrepaidRenewFlag *string `json:"instanceChargeTypePrepaidRenewFlag,omitempty" tf:"instance_charge_type_prepaid_renew_flag,omitempty"`

	// Settings of CVM instance names.
	// Settings of CVM instance names.
	// +kubebuilder:validation:Optional
	InstanceNameSettings []InstanceNameSettingsParameters `json:"instanceNameSettings,omitempty" tf:"instance_name_settings,omitempty"`

	// A list of tags used to associate different resources.
	// A list of tags used to associate different resources.
	// +kubebuilder:validation:Optional
	InstanceTags map[string]*string `json:"instanceTags,omitempty" tf:"instance_tags,omitempty"`

	// Specified types of CVM instances.
	// Specified types of CVM instances.
	// +kubebuilder:validation:Optional
	InstanceTypes []*string `json:"instanceTypes,omitempty" tf:"instance_types,omitempty"`

	// Charge types for network traffic. Valid values: BANDWIDTH_PREPAID, TRAFFIC_POSTPAID_BY_HOUR and BANDWIDTH_PACKAGE.
	// Charge types for network traffic. Valid values: `BANDWIDTH_PREPAID`, `TRAFFIC_POSTPAID_BY_HOUR` and `BANDWIDTH_PACKAGE`.
	// +kubebuilder:validation:Optional
	InternetChargeType *string `json:"internetChargeType,omitempty" tf:"internet_charge_type,omitempty"`

	// Max bandwidth of Internet access in Mbps. Default is 0.
	// Max bandwidth of Internet access in Mbps. Default is `0`.
	// +kubebuilder:validation:Optional
	InternetMaxBandwidthOut *float64 `json:"internetMaxBandwidthOut,omitempty" tf:"internet_max_bandwidth_out,omitempty"`

	// Specify whether to keep original settings of a CVM image. And it can't be used with password or key_ids together.
	// Specify whether to keep original settings of a CVM image. And it can't be used with password or key_ids together.
	// +kubebuilder:validation:Optional
	KeepImageLogin *bool `json:"keepImageLogin,omitempty" tf:"keep_image_login,omitempty"`

	// ID list of keys.
	// ID list of keys.
	// +kubebuilder:validation:Optional
	KeyIds []*string `json:"keyIds,omitempty" tf:"key_ids,omitempty"`

	// Password to access.
	// Password to access.
	// +kubebuilder:validation:Optional
	PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"`

	// Specifys to which project the configuration belongs.
	// Specifys to which project the configuration belongs.
	// +kubebuilder:validation:Optional
	ProjectID *float64 `json:"projectId,omitempty" tf:"project_id,omitempty"`

	// Specify whether to assign an Internet IP address.
	// Specify whether to assign an Internet IP address.
	// +kubebuilder:validation:Optional
	PublicIPAssigned *bool `json:"publicIpAssigned,omitempty" tf:"public_ip_assigned,omitempty"`

	// Security groups to which a CVM instance belongs.
	// Security groups to which a CVM instance belongs.
	// +kubebuilder:validation:Optional
	SecurityGroupIds []*string `json:"securityGroupIds,omitempty" tf:"security_group_ids,omitempty"`

	// Type of spot instance, only support one-time now. Note: it only works when instance_charge_type is set to SPOTPAID.
	// Type of spot instance, only support `one-time` now. Note: it only works when instance_charge_type is set to `SPOTPAID`.
	// +kubebuilder:validation:Optional
	SpotInstanceType *string `json:"spotInstanceType,omitempty" tf:"spot_instance_type,omitempty"`

	// Max price of a spot instance, is the format of decimal string, for example "0.50". Note: it only works when instance_charge_type is set to SPOTPAID.
	// Max price of a spot instance, is the format of decimal string, for example "0.50". Note: it only works when instance_charge_type is set to `SPOTPAID`.
	// +kubebuilder:validation:Optional
	SpotMaxPrice *string `json:"spotMaxPrice,omitempty" tf:"spot_max_price,omitempty"`

	// Volume of system disk in GB. Default is 50.
	// Volume of system disk in GB. Default is `50`.
	// +kubebuilder:validation:Optional
	SystemDiskSize *float64 `json:"systemDiskSize,omitempty" tf:"system_disk_size,omitempty"`

	// Type of a CVM disk. Valid values: CLOUD_PREMIUM and CLOUD_SSD. Default is CLOUD_PREMIUM. valid when disk_type_policy is ORIGINAL.
	// Type of a CVM disk. Valid values: `CLOUD_PREMIUM` and `CLOUD_SSD`. Default is `CLOUD_PREMIUM`. valid when disk_type_policy is ORIGINAL.
	// +kubebuilder:validation:Optional
	SystemDiskType *string `json:"systemDiskType,omitempty" tf:"system_disk_type,omitempty"`

	// ase64-encoded User Data text, the length limit is 16KB.
	// ase64-encoded User Data text, the length limit is 16KB.
	// +kubebuilder:validation:Optional
	UserData *string `json:"userData,omitempty" tf:"user_data,omitempty"`
}

func (*ScalingConfigParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScalingConfigParameters.

func (*ScalingConfigParameters) DeepCopyInto

func (in *ScalingConfigParameters) DeepCopyInto(out *ScalingConfigParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ScalingConfigSpec

type ScalingConfigSpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     ScalingConfigParameters `json:"forProvider"`
	// THIS IS A BETA FIELD. It will be honored
	// unless the Management Policies feature flag is disabled.
	// InitProvider holds the same fields as ForProvider, with the exception
	// of Identifier and other resource reference fields. The fields that are
	// in InitProvider are merged into ForProvider when the resource is created.
	// The same fields are also added to the terraform ignore_changes hook, to
	// avoid updating them after creation. This is useful for fields that are
	// required on creation, but we do not desire to update them after creation,
	// for example because of an external controller is managing them, like an
	// autoscaler.
	InitProvider ScalingConfigInitParameters `json:"initProvider,omitempty"`
}

ScalingConfigSpec defines the desired state of ScalingConfig

func (*ScalingConfigSpec) DeepCopy

func (in *ScalingConfigSpec) DeepCopy() *ScalingConfigSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScalingConfigSpec.

func (*ScalingConfigSpec) DeepCopyInto

func (in *ScalingConfigSpec) DeepCopyInto(out *ScalingConfigSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ScalingConfigStatus

type ScalingConfigStatus struct {
	v1.ResourceStatus `json:",inline"`
	AtProvider        ScalingConfigObservation `json:"atProvider,omitempty"`
}

ScalingConfigStatus defines the observed state of ScalingConfig.

func (*ScalingConfigStatus) DeepCopy

func (in *ScalingConfigStatus) DeepCopy() *ScalingConfigStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScalingConfigStatus.

func (*ScalingConfigStatus) DeepCopyInto

func (in *ScalingConfigStatus) DeepCopyInto(out *ScalingConfigStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ScalingGroup

type ScalingGroup struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.maxSize) || (has(self.initProvider) && has(self.initProvider.maxSize))",message="spec.forProvider.maxSize is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.minSize) || (has(self.initProvider) && has(self.initProvider.minSize))",message="spec.forProvider.minSize is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.scalingGroupName) || (has(self.initProvider) && has(self.initProvider.scalingGroupName))",message="spec.forProvider.scalingGroupName is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.vpcId) || (has(self.initProvider) && has(self.initProvider.vpcId))",message="spec.forProvider.vpcId is a required parameter"
	Spec   ScalingGroupSpec   `json:"spec"`
	Status ScalingGroupStatus `json:"status,omitempty"`
}

ScalingGroup is the Schema for the ScalingGroups API. Provides a resource to create a group of AS (Auto scaling) instances. +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:subresource:status +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,tencentcloud}

func (*ScalingGroup) DeepCopy

func (in *ScalingGroup) DeepCopy() *ScalingGroup

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScalingGroup.

func (*ScalingGroup) DeepCopyInto

func (in *ScalingGroup) DeepCopyInto(out *ScalingGroup)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ScalingGroup) DeepCopyObject

func (in *ScalingGroup) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*ScalingGroup) GetCondition

func (mg *ScalingGroup) GetCondition(ct xpv1.ConditionType) xpv1.Condition

GetCondition of this ScalingGroup.

func (*ScalingGroup) GetConnectionDetailsMapping

func (tr *ScalingGroup) GetConnectionDetailsMapping() map[string]string

GetConnectionDetailsMapping for this ScalingGroup

func (*ScalingGroup) GetDeletionPolicy

func (mg *ScalingGroup) GetDeletionPolicy() xpv1.DeletionPolicy

GetDeletionPolicy of this ScalingGroup.

func (*ScalingGroup) GetID

func (tr *ScalingGroup) GetID() string

GetID returns ID of underlying Terraform resource of this ScalingGroup

func (*ScalingGroup) GetInitParameters added in v0.8.0

func (tr *ScalingGroup) GetInitParameters() (map[string]any, error)

GetInitParameters of this ScalingGroup

func (*ScalingGroup) GetManagementPolicies added in v0.8.0

func (mg *ScalingGroup) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this ScalingGroup.

func (*ScalingGroup) GetObservation

func (tr *ScalingGroup) GetObservation() (map[string]any, error)

GetObservation of this ScalingGroup

func (*ScalingGroup) GetParameters

func (tr *ScalingGroup) GetParameters() (map[string]any, error)

GetParameters of this ScalingGroup

func (*ScalingGroup) GetProviderConfigReference

func (mg *ScalingGroup) GetProviderConfigReference() *xpv1.Reference

GetProviderConfigReference of this ScalingGroup.

func (*ScalingGroup) GetPublishConnectionDetailsTo

func (mg *ScalingGroup) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo

GetPublishConnectionDetailsTo of this ScalingGroup.

func (*ScalingGroup) GetTerraformResourceType

func (mg *ScalingGroup) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this ScalingGroup

func (*ScalingGroup) GetTerraformSchemaVersion

func (tr *ScalingGroup) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*ScalingGroup) GetWriteConnectionSecretToReference

func (mg *ScalingGroup) GetWriteConnectionSecretToReference() *xpv1.SecretReference

GetWriteConnectionSecretToReference of this ScalingGroup.

func (*ScalingGroup) LateInitialize

func (tr *ScalingGroup) LateInitialize(attrs []byte) (bool, error)

LateInitialize this ScalingGroup using its observed tfState. returns True if there are any spec changes for the resource.

func (*ScalingGroup) ResolveReferences

func (mg *ScalingGroup) ResolveReferences(ctx context.Context, c client.Reader) error

ResolveReferences of this ScalingGroup.

func (*ScalingGroup) SetConditions

func (mg *ScalingGroup) SetConditions(c ...xpv1.Condition)

SetConditions of this ScalingGroup.

func (*ScalingGroup) SetDeletionPolicy

func (mg *ScalingGroup) SetDeletionPolicy(r xpv1.DeletionPolicy)

SetDeletionPolicy of this ScalingGroup.

func (*ScalingGroup) SetManagementPolicies added in v0.8.0

func (mg *ScalingGroup) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this ScalingGroup.

func (*ScalingGroup) SetObservation

func (tr *ScalingGroup) SetObservation(obs map[string]any) error

SetObservation for this ScalingGroup

func (*ScalingGroup) SetParameters

func (tr *ScalingGroup) SetParameters(params map[string]any) error

SetParameters for this ScalingGroup

func (*ScalingGroup) SetProviderConfigReference

func (mg *ScalingGroup) SetProviderConfigReference(r *xpv1.Reference)

SetProviderConfigReference of this ScalingGroup.

func (*ScalingGroup) SetPublishConnectionDetailsTo

func (mg *ScalingGroup) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)

SetPublishConnectionDetailsTo of this ScalingGroup.

func (*ScalingGroup) SetWriteConnectionSecretToReference

func (mg *ScalingGroup) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)

SetWriteConnectionSecretToReference of this ScalingGroup.

type ScalingGroupInitParameters added in v0.8.0

type ScalingGroupInitParameters struct {

	// Default cooldown time in second, and default value is 300.
	// Default cooldown time in second, and default value is `300`.
	DefaultCooldown *float64 `json:"defaultCooldown,omitempty" tf:"default_cooldown,omitempty"`

	// Desired volume of CVM instances, which is between max_size and min_size.
	// Desired volume of CVM instances, which is between `max_size` and `min_size`.
	DesiredCapacity *float64 `json:"desiredCapacity,omitempty" tf:"desired_capacity,omitempty"`

	// List of application load balancers, which can't be specified with load_balancer_ids together.
	// List of application load balancers, which can't be specified with `load_balancer_ids` together.
	ForwardBalancerIds []ForwardBalancerIdsInitParameters `json:"forwardBalancerIds,omitempty" tf:"forward_balancer_ids,omitempty"`

	// ID list of traditional load balancers.
	// ID list of traditional load balancers.
	LoadBalancerIds []*string `json:"loadBalancerIds,omitempty" tf:"load_balancer_ids,omitempty"`

	// Maximum number of CVM instances. Valid value ranges: (0~2000).
	// Maximum number of CVM instances. Valid value ranges: (0~2000).
	MaxSize *float64 `json:"maxSize,omitempty" tf:"max_size,omitempty"`

	// Minimum number of CVM instances. Valid value ranges: (0~2000).
	// Minimum number of CVM instances. Valid value ranges: (0~2000).
	MinSize *float64 `json:"minSize,omitempty" tf:"min_size,omitempty"`

	// Multi zone or subnet strategy, Valid values: PRIORITY and EQUALITY.
	// Multi zone or subnet strategy, Valid values: PRIORITY and EQUALITY.
	MultiZoneSubnetPolicy *string `json:"multiZoneSubnetPolicy,omitempty" tf:"multi_zone_subnet_policy,omitempty"`

	// Specifies to which project the scaling group belongs.
	// Specifies to which project the scaling group belongs.
	ProjectID *float64 `json:"projectId,omitempty" tf:"project_id,omitempty"`

	// Enable unhealthy instance replacement. If set to true, AS will replace instances that are found unhealthy in the CLB health check.
	// Enable unhealthy instance replacement. If set to `true`, AS will replace instances that are found unhealthy in the CLB health check.
	ReplaceLoadBalancerUnhealthy *bool `json:"replaceLoadBalancerUnhealthy,omitempty" tf:"replace_load_balancer_unhealthy,omitempty"`

	// Enables unhealthy instance replacement. If set to true, AS will replace instances that are flagged as unhealthy by Cloud Monitor.
	// Enables unhealthy instance replacement. If set to `true`, AS will replace instances that are flagged as unhealthy by Cloud Monitor.
	ReplaceMonitorUnhealthy *bool `json:"replaceMonitorUnhealthy,omitempty" tf:"replace_monitor_unhealthy,omitempty"`

	// Available values for retry policies. Valid values: IMMEDIATE_RETRY and INCREMENTAL_INTERVALS.
	// Available values for retry policies. Valid values: IMMEDIATE_RETRY and INCREMENTAL_INTERVALS.
	RetryPolicy *string `json:"retryPolicy,omitempty" tf:"retry_policy,omitempty"`

	// Name of a scaling group.
	// Name of a scaling group.
	ScalingGroupName *string `json:"scalingGroupName,omitempty" tf:"scaling_group_name,omitempty"`

	// 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.
	// 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 *string `json:"scalingMode,omitempty" tf:"scaling_mode,omitempty"`

	// ID list of subnet, and for VPC it is required.
	// ID list of subnet, and for VPC it is required.
	SubnetIds []*string `json:"subnetIds,omitempty" tf:"subnet_ids,omitempty"`

	// Tags of a scaling group.
	// Tags of a scaling group.
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`

	// Available values for termination policies. Valid values: OLDEST_INSTANCE and NEWEST_INSTANCE.
	// Available values for termination policies. Valid values: OLDEST_INSTANCE and NEWEST_INSTANCE.
	TerminationPolicies []*string `json:"terminationPolicies,omitempty" tf:"termination_policies,omitempty"`

	// ID of VPC network.
	// ID of VPC network.
	VPCID *string `json:"vpcId,omitempty" tf:"vpc_id,omitempty"`

	// List of available zones, for Basic network it is required.
	// List of available zones, for Basic network it is required.
	Zones []*string `json:"zones,omitempty" tf:"zones,omitempty"`
}

func (*ScalingGroupInitParameters) DeepCopy added in v0.8.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScalingGroupInitParameters.

func (*ScalingGroupInitParameters) DeepCopyInto added in v0.8.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ScalingGroupList

type ScalingGroupList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []ScalingGroup `json:"items"`
}

ScalingGroupList contains a list of ScalingGroups

func (*ScalingGroupList) DeepCopy

func (in *ScalingGroupList) DeepCopy() *ScalingGroupList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScalingGroupList.

func (*ScalingGroupList) DeepCopyInto

func (in *ScalingGroupList) DeepCopyInto(out *ScalingGroupList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ScalingGroupList) DeepCopyObject

func (in *ScalingGroupList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*ScalingGroupList) GetItems

func (l *ScalingGroupList) GetItems() []resource.Managed

GetItems of this ScalingGroupList.

type ScalingGroupObservation

type ScalingGroupObservation struct {

	// An available ID for a launch configuration.
	// An available ID for a launch configuration.
	ConfigurationID *string `json:"configurationId,omitempty" tf:"configuration_id,omitempty"`

	// The time when the AS group was created.
	// The time when the AS group was created.
	CreateTime *string `json:"createTime,omitempty" tf:"create_time,omitempty"`

	// Default cooldown time in second, and default value is 300.
	// Default cooldown time in second, and default value is `300`.
	DefaultCooldown *float64 `json:"defaultCooldown,omitempty" tf:"default_cooldown,omitempty"`

	// Desired volume of CVM instances, which is between max_size and min_size.
	// Desired volume of CVM instances, which is between `max_size` and `min_size`.
	DesiredCapacity *float64 `json:"desiredCapacity,omitempty" tf:"desired_capacity,omitempty"`

	// List of application load balancers, which can't be specified with load_balancer_ids together.
	// List of application load balancers, which can't be specified with `load_balancer_ids` together.
	ForwardBalancerIds []ForwardBalancerIdsObservation `json:"forwardBalancerIds,omitempty" tf:"forward_balancer_ids,omitempty"`

	// ID of the resource.
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// Instance number of a scaling group.
	// Instance number of a scaling group.
	InstanceCount *float64 `json:"instanceCount,omitempty" tf:"instance_count,omitempty"`

	// ID list of traditional load balancers.
	// ID list of traditional load balancers.
	LoadBalancerIds []*string `json:"loadBalancerIds,omitempty" tf:"load_balancer_ids,omitempty"`

	// Maximum number of CVM instances. Valid value ranges: (0~2000).
	// Maximum number of CVM instances. Valid value ranges: (0~2000).
	MaxSize *float64 `json:"maxSize,omitempty" tf:"max_size,omitempty"`

	// Minimum number of CVM instances. Valid value ranges: (0~2000).
	// Minimum number of CVM instances. Valid value ranges: (0~2000).
	MinSize *float64 `json:"minSize,omitempty" tf:"min_size,omitempty"`

	// Multi zone or subnet strategy, Valid values: PRIORITY and EQUALITY.
	// Multi zone or subnet strategy, Valid values: PRIORITY and EQUALITY.
	MultiZoneSubnetPolicy *string `json:"multiZoneSubnetPolicy,omitempty" tf:"multi_zone_subnet_policy,omitempty"`

	// Specifies to which project the scaling group belongs.
	// Specifies to which project the scaling group belongs.
	ProjectID *float64 `json:"projectId,omitempty" tf:"project_id,omitempty"`

	// Enable unhealthy instance replacement. If set to true, AS will replace instances that are found unhealthy in the CLB health check.
	// Enable unhealthy instance replacement. If set to `true`, AS will replace instances that are found unhealthy in the CLB health check.
	ReplaceLoadBalancerUnhealthy *bool `json:"replaceLoadBalancerUnhealthy,omitempty" tf:"replace_load_balancer_unhealthy,omitempty"`

	// Enables unhealthy instance replacement. If set to true, AS will replace instances that are flagged as unhealthy by Cloud Monitor.
	// Enables unhealthy instance replacement. If set to `true`, AS will replace instances that are flagged as unhealthy by Cloud Monitor.
	ReplaceMonitorUnhealthy *bool `json:"replaceMonitorUnhealthy,omitempty" tf:"replace_monitor_unhealthy,omitempty"`

	// Available values for retry policies. Valid values: IMMEDIATE_RETRY and INCREMENTAL_INTERVALS.
	// Available values for retry policies. Valid values: IMMEDIATE_RETRY and INCREMENTAL_INTERVALS.
	RetryPolicy *string `json:"retryPolicy,omitempty" tf:"retry_policy,omitempty"`

	// Name of a scaling group.
	// Name of a scaling group.
	ScalingGroupName *string `json:"scalingGroupName,omitempty" tf:"scaling_group_name,omitempty"`

	// 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.
	// 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 *string `json:"scalingMode,omitempty" tf:"scaling_mode,omitempty"`

	// Current status of a scaling group.
	// Current status of a scaling group.
	Status *string `json:"status,omitempty" tf:"status,omitempty"`

	// ID list of subnet, and for VPC it is required.
	// ID list of subnet, and for VPC it is required.
	SubnetIds []*string `json:"subnetIds,omitempty" tf:"subnet_ids,omitempty"`

	// Tags of a scaling group.
	// Tags of a scaling group.
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`

	// Available values for termination policies. Valid values: OLDEST_INSTANCE and NEWEST_INSTANCE.
	// Available values for termination policies. Valid values: OLDEST_INSTANCE and NEWEST_INSTANCE.
	TerminationPolicies []*string `json:"terminationPolicies,omitempty" tf:"termination_policies,omitempty"`

	// ID of VPC network.
	// ID of VPC network.
	VPCID *string `json:"vpcId,omitempty" tf:"vpc_id,omitempty"`

	// List of available zones, for Basic network it is required.
	// List of available zones, for Basic network it is required.
	Zones []*string `json:"zones,omitempty" tf:"zones,omitempty"`
}

func (*ScalingGroupObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScalingGroupObservation.

func (*ScalingGroupObservation) DeepCopyInto

func (in *ScalingGroupObservation) DeepCopyInto(out *ScalingGroupObservation)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ScalingGroupParameters

type ScalingGroupParameters struct {

	// An available ID for a launch configuration.
	// An available ID for a launch configuration.
	// +crossplane:generate:reference:type=ScalingConfig
	// +kubebuilder:validation:Optional
	ConfigurationID *string `json:"configurationId,omitempty" tf:"configuration_id,omitempty"`

	// Reference to a ScalingConfig to populate configurationId.
	// +kubebuilder:validation:Optional
	ConfigurationIDRef *v1.Reference `json:"configurationIdRef,omitempty" tf:"-"`

	// Selector for a ScalingConfig to populate configurationId.
	// +kubebuilder:validation:Optional
	ConfigurationIDSelector *v1.Selector `json:"configurationIdSelector,omitempty" tf:"-"`

	// Default cooldown time in second, and default value is 300.
	// Default cooldown time in second, and default value is `300`.
	// +kubebuilder:validation:Optional
	DefaultCooldown *float64 `json:"defaultCooldown,omitempty" tf:"default_cooldown,omitempty"`

	// Desired volume of CVM instances, which is between max_size and min_size.
	// Desired volume of CVM instances, which is between `max_size` and `min_size`.
	// +kubebuilder:validation:Optional
	DesiredCapacity *float64 `json:"desiredCapacity,omitempty" tf:"desired_capacity,omitempty"`

	// List of application load balancers, which can't be specified with load_balancer_ids together.
	// List of application load balancers, which can't be specified with `load_balancer_ids` together.
	// +kubebuilder:validation:Optional
	ForwardBalancerIds []ForwardBalancerIdsParameters `json:"forwardBalancerIds,omitempty" tf:"forward_balancer_ids,omitempty"`

	// ID list of traditional load balancers.
	// ID list of traditional load balancers.
	// +kubebuilder:validation:Optional
	LoadBalancerIds []*string `json:"loadBalancerIds,omitempty" tf:"load_balancer_ids,omitempty"`

	// Maximum number of CVM instances. Valid value ranges: (0~2000).
	// Maximum number of CVM instances. Valid value ranges: (0~2000).
	// +kubebuilder:validation:Optional
	MaxSize *float64 `json:"maxSize,omitempty" tf:"max_size,omitempty"`

	// Minimum number of CVM instances. Valid value ranges: (0~2000).
	// Minimum number of CVM instances. Valid value ranges: (0~2000).
	// +kubebuilder:validation:Optional
	MinSize *float64 `json:"minSize,omitempty" tf:"min_size,omitempty"`

	// Multi zone or subnet strategy, Valid values: PRIORITY and EQUALITY.
	// Multi zone or subnet strategy, Valid values: PRIORITY and EQUALITY.
	// +kubebuilder:validation:Optional
	MultiZoneSubnetPolicy *string `json:"multiZoneSubnetPolicy,omitempty" tf:"multi_zone_subnet_policy,omitempty"`

	// Specifies to which project the scaling group belongs.
	// Specifies to which project the scaling group belongs.
	// +kubebuilder:validation:Optional
	ProjectID *float64 `json:"projectId,omitempty" tf:"project_id,omitempty"`

	// Enable unhealthy instance replacement. If set to true, AS will replace instances that are found unhealthy in the CLB health check.
	// Enable unhealthy instance replacement. If set to `true`, AS will replace instances that are found unhealthy in the CLB health check.
	// +kubebuilder:validation:Optional
	ReplaceLoadBalancerUnhealthy *bool `json:"replaceLoadBalancerUnhealthy,omitempty" tf:"replace_load_balancer_unhealthy,omitempty"`

	// Enables unhealthy instance replacement. If set to true, AS will replace instances that are flagged as unhealthy by Cloud Monitor.
	// Enables unhealthy instance replacement. If set to `true`, AS will replace instances that are flagged as unhealthy by Cloud Monitor.
	// +kubebuilder:validation:Optional
	ReplaceMonitorUnhealthy *bool `json:"replaceMonitorUnhealthy,omitempty" tf:"replace_monitor_unhealthy,omitempty"`

	// Available values for retry policies. Valid values: IMMEDIATE_RETRY and INCREMENTAL_INTERVALS.
	// Available values for retry policies. Valid values: IMMEDIATE_RETRY and INCREMENTAL_INTERVALS.
	// +kubebuilder:validation:Optional
	RetryPolicy *string `json:"retryPolicy,omitempty" tf:"retry_policy,omitempty"`

	// Name of a scaling group.
	// Name of a scaling group.
	// +kubebuilder:validation:Optional
	ScalingGroupName *string `json:"scalingGroupName,omitempty" tf:"scaling_group_name,omitempty"`

	// 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.
	// 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`.
	// +kubebuilder:validation:Optional
	ScalingMode *string `json:"scalingMode,omitempty" tf:"scaling_mode,omitempty"`

	// ID list of subnet, and for VPC it is required.
	// ID list of subnet, and for VPC it is required.
	// +kubebuilder:validation:Optional
	SubnetIds []*string `json:"subnetIds,omitempty" tf:"subnet_ids,omitempty"`

	// Tags of a scaling group.
	// Tags of a scaling group.
	// +kubebuilder:validation:Optional
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`

	// Available values for termination policies. Valid values: OLDEST_INSTANCE and NEWEST_INSTANCE.
	// Available values for termination policies. Valid values: OLDEST_INSTANCE and NEWEST_INSTANCE.
	// +kubebuilder:validation:Optional
	TerminationPolicies []*string `json:"terminationPolicies,omitempty" tf:"termination_policies,omitempty"`

	// ID of VPC network.
	// ID of VPC network.
	// +kubebuilder:validation:Optional
	VPCID *string `json:"vpcId,omitempty" tf:"vpc_id,omitempty"`

	// List of available zones, for Basic network it is required.
	// List of available zones, for Basic network it is required.
	// +kubebuilder:validation:Optional
	Zones []*string `json:"zones,omitempty" tf:"zones,omitempty"`
}

func (*ScalingGroupParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScalingGroupParameters.

func (*ScalingGroupParameters) DeepCopyInto

func (in *ScalingGroupParameters) DeepCopyInto(out *ScalingGroupParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ScalingGroupSpec

type ScalingGroupSpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     ScalingGroupParameters `json:"forProvider"`
	// THIS IS A BETA FIELD. It will be honored
	// unless the Management Policies feature flag is disabled.
	// InitProvider holds the same fields as ForProvider, with the exception
	// of Identifier and other resource reference fields. The fields that are
	// in InitProvider are merged into ForProvider when the resource is created.
	// The same fields are also added to the terraform ignore_changes hook, to
	// avoid updating them after creation. This is useful for fields that are
	// required on creation, but we do not desire to update them after creation,
	// for example because of an external controller is managing them, like an
	// autoscaler.
	InitProvider ScalingGroupInitParameters `json:"initProvider,omitempty"`
}

ScalingGroupSpec defines the desired state of ScalingGroup

func (*ScalingGroupSpec) DeepCopy

func (in *ScalingGroupSpec) DeepCopy() *ScalingGroupSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScalingGroupSpec.

func (*ScalingGroupSpec) DeepCopyInto

func (in *ScalingGroupSpec) DeepCopyInto(out *ScalingGroupSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ScalingGroupStatus

type ScalingGroupStatus struct {
	v1.ResourceStatus `json:",inline"`
	AtProvider        ScalingGroupObservation `json:"atProvider,omitempty"`
}

ScalingGroupStatus defines the observed state of ScalingGroup.

func (*ScalingGroupStatus) DeepCopy

func (in *ScalingGroupStatus) DeepCopy() *ScalingGroupStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScalingGroupStatus.

func (*ScalingGroupStatus) DeepCopyInto

func (in *ScalingGroupStatus) DeepCopyInto(out *ScalingGroupStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ScalingPolicy

type ScalingPolicy struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.adjustmentType) || (has(self.initProvider) && has(self.initProvider.adjustmentType))",message="spec.forProvider.adjustmentType is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.adjustmentValue) || (has(self.initProvider) && has(self.initProvider.adjustmentValue))",message="spec.forProvider.adjustmentValue is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.comparisonOperator) || (has(self.initProvider) && has(self.initProvider.comparisonOperator))",message="spec.forProvider.comparisonOperator is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.continuousTime) || (has(self.initProvider) && has(self.initProvider.continuousTime))",message="spec.forProvider.continuousTime is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.metricName) || (has(self.initProvider) && has(self.initProvider.metricName))",message="spec.forProvider.metricName is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.period) || (has(self.initProvider) && has(self.initProvider.period))",message="spec.forProvider.period is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.policyName) || (has(self.initProvider) && has(self.initProvider.policyName))",message="spec.forProvider.policyName is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.threshold) || (has(self.initProvider) && has(self.initProvider.threshold))",message="spec.forProvider.threshold is a required parameter"
	Spec   ScalingPolicySpec   `json:"spec"`
	Status ScalingPolicyStatus `json:"status,omitempty"`
}

ScalingPolicy is the Schema for the ScalingPolicys API. Provides a resource for an AS (Auto scaling) policy. +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:subresource:status +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,tencentcloud}

func (*ScalingPolicy) DeepCopy

func (in *ScalingPolicy) DeepCopy() *ScalingPolicy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScalingPolicy.

func (*ScalingPolicy) DeepCopyInto

func (in *ScalingPolicy) DeepCopyInto(out *ScalingPolicy)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ScalingPolicy) DeepCopyObject

func (in *ScalingPolicy) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*ScalingPolicy) GetCondition

func (mg *ScalingPolicy) GetCondition(ct xpv1.ConditionType) xpv1.Condition

GetCondition of this ScalingPolicy.

func (*ScalingPolicy) GetConnectionDetailsMapping

func (tr *ScalingPolicy) GetConnectionDetailsMapping() map[string]string

GetConnectionDetailsMapping for this ScalingPolicy

func (*ScalingPolicy) GetDeletionPolicy

func (mg *ScalingPolicy) GetDeletionPolicy() xpv1.DeletionPolicy

GetDeletionPolicy of this ScalingPolicy.

func (*ScalingPolicy) GetID

func (tr *ScalingPolicy) GetID() string

GetID returns ID of underlying Terraform resource of this ScalingPolicy

func (*ScalingPolicy) GetInitParameters added in v0.8.0

func (tr *ScalingPolicy) GetInitParameters() (map[string]any, error)

GetInitParameters of this ScalingPolicy

func (*ScalingPolicy) GetManagementPolicies added in v0.8.0

func (mg *ScalingPolicy) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this ScalingPolicy.

func (*ScalingPolicy) GetObservation

func (tr *ScalingPolicy) GetObservation() (map[string]any, error)

GetObservation of this ScalingPolicy

func (*ScalingPolicy) GetParameters

func (tr *ScalingPolicy) GetParameters() (map[string]any, error)

GetParameters of this ScalingPolicy

func (*ScalingPolicy) GetProviderConfigReference

func (mg *ScalingPolicy) GetProviderConfigReference() *xpv1.Reference

GetProviderConfigReference of this ScalingPolicy.

func (*ScalingPolicy) GetPublishConnectionDetailsTo

func (mg *ScalingPolicy) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo

GetPublishConnectionDetailsTo of this ScalingPolicy.

func (*ScalingPolicy) GetTerraformResourceType

func (mg *ScalingPolicy) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this ScalingPolicy

func (*ScalingPolicy) GetTerraformSchemaVersion

func (tr *ScalingPolicy) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*ScalingPolicy) GetWriteConnectionSecretToReference

func (mg *ScalingPolicy) GetWriteConnectionSecretToReference() *xpv1.SecretReference

GetWriteConnectionSecretToReference of this ScalingPolicy.

func (*ScalingPolicy) LateInitialize

func (tr *ScalingPolicy) LateInitialize(attrs []byte) (bool, error)

LateInitialize this ScalingPolicy using its observed tfState. returns True if there are any spec changes for the resource.

func (*ScalingPolicy) ResolveReferences

func (mg *ScalingPolicy) ResolveReferences(ctx context.Context, c client.Reader) error

ResolveReferences of this ScalingPolicy.

func (*ScalingPolicy) SetConditions

func (mg *ScalingPolicy) SetConditions(c ...xpv1.Condition)

SetConditions of this ScalingPolicy.

func (*ScalingPolicy) SetDeletionPolicy

func (mg *ScalingPolicy) SetDeletionPolicy(r xpv1.DeletionPolicy)

SetDeletionPolicy of this ScalingPolicy.

func (*ScalingPolicy) SetManagementPolicies added in v0.8.0

func (mg *ScalingPolicy) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this ScalingPolicy.

func (*ScalingPolicy) SetObservation

func (tr *ScalingPolicy) SetObservation(obs map[string]any) error

SetObservation for this ScalingPolicy

func (*ScalingPolicy) SetParameters

func (tr *ScalingPolicy) SetParameters(params map[string]any) error

SetParameters for this ScalingPolicy

func (*ScalingPolicy) SetProviderConfigReference

func (mg *ScalingPolicy) SetProviderConfigReference(r *xpv1.Reference)

SetProviderConfigReference of this ScalingPolicy.

func (*ScalingPolicy) SetPublishConnectionDetailsTo

func (mg *ScalingPolicy) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)

SetPublishConnectionDetailsTo of this ScalingPolicy.

func (*ScalingPolicy) SetWriteConnectionSecretToReference

func (mg *ScalingPolicy) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)

SetWriteConnectionSecretToReference of this ScalingPolicy.

type ScalingPolicyInitParameters added in v0.8.0

type ScalingPolicyInitParameters 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.
	// 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 *string `json:"adjustmentType,omitempty" tf:"adjustment_type,omitempty"`

	// 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.
	// 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 *float64 `json:"adjustmentValue,omitempty" tf:"adjustment_value,omitempty"`

	// Comparison operator. Valid values: GREATER_THAN, GREATER_THAN_OR_EQUAL_TO, LESS_THAN, LESS_THAN_OR_EQUAL_TO, EQUAL_TO and NOT_EQUAL_TO.
	// 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 *string `json:"comparisonOperator,omitempty" tf:"comparison_operator,omitempty"`

	// Retry times. Valid value ranges: (1~10).
	// Retry times. Valid value ranges: (1~10).
	ContinuousTime *float64 `json:"continuousTime,omitempty" tf:"continuous_time,omitempty"`

	// Cooldwon time in second. Default is 300.
	// Cooldwon time in second. Default is `30`0.
	Cooldown *float64 `json:"cooldown,omitempty" tf:"cooldown,omitempty"`

	// Name of an indicator. Valid values: CPU_UTILIZATION, MEM_UTILIZATION, LAN_TRAFFIC_OUT, LAN_TRAFFIC_IN, WAN_TRAFFIC_OUT and WAN_TRAFFIC_IN.
	// Name of an indicator. Valid values: `CPU_UTILIZATION`, `MEM_UTILIZATION`, `LAN_TRAFFIC_OUT`, `LAN_TRAFFIC_IN`, `WAN_TRAFFIC_OUT` and `WAN_TRAFFIC_IN`.
	MetricName *string `json:"metricName,omitempty" tf:"metric_name,omitempty"`

	// An ID group of users to be notified when an alarm is triggered.
	// An ID group of users to be notified when an alarm is triggered.
	NotificationUserGroupIds []*string `json:"notificationUserGroupIds,omitempty" tf:"notification_user_group_ids,omitempty"`

	// Time period in second. Valid values: 60 and 300.
	// Time period in second. Valid values: `60` and `300`.
	Period *float64 `json:"period,omitempty" tf:"period,omitempty"`

	// Name of a policy used to define a reaction when an alarm is triggered.
	// Name of a policy used to define a reaction when an alarm is triggered.
	PolicyName *string `json:"policyName,omitempty" tf:"policy_name,omitempty"`

	// Statistic types. Valid values: AVERAGE, MAXIMUM and MINIMUM. Default is AVERAGE.
	// Statistic types. Valid values: `AVERAGE`, `MAXIMUM` and `MINIMUM`. Default is `AVERAGE`.
	Statistic *string `json:"statistic,omitempty" tf:"statistic,omitempty"`

	// Alarm threshold.
	// Alarm threshold.
	Threshold *float64 `json:"threshold,omitempty" tf:"threshold,omitempty"`
}

func (*ScalingPolicyInitParameters) DeepCopy added in v0.8.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScalingPolicyInitParameters.

func (*ScalingPolicyInitParameters) DeepCopyInto added in v0.8.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ScalingPolicyList

type ScalingPolicyList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []ScalingPolicy `json:"items"`
}

ScalingPolicyList contains a list of ScalingPolicys

func (*ScalingPolicyList) DeepCopy

func (in *ScalingPolicyList) DeepCopy() *ScalingPolicyList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScalingPolicyList.

func (*ScalingPolicyList) DeepCopyInto

func (in *ScalingPolicyList) DeepCopyInto(out *ScalingPolicyList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ScalingPolicyList) DeepCopyObject

func (in *ScalingPolicyList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*ScalingPolicyList) GetItems

func (l *ScalingPolicyList) GetItems() []resource.Managed

GetItems of this ScalingPolicyList.

type ScalingPolicyObservation

type ScalingPolicyObservation 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.
	// 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 *string `json:"adjustmentType,omitempty" tf:"adjustment_type,omitempty"`

	// 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.
	// 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 *float64 `json:"adjustmentValue,omitempty" tf:"adjustment_value,omitempty"`

	// Comparison operator. Valid values: GREATER_THAN, GREATER_THAN_OR_EQUAL_TO, LESS_THAN, LESS_THAN_OR_EQUAL_TO, EQUAL_TO and NOT_EQUAL_TO.
	// 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 *string `json:"comparisonOperator,omitempty" tf:"comparison_operator,omitempty"`

	// Retry times. Valid value ranges: (1~10).
	// Retry times. Valid value ranges: (1~10).
	ContinuousTime *float64 `json:"continuousTime,omitempty" tf:"continuous_time,omitempty"`

	// Cooldwon time in second. Default is 300.
	// Cooldwon time in second. Default is `30`0.
	Cooldown *float64 `json:"cooldown,omitempty" tf:"cooldown,omitempty"`

	// ID of the resource.
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// Name of an indicator. Valid values: CPU_UTILIZATION, MEM_UTILIZATION, LAN_TRAFFIC_OUT, LAN_TRAFFIC_IN, WAN_TRAFFIC_OUT and WAN_TRAFFIC_IN.
	// Name of an indicator. Valid values: `CPU_UTILIZATION`, `MEM_UTILIZATION`, `LAN_TRAFFIC_OUT`, `LAN_TRAFFIC_IN`, `WAN_TRAFFIC_OUT` and `WAN_TRAFFIC_IN`.
	MetricName *string `json:"metricName,omitempty" tf:"metric_name,omitempty"`

	// An ID group of users to be notified when an alarm is triggered.
	// An ID group of users to be notified when an alarm is triggered.
	NotificationUserGroupIds []*string `json:"notificationUserGroupIds,omitempty" tf:"notification_user_group_ids,omitempty"`

	// Time period in second. Valid values: 60 and 300.
	// Time period in second. Valid values: `60` and `300`.
	Period *float64 `json:"period,omitempty" tf:"period,omitempty"`

	// Name of a policy used to define a reaction when an alarm is triggered.
	// Name of a policy used to define a reaction when an alarm is triggered.
	PolicyName *string `json:"policyName,omitempty" tf:"policy_name,omitempty"`

	// ID of a scaling group.
	// ID of a scaling group.
	ScalingGroupID *string `json:"scalingGroupId,omitempty" tf:"scaling_group_id,omitempty"`

	// Statistic types. Valid values: AVERAGE, MAXIMUM and MINIMUM. Default is AVERAGE.
	// Statistic types. Valid values: `AVERAGE`, `MAXIMUM` and `MINIMUM`. Default is `AVERAGE`.
	Statistic *string `json:"statistic,omitempty" tf:"statistic,omitempty"`

	// Alarm threshold.
	// Alarm threshold.
	Threshold *float64 `json:"threshold,omitempty" tf:"threshold,omitempty"`
}

func (*ScalingPolicyObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScalingPolicyObservation.

func (*ScalingPolicyObservation) DeepCopyInto

func (in *ScalingPolicyObservation) DeepCopyInto(out *ScalingPolicyObservation)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ScalingPolicyParameters

type ScalingPolicyParameters 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.
	// 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`.
	// +kubebuilder:validation:Optional
	AdjustmentType *string `json:"adjustmentType,omitempty" tf:"adjustment_type,omitempty"`

	// 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.
	// 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.
	// +kubebuilder:validation:Optional
	AdjustmentValue *float64 `json:"adjustmentValue,omitempty" tf:"adjustment_value,omitempty"`

	// Comparison operator. Valid values: GREATER_THAN, GREATER_THAN_OR_EQUAL_TO, LESS_THAN, LESS_THAN_OR_EQUAL_TO, EQUAL_TO and NOT_EQUAL_TO.
	// Comparison operator. Valid values: `GREATER_THAN`, `GREATER_THAN_OR_EQUAL_TO`, `LESS_THAN`, `LESS_THAN_OR_EQUAL_TO`, `EQUAL_TO` and `NOT_EQUAL_TO`.
	// +kubebuilder:validation:Optional
	ComparisonOperator *string `json:"comparisonOperator,omitempty" tf:"comparison_operator,omitempty"`

	// Retry times. Valid value ranges: (1~10).
	// Retry times. Valid value ranges: (1~10).
	// +kubebuilder:validation:Optional
	ContinuousTime *float64 `json:"continuousTime,omitempty" tf:"continuous_time,omitempty"`

	// Cooldwon time in second. Default is 300.
	// Cooldwon time in second. Default is `30`0.
	// +kubebuilder:validation:Optional
	Cooldown *float64 `json:"cooldown,omitempty" tf:"cooldown,omitempty"`

	// Name of an indicator. Valid values: CPU_UTILIZATION, MEM_UTILIZATION, LAN_TRAFFIC_OUT, LAN_TRAFFIC_IN, WAN_TRAFFIC_OUT and WAN_TRAFFIC_IN.
	// Name of an indicator. Valid values: `CPU_UTILIZATION`, `MEM_UTILIZATION`, `LAN_TRAFFIC_OUT`, `LAN_TRAFFIC_IN`, `WAN_TRAFFIC_OUT` and `WAN_TRAFFIC_IN`.
	// +kubebuilder:validation:Optional
	MetricName *string `json:"metricName,omitempty" tf:"metric_name,omitempty"`

	// An ID group of users to be notified when an alarm is triggered.
	// An ID group of users to be notified when an alarm is triggered.
	// +kubebuilder:validation:Optional
	NotificationUserGroupIds []*string `json:"notificationUserGroupIds,omitempty" tf:"notification_user_group_ids,omitempty"`

	// Time period in second. Valid values: 60 and 300.
	// Time period in second. Valid values: `60` and `300`.
	// +kubebuilder:validation:Optional
	Period *float64 `json:"period,omitempty" tf:"period,omitempty"`

	// Name of a policy used to define a reaction when an alarm is triggered.
	// Name of a policy used to define a reaction when an alarm is triggered.
	// +kubebuilder:validation:Optional
	PolicyName *string `json:"policyName,omitempty" tf:"policy_name,omitempty"`

	// ID of a scaling group.
	// ID of a scaling group.
	// +crossplane:generate:reference:type=ScalingGroup
	// +kubebuilder:validation:Optional
	ScalingGroupID *string `json:"scalingGroupId,omitempty" tf:"scaling_group_id,omitempty"`

	// Reference to a ScalingGroup to populate scalingGroupId.
	// +kubebuilder:validation:Optional
	ScalingGroupIDRef *v1.Reference `json:"scalingGroupIdRef,omitempty" tf:"-"`

	// Selector for a ScalingGroup to populate scalingGroupId.
	// +kubebuilder:validation:Optional
	ScalingGroupIDSelector *v1.Selector `json:"scalingGroupIdSelector,omitempty" tf:"-"`

	// Statistic types. Valid values: AVERAGE, MAXIMUM and MINIMUM. Default is AVERAGE.
	// Statistic types. Valid values: `AVERAGE`, `MAXIMUM` and `MINIMUM`. Default is `AVERAGE`.
	// +kubebuilder:validation:Optional
	Statistic *string `json:"statistic,omitempty" tf:"statistic,omitempty"`

	// Alarm threshold.
	// Alarm threshold.
	// +kubebuilder:validation:Optional
	Threshold *float64 `json:"threshold,omitempty" tf:"threshold,omitempty"`
}

func (*ScalingPolicyParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScalingPolicyParameters.

func (*ScalingPolicyParameters) DeepCopyInto

func (in *ScalingPolicyParameters) DeepCopyInto(out *ScalingPolicyParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ScalingPolicySpec

type ScalingPolicySpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     ScalingPolicyParameters `json:"forProvider"`
	// THIS IS A BETA FIELD. It will be honored
	// unless the Management Policies feature flag is disabled.
	// InitProvider holds the same fields as ForProvider, with the exception
	// of Identifier and other resource reference fields. The fields that are
	// in InitProvider are merged into ForProvider when the resource is created.
	// The same fields are also added to the terraform ignore_changes hook, to
	// avoid updating them after creation. This is useful for fields that are
	// required on creation, but we do not desire to update them after creation,
	// for example because of an external controller is managing them, like an
	// autoscaler.
	InitProvider ScalingPolicyInitParameters `json:"initProvider,omitempty"`
}

ScalingPolicySpec defines the desired state of ScalingPolicy

func (*ScalingPolicySpec) DeepCopy

func (in *ScalingPolicySpec) DeepCopy() *ScalingPolicySpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScalingPolicySpec.

func (*ScalingPolicySpec) DeepCopyInto

func (in *ScalingPolicySpec) DeepCopyInto(out *ScalingPolicySpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ScalingPolicyStatus

type ScalingPolicyStatus struct {
	v1.ResourceStatus `json:",inline"`
	AtProvider        ScalingPolicyObservation `json:"atProvider,omitempty"`
}

ScalingPolicyStatus defines the observed state of ScalingPolicy.

func (*ScalingPolicyStatus) DeepCopy

func (in *ScalingPolicyStatus) DeepCopy() *ScalingPolicyStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScalingPolicyStatus.

func (*ScalingPolicyStatus) DeepCopyInto

func (in *ScalingPolicyStatus) DeepCopyInto(out *ScalingPolicyStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Schedule

type Schedule struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.desiredCapacity) || (has(self.initProvider) && has(self.initProvider.desiredCapacity))",message="spec.forProvider.desiredCapacity is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.maxSize) || (has(self.initProvider) && has(self.initProvider.maxSize))",message="spec.forProvider.maxSize is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.minSize) || (has(self.initProvider) && has(self.initProvider.minSize))",message="spec.forProvider.minSize is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.scheduleActionName) || (has(self.initProvider) && has(self.initProvider.scheduleActionName))",message="spec.forProvider.scheduleActionName is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.startTime) || (has(self.initProvider) && has(self.initProvider.startTime))",message="spec.forProvider.startTime is a required parameter"
	Spec   ScheduleSpec   `json:"spec"`
	Status ScheduleStatus `json:"status,omitempty"`
}

Schedule is the Schema for the Schedules API. Provides a resource for an AS (Auto scaling) schedule. +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:subresource:status +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,tencentcloud}

func (*Schedule) DeepCopy

func (in *Schedule) DeepCopy() *Schedule

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Schedule.

func (*Schedule) DeepCopyInto

func (in *Schedule) DeepCopyInto(out *Schedule)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*Schedule) DeepCopyObject

func (in *Schedule) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*Schedule) GetCondition

func (mg *Schedule) GetCondition(ct xpv1.ConditionType) xpv1.Condition

GetCondition of this Schedule.

func (*Schedule) GetConnectionDetailsMapping

func (tr *Schedule) GetConnectionDetailsMapping() map[string]string

GetConnectionDetailsMapping for this Schedule

func (*Schedule) GetDeletionPolicy

func (mg *Schedule) GetDeletionPolicy() xpv1.DeletionPolicy

GetDeletionPolicy of this Schedule.

func (*Schedule) GetID

func (tr *Schedule) GetID() string

GetID returns ID of underlying Terraform resource of this Schedule

func (*Schedule) GetInitParameters added in v0.8.0

func (tr *Schedule) GetInitParameters() (map[string]any, error)

GetInitParameters of this Schedule

func (*Schedule) GetManagementPolicies added in v0.8.0

func (mg *Schedule) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this Schedule.

func (*Schedule) GetObservation

func (tr *Schedule) GetObservation() (map[string]any, error)

GetObservation of this Schedule

func (*Schedule) GetParameters

func (tr *Schedule) GetParameters() (map[string]any, error)

GetParameters of this Schedule

func (*Schedule) GetProviderConfigReference

func (mg *Schedule) GetProviderConfigReference() *xpv1.Reference

GetProviderConfigReference of this Schedule.

func (*Schedule) GetPublishConnectionDetailsTo

func (mg *Schedule) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo

GetPublishConnectionDetailsTo of this Schedule.

func (*Schedule) GetTerraformResourceType

func (mg *Schedule) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this Schedule

func (*Schedule) GetTerraformSchemaVersion

func (tr *Schedule) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*Schedule) GetWriteConnectionSecretToReference

func (mg *Schedule) GetWriteConnectionSecretToReference() *xpv1.SecretReference

GetWriteConnectionSecretToReference of this Schedule.

func (*Schedule) LateInitialize

func (tr *Schedule) LateInitialize(attrs []byte) (bool, error)

LateInitialize this Schedule using its observed tfState. returns True if there are any spec changes for the resource.

func (*Schedule) ResolveReferences

func (mg *Schedule) ResolveReferences(ctx context.Context, c client.Reader) error

ResolveReferences of this Schedule.

func (*Schedule) SetConditions

func (mg *Schedule) SetConditions(c ...xpv1.Condition)

SetConditions of this Schedule.

func (*Schedule) SetDeletionPolicy

func (mg *Schedule) SetDeletionPolicy(r xpv1.DeletionPolicy)

SetDeletionPolicy of this Schedule.

func (*Schedule) SetManagementPolicies added in v0.8.0

func (mg *Schedule) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this Schedule.

func (*Schedule) SetObservation

func (tr *Schedule) SetObservation(obs map[string]any) error

SetObservation for this Schedule

func (*Schedule) SetParameters

func (tr *Schedule) SetParameters(params map[string]any) error

SetParameters for this Schedule

func (*Schedule) SetProviderConfigReference

func (mg *Schedule) SetProviderConfigReference(r *xpv1.Reference)

SetProviderConfigReference of this Schedule.

func (*Schedule) SetPublishConnectionDetailsTo

func (mg *Schedule) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)

SetPublishConnectionDetailsTo of this Schedule.

func (*Schedule) SetWriteConnectionSecretToReference

func (mg *Schedule) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)

SetWriteConnectionSecretToReference of this Schedule.

type ScheduleInitParameters added in v0.8.0

type ScheduleInitParameters struct {

	// The desired number of CVM instances that should be running in the group.
	// The desired number of CVM instances that should be running in the group.
	DesiredCapacity *float64 `json:"desiredCapacity,omitempty" tf:"desired_capacity,omitempty"`

	// The time for this action to end, in "YYYY-MM-DDThh:mm:ss+08:00" format (UTC+8).
	// The time for this action to end, in "YYYY-MM-DDThh:mm:ss+08:00" format (UTC+8).
	EndTime *string `json:"endTime,omitempty" tf:"end_time,omitempty"`

	// The maximum size for the Auto Scaling group.
	// The maximum size for the Auto Scaling group.
	MaxSize *float64 `json:"maxSize,omitempty" tf:"max_size,omitempty"`

	// The minimum size for the Auto Scaling group.
	// The minimum size for the Auto Scaling group.
	MinSize *float64 `json:"minSize,omitempty" tf:"min_size,omitempty"`

	// 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 end_time together.
	// 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 end_time together.
	Recurrence *string `json:"recurrence,omitempty" tf:"recurrence,omitempty"`

	// The name of this scaling action.
	// The name of this scaling action.
	ScheduleActionName *string `json:"scheduleActionName,omitempty" tf:"schedule_action_name,omitempty"`

	// The time for this action to start, in "YYYY-MM-DDThh:mm:ss+08:00" format (UTC+8).
	// The time for this action to start, in "YYYY-MM-DDThh:mm:ss+08:00" format (UTC+8).
	StartTime *string `json:"startTime,omitempty" tf:"start_time,omitempty"`
}

func (*ScheduleInitParameters) DeepCopy added in v0.8.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScheduleInitParameters.

func (*ScheduleInitParameters) DeepCopyInto added in v0.8.0

func (in *ScheduleInitParameters) DeepCopyInto(out *ScheduleInitParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ScheduleList

type ScheduleList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []Schedule `json:"items"`
}

ScheduleList contains a list of Schedules

func (*ScheduleList) DeepCopy

func (in *ScheduleList) DeepCopy() *ScheduleList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScheduleList.

func (*ScheduleList) DeepCopyInto

func (in *ScheduleList) DeepCopyInto(out *ScheduleList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ScheduleList) DeepCopyObject

func (in *ScheduleList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*ScheduleList) GetItems

func (l *ScheduleList) GetItems() []resource.Managed

GetItems of this ScheduleList.

type ScheduleObservation

type ScheduleObservation struct {

	// The desired number of CVM instances that should be running in the group.
	// The desired number of CVM instances that should be running in the group.
	DesiredCapacity *float64 `json:"desiredCapacity,omitempty" tf:"desired_capacity,omitempty"`

	// The time for this action to end, in "YYYY-MM-DDThh:mm:ss+08:00" format (UTC+8).
	// The time for this action to end, in "YYYY-MM-DDThh:mm:ss+08:00" format (UTC+8).
	EndTime *string `json:"endTime,omitempty" tf:"end_time,omitempty"`

	// ID of the resource.
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// The maximum size for the Auto Scaling group.
	// The maximum size for the Auto Scaling group.
	MaxSize *float64 `json:"maxSize,omitempty" tf:"max_size,omitempty"`

	// The minimum size for the Auto Scaling group.
	// The minimum size for the Auto Scaling group.
	MinSize *float64 `json:"minSize,omitempty" tf:"min_size,omitempty"`

	// 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 end_time together.
	// 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 end_time together.
	Recurrence *string `json:"recurrence,omitempty" tf:"recurrence,omitempty"`

	// ID of a scaling group.
	// ID of a scaling group.
	ScalingGroupID *string `json:"scalingGroupId,omitempty" tf:"scaling_group_id,omitempty"`

	// The name of this scaling action.
	// The name of this scaling action.
	ScheduleActionName *string `json:"scheduleActionName,omitempty" tf:"schedule_action_name,omitempty"`

	// The time for this action to start, in "YYYY-MM-DDThh:mm:ss+08:00" format (UTC+8).
	// The time for this action to start, in "YYYY-MM-DDThh:mm:ss+08:00" format (UTC+8).
	StartTime *string `json:"startTime,omitempty" tf:"start_time,omitempty"`
}

func (*ScheduleObservation) DeepCopy

func (in *ScheduleObservation) DeepCopy() *ScheduleObservation

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScheduleObservation.

func (*ScheduleObservation) DeepCopyInto

func (in *ScheduleObservation) DeepCopyInto(out *ScheduleObservation)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ScheduleParameters

type ScheduleParameters struct {

	// The desired number of CVM instances that should be running in the group.
	// The desired number of CVM instances that should be running in the group.
	// +kubebuilder:validation:Optional
	DesiredCapacity *float64 `json:"desiredCapacity,omitempty" tf:"desired_capacity,omitempty"`

	// The time for this action to end, in "YYYY-MM-DDThh:mm:ss+08:00" format (UTC+8).
	// The time for this action to end, in "YYYY-MM-DDThh:mm:ss+08:00" format (UTC+8).
	// +kubebuilder:validation:Optional
	EndTime *string `json:"endTime,omitempty" tf:"end_time,omitempty"`

	// The maximum size for the Auto Scaling group.
	// The maximum size for the Auto Scaling group.
	// +kubebuilder:validation:Optional
	MaxSize *float64 `json:"maxSize,omitempty" tf:"max_size,omitempty"`

	// The minimum size for the Auto Scaling group.
	// The minimum size for the Auto Scaling group.
	// +kubebuilder:validation:Optional
	MinSize *float64 `json:"minSize,omitempty" tf:"min_size,omitempty"`

	// 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 end_time together.
	// 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 end_time together.
	// +kubebuilder:validation:Optional
	Recurrence *string `json:"recurrence,omitempty" tf:"recurrence,omitempty"`

	// ID of a scaling group.
	// ID of a scaling group.
	// +crossplane:generate:reference:type=ScalingGroup
	// +kubebuilder:validation:Optional
	ScalingGroupID *string `json:"scalingGroupId,omitempty" tf:"scaling_group_id,omitempty"`

	// Reference to a ScalingGroup to populate scalingGroupId.
	// +kubebuilder:validation:Optional
	ScalingGroupIDRef *v1.Reference `json:"scalingGroupIdRef,omitempty" tf:"-"`

	// Selector for a ScalingGroup to populate scalingGroupId.
	// +kubebuilder:validation:Optional
	ScalingGroupIDSelector *v1.Selector `json:"scalingGroupIdSelector,omitempty" tf:"-"`

	// The name of this scaling action.
	// The name of this scaling action.
	// +kubebuilder:validation:Optional
	ScheduleActionName *string `json:"scheduleActionName,omitempty" tf:"schedule_action_name,omitempty"`

	// The time for this action to start, in "YYYY-MM-DDThh:mm:ss+08:00" format (UTC+8).
	// The time for this action to start, in "YYYY-MM-DDThh:mm:ss+08:00" format (UTC+8).
	// +kubebuilder:validation:Optional
	StartTime *string `json:"startTime,omitempty" tf:"start_time,omitempty"`
}

func (*ScheduleParameters) DeepCopy

func (in *ScheduleParameters) DeepCopy() *ScheduleParameters

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScheduleParameters.

func (*ScheduleParameters) DeepCopyInto

func (in *ScheduleParameters) DeepCopyInto(out *ScheduleParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ScheduleSpec

type ScheduleSpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     ScheduleParameters `json:"forProvider"`
	// THIS IS A BETA FIELD. It will be honored
	// unless the Management Policies feature flag is disabled.
	// InitProvider holds the same fields as ForProvider, with the exception
	// of Identifier and other resource reference fields. The fields that are
	// in InitProvider are merged into ForProvider when the resource is created.
	// The same fields are also added to the terraform ignore_changes hook, to
	// avoid updating them after creation. This is useful for fields that are
	// required on creation, but we do not desire to update them after creation,
	// for example because of an external controller is managing them, like an
	// autoscaler.
	InitProvider ScheduleInitParameters `json:"initProvider,omitempty"`
}

ScheduleSpec defines the desired state of Schedule

func (*ScheduleSpec) DeepCopy

func (in *ScheduleSpec) DeepCopy() *ScheduleSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScheduleSpec.

func (*ScheduleSpec) DeepCopyInto

func (in *ScheduleSpec) DeepCopyInto(out *ScheduleSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ScheduleStatus

type ScheduleStatus struct {
	v1.ResourceStatus `json:",inline"`
	AtProvider        ScheduleObservation `json:"atProvider,omitempty"`
}

ScheduleStatus defines the observed state of Schedule.

func (*ScheduleStatus) DeepCopy

func (in *ScheduleStatus) DeepCopy() *ScheduleStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScheduleStatus.

func (*ScheduleStatus) DeepCopyInto

func (in *ScheduleStatus) DeepCopyInto(out *ScheduleStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TargetAttributeInitParameters added in v0.8.0

type TargetAttributeInitParameters struct {

	// Port number.
	// Port number.
	Port *float64 `json:"port,omitempty" tf:"port,omitempty"`

	// Weight.
	// Weight.
	Weight *float64 `json:"weight,omitempty" tf:"weight,omitempty"`
}

func (*TargetAttributeInitParameters) DeepCopy added in v0.8.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetAttributeInitParameters.

func (*TargetAttributeInitParameters) DeepCopyInto added in v0.8.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TargetAttributeObservation

type TargetAttributeObservation struct {

	// Port number.
	// Port number.
	Port *float64 `json:"port,omitempty" tf:"port,omitempty"`

	// Weight.
	// Weight.
	Weight *float64 `json:"weight,omitempty" tf:"weight,omitempty"`
}

func (*TargetAttributeObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetAttributeObservation.

func (*TargetAttributeObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TargetAttributeParameters

type TargetAttributeParameters struct {

	// Port number.
	// Port number.
	// +kubebuilder:validation:Optional
	Port *float64 `json:"port" tf:"port,omitempty"`

	// Weight.
	// Weight.
	// +kubebuilder:validation:Optional
	Weight *float64 `json:"weight" tf:"weight,omitempty"`
}

func (*TargetAttributeParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetAttributeParameters.

func (*TargetAttributeParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

Jump to

Keyboard shortcuts

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