v1beta1

package
v0.44.0-rc.1 Latest Latest
Warning

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

Go to latest
Published: Nov 2, 2023 License: Apache-2.0 Imports: 19 Imported by: 0

Documentation

Overview

+kubebuilder:object:generate=true +groupName=autoscaling.aws.upbound.io +versionName=v1beta1

Index

Constants

View Source
const (
	CRDGroup   = "autoscaling.aws.upbound.io"
	CRDVersion = "v1beta1"
)

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 (
	AutoscalingGroup_Kind             = "AutoscalingGroup"
	AutoscalingGroup_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: AutoscalingGroup_Kind}.String()
	AutoscalingGroup_KindAPIVersion   = AutoscalingGroup_Kind + "." + CRDGroupVersion.String()
	AutoscalingGroup_GroupVersionKind = CRDGroupVersion.WithKind(AutoscalingGroup_Kind)
)

Repository type metadata.

View Source
var (
	GroupTag_Kind             = "GroupTag"
	GroupTag_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: GroupTag_Kind}.String()
	GroupTag_KindAPIVersion   = GroupTag_Kind + "." + CRDGroupVersion.String()
	GroupTag_GroupVersionKind = CRDGroupVersion.WithKind(GroupTag_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 (
	LaunchConfiguration_Kind             = "LaunchConfiguration"
	LaunchConfiguration_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: LaunchConfiguration_Kind}.String()
	LaunchConfiguration_KindAPIVersion   = LaunchConfiguration_Kind + "." + CRDGroupVersion.String()
	LaunchConfiguration_GroupVersionKind = CRDGroupVersion.WithKind(LaunchConfiguration_Kind)
)

Repository type metadata.

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 (
	Policy_Kind             = "Policy"
	Policy_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: Policy_Kind}.String()
	Policy_KindAPIVersion   = Policy_Kind + "." + CRDGroupVersion.String()
	Policy_GroupVersionKind = CRDGroupVersion.WithKind(Policy_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 AcceleratorCountInitParameters added in v0.38.0

type AcceleratorCountInitParameters struct {

	// Maximum.
	Max *float64 `json:"max,omitempty" tf:"max,omitempty"`

	// Minimum.
	Min *float64 `json:"min,omitempty" tf:"min,omitempty"`
}

func (*AcceleratorCountInitParameters) DeepCopy added in v0.38.0

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

func (*AcceleratorCountInitParameters) DeepCopyInto added in v0.38.0

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

type AcceleratorCountObservation added in v0.29.0

type AcceleratorCountObservation struct {

	// Maximum.
	Max *float64 `json:"max,omitempty" tf:"max,omitempty"`

	// Minimum.
	Min *float64 `json:"min,omitempty" tf:"min,omitempty"`
}

func (*AcceleratorCountObservation) DeepCopy added in v0.29.0

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

func (*AcceleratorCountObservation) DeepCopyInto added in v0.29.0

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

type AcceleratorCountParameters added in v0.29.0

type AcceleratorCountParameters struct {

	// Maximum.
	// +kubebuilder:validation:Optional
	Max *float64 `json:"max,omitempty" tf:"max,omitempty"`

	// Minimum.
	// +kubebuilder:validation:Optional
	Min *float64 `json:"min,omitempty" tf:"min,omitempty"`
}

func (*AcceleratorCountParameters) DeepCopy added in v0.29.0

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

func (*AcceleratorCountParameters) DeepCopyInto added in v0.29.0

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

type AcceleratorTotalMemoryMibInitParameters added in v0.38.0

type AcceleratorTotalMemoryMibInitParameters struct {

	// Maximum.
	Max *float64 `json:"max,omitempty" tf:"max,omitempty"`

	// Minimum.
	Min *float64 `json:"min,omitempty" tf:"min,omitempty"`
}

func (*AcceleratorTotalMemoryMibInitParameters) DeepCopy added in v0.38.0

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

func (*AcceleratorTotalMemoryMibInitParameters) DeepCopyInto added in v0.38.0

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

type AcceleratorTotalMemoryMibObservation added in v0.29.0

type AcceleratorTotalMemoryMibObservation struct {

	// Maximum.
	Max *float64 `json:"max,omitempty" tf:"max,omitempty"`

	// Minimum.
	Min *float64 `json:"min,omitempty" tf:"min,omitempty"`
}

func (*AcceleratorTotalMemoryMibObservation) DeepCopy added in v0.29.0

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

func (*AcceleratorTotalMemoryMibObservation) DeepCopyInto added in v0.29.0

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

type AcceleratorTotalMemoryMibParameters added in v0.29.0

type AcceleratorTotalMemoryMibParameters struct {

	// Maximum.
	// +kubebuilder:validation:Optional
	Max *float64 `json:"max,omitempty" tf:"max,omitempty"`

	// Minimum.
	// +kubebuilder:validation:Optional
	Min *float64 `json:"min,omitempty" tf:"min,omitempty"`
}

func (*AcceleratorTotalMemoryMibParameters) DeepCopy added in v0.29.0

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

func (*AcceleratorTotalMemoryMibParameters) DeepCopyInto added in v0.29.0

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

type Attachment

type Attachment struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              AttachmentSpec   `json:"spec"`
	Status            AttachmentStatus `json:"status,omitempty"`
}

Attachment is the Schema for the Attachments API. Provides an AutoScaling Group Attachment resource. +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,aws}

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.38.0

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

GetInitParameters of this Attachment

func (*Attachment) GetManagementPolicies added in v0.38.0

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

GetManagementPolicies of this Attachment.

func (*Attachment) GetMergedParameters added in v0.44.0

func (tr *Attachment) GetMergedParameters(shouldMergeInitProvider bool) (map[string]any, error)

GetInitParameters 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.38.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.38.0

type AttachmentInitParameters struct {
}

func (*AttachmentInitParameters) DeepCopy added in v0.38.0

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

func (*AttachmentInitParameters) DeepCopyInto added in v0.38.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 {

	// ARN of an ALB Target Group.
	ALBTargetGroupArn *string `json:"albTargetGroupArn,omitempty" tf:"alb_target_group_arn,omitempty"`

	// Name of ASG to associate with the ELB.
	AutoscalingGroupName *string `json:"autoscalingGroupName,omitempty" tf:"autoscaling_group_name,omitempty"`

	// Name of the ELB.
	ELB *string `json:"elb,omitempty" tf:"elb,omitempty"`

	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// ARN of a load balancer target group.
	LBTargetGroupArn *string `json:"lbTargetGroupArn,omitempty" tf:"lb_target_group_arn,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 {

	// ARN of an ALB Target Group.
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/elbv2/v1beta1.LBTargetGroup
	// +crossplane:generate:reference:extractor=github.com/upbound/provider-aws/config/common.ARNExtractor()
	// +kubebuilder:validation:Optional
	ALBTargetGroupArn *string `json:"albTargetGroupArn,omitempty" tf:"alb_target_group_arn,omitempty"`

	// Reference to a LBTargetGroup in elbv2 to populate albTargetGroupArn.
	// +kubebuilder:validation:Optional
	ALBTargetGroupArnRef *v1.Reference `json:"albTargetGroupArnRef,omitempty" tf:"-"`

	// Selector for a LBTargetGroup in elbv2 to populate albTargetGroupArn.
	// +kubebuilder:validation:Optional
	ALBTargetGroupArnSelector *v1.Selector `json:"albTargetGroupArnSelector,omitempty" tf:"-"`

	// Name of ASG to associate with the ELB.
	// +crossplane:generate:reference:type=AutoscalingGroup
	// +kubebuilder:validation:Optional
	AutoscalingGroupName *string `json:"autoscalingGroupName,omitempty" tf:"autoscaling_group_name,omitempty"`

	// Reference to a AutoscalingGroup to populate autoscalingGroupName.
	// +kubebuilder:validation:Optional
	AutoscalingGroupNameRef *v1.Reference `json:"autoscalingGroupNameRef,omitempty" tf:"-"`

	// Selector for a AutoscalingGroup to populate autoscalingGroupName.
	// +kubebuilder:validation:Optional
	AutoscalingGroupNameSelector *v1.Selector `json:"autoscalingGroupNameSelector,omitempty" tf:"-"`

	// Name of the ELB.
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/elb/v1beta1.ELB
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID()
	// +kubebuilder:validation:Optional
	ELB *string `json:"elb,omitempty" tf:"elb,omitempty"`

	// Reference to a ELB in elb to populate elb.
	// +kubebuilder:validation:Optional
	ELBRef *v1.Reference `json:"elbRef,omitempty" tf:"-"`

	// Selector for a ELB in elb to populate elb.
	// +kubebuilder:validation:Optional
	ELBSelector *v1.Selector `json:"elbSelector,omitempty" tf:"-"`

	// ARN of a load balancer target group.
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/elbv2/v1beta1.LBTargetGroup
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true)
	// +kubebuilder:validation:Optional
	LBTargetGroupArn *string `json:"lbTargetGroupArn,omitempty" tf:"lb_target_group_arn,omitempty"`

	// Reference to a LBTargetGroup in elbv2 to populate lbTargetGroupArn.
	// +kubebuilder:validation:Optional
	LBTargetGroupArnRef *v1.Reference `json:"lbTargetGroupArnRef,omitempty" tf:"-"`

	// Selector for a LBTargetGroup in elbv2 to populate lbTargetGroupArn.
	// +kubebuilder:validation:Optional
	LBTargetGroupArnSelector *v1.Selector `json:"lbTargetGroupArnSelector,omitempty" tf:"-"`

	// Region is the region you'd like your resource to be created in.
	// +upjet:crd:field:TFTag=-
	// +kubebuilder:validation:Required
	Region *string `json:"region" 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 AutoscalingGroup

type AutoscalingGroup 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"
	Spec   AutoscalingGroupSpec   `json:"spec"`
	Status AutoscalingGroupStatus `json:"status,omitempty"`
}

AutoscalingGroup is the Schema for the AutoscalingGroups API. Provides an Auto Scaling Group resource. +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,aws}

func (*AutoscalingGroup) DeepCopy

func (in *AutoscalingGroup) DeepCopy() *AutoscalingGroup

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

func (*AutoscalingGroup) DeepCopyInto

func (in *AutoscalingGroup) DeepCopyInto(out *AutoscalingGroup)

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

func (*AutoscalingGroup) DeepCopyObject

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

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

func (*AutoscalingGroup) GetCondition

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

GetCondition of this AutoscalingGroup.

func (*AutoscalingGroup) GetConnectionDetailsMapping

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

GetConnectionDetailsMapping for this AutoscalingGroup

func (*AutoscalingGroup) GetDeletionPolicy

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

GetDeletionPolicy of this AutoscalingGroup.

func (*AutoscalingGroup) GetID

func (tr *AutoscalingGroup) GetID() string

GetID returns ID of underlying Terraform resource of this AutoscalingGroup

func (*AutoscalingGroup) GetInitParameters added in v0.38.0

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

GetInitParameters of this AutoscalingGroup

func (*AutoscalingGroup) GetManagementPolicies added in v0.38.0

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

GetManagementPolicies of this AutoscalingGroup.

func (*AutoscalingGroup) GetMergedParameters added in v0.44.0

func (tr *AutoscalingGroup) GetMergedParameters(shouldMergeInitProvider bool) (map[string]any, error)

GetInitParameters of this AutoscalingGroup

func (*AutoscalingGroup) GetObservation

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

GetObservation of this AutoscalingGroup

func (*AutoscalingGroup) GetParameters

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

GetParameters of this AutoscalingGroup

func (*AutoscalingGroup) GetProviderConfigReference

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

GetProviderConfigReference of this AutoscalingGroup.

func (*AutoscalingGroup) GetPublishConnectionDetailsTo

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

GetPublishConnectionDetailsTo of this AutoscalingGroup.

func (*AutoscalingGroup) GetTerraformResourceType

func (mg *AutoscalingGroup) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this AutoscalingGroup

func (*AutoscalingGroup) GetTerraformSchemaVersion

func (tr *AutoscalingGroup) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*AutoscalingGroup) GetWriteConnectionSecretToReference

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

GetWriteConnectionSecretToReference of this AutoscalingGroup.

func (*AutoscalingGroup) LateInitialize

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

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

func (*AutoscalingGroup) ResolveReferences

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

ResolveReferences of this AutoscalingGroup.

func (*AutoscalingGroup) SetConditions

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

SetConditions of this AutoscalingGroup.

func (*AutoscalingGroup) SetDeletionPolicy

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

SetDeletionPolicy of this AutoscalingGroup.

func (*AutoscalingGroup) SetManagementPolicies added in v0.38.0

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

SetManagementPolicies of this AutoscalingGroup.

func (*AutoscalingGroup) SetObservation

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

SetObservation for this AutoscalingGroup

func (*AutoscalingGroup) SetParameters

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

SetParameters for this AutoscalingGroup

func (*AutoscalingGroup) SetProviderConfigReference

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

SetProviderConfigReference of this AutoscalingGroup.

func (*AutoscalingGroup) SetPublishConnectionDetailsTo

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

SetPublishConnectionDetailsTo of this AutoscalingGroup.

func (*AutoscalingGroup) SetWriteConnectionSecretToReference

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

SetWriteConnectionSecretToReference of this AutoscalingGroup.

type AutoscalingGroupInitParameters added in v0.38.0

type AutoscalingGroupInitParameters struct {

	// List of one or more availability zones for the group. Used for EC2-Classic, attaching a network interface via id from a launch template and default subnets when not specified with vpc_zone_identifier argument. Conflicts with vpc_zone_identifier.
	AvailabilityZones []*string `json:"availabilityZones,omitempty" tf:"availability_zones,omitempty"`

	// Whether capacity rebalance is enabled. Otherwise, capacity rebalance is disabled.
	CapacityRebalance *bool `json:"capacityRebalance,omitempty" tf:"capacity_rebalance,omitempty"`

	// Reserved.
	Context *string `json:"context,omitempty" tf:"context,omitempty"`

	// Amount of time, in seconds, after a scaling activity completes before another scaling activity can start.
	DefaultCooldown *float64 `json:"defaultCooldown,omitempty" tf:"default_cooldown,omitempty"`

	// Amount of time, in seconds, until a newly launched instance can contribute to the Amazon CloudWatch metrics. This delay lets an instance finish initializing before Amazon EC2 Auto Scaling aggregates instance metrics, resulting in more reliable usage data. Set this value equal to the amount of time that it takes for resource consumption to become stable after an instance reaches the InService state. (See Set the default instance warmup for an Auto Scaling group)
	DefaultInstanceWarmup *float64 `json:"defaultInstanceWarmup,omitempty" tf:"default_instance_warmup,omitempty"`

	// Number of Amazon EC2 instances that
	// should be running in the group. (See also Waiting for
	// Capacity below.)
	DesiredCapacity *float64 `json:"desiredCapacity,omitempty" tf:"desired_capacity,omitempty"`

	// The unit of measurement for the value specified for desired_capacity. Supported for attribute-based instance type selection only. Valid values: "units", "vcpu", "memory-mib".
	DesiredCapacityType *string `json:"desiredCapacityType,omitempty" tf:"desired_capacity_type,omitempty"`

	// List of metrics to collect. The allowed values are defined by the underlying AWS API.
	EnabledMetrics []*string `json:"enabledMetrics,omitempty" tf:"enabled_metrics,omitempty"`

	// Allows deleting the Auto Scaling Group without waiting
	// for all instances in the pool to terminate.  You can force an Auto Scaling Group to delete
	// even if it's in the process of scaling a resource.  This bypasses that
	// behavior and potentially leaves resources dangling.
	ForceDelete *bool `json:"forceDelete,omitempty" tf:"force_delete,omitempty"`

	// If this block is configured, add a Warm Pool
	// to the specified Auto Scaling group. Defined below
	ForceDeleteWarmPool *bool `json:"forceDeleteWarmPool,omitempty" tf:"force_delete_warm_pool,omitempty"`

	// Time (in seconds) after instance comes into service before checking health.
	HealthCheckGracePeriod *float64 `json:"healthCheckGracePeriod,omitempty" tf:"health_check_grace_period,omitempty"`

	// "EC2" or "ELB". Controls how health checking is done.
	HealthCheckType *string `json:"healthCheckType,omitempty" tf:"health_check_type,omitempty"`

	// One or more
	// Lifecycle Hooks
	// to attach to the Auto Scaling Group before instances are launched. The
	// syntax is exactly the same as the separate
	// aws_autoscaling_lifecycle_hook
	// resource, without the autoscaling_group_name attribute. Please note that this will only work when creating
	// a new Auto Scaling Group. For all other use-cases, please use aws_autoscaling_lifecycle_hook resource.
	InitialLifecycleHook []InitialLifecycleHookInitParameters `json:"initialLifecycleHook,omitempty" tf:"initial_lifecycle_hook,omitempty"`

	// If this block is configured, start an
	// Instance Refresh
	// when this Auto Scaling Group is updated. Defined below.
	InstanceRefresh []InstanceRefreshInitParameters `json:"instanceRefresh,omitempty" tf:"instance_refresh,omitempty"`

	// Nested argument with Launch template specification to use to launch instances. See Launch Template below for more details.
	LaunchTemplate []LaunchTemplateInitParameters `json:"launchTemplate,omitempty" tf:"launch_template,omitempty"`

	// Maximum amount of time, in seconds, that an instance can be in service, values must be either equal to 0 or between 86400 and 31536000 seconds.
	MaxInstanceLifetime *float64 `json:"maxInstanceLifetime,omitempty" tf:"max_instance_lifetime,omitempty"`

	// Maximum size of the Auto Scaling Group.
	MaxSize *float64 `json:"maxSize,omitempty" tf:"max_size,omitempty"`

	// Granularity to associate with the metrics to collect. The only valid value is 1Minute. Default is 1Minute.
	MetricsGranularity *string `json:"metricsGranularity,omitempty" tf:"metrics_granularity,omitempty"`

	// Updates will not wait on ELB instance number changes.
	// (See also Waiting for Capacity below.)
	MinELBCapacity *float64 `json:"minElbCapacity,omitempty" tf:"min_elb_capacity,omitempty"`

	// Minimum size of the Auto Scaling Group.
	// (See also Waiting for Capacity below.)
	MinSize *float64 `json:"minSize,omitempty" tf:"min_size,omitempty"`

	// Configuration block containing settings to define launch targets for Auto Scaling groups. See Mixed Instances Policy below for more details.
	MixedInstancesPolicy []MixedInstancesPolicyInitParameters `json:"mixedInstancesPolicy,omitempty" tf:"mixed_instances_policy,omitempty"`

	// in protection
	// in the Amazon EC2 Auto Scaling User Guide.
	ProtectFromScaleIn *bool `json:"protectFromScaleIn,omitempty" tf:"protect_from_scale_in,omitempty"`

	// List of processes to suspend for the Auto Scaling Group. The allowed values are Launch, Terminate, HealthCheck, ReplaceUnhealthy, AZRebalance, AlarmNotification, ScheduledActions, AddToLoadBalancer, InstanceRefresh.
	// Note that if you suspend either the Launch or Terminate process types, it can prevent your Auto Scaling Group from functioning properly.
	SuspendedProcesses []*string `json:"suspendedProcesses,omitempty" tf:"suspended_processes,omitempty"`

	// Configuration block(s) containing resource tags. Conflicts with tags. See Tag below for more details.
	Tag []TagInitParameters `json:"tag,omitempty" tf:"tag,omitempty"`

	// Key-value map of resource tags.
	Tags []map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`

	// List of policies to decide how the instances in the Auto Scaling Group should be terminated. The allowed values are OldestInstance, NewestInstance, OldestLaunchConfiguration, ClosestToNextInstanceHour, OldestLaunchTemplate, AllocationStrategy, Default. Additionally, the ARN of a Lambda function can be specified for custom termination policies.
	TerminationPolicies []*string `json:"terminationPolicies,omitempty" tf:"termination_policies,omitempty"`

	// (See also Waiting
	// for Capacity below.
	WaitForCapacityTimeout *string `json:"waitForCapacityTimeout,omitempty" tf:"wait_for_capacity_timeout,omitempty"`

	// (Takes
	// precedence over min_elb_capacity behavior.)
	// (See also Waiting for Capacity below.)
	WaitForELBCapacity *float64 `json:"waitForElbCapacity,omitempty" tf:"wait_for_elb_capacity,omitempty"`

	// If this block is configured, add a Warm Pool
	// to the specified Auto Scaling group. Defined below
	WarmPool []WarmPoolInitParameters `json:"warmPool,omitempty" tf:"warm_pool,omitempty"`
}

func (*AutoscalingGroupInitParameters) DeepCopy added in v0.38.0

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

func (*AutoscalingGroupInitParameters) DeepCopyInto added in v0.38.0

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

type AutoscalingGroupList

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

AutoscalingGroupList contains a list of AutoscalingGroups

func (*AutoscalingGroupList) DeepCopy

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

func (*AutoscalingGroupList) DeepCopyInto

func (in *AutoscalingGroupList) DeepCopyInto(out *AutoscalingGroupList)

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

func (*AutoscalingGroupList) DeepCopyObject

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

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

func (*AutoscalingGroupList) GetItems

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

GetItems of this AutoscalingGroupList.

type AutoscalingGroupObservation

type AutoscalingGroupObservation struct {

	// ARN for this Auto Scaling Group
	Arn *string `json:"arn,omitempty" tf:"arn,omitempty"`

	// List of one or more availability zones for the group. Used for EC2-Classic, attaching a network interface via id from a launch template and default subnets when not specified with vpc_zone_identifier argument. Conflicts with vpc_zone_identifier.
	AvailabilityZones []*string `json:"availabilityZones,omitempty" tf:"availability_zones,omitempty"`

	// Whether capacity rebalance is enabled. Otherwise, capacity rebalance is disabled.
	CapacityRebalance *bool `json:"capacityRebalance,omitempty" tf:"capacity_rebalance,omitempty"`

	// Reserved.
	Context *string `json:"context,omitempty" tf:"context,omitempty"`

	// Amount of time, in seconds, after a scaling activity completes before another scaling activity can start.
	DefaultCooldown *float64 `json:"defaultCooldown,omitempty" tf:"default_cooldown,omitempty"`

	// Amount of time, in seconds, until a newly launched instance can contribute to the Amazon CloudWatch metrics. This delay lets an instance finish initializing before Amazon EC2 Auto Scaling aggregates instance metrics, resulting in more reliable usage data. Set this value equal to the amount of time that it takes for resource consumption to become stable after an instance reaches the InService state. (See Set the default instance warmup for an Auto Scaling group)
	DefaultInstanceWarmup *float64 `json:"defaultInstanceWarmup,omitempty" tf:"default_instance_warmup,omitempty"`

	// Number of Amazon EC2 instances that
	// should be running in the group. (See also Waiting for
	// Capacity below.)
	DesiredCapacity *float64 `json:"desiredCapacity,omitempty" tf:"desired_capacity,omitempty"`

	// The unit of measurement for the value specified for desired_capacity. Supported for attribute-based instance type selection only. Valid values: "units", "vcpu", "memory-mib".
	DesiredCapacityType *string `json:"desiredCapacityType,omitempty" tf:"desired_capacity_type,omitempty"`

	// List of metrics to collect. The allowed values are defined by the underlying AWS API.
	EnabledMetrics []*string `json:"enabledMetrics,omitempty" tf:"enabled_metrics,omitempty"`

	// Allows deleting the Auto Scaling Group without waiting
	// for all instances in the pool to terminate.  You can force an Auto Scaling Group to delete
	// even if it's in the process of scaling a resource.  This bypasses that
	// behavior and potentially leaves resources dangling.
	ForceDelete *bool `json:"forceDelete,omitempty" tf:"force_delete,omitempty"`

	// If this block is configured, add a Warm Pool
	// to the specified Auto Scaling group. Defined below
	ForceDeleteWarmPool *bool `json:"forceDeleteWarmPool,omitempty" tf:"force_delete_warm_pool,omitempty"`

	// Time (in seconds) after instance comes into service before checking health.
	HealthCheckGracePeriod *float64 `json:"healthCheckGracePeriod,omitempty" tf:"health_check_grace_period,omitempty"`

	// "EC2" or "ELB". Controls how health checking is done.
	HealthCheckType *string `json:"healthCheckType,omitempty" tf:"health_check_type,omitempty"`

	// Auto Scaling Group id.
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// One or more
	// Lifecycle Hooks
	// to attach to the Auto Scaling Group before instances are launched. The
	// syntax is exactly the same as the separate
	// aws_autoscaling_lifecycle_hook
	// resource, without the autoscaling_group_name attribute. Please note that this will only work when creating
	// a new Auto Scaling Group. For all other use-cases, please use aws_autoscaling_lifecycle_hook resource.
	InitialLifecycleHook []InitialLifecycleHookObservation `json:"initialLifecycleHook,omitempty" tf:"initial_lifecycle_hook,omitempty"`

	// If this block is configured, start an
	// Instance Refresh
	// when this Auto Scaling Group is updated. Defined below.
	InstanceRefresh []InstanceRefreshObservation `json:"instanceRefresh,omitempty" tf:"instance_refresh,omitempty"`

	// Name of the launch configuration to use.
	LaunchConfiguration *string `json:"launchConfiguration,omitempty" tf:"launch_configuration,omitempty"`

	// Nested argument with Launch template specification to use to launch instances. See Launch Template below for more details.
	LaunchTemplate []LaunchTemplateObservation `json:"launchTemplate,omitempty" tf:"launch_template,omitempty"`

	// List of elastic load balancer names to add to the autoscaling
	// group names. Only valid for classic load balancers. For ALBs, use target_group_arns instead.
	LoadBalancers []*string `json:"loadBalancers,omitempty" tf:"load_balancers,omitempty"`

	// Maximum amount of time, in seconds, that an instance can be in service, values must be either equal to 0 or between 86400 and 31536000 seconds.
	MaxInstanceLifetime *float64 `json:"maxInstanceLifetime,omitempty" tf:"max_instance_lifetime,omitempty"`

	// Maximum size of the Auto Scaling Group.
	MaxSize *float64 `json:"maxSize,omitempty" tf:"max_size,omitempty"`

	// Granularity to associate with the metrics to collect. The only valid value is 1Minute. Default is 1Minute.
	MetricsGranularity *string `json:"metricsGranularity,omitempty" tf:"metrics_granularity,omitempty"`

	// Updates will not wait on ELB instance number changes.
	// (See also Waiting for Capacity below.)
	MinELBCapacity *float64 `json:"minElbCapacity,omitempty" tf:"min_elb_capacity,omitempty"`

	// Minimum size of the Auto Scaling Group.
	// (See also Waiting for Capacity below.)
	MinSize *float64 `json:"minSize,omitempty" tf:"min_size,omitempty"`

	// Configuration block containing settings to define launch targets for Auto Scaling groups. See Mixed Instances Policy below for more details.
	MixedInstancesPolicy []MixedInstancesPolicyObservation `json:"mixedInstancesPolicy,omitempty" tf:"mixed_instances_policy,omitempty"`

	// Name of the placement group into which you'll launch your instances, if any.
	PlacementGroup *string `json:"placementGroup,omitempty" tf:"placement_group,omitempty"`

	// Predicted capacity of the group.
	PredictedCapacity *float64 `json:"predictedCapacity,omitempty" tf:"predicted_capacity,omitempty"`

	// in protection
	// in the Amazon EC2 Auto Scaling User Guide.
	ProtectFromScaleIn *bool `json:"protectFromScaleIn,omitempty" tf:"protect_from_scale_in,omitempty"`

	// linked role that the ASG will use to call other AWS services
	ServiceLinkedRoleArn *string `json:"serviceLinkedRoleArn,omitempty" tf:"service_linked_role_arn,omitempty"`

	// List of processes to suspend for the Auto Scaling Group. The allowed values are Launch, Terminate, HealthCheck, ReplaceUnhealthy, AZRebalance, AlarmNotification, ScheduledActions, AddToLoadBalancer, InstanceRefresh.
	// Note that if you suspend either the Launch or Terminate process types, it can prevent your Auto Scaling Group from functioning properly.
	SuspendedProcesses []*string `json:"suspendedProcesses,omitempty" tf:"suspended_processes,omitempty"`

	// Configuration block(s) containing resource tags. Conflicts with tags. See Tag below for more details.
	Tag []TagObservation `json:"tag,omitempty" tf:"tag,omitempty"`

	// Key-value map of resource tags.
	Tags []map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`

	// Set of aws_alb_target_group ARNs, for use with Application or Network Load Balancing.
	TargetGroupArns []*string `json:"targetGroupArns,omitempty" tf:"target_group_arns,omitempty"`

	// List of policies to decide how the instances in the Auto Scaling Group should be terminated. The allowed values are OldestInstance, NewestInstance, OldestLaunchConfiguration, ClosestToNextInstanceHour, OldestLaunchTemplate, AllocationStrategy, Default. Additionally, the ARN of a Lambda function can be specified for custom termination policies.
	TerminationPolicies []*string `json:"terminationPolicies,omitempty" tf:"termination_policies,omitempty"`

	// List of subnet IDs to launch resources in. Subnets automatically determine which availability zones the group will reside. Conflicts with availability_zones.
	VPCZoneIdentifier []*string `json:"vpcZoneIdentifier,omitempty" tf:"vpc_zone_identifier,omitempty"`

	// (See also Waiting
	// for Capacity below.
	WaitForCapacityTimeout *string `json:"waitForCapacityTimeout,omitempty" tf:"wait_for_capacity_timeout,omitempty"`

	// (Takes
	// precedence over min_elb_capacity behavior.)
	// (See also Waiting for Capacity below.)
	WaitForELBCapacity *float64 `json:"waitForElbCapacity,omitempty" tf:"wait_for_elb_capacity,omitempty"`

	// If this block is configured, add a Warm Pool
	// to the specified Auto Scaling group. Defined below
	WarmPool []WarmPoolObservation `json:"warmPool,omitempty" tf:"warm_pool,omitempty"`

	// Current size of the warm pool.
	WarmPoolSize *float64 `json:"warmPoolSize,omitempty" tf:"warm_pool_size,omitempty"`
}

func (*AutoscalingGroupObservation) DeepCopy

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

func (*AutoscalingGroupObservation) DeepCopyInto

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

type AutoscalingGroupParameters

type AutoscalingGroupParameters struct {

	// List of one or more availability zones for the group. Used for EC2-Classic, attaching a network interface via id from a launch template and default subnets when not specified with vpc_zone_identifier argument. Conflicts with vpc_zone_identifier.
	// +kubebuilder:validation:Optional
	AvailabilityZones []*string `json:"availabilityZones,omitempty" tf:"availability_zones,omitempty"`

	// Whether capacity rebalance is enabled. Otherwise, capacity rebalance is disabled.
	// +kubebuilder:validation:Optional
	CapacityRebalance *bool `json:"capacityRebalance,omitempty" tf:"capacity_rebalance,omitempty"`

	// Reserved.
	// +kubebuilder:validation:Optional
	Context *string `json:"context,omitempty" tf:"context,omitempty"`

	// Amount of time, in seconds, after a scaling activity completes before another scaling activity can start.
	// +kubebuilder:validation:Optional
	DefaultCooldown *float64 `json:"defaultCooldown,omitempty" tf:"default_cooldown,omitempty"`

	// Amount of time, in seconds, until a newly launched instance can contribute to the Amazon CloudWatch metrics. This delay lets an instance finish initializing before Amazon EC2 Auto Scaling aggregates instance metrics, resulting in more reliable usage data. Set this value equal to the amount of time that it takes for resource consumption to become stable after an instance reaches the InService state. (See Set the default instance warmup for an Auto Scaling group)
	// +kubebuilder:validation:Optional
	DefaultInstanceWarmup *float64 `json:"defaultInstanceWarmup,omitempty" tf:"default_instance_warmup,omitempty"`

	// Number of Amazon EC2 instances that
	// should be running in the group. (See also Waiting for
	// Capacity below.)
	// +kubebuilder:validation:Optional
	DesiredCapacity *float64 `json:"desiredCapacity,omitempty" tf:"desired_capacity,omitempty"`

	// The unit of measurement for the value specified for desired_capacity. Supported for attribute-based instance type selection only. Valid values: "units", "vcpu", "memory-mib".
	// +kubebuilder:validation:Optional
	DesiredCapacityType *string `json:"desiredCapacityType,omitempty" tf:"desired_capacity_type,omitempty"`

	// List of metrics to collect. The allowed values are defined by the underlying AWS API.
	// +kubebuilder:validation:Optional
	EnabledMetrics []*string `json:"enabledMetrics,omitempty" tf:"enabled_metrics,omitempty"`

	// Allows deleting the Auto Scaling Group without waiting
	// for all instances in the pool to terminate.  You can force an Auto Scaling Group to delete
	// even if it's in the process of scaling a resource.  This bypasses that
	// behavior and potentially leaves resources dangling.
	// +kubebuilder:validation:Optional
	ForceDelete *bool `json:"forceDelete,omitempty" tf:"force_delete,omitempty"`

	// If this block is configured, add a Warm Pool
	// to the specified Auto Scaling group. Defined below
	// +kubebuilder:validation:Optional
	ForceDeleteWarmPool *bool `json:"forceDeleteWarmPool,omitempty" tf:"force_delete_warm_pool,omitempty"`

	// Time (in seconds) after instance comes into service before checking health.
	// +kubebuilder:validation:Optional
	HealthCheckGracePeriod *float64 `json:"healthCheckGracePeriod,omitempty" tf:"health_check_grace_period,omitempty"`

	// "EC2" or "ELB". Controls how health checking is done.
	// +kubebuilder:validation:Optional
	HealthCheckType *string `json:"healthCheckType,omitempty" tf:"health_check_type,omitempty"`

	// One or more
	// Lifecycle Hooks
	// to attach to the Auto Scaling Group before instances are launched. The
	// syntax is exactly the same as the separate
	// aws_autoscaling_lifecycle_hook
	// resource, without the autoscaling_group_name attribute. Please note that this will only work when creating
	// a new Auto Scaling Group. For all other use-cases, please use aws_autoscaling_lifecycle_hook resource.
	// +kubebuilder:validation:Optional
	InitialLifecycleHook []InitialLifecycleHookParameters `json:"initialLifecycleHook,omitempty" tf:"initial_lifecycle_hook,omitempty"`

	// If this block is configured, start an
	// Instance Refresh
	// when this Auto Scaling Group is updated. Defined below.
	// +kubebuilder:validation:Optional
	InstanceRefresh []InstanceRefreshParameters `json:"instanceRefresh,omitempty" tf:"instance_refresh,omitempty"`

	// Name of the launch configuration to use.
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/autoscaling/v1beta1.LaunchConfiguration
	// +kubebuilder:validation:Optional
	LaunchConfiguration *string `json:"launchConfiguration,omitempty" tf:"launch_configuration,omitempty"`

	// Reference to a LaunchConfiguration in autoscaling to populate launchConfiguration.
	// +kubebuilder:validation:Optional
	LaunchConfigurationRef *v1.Reference `json:"launchConfigurationRef,omitempty" tf:"-"`

	// Selector for a LaunchConfiguration in autoscaling to populate launchConfiguration.
	// +kubebuilder:validation:Optional
	LaunchConfigurationSelector *v1.Selector `json:"launchConfigurationSelector,omitempty" tf:"-"`

	// Nested argument with Launch template specification to use to launch instances. See Launch Template below for more details.
	// +kubebuilder:validation:Optional
	LaunchTemplate []LaunchTemplateParameters `json:"launchTemplate,omitempty" tf:"launch_template,omitempty"`

	// Maximum amount of time, in seconds, that an instance can be in service, values must be either equal to 0 or between 86400 and 31536000 seconds.
	// +kubebuilder:validation:Optional
	MaxInstanceLifetime *float64 `json:"maxInstanceLifetime,omitempty" tf:"max_instance_lifetime,omitempty"`

	// Maximum size of the Auto Scaling Group.
	// +kubebuilder:validation:Optional
	MaxSize *float64 `json:"maxSize,omitempty" tf:"max_size,omitempty"`

	// Granularity to associate with the metrics to collect. The only valid value is 1Minute. Default is 1Minute.
	// +kubebuilder:validation:Optional
	MetricsGranularity *string `json:"metricsGranularity,omitempty" tf:"metrics_granularity,omitempty"`

	// Updates will not wait on ELB instance number changes.
	// (See also Waiting for Capacity below.)
	// +kubebuilder:validation:Optional
	MinELBCapacity *float64 `json:"minElbCapacity,omitempty" tf:"min_elb_capacity,omitempty"`

	// Minimum size of the Auto Scaling Group.
	// (See also Waiting for Capacity below.)
	// +kubebuilder:validation:Optional
	MinSize *float64 `json:"minSize,omitempty" tf:"min_size,omitempty"`

	// Configuration block containing settings to define launch targets for Auto Scaling groups. See Mixed Instances Policy below for more details.
	// +kubebuilder:validation:Optional
	MixedInstancesPolicy []MixedInstancesPolicyParameters `json:"mixedInstancesPolicy,omitempty" tf:"mixed_instances_policy,omitempty"`

	// Name of the placement group into which you'll launch your instances, if any.
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/ec2/v1beta1.PlacementGroup
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID()
	// +kubebuilder:validation:Optional
	PlacementGroup *string `json:"placementGroup,omitempty" tf:"placement_group,omitempty"`

	// Reference to a PlacementGroup in ec2 to populate placementGroup.
	// +kubebuilder:validation:Optional
	PlacementGroupRef *v1.Reference `json:"placementGroupRef,omitempty" tf:"-"`

	// Selector for a PlacementGroup in ec2 to populate placementGroup.
	// +kubebuilder:validation:Optional
	PlacementGroupSelector *v1.Selector `json:"placementGroupSelector,omitempty" tf:"-"`

	// in protection
	// in the Amazon EC2 Auto Scaling User Guide.
	// +kubebuilder:validation:Optional
	ProtectFromScaleIn *bool `json:"protectFromScaleIn,omitempty" tf:"protect_from_scale_in,omitempty"`

	// Region is the region you'd like your resource to be created in.
	// +upjet:crd:field:TFTag=-
	// +kubebuilder:validation:Required
	Region *string `json:"region" tf:"-"`

	// linked role that the ASG will use to call other AWS services
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/iam/v1beta1.Role
	// +crossplane:generate:reference:extractor=github.com/upbound/provider-aws/config/common.ARNExtractor()
	// +kubebuilder:validation:Optional
	ServiceLinkedRoleArn *string `json:"serviceLinkedRoleArn,omitempty" tf:"service_linked_role_arn,omitempty"`

	// Reference to a Role in iam to populate serviceLinkedRoleArn.
	// +kubebuilder:validation:Optional
	ServiceLinkedRoleArnRef *v1.Reference `json:"serviceLinkedRoleArnRef,omitempty" tf:"-"`

	// Selector for a Role in iam to populate serviceLinkedRoleArn.
	// +kubebuilder:validation:Optional
	ServiceLinkedRoleArnSelector *v1.Selector `json:"serviceLinkedRoleArnSelector,omitempty" tf:"-"`

	// List of processes to suspend for the Auto Scaling Group. The allowed values are Launch, Terminate, HealthCheck, ReplaceUnhealthy, AZRebalance, AlarmNotification, ScheduledActions, AddToLoadBalancer, InstanceRefresh.
	// Note that if you suspend either the Launch or Terminate process types, it can prevent your Auto Scaling Group from functioning properly.
	// +kubebuilder:validation:Optional
	SuspendedProcesses []*string `json:"suspendedProcesses,omitempty" tf:"suspended_processes,omitempty"`

	// Configuration block(s) containing resource tags. Conflicts with tags. See Tag below for more details.
	// +kubebuilder:validation:Optional
	Tag []TagParameters `json:"tag,omitempty" tf:"tag,omitempty"`

	// Key-value map of resource tags.
	// +kubebuilder:validation:Optional
	Tags []map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`

	// List of policies to decide how the instances in the Auto Scaling Group should be terminated. The allowed values are OldestInstance, NewestInstance, OldestLaunchConfiguration, ClosestToNextInstanceHour, OldestLaunchTemplate, AllocationStrategy, Default. Additionally, the ARN of a Lambda function can be specified for custom termination policies.
	// +kubebuilder:validation:Optional
	TerminationPolicies []*string `json:"terminationPolicies,omitempty" tf:"termination_policies,omitempty"`

	// List of subnet IDs to launch resources in. Subnets automatically determine which availability zones the group will reside. Conflicts with availability_zones.
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/ec2/v1beta1.Subnet
	// +kubebuilder:validation:Optional
	VPCZoneIdentifier []*string `json:"vpcZoneIdentifier,omitempty" tf:"vpc_zone_identifier,omitempty"`

	// References to Subnet in ec2 to populate vpcZoneIdentifier.
	// +kubebuilder:validation:Optional
	VPCZoneIdentifierRefs []v1.Reference `json:"vpcZoneIdentifierRefs,omitempty" tf:"-"`

	// Selector for a list of Subnet in ec2 to populate vpcZoneIdentifier.
	// +kubebuilder:validation:Optional
	VPCZoneIdentifierSelector *v1.Selector `json:"vpcZoneIdentifierSelector,omitempty" tf:"-"`

	// (See also Waiting
	// for Capacity below.
	// +kubebuilder:validation:Optional
	WaitForCapacityTimeout *string `json:"waitForCapacityTimeout,omitempty" tf:"wait_for_capacity_timeout,omitempty"`

	// (Takes
	// precedence over min_elb_capacity behavior.)
	// (See also Waiting for Capacity below.)
	// +kubebuilder:validation:Optional
	WaitForELBCapacity *float64 `json:"waitForElbCapacity,omitempty" tf:"wait_for_elb_capacity,omitempty"`

	// If this block is configured, add a Warm Pool
	// to the specified Auto Scaling group. Defined below
	// +kubebuilder:validation:Optional
	WarmPool []WarmPoolParameters `json:"warmPool,omitempty" tf:"warm_pool,omitempty"`
}

func (*AutoscalingGroupParameters) DeepCopy

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

func (*AutoscalingGroupParameters) DeepCopyInto

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

type AutoscalingGroupSpec

type AutoscalingGroupSpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     AutoscalingGroupParameters `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 AutoscalingGroupInitParameters `json:"initProvider,omitempty"`
}

AutoscalingGroupSpec defines the desired state of AutoscalingGroup

func (*AutoscalingGroupSpec) DeepCopy

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

func (*AutoscalingGroupSpec) DeepCopyInto

func (in *AutoscalingGroupSpec) DeepCopyInto(out *AutoscalingGroupSpec)

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

type AutoscalingGroupStatus

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

AutoscalingGroupStatus defines the observed state of AutoscalingGroup.

func (*AutoscalingGroupStatus) DeepCopy

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

func (*AutoscalingGroupStatus) DeepCopyInto

func (in *AutoscalingGroupStatus) DeepCopyInto(out *AutoscalingGroupStatus)

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

type BaselineEBSBandwidthMbpsInitParameters added in v0.38.0

type BaselineEBSBandwidthMbpsInitParameters struct {

	// Maximum.
	Max *float64 `json:"max,omitempty" tf:"max,omitempty"`

	// Minimum.
	Min *float64 `json:"min,omitempty" tf:"min,omitempty"`
}

func (*BaselineEBSBandwidthMbpsInitParameters) DeepCopy added in v0.38.0

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

func (*BaselineEBSBandwidthMbpsInitParameters) DeepCopyInto added in v0.38.0

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

type BaselineEBSBandwidthMbpsObservation added in v0.29.0

type BaselineEBSBandwidthMbpsObservation struct {

	// Maximum.
	Max *float64 `json:"max,omitempty" tf:"max,omitempty"`

	// Minimum.
	Min *float64 `json:"min,omitempty" tf:"min,omitempty"`
}

func (*BaselineEBSBandwidthMbpsObservation) DeepCopy added in v0.29.0

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

func (*BaselineEBSBandwidthMbpsObservation) DeepCopyInto added in v0.29.0

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

type BaselineEBSBandwidthMbpsParameters added in v0.29.0

type BaselineEBSBandwidthMbpsParameters struct {

	// Maximum.
	// +kubebuilder:validation:Optional
	Max *float64 `json:"max,omitempty" tf:"max,omitempty"`

	// Minimum.
	// +kubebuilder:validation:Optional
	Min *float64 `json:"min,omitempty" tf:"min,omitempty"`
}

func (*BaselineEBSBandwidthMbpsParameters) DeepCopy added in v0.29.0

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

func (*BaselineEBSBandwidthMbpsParameters) DeepCopyInto added in v0.29.0

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

type CustomizedCapacityMetricSpecificationInitParameters added in v0.38.0

type CustomizedCapacityMetricSpecificationInitParameters struct {

	// List of up to 10 structures that defines custom capacity metric in predictive scaling policy
	MetricDataQueries []MetricDataQueriesInitParameters `json:"metricDataQueries,omitempty" tf:"metric_data_queries,omitempty"`
}

func (*CustomizedCapacityMetricSpecificationInitParameters) DeepCopy added in v0.38.0

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

func (*CustomizedCapacityMetricSpecificationInitParameters) DeepCopyInto added in v0.38.0

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

type CustomizedCapacityMetricSpecificationObservation added in v0.23.0

type CustomizedCapacityMetricSpecificationObservation struct {

	// List of up to 10 structures that defines custom capacity metric in predictive scaling policy
	MetricDataQueries []MetricDataQueriesObservation `json:"metricDataQueries,omitempty" tf:"metric_data_queries,omitempty"`
}

func (*CustomizedCapacityMetricSpecificationObservation) DeepCopy added in v0.23.0

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

func (*CustomizedCapacityMetricSpecificationObservation) DeepCopyInto added in v0.23.0

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

type CustomizedCapacityMetricSpecificationParameters added in v0.23.0

type CustomizedCapacityMetricSpecificationParameters struct {

	// List of up to 10 structures that defines custom capacity metric in predictive scaling policy
	// +kubebuilder:validation:Optional
	MetricDataQueries []MetricDataQueriesParameters `json:"metricDataQueries" tf:"metric_data_queries,omitempty"`
}

func (*CustomizedCapacityMetricSpecificationParameters) DeepCopy added in v0.23.0

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

func (*CustomizedCapacityMetricSpecificationParameters) DeepCopyInto added in v0.23.0

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

type CustomizedLoadMetricSpecificationInitParameters added in v0.38.0

type CustomizedLoadMetricSpecificationInitParameters struct {

	// List of up to 10 structures that defines custom load metric in predictive scaling policy
	MetricDataQueries []CustomizedLoadMetricSpecificationMetricDataQueriesInitParameters `json:"metricDataQueries,omitempty" tf:"metric_data_queries,omitempty"`
}

func (*CustomizedLoadMetricSpecificationInitParameters) DeepCopy added in v0.38.0

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

func (*CustomizedLoadMetricSpecificationInitParameters) DeepCopyInto added in v0.38.0

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

type CustomizedLoadMetricSpecificationMetricDataQueriesInitParameters added in v0.38.0

type CustomizedLoadMetricSpecificationMetricDataQueriesInitParameters struct {

	// Math expression used on the returned metric. You must specify either expression or metric_stat, but not both.
	Expression *string `json:"expression,omitempty" tf:"expression,omitempty"`

	// Short name for the metric used in predictive scaling policy.
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// Human-readable label for this metric or expression.
	Label *string `json:"label,omitempty" tf:"label,omitempty"`

	// Structure that defines CloudWatch metric to be used in predictive scaling policy. You must specify either expression or metric_stat, but not both.
	MetricStat []MetricDataQueriesMetricStatInitParameters `json:"metricStat,omitempty" tf:"metric_stat,omitempty"`

	// Boolean that indicates whether to return the timestamps and raw data values of this metric, the default is true
	ReturnData *bool `json:"returnData,omitempty" tf:"return_data,omitempty"`
}

func (*CustomizedLoadMetricSpecificationMetricDataQueriesInitParameters) DeepCopy added in v0.38.0

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

func (*CustomizedLoadMetricSpecificationMetricDataQueriesInitParameters) DeepCopyInto added in v0.38.0

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

type CustomizedLoadMetricSpecificationMetricDataQueriesObservation added in v0.23.0

type CustomizedLoadMetricSpecificationMetricDataQueriesObservation struct {

	// Math expression used on the returned metric. You must specify either expression or metric_stat, but not both.
	Expression *string `json:"expression,omitempty" tf:"expression,omitempty"`

	// Short name for the metric used in predictive scaling policy.
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// Human-readable label for this metric or expression.
	Label *string `json:"label,omitempty" tf:"label,omitempty"`

	// Structure that defines CloudWatch metric to be used in predictive scaling policy. You must specify either expression or metric_stat, but not both.
	MetricStat []MetricDataQueriesMetricStatObservation `json:"metricStat,omitempty" tf:"metric_stat,omitempty"`

	// Boolean that indicates whether to return the timestamps and raw data values of this metric, the default is true
	ReturnData *bool `json:"returnData,omitempty" tf:"return_data,omitempty"`
}

func (*CustomizedLoadMetricSpecificationMetricDataQueriesObservation) DeepCopy added in v0.23.0

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

func (*CustomizedLoadMetricSpecificationMetricDataQueriesObservation) DeepCopyInto added in v0.23.0

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

type CustomizedLoadMetricSpecificationMetricDataQueriesParameters added in v0.23.0

type CustomizedLoadMetricSpecificationMetricDataQueriesParameters struct {

	// Math expression used on the returned metric. You must specify either expression or metric_stat, but not both.
	// +kubebuilder:validation:Optional
	Expression *string `json:"expression,omitempty" tf:"expression,omitempty"`

	// Short name for the metric used in predictive scaling policy.
	// +kubebuilder:validation:Optional
	ID *string `json:"id" tf:"id,omitempty"`

	// Human-readable label for this metric or expression.
	// +kubebuilder:validation:Optional
	Label *string `json:"label,omitempty" tf:"label,omitempty"`

	// Structure that defines CloudWatch metric to be used in predictive scaling policy. You must specify either expression or metric_stat, but not both.
	// +kubebuilder:validation:Optional
	MetricStat []MetricDataQueriesMetricStatParameters `json:"metricStat,omitempty" tf:"metric_stat,omitempty"`

	// Boolean that indicates whether to return the timestamps and raw data values of this metric, the default is true
	// +kubebuilder:validation:Optional
	ReturnData *bool `json:"returnData,omitempty" tf:"return_data,omitempty"`
}

func (*CustomizedLoadMetricSpecificationMetricDataQueriesParameters) DeepCopy added in v0.23.0

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

func (*CustomizedLoadMetricSpecificationMetricDataQueriesParameters) DeepCopyInto added in v0.23.0

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

type CustomizedLoadMetricSpecificationObservation added in v0.23.0

type CustomizedLoadMetricSpecificationObservation struct {

	// List of up to 10 structures that defines custom load metric in predictive scaling policy
	MetricDataQueries []CustomizedLoadMetricSpecificationMetricDataQueriesObservation `json:"metricDataQueries,omitempty" tf:"metric_data_queries,omitempty"`
}

func (*CustomizedLoadMetricSpecificationObservation) DeepCopy added in v0.23.0

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

func (*CustomizedLoadMetricSpecificationObservation) DeepCopyInto added in v0.23.0

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

type CustomizedLoadMetricSpecificationParameters added in v0.23.0

type CustomizedLoadMetricSpecificationParameters struct {

	// List of up to 10 structures that defines custom load metric in predictive scaling policy
	// +kubebuilder:validation:Optional
	MetricDataQueries []CustomizedLoadMetricSpecificationMetricDataQueriesParameters `json:"metricDataQueries" tf:"metric_data_queries,omitempty"`
}

func (*CustomizedLoadMetricSpecificationParameters) DeepCopy added in v0.23.0

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

func (*CustomizedLoadMetricSpecificationParameters) DeepCopyInto added in v0.23.0

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

type CustomizedMetricSpecificationInitParameters added in v0.38.0

type CustomizedMetricSpecificationInitParameters struct {

	// Dimensions of the metric.
	MetricDimension []MetricDimensionInitParameters `json:"metricDimension,omitempty" tf:"metric_dimension,omitempty"`

	// Name of the metric.
	MetricName *string `json:"metricName,omitempty" tf:"metric_name,omitempty"`

	// Metrics to include, as a metric data query.
	Metrics []MetricsInitParameters `json:"metrics,omitempty" tf:"metrics,omitempty"`

	// Namespace of the metric.
	Namespace *string `json:"namespace,omitempty" tf:"namespace,omitempty"`

	// Statistic of the metric.
	Statistic *string `json:"statistic,omitempty" tf:"statistic,omitempty"`

	// Unit of the metric.
	Unit *string `json:"unit,omitempty" tf:"unit,omitempty"`
}

func (*CustomizedMetricSpecificationInitParameters) DeepCopy added in v0.38.0

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

func (*CustomizedMetricSpecificationInitParameters) DeepCopyInto added in v0.38.0

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

type CustomizedMetricSpecificationObservation added in v0.23.0

type CustomizedMetricSpecificationObservation struct {

	// Dimensions of the metric.
	MetricDimension []MetricDimensionObservation `json:"metricDimension,omitempty" tf:"metric_dimension,omitempty"`

	// Name of the metric.
	MetricName *string `json:"metricName,omitempty" tf:"metric_name,omitempty"`

	// Metrics to include, as a metric data query.
	Metrics []MetricsObservation `json:"metrics,omitempty" tf:"metrics,omitempty"`

	// Namespace of the metric.
	Namespace *string `json:"namespace,omitempty" tf:"namespace,omitempty"`

	// Statistic of the metric.
	Statistic *string `json:"statistic,omitempty" tf:"statistic,omitempty"`

	// Unit of the metric.
	Unit *string `json:"unit,omitempty" tf:"unit,omitempty"`
}

func (*CustomizedMetricSpecificationObservation) DeepCopy added in v0.23.0

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

func (*CustomizedMetricSpecificationObservation) DeepCopyInto added in v0.23.0

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

type CustomizedMetricSpecificationParameters added in v0.23.0

type CustomizedMetricSpecificationParameters struct {

	// Dimensions of the metric.
	// +kubebuilder:validation:Optional
	MetricDimension []MetricDimensionParameters `json:"metricDimension,omitempty" tf:"metric_dimension,omitempty"`

	// Name of the metric.
	// +kubebuilder:validation:Optional
	MetricName *string `json:"metricName,omitempty" tf:"metric_name,omitempty"`

	// Metrics to include, as a metric data query.
	// +kubebuilder:validation:Optional
	Metrics []MetricsParameters `json:"metrics,omitempty" tf:"metrics,omitempty"`

	// Namespace of the metric.
	// +kubebuilder:validation:Optional
	Namespace *string `json:"namespace,omitempty" tf:"namespace,omitempty"`

	// Statistic of the metric.
	// +kubebuilder:validation:Optional
	Statistic *string `json:"statistic,omitempty" tf:"statistic,omitempty"`

	// Unit of the metric.
	// +kubebuilder:validation:Optional
	Unit *string `json:"unit,omitempty" tf:"unit,omitempty"`
}

func (*CustomizedMetricSpecificationParameters) DeepCopy added in v0.23.0

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

func (*CustomizedMetricSpecificationParameters) DeepCopyInto added in v0.23.0

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

type CustomizedScalingMetricSpecificationInitParameters added in v0.38.0

type CustomizedScalingMetricSpecificationInitParameters struct {

	// List of up to 10 structures that defines custom scaling metric in predictive scaling policy
	MetricDataQueries []CustomizedScalingMetricSpecificationMetricDataQueriesInitParameters `json:"metricDataQueries,omitempty" tf:"metric_data_queries,omitempty"`
}

func (*CustomizedScalingMetricSpecificationInitParameters) DeepCopy added in v0.38.0

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

func (*CustomizedScalingMetricSpecificationInitParameters) DeepCopyInto added in v0.38.0

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

type CustomizedScalingMetricSpecificationMetricDataQueriesInitParameters added in v0.38.0

type CustomizedScalingMetricSpecificationMetricDataQueriesInitParameters struct {

	// Math expression used on the returned metric. You must specify either expression or metric_stat, but not both.
	Expression *string `json:"expression,omitempty" tf:"expression,omitempty"`

	// Short name for the metric used in predictive scaling policy.
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// Human-readable label for this metric or expression.
	Label *string `json:"label,omitempty" tf:"label,omitempty"`

	// Structure that defines CloudWatch metric to be used in predictive scaling policy. You must specify either expression or metric_stat, but not both.
	MetricStat []CustomizedScalingMetricSpecificationMetricDataQueriesMetricStatInitParameters `json:"metricStat,omitempty" tf:"metric_stat,omitempty"`

	// Boolean that indicates whether to return the timestamps and raw data values of this metric, the default is true
	ReturnData *bool `json:"returnData,omitempty" tf:"return_data,omitempty"`
}

func (*CustomizedScalingMetricSpecificationMetricDataQueriesInitParameters) DeepCopy added in v0.38.0

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

func (*CustomizedScalingMetricSpecificationMetricDataQueriesInitParameters) DeepCopyInto added in v0.38.0

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

type CustomizedScalingMetricSpecificationMetricDataQueriesMetricStatInitParameters added in v0.38.0

type CustomizedScalingMetricSpecificationMetricDataQueriesMetricStatInitParameters struct {

	// Structure that defines the CloudWatch metric to return, including the metric name, namespace, and dimensions.
	Metric []MetricDataQueriesMetricStatMetricInitParameters `json:"metric,omitempty" tf:"metric,omitempty"`

	// Statistic of the metrics to return.
	Stat *string `json:"stat,omitempty" tf:"stat,omitempty"`

	// Unit of the metric.
	Unit *string `json:"unit,omitempty" tf:"unit,omitempty"`
}

func (*CustomizedScalingMetricSpecificationMetricDataQueriesMetricStatInitParameters) DeepCopy added in v0.38.0

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

func (*CustomizedScalingMetricSpecificationMetricDataQueriesMetricStatInitParameters) DeepCopyInto added in v0.38.0

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

type CustomizedScalingMetricSpecificationMetricDataQueriesMetricStatObservation added in v0.23.0

type CustomizedScalingMetricSpecificationMetricDataQueriesMetricStatObservation struct {

	// Structure that defines the CloudWatch metric to return, including the metric name, namespace, and dimensions.
	Metric []MetricDataQueriesMetricStatMetricObservation `json:"metric,omitempty" tf:"metric,omitempty"`

	// Statistic of the metrics to return.
	Stat *string `json:"stat,omitempty" tf:"stat,omitempty"`

	// Unit of the metric.
	Unit *string `json:"unit,omitempty" tf:"unit,omitempty"`
}

func (*CustomizedScalingMetricSpecificationMetricDataQueriesMetricStatObservation) DeepCopy added in v0.23.0

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

func (*CustomizedScalingMetricSpecificationMetricDataQueriesMetricStatObservation) DeepCopyInto added in v0.23.0

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

type CustomizedScalingMetricSpecificationMetricDataQueriesMetricStatParameters added in v0.23.0

type CustomizedScalingMetricSpecificationMetricDataQueriesMetricStatParameters struct {

	// Structure that defines the CloudWatch metric to return, including the metric name, namespace, and dimensions.
	// +kubebuilder:validation:Optional
	Metric []MetricDataQueriesMetricStatMetricParameters `json:"metric" tf:"metric,omitempty"`

	// Statistic of the metrics to return.
	// +kubebuilder:validation:Optional
	Stat *string `json:"stat" tf:"stat,omitempty"`

	// Unit of the metric.
	// +kubebuilder:validation:Optional
	Unit *string `json:"unit,omitempty" tf:"unit,omitempty"`
}

func (*CustomizedScalingMetricSpecificationMetricDataQueriesMetricStatParameters) DeepCopy added in v0.23.0

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

func (*CustomizedScalingMetricSpecificationMetricDataQueriesMetricStatParameters) DeepCopyInto added in v0.23.0

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

type CustomizedScalingMetricSpecificationMetricDataQueriesObservation added in v0.23.0

type CustomizedScalingMetricSpecificationMetricDataQueriesObservation struct {

	// Math expression used on the returned metric. You must specify either expression or metric_stat, but not both.
	Expression *string `json:"expression,omitempty" tf:"expression,omitempty"`

	// Short name for the metric used in predictive scaling policy.
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// Human-readable label for this metric or expression.
	Label *string `json:"label,omitempty" tf:"label,omitempty"`

	// Structure that defines CloudWatch metric to be used in predictive scaling policy. You must specify either expression or metric_stat, but not both.
	MetricStat []CustomizedScalingMetricSpecificationMetricDataQueriesMetricStatObservation `json:"metricStat,omitempty" tf:"metric_stat,omitempty"`

	// Boolean that indicates whether to return the timestamps and raw data values of this metric, the default is true
	ReturnData *bool `json:"returnData,omitempty" tf:"return_data,omitempty"`
}

func (*CustomizedScalingMetricSpecificationMetricDataQueriesObservation) DeepCopy added in v0.23.0

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

func (*CustomizedScalingMetricSpecificationMetricDataQueriesObservation) DeepCopyInto added in v0.23.0

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

type CustomizedScalingMetricSpecificationMetricDataQueriesParameters added in v0.23.0

type CustomizedScalingMetricSpecificationMetricDataQueriesParameters struct {

	// Math expression used on the returned metric. You must specify either expression or metric_stat, but not both.
	// +kubebuilder:validation:Optional
	Expression *string `json:"expression,omitempty" tf:"expression,omitempty"`

	// Short name for the metric used in predictive scaling policy.
	// +kubebuilder:validation:Optional
	ID *string `json:"id" tf:"id,omitempty"`

	// Human-readable label for this metric or expression.
	// +kubebuilder:validation:Optional
	Label *string `json:"label,omitempty" tf:"label,omitempty"`

	// Structure that defines CloudWatch metric to be used in predictive scaling policy. You must specify either expression or metric_stat, but not both.
	// +kubebuilder:validation:Optional
	MetricStat []CustomizedScalingMetricSpecificationMetricDataQueriesMetricStatParameters `json:"metricStat,omitempty" tf:"metric_stat,omitempty"`

	// Boolean that indicates whether to return the timestamps and raw data values of this metric, the default is true
	// +kubebuilder:validation:Optional
	ReturnData *bool `json:"returnData,omitempty" tf:"return_data,omitempty"`
}

func (*CustomizedScalingMetricSpecificationMetricDataQueriesParameters) DeepCopy added in v0.23.0

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

func (*CustomizedScalingMetricSpecificationMetricDataQueriesParameters) DeepCopyInto added in v0.23.0

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

type CustomizedScalingMetricSpecificationObservation added in v0.23.0

type CustomizedScalingMetricSpecificationObservation struct {

	// List of up to 10 structures that defines custom scaling metric in predictive scaling policy
	MetricDataQueries []CustomizedScalingMetricSpecificationMetricDataQueriesObservation `json:"metricDataQueries,omitempty" tf:"metric_data_queries,omitempty"`
}

func (*CustomizedScalingMetricSpecificationObservation) DeepCopy added in v0.23.0

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

func (*CustomizedScalingMetricSpecificationObservation) DeepCopyInto added in v0.23.0

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

type CustomizedScalingMetricSpecificationParameters added in v0.23.0

type CustomizedScalingMetricSpecificationParameters struct {

	// List of up to 10 structures that defines custom scaling metric in predictive scaling policy
	// +kubebuilder:validation:Optional
	MetricDataQueries []CustomizedScalingMetricSpecificationMetricDataQueriesParameters `json:"metricDataQueries" tf:"metric_data_queries,omitempty"`
}

func (*CustomizedScalingMetricSpecificationParameters) DeepCopy added in v0.23.0

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

func (*CustomizedScalingMetricSpecificationParameters) DeepCopyInto added in v0.23.0

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

type DimensionsInitParameters added in v0.38.0

type DimensionsInitParameters struct {

	// Name of the policy.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// Value of the dimension.
	Value *string `json:"value,omitempty" tf:"value,omitempty"`
}

func (*DimensionsInitParameters) DeepCopy added in v0.38.0

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

func (*DimensionsInitParameters) DeepCopyInto added in v0.38.0

func (in *DimensionsInitParameters) DeepCopyInto(out *DimensionsInitParameters)

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

type DimensionsObservation added in v0.23.0

type DimensionsObservation struct {

	// Name of the policy.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// Value of the dimension.
	Value *string `json:"value,omitempty" tf:"value,omitempty"`
}

func (*DimensionsObservation) DeepCopy added in v0.23.0

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

func (*DimensionsObservation) DeepCopyInto added in v0.23.0

func (in *DimensionsObservation) DeepCopyInto(out *DimensionsObservation)

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

type DimensionsParameters added in v0.23.0

type DimensionsParameters struct {

	// Name of the policy.
	// +kubebuilder:validation:Optional
	Name *string `json:"name" tf:"name,omitempty"`

	// Value of the dimension.
	// +kubebuilder:validation:Optional
	Value *string `json:"value" tf:"value,omitempty"`
}

func (*DimensionsParameters) DeepCopy added in v0.23.0

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

func (*DimensionsParameters) DeepCopyInto added in v0.23.0

func (in *DimensionsParameters) DeepCopyInto(out *DimensionsParameters)

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

type EBSBlockDeviceInitParameters added in v0.38.0

type EBSBlockDeviceInitParameters struct {

	// Whether the volume should be destroyed
	// on instance termination (Default: true).
	DeleteOnTermination *bool `json:"deleteOnTermination,omitempty" tf:"delete_on_termination,omitempty"`

	// The name of the device to mount.
	DeviceName *string `json:"deviceName,omitempty" tf:"device_name,omitempty"`

	// Whether the volume should be encrypted or not. Defaults to false.
	Encrypted *bool `json:"encrypted,omitempty" tf:"encrypted,omitempty"`

	// The amount of provisioned
	// IOPS.
	// This must be set with a volume_type of "io1".
	Iops *float64 `json:"iops,omitempty" tf:"iops,omitempty"`

	// Whether the device in the block device mapping of the AMI is suppressed.
	NoDevice *bool `json:"noDevice,omitempty" tf:"no_device,omitempty"`

	// The Snapshot ID to mount.
	SnapshotID *string `json:"snapshotId,omitempty" tf:"snapshot_id,omitempty"`

	// The throughput (MiBps) to provision for a gp3 volume.
	Throughput *float64 `json:"throughput,omitempty" tf:"throughput,omitempty"`

	// The size of the volume in gigabytes.
	VolumeSize *float64 `json:"volumeSize,omitempty" tf:"volume_size,omitempty"`

	// The type of volume. Can be standard, gp2, gp3, st1, sc1 or io1.
	VolumeType *string `json:"volumeType,omitempty" tf:"volume_type,omitempty"`
}

func (*EBSBlockDeviceInitParameters) DeepCopy added in v0.38.0

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

func (*EBSBlockDeviceInitParameters) DeepCopyInto added in v0.38.0

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

type EBSBlockDeviceObservation

type EBSBlockDeviceObservation struct {

	// Whether the volume should be destroyed
	// on instance termination (Default: true).
	DeleteOnTermination *bool `json:"deleteOnTermination,omitempty" tf:"delete_on_termination,omitempty"`

	// The name of the device to mount.
	DeviceName *string `json:"deviceName,omitempty" tf:"device_name,omitempty"`

	// Whether the volume should be encrypted or not. Defaults to false.
	Encrypted *bool `json:"encrypted,omitempty" tf:"encrypted,omitempty"`

	// The amount of provisioned
	// IOPS.
	// This must be set with a volume_type of "io1".
	Iops *float64 `json:"iops,omitempty" tf:"iops,omitempty"`

	// Whether the device in the block device mapping of the AMI is suppressed.
	NoDevice *bool `json:"noDevice,omitempty" tf:"no_device,omitempty"`

	// The Snapshot ID to mount.
	SnapshotID *string `json:"snapshotId,omitempty" tf:"snapshot_id,omitempty"`

	// The throughput (MiBps) to provision for a gp3 volume.
	Throughput *float64 `json:"throughput,omitempty" tf:"throughput,omitempty"`

	// The size of the volume in gigabytes.
	VolumeSize *float64 `json:"volumeSize,omitempty" tf:"volume_size,omitempty"`

	// The type of volume. Can be standard, gp2, gp3, st1, sc1 or io1.
	VolumeType *string `json:"volumeType,omitempty" tf:"volume_type,omitempty"`
}

func (*EBSBlockDeviceObservation) DeepCopy

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

func (*EBSBlockDeviceObservation) DeepCopyInto

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

type EBSBlockDeviceParameters

type EBSBlockDeviceParameters struct {

	// Whether the volume should be destroyed
	// on instance termination (Default: true).
	// +kubebuilder:validation:Optional
	DeleteOnTermination *bool `json:"deleteOnTermination,omitempty" tf:"delete_on_termination,omitempty"`

	// The name of the device to mount.
	// +kubebuilder:validation:Optional
	DeviceName *string `json:"deviceName" tf:"device_name,omitempty"`

	// Whether the volume should be encrypted or not. Defaults to false.
	// +kubebuilder:validation:Optional
	Encrypted *bool `json:"encrypted,omitempty" tf:"encrypted,omitempty"`

	// The amount of provisioned
	// IOPS.
	// This must be set with a volume_type of "io1".
	// +kubebuilder:validation:Optional
	Iops *float64 `json:"iops,omitempty" tf:"iops,omitempty"`

	// Whether the device in the block device mapping of the AMI is suppressed.
	// +kubebuilder:validation:Optional
	NoDevice *bool `json:"noDevice,omitempty" tf:"no_device,omitempty"`

	// The Snapshot ID to mount.
	// +kubebuilder:validation:Optional
	SnapshotID *string `json:"snapshotId,omitempty" tf:"snapshot_id,omitempty"`

	// The throughput (MiBps) to provision for a gp3 volume.
	// +kubebuilder:validation:Optional
	Throughput *float64 `json:"throughput,omitempty" tf:"throughput,omitempty"`

	// The size of the volume in gigabytes.
	// +kubebuilder:validation:Optional
	VolumeSize *float64 `json:"volumeSize,omitempty" tf:"volume_size,omitempty"`

	// The type of volume. Can be standard, gp2, gp3, st1, sc1 or io1.
	// +kubebuilder:validation:Optional
	VolumeType *string `json:"volumeType,omitempty" tf:"volume_type,omitempty"`
}

func (*EBSBlockDeviceParameters) DeepCopy

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

func (*EBSBlockDeviceParameters) DeepCopyInto

func (in *EBSBlockDeviceParameters) DeepCopyInto(out *EBSBlockDeviceParameters)

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

type EphemeralBlockDeviceInitParameters added in v0.38.0

type EphemeralBlockDeviceInitParameters struct {

	// The name of the block device to mount on the instance.
	DeviceName *string `json:"deviceName,omitempty" tf:"device_name,omitempty"`

	// Whether the device in the block device mapping of the AMI is suppressed.
	NoDevice *bool `json:"noDevice,omitempty" tf:"no_device,omitempty"`

	// The Instance Store Device Name.
	VirtualName *string `json:"virtualName,omitempty" tf:"virtual_name,omitempty"`
}

func (*EphemeralBlockDeviceInitParameters) DeepCopy added in v0.38.0

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

func (*EphemeralBlockDeviceInitParameters) DeepCopyInto added in v0.38.0

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

type EphemeralBlockDeviceObservation

type EphemeralBlockDeviceObservation struct {

	// The name of the block device to mount on the instance.
	DeviceName *string `json:"deviceName,omitempty" tf:"device_name,omitempty"`

	// Whether the device in the block device mapping of the AMI is suppressed.
	NoDevice *bool `json:"noDevice,omitempty" tf:"no_device,omitempty"`

	// The Instance Store Device Name.
	VirtualName *string `json:"virtualName,omitempty" tf:"virtual_name,omitempty"`
}

func (*EphemeralBlockDeviceObservation) DeepCopy

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

func (*EphemeralBlockDeviceObservation) DeepCopyInto

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

type EphemeralBlockDeviceParameters

type EphemeralBlockDeviceParameters struct {

	// The name of the block device to mount on the instance.
	// +kubebuilder:validation:Optional
	DeviceName *string `json:"deviceName" tf:"device_name,omitempty"`

	// Whether the device in the block device mapping of the AMI is suppressed.
	// +kubebuilder:validation:Optional
	NoDevice *bool `json:"noDevice,omitempty" tf:"no_device,omitempty"`

	// The Instance Store Device Name.
	// +kubebuilder:validation:Optional
	VirtualName *string `json:"virtualName,omitempty" tf:"virtual_name,omitempty"`
}

func (*EphemeralBlockDeviceParameters) DeepCopy

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

func (*EphemeralBlockDeviceParameters) DeepCopyInto

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

type GroupTag added in v0.23.0

type GroupTag 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.tag) || (has(self.initProvider) && has(self.initProvider.tag))",message="spec.forProvider.tag is a required parameter"
	Spec   GroupTagSpec   `json:"spec"`
	Status GroupTagStatus `json:"status,omitempty"`
}

GroupTag is the Schema for the GroupTags API. Manages an individual Autoscaling Group tag +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,aws}

func (*GroupTag) DeepCopy added in v0.23.0

func (in *GroupTag) DeepCopy() *GroupTag

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

func (*GroupTag) DeepCopyInto added in v0.23.0

func (in *GroupTag) DeepCopyInto(out *GroupTag)

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

func (*GroupTag) DeepCopyObject added in v0.23.0

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

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

func (*GroupTag) GetCondition added in v0.23.0

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

GetCondition of this GroupTag.

func (*GroupTag) GetConnectionDetailsMapping added in v0.23.0

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

GetConnectionDetailsMapping for this GroupTag

func (*GroupTag) GetDeletionPolicy added in v0.23.0

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

GetDeletionPolicy of this GroupTag.

func (*GroupTag) GetID added in v0.23.0

func (tr *GroupTag) GetID() string

GetID returns ID of underlying Terraform resource of this GroupTag

func (*GroupTag) GetInitParameters added in v0.38.0

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

GetInitParameters of this GroupTag

func (*GroupTag) GetManagementPolicies added in v0.38.0

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

GetManagementPolicies of this GroupTag.

func (*GroupTag) GetMergedParameters added in v0.44.0

func (tr *GroupTag) GetMergedParameters(shouldMergeInitProvider bool) (map[string]any, error)

GetInitParameters of this GroupTag

func (*GroupTag) GetObservation added in v0.23.0

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

GetObservation of this GroupTag

func (*GroupTag) GetParameters added in v0.23.0

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

GetParameters of this GroupTag

func (*GroupTag) GetProviderConfigReference added in v0.23.0

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

GetProviderConfigReference of this GroupTag.

func (*GroupTag) GetPublishConnectionDetailsTo added in v0.23.0

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

GetPublishConnectionDetailsTo of this GroupTag.

func (*GroupTag) GetTerraformResourceType added in v0.23.0

func (mg *GroupTag) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this GroupTag

func (*GroupTag) GetTerraformSchemaVersion added in v0.23.0

func (tr *GroupTag) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*GroupTag) GetWriteConnectionSecretToReference added in v0.23.0

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

GetWriteConnectionSecretToReference of this GroupTag.

func (*GroupTag) LateInitialize added in v0.23.0

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

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

func (*GroupTag) ResolveReferences added in v0.23.0

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

ResolveReferences of this GroupTag.

func (*GroupTag) SetConditions added in v0.23.0

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

SetConditions of this GroupTag.

func (*GroupTag) SetDeletionPolicy added in v0.23.0

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

SetDeletionPolicy of this GroupTag.

func (*GroupTag) SetManagementPolicies added in v0.38.0

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

SetManagementPolicies of this GroupTag.

func (*GroupTag) SetObservation added in v0.23.0

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

SetObservation for this GroupTag

func (*GroupTag) SetParameters added in v0.23.0

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

SetParameters for this GroupTag

func (*GroupTag) SetProviderConfigReference added in v0.23.0

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

SetProviderConfigReference of this GroupTag.

func (*GroupTag) SetPublishConnectionDetailsTo added in v0.23.0

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

SetPublishConnectionDetailsTo of this GroupTag.

func (*GroupTag) SetWriteConnectionSecretToReference added in v0.23.0

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

SetWriteConnectionSecretToReference of this GroupTag.

type GroupTagInitParameters added in v0.38.0

type GroupTagInitParameters struct {

	// Tag to create. The tag block is documented below.
	Tag []GroupTagTagInitParameters `json:"tag,omitempty" tf:"tag,omitempty"`
}

func (*GroupTagInitParameters) DeepCopy added in v0.38.0

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

func (*GroupTagInitParameters) DeepCopyInto added in v0.38.0

func (in *GroupTagInitParameters) DeepCopyInto(out *GroupTagInitParameters)

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

type GroupTagList added in v0.23.0

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

GroupTagList contains a list of GroupTags

func (*GroupTagList) DeepCopy added in v0.23.0

func (in *GroupTagList) DeepCopy() *GroupTagList

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

func (*GroupTagList) DeepCopyInto added in v0.23.0

func (in *GroupTagList) DeepCopyInto(out *GroupTagList)

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

func (*GroupTagList) DeepCopyObject added in v0.23.0

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

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

func (*GroupTagList) GetItems added in v0.23.0

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

GetItems of this GroupTagList.

type GroupTagObservation added in v0.23.0

type GroupTagObservation struct {

	// Name of the Autoscaling Group to apply the tag to.
	AutoscalingGroupName *string `json:"autoscalingGroupName,omitempty" tf:"autoscaling_group_name,omitempty"`

	// ASG name and key, separated by a comma (,)
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// Tag to create. The tag block is documented below.
	Tag []GroupTagTagObservation `json:"tag,omitempty" tf:"tag,omitempty"`
}

func (*GroupTagObservation) DeepCopy added in v0.23.0

func (in *GroupTagObservation) DeepCopy() *GroupTagObservation

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

func (*GroupTagObservation) DeepCopyInto added in v0.23.0

func (in *GroupTagObservation) DeepCopyInto(out *GroupTagObservation)

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

type GroupTagParameters added in v0.23.0

type GroupTagParameters struct {

	// Name of the Autoscaling Group to apply the tag to.
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/autoscaling/v1beta1.AutoscalingGroup
	// +kubebuilder:validation:Optional
	AutoscalingGroupName *string `json:"autoscalingGroupName,omitempty" tf:"autoscaling_group_name,omitempty"`

	// Reference to a AutoscalingGroup in autoscaling to populate autoscalingGroupName.
	// +kubebuilder:validation:Optional
	AutoscalingGroupNameRef *v1.Reference `json:"autoscalingGroupNameRef,omitempty" tf:"-"`

	// Selector for a AutoscalingGroup in autoscaling to populate autoscalingGroupName.
	// +kubebuilder:validation:Optional
	AutoscalingGroupNameSelector *v1.Selector `json:"autoscalingGroupNameSelector,omitempty" tf:"-"`

	// Region is the region you'd like your resource to be created in.
	// +upjet:crd:field:TFTag=-
	// +kubebuilder:validation:Required
	Region *string `json:"region" tf:"-"`

	// Tag to create. The tag block is documented below.
	// +kubebuilder:validation:Optional
	Tag []GroupTagTagParameters `json:"tag,omitempty" tf:"tag,omitempty"`
}

func (*GroupTagParameters) DeepCopy added in v0.23.0

func (in *GroupTagParameters) DeepCopy() *GroupTagParameters

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

func (*GroupTagParameters) DeepCopyInto added in v0.23.0

func (in *GroupTagParameters) DeepCopyInto(out *GroupTagParameters)

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

type GroupTagSpec added in v0.23.0

type GroupTagSpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     GroupTagParameters `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 GroupTagInitParameters `json:"initProvider,omitempty"`
}

GroupTagSpec defines the desired state of GroupTag

func (*GroupTagSpec) DeepCopy added in v0.23.0

func (in *GroupTagSpec) DeepCopy() *GroupTagSpec

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

func (*GroupTagSpec) DeepCopyInto added in v0.23.0

func (in *GroupTagSpec) DeepCopyInto(out *GroupTagSpec)

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

type GroupTagStatus added in v0.23.0

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

GroupTagStatus defines the observed state of GroupTag.

func (*GroupTagStatus) DeepCopy added in v0.23.0

func (in *GroupTagStatus) DeepCopy() *GroupTagStatus

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

func (*GroupTagStatus) DeepCopyInto added in v0.23.0

func (in *GroupTagStatus) DeepCopyInto(out *GroupTagStatus)

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

type GroupTagTagInitParameters added in v0.38.0

type GroupTagTagInitParameters struct {

	// Tag name.
	Key *string `json:"key,omitempty" tf:"key,omitempty"`

	// Whether to propagate the tags to instances launched by the ASG.
	PropagateAtLaunch *bool `json:"propagateAtLaunch,omitempty" tf:"propagate_at_launch,omitempty"`

	// Tag value.
	Value *string `json:"value,omitempty" tf:"value,omitempty"`
}

func (*GroupTagTagInitParameters) DeepCopy added in v0.38.0

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

func (*GroupTagTagInitParameters) DeepCopyInto added in v0.38.0

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

type GroupTagTagObservation added in v0.23.0

type GroupTagTagObservation struct {

	// Tag name.
	Key *string `json:"key,omitempty" tf:"key,omitempty"`

	// Whether to propagate the tags to instances launched by the ASG.
	PropagateAtLaunch *bool `json:"propagateAtLaunch,omitempty" tf:"propagate_at_launch,omitempty"`

	// Tag value.
	Value *string `json:"value,omitempty" tf:"value,omitempty"`
}

func (*GroupTagTagObservation) DeepCopy added in v0.23.0

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

func (*GroupTagTagObservation) DeepCopyInto added in v0.23.0

func (in *GroupTagTagObservation) DeepCopyInto(out *GroupTagTagObservation)

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

type GroupTagTagParameters added in v0.23.0

type GroupTagTagParameters struct {

	// Tag name.
	// +kubebuilder:validation:Optional
	Key *string `json:"key" tf:"key,omitempty"`

	// Whether to propagate the tags to instances launched by the ASG.
	// +kubebuilder:validation:Optional
	PropagateAtLaunch *bool `json:"propagateAtLaunch" tf:"propagate_at_launch,omitempty"`

	// Tag value.
	// +kubebuilder:validation:Optional
	Value *string `json:"value" tf:"value,omitempty"`
}

func (*GroupTagTagParameters) DeepCopy added in v0.23.0

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

func (*GroupTagTagParameters) DeepCopyInto added in v0.23.0

func (in *GroupTagTagParameters) DeepCopyInto(out *GroupTagTagParameters)

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

type InitialLifecycleHookInitParameters added in v0.38.0

type InitialLifecycleHookInitParameters struct {
	DefaultResult *string `json:"defaultResult,omitempty" tf:"default_result,omitempty"`

	HeartbeatTimeout *float64 `json:"heartbeatTimeout,omitempty" tf:"heartbeat_timeout,omitempty"`

	LifecycleTransition *string `json:"lifecycleTransition,omitempty" tf:"lifecycle_transition,omitempty"`

	// Name of the Auto Scaling Group. Conflicts with name_prefix.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	NotificationMetadata *string `json:"notificationMetadata,omitempty" tf:"notification_metadata,omitempty"`

	// ARN for this Auto Scaling Group
	NotificationTargetArn *string `json:"notificationTargetArn,omitempty" tf:"notification_target_arn,omitempty"`

	// ARN for this Auto Scaling Group
	RoleArn *string `json:"roleArn,omitempty" tf:"role_arn,omitempty"`
}

func (*InitialLifecycleHookInitParameters) DeepCopy added in v0.38.0

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

func (*InitialLifecycleHookInitParameters) DeepCopyInto added in v0.38.0

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

type InitialLifecycleHookObservation

type InitialLifecycleHookObservation struct {
	DefaultResult *string `json:"defaultResult,omitempty" tf:"default_result,omitempty"`

	HeartbeatTimeout *float64 `json:"heartbeatTimeout,omitempty" tf:"heartbeat_timeout,omitempty"`

	LifecycleTransition *string `json:"lifecycleTransition,omitempty" tf:"lifecycle_transition,omitempty"`

	// Name of the Auto Scaling Group. Conflicts with name_prefix.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	NotificationMetadata *string `json:"notificationMetadata,omitempty" tf:"notification_metadata,omitempty"`

	// ARN for this Auto Scaling Group
	NotificationTargetArn *string `json:"notificationTargetArn,omitempty" tf:"notification_target_arn,omitempty"`

	// ARN for this Auto Scaling Group
	RoleArn *string `json:"roleArn,omitempty" tf:"role_arn,omitempty"`
}

func (*InitialLifecycleHookObservation) DeepCopy

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

func (*InitialLifecycleHookObservation) DeepCopyInto

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

type InitialLifecycleHookParameters

type InitialLifecycleHookParameters struct {

	// +kubebuilder:validation:Optional
	DefaultResult *string `json:"defaultResult,omitempty" tf:"default_result,omitempty"`

	// +kubebuilder:validation:Optional
	HeartbeatTimeout *float64 `json:"heartbeatTimeout,omitempty" tf:"heartbeat_timeout,omitempty"`

	// +kubebuilder:validation:Optional
	LifecycleTransition *string `json:"lifecycleTransition" tf:"lifecycle_transition,omitempty"`

	// Name of the Auto Scaling Group. Conflicts with name_prefix.
	// +kubebuilder:validation:Optional
	Name *string `json:"name" tf:"name,omitempty"`

	// +kubebuilder:validation:Optional
	NotificationMetadata *string `json:"notificationMetadata,omitempty" tf:"notification_metadata,omitempty"`

	// ARN for this Auto Scaling Group
	// +kubebuilder:validation:Optional
	NotificationTargetArn *string `json:"notificationTargetArn,omitempty" tf:"notification_target_arn,omitempty"`

	// ARN for this Auto Scaling Group
	// +kubebuilder:validation:Optional
	RoleArn *string `json:"roleArn,omitempty" tf:"role_arn,omitempty"`
}

func (*InitialLifecycleHookParameters) DeepCopy

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

func (*InitialLifecycleHookParameters) DeepCopyInto

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

type InstanceRefreshInitParameters added in v0.38.0

type InstanceRefreshInitParameters struct {

	// Override default parameters for Instance Refresh.
	Preferences []PreferencesInitParameters `json:"preferences,omitempty" tf:"preferences,omitempty"`

	// Strategy to use for instance refresh. The only allowed value is Rolling. See StartInstanceRefresh Action for more information.
	Strategy *string `json:"strategy,omitempty" tf:"strategy,omitempty"`

	// Set of additional property names that will trigger an Instance Refresh. A refresh will always be triggered by a change in any of launch_configuration, launch_template, or mixed_instances_policy.
	Triggers []*string `json:"triggers,omitempty" tf:"triggers,omitempty"`
}

func (*InstanceRefreshInitParameters) DeepCopy added in v0.38.0

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

func (*InstanceRefreshInitParameters) DeepCopyInto added in v0.38.0

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

type InstanceRefreshObservation

type InstanceRefreshObservation struct {

	// Override default parameters for Instance Refresh.
	Preferences []PreferencesObservation `json:"preferences,omitempty" tf:"preferences,omitempty"`

	// Strategy to use for instance refresh. The only allowed value is Rolling. See StartInstanceRefresh Action for more information.
	Strategy *string `json:"strategy,omitempty" tf:"strategy,omitempty"`

	// Set of additional property names that will trigger an Instance Refresh. A refresh will always be triggered by a change in any of launch_configuration, launch_template, or mixed_instances_policy.
	Triggers []*string `json:"triggers,omitempty" tf:"triggers,omitempty"`
}

func (*InstanceRefreshObservation) DeepCopy

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

func (*InstanceRefreshObservation) DeepCopyInto

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

type InstanceRefreshParameters

type InstanceRefreshParameters struct {

	// Override default parameters for Instance Refresh.
	// +kubebuilder:validation:Optional
	Preferences []PreferencesParameters `json:"preferences,omitempty" tf:"preferences,omitempty"`

	// Strategy to use for instance refresh. The only allowed value is Rolling. See StartInstanceRefresh Action for more information.
	// +kubebuilder:validation:Optional
	Strategy *string `json:"strategy" tf:"strategy,omitempty"`

	// Set of additional property names that will trigger an Instance Refresh. A refresh will always be triggered by a change in any of launch_configuration, launch_template, or mixed_instances_policy.
	// +kubebuilder:validation:Optional
	Triggers []*string `json:"triggers,omitempty" tf:"triggers,omitempty"`
}

func (*InstanceRefreshParameters) DeepCopy

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

func (*InstanceRefreshParameters) DeepCopyInto

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

type InstanceRequirementsInitParameters added in v0.38.0

type InstanceRequirementsInitParameters struct {

	// Block describing the minimum and maximum number of accelerators (GPUs, FPGAs, or AWS Inferentia chips). Default is no minimum or maximum.
	AcceleratorCount []AcceleratorCountInitParameters `json:"acceleratorCount,omitempty" tf:"accelerator_count,omitempty"`

	// List of accelerator manufacturer names. Default is any manufacturer.
	AcceleratorManufacturers []*string `json:"acceleratorManufacturers,omitempty" tf:"accelerator_manufacturers,omitempty"`

	// List of accelerator names. Default is any acclerator.
	AcceleratorNames []*string `json:"acceleratorNames,omitempty" tf:"accelerator_names,omitempty"`

	// Block describing the minimum and maximum total memory of the accelerators. Default is no minimum or maximum.
	AcceleratorTotalMemoryMib []AcceleratorTotalMemoryMibInitParameters `json:"acceleratorTotalMemoryMib,omitempty" tf:"accelerator_total_memory_mib,omitempty"`

	// List of accelerator types. Default is any accelerator type.
	AcceleratorTypes []*string `json:"acceleratorTypes,omitempty" tf:"accelerator_types,omitempty"`

	// List of instance types to apply your specified attributes against. All other instance types are ignored, even if they match your specified attributes. You can use strings with one or more wild cards, represented by an asterisk (*), to allow an instance type, size, or generation. The following are examples: m5.8xlarge, c5*.*, m5a.*, r*, *3*. For example, if you specify c5*, you are allowing the entire C5 instance family, which includes all C5a and C5n instance types. If you specify m5a.*, you are allowing all the M5a instance types, but not the M5n instance types. Maximum of 400 entries in the list; each entry is limited to 30 characters. Default is all instance types.
	AllowedInstanceTypes []*string `json:"allowedInstanceTypes,omitempty" tf:"allowed_instance_types,omitempty"`

	// Indicate whether bare metal instace types should be included, excluded, or required. Default is excluded.
	BareMetal *string `json:"bareMetal,omitempty" tf:"bare_metal,omitempty"`

	// Block describing the minimum and maximum baseline EBS bandwidth, in Mbps. Default is no minimum or maximum.
	BaselineEBSBandwidthMbps []BaselineEBSBandwidthMbpsInitParameters `json:"baselineEbsBandwidthMbps,omitempty" tf:"baseline_ebs_bandwidth_mbps,omitempty"`

	// Indicate whether burstable performance instance types should be included, excluded, or required. Default is excluded.
	BurstablePerformance *string `json:"burstablePerformance,omitempty" tf:"burstable_performance,omitempty"`

	// List of CPU manufacturer names. Default is any manufacturer.
	CPUManufacturers []*string `json:"cpuManufacturers,omitempty" tf:"cpu_manufacturers,omitempty"`

	// List of instance types to exclude. You can use strings with one or more wild cards, represented by an asterisk (*), to exclude an instance type, size, or generation. The following are examples: m5.8xlarge, c5*.*, m5a.*, r*, *3*. For example, if you specify c5*, you are excluding the entire C5 instance family, which includes all C5a and C5n instance types. If you specify m5a.*, you are excluding all the M5a instance types, but not the M5n instance types. Maximum of 400 entries in the list; each entry is limited to 30 characters. Default is no excluded instance types.
	ExcludedInstanceTypes []*string `json:"excludedInstanceTypes,omitempty" tf:"excluded_instance_types,omitempty"`

	// List of instance generation names. Default is any generation.
	InstanceGenerations []*string `json:"instanceGenerations,omitempty" tf:"instance_generations,omitempty"`

	// Indicate whether instance types with local storage volumes are included, excluded, or required. Default is included.
	LocalStorage *string `json:"localStorage,omitempty" tf:"local_storage,omitempty"`

	// List of local storage type names. Default any storage type.
	LocalStorageTypes []*string `json:"localStorageTypes,omitempty" tf:"local_storage_types,omitempty"`

	// Block describing the minimum and maximum amount of memory (GiB) per vCPU. Default is no minimum or maximum.
	MemoryGibPerVcpu []MemoryGibPerVcpuInitParameters `json:"memoryGibPerVcpu,omitempty" tf:"memory_gib_per_vcpu,omitempty"`

	// Block describing the minimum and maximum amount of memory (MiB). Default is no maximum.
	MemoryMib []MemoryMibInitParameters `json:"memoryMib,omitempty" tf:"memory_mib,omitempty"`

	// Block describing the minimum and maximum amount of network bandwidth, in gigabits per second (Gbps). Default is no minimum or maximum.
	NetworkBandwidthGbps []NetworkBandwidthGbpsInitParameters `json:"networkBandwidthGbps,omitempty" tf:"network_bandwidth_gbps,omitempty"`

	// Block describing the minimum and maximum number of network interfaces. Default is no minimum or maximum.
	NetworkInterfaceCount []NetworkInterfaceCountInitParameters `json:"networkInterfaceCount,omitempty" tf:"network_interface_count,omitempty"`

	// Price protection threshold for On-Demand Instances. This is the maximum you’ll pay for an On-Demand Instance, expressed as a percentage higher than the cheapest M, C, or R instance type with your specified attributes. When Amazon EC2 Auto Scaling selects instance types with your attributes, we will exclude instance types whose price is higher than your threshold. The parameter accepts an integer, which Amazon EC2 Auto Scaling interprets as a percentage. To turn off price protection, specify a high value, such as 999999. Default is 20.
	OnDemandMaxPricePercentageOverLowestPrice *float64 `json:"onDemandMaxPricePercentageOverLowestPrice,omitempty" tf:"on_demand_max_price_percentage_over_lowest_price,omitempty"`

	// Indicate whether instance types must support On-Demand Instance Hibernation, either true or false. Default is false.
	RequireHibernateSupport *bool `json:"requireHibernateSupport,omitempty" tf:"require_hibernate_support,omitempty"`

	// Price protection threshold for Spot Instances. This is the maximum you’ll pay for a Spot Instance, expressed as a percentage higher than the cheapest M, C, or R instance type with your specified attributes. When Amazon EC2 Auto Scaling selects instance types with your attributes, we will exclude instance types whose price is higher than your threshold. The parameter accepts an integer, which Amazon EC2 Auto Scaling interprets as a percentage. To turn off price protection, specify a high value, such as 999999. Default is 100.
	SpotMaxPricePercentageOverLowestPrice *float64 `json:"spotMaxPricePercentageOverLowestPrice,omitempty" tf:"spot_max_price_percentage_over_lowest_price,omitempty"`

	// Block describing the minimum and maximum total local storage (GB). Default is no minimum or maximum.
	TotalLocalStorageGb []TotalLocalStorageGbInitParameters `json:"totalLocalStorageGb,omitempty" tf:"total_local_storage_gb,omitempty"`

	// Block describing the minimum and maximum number of vCPUs. Default is no maximum.
	VcpuCount []VcpuCountInitParameters `json:"vcpuCount,omitempty" tf:"vcpu_count,omitempty"`
}

func (*InstanceRequirementsInitParameters) DeepCopy added in v0.38.0

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

func (*InstanceRequirementsInitParameters) DeepCopyInto added in v0.38.0

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

type InstanceRequirementsObservation added in v0.29.0

type InstanceRequirementsObservation struct {

	// Block describing the minimum and maximum number of accelerators (GPUs, FPGAs, or AWS Inferentia chips). Default is no minimum or maximum.
	AcceleratorCount []AcceleratorCountObservation `json:"acceleratorCount,omitempty" tf:"accelerator_count,omitempty"`

	// List of accelerator manufacturer names. Default is any manufacturer.
	AcceleratorManufacturers []*string `json:"acceleratorManufacturers,omitempty" tf:"accelerator_manufacturers,omitempty"`

	// List of accelerator names. Default is any acclerator.
	AcceleratorNames []*string `json:"acceleratorNames,omitempty" tf:"accelerator_names,omitempty"`

	// Block describing the minimum and maximum total memory of the accelerators. Default is no minimum or maximum.
	AcceleratorTotalMemoryMib []AcceleratorTotalMemoryMibObservation `json:"acceleratorTotalMemoryMib,omitempty" tf:"accelerator_total_memory_mib,omitempty"`

	// List of accelerator types. Default is any accelerator type.
	AcceleratorTypes []*string `json:"acceleratorTypes,omitempty" tf:"accelerator_types,omitempty"`

	// List of instance types to apply your specified attributes against. All other instance types are ignored, even if they match your specified attributes. You can use strings with one or more wild cards, represented by an asterisk (*), to allow an instance type, size, or generation. The following are examples: m5.8xlarge, c5*.*, m5a.*, r*, *3*. For example, if you specify c5*, you are allowing the entire C5 instance family, which includes all C5a and C5n instance types. If you specify m5a.*, you are allowing all the M5a instance types, but not the M5n instance types. Maximum of 400 entries in the list; each entry is limited to 30 characters. Default is all instance types.
	AllowedInstanceTypes []*string `json:"allowedInstanceTypes,omitempty" tf:"allowed_instance_types,omitempty"`

	// Indicate whether bare metal instace types should be included, excluded, or required. Default is excluded.
	BareMetal *string `json:"bareMetal,omitempty" tf:"bare_metal,omitempty"`

	// Block describing the minimum and maximum baseline EBS bandwidth, in Mbps. Default is no minimum or maximum.
	BaselineEBSBandwidthMbps []BaselineEBSBandwidthMbpsObservation `json:"baselineEbsBandwidthMbps,omitempty" tf:"baseline_ebs_bandwidth_mbps,omitempty"`

	// Indicate whether burstable performance instance types should be included, excluded, or required. Default is excluded.
	BurstablePerformance *string `json:"burstablePerformance,omitempty" tf:"burstable_performance,omitempty"`

	// List of CPU manufacturer names. Default is any manufacturer.
	CPUManufacturers []*string `json:"cpuManufacturers,omitempty" tf:"cpu_manufacturers,omitempty"`

	// List of instance types to exclude. You can use strings with one or more wild cards, represented by an asterisk (*), to exclude an instance type, size, or generation. The following are examples: m5.8xlarge, c5*.*, m5a.*, r*, *3*. For example, if you specify c5*, you are excluding the entire C5 instance family, which includes all C5a and C5n instance types. If you specify m5a.*, you are excluding all the M5a instance types, but not the M5n instance types. Maximum of 400 entries in the list; each entry is limited to 30 characters. Default is no excluded instance types.
	ExcludedInstanceTypes []*string `json:"excludedInstanceTypes,omitempty" tf:"excluded_instance_types,omitempty"`

	// List of instance generation names. Default is any generation.
	InstanceGenerations []*string `json:"instanceGenerations,omitempty" tf:"instance_generations,omitempty"`

	// Indicate whether instance types with local storage volumes are included, excluded, or required. Default is included.
	LocalStorage *string `json:"localStorage,omitempty" tf:"local_storage,omitempty"`

	// List of local storage type names. Default any storage type.
	LocalStorageTypes []*string `json:"localStorageTypes,omitempty" tf:"local_storage_types,omitempty"`

	// Block describing the minimum and maximum amount of memory (GiB) per vCPU. Default is no minimum or maximum.
	MemoryGibPerVcpu []MemoryGibPerVcpuObservation `json:"memoryGibPerVcpu,omitempty" tf:"memory_gib_per_vcpu,omitempty"`

	// Block describing the minimum and maximum amount of memory (MiB). Default is no maximum.
	MemoryMib []MemoryMibObservation `json:"memoryMib,omitempty" tf:"memory_mib,omitempty"`

	// Block describing the minimum and maximum amount of network bandwidth, in gigabits per second (Gbps). Default is no minimum or maximum.
	NetworkBandwidthGbps []NetworkBandwidthGbpsObservation `json:"networkBandwidthGbps,omitempty" tf:"network_bandwidth_gbps,omitempty"`

	// Block describing the minimum and maximum number of network interfaces. Default is no minimum or maximum.
	NetworkInterfaceCount []NetworkInterfaceCountObservation `json:"networkInterfaceCount,omitempty" tf:"network_interface_count,omitempty"`

	// Price protection threshold for On-Demand Instances. This is the maximum you’ll pay for an On-Demand Instance, expressed as a percentage higher than the cheapest M, C, or R instance type with your specified attributes. When Amazon EC2 Auto Scaling selects instance types with your attributes, we will exclude instance types whose price is higher than your threshold. The parameter accepts an integer, which Amazon EC2 Auto Scaling interprets as a percentage. To turn off price protection, specify a high value, such as 999999. Default is 20.
	OnDemandMaxPricePercentageOverLowestPrice *float64 `json:"onDemandMaxPricePercentageOverLowestPrice,omitempty" tf:"on_demand_max_price_percentage_over_lowest_price,omitempty"`

	// Indicate whether instance types must support On-Demand Instance Hibernation, either true or false. Default is false.
	RequireHibernateSupport *bool `json:"requireHibernateSupport,omitempty" tf:"require_hibernate_support,omitempty"`

	// Price protection threshold for Spot Instances. This is the maximum you’ll pay for a Spot Instance, expressed as a percentage higher than the cheapest M, C, or R instance type with your specified attributes. When Amazon EC2 Auto Scaling selects instance types with your attributes, we will exclude instance types whose price is higher than your threshold. The parameter accepts an integer, which Amazon EC2 Auto Scaling interprets as a percentage. To turn off price protection, specify a high value, such as 999999. Default is 100.
	SpotMaxPricePercentageOverLowestPrice *float64 `json:"spotMaxPricePercentageOverLowestPrice,omitempty" tf:"spot_max_price_percentage_over_lowest_price,omitempty"`

	// Block describing the minimum and maximum total local storage (GB). Default is no minimum or maximum.
	TotalLocalStorageGb []TotalLocalStorageGbObservation `json:"totalLocalStorageGb,omitempty" tf:"total_local_storage_gb,omitempty"`

	// Block describing the minimum and maximum number of vCPUs. Default is no maximum.
	VcpuCount []VcpuCountObservation `json:"vcpuCount,omitempty" tf:"vcpu_count,omitempty"`
}

func (*InstanceRequirementsObservation) DeepCopy added in v0.29.0

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

func (*InstanceRequirementsObservation) DeepCopyInto added in v0.29.0

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

type InstanceRequirementsParameters added in v0.29.0

type InstanceRequirementsParameters struct {

	// Block describing the minimum and maximum number of accelerators (GPUs, FPGAs, or AWS Inferentia chips). Default is no minimum or maximum.
	// +kubebuilder:validation:Optional
	AcceleratorCount []AcceleratorCountParameters `json:"acceleratorCount,omitempty" tf:"accelerator_count,omitempty"`

	// List of accelerator manufacturer names. Default is any manufacturer.
	// +kubebuilder:validation:Optional
	AcceleratorManufacturers []*string `json:"acceleratorManufacturers,omitempty" tf:"accelerator_manufacturers,omitempty"`

	// List of accelerator names. Default is any acclerator.
	// +kubebuilder:validation:Optional
	AcceleratorNames []*string `json:"acceleratorNames,omitempty" tf:"accelerator_names,omitempty"`

	// Block describing the minimum and maximum total memory of the accelerators. Default is no minimum or maximum.
	// +kubebuilder:validation:Optional
	AcceleratorTotalMemoryMib []AcceleratorTotalMemoryMibParameters `json:"acceleratorTotalMemoryMib,omitempty" tf:"accelerator_total_memory_mib,omitempty"`

	// List of accelerator types. Default is any accelerator type.
	// +kubebuilder:validation:Optional
	AcceleratorTypes []*string `json:"acceleratorTypes,omitempty" tf:"accelerator_types,omitempty"`

	// List of instance types to apply your specified attributes against. All other instance types are ignored, even if they match your specified attributes. You can use strings with one or more wild cards, represented by an asterisk (*), to allow an instance type, size, or generation. The following are examples: m5.8xlarge, c5*.*, m5a.*, r*, *3*. For example, if you specify c5*, you are allowing the entire C5 instance family, which includes all C5a and C5n instance types. If you specify m5a.*, you are allowing all the M5a instance types, but not the M5n instance types. Maximum of 400 entries in the list; each entry is limited to 30 characters. Default is all instance types.
	// +kubebuilder:validation:Optional
	AllowedInstanceTypes []*string `json:"allowedInstanceTypes,omitempty" tf:"allowed_instance_types,omitempty"`

	// Indicate whether bare metal instace types should be included, excluded, or required. Default is excluded.
	// +kubebuilder:validation:Optional
	BareMetal *string `json:"bareMetal,omitempty" tf:"bare_metal,omitempty"`

	// Block describing the minimum and maximum baseline EBS bandwidth, in Mbps. Default is no minimum or maximum.
	// +kubebuilder:validation:Optional
	BaselineEBSBandwidthMbps []BaselineEBSBandwidthMbpsParameters `json:"baselineEbsBandwidthMbps,omitempty" tf:"baseline_ebs_bandwidth_mbps,omitempty"`

	// Indicate whether burstable performance instance types should be included, excluded, or required. Default is excluded.
	// +kubebuilder:validation:Optional
	BurstablePerformance *string `json:"burstablePerformance,omitempty" tf:"burstable_performance,omitempty"`

	// List of CPU manufacturer names. Default is any manufacturer.
	// +kubebuilder:validation:Optional
	CPUManufacturers []*string `json:"cpuManufacturers,omitempty" tf:"cpu_manufacturers,omitempty"`

	// List of instance types to exclude. You can use strings with one or more wild cards, represented by an asterisk (*), to exclude an instance type, size, or generation. The following are examples: m5.8xlarge, c5*.*, m5a.*, r*, *3*. For example, if you specify c5*, you are excluding the entire C5 instance family, which includes all C5a and C5n instance types. If you specify m5a.*, you are excluding all the M5a instance types, but not the M5n instance types. Maximum of 400 entries in the list; each entry is limited to 30 characters. Default is no excluded instance types.
	// +kubebuilder:validation:Optional
	ExcludedInstanceTypes []*string `json:"excludedInstanceTypes,omitempty" tf:"excluded_instance_types,omitempty"`

	// List of instance generation names. Default is any generation.
	// +kubebuilder:validation:Optional
	InstanceGenerations []*string `json:"instanceGenerations,omitempty" tf:"instance_generations,omitempty"`

	// Indicate whether instance types with local storage volumes are included, excluded, or required. Default is included.
	// +kubebuilder:validation:Optional
	LocalStorage *string `json:"localStorage,omitempty" tf:"local_storage,omitempty"`

	// List of local storage type names. Default any storage type.
	// +kubebuilder:validation:Optional
	LocalStorageTypes []*string `json:"localStorageTypes,omitempty" tf:"local_storage_types,omitempty"`

	// Block describing the minimum and maximum amount of memory (GiB) per vCPU. Default is no minimum or maximum.
	// +kubebuilder:validation:Optional
	MemoryGibPerVcpu []MemoryGibPerVcpuParameters `json:"memoryGibPerVcpu,omitempty" tf:"memory_gib_per_vcpu,omitempty"`

	// Block describing the minimum and maximum amount of memory (MiB). Default is no maximum.
	// +kubebuilder:validation:Optional
	MemoryMib []MemoryMibParameters `json:"memoryMib,omitempty" tf:"memory_mib,omitempty"`

	// Block describing the minimum and maximum amount of network bandwidth, in gigabits per second (Gbps). Default is no minimum or maximum.
	// +kubebuilder:validation:Optional
	NetworkBandwidthGbps []NetworkBandwidthGbpsParameters `json:"networkBandwidthGbps,omitempty" tf:"network_bandwidth_gbps,omitempty"`

	// Block describing the minimum and maximum number of network interfaces. Default is no minimum or maximum.
	// +kubebuilder:validation:Optional
	NetworkInterfaceCount []NetworkInterfaceCountParameters `json:"networkInterfaceCount,omitempty" tf:"network_interface_count,omitempty"`

	// Price protection threshold for On-Demand Instances. This is the maximum you’ll pay for an On-Demand Instance, expressed as a percentage higher than the cheapest M, C, or R instance type with your specified attributes. When Amazon EC2 Auto Scaling selects instance types with your attributes, we will exclude instance types whose price is higher than your threshold. The parameter accepts an integer, which Amazon EC2 Auto Scaling interprets as a percentage. To turn off price protection, specify a high value, such as 999999. Default is 20.
	// +kubebuilder:validation:Optional
	OnDemandMaxPricePercentageOverLowestPrice *float64 `json:"onDemandMaxPricePercentageOverLowestPrice,omitempty" tf:"on_demand_max_price_percentage_over_lowest_price,omitempty"`

	// Indicate whether instance types must support On-Demand Instance Hibernation, either true or false. Default is false.
	// +kubebuilder:validation:Optional
	RequireHibernateSupport *bool `json:"requireHibernateSupport,omitempty" tf:"require_hibernate_support,omitempty"`

	// Price protection threshold for Spot Instances. This is the maximum you’ll pay for a Spot Instance, expressed as a percentage higher than the cheapest M, C, or R instance type with your specified attributes. When Amazon EC2 Auto Scaling selects instance types with your attributes, we will exclude instance types whose price is higher than your threshold. The parameter accepts an integer, which Amazon EC2 Auto Scaling interprets as a percentage. To turn off price protection, specify a high value, such as 999999. Default is 100.
	// +kubebuilder:validation:Optional
	SpotMaxPricePercentageOverLowestPrice *float64 `json:"spotMaxPricePercentageOverLowestPrice,omitempty" tf:"spot_max_price_percentage_over_lowest_price,omitempty"`

	// Block describing the minimum and maximum total local storage (GB). Default is no minimum or maximum.
	// +kubebuilder:validation:Optional
	TotalLocalStorageGb []TotalLocalStorageGbParameters `json:"totalLocalStorageGb,omitempty" tf:"total_local_storage_gb,omitempty"`

	// Block describing the minimum and maximum number of vCPUs. Default is no maximum.
	// +kubebuilder:validation:Optional
	VcpuCount []VcpuCountParameters `json:"vcpuCount,omitempty" tf:"vcpu_count,omitempty"`
}

func (*InstanceRequirementsParameters) DeepCopy added in v0.29.0

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

func (*InstanceRequirementsParameters) DeepCopyInto added in v0.29.0

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

type InstanceReusePolicyInitParameters added in v0.38.0

type InstanceReusePolicyInitParameters struct {

	// Whether instances in the Auto Scaling group can be returned to the warm pool on scale in.
	ReuseOnScaleIn *bool `json:"reuseOnScaleIn,omitempty" tf:"reuse_on_scale_in,omitempty"`
}

func (*InstanceReusePolicyInitParameters) DeepCopy added in v0.38.0

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

func (*InstanceReusePolicyInitParameters) DeepCopyInto added in v0.38.0

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

type InstanceReusePolicyObservation

type InstanceReusePolicyObservation struct {

	// Whether instances in the Auto Scaling group can be returned to the warm pool on scale in.
	ReuseOnScaleIn *bool `json:"reuseOnScaleIn,omitempty" tf:"reuse_on_scale_in,omitempty"`
}

func (*InstanceReusePolicyObservation) DeepCopy

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

func (*InstanceReusePolicyObservation) DeepCopyInto

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

type InstanceReusePolicyParameters

type InstanceReusePolicyParameters struct {

	// Whether instances in the Auto Scaling group can be returned to the warm pool on scale in.
	// +kubebuilder:validation:Optional
	ReuseOnScaleIn *bool `json:"reuseOnScaleIn,omitempty" tf:"reuse_on_scale_in,omitempty"`
}

func (*InstanceReusePolicyParameters) DeepCopy

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

func (*InstanceReusePolicyParameters) DeepCopyInto

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

type InstancesDistributionInitParameters added in v0.38.0

type InstancesDistributionInitParameters struct {

	// Strategy to use when launching on-demand instances. Valid values: prioritized, lowest-price. Default: prioritized.
	OnDemandAllocationStrategy *string `json:"onDemandAllocationStrategy,omitempty" tf:"on_demand_allocation_strategy,omitempty"`

	// Absolute minimum amount of desired capacity that must be fulfilled by on-demand instances. Default: 0.
	OnDemandBaseCapacity *float64 `json:"onDemandBaseCapacity,omitempty" tf:"on_demand_base_capacity,omitempty"`

	// Percentage split between on-demand and Spot instances above the base on-demand capacity. Default: 100.
	OnDemandPercentageAboveBaseCapacity *float64 `json:"onDemandPercentageAboveBaseCapacity,omitempty" tf:"on_demand_percentage_above_base_capacity,omitempty"`

	// How to allocate capacity across the Spot pools. Valid values: lowest-price, capacity-optimized, capacity-optimized-prioritized, and price-capacity-optimized. Default: lowest-price.
	SpotAllocationStrategy *string `json:"spotAllocationStrategy,omitempty" tf:"spot_allocation_strategy,omitempty"`

	// Number of Spot pools per availability zone to allocate capacity. EC2 Auto Scaling selects the cheapest Spot pools and evenly allocates Spot capacity across the number of Spot pools that you specify. Only available with spot_allocation_strategy set to lowest-price. Otherwise it must be set to 0, if it has been defined before. Default: 2.
	SpotInstancePools *float64 `json:"spotInstancePools,omitempty" tf:"spot_instance_pools,omitempty"`

	// Maximum price per unit hour that the user is willing to pay for the Spot instances. Default: an empty string which means the on-demand price.
	SpotMaxPrice *string `json:"spotMaxPrice,omitempty" tf:"spot_max_price,omitempty"`
}

func (*InstancesDistributionInitParameters) DeepCopy added in v0.38.0

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

func (*InstancesDistributionInitParameters) DeepCopyInto added in v0.38.0

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

type InstancesDistributionObservation

type InstancesDistributionObservation struct {

	// Strategy to use when launching on-demand instances. Valid values: prioritized, lowest-price. Default: prioritized.
	OnDemandAllocationStrategy *string `json:"onDemandAllocationStrategy,omitempty" tf:"on_demand_allocation_strategy,omitempty"`

	// Absolute minimum amount of desired capacity that must be fulfilled by on-demand instances. Default: 0.
	OnDemandBaseCapacity *float64 `json:"onDemandBaseCapacity,omitempty" tf:"on_demand_base_capacity,omitempty"`

	// Percentage split between on-demand and Spot instances above the base on-demand capacity. Default: 100.
	OnDemandPercentageAboveBaseCapacity *float64 `json:"onDemandPercentageAboveBaseCapacity,omitempty" tf:"on_demand_percentage_above_base_capacity,omitempty"`

	// How to allocate capacity across the Spot pools. Valid values: lowest-price, capacity-optimized, capacity-optimized-prioritized, and price-capacity-optimized. Default: lowest-price.
	SpotAllocationStrategy *string `json:"spotAllocationStrategy,omitempty" tf:"spot_allocation_strategy,omitempty"`

	// Number of Spot pools per availability zone to allocate capacity. EC2 Auto Scaling selects the cheapest Spot pools and evenly allocates Spot capacity across the number of Spot pools that you specify. Only available with spot_allocation_strategy set to lowest-price. Otherwise it must be set to 0, if it has been defined before. Default: 2.
	SpotInstancePools *float64 `json:"spotInstancePools,omitempty" tf:"spot_instance_pools,omitempty"`

	// Maximum price per unit hour that the user is willing to pay for the Spot instances. Default: an empty string which means the on-demand price.
	SpotMaxPrice *string `json:"spotMaxPrice,omitempty" tf:"spot_max_price,omitempty"`
}

func (*InstancesDistributionObservation) DeepCopy

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

func (*InstancesDistributionObservation) DeepCopyInto

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

type InstancesDistributionParameters

type InstancesDistributionParameters struct {

	// Strategy to use when launching on-demand instances. Valid values: prioritized, lowest-price. Default: prioritized.
	// +kubebuilder:validation:Optional
	OnDemandAllocationStrategy *string `json:"onDemandAllocationStrategy,omitempty" tf:"on_demand_allocation_strategy,omitempty"`

	// Absolute minimum amount of desired capacity that must be fulfilled by on-demand instances. Default: 0.
	// +kubebuilder:validation:Optional
	OnDemandBaseCapacity *float64 `json:"onDemandBaseCapacity,omitempty" tf:"on_demand_base_capacity,omitempty"`

	// Percentage split between on-demand and Spot instances above the base on-demand capacity. Default: 100.
	// +kubebuilder:validation:Optional
	OnDemandPercentageAboveBaseCapacity *float64 `json:"onDemandPercentageAboveBaseCapacity,omitempty" tf:"on_demand_percentage_above_base_capacity,omitempty"`

	// How to allocate capacity across the Spot pools. Valid values: lowest-price, capacity-optimized, capacity-optimized-prioritized, and price-capacity-optimized. Default: lowest-price.
	// +kubebuilder:validation:Optional
	SpotAllocationStrategy *string `json:"spotAllocationStrategy,omitempty" tf:"spot_allocation_strategy,omitempty"`

	// Number of Spot pools per availability zone to allocate capacity. EC2 Auto Scaling selects the cheapest Spot pools and evenly allocates Spot capacity across the number of Spot pools that you specify. Only available with spot_allocation_strategy set to lowest-price. Otherwise it must be set to 0, if it has been defined before. Default: 2.
	// +kubebuilder:validation:Optional
	SpotInstancePools *float64 `json:"spotInstancePools,omitempty" tf:"spot_instance_pools,omitempty"`

	// Maximum price per unit hour that the user is willing to pay for the Spot instances. Default: an empty string which means the on-demand price.
	// +kubebuilder:validation:Optional
	SpotMaxPrice *string `json:"spotMaxPrice,omitempty" tf:"spot_max_price,omitempty"`
}

func (*InstancesDistributionParameters) DeepCopy

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

func (*InstancesDistributionParameters) DeepCopyInto

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

type LaunchConfiguration

type LaunchConfiguration 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.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.instanceType) || (has(self.initProvider) && has(self.initProvider.instanceType))",message="spec.forProvider.instanceType is a required parameter"
	Spec   LaunchConfigurationSpec   `json:"spec"`
	Status LaunchConfigurationStatus `json:"status,omitempty"`
}

LaunchConfiguration is the Schema for the LaunchConfigurations API. Provides a resource to create a new launch configuration, used for autoscaling groups. +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,aws}

func (*LaunchConfiguration) DeepCopy

func (in *LaunchConfiguration) DeepCopy() *LaunchConfiguration

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

func (*LaunchConfiguration) DeepCopyInto

func (in *LaunchConfiguration) DeepCopyInto(out *LaunchConfiguration)

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

func (*LaunchConfiguration) DeepCopyObject

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

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

func (*LaunchConfiguration) GetCondition

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

GetCondition of this LaunchConfiguration.

func (*LaunchConfiguration) GetConnectionDetailsMapping

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

GetConnectionDetailsMapping for this LaunchConfiguration

func (*LaunchConfiguration) GetDeletionPolicy

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

GetDeletionPolicy of this LaunchConfiguration.

func (*LaunchConfiguration) GetID

func (tr *LaunchConfiguration) GetID() string

GetID returns ID of underlying Terraform resource of this LaunchConfiguration

func (*LaunchConfiguration) GetInitParameters added in v0.38.0

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

GetInitParameters of this LaunchConfiguration

func (*LaunchConfiguration) GetManagementPolicies added in v0.38.0

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

GetManagementPolicies of this LaunchConfiguration.

func (*LaunchConfiguration) GetMergedParameters added in v0.44.0

func (tr *LaunchConfiguration) GetMergedParameters(shouldMergeInitProvider bool) (map[string]any, error)

GetInitParameters of this LaunchConfiguration

func (*LaunchConfiguration) GetObservation

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

GetObservation of this LaunchConfiguration

func (*LaunchConfiguration) GetParameters

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

GetParameters of this LaunchConfiguration

func (*LaunchConfiguration) GetProviderConfigReference

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

GetProviderConfigReference of this LaunchConfiguration.

func (*LaunchConfiguration) GetPublishConnectionDetailsTo

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

GetPublishConnectionDetailsTo of this LaunchConfiguration.

func (*LaunchConfiguration) GetTerraformResourceType

func (mg *LaunchConfiguration) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this LaunchConfiguration

func (*LaunchConfiguration) GetTerraformSchemaVersion

func (tr *LaunchConfiguration) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*LaunchConfiguration) GetWriteConnectionSecretToReference

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

GetWriteConnectionSecretToReference of this LaunchConfiguration.

func (*LaunchConfiguration) LateInitialize

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

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

func (*LaunchConfiguration) SetConditions

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

SetConditions of this LaunchConfiguration.

func (*LaunchConfiguration) SetDeletionPolicy

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

SetDeletionPolicy of this LaunchConfiguration.

func (*LaunchConfiguration) SetManagementPolicies added in v0.38.0

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

SetManagementPolicies of this LaunchConfiguration.

func (*LaunchConfiguration) SetObservation

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

SetObservation for this LaunchConfiguration

func (*LaunchConfiguration) SetParameters

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

SetParameters for this LaunchConfiguration

func (*LaunchConfiguration) SetProviderConfigReference

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

SetProviderConfigReference of this LaunchConfiguration.

func (*LaunchConfiguration) SetPublishConnectionDetailsTo

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

SetPublishConnectionDetailsTo of this LaunchConfiguration.

func (*LaunchConfiguration) SetWriteConnectionSecretToReference

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

SetWriteConnectionSecretToReference of this LaunchConfiguration.

type LaunchConfigurationInitParameters added in v0.38.0

type LaunchConfigurationInitParameters struct {

	// Associate a public ip address with an instance in a VPC.
	AssociatePublicIPAddress *bool `json:"associatePublicIpAddress,omitempty" tf:"associate_public_ip_address,omitempty"`

	// Additional EBS block devices to attach to the instance. See Block Devices below for details.
	EBSBlockDevice []EBSBlockDeviceInitParameters `json:"ebsBlockDevice,omitempty" tf:"ebs_block_device,omitempty"`

	// If true, the launched EC2 instance will be EBS-optimized.
	EBSOptimized *bool `json:"ebsOptimized,omitempty" tf:"ebs_optimized,omitempty"`

	// Enables/disables detailed monitoring. This is enabled by default.
	EnableMonitoring *bool `json:"enableMonitoring,omitempty" tf:"enable_monitoring,omitempty"`

	// Customize Ephemeral (also known as "Instance Store") volumes on the instance. See Block Devices below for details.
	EphemeralBlockDevice []EphemeralBlockDeviceInitParameters `json:"ephemeralBlockDevice,omitempty" tf:"ephemeral_block_device,omitempty"`

	// The name attribute of the IAM instance profile to associate with launched instances.
	IAMInstanceProfile *string `json:"iamInstanceProfile,omitempty" tf:"iam_instance_profile,omitempty"`

	// The EC2 image ID to launch.
	ImageID *string `json:"imageId,omitempty" tf:"image_id,omitempty"`

	// The size of instance to launch.
	InstanceType *string `json:"instanceType,omitempty" tf:"instance_type,omitempty"`

	// The key name that should be used for the instance.
	KeyName *string `json:"keyName,omitempty" tf:"key_name,omitempty"`

	// The metadata options for the instance.
	MetadataOptions []MetadataOptionsInitParameters `json:"metadataOptions,omitempty" tf:"metadata_options,omitempty"`

	// The tenancy of the instance. Valid values are default or dedicated, see AWS's Create Launch Configuration for more details.
	PlacementTenancy *string `json:"placementTenancy,omitempty" tf:"placement_tenancy,omitempty"`

	// Customize details about the root block device of the instance. See Block Devices below for details.
	RootBlockDevice []RootBlockDeviceInitParameters `json:"rootBlockDevice,omitempty" tf:"root_block_device,omitempty"`

	// A list of associated security group IDS.
	SecurityGroups []*string `json:"securityGroups,omitempty" tf:"security_groups,omitempty"`

	// The maximum price to use for reserving spot instances.
	SpotPrice *string `json:"spotPrice,omitempty" tf:"spot_price,omitempty"`

	// The user data to provide when launching the instance. Do not pass gzip-compressed data via this argument; see user_data_base64 instead.
	UserData *string `json:"userData,omitempty" tf:"user_data,omitempty"`

	// Can be used instead of user_data to pass base64-encoded binary data directly. Use this instead of user_data whenever the value is not a valid UTF-8 string. For example, gzip-encoded user data must be base64-encoded and passed via this argument to avoid corruption.
	UserDataBase64 *string `json:"userDataBase64,omitempty" tf:"user_data_base64,omitempty"`

	// The ID of a ClassicLink-enabled VPC. Only applies to EC2-Classic instances. (eg. vpc-2730681a)
	VPCClassicLinkID *string `json:"vpcClassicLinkId,omitempty" tf:"vpc_classic_link_id,omitempty"`

	// The IDs of one or more security groups for the specified ClassicLink-enabled VPC (eg. sg-46ae3d11).
	VPCClassicLinkSecurityGroups []*string `json:"vpcClassicLinkSecurityGroups,omitempty" tf:"vpc_classic_link_security_groups,omitempty"`
}

func (*LaunchConfigurationInitParameters) DeepCopy added in v0.38.0

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

func (*LaunchConfigurationInitParameters) DeepCopyInto added in v0.38.0

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

type LaunchConfigurationList

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

LaunchConfigurationList contains a list of LaunchConfigurations

func (*LaunchConfigurationList) DeepCopy

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

func (*LaunchConfigurationList) DeepCopyInto

func (in *LaunchConfigurationList) DeepCopyInto(out *LaunchConfigurationList)

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

func (*LaunchConfigurationList) DeepCopyObject

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

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

func (*LaunchConfigurationList) GetItems

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

GetItems of this LaunchConfigurationList.

type LaunchConfigurationObservation

type LaunchConfigurationObservation struct {

	// The Amazon Resource Name of the launch configuration.
	Arn *string `json:"arn,omitempty" tf:"arn,omitempty"`

	// Associate a public ip address with an instance in a VPC.
	AssociatePublicIPAddress *bool `json:"associatePublicIpAddress,omitempty" tf:"associate_public_ip_address,omitempty"`

	// Additional EBS block devices to attach to the instance. See Block Devices below for details.
	EBSBlockDevice []EBSBlockDeviceObservation `json:"ebsBlockDevice,omitempty" tf:"ebs_block_device,omitempty"`

	// If true, the launched EC2 instance will be EBS-optimized.
	EBSOptimized *bool `json:"ebsOptimized,omitempty" tf:"ebs_optimized,omitempty"`

	// Enables/disables detailed monitoring. This is enabled by default.
	EnableMonitoring *bool `json:"enableMonitoring,omitempty" tf:"enable_monitoring,omitempty"`

	// Customize Ephemeral (also known as "Instance Store") volumes on the instance. See Block Devices below for details.
	EphemeralBlockDevice []EphemeralBlockDeviceObservation `json:"ephemeralBlockDevice,omitempty" tf:"ephemeral_block_device,omitempty"`

	// The name attribute of the IAM instance profile to associate with launched instances.
	IAMInstanceProfile *string `json:"iamInstanceProfile,omitempty" tf:"iam_instance_profile,omitempty"`

	// The ID of the launch configuration.
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// The EC2 image ID to launch.
	ImageID *string `json:"imageId,omitempty" tf:"image_id,omitempty"`

	// The size of instance to launch.
	InstanceType *string `json:"instanceType,omitempty" tf:"instance_type,omitempty"`

	// The key name that should be used for the instance.
	KeyName *string `json:"keyName,omitempty" tf:"key_name,omitempty"`

	// The metadata options for the instance.
	MetadataOptions []MetadataOptionsObservation `json:"metadataOptions,omitempty" tf:"metadata_options,omitempty"`

	// The tenancy of the instance. Valid values are default or dedicated, see AWS's Create Launch Configuration for more details.
	PlacementTenancy *string `json:"placementTenancy,omitempty" tf:"placement_tenancy,omitempty"`

	// Customize details about the root block device of the instance. See Block Devices below for details.
	RootBlockDevice []RootBlockDeviceObservation `json:"rootBlockDevice,omitempty" tf:"root_block_device,omitempty"`

	// A list of associated security group IDS.
	SecurityGroups []*string `json:"securityGroups,omitempty" tf:"security_groups,omitempty"`

	// The maximum price to use for reserving spot instances.
	SpotPrice *string `json:"spotPrice,omitempty" tf:"spot_price,omitempty"`

	// The user data to provide when launching the instance. Do not pass gzip-compressed data via this argument; see user_data_base64 instead.
	UserData *string `json:"userData,omitempty" tf:"user_data,omitempty"`

	// Can be used instead of user_data to pass base64-encoded binary data directly. Use this instead of user_data whenever the value is not a valid UTF-8 string. For example, gzip-encoded user data must be base64-encoded and passed via this argument to avoid corruption.
	UserDataBase64 *string `json:"userDataBase64,omitempty" tf:"user_data_base64,omitempty"`

	// The ID of a ClassicLink-enabled VPC. Only applies to EC2-Classic instances. (eg. vpc-2730681a)
	VPCClassicLinkID *string `json:"vpcClassicLinkId,omitempty" tf:"vpc_classic_link_id,omitempty"`

	// The IDs of one or more security groups for the specified ClassicLink-enabled VPC (eg. sg-46ae3d11).
	VPCClassicLinkSecurityGroups []*string `json:"vpcClassicLinkSecurityGroups,omitempty" tf:"vpc_classic_link_security_groups,omitempty"`
}

func (*LaunchConfigurationObservation) DeepCopy

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

func (*LaunchConfigurationObservation) DeepCopyInto

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

type LaunchConfigurationParameters

type LaunchConfigurationParameters struct {

	// Associate a public ip address with an instance in a VPC.
	// +kubebuilder:validation:Optional
	AssociatePublicIPAddress *bool `json:"associatePublicIpAddress,omitempty" tf:"associate_public_ip_address,omitempty"`

	// Additional EBS block devices to attach to the instance. See Block Devices below for details.
	// +kubebuilder:validation:Optional
	EBSBlockDevice []EBSBlockDeviceParameters `json:"ebsBlockDevice,omitempty" tf:"ebs_block_device,omitempty"`

	// If true, the launched EC2 instance will be EBS-optimized.
	// +kubebuilder:validation:Optional
	EBSOptimized *bool `json:"ebsOptimized,omitempty" tf:"ebs_optimized,omitempty"`

	// Enables/disables detailed monitoring. This is enabled by default.
	// +kubebuilder:validation:Optional
	EnableMonitoring *bool `json:"enableMonitoring,omitempty" tf:"enable_monitoring,omitempty"`

	// Customize Ephemeral (also known as "Instance Store") volumes on the instance. See Block Devices below for details.
	// +kubebuilder:validation:Optional
	EphemeralBlockDevice []EphemeralBlockDeviceParameters `json:"ephemeralBlockDevice,omitempty" tf:"ephemeral_block_device,omitempty"`

	// The name attribute of the IAM instance profile to associate with launched instances.
	// +kubebuilder:validation:Optional
	IAMInstanceProfile *string `json:"iamInstanceProfile,omitempty" tf:"iam_instance_profile,omitempty"`

	// The EC2 image ID to launch.
	// +kubebuilder:validation:Optional
	ImageID *string `json:"imageId,omitempty" tf:"image_id,omitempty"`

	// The size of instance to launch.
	// +kubebuilder:validation:Optional
	InstanceType *string `json:"instanceType,omitempty" tf:"instance_type,omitempty"`

	// The key name that should be used for the instance.
	// +kubebuilder:validation:Optional
	KeyName *string `json:"keyName,omitempty" tf:"key_name,omitempty"`

	// The metadata options for the instance.
	// +kubebuilder:validation:Optional
	MetadataOptions []MetadataOptionsParameters `json:"metadataOptions,omitempty" tf:"metadata_options,omitempty"`

	// The tenancy of the instance. Valid values are default or dedicated, see AWS's Create Launch Configuration for more details.
	// +kubebuilder:validation:Optional
	PlacementTenancy *string `json:"placementTenancy,omitempty" tf:"placement_tenancy,omitempty"`

	// Region is the region you'd like your resource to be created in.
	// +upjet:crd:field:TFTag=-
	// +kubebuilder:validation:Required
	Region *string `json:"region" tf:"-"`

	// Customize details about the root block device of the instance. See Block Devices below for details.
	// +kubebuilder:validation:Optional
	RootBlockDevice []RootBlockDeviceParameters `json:"rootBlockDevice,omitempty" tf:"root_block_device,omitempty"`

	// A list of associated security group IDS.
	// +kubebuilder:validation:Optional
	SecurityGroups []*string `json:"securityGroups,omitempty" tf:"security_groups,omitempty"`

	// The maximum price to use for reserving spot instances.
	// +kubebuilder:validation:Optional
	SpotPrice *string `json:"spotPrice,omitempty" tf:"spot_price,omitempty"`

	// The user data to provide when launching the instance. Do not pass gzip-compressed data via this argument; see user_data_base64 instead.
	// +kubebuilder:validation:Optional
	UserData *string `json:"userData,omitempty" tf:"user_data,omitempty"`

	// Can be used instead of user_data to pass base64-encoded binary data directly. Use this instead of user_data whenever the value is not a valid UTF-8 string. For example, gzip-encoded user data must be base64-encoded and passed via this argument to avoid corruption.
	// +kubebuilder:validation:Optional
	UserDataBase64 *string `json:"userDataBase64,omitempty" tf:"user_data_base64,omitempty"`

	// The ID of a ClassicLink-enabled VPC. Only applies to EC2-Classic instances. (eg. vpc-2730681a)
	// +kubebuilder:validation:Optional
	VPCClassicLinkID *string `json:"vpcClassicLinkId,omitempty" tf:"vpc_classic_link_id,omitempty"`

	// The IDs of one or more security groups for the specified ClassicLink-enabled VPC (eg. sg-46ae3d11).
	// +kubebuilder:validation:Optional
	VPCClassicLinkSecurityGroups []*string `json:"vpcClassicLinkSecurityGroups,omitempty" tf:"vpc_classic_link_security_groups,omitempty"`
}

func (*LaunchConfigurationParameters) DeepCopy

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

func (*LaunchConfigurationParameters) DeepCopyInto

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

type LaunchConfigurationSpec

type LaunchConfigurationSpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     LaunchConfigurationParameters `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 LaunchConfigurationInitParameters `json:"initProvider,omitempty"`
}

LaunchConfigurationSpec defines the desired state of LaunchConfiguration

func (*LaunchConfigurationSpec) DeepCopy

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

func (*LaunchConfigurationSpec) DeepCopyInto

func (in *LaunchConfigurationSpec) DeepCopyInto(out *LaunchConfigurationSpec)

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

type LaunchConfigurationStatus

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

LaunchConfigurationStatus defines the observed state of LaunchConfiguration.

func (*LaunchConfigurationStatus) DeepCopy

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

func (*LaunchConfigurationStatus) DeepCopyInto

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

type LaunchTemplateInitParameters added in v0.38.0

type LaunchTemplateInitParameters struct {

	// Name of the launch template. Conflicts with id.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// Template version. Can be version number, $Latest, or $Default. (Default: $Default).
	Version *string `json:"version,omitempty" tf:"version,omitempty"`
}

func (*LaunchTemplateInitParameters) DeepCopy added in v0.38.0

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

func (*LaunchTemplateInitParameters) DeepCopyInto added in v0.38.0

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

type LaunchTemplateObservation

type LaunchTemplateObservation struct {

	// ID of the launch template. Conflicts with name.
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// Name of the launch template. Conflicts with id.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// Template version. Can be version number, $Latest, or $Default. (Default: $Default).
	Version *string `json:"version,omitempty" tf:"version,omitempty"`
}

func (*LaunchTemplateObservation) DeepCopy

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

func (*LaunchTemplateObservation) DeepCopyInto

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

type LaunchTemplateParameters

type LaunchTemplateParameters struct {

	// ID of the launch template. Conflicts with name.
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/ec2/v1beta1.LaunchTemplate
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID()
	// +kubebuilder:validation:Optional
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// Reference to a LaunchTemplate in ec2 to populate id.
	// +kubebuilder:validation:Optional
	IDRef *v1.Reference `json:"idRef,omitempty" tf:"-"`

	// Selector for a LaunchTemplate in ec2 to populate id.
	// +kubebuilder:validation:Optional
	IDSelector *v1.Selector `json:"idSelector,omitempty" tf:"-"`

	// Name of the launch template. Conflicts with id.
	// +kubebuilder:validation:Optional
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// Template version. Can be version number, $Latest, or $Default. (Default: $Default).
	// +kubebuilder:validation:Optional
	Version *string `json:"version,omitempty" tf:"version,omitempty"`
}

func (*LaunchTemplateParameters) DeepCopy

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

func (*LaunchTemplateParameters) DeepCopyInto

func (in *LaunchTemplateParameters) DeepCopyInto(out *LaunchTemplateParameters)

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

type LaunchTemplateSpecificationInitParameters added in v0.38.0

type LaunchTemplateSpecificationInitParameters struct {

	// Name of the launch template. Conflicts with launch_template_id.
	LaunchTemplateName *string `json:"launchTemplateName,omitempty" tf:"launch_template_name,omitempty"`

	// Template version. Can be version number, $Latest, or $Default. (Default: $Default).
	Version *string `json:"version,omitempty" tf:"version,omitempty"`
}

func (*LaunchTemplateSpecificationInitParameters) DeepCopy added in v0.38.0

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

func (*LaunchTemplateSpecificationInitParameters) DeepCopyInto added in v0.38.0

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

type LaunchTemplateSpecificationObservation

type LaunchTemplateSpecificationObservation struct {

	// ID of the launch template. Conflicts with launch_template_name.
	LaunchTemplateID *string `json:"launchTemplateId,omitempty" tf:"launch_template_id,omitempty"`

	// Name of the launch template. Conflicts with launch_template_id.
	LaunchTemplateName *string `json:"launchTemplateName,omitempty" tf:"launch_template_name,omitempty"`

	// Template version. Can be version number, $Latest, or $Default. (Default: $Default).
	Version *string `json:"version,omitempty" tf:"version,omitempty"`
}

func (*LaunchTemplateSpecificationObservation) DeepCopy

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

func (*LaunchTemplateSpecificationObservation) DeepCopyInto

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

type LaunchTemplateSpecificationParameters

type LaunchTemplateSpecificationParameters struct {

	// ID of the launch template. Conflicts with launch_template_name.
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/ec2/v1beta1.LaunchTemplate
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID()
	// +kubebuilder:validation:Optional
	LaunchTemplateID *string `json:"launchTemplateId,omitempty" tf:"launch_template_id,omitempty"`

	// Reference to a LaunchTemplate in ec2 to populate launchTemplateId.
	// +kubebuilder:validation:Optional
	LaunchTemplateIDRef *v1.Reference `json:"launchTemplateIdRef,omitempty" tf:"-"`

	// Selector for a LaunchTemplate in ec2 to populate launchTemplateId.
	// +kubebuilder:validation:Optional
	LaunchTemplateIDSelector *v1.Selector `json:"launchTemplateIdSelector,omitempty" tf:"-"`

	// Name of the launch template. Conflicts with launch_template_id.
	// +kubebuilder:validation:Optional
	LaunchTemplateName *string `json:"launchTemplateName,omitempty" tf:"launch_template_name,omitempty"`

	// Template version. Can be version number, $Latest, or $Default. (Default: $Default).
	// +kubebuilder:validation:Optional
	Version *string `json:"version,omitempty" tf:"version,omitempty"`
}

func (*LaunchTemplateSpecificationParameters) DeepCopy

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

func (*LaunchTemplateSpecificationParameters) DeepCopyInto

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

type LifecycleHook added in v0.23.0

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.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 an AutoScaling Lifecycle Hook resource. +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,aws}

func (*LifecycleHook) DeepCopy added in v0.23.0

func (in *LifecycleHook) DeepCopy() *LifecycleHook

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

func (*LifecycleHook) DeepCopyInto added in v0.23.0

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 added in v0.23.0

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

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

func (*LifecycleHook) GetCondition added in v0.23.0

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

GetCondition of this LifecycleHook.

func (*LifecycleHook) GetConnectionDetailsMapping added in v0.23.0

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

GetConnectionDetailsMapping for this LifecycleHook

func (*LifecycleHook) GetDeletionPolicy added in v0.23.0

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

GetDeletionPolicy of this LifecycleHook.

func (*LifecycleHook) GetID added in v0.23.0

func (tr *LifecycleHook) GetID() string

GetID returns ID of underlying Terraform resource of this LifecycleHook

func (*LifecycleHook) GetInitParameters added in v0.38.0

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

GetInitParameters of this LifecycleHook

func (*LifecycleHook) GetManagementPolicies added in v0.38.0

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

GetManagementPolicies of this LifecycleHook.

func (*LifecycleHook) GetMergedParameters added in v0.44.0

func (tr *LifecycleHook) GetMergedParameters(shouldMergeInitProvider bool) (map[string]any, error)

GetInitParameters of this LifecycleHook

func (*LifecycleHook) GetObservation added in v0.23.0

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

GetObservation of this LifecycleHook

func (*LifecycleHook) GetParameters added in v0.23.0

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

GetParameters of this LifecycleHook

func (*LifecycleHook) GetProviderConfigReference added in v0.23.0

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

GetProviderConfigReference of this LifecycleHook.

func (*LifecycleHook) GetPublishConnectionDetailsTo added in v0.23.0

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

GetPublishConnectionDetailsTo of this LifecycleHook.

func (*LifecycleHook) GetTerraformResourceType added in v0.23.0

func (mg *LifecycleHook) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this LifecycleHook

func (*LifecycleHook) GetTerraformSchemaVersion added in v0.23.0

func (tr *LifecycleHook) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*LifecycleHook) GetWriteConnectionSecretToReference added in v0.23.0

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

GetWriteConnectionSecretToReference of this LifecycleHook.

func (*LifecycleHook) LateInitialize added in v0.23.0

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 added in v0.23.0

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

ResolveReferences of this LifecycleHook.

func (*LifecycleHook) SetConditions added in v0.23.0

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

SetConditions of this LifecycleHook.

func (*LifecycleHook) SetDeletionPolicy added in v0.23.0

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

SetDeletionPolicy of this LifecycleHook.

func (*LifecycleHook) SetManagementPolicies added in v0.38.0

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

SetManagementPolicies of this LifecycleHook.

func (*LifecycleHook) SetObservation added in v0.23.0

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

SetObservation for this LifecycleHook

func (*LifecycleHook) SetParameters added in v0.23.0

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

SetParameters for this LifecycleHook

func (*LifecycleHook) SetProviderConfigReference added in v0.23.0

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

SetProviderConfigReference of this LifecycleHook.

func (*LifecycleHook) SetPublishConnectionDetailsTo added in v0.23.0

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

SetPublishConnectionDetailsTo of this LifecycleHook.

func (*LifecycleHook) SetWriteConnectionSecretToReference added in v0.23.0

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

SetWriteConnectionSecretToReference of this LifecycleHook.

type LifecycleHookInitParameters added in v0.38.0

type LifecycleHookInitParameters struct {

	// Defines the action the Auto Scaling group should take when the lifecycle hook timeout elapses or if an unexpected failure occurs. The value for this parameter can be either CONTINUE or ABANDON. The default value for this parameter is ABANDON.
	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. When the lifecycle hook times out, Auto Scaling performs the action defined in the DefaultResult parameter
	HeartbeatTimeout *float64 `json:"heartbeatTimeout,omitempty" tf:"heartbeat_timeout,omitempty"`

	// Instance state to which you want to attach the lifecycle hook. For a list of lifecycle hook types, see describe-lifecycle-hook-types
	LifecycleTransition *string `json:"lifecycleTransition,omitempty" tf:"lifecycle_transition,omitempty"`

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

	// ARN of the notification target that Auto Scaling will use to notify you when an instance is in the transition state for the lifecycle hook. This ARN target can be either an SQS queue or an SNS topic.
	NotificationTargetArn *string `json:"notificationTargetArn,omitempty" tf:"notification_target_arn,omitempty"`
}

func (*LifecycleHookInitParameters) DeepCopy added in v0.38.0

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

func (*LifecycleHookInitParameters) DeepCopyInto added in v0.38.0

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

type LifecycleHookList added in v0.23.0

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 added in v0.23.0

func (in *LifecycleHookList) DeepCopy() *LifecycleHookList

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

func (*LifecycleHookList) DeepCopyInto added in v0.23.0

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 added in v0.23.0

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

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

func (*LifecycleHookList) GetItems added in v0.23.0

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

GetItems of this LifecycleHookList.

type LifecycleHookObservation added in v0.23.0

type LifecycleHookObservation struct {

	// Name of the Auto Scaling group to which you want to assign the lifecycle hook
	AutoscalingGroupName *string `json:"autoscalingGroupName,omitempty" tf:"autoscaling_group_name,omitempty"`

	// Defines the action the Auto Scaling group should take when the lifecycle hook timeout elapses or if an unexpected failure occurs. The value for this parameter can be either CONTINUE or ABANDON. The default value for this parameter is ABANDON.
	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. When the lifecycle hook times out, Auto Scaling performs the action defined in the DefaultResult parameter
	HeartbeatTimeout *float64 `json:"heartbeatTimeout,omitempty" tf:"heartbeat_timeout,omitempty"`

	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// Instance state to which you want to attach the lifecycle hook. For a list of lifecycle hook types, see describe-lifecycle-hook-types
	LifecycleTransition *string `json:"lifecycleTransition,omitempty" tf:"lifecycle_transition,omitempty"`

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

	// ARN of the notification target that Auto Scaling will use to notify you when an instance is in the transition state for the lifecycle hook. This ARN target can be either an SQS queue or an SNS topic.
	NotificationTargetArn *string `json:"notificationTargetArn,omitempty" tf:"notification_target_arn,omitempty"`

	// ARN of the IAM role that allows the Auto Scaling group to publish to the specified notification target.
	RoleArn *string `json:"roleArn,omitempty" tf:"role_arn,omitempty"`
}

func (*LifecycleHookObservation) DeepCopy added in v0.23.0

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

func (*LifecycleHookObservation) DeepCopyInto added in v0.23.0

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 added in v0.23.0

type LifecycleHookParameters struct {

	// Name of the Auto Scaling group to which you want to assign the lifecycle hook
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/autoscaling/v1beta1.AutoscalingGroup
	// +kubebuilder:validation:Optional
	AutoscalingGroupName *string `json:"autoscalingGroupName,omitempty" tf:"autoscaling_group_name,omitempty"`

	// Reference to a AutoscalingGroup in autoscaling to populate autoscalingGroupName.
	// +kubebuilder:validation:Optional
	AutoscalingGroupNameRef *v1.Reference `json:"autoscalingGroupNameRef,omitempty" tf:"-"`

	// Selector for a AutoscalingGroup in autoscaling to populate autoscalingGroupName.
	// +kubebuilder:validation:Optional
	AutoscalingGroupNameSelector *v1.Selector `json:"autoscalingGroupNameSelector,omitempty" tf:"-"`

	// Defines the action the Auto Scaling group should take when the lifecycle hook timeout elapses or if an unexpected failure occurs. The value for this parameter can be either CONTINUE or ABANDON. The default value for this parameter is ABANDON.
	// +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. When the lifecycle hook times out, Auto Scaling performs the action defined in the DefaultResult parameter
	// +kubebuilder:validation:Optional
	HeartbeatTimeout *float64 `json:"heartbeatTimeout,omitempty" tf:"heartbeat_timeout,omitempty"`

	// Instance state to which you want to attach the lifecycle hook. For a list of lifecycle hook types, see describe-lifecycle-hook-types
	// +kubebuilder:validation:Optional
	LifecycleTransition *string `json:"lifecycleTransition,omitempty" tf:"lifecycle_transition,omitempty"`

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

	// ARN of the notification target that Auto Scaling will use to notify you when an instance is in the transition state for the lifecycle hook. This ARN target can be either an SQS queue or an SNS topic.
	// +kubebuilder:validation:Optional
	NotificationTargetArn *string `json:"notificationTargetArn,omitempty" tf:"notification_target_arn,omitempty"`

	// Region is the region you'd like your resource to be created in.
	// +upjet:crd:field:TFTag=-
	// +kubebuilder:validation:Required
	Region *string `json:"region" tf:"-"`

	// ARN of the IAM role that allows the Auto Scaling group to publish to the specified notification target.
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/iam/v1beta1.Role
	// +crossplane:generate:reference:extractor=github.com/upbound/provider-aws/config/common.ARNExtractor()
	// +kubebuilder:validation:Optional
	RoleArn *string `json:"roleArn,omitempty" tf:"role_arn,omitempty"`

	// Reference to a Role in iam to populate roleArn.
	// +kubebuilder:validation:Optional
	RoleArnRef *v1.Reference `json:"roleArnRef,omitempty" tf:"-"`

	// Selector for a Role in iam to populate roleArn.
	// +kubebuilder:validation:Optional
	RoleArnSelector *v1.Selector `json:"roleArnSelector,omitempty" tf:"-"`
}

func (*LifecycleHookParameters) DeepCopy added in v0.23.0

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

func (*LifecycleHookParameters) DeepCopyInto added in v0.23.0

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 added in v0.23.0

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 added in v0.23.0

func (in *LifecycleHookSpec) DeepCopy() *LifecycleHookSpec

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

func (*LifecycleHookSpec) DeepCopyInto added in v0.23.0

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 added in v0.23.0

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

LifecycleHookStatus defines the observed state of LifecycleHook.

func (*LifecycleHookStatus) DeepCopy added in v0.23.0

func (in *LifecycleHookStatus) DeepCopy() *LifecycleHookStatus

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

func (*LifecycleHookStatus) DeepCopyInto added in v0.23.0

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

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

type MemoryGibPerVcpuInitParameters added in v0.38.0

type MemoryGibPerVcpuInitParameters struct {

	// Maximum.
	Max *float64 `json:"max,omitempty" tf:"max,omitempty"`

	// Minimum.
	Min *float64 `json:"min,omitempty" tf:"min,omitempty"`
}

func (*MemoryGibPerVcpuInitParameters) DeepCopy added in v0.38.0

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

func (*MemoryGibPerVcpuInitParameters) DeepCopyInto added in v0.38.0

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

type MemoryGibPerVcpuObservation added in v0.29.0

type MemoryGibPerVcpuObservation struct {

	// Maximum.
	Max *float64 `json:"max,omitempty" tf:"max,omitempty"`

	// Minimum.
	Min *float64 `json:"min,omitempty" tf:"min,omitempty"`
}

func (*MemoryGibPerVcpuObservation) DeepCopy added in v0.29.0

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

func (*MemoryGibPerVcpuObservation) DeepCopyInto added in v0.29.0

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

type MemoryGibPerVcpuParameters added in v0.29.0

type MemoryGibPerVcpuParameters struct {

	// Maximum.
	// +kubebuilder:validation:Optional
	Max *float64 `json:"max,omitempty" tf:"max,omitempty"`

	// Minimum.
	// +kubebuilder:validation:Optional
	Min *float64 `json:"min,omitempty" tf:"min,omitempty"`
}

func (*MemoryGibPerVcpuParameters) DeepCopy added in v0.29.0

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

func (*MemoryGibPerVcpuParameters) DeepCopyInto added in v0.29.0

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

type MemoryMibInitParameters added in v0.38.0

type MemoryMibInitParameters struct {

	// Maximum.
	Max *float64 `json:"max,omitempty" tf:"max,omitempty"`

	// Minimum.
	Min *float64 `json:"min,omitempty" tf:"min,omitempty"`
}

func (*MemoryMibInitParameters) DeepCopy added in v0.38.0

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

func (*MemoryMibInitParameters) DeepCopyInto added in v0.38.0

func (in *MemoryMibInitParameters) DeepCopyInto(out *MemoryMibInitParameters)

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

type MemoryMibObservation added in v0.29.0

type MemoryMibObservation struct {

	// Maximum.
	Max *float64 `json:"max,omitempty" tf:"max,omitempty"`

	// Minimum.
	Min *float64 `json:"min,omitempty" tf:"min,omitempty"`
}

func (*MemoryMibObservation) DeepCopy added in v0.29.0

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

func (*MemoryMibObservation) DeepCopyInto added in v0.29.0

func (in *MemoryMibObservation) DeepCopyInto(out *MemoryMibObservation)

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

type MemoryMibParameters added in v0.29.0

type MemoryMibParameters struct {

	// Maximum.
	// +kubebuilder:validation:Optional
	Max *float64 `json:"max,omitempty" tf:"max,omitempty"`

	// Minimum.
	// +kubebuilder:validation:Optional
	Min *float64 `json:"min,omitempty" tf:"min,omitempty"`
}

func (*MemoryMibParameters) DeepCopy added in v0.29.0

func (in *MemoryMibParameters) DeepCopy() *MemoryMibParameters

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

func (*MemoryMibParameters) DeepCopyInto added in v0.29.0

func (in *MemoryMibParameters) DeepCopyInto(out *MemoryMibParameters)

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

type MetadataOptionsInitParameters added in v0.38.0

type MetadataOptionsInitParameters struct {

	// The state of the metadata service: enabled, disabled.
	HTTPEndpoint *string `json:"httpEndpoint,omitempty" tf:"http_endpoint,omitempty"`

	// The desired HTTP PUT response hop limit for instance metadata requests.
	HTTPPutResponseHopLimit *float64 `json:"httpPutResponseHopLimit,omitempty" tf:"http_put_response_hop_limit,omitempty"`

	// If session tokens are required: optional, required.
	HTTPTokens *string `json:"httpTokens,omitempty" tf:"http_tokens,omitempty"`
}

func (*MetadataOptionsInitParameters) DeepCopy added in v0.38.0

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

func (*MetadataOptionsInitParameters) DeepCopyInto added in v0.38.0

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

type MetadataOptionsObservation

type MetadataOptionsObservation struct {

	// The state of the metadata service: enabled, disabled.
	HTTPEndpoint *string `json:"httpEndpoint,omitempty" tf:"http_endpoint,omitempty"`

	// The desired HTTP PUT response hop limit for instance metadata requests.
	HTTPPutResponseHopLimit *float64 `json:"httpPutResponseHopLimit,omitempty" tf:"http_put_response_hop_limit,omitempty"`

	// If session tokens are required: optional, required.
	HTTPTokens *string `json:"httpTokens,omitempty" tf:"http_tokens,omitempty"`
}

func (*MetadataOptionsObservation) DeepCopy

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

func (*MetadataOptionsObservation) DeepCopyInto

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

type MetadataOptionsParameters

type MetadataOptionsParameters struct {

	// The state of the metadata service: enabled, disabled.
	// +kubebuilder:validation:Optional
	HTTPEndpoint *string `json:"httpEndpoint,omitempty" tf:"http_endpoint,omitempty"`

	// The desired HTTP PUT response hop limit for instance metadata requests.
	// +kubebuilder:validation:Optional
	HTTPPutResponseHopLimit *float64 `json:"httpPutResponseHopLimit,omitempty" tf:"http_put_response_hop_limit,omitempty"`

	// If session tokens are required: optional, required.
	// +kubebuilder:validation:Optional
	HTTPTokens *string `json:"httpTokens,omitempty" tf:"http_tokens,omitempty"`
}

func (*MetadataOptionsParameters) DeepCopy

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

func (*MetadataOptionsParameters) DeepCopyInto

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

type MetricDataQueriesInitParameters added in v0.38.0

type MetricDataQueriesInitParameters struct {

	// Math expression used on the returned metric. You must specify either expression or metric_stat, but not both.
	Expression *string `json:"expression,omitempty" tf:"expression,omitempty"`

	// Short name for the metric used in predictive scaling policy.
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// Human-readable label for this metric or expression.
	Label *string `json:"label,omitempty" tf:"label,omitempty"`

	// Structure that defines CloudWatch metric to be used in predictive scaling policy. You must specify either expression or metric_stat, but not both.
	MetricStat []MetricStatInitParameters `json:"metricStat,omitempty" tf:"metric_stat,omitempty"`

	// Boolean that indicates whether to return the timestamps and raw data values of this metric, the default is true
	ReturnData *bool `json:"returnData,omitempty" tf:"return_data,omitempty"`
}

func (*MetricDataQueriesInitParameters) DeepCopy added in v0.38.0

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

func (*MetricDataQueriesInitParameters) DeepCopyInto added in v0.38.0

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

type MetricDataQueriesMetricStatInitParameters added in v0.38.0

type MetricDataQueriesMetricStatInitParameters struct {

	// Structure that defines the CloudWatch metric to return, including the metric name, namespace, and dimensions.
	Metric []MetricStatMetricInitParameters `json:"metric,omitempty" tf:"metric,omitempty"`

	// Statistic of the metrics to return.
	Stat *string `json:"stat,omitempty" tf:"stat,omitempty"`

	// Unit of the metric.
	Unit *string `json:"unit,omitempty" tf:"unit,omitempty"`
}

func (*MetricDataQueriesMetricStatInitParameters) DeepCopy added in v0.38.0

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

func (*MetricDataQueriesMetricStatInitParameters) DeepCopyInto added in v0.38.0

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

type MetricDataQueriesMetricStatMetricInitParameters added in v0.38.0

type MetricDataQueriesMetricStatMetricInitParameters struct {

	// Dimensions of the metric.
	Dimensions []MetricStatMetricDimensionsInitParameters `json:"dimensions,omitempty" tf:"dimensions,omitempty"`

	// Name of the metric.
	MetricName *string `json:"metricName,omitempty" tf:"metric_name,omitempty"`

	// Namespace of the metric.
	Namespace *string `json:"namespace,omitempty" tf:"namespace,omitempty"`
}

func (*MetricDataQueriesMetricStatMetricInitParameters) DeepCopy added in v0.38.0

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

func (*MetricDataQueriesMetricStatMetricInitParameters) DeepCopyInto added in v0.38.0

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

type MetricDataQueriesMetricStatMetricObservation added in v0.23.0

type MetricDataQueriesMetricStatMetricObservation struct {

	// Dimensions of the metric.
	Dimensions []MetricStatMetricDimensionsObservation `json:"dimensions,omitempty" tf:"dimensions,omitempty"`

	// Name of the metric.
	MetricName *string `json:"metricName,omitempty" tf:"metric_name,omitempty"`

	// Namespace of the metric.
	Namespace *string `json:"namespace,omitempty" tf:"namespace,omitempty"`
}

func (*MetricDataQueriesMetricStatMetricObservation) DeepCopy added in v0.23.0

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

func (*MetricDataQueriesMetricStatMetricObservation) DeepCopyInto added in v0.23.0

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

type MetricDataQueriesMetricStatMetricParameters added in v0.23.0

type MetricDataQueriesMetricStatMetricParameters struct {

	// Dimensions of the metric.
	// +kubebuilder:validation:Optional
	Dimensions []MetricStatMetricDimensionsParameters `json:"dimensions,omitempty" tf:"dimensions,omitempty"`

	// Name of the metric.
	// +kubebuilder:validation:Optional
	MetricName *string `json:"metricName" tf:"metric_name,omitempty"`

	// Namespace of the metric.
	// +kubebuilder:validation:Optional
	Namespace *string `json:"namespace" tf:"namespace,omitempty"`
}

func (*MetricDataQueriesMetricStatMetricParameters) DeepCopy added in v0.23.0

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

func (*MetricDataQueriesMetricStatMetricParameters) DeepCopyInto added in v0.23.0

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

type MetricDataQueriesMetricStatObservation added in v0.23.0

type MetricDataQueriesMetricStatObservation struct {

	// Structure that defines the CloudWatch metric to return, including the metric name, namespace, and dimensions.
	Metric []MetricStatMetricObservation `json:"metric,omitempty" tf:"metric,omitempty"`

	// Statistic of the metrics to return.
	Stat *string `json:"stat,omitempty" tf:"stat,omitempty"`

	// Unit of the metric.
	Unit *string `json:"unit,omitempty" tf:"unit,omitempty"`
}

func (*MetricDataQueriesMetricStatObservation) DeepCopy added in v0.23.0

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

func (*MetricDataQueriesMetricStatObservation) DeepCopyInto added in v0.23.0

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

type MetricDataQueriesMetricStatParameters added in v0.23.0

type MetricDataQueriesMetricStatParameters struct {

	// Structure that defines the CloudWatch metric to return, including the metric name, namespace, and dimensions.
	// +kubebuilder:validation:Optional
	Metric []MetricStatMetricParameters `json:"metric" tf:"metric,omitempty"`

	// Statistic of the metrics to return.
	// +kubebuilder:validation:Optional
	Stat *string `json:"stat" tf:"stat,omitempty"`

	// Unit of the metric.
	// +kubebuilder:validation:Optional
	Unit *string `json:"unit,omitempty" tf:"unit,omitempty"`
}

func (*MetricDataQueriesMetricStatParameters) DeepCopy added in v0.23.0

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

func (*MetricDataQueriesMetricStatParameters) DeepCopyInto added in v0.23.0

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

type MetricDataQueriesObservation added in v0.23.0

type MetricDataQueriesObservation struct {

	// Math expression used on the returned metric. You must specify either expression or metric_stat, but not both.
	Expression *string `json:"expression,omitempty" tf:"expression,omitempty"`

	// Short name for the metric used in predictive scaling policy.
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// Human-readable label for this metric or expression.
	Label *string `json:"label,omitempty" tf:"label,omitempty"`

	// Structure that defines CloudWatch metric to be used in predictive scaling policy. You must specify either expression or metric_stat, but not both.
	MetricStat []MetricStatObservation `json:"metricStat,omitempty" tf:"metric_stat,omitempty"`

	// Boolean that indicates whether to return the timestamps and raw data values of this metric, the default is true
	ReturnData *bool `json:"returnData,omitempty" tf:"return_data,omitempty"`
}

func (*MetricDataQueriesObservation) DeepCopy added in v0.23.0

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

func (*MetricDataQueriesObservation) DeepCopyInto added in v0.23.0

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

type MetricDataQueriesParameters added in v0.23.0

type MetricDataQueriesParameters struct {

	// Math expression used on the returned metric. You must specify either expression or metric_stat, but not both.
	// +kubebuilder:validation:Optional
	Expression *string `json:"expression,omitempty" tf:"expression,omitempty"`

	// Short name for the metric used in predictive scaling policy.
	// +kubebuilder:validation:Optional
	ID *string `json:"id" tf:"id,omitempty"`

	// Human-readable label for this metric or expression.
	// +kubebuilder:validation:Optional
	Label *string `json:"label,omitempty" tf:"label,omitempty"`

	// Structure that defines CloudWatch metric to be used in predictive scaling policy. You must specify either expression or metric_stat, but not both.
	// +kubebuilder:validation:Optional
	MetricStat []MetricStatParameters `json:"metricStat,omitempty" tf:"metric_stat,omitempty"`

	// Boolean that indicates whether to return the timestamps and raw data values of this metric, the default is true
	// +kubebuilder:validation:Optional
	ReturnData *bool `json:"returnData,omitempty" tf:"return_data,omitempty"`
}

func (*MetricDataQueriesParameters) DeepCopy added in v0.23.0

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

func (*MetricDataQueriesParameters) DeepCopyInto added in v0.23.0

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

type MetricDimensionInitParameters added in v0.38.0

type MetricDimensionInitParameters struct {

	// Name of the policy.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// Value of the dimension.
	Value *string `json:"value,omitempty" tf:"value,omitempty"`
}

func (*MetricDimensionInitParameters) DeepCopy added in v0.38.0

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

func (*MetricDimensionInitParameters) DeepCopyInto added in v0.38.0

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

type MetricDimensionObservation added in v0.23.0

type MetricDimensionObservation struct {

	// Name of the policy.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// Value of the dimension.
	Value *string `json:"value,omitempty" tf:"value,omitempty"`
}

func (*MetricDimensionObservation) DeepCopy added in v0.23.0

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

func (*MetricDimensionObservation) DeepCopyInto added in v0.23.0

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

type MetricDimensionParameters added in v0.23.0

type MetricDimensionParameters struct {

	// Name of the policy.
	// +kubebuilder:validation:Optional
	Name *string `json:"name" tf:"name,omitempty"`

	// Value of the dimension.
	// +kubebuilder:validation:Optional
	Value *string `json:"value" tf:"value,omitempty"`
}

func (*MetricDimensionParameters) DeepCopy added in v0.23.0

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

func (*MetricDimensionParameters) DeepCopyInto added in v0.23.0

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

type MetricDimensionsInitParameters added in v0.38.0

type MetricDimensionsInitParameters struct {

	// Name of the policy.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// Value of the dimension.
	Value *string `json:"value,omitempty" tf:"value,omitempty"`
}

func (*MetricDimensionsInitParameters) DeepCopy added in v0.38.0

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

func (*MetricDimensionsInitParameters) DeepCopyInto added in v0.38.0

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

type MetricDimensionsObservation added in v0.23.0

type MetricDimensionsObservation struct {

	// Name of the policy.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// Value of the dimension.
	Value *string `json:"value,omitempty" tf:"value,omitempty"`
}

func (*MetricDimensionsObservation) DeepCopy added in v0.23.0

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

func (*MetricDimensionsObservation) DeepCopyInto added in v0.23.0

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

type MetricDimensionsParameters added in v0.23.0

type MetricDimensionsParameters struct {

	// Name of the policy.
	// +kubebuilder:validation:Optional
	Name *string `json:"name" tf:"name,omitempty"`

	// Value of the dimension.
	// +kubebuilder:validation:Optional
	Value *string `json:"value" tf:"value,omitempty"`
}

func (*MetricDimensionsParameters) DeepCopy added in v0.23.0

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

func (*MetricDimensionsParameters) DeepCopyInto added in v0.23.0

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

type MetricInitParameters added in v0.38.0

type MetricInitParameters struct {

	// Dimensions of the metric.
	Dimensions []DimensionsInitParameters `json:"dimensions,omitempty" tf:"dimensions,omitempty"`

	// Name of the metric.
	MetricName *string `json:"metricName,omitempty" tf:"metric_name,omitempty"`

	// Namespace of the metric.
	Namespace *string `json:"namespace,omitempty" tf:"namespace,omitempty"`
}

func (*MetricInitParameters) DeepCopy added in v0.38.0

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

func (*MetricInitParameters) DeepCopyInto added in v0.38.0

func (in *MetricInitParameters) DeepCopyInto(out *MetricInitParameters)

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

type MetricObservation added in v0.23.0

type MetricObservation struct {

	// Dimensions of the metric.
	Dimensions []DimensionsObservation `json:"dimensions,omitempty" tf:"dimensions,omitempty"`

	// Name of the metric.
	MetricName *string `json:"metricName,omitempty" tf:"metric_name,omitempty"`

	// Namespace of the metric.
	Namespace *string `json:"namespace,omitempty" tf:"namespace,omitempty"`
}

func (*MetricObservation) DeepCopy added in v0.23.0

func (in *MetricObservation) DeepCopy() *MetricObservation

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

func (*MetricObservation) DeepCopyInto added in v0.23.0

func (in *MetricObservation) DeepCopyInto(out *MetricObservation)

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

type MetricParameters added in v0.23.0

type MetricParameters struct {

	// Dimensions of the metric.
	// +kubebuilder:validation:Optional
	Dimensions []DimensionsParameters `json:"dimensions,omitempty" tf:"dimensions,omitempty"`

	// Name of the metric.
	// +kubebuilder:validation:Optional
	MetricName *string `json:"metricName" tf:"metric_name,omitempty"`

	// Namespace of the metric.
	// +kubebuilder:validation:Optional
	Namespace *string `json:"namespace" tf:"namespace,omitempty"`
}

func (*MetricParameters) DeepCopy added in v0.23.0

func (in *MetricParameters) DeepCopy() *MetricParameters

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

func (*MetricParameters) DeepCopyInto added in v0.23.0

func (in *MetricParameters) DeepCopyInto(out *MetricParameters)

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

type MetricSpecificationInitParameters added in v0.38.0

type MetricSpecificationInitParameters struct {

	// Customized capacity metric specification. The field is only valid when you use customized_load_metric_specification
	CustomizedCapacityMetricSpecification []CustomizedCapacityMetricSpecificationInitParameters `json:"customizedCapacityMetricSpecification,omitempty" tf:"customized_capacity_metric_specification,omitempty"`

	// Customized load metric specification.
	CustomizedLoadMetricSpecification []CustomizedLoadMetricSpecificationInitParameters `json:"customizedLoadMetricSpecification,omitempty" tf:"customized_load_metric_specification,omitempty"`

	// Customized scaling metric specification.
	CustomizedScalingMetricSpecification []CustomizedScalingMetricSpecificationInitParameters `json:"customizedScalingMetricSpecification,omitempty" tf:"customized_scaling_metric_specification,omitempty"`

	// Predefined load metric specification.
	PredefinedLoadMetricSpecification []PredefinedLoadMetricSpecificationInitParameters `json:"predefinedLoadMetricSpecification,omitempty" tf:"predefined_load_metric_specification,omitempty"`

	// Metric pair specification from which Amazon EC2 Auto Scaling determines the appropriate scaling metric and load metric to use.
	PredefinedMetricPairSpecification []PredefinedMetricPairSpecificationInitParameters `json:"predefinedMetricPairSpecification,omitempty" tf:"predefined_metric_pair_specification,omitempty"`

	// Predefined scaling metric specification.
	PredefinedScalingMetricSpecification []PredefinedScalingMetricSpecificationInitParameters `json:"predefinedScalingMetricSpecification,omitempty" tf:"predefined_scaling_metric_specification,omitempty"`

	// Target value for the metric.
	TargetValue *float64 `json:"targetValue,omitempty" tf:"target_value,omitempty"`
}

func (*MetricSpecificationInitParameters) DeepCopy added in v0.38.0

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

func (*MetricSpecificationInitParameters) DeepCopyInto added in v0.38.0

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

type MetricSpecificationObservation added in v0.23.0

type MetricSpecificationObservation struct {

	// Customized capacity metric specification. The field is only valid when you use customized_load_metric_specification
	CustomizedCapacityMetricSpecification []CustomizedCapacityMetricSpecificationObservation `json:"customizedCapacityMetricSpecification,omitempty" tf:"customized_capacity_metric_specification,omitempty"`

	// Customized load metric specification.
	CustomizedLoadMetricSpecification []CustomizedLoadMetricSpecificationObservation `json:"customizedLoadMetricSpecification,omitempty" tf:"customized_load_metric_specification,omitempty"`

	// Customized scaling metric specification.
	CustomizedScalingMetricSpecification []CustomizedScalingMetricSpecificationObservation `json:"customizedScalingMetricSpecification,omitempty" tf:"customized_scaling_metric_specification,omitempty"`

	// Predefined load metric specification.
	PredefinedLoadMetricSpecification []PredefinedLoadMetricSpecificationObservation `json:"predefinedLoadMetricSpecification,omitempty" tf:"predefined_load_metric_specification,omitempty"`

	// Metric pair specification from which Amazon EC2 Auto Scaling determines the appropriate scaling metric and load metric to use.
	PredefinedMetricPairSpecification []PredefinedMetricPairSpecificationObservation `json:"predefinedMetricPairSpecification,omitempty" tf:"predefined_metric_pair_specification,omitempty"`

	// Predefined scaling metric specification.
	PredefinedScalingMetricSpecification []PredefinedScalingMetricSpecificationObservation `json:"predefinedScalingMetricSpecification,omitempty" tf:"predefined_scaling_metric_specification,omitempty"`

	// Target value for the metric.
	TargetValue *float64 `json:"targetValue,omitempty" tf:"target_value,omitempty"`
}

func (*MetricSpecificationObservation) DeepCopy added in v0.23.0

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

func (*MetricSpecificationObservation) DeepCopyInto added in v0.23.0

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

type MetricSpecificationParameters added in v0.23.0

type MetricSpecificationParameters struct {

	// Customized capacity metric specification. The field is only valid when you use customized_load_metric_specification
	// +kubebuilder:validation:Optional
	CustomizedCapacityMetricSpecification []CustomizedCapacityMetricSpecificationParameters `json:"customizedCapacityMetricSpecification,omitempty" tf:"customized_capacity_metric_specification,omitempty"`

	// Customized load metric specification.
	// +kubebuilder:validation:Optional
	CustomizedLoadMetricSpecification []CustomizedLoadMetricSpecificationParameters `json:"customizedLoadMetricSpecification,omitempty" tf:"customized_load_metric_specification,omitempty"`

	// Customized scaling metric specification.
	// +kubebuilder:validation:Optional
	CustomizedScalingMetricSpecification []CustomizedScalingMetricSpecificationParameters `json:"customizedScalingMetricSpecification,omitempty" tf:"customized_scaling_metric_specification,omitempty"`

	// Predefined load metric specification.
	// +kubebuilder:validation:Optional
	PredefinedLoadMetricSpecification []PredefinedLoadMetricSpecificationParameters `json:"predefinedLoadMetricSpecification,omitempty" tf:"predefined_load_metric_specification,omitempty"`

	// Metric pair specification from which Amazon EC2 Auto Scaling determines the appropriate scaling metric and load metric to use.
	// +kubebuilder:validation:Optional
	PredefinedMetricPairSpecification []PredefinedMetricPairSpecificationParameters `json:"predefinedMetricPairSpecification,omitempty" tf:"predefined_metric_pair_specification,omitempty"`

	// Predefined scaling metric specification.
	// +kubebuilder:validation:Optional
	PredefinedScalingMetricSpecification []PredefinedScalingMetricSpecificationParameters `json:"predefinedScalingMetricSpecification,omitempty" tf:"predefined_scaling_metric_specification,omitempty"`

	// Target value for the metric.
	// +kubebuilder:validation:Optional
	TargetValue *float64 `json:"targetValue" tf:"target_value,omitempty"`
}

func (*MetricSpecificationParameters) DeepCopy added in v0.23.0

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

func (*MetricSpecificationParameters) DeepCopyInto added in v0.23.0

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

type MetricStatInitParameters added in v0.38.0

type MetricStatInitParameters struct {

	// Structure that defines the CloudWatch metric to return, including the metric name, namespace, and dimensions.
	Metric []MetricInitParameters `json:"metric,omitempty" tf:"metric,omitempty"`

	// Statistic of the metrics to return.
	Stat *string `json:"stat,omitempty" tf:"stat,omitempty"`

	// Unit of the metric.
	Unit *string `json:"unit,omitempty" tf:"unit,omitempty"`
}

func (*MetricStatInitParameters) DeepCopy added in v0.38.0

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

func (*MetricStatInitParameters) DeepCopyInto added in v0.38.0

func (in *MetricStatInitParameters) DeepCopyInto(out *MetricStatInitParameters)

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

type MetricStatMetricDimensionsInitParameters added in v0.38.0

type MetricStatMetricDimensionsInitParameters struct {

	// Name of the policy.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// Value of the dimension.
	Value *string `json:"value,omitempty" tf:"value,omitempty"`
}

func (*MetricStatMetricDimensionsInitParameters) DeepCopy added in v0.38.0

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

func (*MetricStatMetricDimensionsInitParameters) DeepCopyInto added in v0.38.0

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

type MetricStatMetricDimensionsObservation added in v0.23.0

type MetricStatMetricDimensionsObservation struct {

	// Name of the policy.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// Value of the dimension.
	Value *string `json:"value,omitempty" tf:"value,omitempty"`
}

func (*MetricStatMetricDimensionsObservation) DeepCopy added in v0.23.0

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

func (*MetricStatMetricDimensionsObservation) DeepCopyInto added in v0.23.0

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

type MetricStatMetricDimensionsParameters added in v0.23.0

type MetricStatMetricDimensionsParameters struct {

	// Name of the policy.
	// +kubebuilder:validation:Optional
	Name *string `json:"name" tf:"name,omitempty"`

	// Value of the dimension.
	// +kubebuilder:validation:Optional
	Value *string `json:"value" tf:"value,omitempty"`
}

func (*MetricStatMetricDimensionsParameters) DeepCopy added in v0.23.0

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

func (*MetricStatMetricDimensionsParameters) DeepCopyInto added in v0.23.0

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

type MetricStatMetricInitParameters added in v0.38.0

type MetricStatMetricInitParameters struct {

	// Dimensions of the metric.
	Dimensions []MetricDimensionsInitParameters `json:"dimensions,omitempty" tf:"dimensions,omitempty"`

	// Name of the metric.
	MetricName *string `json:"metricName,omitempty" tf:"metric_name,omitempty"`

	// Namespace of the metric.
	Namespace *string `json:"namespace,omitempty" tf:"namespace,omitempty"`
}

func (*MetricStatMetricInitParameters) DeepCopy added in v0.38.0

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

func (*MetricStatMetricInitParameters) DeepCopyInto added in v0.38.0

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

type MetricStatMetricObservation added in v0.23.0

type MetricStatMetricObservation struct {

	// Dimensions of the metric.
	Dimensions []MetricDimensionsObservation `json:"dimensions,omitempty" tf:"dimensions,omitempty"`

	// Name of the metric.
	MetricName *string `json:"metricName,omitempty" tf:"metric_name,omitempty"`

	// Namespace of the metric.
	Namespace *string `json:"namespace,omitempty" tf:"namespace,omitempty"`
}

func (*MetricStatMetricObservation) DeepCopy added in v0.23.0

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

func (*MetricStatMetricObservation) DeepCopyInto added in v0.23.0

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

type MetricStatMetricParameters added in v0.23.0

type MetricStatMetricParameters struct {

	// Dimensions of the metric.
	// +kubebuilder:validation:Optional
	Dimensions []MetricDimensionsParameters `json:"dimensions,omitempty" tf:"dimensions,omitempty"`

	// Name of the metric.
	// +kubebuilder:validation:Optional
	MetricName *string `json:"metricName" tf:"metric_name,omitempty"`

	// Namespace of the metric.
	// +kubebuilder:validation:Optional
	Namespace *string `json:"namespace" tf:"namespace,omitempty"`
}

func (*MetricStatMetricParameters) DeepCopy added in v0.23.0

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

func (*MetricStatMetricParameters) DeepCopyInto added in v0.23.0

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

type MetricStatObservation added in v0.23.0

type MetricStatObservation struct {

	// Structure that defines the CloudWatch metric to return, including the metric name, namespace, and dimensions.
	Metric []MetricObservation `json:"metric,omitempty" tf:"metric,omitempty"`

	// Statistic of the metrics to return.
	Stat *string `json:"stat,omitempty" tf:"stat,omitempty"`

	// Unit of the metric.
	Unit *string `json:"unit,omitempty" tf:"unit,omitempty"`
}

func (*MetricStatObservation) DeepCopy added in v0.23.0

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

func (*MetricStatObservation) DeepCopyInto added in v0.23.0

func (in *MetricStatObservation) DeepCopyInto(out *MetricStatObservation)

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

type MetricStatParameters added in v0.23.0

type MetricStatParameters struct {

	// Structure that defines the CloudWatch metric to return, including the metric name, namespace, and dimensions.
	// +kubebuilder:validation:Optional
	Metric []MetricParameters `json:"metric" tf:"metric,omitempty"`

	// Statistic of the metrics to return.
	// +kubebuilder:validation:Optional
	Stat *string `json:"stat" tf:"stat,omitempty"`

	// Unit of the metric.
	// +kubebuilder:validation:Optional
	Unit *string `json:"unit,omitempty" tf:"unit,omitempty"`
}

func (*MetricStatParameters) DeepCopy added in v0.23.0

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

func (*MetricStatParameters) DeepCopyInto added in v0.23.0

func (in *MetricStatParameters) DeepCopyInto(out *MetricStatParameters)

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

type MetricsInitParameters added in v0.38.0

type MetricsInitParameters struct {

	// Math expression used on the returned metric. You must specify either expression or metric_stat, but not both.
	Expression *string `json:"expression,omitempty" tf:"expression,omitempty"`

	// Short name for the metric used in predictive scaling policy.
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// Human-readable label for this metric or expression.
	Label *string `json:"label,omitempty" tf:"label,omitempty"`

	// Structure that defines CloudWatch metric to be used in predictive scaling policy. You must specify either expression or metric_stat, but not both.
	MetricStat []MetricsMetricStatInitParameters `json:"metricStat,omitempty" tf:"metric_stat,omitempty"`

	// Boolean that indicates whether to return the timestamps and raw data values of this metric, the default is true
	ReturnData *bool `json:"returnData,omitempty" tf:"return_data,omitempty"`
}

func (*MetricsInitParameters) DeepCopy added in v0.38.0

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

func (*MetricsInitParameters) DeepCopyInto added in v0.38.0

func (in *MetricsInitParameters) DeepCopyInto(out *MetricsInitParameters)

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

type MetricsMetricStatInitParameters added in v0.38.0

type MetricsMetricStatInitParameters struct {

	// Structure that defines the CloudWatch metric to return, including the metric name, namespace, and dimensions.
	Metric []MetricsMetricStatMetricInitParameters `json:"metric,omitempty" tf:"metric,omitempty"`

	// Statistic of the metrics to return.
	Stat *string `json:"stat,omitempty" tf:"stat,omitempty"`

	// Unit of the metric.
	Unit *string `json:"unit,omitempty" tf:"unit,omitempty"`
}

func (*MetricsMetricStatInitParameters) DeepCopy added in v0.38.0

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

func (*MetricsMetricStatInitParameters) DeepCopyInto added in v0.38.0

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

type MetricsMetricStatMetricDimensionsInitParameters added in v0.38.0

type MetricsMetricStatMetricDimensionsInitParameters struct {

	// Name of the policy.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// Value of the dimension.
	Value *string `json:"value,omitempty" tf:"value,omitempty"`
}

func (*MetricsMetricStatMetricDimensionsInitParameters) DeepCopy added in v0.38.0

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

func (*MetricsMetricStatMetricDimensionsInitParameters) DeepCopyInto added in v0.38.0

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

type MetricsMetricStatMetricDimensionsObservation added in v0.35.0

type MetricsMetricStatMetricDimensionsObservation struct {

	// Name of the policy.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// Value of the dimension.
	Value *string `json:"value,omitempty" tf:"value,omitempty"`
}

func (*MetricsMetricStatMetricDimensionsObservation) DeepCopy added in v0.35.0

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

func (*MetricsMetricStatMetricDimensionsObservation) DeepCopyInto added in v0.35.0

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

type MetricsMetricStatMetricDimensionsParameters added in v0.35.0

type MetricsMetricStatMetricDimensionsParameters struct {

	// Name of the policy.
	// +kubebuilder:validation:Optional
	Name *string `json:"name" tf:"name,omitempty"`

	// Value of the dimension.
	// +kubebuilder:validation:Optional
	Value *string `json:"value" tf:"value,omitempty"`
}

func (*MetricsMetricStatMetricDimensionsParameters) DeepCopy added in v0.35.0

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

func (*MetricsMetricStatMetricDimensionsParameters) DeepCopyInto added in v0.35.0

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

type MetricsMetricStatMetricInitParameters added in v0.38.0

type MetricsMetricStatMetricInitParameters struct {

	// Dimensions of the metric.
	Dimensions []MetricsMetricStatMetricDimensionsInitParameters `json:"dimensions,omitempty" tf:"dimensions,omitempty"`

	// Name of the metric.
	MetricName *string `json:"metricName,omitempty" tf:"metric_name,omitempty"`

	// Namespace of the metric.
	Namespace *string `json:"namespace,omitempty" tf:"namespace,omitempty"`
}

func (*MetricsMetricStatMetricInitParameters) DeepCopy added in v0.38.0

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

func (*MetricsMetricStatMetricInitParameters) DeepCopyInto added in v0.38.0

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

type MetricsMetricStatMetricObservation added in v0.35.0

type MetricsMetricStatMetricObservation struct {

	// Dimensions of the metric.
	Dimensions []MetricsMetricStatMetricDimensionsObservation `json:"dimensions,omitempty" tf:"dimensions,omitempty"`

	// Name of the metric.
	MetricName *string `json:"metricName,omitempty" tf:"metric_name,omitempty"`

	// Namespace of the metric.
	Namespace *string `json:"namespace,omitempty" tf:"namespace,omitempty"`
}

func (*MetricsMetricStatMetricObservation) DeepCopy added in v0.35.0

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

func (*MetricsMetricStatMetricObservation) DeepCopyInto added in v0.35.0

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

type MetricsMetricStatMetricParameters added in v0.35.0

type MetricsMetricStatMetricParameters struct {

	// Dimensions of the metric.
	// +kubebuilder:validation:Optional
	Dimensions []MetricsMetricStatMetricDimensionsParameters `json:"dimensions,omitempty" tf:"dimensions,omitempty"`

	// Name of the metric.
	// +kubebuilder:validation:Optional
	MetricName *string `json:"metricName" tf:"metric_name,omitempty"`

	// Namespace of the metric.
	// +kubebuilder:validation:Optional
	Namespace *string `json:"namespace" tf:"namespace,omitempty"`
}

func (*MetricsMetricStatMetricParameters) DeepCopy added in v0.35.0

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

func (*MetricsMetricStatMetricParameters) DeepCopyInto added in v0.35.0

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

type MetricsMetricStatObservation added in v0.35.0

type MetricsMetricStatObservation struct {

	// Structure that defines the CloudWatch metric to return, including the metric name, namespace, and dimensions.
	Metric []MetricsMetricStatMetricObservation `json:"metric,omitempty" tf:"metric,omitempty"`

	// Statistic of the metrics to return.
	Stat *string `json:"stat,omitempty" tf:"stat,omitempty"`

	// Unit of the metric.
	Unit *string `json:"unit,omitempty" tf:"unit,omitempty"`
}

func (*MetricsMetricStatObservation) DeepCopy added in v0.35.0

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

func (*MetricsMetricStatObservation) DeepCopyInto added in v0.35.0

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

type MetricsMetricStatParameters added in v0.35.0

type MetricsMetricStatParameters struct {

	// Structure that defines the CloudWatch metric to return, including the metric name, namespace, and dimensions.
	// +kubebuilder:validation:Optional
	Metric []MetricsMetricStatMetricParameters `json:"metric" tf:"metric,omitempty"`

	// Statistic of the metrics to return.
	// +kubebuilder:validation:Optional
	Stat *string `json:"stat" tf:"stat,omitempty"`

	// Unit of the metric.
	// +kubebuilder:validation:Optional
	Unit *string `json:"unit,omitempty" tf:"unit,omitempty"`
}

func (*MetricsMetricStatParameters) DeepCopy added in v0.35.0

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

func (*MetricsMetricStatParameters) DeepCopyInto added in v0.35.0

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

type MetricsObservation added in v0.35.0

type MetricsObservation struct {

	// Math expression used on the returned metric. You must specify either expression or metric_stat, but not both.
	Expression *string `json:"expression,omitempty" tf:"expression,omitempty"`

	// Short name for the metric used in predictive scaling policy.
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// Human-readable label for this metric or expression.
	Label *string `json:"label,omitempty" tf:"label,omitempty"`

	// Structure that defines CloudWatch metric to be used in predictive scaling policy. You must specify either expression or metric_stat, but not both.
	MetricStat []MetricsMetricStatObservation `json:"metricStat,omitempty" tf:"metric_stat,omitempty"`

	// Boolean that indicates whether to return the timestamps and raw data values of this metric, the default is true
	ReturnData *bool `json:"returnData,omitempty" tf:"return_data,omitempty"`
}

func (*MetricsObservation) DeepCopy added in v0.35.0

func (in *MetricsObservation) DeepCopy() *MetricsObservation

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

func (*MetricsObservation) DeepCopyInto added in v0.35.0

func (in *MetricsObservation) DeepCopyInto(out *MetricsObservation)

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

type MetricsParameters added in v0.35.0

type MetricsParameters struct {

	// Math expression used on the returned metric. You must specify either expression or metric_stat, but not both.
	// +kubebuilder:validation:Optional
	Expression *string `json:"expression,omitempty" tf:"expression,omitempty"`

	// Short name for the metric used in predictive scaling policy.
	// +kubebuilder:validation:Optional
	ID *string `json:"id" tf:"id,omitempty"`

	// Human-readable label for this metric or expression.
	// +kubebuilder:validation:Optional
	Label *string `json:"label,omitempty" tf:"label,omitempty"`

	// Structure that defines CloudWatch metric to be used in predictive scaling policy. You must specify either expression or metric_stat, but not both.
	// +kubebuilder:validation:Optional
	MetricStat []MetricsMetricStatParameters `json:"metricStat,omitempty" tf:"metric_stat,omitempty"`

	// Boolean that indicates whether to return the timestamps and raw data values of this metric, the default is true
	// +kubebuilder:validation:Optional
	ReturnData *bool `json:"returnData,omitempty" tf:"return_data,omitempty"`
}

func (*MetricsParameters) DeepCopy added in v0.35.0

func (in *MetricsParameters) DeepCopy() *MetricsParameters

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

func (*MetricsParameters) DeepCopyInto added in v0.35.0

func (in *MetricsParameters) DeepCopyInto(out *MetricsParameters)

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

type MixedInstancesPolicyInitParameters added in v0.38.0

type MixedInstancesPolicyInitParameters struct {

	// Nested argument containing settings on how to mix on-demand and Spot instances in the Auto Scaling group. Defined below.
	InstancesDistribution []InstancesDistributionInitParameters `json:"instancesDistribution,omitempty" tf:"instances_distribution,omitempty"`

	// Nested argument containing launch template settings along with the overrides to specify multiple instance types and weights. Defined below.
	LaunchTemplate []MixedInstancesPolicyLaunchTemplateInitParameters `json:"launchTemplate,omitempty" tf:"launch_template,omitempty"`
}

func (*MixedInstancesPolicyInitParameters) DeepCopy added in v0.38.0

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

func (*MixedInstancesPolicyInitParameters) DeepCopyInto added in v0.38.0

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

type MixedInstancesPolicyLaunchTemplateInitParameters added in v0.38.0

type MixedInstancesPolicyLaunchTemplateInitParameters struct {

	// Nested argument defines the Launch Template. Defined below.
	LaunchTemplateSpecification []LaunchTemplateSpecificationInitParameters `json:"launchTemplateSpecification,omitempty" tf:"launch_template_specification,omitempty"`

	// List of nested arguments provides the ability to specify multiple instance types. This will override the same parameter in the launch template. For on-demand instances, Auto Scaling considers the order of preference of instance types to launch based on the order specified in the overrides list. Defined below.
	Override []OverrideInitParameters `json:"override,omitempty" tf:"override,omitempty"`
}

func (*MixedInstancesPolicyLaunchTemplateInitParameters) DeepCopy added in v0.38.0

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

func (*MixedInstancesPolicyLaunchTemplateInitParameters) DeepCopyInto added in v0.38.0

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

type MixedInstancesPolicyLaunchTemplateObservation

type MixedInstancesPolicyLaunchTemplateObservation struct {

	// Nested argument defines the Launch Template. Defined below.
	LaunchTemplateSpecification []LaunchTemplateSpecificationObservation `json:"launchTemplateSpecification,omitempty" tf:"launch_template_specification,omitempty"`

	// List of nested arguments provides the ability to specify multiple instance types. This will override the same parameter in the launch template. For on-demand instances, Auto Scaling considers the order of preference of instance types to launch based on the order specified in the overrides list. Defined below.
	Override []OverrideObservation `json:"override,omitempty" tf:"override,omitempty"`
}

func (*MixedInstancesPolicyLaunchTemplateObservation) DeepCopy

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

func (*MixedInstancesPolicyLaunchTemplateObservation) DeepCopyInto

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

type MixedInstancesPolicyLaunchTemplateParameters

type MixedInstancesPolicyLaunchTemplateParameters struct {

	// Nested argument defines the Launch Template. Defined below.
	// +kubebuilder:validation:Optional
	LaunchTemplateSpecification []LaunchTemplateSpecificationParameters `json:"launchTemplateSpecification" tf:"launch_template_specification,omitempty"`

	// List of nested arguments provides the ability to specify multiple instance types. This will override the same parameter in the launch template. For on-demand instances, Auto Scaling considers the order of preference of instance types to launch based on the order specified in the overrides list. Defined below.
	// +kubebuilder:validation:Optional
	Override []OverrideParameters `json:"override,omitempty" tf:"override,omitempty"`
}

func (*MixedInstancesPolicyLaunchTemplateParameters) DeepCopy

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

func (*MixedInstancesPolicyLaunchTemplateParameters) DeepCopyInto

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

type MixedInstancesPolicyObservation

type MixedInstancesPolicyObservation struct {

	// Nested argument containing settings on how to mix on-demand and Spot instances in the Auto Scaling group. Defined below.
	InstancesDistribution []InstancesDistributionObservation `json:"instancesDistribution,omitempty" tf:"instances_distribution,omitempty"`

	// Nested argument containing launch template settings along with the overrides to specify multiple instance types and weights. Defined below.
	LaunchTemplate []MixedInstancesPolicyLaunchTemplateObservation `json:"launchTemplate,omitempty" tf:"launch_template,omitempty"`
}

func (*MixedInstancesPolicyObservation) DeepCopy

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

func (*MixedInstancesPolicyObservation) DeepCopyInto

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

type MixedInstancesPolicyParameters

type MixedInstancesPolicyParameters struct {

	// Nested argument containing settings on how to mix on-demand and Spot instances in the Auto Scaling group. Defined below.
	// +kubebuilder:validation:Optional
	InstancesDistribution []InstancesDistributionParameters `json:"instancesDistribution,omitempty" tf:"instances_distribution,omitempty"`

	// Nested argument containing launch template settings along with the overrides to specify multiple instance types and weights. Defined below.
	// +kubebuilder:validation:Optional
	LaunchTemplate []MixedInstancesPolicyLaunchTemplateParameters `json:"launchTemplate" tf:"launch_template,omitempty"`
}

func (*MixedInstancesPolicyParameters) DeepCopy

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

func (*MixedInstancesPolicyParameters) DeepCopyInto

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

type NetworkBandwidthGbpsInitParameters added in v0.38.0

type NetworkBandwidthGbpsInitParameters struct {

	// Maximum.
	Max *float64 `json:"max,omitempty" tf:"max,omitempty"`

	// Minimum.
	Min *float64 `json:"min,omitempty" tf:"min,omitempty"`
}

func (*NetworkBandwidthGbpsInitParameters) DeepCopy added in v0.38.0

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

func (*NetworkBandwidthGbpsInitParameters) DeepCopyInto added in v0.38.0

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

type NetworkBandwidthGbpsObservation added in v0.35.0

type NetworkBandwidthGbpsObservation struct {

	// Maximum.
	Max *float64 `json:"max,omitempty" tf:"max,omitempty"`

	// Minimum.
	Min *float64 `json:"min,omitempty" tf:"min,omitempty"`
}

func (*NetworkBandwidthGbpsObservation) DeepCopy added in v0.35.0

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

func (*NetworkBandwidthGbpsObservation) DeepCopyInto added in v0.35.0

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

type NetworkBandwidthGbpsParameters added in v0.35.0

type NetworkBandwidthGbpsParameters struct {

	// Maximum.
	// +kubebuilder:validation:Optional
	Max *float64 `json:"max,omitempty" tf:"max,omitempty"`

	// Minimum.
	// +kubebuilder:validation:Optional
	Min *float64 `json:"min,omitempty" tf:"min,omitempty"`
}

func (*NetworkBandwidthGbpsParameters) DeepCopy added in v0.35.0

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

func (*NetworkBandwidthGbpsParameters) DeepCopyInto added in v0.35.0

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

type NetworkInterfaceCountInitParameters added in v0.38.0

type NetworkInterfaceCountInitParameters struct {

	// Maximum.
	Max *float64 `json:"max,omitempty" tf:"max,omitempty"`

	// Minimum.
	Min *float64 `json:"min,omitempty" tf:"min,omitempty"`
}

func (*NetworkInterfaceCountInitParameters) DeepCopy added in v0.38.0

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

func (*NetworkInterfaceCountInitParameters) DeepCopyInto added in v0.38.0

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

type NetworkInterfaceCountObservation added in v0.29.0

type NetworkInterfaceCountObservation struct {

	// Maximum.
	Max *float64 `json:"max,omitempty" tf:"max,omitempty"`

	// Minimum.
	Min *float64 `json:"min,omitempty" tf:"min,omitempty"`
}

func (*NetworkInterfaceCountObservation) DeepCopy added in v0.29.0

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

func (*NetworkInterfaceCountObservation) DeepCopyInto added in v0.29.0

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

type NetworkInterfaceCountParameters added in v0.29.0

type NetworkInterfaceCountParameters struct {

	// Maximum.
	// +kubebuilder:validation:Optional
	Max *float64 `json:"max,omitempty" tf:"max,omitempty"`

	// Minimum.
	// +kubebuilder:validation:Optional
	Min *float64 `json:"min,omitempty" tf:"min,omitempty"`
}

func (*NetworkInterfaceCountParameters) DeepCopy added in v0.29.0

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

func (*NetworkInterfaceCountParameters) DeepCopyInto added in v0.29.0

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

type Notification added in v0.23.0

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.groupNames) || (has(self.initProvider) && has(self.initProvider.groupNames))",message="spec.forProvider.groupNames is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.notifications) || (has(self.initProvider) && has(self.initProvider.notifications))",message="spec.forProvider.notifications is a required parameter"
	Spec   NotificationSpec   `json:"spec"`
	Status NotificationStatus `json:"status,omitempty"`
}

Notification is the Schema for the Notifications API. Provides an AutoScaling Group with Notification support +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,aws}

func (*Notification) DeepCopy added in v0.23.0

func (in *Notification) DeepCopy() *Notification

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

func (*Notification) DeepCopyInto added in v0.23.0

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 added in v0.23.0

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

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

func (*Notification) GetCondition added in v0.23.0

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

GetCondition of this Notification.

func (*Notification) GetConnectionDetailsMapping added in v0.23.0

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

GetConnectionDetailsMapping for this Notification

func (*Notification) GetDeletionPolicy added in v0.23.0

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

GetDeletionPolicy of this Notification.

func (*Notification) GetID added in v0.23.0

func (tr *Notification) GetID() string

GetID returns ID of underlying Terraform resource of this Notification

func (*Notification) GetInitParameters added in v0.38.0

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

GetInitParameters of this Notification

func (*Notification) GetManagementPolicies added in v0.38.0

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

GetManagementPolicies of this Notification.

func (*Notification) GetMergedParameters added in v0.44.0

func (tr *Notification) GetMergedParameters(shouldMergeInitProvider bool) (map[string]any, error)

GetInitParameters of this Notification

func (*Notification) GetObservation added in v0.23.0

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

GetObservation of this Notification

func (*Notification) GetParameters added in v0.23.0

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

GetParameters of this Notification

func (*Notification) GetProviderConfigReference added in v0.23.0

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

GetProviderConfigReference of this Notification.

func (*Notification) GetPublishConnectionDetailsTo added in v0.23.0

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

GetPublishConnectionDetailsTo of this Notification.

func (*Notification) GetTerraformResourceType added in v0.23.0

func (mg *Notification) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this Notification

func (*Notification) GetTerraformSchemaVersion added in v0.23.0

func (tr *Notification) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*Notification) GetWriteConnectionSecretToReference added in v0.23.0

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

GetWriteConnectionSecretToReference of this Notification.

func (*Notification) LateInitialize added in v0.23.0

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 added in v0.23.0

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

ResolveReferences of this Notification.

func (*Notification) SetConditions added in v0.23.0

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

SetConditions of this Notification.

func (*Notification) SetDeletionPolicy added in v0.23.0

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

SetDeletionPolicy of this Notification.

func (*Notification) SetManagementPolicies added in v0.38.0

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

SetManagementPolicies of this Notification.

func (*Notification) SetObservation added in v0.23.0

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

SetObservation for this Notification

func (*Notification) SetParameters added in v0.23.0

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

SetParameters for this Notification

func (*Notification) SetProviderConfigReference added in v0.23.0

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

SetProviderConfigReference of this Notification.

func (*Notification) SetPublishConnectionDetailsTo added in v0.23.0

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

SetPublishConnectionDetailsTo of this Notification.

func (*Notification) SetWriteConnectionSecretToReference added in v0.23.0

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

SetWriteConnectionSecretToReference of this Notification.

type NotificationInitParameters added in v0.38.0

type NotificationInitParameters struct {

	// List of AutoScaling Group Names
	GroupNames []*string `json:"groupNames,omitempty" tf:"group_names,omitempty"`

	// List of Notification Types that trigger
	// notifications. Acceptable values are documented in the AWS documentation here
	Notifications []*string `json:"notifications,omitempty" tf:"notifications,omitempty"`
}

func (*NotificationInitParameters) DeepCopy added in v0.38.0

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

func (*NotificationInitParameters) DeepCopyInto added in v0.38.0

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

type NotificationList added in v0.23.0

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 added in v0.23.0

func (in *NotificationList) DeepCopy() *NotificationList

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

func (*NotificationList) DeepCopyInto added in v0.23.0

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 added in v0.23.0

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

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

func (*NotificationList) GetItems added in v0.23.0

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

GetItems of this NotificationList.

type NotificationObservation added in v0.23.0

type NotificationObservation struct {

	// List of AutoScaling Group Names
	GroupNames []*string `json:"groupNames,omitempty" tf:"group_names,omitempty"`

	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// List of Notification Types that trigger
	// notifications. Acceptable values are documented in the AWS documentation here
	Notifications []*string `json:"notifications,omitempty" tf:"notifications,omitempty"`

	// Topic ARN for notifications to be sent through
	TopicArn *string `json:"topicArn,omitempty" tf:"topic_arn,omitempty"`
}

func (*NotificationObservation) DeepCopy added in v0.23.0

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

func (*NotificationObservation) DeepCopyInto added in v0.23.0

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 added in v0.23.0

type NotificationParameters struct {

	// List of AutoScaling Group Names
	// +kubebuilder:validation:Optional
	GroupNames []*string `json:"groupNames,omitempty" tf:"group_names,omitempty"`

	// List of Notification Types that trigger
	// notifications. Acceptable values are documented in the AWS documentation here
	// +kubebuilder:validation:Optional
	Notifications []*string `json:"notifications,omitempty" tf:"notifications,omitempty"`

	// Region is the region you'd like your resource to be created in.
	// +upjet:crd:field:TFTag=-
	// +kubebuilder:validation:Required
	Region *string `json:"region" tf:"-"`

	// Topic ARN for notifications to be sent through
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/sns/v1beta1.Topic
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("arn",true)
	// +kubebuilder:validation:Optional
	TopicArn *string `json:"topicArn,omitempty" tf:"topic_arn,omitempty"`

	// Reference to a Topic in sns to populate topicArn.
	// +kubebuilder:validation:Optional
	TopicArnRef *v1.Reference `json:"topicArnRef,omitempty" tf:"-"`

	// Selector for a Topic in sns to populate topicArn.
	// +kubebuilder:validation:Optional
	TopicArnSelector *v1.Selector `json:"topicArnSelector,omitempty" tf:"-"`
}

func (*NotificationParameters) DeepCopy added in v0.23.0

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

func (*NotificationParameters) DeepCopyInto added in v0.23.0

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 added in v0.23.0

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 added in v0.23.0

func (in *NotificationSpec) DeepCopy() *NotificationSpec

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

func (*NotificationSpec) DeepCopyInto added in v0.23.0

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 added in v0.23.0

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

NotificationStatus defines the observed state of Notification.

func (*NotificationStatus) DeepCopy added in v0.23.0

func (in *NotificationStatus) DeepCopy() *NotificationStatus

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

func (*NotificationStatus) DeepCopyInto added in v0.23.0

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

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

type OverrideInitParameters added in v0.38.0

type OverrideInitParameters struct {

	// Override the instance type in the Launch Template with instance types that satisfy the requirements.
	InstanceRequirements []InstanceRequirementsInitParameters `json:"instanceRequirements,omitempty" tf:"instance_requirements,omitempty"`

	// Override the instance type in the Launch Template.
	InstanceType *string `json:"instanceType,omitempty" tf:"instance_type,omitempty"`

	// Nested argument defines the Launch Template. Defined below.
	LaunchTemplateSpecification []OverrideLaunchTemplateSpecificationInitParameters `json:"launchTemplateSpecification,omitempty" tf:"launch_template_specification,omitempty"`

	// Number of capacity units, which gives the instance type a proportional weight to other instance types.
	WeightedCapacity *string `json:"weightedCapacity,omitempty" tf:"weighted_capacity,omitempty"`
}

func (*OverrideInitParameters) DeepCopy added in v0.38.0

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

func (*OverrideInitParameters) DeepCopyInto added in v0.38.0

func (in *OverrideInitParameters) DeepCopyInto(out *OverrideInitParameters)

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

type OverrideLaunchTemplateSpecificationInitParameters added in v0.38.0

type OverrideLaunchTemplateSpecificationInitParameters struct {

	// Name of the launch template. Conflicts with launch_template_id.
	LaunchTemplateName *string `json:"launchTemplateName,omitempty" tf:"launch_template_name,omitempty"`

	// Template version. Can be version number, $Latest, or $Default. (Default: $Default).
	Version *string `json:"version,omitempty" tf:"version,omitempty"`
}

func (*OverrideLaunchTemplateSpecificationInitParameters) DeepCopy added in v0.38.0

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

func (*OverrideLaunchTemplateSpecificationInitParameters) DeepCopyInto added in v0.38.0

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

type OverrideLaunchTemplateSpecificationObservation

type OverrideLaunchTemplateSpecificationObservation struct {

	// ID of the launch template. Conflicts with launch_template_name.
	LaunchTemplateID *string `json:"launchTemplateId,omitempty" tf:"launch_template_id,omitempty"`

	// Name of the launch template. Conflicts with launch_template_id.
	LaunchTemplateName *string `json:"launchTemplateName,omitempty" tf:"launch_template_name,omitempty"`

	// Template version. Can be version number, $Latest, or $Default. (Default: $Default).
	Version *string `json:"version,omitempty" tf:"version,omitempty"`
}

func (*OverrideLaunchTemplateSpecificationObservation) DeepCopy

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

func (*OverrideLaunchTemplateSpecificationObservation) DeepCopyInto

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

type OverrideLaunchTemplateSpecificationParameters

type OverrideLaunchTemplateSpecificationParameters struct {

	// ID of the launch template. Conflicts with launch_template_name.
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/ec2/v1beta1.LaunchTemplate
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID()
	// +kubebuilder:validation:Optional
	LaunchTemplateID *string `json:"launchTemplateId,omitempty" tf:"launch_template_id,omitempty"`

	// Reference to a LaunchTemplate in ec2 to populate launchTemplateId.
	// +kubebuilder:validation:Optional
	LaunchTemplateIDRef *v1.Reference `json:"launchTemplateIdRef,omitempty" tf:"-"`

	// Selector for a LaunchTemplate in ec2 to populate launchTemplateId.
	// +kubebuilder:validation:Optional
	LaunchTemplateIDSelector *v1.Selector `json:"launchTemplateIdSelector,omitempty" tf:"-"`

	// Name of the launch template. Conflicts with launch_template_id.
	// +kubebuilder:validation:Optional
	LaunchTemplateName *string `json:"launchTemplateName,omitempty" tf:"launch_template_name,omitempty"`

	// Template version. Can be version number, $Latest, or $Default. (Default: $Default).
	// +kubebuilder:validation:Optional
	Version *string `json:"version,omitempty" tf:"version,omitempty"`
}

func (*OverrideLaunchTemplateSpecificationParameters) DeepCopy

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

func (*OverrideLaunchTemplateSpecificationParameters) DeepCopyInto

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

type OverrideObservation

type OverrideObservation struct {

	// Override the instance type in the Launch Template with instance types that satisfy the requirements.
	InstanceRequirements []InstanceRequirementsObservation `json:"instanceRequirements,omitempty" tf:"instance_requirements,omitempty"`

	// Override the instance type in the Launch Template.
	InstanceType *string `json:"instanceType,omitempty" tf:"instance_type,omitempty"`

	// Nested argument defines the Launch Template. Defined below.
	LaunchTemplateSpecification []OverrideLaunchTemplateSpecificationObservation `json:"launchTemplateSpecification,omitempty" tf:"launch_template_specification,omitempty"`

	// Number of capacity units, which gives the instance type a proportional weight to other instance types.
	WeightedCapacity *string `json:"weightedCapacity,omitempty" tf:"weighted_capacity,omitempty"`
}

func (*OverrideObservation) DeepCopy

func (in *OverrideObservation) DeepCopy() *OverrideObservation

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

func (*OverrideObservation) DeepCopyInto

func (in *OverrideObservation) DeepCopyInto(out *OverrideObservation)

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

type OverrideParameters

type OverrideParameters struct {

	// Override the instance type in the Launch Template with instance types that satisfy the requirements.
	// +kubebuilder:validation:Optional
	InstanceRequirements []InstanceRequirementsParameters `json:"instanceRequirements,omitempty" tf:"instance_requirements,omitempty"`

	// Override the instance type in the Launch Template.
	// +kubebuilder:validation:Optional
	InstanceType *string `json:"instanceType,omitempty" tf:"instance_type,omitempty"`

	// Nested argument defines the Launch Template. Defined below.
	// +kubebuilder:validation:Optional
	LaunchTemplateSpecification []OverrideLaunchTemplateSpecificationParameters `json:"launchTemplateSpecification,omitempty" tf:"launch_template_specification,omitempty"`

	// Number of capacity units, which gives the instance type a proportional weight to other instance types.
	// +kubebuilder:validation:Optional
	WeightedCapacity *string `json:"weightedCapacity,omitempty" tf:"weighted_capacity,omitempty"`
}

func (*OverrideParameters) DeepCopy

func (in *OverrideParameters) DeepCopy() *OverrideParameters

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

func (*OverrideParameters) DeepCopyInto

func (in *OverrideParameters) DeepCopyInto(out *OverrideParameters)

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

type Policy added in v0.23.0

type Policy struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              PolicySpec   `json:"spec"`
	Status            PolicyStatus `json:"status,omitempty"`
}

Policy is the Schema for the Policys API. Provides an AutoScaling Scaling Group resource. +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,aws}

func (*Policy) DeepCopy added in v0.23.0

func (in *Policy) DeepCopy() *Policy

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

func (*Policy) DeepCopyInto added in v0.23.0

func (in *Policy) DeepCopyInto(out *Policy)

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

func (*Policy) DeepCopyObject added in v0.23.0

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

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

func (*Policy) GetCondition added in v0.23.0

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

GetCondition of this Policy.

func (*Policy) GetConnectionDetailsMapping added in v0.23.0

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

GetConnectionDetailsMapping for this Policy

func (*Policy) GetDeletionPolicy added in v0.23.0

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

GetDeletionPolicy of this Policy.

func (*Policy) GetID added in v0.23.0

func (tr *Policy) GetID() string

GetID returns ID of underlying Terraform resource of this Policy

func (*Policy) GetInitParameters added in v0.38.0

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

GetInitParameters of this Policy

func (*Policy) GetManagementPolicies added in v0.38.0

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

GetManagementPolicies of this Policy.

func (*Policy) GetMergedParameters added in v0.44.0

func (tr *Policy) GetMergedParameters(shouldMergeInitProvider bool) (map[string]any, error)

GetInitParameters of this Policy

func (*Policy) GetObservation added in v0.23.0

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

GetObservation of this Policy

func (*Policy) GetParameters added in v0.23.0

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

GetParameters of this Policy

func (*Policy) GetProviderConfigReference added in v0.23.0

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

GetProviderConfigReference of this Policy.

func (*Policy) GetPublishConnectionDetailsTo added in v0.23.0

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

GetPublishConnectionDetailsTo of this Policy.

func (*Policy) GetTerraformResourceType added in v0.23.0

func (mg *Policy) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this Policy

func (*Policy) GetTerraformSchemaVersion added in v0.23.0

func (tr *Policy) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*Policy) GetWriteConnectionSecretToReference added in v0.23.0

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

GetWriteConnectionSecretToReference of this Policy.

func (*Policy) LateInitialize added in v0.23.0

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

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

func (*Policy) ResolveReferences added in v0.23.0

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

ResolveReferences of this Policy.

func (*Policy) SetConditions added in v0.23.0

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

SetConditions of this Policy.

func (*Policy) SetDeletionPolicy added in v0.23.0

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

SetDeletionPolicy of this Policy.

func (*Policy) SetManagementPolicies added in v0.38.0

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

SetManagementPolicies of this Policy.

func (*Policy) SetObservation added in v0.23.0

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

SetObservation for this Policy

func (*Policy) SetParameters added in v0.23.0

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

SetParameters for this Policy

func (*Policy) SetProviderConfigReference added in v0.23.0

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

SetProviderConfigReference of this Policy.

func (*Policy) SetPublishConnectionDetailsTo added in v0.23.0

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

SetPublishConnectionDetailsTo of this Policy.

func (*Policy) SetWriteConnectionSecretToReference added in v0.23.0

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

SetWriteConnectionSecretToReference of this Policy.

type PolicyInitParameters added in v0.38.0

type PolicyInitParameters struct {

	// Whether the adjustment is an absolute number or a percentage of the current capacity. Valid values are ChangeInCapacity, ExactCapacity, and PercentChangeInCapacity.
	AdjustmentType *string `json:"adjustmentType,omitempty" tf:"adjustment_type,omitempty"`

	// Amount of time, in seconds, after a scaling activity completes and before the next scaling activity can start.
	Cooldown *float64 `json:"cooldown,omitempty" tf:"cooldown,omitempty"`

	// Whether the scaling policy is enabled or disabled. Default: true.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// Estimated time, in seconds, until a newly launched instance will contribute CloudWatch metrics. Without a value, AWS will default to the group's specified cooldown period.
	EstimatedInstanceWarmup *float64 `json:"estimatedInstanceWarmup,omitempty" tf:"estimated_instance_warmup,omitempty"`

	// Aggregation type for the policy's metrics. Valid values are "Minimum", "Maximum", and "Average". Without a value, AWS will treat the aggregation type as "Average".
	MetricAggregationType *string `json:"metricAggregationType,omitempty" tf:"metric_aggregation_type,omitempty"`

	// Minimum value to scale by when adjustment_type is set to PercentChangeInCapacity.
	MinAdjustmentMagnitude *float64 `json:"minAdjustmentMagnitude,omitempty" tf:"min_adjustment_magnitude,omitempty"`

	// Policy type, either "SimpleScaling", "StepScaling", "TargetTrackingScaling", or "PredictiveScaling". If this value isn't provided, AWS will default to "SimpleScaling."
	PolicyType *string `json:"policyType,omitempty" tf:"policy_type,omitempty"`

	// Predictive scaling policy configuration to use with Amazon EC2 Auto Scaling.
	PredictiveScalingConfiguration []PredictiveScalingConfigurationInitParameters `json:"predictiveScalingConfiguration,omitempty" tf:"predictive_scaling_configuration,omitempty"`

	// Number of instances by which to scale. adjustment_type determines the interpretation of this number (e.g., as an absolute number or as a percentage of the existing Auto Scaling group size). A positive increment adds to the current capacity and a negative value removes from the current capacity.
	ScalingAdjustment *float64 `json:"scalingAdjustment,omitempty" tf:"scaling_adjustment,omitempty"`

	// Set of adjustments that manage
	// group scaling. These have the following structure:
	StepAdjustment []StepAdjustmentInitParameters `json:"stepAdjustment,omitempty" tf:"step_adjustment,omitempty"`

	// Target tracking policy. These have the following structure:
	TargetTrackingConfiguration []TargetTrackingConfigurationInitParameters `json:"targetTrackingConfiguration,omitempty" tf:"target_tracking_configuration,omitempty"`
}

func (*PolicyInitParameters) DeepCopy added in v0.38.0

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

func (*PolicyInitParameters) DeepCopyInto added in v0.38.0

func (in *PolicyInitParameters) DeepCopyInto(out *PolicyInitParameters)

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

type PolicyList added in v0.23.0

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

PolicyList contains a list of Policys

func (*PolicyList) DeepCopy added in v0.23.0

func (in *PolicyList) DeepCopy() *PolicyList

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

func (*PolicyList) DeepCopyInto added in v0.23.0

func (in *PolicyList) DeepCopyInto(out *PolicyList)

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

func (*PolicyList) DeepCopyObject added in v0.23.0

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

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

func (*PolicyList) GetItems added in v0.23.0

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

GetItems of this PolicyList.

type PolicyObservation added in v0.23.0

type PolicyObservation struct {

	// Whether the adjustment is an absolute number or a percentage of the current capacity. Valid values are ChangeInCapacity, ExactCapacity, and PercentChangeInCapacity.
	AdjustmentType *string `json:"adjustmentType,omitempty" tf:"adjustment_type,omitempty"`

	// ARN assigned by AWS to the scaling policy.
	Arn *string `json:"arn,omitempty" tf:"arn,omitempty"`

	// Name of the autoscaling group.
	AutoscalingGroupName *string `json:"autoscalingGroupName,omitempty" tf:"autoscaling_group_name,omitempty"`

	// Amount of time, in seconds, after a scaling activity completes and before the next scaling activity can start.
	Cooldown *float64 `json:"cooldown,omitempty" tf:"cooldown,omitempty"`

	// Whether the scaling policy is enabled or disabled. Default: true.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// Estimated time, in seconds, until a newly launched instance will contribute CloudWatch metrics. Without a value, AWS will default to the group's specified cooldown period.
	EstimatedInstanceWarmup *float64 `json:"estimatedInstanceWarmup,omitempty" tf:"estimated_instance_warmup,omitempty"`

	// Short name for the metric used in predictive scaling policy.
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// Aggregation type for the policy's metrics. Valid values are "Minimum", "Maximum", and "Average". Without a value, AWS will treat the aggregation type as "Average".
	MetricAggregationType *string `json:"metricAggregationType,omitempty" tf:"metric_aggregation_type,omitempty"`

	// Minimum value to scale by when adjustment_type is set to PercentChangeInCapacity.
	MinAdjustmentMagnitude *float64 `json:"minAdjustmentMagnitude,omitempty" tf:"min_adjustment_magnitude,omitempty"`

	// Policy type, either "SimpleScaling", "StepScaling", "TargetTrackingScaling", or "PredictiveScaling". If this value isn't provided, AWS will default to "SimpleScaling."
	PolicyType *string `json:"policyType,omitempty" tf:"policy_type,omitempty"`

	// Predictive scaling policy configuration to use with Amazon EC2 Auto Scaling.
	PredictiveScalingConfiguration []PredictiveScalingConfigurationObservation `json:"predictiveScalingConfiguration,omitempty" tf:"predictive_scaling_configuration,omitempty"`

	// Number of instances by which to scale. adjustment_type determines the interpretation of this number (e.g., as an absolute number or as a percentage of the existing Auto Scaling group size). A positive increment adds to the current capacity and a negative value removes from the current capacity.
	ScalingAdjustment *float64 `json:"scalingAdjustment,omitempty" tf:"scaling_adjustment,omitempty"`

	// Set of adjustments that manage
	// group scaling. These have the following structure:
	StepAdjustment []StepAdjustmentObservation `json:"stepAdjustment,omitempty" tf:"step_adjustment,omitempty"`

	// Target tracking policy. These have the following structure:
	TargetTrackingConfiguration []TargetTrackingConfigurationObservation `json:"targetTrackingConfiguration,omitempty" tf:"target_tracking_configuration,omitempty"`
}

func (*PolicyObservation) DeepCopy added in v0.23.0

func (in *PolicyObservation) DeepCopy() *PolicyObservation

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

func (*PolicyObservation) DeepCopyInto added in v0.23.0

func (in *PolicyObservation) DeepCopyInto(out *PolicyObservation)

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

type PolicyParameters added in v0.23.0

type PolicyParameters struct {

	// Whether the adjustment is an absolute number or a percentage of the current capacity. Valid values are ChangeInCapacity, ExactCapacity, and PercentChangeInCapacity.
	// +kubebuilder:validation:Optional
	AdjustmentType *string `json:"adjustmentType,omitempty" tf:"adjustment_type,omitempty"`

	// Name of the autoscaling group.
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/autoscaling/v1beta1.AutoscalingGroup
	// +kubebuilder:validation:Optional
	AutoscalingGroupName *string `json:"autoscalingGroupName,omitempty" tf:"autoscaling_group_name,omitempty"`

	// Reference to a AutoscalingGroup in autoscaling to populate autoscalingGroupName.
	// +kubebuilder:validation:Optional
	AutoscalingGroupNameRef *v1.Reference `json:"autoscalingGroupNameRef,omitempty" tf:"-"`

	// Selector for a AutoscalingGroup in autoscaling to populate autoscalingGroupName.
	// +kubebuilder:validation:Optional
	AutoscalingGroupNameSelector *v1.Selector `json:"autoscalingGroupNameSelector,omitempty" tf:"-"`

	// Amount of time, in seconds, after a scaling activity completes and before the next scaling activity can start.
	// +kubebuilder:validation:Optional
	Cooldown *float64 `json:"cooldown,omitempty" tf:"cooldown,omitempty"`

	// Whether the scaling policy is enabled or disabled. Default: true.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// Estimated time, in seconds, until a newly launched instance will contribute CloudWatch metrics. Without a value, AWS will default to the group's specified cooldown period.
	// +kubebuilder:validation:Optional
	EstimatedInstanceWarmup *float64 `json:"estimatedInstanceWarmup,omitempty" tf:"estimated_instance_warmup,omitempty"`

	// Aggregation type for the policy's metrics. Valid values are "Minimum", "Maximum", and "Average". Without a value, AWS will treat the aggregation type as "Average".
	// +kubebuilder:validation:Optional
	MetricAggregationType *string `json:"metricAggregationType,omitempty" tf:"metric_aggregation_type,omitempty"`

	// Minimum value to scale by when adjustment_type is set to PercentChangeInCapacity.
	// +kubebuilder:validation:Optional
	MinAdjustmentMagnitude *float64 `json:"minAdjustmentMagnitude,omitempty" tf:"min_adjustment_magnitude,omitempty"`

	// Policy type, either "SimpleScaling", "StepScaling", "TargetTrackingScaling", or "PredictiveScaling". If this value isn't provided, AWS will default to "SimpleScaling."
	// +kubebuilder:validation:Optional
	PolicyType *string `json:"policyType,omitempty" tf:"policy_type,omitempty"`

	// Predictive scaling policy configuration to use with Amazon EC2 Auto Scaling.
	// +kubebuilder:validation:Optional
	PredictiveScalingConfiguration []PredictiveScalingConfigurationParameters `json:"predictiveScalingConfiguration,omitempty" tf:"predictive_scaling_configuration,omitempty"`

	// Region is the region you'd like your resource to be created in.
	// +upjet:crd:field:TFTag=-
	// +kubebuilder:validation:Required
	Region *string `json:"region" tf:"-"`

	// Number of instances by which to scale. adjustment_type determines the interpretation of this number (e.g., as an absolute number or as a percentage of the existing Auto Scaling group size). A positive increment adds to the current capacity and a negative value removes from the current capacity.
	// +kubebuilder:validation:Optional
	ScalingAdjustment *float64 `json:"scalingAdjustment,omitempty" tf:"scaling_adjustment,omitempty"`

	// Set of adjustments that manage
	// group scaling. These have the following structure:
	// +kubebuilder:validation:Optional
	StepAdjustment []StepAdjustmentParameters `json:"stepAdjustment,omitempty" tf:"step_adjustment,omitempty"`

	// Target tracking policy. These have the following structure:
	// +kubebuilder:validation:Optional
	TargetTrackingConfiguration []TargetTrackingConfigurationParameters `json:"targetTrackingConfiguration,omitempty" tf:"target_tracking_configuration,omitempty"`
}

func (*PolicyParameters) DeepCopy added in v0.23.0

func (in *PolicyParameters) DeepCopy() *PolicyParameters

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

func (*PolicyParameters) DeepCopyInto added in v0.23.0

func (in *PolicyParameters) DeepCopyInto(out *PolicyParameters)

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

type PolicySpec added in v0.23.0

type PolicySpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     PolicyParameters `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 PolicyInitParameters `json:"initProvider,omitempty"`
}

PolicySpec defines the desired state of Policy

func (*PolicySpec) DeepCopy added in v0.23.0

func (in *PolicySpec) DeepCopy() *PolicySpec

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

func (*PolicySpec) DeepCopyInto added in v0.23.0

func (in *PolicySpec) DeepCopyInto(out *PolicySpec)

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

type PolicyStatus added in v0.23.0

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

PolicyStatus defines the observed state of Policy.

func (*PolicyStatus) DeepCopy added in v0.23.0

func (in *PolicyStatus) DeepCopy() *PolicyStatus

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

func (*PolicyStatus) DeepCopyInto added in v0.23.0

func (in *PolicyStatus) DeepCopyInto(out *PolicyStatus)

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

type PredefinedLoadMetricSpecificationInitParameters added in v0.38.0

type PredefinedLoadMetricSpecificationInitParameters struct {

	// Metric type. Valid values are ASGTotalCPUUtilization, ASGTotalNetworkIn, ASGTotalNetworkOut, or ALBTargetGroupRequestCount.
	PredefinedMetricType *string `json:"predefinedMetricType,omitempty" tf:"predefined_metric_type,omitempty"`

	// Label that uniquely identifies a specific Application Load Balancer target group from which to determine the request count served by your Auto Scaling group.
	ResourceLabel *string `json:"resourceLabel,omitempty" tf:"resource_label,omitempty"`
}

func (*PredefinedLoadMetricSpecificationInitParameters) DeepCopy added in v0.38.0

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

func (*PredefinedLoadMetricSpecificationInitParameters) DeepCopyInto added in v0.38.0

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

type PredefinedLoadMetricSpecificationObservation added in v0.23.0

type PredefinedLoadMetricSpecificationObservation struct {

	// Metric type. Valid values are ASGTotalCPUUtilization, ASGTotalNetworkIn, ASGTotalNetworkOut, or ALBTargetGroupRequestCount.
	PredefinedMetricType *string `json:"predefinedMetricType,omitempty" tf:"predefined_metric_type,omitempty"`

	// Label that uniquely identifies a specific Application Load Balancer target group from which to determine the request count served by your Auto Scaling group.
	ResourceLabel *string `json:"resourceLabel,omitempty" tf:"resource_label,omitempty"`
}

func (*PredefinedLoadMetricSpecificationObservation) DeepCopy added in v0.23.0

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

func (*PredefinedLoadMetricSpecificationObservation) DeepCopyInto added in v0.23.0

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

type PredefinedLoadMetricSpecificationParameters added in v0.23.0

type PredefinedLoadMetricSpecificationParameters struct {

	// Metric type. Valid values are ASGTotalCPUUtilization, ASGTotalNetworkIn, ASGTotalNetworkOut, or ALBTargetGroupRequestCount.
	// +kubebuilder:validation:Optional
	PredefinedMetricType *string `json:"predefinedMetricType" tf:"predefined_metric_type,omitempty"`

	// Label that uniquely identifies a specific Application Load Balancer target group from which to determine the request count served by your Auto Scaling group.
	// +kubebuilder:validation:Optional
	ResourceLabel *string `json:"resourceLabel,omitempty" tf:"resource_label,omitempty"`
}

func (*PredefinedLoadMetricSpecificationParameters) DeepCopy added in v0.23.0

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

func (*PredefinedLoadMetricSpecificationParameters) DeepCopyInto added in v0.23.0

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

type PredefinedMetricPairSpecificationInitParameters added in v0.38.0

type PredefinedMetricPairSpecificationInitParameters struct {

	// Which metrics to use. There are two different types of metrics for each metric type: one is a load metric and one is a scaling metric. For example, if the metric type is ASGCPUUtilization, the Auto Scaling group's total CPU metric is used as the load metric, and the average CPU metric is used for the scaling metric. Valid values are ASGCPUUtilization, ASGNetworkIn, ASGNetworkOut, or ALBRequestCount.
	PredefinedMetricType *string `json:"predefinedMetricType,omitempty" tf:"predefined_metric_type,omitempty"`

	// Label that uniquely identifies a specific Application Load Balancer target group from which to determine the request count served by your Auto Scaling group.
	ResourceLabel *string `json:"resourceLabel,omitempty" tf:"resource_label,omitempty"`
}

func (*PredefinedMetricPairSpecificationInitParameters) DeepCopy added in v0.38.0

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

func (*PredefinedMetricPairSpecificationInitParameters) DeepCopyInto added in v0.38.0

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

type PredefinedMetricPairSpecificationObservation added in v0.23.0

type PredefinedMetricPairSpecificationObservation struct {

	// Which metrics to use. There are two different types of metrics for each metric type: one is a load metric and one is a scaling metric. For example, if the metric type is ASGCPUUtilization, the Auto Scaling group's total CPU metric is used as the load metric, and the average CPU metric is used for the scaling metric. Valid values are ASGCPUUtilization, ASGNetworkIn, ASGNetworkOut, or ALBRequestCount.
	PredefinedMetricType *string `json:"predefinedMetricType,omitempty" tf:"predefined_metric_type,omitempty"`

	// Label that uniquely identifies a specific Application Load Balancer target group from which to determine the request count served by your Auto Scaling group.
	ResourceLabel *string `json:"resourceLabel,omitempty" tf:"resource_label,omitempty"`
}

func (*PredefinedMetricPairSpecificationObservation) DeepCopy added in v0.23.0

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

func (*PredefinedMetricPairSpecificationObservation) DeepCopyInto added in v0.23.0

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

type PredefinedMetricPairSpecificationParameters added in v0.23.0

type PredefinedMetricPairSpecificationParameters struct {

	// Which metrics to use. There are two different types of metrics for each metric type: one is a load metric and one is a scaling metric. For example, if the metric type is ASGCPUUtilization, the Auto Scaling group's total CPU metric is used as the load metric, and the average CPU metric is used for the scaling metric. Valid values are ASGCPUUtilization, ASGNetworkIn, ASGNetworkOut, or ALBRequestCount.
	// +kubebuilder:validation:Optional
	PredefinedMetricType *string `json:"predefinedMetricType" tf:"predefined_metric_type,omitempty"`

	// Label that uniquely identifies a specific Application Load Balancer target group from which to determine the request count served by your Auto Scaling group.
	// +kubebuilder:validation:Optional
	ResourceLabel *string `json:"resourceLabel,omitempty" tf:"resource_label,omitempty"`
}

func (*PredefinedMetricPairSpecificationParameters) DeepCopy added in v0.23.0

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

func (*PredefinedMetricPairSpecificationParameters) DeepCopyInto added in v0.23.0

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

type PredefinedMetricSpecificationInitParameters added in v0.38.0

type PredefinedMetricSpecificationInitParameters struct {

	// Describes a scaling metric for a predictive scaling policy. Valid values are ASGAverageCPUUtilization, ASGAverageNetworkIn, ASGAverageNetworkOut, or ALBRequestCountPerTarget.
	PredefinedMetricType *string `json:"predefinedMetricType,omitempty" tf:"predefined_metric_type,omitempty"`

	// Label that uniquely identifies a specific Application Load Balancer target group from which to determine the request count served by your Auto Scaling group.
	ResourceLabel *string `json:"resourceLabel,omitempty" tf:"resource_label,omitempty"`
}

func (*PredefinedMetricSpecificationInitParameters) DeepCopy added in v0.38.0

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

func (*PredefinedMetricSpecificationInitParameters) DeepCopyInto added in v0.38.0

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

type PredefinedMetricSpecificationObservation added in v0.23.0

type PredefinedMetricSpecificationObservation struct {

	// Describes a scaling metric for a predictive scaling policy. Valid values are ASGAverageCPUUtilization, ASGAverageNetworkIn, ASGAverageNetworkOut, or ALBRequestCountPerTarget.
	PredefinedMetricType *string `json:"predefinedMetricType,omitempty" tf:"predefined_metric_type,omitempty"`

	// Label that uniquely identifies a specific Application Load Balancer target group from which to determine the request count served by your Auto Scaling group.
	ResourceLabel *string `json:"resourceLabel,omitempty" tf:"resource_label,omitempty"`
}

func (*PredefinedMetricSpecificationObservation) DeepCopy added in v0.23.0

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

func (*PredefinedMetricSpecificationObservation) DeepCopyInto added in v0.23.0

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

type PredefinedMetricSpecificationParameters added in v0.23.0

type PredefinedMetricSpecificationParameters struct {

	// Describes a scaling metric for a predictive scaling policy. Valid values are ASGAverageCPUUtilization, ASGAverageNetworkIn, ASGAverageNetworkOut, or ALBRequestCountPerTarget.
	// +kubebuilder:validation:Optional
	PredefinedMetricType *string `json:"predefinedMetricType" tf:"predefined_metric_type,omitempty"`

	// Label that uniquely identifies a specific Application Load Balancer target group from which to determine the request count served by your Auto Scaling group.
	// +kubebuilder:validation:Optional
	ResourceLabel *string `json:"resourceLabel,omitempty" tf:"resource_label,omitempty"`
}

func (*PredefinedMetricSpecificationParameters) DeepCopy added in v0.23.0

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

func (*PredefinedMetricSpecificationParameters) DeepCopyInto added in v0.23.0

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

type PredefinedScalingMetricSpecificationInitParameters added in v0.38.0

type PredefinedScalingMetricSpecificationInitParameters struct {

	// Describes a scaling metric for a predictive scaling policy. Valid values are ASGAverageCPUUtilization, ASGAverageNetworkIn, ASGAverageNetworkOut, or ALBRequestCountPerTarget.
	PredefinedMetricType *string `json:"predefinedMetricType,omitempty" tf:"predefined_metric_type,omitempty"`

	// Label that uniquely identifies a specific Application Load Balancer target group from which to determine the request count served by your Auto Scaling group.
	ResourceLabel *string `json:"resourceLabel,omitempty" tf:"resource_label,omitempty"`
}

func (*PredefinedScalingMetricSpecificationInitParameters) DeepCopy added in v0.38.0

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

func (*PredefinedScalingMetricSpecificationInitParameters) DeepCopyInto added in v0.38.0

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

type PredefinedScalingMetricSpecificationObservation added in v0.23.0

type PredefinedScalingMetricSpecificationObservation struct {

	// Describes a scaling metric for a predictive scaling policy. Valid values are ASGAverageCPUUtilization, ASGAverageNetworkIn, ASGAverageNetworkOut, or ALBRequestCountPerTarget.
	PredefinedMetricType *string `json:"predefinedMetricType,omitempty" tf:"predefined_metric_type,omitempty"`

	// Label that uniquely identifies a specific Application Load Balancer target group from which to determine the request count served by your Auto Scaling group.
	ResourceLabel *string `json:"resourceLabel,omitempty" tf:"resource_label,omitempty"`
}

func (*PredefinedScalingMetricSpecificationObservation) DeepCopy added in v0.23.0

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

func (*PredefinedScalingMetricSpecificationObservation) DeepCopyInto added in v0.23.0

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

type PredefinedScalingMetricSpecificationParameters added in v0.23.0

type PredefinedScalingMetricSpecificationParameters struct {

	// Describes a scaling metric for a predictive scaling policy. Valid values are ASGAverageCPUUtilization, ASGAverageNetworkIn, ASGAverageNetworkOut, or ALBRequestCountPerTarget.
	// +kubebuilder:validation:Optional
	PredefinedMetricType *string `json:"predefinedMetricType" tf:"predefined_metric_type,omitempty"`

	// Label that uniquely identifies a specific Application Load Balancer target group from which to determine the request count served by your Auto Scaling group.
	// +kubebuilder:validation:Optional
	ResourceLabel *string `json:"resourceLabel,omitempty" tf:"resource_label,omitempty"`
}

func (*PredefinedScalingMetricSpecificationParameters) DeepCopy added in v0.23.0

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

func (*PredefinedScalingMetricSpecificationParameters) DeepCopyInto added in v0.23.0

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

type PredictiveScalingConfigurationInitParameters added in v0.38.0

type PredictiveScalingConfigurationInitParameters struct {

	// Defines the behavior that should be applied if the forecast capacity approaches or exceeds the maximum capacity of the Auto Scaling group. Valid values are HonorMaxCapacity or IncreaseMaxCapacity. Default is HonorMaxCapacity.
	MaxCapacityBreachBehavior *string `json:"maxCapacityBreachBehavior,omitempty" tf:"max_capacity_breach_behavior,omitempty"`

	// Size of the capacity buffer to use when the forecast capacity is close to or exceeds the maximum capacity. Valid range is 0 to 100. If set to 0, Amazon EC2 Auto Scaling may scale capacity higher than the maximum capacity to equal but not exceed forecast capacity.
	MaxCapacityBuffer *string `json:"maxCapacityBuffer,omitempty" tf:"max_capacity_buffer,omitempty"`

	// This structure includes the metrics and target utilization to use for predictive scaling.
	MetricSpecification []MetricSpecificationInitParameters `json:"metricSpecification,omitempty" tf:"metric_specification,omitempty"`

	// Predictive scaling mode. Valid values are ForecastAndScale and ForecastOnly. Default is ForecastOnly.
	Mode *string `json:"mode,omitempty" tf:"mode,omitempty"`

	// Amount of time, in seconds, by which the instance launch time can be advanced. Minimum is 0.
	SchedulingBufferTime *string `json:"schedulingBufferTime,omitempty" tf:"scheduling_buffer_time,omitempty"`
}

func (*PredictiveScalingConfigurationInitParameters) DeepCopy added in v0.38.0

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

func (*PredictiveScalingConfigurationInitParameters) DeepCopyInto added in v0.38.0

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

type PredictiveScalingConfigurationObservation added in v0.23.0

type PredictiveScalingConfigurationObservation struct {

	// Defines the behavior that should be applied if the forecast capacity approaches or exceeds the maximum capacity of the Auto Scaling group. Valid values are HonorMaxCapacity or IncreaseMaxCapacity. Default is HonorMaxCapacity.
	MaxCapacityBreachBehavior *string `json:"maxCapacityBreachBehavior,omitempty" tf:"max_capacity_breach_behavior,omitempty"`

	// Size of the capacity buffer to use when the forecast capacity is close to or exceeds the maximum capacity. Valid range is 0 to 100. If set to 0, Amazon EC2 Auto Scaling may scale capacity higher than the maximum capacity to equal but not exceed forecast capacity.
	MaxCapacityBuffer *string `json:"maxCapacityBuffer,omitempty" tf:"max_capacity_buffer,omitempty"`

	// This structure includes the metrics and target utilization to use for predictive scaling.
	MetricSpecification []MetricSpecificationObservation `json:"metricSpecification,omitempty" tf:"metric_specification,omitempty"`

	// Predictive scaling mode. Valid values are ForecastAndScale and ForecastOnly. Default is ForecastOnly.
	Mode *string `json:"mode,omitempty" tf:"mode,omitempty"`

	// Amount of time, in seconds, by which the instance launch time can be advanced. Minimum is 0.
	SchedulingBufferTime *string `json:"schedulingBufferTime,omitempty" tf:"scheduling_buffer_time,omitempty"`
}

func (*PredictiveScalingConfigurationObservation) DeepCopy added in v0.23.0

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

func (*PredictiveScalingConfigurationObservation) DeepCopyInto added in v0.23.0

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

type PredictiveScalingConfigurationParameters added in v0.23.0

type PredictiveScalingConfigurationParameters struct {

	// Defines the behavior that should be applied if the forecast capacity approaches or exceeds the maximum capacity of the Auto Scaling group. Valid values are HonorMaxCapacity or IncreaseMaxCapacity. Default is HonorMaxCapacity.
	// +kubebuilder:validation:Optional
	MaxCapacityBreachBehavior *string `json:"maxCapacityBreachBehavior,omitempty" tf:"max_capacity_breach_behavior,omitempty"`

	// Size of the capacity buffer to use when the forecast capacity is close to or exceeds the maximum capacity. Valid range is 0 to 100. If set to 0, Amazon EC2 Auto Scaling may scale capacity higher than the maximum capacity to equal but not exceed forecast capacity.
	// +kubebuilder:validation:Optional
	MaxCapacityBuffer *string `json:"maxCapacityBuffer,omitempty" tf:"max_capacity_buffer,omitempty"`

	// This structure includes the metrics and target utilization to use for predictive scaling.
	// +kubebuilder:validation:Optional
	MetricSpecification []MetricSpecificationParameters `json:"metricSpecification" tf:"metric_specification,omitempty"`

	// Predictive scaling mode. Valid values are ForecastAndScale and ForecastOnly. Default is ForecastOnly.
	// +kubebuilder:validation:Optional
	Mode *string `json:"mode,omitempty" tf:"mode,omitempty"`

	// Amount of time, in seconds, by which the instance launch time can be advanced. Minimum is 0.
	// +kubebuilder:validation:Optional
	SchedulingBufferTime *string `json:"schedulingBufferTime,omitempty" tf:"scheduling_buffer_time,omitempty"`
}

func (*PredictiveScalingConfigurationParameters) DeepCopy added in v0.23.0

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

func (*PredictiveScalingConfigurationParameters) DeepCopyInto added in v0.23.0

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

type PreferencesInitParameters added in v0.38.0

type PreferencesInitParameters struct {

	// Automatically rollback if instance refresh fails. Defaults to false.
	AutoRollback *bool `json:"autoRollback,omitempty" tf:"auto_rollback,omitempty"`

	// Number of seconds to wait after a checkpoint. Defaults to 3600.
	CheckpointDelay *string `json:"checkpointDelay,omitempty" tf:"checkpoint_delay,omitempty"`

	// List of percentages for each checkpoint. Values must be unique and in ascending order. To replace all instances, the final number must be 100.
	CheckpointPercentages []*float64 `json:"checkpointPercentages,omitempty" tf:"checkpoint_percentages,omitempty"`

	// Number of seconds until a newly launched instance is configured and ready to use. Default behavior is to use the Auto Scaling Group's health check grace period.
	InstanceWarmup *string `json:"instanceWarmup,omitempty" tf:"instance_warmup,omitempty"`

	// Amount of capacity in the Auto Scaling group that must remain healthy during an instance refresh to allow the operation to continue, as a percentage of the desired capacity of the Auto Scaling group. Defaults to 90.
	MinHealthyPercentage *float64 `json:"minHealthyPercentage,omitempty" tf:"min_healthy_percentage,omitempty"`

	// Replace instances that already have your desired configuration. Defaults to false.
	SkipMatching *bool `json:"skipMatching,omitempty" tf:"skip_matching,omitempty"`
}

func (*PreferencesInitParameters) DeepCopy added in v0.38.0

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

func (*PreferencesInitParameters) DeepCopyInto added in v0.38.0

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

type PreferencesObservation

type PreferencesObservation struct {

	// Automatically rollback if instance refresh fails. Defaults to false.
	AutoRollback *bool `json:"autoRollback,omitempty" tf:"auto_rollback,omitempty"`

	// Number of seconds to wait after a checkpoint. Defaults to 3600.
	CheckpointDelay *string `json:"checkpointDelay,omitempty" tf:"checkpoint_delay,omitempty"`

	// List of percentages for each checkpoint. Values must be unique and in ascending order. To replace all instances, the final number must be 100.
	CheckpointPercentages []*float64 `json:"checkpointPercentages,omitempty" tf:"checkpoint_percentages,omitempty"`

	// Number of seconds until a newly launched instance is configured and ready to use. Default behavior is to use the Auto Scaling Group's health check grace period.
	InstanceWarmup *string `json:"instanceWarmup,omitempty" tf:"instance_warmup,omitempty"`

	// Amount of capacity in the Auto Scaling group that must remain healthy during an instance refresh to allow the operation to continue, as a percentage of the desired capacity of the Auto Scaling group. Defaults to 90.
	MinHealthyPercentage *float64 `json:"minHealthyPercentage,omitempty" tf:"min_healthy_percentage,omitempty"`

	// Replace instances that already have your desired configuration. Defaults to false.
	SkipMatching *bool `json:"skipMatching,omitempty" tf:"skip_matching,omitempty"`
}

func (*PreferencesObservation) DeepCopy

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

func (*PreferencesObservation) DeepCopyInto

func (in *PreferencesObservation) DeepCopyInto(out *PreferencesObservation)

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

type PreferencesParameters

type PreferencesParameters struct {

	// Automatically rollback if instance refresh fails. Defaults to false.
	// +kubebuilder:validation:Optional
	AutoRollback *bool `json:"autoRollback,omitempty" tf:"auto_rollback,omitempty"`

	// Number of seconds to wait after a checkpoint. Defaults to 3600.
	// +kubebuilder:validation:Optional
	CheckpointDelay *string `json:"checkpointDelay,omitempty" tf:"checkpoint_delay,omitempty"`

	// List of percentages for each checkpoint. Values must be unique and in ascending order. To replace all instances, the final number must be 100.
	// +kubebuilder:validation:Optional
	CheckpointPercentages []*float64 `json:"checkpointPercentages,omitempty" tf:"checkpoint_percentages,omitempty"`

	// Number of seconds until a newly launched instance is configured and ready to use. Default behavior is to use the Auto Scaling Group's health check grace period.
	// +kubebuilder:validation:Optional
	InstanceWarmup *string `json:"instanceWarmup,omitempty" tf:"instance_warmup,omitempty"`

	// Amount of capacity in the Auto Scaling group that must remain healthy during an instance refresh to allow the operation to continue, as a percentage of the desired capacity of the Auto Scaling group. Defaults to 90.
	// +kubebuilder:validation:Optional
	MinHealthyPercentage *float64 `json:"minHealthyPercentage,omitempty" tf:"min_healthy_percentage,omitempty"`

	// Replace instances that already have your desired configuration. Defaults to false.
	// +kubebuilder:validation:Optional
	SkipMatching *bool `json:"skipMatching,omitempty" tf:"skip_matching,omitempty"`
}

func (*PreferencesParameters) DeepCopy

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

func (*PreferencesParameters) DeepCopyInto

func (in *PreferencesParameters) DeepCopyInto(out *PreferencesParameters)

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

type RootBlockDeviceInitParameters added in v0.38.0

type RootBlockDeviceInitParameters struct {

	// Whether the volume should be destroyed on instance termination. Defaults to true.
	DeleteOnTermination *bool `json:"deleteOnTermination,omitempty" tf:"delete_on_termination,omitempty"`

	// Whether the volume should be encrypted or not. Defaults to false.
	Encrypted *bool `json:"encrypted,omitempty" tf:"encrypted,omitempty"`

	// The amount of provisioned IOPS. This must be set with a volume_type of io1.
	Iops *float64 `json:"iops,omitempty" tf:"iops,omitempty"`

	// The throughput (MiBps) to provision for a gp3 volume.
	Throughput *float64 `json:"throughput,omitempty" tf:"throughput,omitempty"`

	// The size of the volume in gigabytes.
	VolumeSize *float64 `json:"volumeSize,omitempty" tf:"volume_size,omitempty"`

	// The type of volume. Can be standard, gp2, gp3, st1, sc1 or io1.
	VolumeType *string `json:"volumeType,omitempty" tf:"volume_type,omitempty"`
}

func (*RootBlockDeviceInitParameters) DeepCopy added in v0.38.0

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

func (*RootBlockDeviceInitParameters) DeepCopyInto added in v0.38.0

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

type RootBlockDeviceObservation

type RootBlockDeviceObservation struct {

	// Whether the volume should be destroyed on instance termination. Defaults to true.
	DeleteOnTermination *bool `json:"deleteOnTermination,omitempty" tf:"delete_on_termination,omitempty"`

	// Whether the volume should be encrypted or not. Defaults to false.
	Encrypted *bool `json:"encrypted,omitempty" tf:"encrypted,omitempty"`

	// The amount of provisioned IOPS. This must be set with a volume_type of io1.
	Iops *float64 `json:"iops,omitempty" tf:"iops,omitempty"`

	// The throughput (MiBps) to provision for a gp3 volume.
	Throughput *float64 `json:"throughput,omitempty" tf:"throughput,omitempty"`

	// The size of the volume in gigabytes.
	VolumeSize *float64 `json:"volumeSize,omitempty" tf:"volume_size,omitempty"`

	// The type of volume. Can be standard, gp2, gp3, st1, sc1 or io1.
	VolumeType *string `json:"volumeType,omitempty" tf:"volume_type,omitempty"`
}

func (*RootBlockDeviceObservation) DeepCopy

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

func (*RootBlockDeviceObservation) DeepCopyInto

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

type RootBlockDeviceParameters

type RootBlockDeviceParameters struct {

	// Whether the volume should be destroyed on instance termination. Defaults to true.
	// +kubebuilder:validation:Optional
	DeleteOnTermination *bool `json:"deleteOnTermination,omitempty" tf:"delete_on_termination,omitempty"`

	// Whether the volume should be encrypted or not. Defaults to false.
	// +kubebuilder:validation:Optional
	Encrypted *bool `json:"encrypted,omitempty" tf:"encrypted,omitempty"`

	// The amount of provisioned IOPS. This must be set with a volume_type of io1.
	// +kubebuilder:validation:Optional
	Iops *float64 `json:"iops,omitempty" tf:"iops,omitempty"`

	// The throughput (MiBps) to provision for a gp3 volume.
	// +kubebuilder:validation:Optional
	Throughput *float64 `json:"throughput,omitempty" tf:"throughput,omitempty"`

	// The size of the volume in gigabytes.
	// +kubebuilder:validation:Optional
	VolumeSize *float64 `json:"volumeSize,omitempty" tf:"volume_size,omitempty"`

	// The type of volume. Can be standard, gp2, gp3, st1, sc1 or io1.
	// +kubebuilder:validation:Optional
	VolumeType *string `json:"volumeType,omitempty" tf:"volume_type,omitempty"`
}

func (*RootBlockDeviceParameters) DeepCopy

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

func (*RootBlockDeviceParameters) DeepCopyInto

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

type Schedule added in v0.23.0

type Schedule struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              ScheduleSpec   `json:"spec"`
	Status            ScheduleStatus `json:"status,omitempty"`
}

Schedule is the Schema for the Schedules API. Provides an AutoScaling Schedule resource. +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,aws}

func (*Schedule) DeepCopy added in v0.23.0

func (in *Schedule) DeepCopy() *Schedule

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

func (*Schedule) DeepCopyInto added in v0.23.0

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 added in v0.23.0

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

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

func (*Schedule) GetCondition added in v0.23.0

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

GetCondition of this Schedule.

func (*Schedule) GetConnectionDetailsMapping added in v0.23.0

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

GetConnectionDetailsMapping for this Schedule

func (*Schedule) GetDeletionPolicy added in v0.23.0

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

GetDeletionPolicy of this Schedule.

func (*Schedule) GetID added in v0.23.0

func (tr *Schedule) GetID() string

GetID returns ID of underlying Terraform resource of this Schedule

func (*Schedule) GetInitParameters added in v0.38.0

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

GetInitParameters of this Schedule

func (*Schedule) GetManagementPolicies added in v0.38.0

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

GetManagementPolicies of this Schedule.

func (*Schedule) GetMergedParameters added in v0.44.0

func (tr *Schedule) GetMergedParameters(shouldMergeInitProvider bool) (map[string]any, error)

GetInitParameters of this Schedule

func (*Schedule) GetObservation added in v0.23.0

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

GetObservation of this Schedule

func (*Schedule) GetParameters added in v0.23.0

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

GetParameters of this Schedule

func (*Schedule) GetProviderConfigReference added in v0.23.0

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

GetProviderConfigReference of this Schedule.

func (*Schedule) GetPublishConnectionDetailsTo added in v0.23.0

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

GetPublishConnectionDetailsTo of this Schedule.

func (*Schedule) GetTerraformResourceType added in v0.23.0

func (mg *Schedule) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this Schedule

func (*Schedule) GetTerraformSchemaVersion added in v0.23.0

func (tr *Schedule) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*Schedule) GetWriteConnectionSecretToReference added in v0.23.0

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

GetWriteConnectionSecretToReference of this Schedule.

func (*Schedule) LateInitialize added in v0.23.0

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 added in v0.23.0

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

ResolveReferences of this Schedule.

func (*Schedule) SetConditions added in v0.23.0

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

SetConditions of this Schedule.

func (*Schedule) SetDeletionPolicy added in v0.23.0

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

SetDeletionPolicy of this Schedule.

func (*Schedule) SetManagementPolicies added in v0.38.0

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

SetManagementPolicies of this Schedule.

func (*Schedule) SetObservation added in v0.23.0

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

SetObservation for this Schedule

func (*Schedule) SetParameters added in v0.23.0

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

SetParameters for this Schedule

func (*Schedule) SetProviderConfigReference added in v0.23.0

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

SetProviderConfigReference of this Schedule.

func (*Schedule) SetPublishConnectionDetailsTo added in v0.23.0

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

SetPublishConnectionDetailsTo of this Schedule.

func (*Schedule) SetWriteConnectionSecretToReference added in v0.23.0

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

SetWriteConnectionSecretToReference of this Schedule.

type ScheduleInitParameters added in v0.38.0

type ScheduleInitParameters struct {

	// The initial capacity of the Auto Scaling group after the scheduled action runs and the capacity it attempts to maintain. Set to -1 if you don't want to change the desired capacity at the scheduled time. Defaults to 0.
	DesiredCapacity *float64 `json:"desiredCapacity,omitempty" tf:"desired_capacity,omitempty"`

	// The date and time for the recurring schedule to end, in UTC with the format "YYYY-MM-DDThh:mm:ssZ" (e.g. "2021-06-01T00:00:00Z").
	EndTime *string `json:"endTime,omitempty" tf:"end_time,omitempty"`

	// The maximum size of the Auto Scaling group. Set to -1 if you don't want to change the maximum size at the scheduled time. Defaults to 0.
	MaxSize *float64 `json:"maxSize,omitempty" tf:"max_size,omitempty"`

	// The minimum size of the Auto Scaling group. Set to -1 if you don't want to change the minimum size at the scheduled time. Defaults to 0.
	MinSize *float64 `json:"minSize,omitempty" tf:"min_size,omitempty"`

	// The recurring schedule for this action specified using the Unix cron syntax format.
	Recurrence *string `json:"recurrence,omitempty" tf:"recurrence,omitempty"`

	// The date and time for the recurring schedule to start, in UTC with the format "YYYY-MM-DDThh:mm:ssZ" (e.g. "2021-06-01T00:00:00Z").
	StartTime *string `json:"startTime,omitempty" tf:"start_time,omitempty"`

	// Specifies the time zone for a cron expression. Valid values are the canonical names of the IANA time zones (such as Etc/GMT+9 or Pacific/Tahiti).
	TimeZone *string `json:"timeZone,omitempty" tf:"time_zone,omitempty"`
}

func (*ScheduleInitParameters) DeepCopy added in v0.38.0

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

func (*ScheduleInitParameters) DeepCopyInto added in v0.38.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 added in v0.23.0

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 added in v0.23.0

func (in *ScheduleList) DeepCopy() *ScheduleList

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

func (*ScheduleList) DeepCopyInto added in v0.23.0

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 added in v0.23.0

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

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

func (*ScheduleList) GetItems added in v0.23.0

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

GetItems of this ScheduleList.

type ScheduleObservation added in v0.23.0

type ScheduleObservation struct {

	// ARN assigned by AWS to the autoscaling schedule.
	Arn *string `json:"arn,omitempty" tf:"arn,omitempty"`

	// The name of the Auto Scaling group.
	AutoscalingGroupName *string `json:"autoscalingGroupName,omitempty" tf:"autoscaling_group_name,omitempty"`

	// The initial capacity of the Auto Scaling group after the scheduled action runs and the capacity it attempts to maintain. Set to -1 if you don't want to change the desired capacity at the scheduled time. Defaults to 0.
	DesiredCapacity *float64 `json:"desiredCapacity,omitempty" tf:"desired_capacity,omitempty"`

	// The date and time for the recurring schedule to end, in UTC with the format "YYYY-MM-DDThh:mm:ssZ" (e.g. "2021-06-01T00:00:00Z").
	EndTime *string `json:"endTime,omitempty" tf:"end_time,omitempty"`

	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// The maximum size of the Auto Scaling group. Set to -1 if you don't want to change the maximum size at the scheduled time. Defaults to 0.
	MaxSize *float64 `json:"maxSize,omitempty" tf:"max_size,omitempty"`

	// The minimum size of the Auto Scaling group. Set to -1 if you don't want to change the minimum size at the scheduled time. Defaults to 0.
	MinSize *float64 `json:"minSize,omitempty" tf:"min_size,omitempty"`

	// The recurring schedule for this action specified using the Unix cron syntax format.
	Recurrence *string `json:"recurrence,omitempty" tf:"recurrence,omitempty"`

	// The date and time for the recurring schedule to start, in UTC with the format "YYYY-MM-DDThh:mm:ssZ" (e.g. "2021-06-01T00:00:00Z").
	StartTime *string `json:"startTime,omitempty" tf:"start_time,omitempty"`

	// Specifies the time zone for a cron expression. Valid values are the canonical names of the IANA time zones (such as Etc/GMT+9 or Pacific/Tahiti).
	TimeZone *string `json:"timeZone,omitempty" tf:"time_zone,omitempty"`
}

func (*ScheduleObservation) DeepCopy added in v0.23.0

func (in *ScheduleObservation) DeepCopy() *ScheduleObservation

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

func (*ScheduleObservation) DeepCopyInto added in v0.23.0

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 added in v0.23.0

type ScheduleParameters struct {

	// The name of the Auto Scaling group.
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/autoscaling/v1beta1.AutoscalingGroup
	// +kubebuilder:validation:Optional
	AutoscalingGroupName *string `json:"autoscalingGroupName,omitempty" tf:"autoscaling_group_name,omitempty"`

	// Reference to a AutoscalingGroup in autoscaling to populate autoscalingGroupName.
	// +kubebuilder:validation:Optional
	AutoscalingGroupNameRef *v1.Reference `json:"autoscalingGroupNameRef,omitempty" tf:"-"`

	// Selector for a AutoscalingGroup in autoscaling to populate autoscalingGroupName.
	// +kubebuilder:validation:Optional
	AutoscalingGroupNameSelector *v1.Selector `json:"autoscalingGroupNameSelector,omitempty" tf:"-"`

	// The initial capacity of the Auto Scaling group after the scheduled action runs and the capacity it attempts to maintain. Set to -1 if you don't want to change the desired capacity at the scheduled time. Defaults to 0.
	// +kubebuilder:validation:Optional
	DesiredCapacity *float64 `json:"desiredCapacity,omitempty" tf:"desired_capacity,omitempty"`

	// The date and time for the recurring schedule to end, in UTC with the format "YYYY-MM-DDThh:mm:ssZ" (e.g. "2021-06-01T00:00:00Z").
	// +kubebuilder:validation:Optional
	EndTime *string `json:"endTime,omitempty" tf:"end_time,omitempty"`

	// The maximum size of the Auto Scaling group. Set to -1 if you don't want to change the maximum size at the scheduled time. Defaults to 0.
	// +kubebuilder:validation:Optional
	MaxSize *float64 `json:"maxSize,omitempty" tf:"max_size,omitempty"`

	// The minimum size of the Auto Scaling group. Set to -1 if you don't want to change the minimum size at the scheduled time. Defaults to 0.
	// +kubebuilder:validation:Optional
	MinSize *float64 `json:"minSize,omitempty" tf:"min_size,omitempty"`

	// The recurring schedule for this action specified using the Unix cron syntax format.
	// +kubebuilder:validation:Optional
	Recurrence *string `json:"recurrence,omitempty" tf:"recurrence,omitempty"`

	// Region is the region you'd like your resource to be created in.
	// +upjet:crd:field:TFTag=-
	// +kubebuilder:validation:Required
	Region *string `json:"region" tf:"-"`

	// The date and time for the recurring schedule to start, in UTC with the format "YYYY-MM-DDThh:mm:ssZ" (e.g. "2021-06-01T00:00:00Z").
	// +kubebuilder:validation:Optional
	StartTime *string `json:"startTime,omitempty" tf:"start_time,omitempty"`

	// Specifies the time zone for a cron expression. Valid values are the canonical names of the IANA time zones (such as Etc/GMT+9 or Pacific/Tahiti).
	// +kubebuilder:validation:Optional
	TimeZone *string `json:"timeZone,omitempty" tf:"time_zone,omitempty"`
}

func (*ScheduleParameters) DeepCopy added in v0.23.0

func (in *ScheduleParameters) DeepCopy() *ScheduleParameters

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

func (*ScheduleParameters) DeepCopyInto added in v0.23.0

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 added in v0.23.0

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 added in v0.23.0

func (in *ScheduleSpec) DeepCopy() *ScheduleSpec

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

func (*ScheduleSpec) DeepCopyInto added in v0.23.0

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 added in v0.23.0

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

ScheduleStatus defines the observed state of Schedule.

func (*ScheduleStatus) DeepCopy added in v0.23.0

func (in *ScheduleStatus) DeepCopy() *ScheduleStatus

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

func (*ScheduleStatus) DeepCopyInto added in v0.23.0

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

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

type StepAdjustmentInitParameters added in v0.38.0

type StepAdjustmentInitParameters struct {

	// Lower bound for the
	// difference between the alarm threshold and the CloudWatch metric.
	// Without a value, AWS will treat this bound as negative infinity.
	MetricIntervalLowerBound *string `json:"metricIntervalLowerBound,omitempty" tf:"metric_interval_lower_bound,omitempty"`

	// Upper bound for the
	// difference between the alarm threshold and the CloudWatch metric.
	// Without a value, AWS will treat this bound as positive infinity. The upper bound
	// must be greater than the lower bound.
	MetricIntervalUpperBound *string `json:"metricIntervalUpperBound,omitempty" tf:"metric_interval_upper_bound,omitempty"`

	// Number of instances by which to scale. adjustment_type determines the interpretation of this number (e.g., as an absolute number or as a percentage of the existing Auto Scaling group size). A positive increment adds to the current capacity and a negative value removes from the current capacity.
	ScalingAdjustment *float64 `json:"scalingAdjustment,omitempty" tf:"scaling_adjustment,omitempty"`
}

func (*StepAdjustmentInitParameters) DeepCopy added in v0.38.0

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

func (*StepAdjustmentInitParameters) DeepCopyInto added in v0.38.0

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

type StepAdjustmentObservation added in v0.23.0

type StepAdjustmentObservation struct {

	// Lower bound for the
	// difference between the alarm threshold and the CloudWatch metric.
	// Without a value, AWS will treat this bound as negative infinity.
	MetricIntervalLowerBound *string `json:"metricIntervalLowerBound,omitempty" tf:"metric_interval_lower_bound,omitempty"`

	// Upper bound for the
	// difference between the alarm threshold and the CloudWatch metric.
	// Without a value, AWS will treat this bound as positive infinity. The upper bound
	// must be greater than the lower bound.
	MetricIntervalUpperBound *string `json:"metricIntervalUpperBound,omitempty" tf:"metric_interval_upper_bound,omitempty"`

	// Number of instances by which to scale. adjustment_type determines the interpretation of this number (e.g., as an absolute number or as a percentage of the existing Auto Scaling group size). A positive increment adds to the current capacity and a negative value removes from the current capacity.
	ScalingAdjustment *float64 `json:"scalingAdjustment,omitempty" tf:"scaling_adjustment,omitempty"`
}

func (*StepAdjustmentObservation) DeepCopy added in v0.23.0

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

func (*StepAdjustmentObservation) DeepCopyInto added in v0.23.0

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

type StepAdjustmentParameters added in v0.23.0

type StepAdjustmentParameters struct {

	// Lower bound for the
	// difference between the alarm threshold and the CloudWatch metric.
	// Without a value, AWS will treat this bound as negative infinity.
	// +kubebuilder:validation:Optional
	MetricIntervalLowerBound *string `json:"metricIntervalLowerBound,omitempty" tf:"metric_interval_lower_bound,omitempty"`

	// Upper bound for the
	// difference between the alarm threshold and the CloudWatch metric.
	// Without a value, AWS will treat this bound as positive infinity. The upper bound
	// must be greater than the lower bound.
	// +kubebuilder:validation:Optional
	MetricIntervalUpperBound *string `json:"metricIntervalUpperBound,omitempty" tf:"metric_interval_upper_bound,omitempty"`

	// Number of instances by which to scale. adjustment_type determines the interpretation of this number (e.g., as an absolute number or as a percentage of the existing Auto Scaling group size). A positive increment adds to the current capacity and a negative value removes from the current capacity.
	// +kubebuilder:validation:Optional
	ScalingAdjustment *float64 `json:"scalingAdjustment" tf:"scaling_adjustment,omitempty"`
}

func (*StepAdjustmentParameters) DeepCopy added in v0.23.0

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

func (*StepAdjustmentParameters) DeepCopyInto added in v0.23.0

func (in *StepAdjustmentParameters) DeepCopyInto(out *StepAdjustmentParameters)

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

type TagInitParameters added in v0.38.0

type TagInitParameters struct {

	// Key
	Key *string `json:"key,omitempty" tf:"key,omitempty"`

	// Enables propagation of the tag to
	// Amazon EC2 instances launched via this ASG
	PropagateAtLaunch *bool `json:"propagateAtLaunch,omitempty" tf:"propagate_at_launch,omitempty"`

	// Value
	Value *string `json:"value,omitempty" tf:"value,omitempty"`
}

func (*TagInitParameters) DeepCopy added in v0.38.0

func (in *TagInitParameters) DeepCopy() *TagInitParameters

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

func (*TagInitParameters) DeepCopyInto added in v0.38.0

func (in *TagInitParameters) DeepCopyInto(out *TagInitParameters)

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

type TagObservation

type TagObservation struct {

	// Key
	Key *string `json:"key,omitempty" tf:"key,omitempty"`

	// Enables propagation of the tag to
	// Amazon EC2 instances launched via this ASG
	PropagateAtLaunch *bool `json:"propagateAtLaunch,omitempty" tf:"propagate_at_launch,omitempty"`

	// Value
	Value *string `json:"value,omitempty" tf:"value,omitempty"`
}

func (*TagObservation) DeepCopy

func (in *TagObservation) DeepCopy() *TagObservation

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

func (*TagObservation) DeepCopyInto

func (in *TagObservation) DeepCopyInto(out *TagObservation)

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

type TagParameters

type TagParameters struct {

	// Key
	// +kubebuilder:validation:Optional
	Key *string `json:"key" tf:"key,omitempty"`

	// Enables propagation of the tag to
	// Amazon EC2 instances launched via this ASG
	// +kubebuilder:validation:Optional
	PropagateAtLaunch *bool `json:"propagateAtLaunch" tf:"propagate_at_launch,omitempty"`

	// Value
	// +kubebuilder:validation:Optional
	Value *string `json:"value" tf:"value,omitempty"`
}

func (*TagParameters) DeepCopy

func (in *TagParameters) DeepCopy() *TagParameters

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

func (*TagParameters) DeepCopyInto

func (in *TagParameters) DeepCopyInto(out *TagParameters)

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

type TargetTrackingConfigurationInitParameters added in v0.38.0

type TargetTrackingConfigurationInitParameters struct {

	// Customized metric. Conflicts with predefined_metric_specification.
	CustomizedMetricSpecification []CustomizedMetricSpecificationInitParameters `json:"customizedMetricSpecification,omitempty" tf:"customized_metric_specification,omitempty"`

	// Whether scale in by the target tracking policy is disabled.
	DisableScaleIn *bool `json:"disableScaleIn,omitempty" tf:"disable_scale_in,omitempty"`

	// Predefined metric. Conflicts with customized_metric_specification.
	PredefinedMetricSpecification []PredefinedMetricSpecificationInitParameters `json:"predefinedMetricSpecification,omitempty" tf:"predefined_metric_specification,omitempty"`

	// Target value for the metric.
	TargetValue *float64 `json:"targetValue,omitempty" tf:"target_value,omitempty"`
}

func (*TargetTrackingConfigurationInitParameters) DeepCopy added in v0.38.0

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

func (*TargetTrackingConfigurationInitParameters) DeepCopyInto added in v0.38.0

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

type TargetTrackingConfigurationObservation added in v0.23.0

type TargetTrackingConfigurationObservation struct {

	// Customized metric. Conflicts with predefined_metric_specification.
	CustomizedMetricSpecification []CustomizedMetricSpecificationObservation `json:"customizedMetricSpecification,omitempty" tf:"customized_metric_specification,omitempty"`

	// Whether scale in by the target tracking policy is disabled.
	DisableScaleIn *bool `json:"disableScaleIn,omitempty" tf:"disable_scale_in,omitempty"`

	// Predefined metric. Conflicts with customized_metric_specification.
	PredefinedMetricSpecification []PredefinedMetricSpecificationObservation `json:"predefinedMetricSpecification,omitempty" tf:"predefined_metric_specification,omitempty"`

	// Target value for the metric.
	TargetValue *float64 `json:"targetValue,omitempty" tf:"target_value,omitempty"`
}

func (*TargetTrackingConfigurationObservation) DeepCopy added in v0.23.0

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

func (*TargetTrackingConfigurationObservation) DeepCopyInto added in v0.23.0

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

type TargetTrackingConfigurationParameters added in v0.23.0

type TargetTrackingConfigurationParameters struct {

	// Customized metric. Conflicts with predefined_metric_specification.
	// +kubebuilder:validation:Optional
	CustomizedMetricSpecification []CustomizedMetricSpecificationParameters `json:"customizedMetricSpecification,omitempty" tf:"customized_metric_specification,omitempty"`

	// Whether scale in by the target tracking policy is disabled.
	// +kubebuilder:validation:Optional
	DisableScaleIn *bool `json:"disableScaleIn,omitempty" tf:"disable_scale_in,omitempty"`

	// Predefined metric. Conflicts with customized_metric_specification.
	// +kubebuilder:validation:Optional
	PredefinedMetricSpecification []PredefinedMetricSpecificationParameters `json:"predefinedMetricSpecification,omitempty" tf:"predefined_metric_specification,omitempty"`

	// Target value for the metric.
	// +kubebuilder:validation:Optional
	TargetValue *float64 `json:"targetValue" tf:"target_value,omitempty"`
}

func (*TargetTrackingConfigurationParameters) DeepCopy added in v0.23.0

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

func (*TargetTrackingConfigurationParameters) DeepCopyInto added in v0.23.0

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

type TotalLocalStorageGbInitParameters added in v0.38.0

type TotalLocalStorageGbInitParameters struct {

	// Maximum.
	Max *float64 `json:"max,omitempty" tf:"max,omitempty"`

	// Minimum.
	Min *float64 `json:"min,omitempty" tf:"min,omitempty"`
}

func (*TotalLocalStorageGbInitParameters) DeepCopy added in v0.38.0

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

func (*TotalLocalStorageGbInitParameters) DeepCopyInto added in v0.38.0

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

type TotalLocalStorageGbObservation added in v0.29.0

type TotalLocalStorageGbObservation struct {

	// Maximum.
	Max *float64 `json:"max,omitempty" tf:"max,omitempty"`

	// Minimum.
	Min *float64 `json:"min,omitempty" tf:"min,omitempty"`
}

func (*TotalLocalStorageGbObservation) DeepCopy added in v0.29.0

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

func (*TotalLocalStorageGbObservation) DeepCopyInto added in v0.29.0

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

type TotalLocalStorageGbParameters added in v0.29.0

type TotalLocalStorageGbParameters struct {

	// Maximum.
	// +kubebuilder:validation:Optional
	Max *float64 `json:"max,omitempty" tf:"max,omitempty"`

	// Minimum.
	// +kubebuilder:validation:Optional
	Min *float64 `json:"min,omitempty" tf:"min,omitempty"`
}

func (*TotalLocalStorageGbParameters) DeepCopy added in v0.29.0

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

func (*TotalLocalStorageGbParameters) DeepCopyInto added in v0.29.0

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

type VcpuCountInitParameters added in v0.38.0

type VcpuCountInitParameters struct {

	// Maximum.
	Max *float64 `json:"max,omitempty" tf:"max,omitempty"`

	// Minimum.
	Min *float64 `json:"min,omitempty" tf:"min,omitempty"`
}

func (*VcpuCountInitParameters) DeepCopy added in v0.38.0

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

func (*VcpuCountInitParameters) DeepCopyInto added in v0.38.0

func (in *VcpuCountInitParameters) DeepCopyInto(out *VcpuCountInitParameters)

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

type VcpuCountObservation added in v0.29.0

type VcpuCountObservation struct {

	// Maximum.
	Max *float64 `json:"max,omitempty" tf:"max,omitempty"`

	// Minimum.
	Min *float64 `json:"min,omitempty" tf:"min,omitempty"`
}

func (*VcpuCountObservation) DeepCopy added in v0.29.0

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

func (*VcpuCountObservation) DeepCopyInto added in v0.29.0

func (in *VcpuCountObservation) DeepCopyInto(out *VcpuCountObservation)

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

type VcpuCountParameters added in v0.29.0

type VcpuCountParameters struct {

	// Maximum.
	// +kubebuilder:validation:Optional
	Max *float64 `json:"max,omitempty" tf:"max,omitempty"`

	// Minimum.
	// +kubebuilder:validation:Optional
	Min *float64 `json:"min,omitempty" tf:"min,omitempty"`
}

func (*VcpuCountParameters) DeepCopy added in v0.29.0

func (in *VcpuCountParameters) DeepCopy() *VcpuCountParameters

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

func (*VcpuCountParameters) DeepCopyInto added in v0.29.0

func (in *VcpuCountParameters) DeepCopyInto(out *VcpuCountParameters)

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

type WarmPoolInitParameters added in v0.38.0

type WarmPoolInitParameters struct {

	// Whether instances in the Auto Scaling group can be returned to the warm pool on scale in. The default is to terminate instances in the Auto Scaling group when the group scales in.
	InstanceReusePolicy []InstanceReusePolicyInitParameters `json:"instanceReusePolicy,omitempty" tf:"instance_reuse_policy,omitempty"`

	// Total maximum number of instances that are allowed to be in the warm pool or in any state except Terminated for the Auto Scaling group.
	MaxGroupPreparedCapacity *float64 `json:"maxGroupPreparedCapacity,omitempty" tf:"max_group_prepared_capacity,omitempty"`

	// Minimum size of the Auto Scaling Group.
	// (See also Waiting for Capacity below.)
	MinSize *float64 `json:"minSize,omitempty" tf:"min_size,omitempty"`

	// Sets the instance state to transition to after the lifecycle hooks finish. Valid values are: Stopped (default), Running or Hibernated.
	PoolState *string `json:"poolState,omitempty" tf:"pool_state,omitempty"`
}

func (*WarmPoolInitParameters) DeepCopy added in v0.38.0

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

func (*WarmPoolInitParameters) DeepCopyInto added in v0.38.0

func (in *WarmPoolInitParameters) DeepCopyInto(out *WarmPoolInitParameters)

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

type WarmPoolObservation

type WarmPoolObservation struct {

	// Whether instances in the Auto Scaling group can be returned to the warm pool on scale in. The default is to terminate instances in the Auto Scaling group when the group scales in.
	InstanceReusePolicy []InstanceReusePolicyObservation `json:"instanceReusePolicy,omitempty" tf:"instance_reuse_policy,omitempty"`

	// Total maximum number of instances that are allowed to be in the warm pool or in any state except Terminated for the Auto Scaling group.
	MaxGroupPreparedCapacity *float64 `json:"maxGroupPreparedCapacity,omitempty" tf:"max_group_prepared_capacity,omitempty"`

	// Minimum size of the Auto Scaling Group.
	// (See also Waiting for Capacity below.)
	MinSize *float64 `json:"minSize,omitempty" tf:"min_size,omitempty"`

	// Sets the instance state to transition to after the lifecycle hooks finish. Valid values are: Stopped (default), Running or Hibernated.
	PoolState *string `json:"poolState,omitempty" tf:"pool_state,omitempty"`
}

func (*WarmPoolObservation) DeepCopy

func (in *WarmPoolObservation) DeepCopy() *WarmPoolObservation

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

func (*WarmPoolObservation) DeepCopyInto

func (in *WarmPoolObservation) DeepCopyInto(out *WarmPoolObservation)

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

type WarmPoolParameters

type WarmPoolParameters struct {

	// Whether instances in the Auto Scaling group can be returned to the warm pool on scale in. The default is to terminate instances in the Auto Scaling group when the group scales in.
	// +kubebuilder:validation:Optional
	InstanceReusePolicy []InstanceReusePolicyParameters `json:"instanceReusePolicy,omitempty" tf:"instance_reuse_policy,omitempty"`

	// Total maximum number of instances that are allowed to be in the warm pool or in any state except Terminated for the Auto Scaling group.
	// +kubebuilder:validation:Optional
	MaxGroupPreparedCapacity *float64 `json:"maxGroupPreparedCapacity,omitempty" tf:"max_group_prepared_capacity,omitempty"`

	// Minimum size of the Auto Scaling Group.
	// (See also Waiting for Capacity below.)
	// +kubebuilder:validation:Optional
	MinSize *float64 `json:"minSize,omitempty" tf:"min_size,omitempty"`

	// Sets the instance state to transition to after the lifecycle hooks finish. Valid values are: Stopped (default), Running or Hibernated.
	// +kubebuilder:validation:Optional
	PoolState *string `json:"poolState,omitempty" tf:"pool_state,omitempty"`
}

func (*WarmPoolParameters) DeepCopy

func (in *WarmPoolParameters) DeepCopy() *WarmPoolParameters

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

func (*WarmPoolParameters) DeepCopyInto

func (in *WarmPoolParameters) DeepCopyInto(out *WarmPoolParameters)

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