v1beta2

package
v1.13.0-rc.0 Latest Latest
Warning

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

Go to latest
Published: Aug 22, 2024 License: Apache-2.0 Imports: 10 Imported by: 0

Documentation

Overview

+kubebuilder:object:generate=true +groupName=autoscalingplans.aws.upbound.io +versionName=v1beta2

Index

Constants

View Source
const (
	CRDGroup   = "autoscalingplans.aws.upbound.io"
	CRDVersion = "v1beta2"
)

Package type metadata.

Variables

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 (
	ScalingPlan_Kind             = "ScalingPlan"
	ScalingPlan_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: ScalingPlan_Kind}.String()
	ScalingPlan_KindAPIVersion   = ScalingPlan_Kind + "." + CRDGroupVersion.String()
	ScalingPlan_GroupVersionKind = CRDGroupVersion.WithKind(ScalingPlan_Kind)
)

Repository type metadata.

Functions

This section is empty.

Types

type ApplicationSourceInitParameters

type ApplicationSourceInitParameters struct {

	// ARN of a AWS CloudFormation stack.
	CloudFormationStackArn *string `json:"cloudformationStackArn,omitempty" tf:"cloudformation_stack_arn,omitempty"`

	// Set of tags.
	TagFilter []TagFilterInitParameters `json:"tagFilter,omitempty" tf:"tag_filter,omitempty"`
}

func (*ApplicationSourceInitParameters) DeepCopy

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

func (*ApplicationSourceInitParameters) DeepCopyInto

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

type ApplicationSourceObservation

type ApplicationSourceObservation struct {

	// ARN of a AWS CloudFormation stack.
	CloudFormationStackArn *string `json:"cloudformationStackArn,omitempty" tf:"cloudformation_stack_arn,omitempty"`

	// Set of tags.
	TagFilter []TagFilterObservation `json:"tagFilter,omitempty" tf:"tag_filter,omitempty"`
}

func (*ApplicationSourceObservation) DeepCopy

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

func (*ApplicationSourceObservation) DeepCopyInto

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

type ApplicationSourceParameters

type ApplicationSourceParameters struct {

	// ARN of a AWS CloudFormation stack.
	// +kubebuilder:validation:Optional
	CloudFormationStackArn *string `json:"cloudformationStackArn,omitempty" tf:"cloudformation_stack_arn,omitempty"`

	// Set of tags.
	// +kubebuilder:validation:Optional
	TagFilter []TagFilterParameters `json:"tagFilter,omitempty" tf:"tag_filter,omitempty"`
}

func (*ApplicationSourceParameters) DeepCopy

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

func (*ApplicationSourceParameters) DeepCopyInto

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

type CustomizedLoadMetricSpecificationInitParameters

type CustomizedLoadMetricSpecificationInitParameters struct {

	// Dimensions of the metric.
	// +mapType=granular
	Dimensions map[string]*string `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"`

	// Statistic of the metric. Currently, the value must always be Sum.
	Statistic *string `json:"statistic,omitempty" tf:"statistic,omitempty"`

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

func (*CustomizedLoadMetricSpecificationInitParameters) DeepCopy

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

func (*CustomizedLoadMetricSpecificationInitParameters) DeepCopyInto

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

type CustomizedLoadMetricSpecificationObservation

type CustomizedLoadMetricSpecificationObservation struct {

	// Dimensions of the metric.
	// +mapType=granular
	Dimensions map[string]*string `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"`

	// Statistic of the metric. Currently, the value must always be Sum.
	Statistic *string `json:"statistic,omitempty" tf:"statistic,omitempty"`

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

func (*CustomizedLoadMetricSpecificationObservation) DeepCopy

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

func (*CustomizedLoadMetricSpecificationObservation) DeepCopyInto

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

type CustomizedLoadMetricSpecificationParameters

type CustomizedLoadMetricSpecificationParameters struct {

	// Dimensions of the metric.
	// +kubebuilder:validation:Optional
	// +mapType=granular
	Dimensions map[string]*string `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"`

	// Statistic of the metric. Currently, the value must always be Sum.
	// +kubebuilder:validation:Optional
	Statistic *string `json:"statistic" tf:"statistic,omitempty"`

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

func (*CustomizedLoadMetricSpecificationParameters) DeepCopy

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

func (*CustomizedLoadMetricSpecificationParameters) DeepCopyInto

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

type CustomizedScalingMetricSpecificationInitParameters

type CustomizedScalingMetricSpecificationInitParameters struct {

	// Dimensions of the metric.
	// +mapType=granular
	Dimensions map[string]*string `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"`

	// Statistic of the metric. Currently, the value must always be Sum.
	Statistic *string `json:"statistic,omitempty" tf:"statistic,omitempty"`

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

func (*CustomizedScalingMetricSpecificationInitParameters) DeepCopy

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

func (*CustomizedScalingMetricSpecificationInitParameters) DeepCopyInto

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

type CustomizedScalingMetricSpecificationObservation

type CustomizedScalingMetricSpecificationObservation struct {

	// Dimensions of the metric.
	// +mapType=granular
	Dimensions map[string]*string `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"`

	// Statistic of the metric. Currently, the value must always be Sum.
	Statistic *string `json:"statistic,omitempty" tf:"statistic,omitempty"`

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

func (*CustomizedScalingMetricSpecificationObservation) DeepCopy

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

func (*CustomizedScalingMetricSpecificationObservation) DeepCopyInto

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

type CustomizedScalingMetricSpecificationParameters

type CustomizedScalingMetricSpecificationParameters struct {

	// Dimensions of the metric.
	// +kubebuilder:validation:Optional
	// +mapType=granular
	Dimensions map[string]*string `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"`

	// Statistic of the metric. Currently, the value must always be Sum.
	// +kubebuilder:validation:Optional
	Statistic *string `json:"statistic" tf:"statistic,omitempty"`

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

func (*CustomizedScalingMetricSpecificationParameters) DeepCopy

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

func (*CustomizedScalingMetricSpecificationParameters) DeepCopyInto

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

type PredefinedLoadMetricSpecificationInitParameters

type PredefinedLoadMetricSpecificationInitParameters struct {

	// Metric type. Valid values: ALBTargetGroupRequestCount, ASGTotalCPUUtilization, ASGTotalNetworkIn, ASGTotalNetworkOut.
	PredefinedLoadMetricType *string `json:"predefinedLoadMetricType,omitempty" tf:"predefined_load_metric_type,omitempty"`

	// Identifies the resource associated with the metric type.
	ResourceLabel *string `json:"resourceLabel,omitempty" tf:"resource_label,omitempty"`
}

func (*PredefinedLoadMetricSpecificationInitParameters) DeepCopy

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

func (*PredefinedLoadMetricSpecificationInitParameters) DeepCopyInto

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

type PredefinedLoadMetricSpecificationObservation

type PredefinedLoadMetricSpecificationObservation struct {

	// Metric type. Valid values: ALBTargetGroupRequestCount, ASGTotalCPUUtilization, ASGTotalNetworkIn, ASGTotalNetworkOut.
	PredefinedLoadMetricType *string `json:"predefinedLoadMetricType,omitempty" tf:"predefined_load_metric_type,omitempty"`

	// Identifies the resource associated with the metric type.
	ResourceLabel *string `json:"resourceLabel,omitempty" tf:"resource_label,omitempty"`
}

func (*PredefinedLoadMetricSpecificationObservation) DeepCopy

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

func (*PredefinedLoadMetricSpecificationObservation) DeepCopyInto

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

type PredefinedLoadMetricSpecificationParameters

type PredefinedLoadMetricSpecificationParameters struct {

	// Metric type. Valid values: ALBTargetGroupRequestCount, ASGTotalCPUUtilization, ASGTotalNetworkIn, ASGTotalNetworkOut.
	// +kubebuilder:validation:Optional
	PredefinedLoadMetricType *string `json:"predefinedLoadMetricType" tf:"predefined_load_metric_type,omitempty"`

	// Identifies the resource associated with the metric type.
	// +kubebuilder:validation:Optional
	ResourceLabel *string `json:"resourceLabel,omitempty" tf:"resource_label,omitempty"`
}

func (*PredefinedLoadMetricSpecificationParameters) DeepCopy

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

func (*PredefinedLoadMetricSpecificationParameters) DeepCopyInto

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

type PredefinedScalingMetricSpecificationInitParameters

type PredefinedScalingMetricSpecificationInitParameters struct {

	// Metric type. Valid values: ALBRequestCountPerTarget, ASGAverageCPUUtilization, ASGAverageNetworkIn, ASGAverageNetworkOut, DynamoDBReadCapacityUtilization, DynamoDBWriteCapacityUtilization, ECSServiceAverageCPUUtilization, ECSServiceAverageMemoryUtilization, EC2SpotFleetRequestAverageCPUUtilization, EC2SpotFleetRequestAverageNetworkIn, EC2SpotFleetRequestAverageNetworkOut, RDSReaderAverageCPUUtilization, RDSReaderAverageDatabaseConnections.
	PredefinedScalingMetricType *string `json:"predefinedScalingMetricType,omitempty" tf:"predefined_scaling_metric_type,omitempty"`

	// Identifies the resource associated with the metric type.
	ResourceLabel *string `json:"resourceLabel,omitempty" tf:"resource_label,omitempty"`
}

func (*PredefinedScalingMetricSpecificationInitParameters) DeepCopy

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

func (*PredefinedScalingMetricSpecificationInitParameters) DeepCopyInto

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

type PredefinedScalingMetricSpecificationObservation

type PredefinedScalingMetricSpecificationObservation struct {

	// Metric type. Valid values: ALBRequestCountPerTarget, ASGAverageCPUUtilization, ASGAverageNetworkIn, ASGAverageNetworkOut, DynamoDBReadCapacityUtilization, DynamoDBWriteCapacityUtilization, ECSServiceAverageCPUUtilization, ECSServiceAverageMemoryUtilization, EC2SpotFleetRequestAverageCPUUtilization, EC2SpotFleetRequestAverageNetworkIn, EC2SpotFleetRequestAverageNetworkOut, RDSReaderAverageCPUUtilization, RDSReaderAverageDatabaseConnections.
	PredefinedScalingMetricType *string `json:"predefinedScalingMetricType,omitempty" tf:"predefined_scaling_metric_type,omitempty"`

	// Identifies the resource associated with the metric type.
	ResourceLabel *string `json:"resourceLabel,omitempty" tf:"resource_label,omitempty"`
}

func (*PredefinedScalingMetricSpecificationObservation) DeepCopy

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

func (*PredefinedScalingMetricSpecificationObservation) DeepCopyInto

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

type PredefinedScalingMetricSpecificationParameters

type PredefinedScalingMetricSpecificationParameters struct {

	// Metric type. Valid values: ALBRequestCountPerTarget, ASGAverageCPUUtilization, ASGAverageNetworkIn, ASGAverageNetworkOut, DynamoDBReadCapacityUtilization, DynamoDBWriteCapacityUtilization, ECSServiceAverageCPUUtilization, ECSServiceAverageMemoryUtilization, EC2SpotFleetRequestAverageCPUUtilization, EC2SpotFleetRequestAverageNetworkIn, EC2SpotFleetRequestAverageNetworkOut, RDSReaderAverageCPUUtilization, RDSReaderAverageDatabaseConnections.
	// +kubebuilder:validation:Optional
	PredefinedScalingMetricType *string `json:"predefinedScalingMetricType" tf:"predefined_scaling_metric_type,omitempty"`

	// Identifies the resource associated with the metric type.
	// +kubebuilder:validation:Optional
	ResourceLabel *string `json:"resourceLabel,omitempty" tf:"resource_label,omitempty"`
}

func (*PredefinedScalingMetricSpecificationParameters) DeepCopy

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

func (*PredefinedScalingMetricSpecificationParameters) DeepCopyInto

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

type ScalingInstructionInitParameters

type ScalingInstructionInitParameters struct {

	// Customized load metric to use for predictive scaling. You must specify either customized_load_metric_specification or predefined_load_metric_specification when configuring predictive scaling.
	// More details can be found in the AWS Auto Scaling API Reference.
	CustomizedLoadMetricSpecification *CustomizedLoadMetricSpecificationInitParameters `json:"customizedLoadMetricSpecification,omitempty" tf:"customized_load_metric_specification,omitempty"`

	// Boolean controlling whether dynamic scaling by AWS Auto Scaling is disabled. Defaults to false.
	DisableDynamicScaling *bool `json:"disableDynamicScaling,omitempty" tf:"disable_dynamic_scaling,omitempty"`

	// Maximum capacity of the resource. The exception to this upper limit is if you specify a non-default setting for predictive_scaling_max_capacity_behavior.
	MaxCapacity *float64 `json:"maxCapacity,omitempty" tf:"max_capacity,omitempty"`

	// Minimum capacity of the resource.
	MinCapacity *float64 `json:"minCapacity,omitempty" tf:"min_capacity,omitempty"`

	// Predefined load metric to use for predictive scaling. You must specify either predefined_load_metric_specification or customized_load_metric_specification when configuring predictive scaling.
	// More details can be found in the AWS Auto Scaling API Reference.
	PredefinedLoadMetricSpecification *PredefinedLoadMetricSpecificationInitParameters `json:"predefinedLoadMetricSpecification,omitempty" tf:"predefined_load_metric_specification,omitempty"`

	// Defines the behavior that should be applied if the forecast capacity approaches or exceeds the maximum capacity specified for the resource.
	// Valid values: SetForecastCapacityToMaxCapacity, SetMaxCapacityAboveForecastCapacity, SetMaxCapacityToForecastCapacity.
	PredictiveScalingMaxCapacityBehavior *string `json:"predictiveScalingMaxCapacityBehavior,omitempty" tf:"predictive_scaling_max_capacity_behavior,omitempty"`

	// Size of the capacity buffer to use when the forecast capacity is close to or exceeds the maximum capacity.
	PredictiveScalingMaxCapacityBuffer *float64 `json:"predictiveScalingMaxCapacityBuffer,omitempty" tf:"predictive_scaling_max_capacity_buffer,omitempty"`

	// Predictive scaling mode. Valid values: ForecastAndScale, ForecastOnly.
	PredictiveScalingMode *string `json:"predictiveScalingMode,omitempty" tf:"predictive_scaling_mode,omitempty"`

	// ID of the resource. This string consists of the resource type and unique identifier.
	ResourceID *string `json:"resourceId,omitempty" tf:"resource_id,omitempty"`

	// Scalable dimension associated with the resource. Valid values: autoscaling:autoScalingGroup:DesiredCapacity, dynamodb:index:ReadCapacityUnits, dynamodb:index:WriteCapacityUnits, dynamodb:table:ReadCapacityUnits, dynamodb:table:WriteCapacityUnits, ecs:service:DesiredCount, ec2:spot-fleet-request:TargetCapacity, rds:cluster:ReadReplicaCount.
	ScalableDimension *string `json:"scalableDimension,omitempty" tf:"scalable_dimension,omitempty"`

	// Controls whether a resource's externally created scaling policies are kept or replaced. Valid values: KeepExternalPolicies, ReplaceExternalPolicies. Defaults to KeepExternalPolicies.
	ScalingPolicyUpdateBehavior *string `json:"scalingPolicyUpdateBehavior,omitempty" tf:"scaling_policy_update_behavior,omitempty"`

	// Amount of time, in seconds, to buffer the run time of scheduled scaling actions when scaling out.
	ScheduledActionBufferTime *float64 `json:"scheduledActionBufferTime,omitempty" tf:"scheduled_action_buffer_time,omitempty"`

	// Namespace of the AWS service. Valid values: autoscaling, dynamodb, ecs, ec2, rds.
	ServiceNamespace *string `json:"serviceNamespace,omitempty" tf:"service_namespace,omitempty"`

	// Structure that defines new target tracking configurations. Each of these structures includes a specific scaling metric and a target value for the metric, along with various parameters to use with dynamic scaling.
	// More details can be found in the AWS Auto Scaling API Reference.
	TargetTrackingConfiguration []TargetTrackingConfigurationInitParameters `json:"targetTrackingConfiguration,omitempty" tf:"target_tracking_configuration,omitempty"`
}

func (*ScalingInstructionInitParameters) DeepCopy

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

func (*ScalingInstructionInitParameters) DeepCopyInto

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

type ScalingInstructionObservation

type ScalingInstructionObservation struct {

	// Customized load metric to use for predictive scaling. You must specify either customized_load_metric_specification or predefined_load_metric_specification when configuring predictive scaling.
	// More details can be found in the AWS Auto Scaling API Reference.
	CustomizedLoadMetricSpecification *CustomizedLoadMetricSpecificationObservation `json:"customizedLoadMetricSpecification,omitempty" tf:"customized_load_metric_specification,omitempty"`

	// Boolean controlling whether dynamic scaling by AWS Auto Scaling is disabled. Defaults to false.
	DisableDynamicScaling *bool `json:"disableDynamicScaling,omitempty" tf:"disable_dynamic_scaling,omitempty"`

	// Maximum capacity of the resource. The exception to this upper limit is if you specify a non-default setting for predictive_scaling_max_capacity_behavior.
	MaxCapacity *float64 `json:"maxCapacity,omitempty" tf:"max_capacity,omitempty"`

	// Minimum capacity of the resource.
	MinCapacity *float64 `json:"minCapacity,omitempty" tf:"min_capacity,omitempty"`

	// Predefined load metric to use for predictive scaling. You must specify either predefined_load_metric_specification or customized_load_metric_specification when configuring predictive scaling.
	// More details can be found in the AWS Auto Scaling API Reference.
	PredefinedLoadMetricSpecification *PredefinedLoadMetricSpecificationObservation `json:"predefinedLoadMetricSpecification,omitempty" tf:"predefined_load_metric_specification,omitempty"`

	// Defines the behavior that should be applied if the forecast capacity approaches or exceeds the maximum capacity specified for the resource.
	// Valid values: SetForecastCapacityToMaxCapacity, SetMaxCapacityAboveForecastCapacity, SetMaxCapacityToForecastCapacity.
	PredictiveScalingMaxCapacityBehavior *string `json:"predictiveScalingMaxCapacityBehavior,omitempty" tf:"predictive_scaling_max_capacity_behavior,omitempty"`

	// Size of the capacity buffer to use when the forecast capacity is close to or exceeds the maximum capacity.
	PredictiveScalingMaxCapacityBuffer *float64 `json:"predictiveScalingMaxCapacityBuffer,omitempty" tf:"predictive_scaling_max_capacity_buffer,omitempty"`

	// Predictive scaling mode. Valid values: ForecastAndScale, ForecastOnly.
	PredictiveScalingMode *string `json:"predictiveScalingMode,omitempty" tf:"predictive_scaling_mode,omitempty"`

	// ID of the resource. This string consists of the resource type and unique identifier.
	ResourceID *string `json:"resourceId,omitempty" tf:"resource_id,omitempty"`

	// Scalable dimension associated with the resource. Valid values: autoscaling:autoScalingGroup:DesiredCapacity, dynamodb:index:ReadCapacityUnits, dynamodb:index:WriteCapacityUnits, dynamodb:table:ReadCapacityUnits, dynamodb:table:WriteCapacityUnits, ecs:service:DesiredCount, ec2:spot-fleet-request:TargetCapacity, rds:cluster:ReadReplicaCount.
	ScalableDimension *string `json:"scalableDimension,omitempty" tf:"scalable_dimension,omitempty"`

	// Controls whether a resource's externally created scaling policies are kept or replaced. Valid values: KeepExternalPolicies, ReplaceExternalPolicies. Defaults to KeepExternalPolicies.
	ScalingPolicyUpdateBehavior *string `json:"scalingPolicyUpdateBehavior,omitempty" tf:"scaling_policy_update_behavior,omitempty"`

	// Amount of time, in seconds, to buffer the run time of scheduled scaling actions when scaling out.
	ScheduledActionBufferTime *float64 `json:"scheduledActionBufferTime,omitempty" tf:"scheduled_action_buffer_time,omitempty"`

	// Namespace of the AWS service. Valid values: autoscaling, dynamodb, ecs, ec2, rds.
	ServiceNamespace *string `json:"serviceNamespace,omitempty" tf:"service_namespace,omitempty"`

	// Structure that defines new target tracking configurations. Each of these structures includes a specific scaling metric and a target value for the metric, along with various parameters to use with dynamic scaling.
	// More details can be found in the AWS Auto Scaling API Reference.
	TargetTrackingConfiguration []TargetTrackingConfigurationObservation `json:"targetTrackingConfiguration,omitempty" tf:"target_tracking_configuration,omitempty"`
}

func (*ScalingInstructionObservation) DeepCopy

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

func (*ScalingInstructionObservation) DeepCopyInto

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

type ScalingInstructionParameters

type ScalingInstructionParameters struct {

	// Customized load metric to use for predictive scaling. You must specify either customized_load_metric_specification or predefined_load_metric_specification when configuring predictive scaling.
	// More details can be found in the AWS Auto Scaling API Reference.
	// +kubebuilder:validation:Optional
	CustomizedLoadMetricSpecification *CustomizedLoadMetricSpecificationParameters `json:"customizedLoadMetricSpecification,omitempty" tf:"customized_load_metric_specification,omitempty"`

	// Boolean controlling whether dynamic scaling by AWS Auto Scaling is disabled. Defaults to false.
	// +kubebuilder:validation:Optional
	DisableDynamicScaling *bool `json:"disableDynamicScaling,omitempty" tf:"disable_dynamic_scaling,omitempty"`

	// Maximum capacity of the resource. The exception to this upper limit is if you specify a non-default setting for predictive_scaling_max_capacity_behavior.
	// +kubebuilder:validation:Optional
	MaxCapacity *float64 `json:"maxCapacity" tf:"max_capacity,omitempty"`

	// Minimum capacity of the resource.
	// +kubebuilder:validation:Optional
	MinCapacity *float64 `json:"minCapacity" tf:"min_capacity,omitempty"`

	// Predefined load metric to use for predictive scaling. You must specify either predefined_load_metric_specification or customized_load_metric_specification when configuring predictive scaling.
	// More details can be found in the AWS Auto Scaling API Reference.
	// +kubebuilder:validation:Optional
	PredefinedLoadMetricSpecification *PredefinedLoadMetricSpecificationParameters `json:"predefinedLoadMetricSpecification,omitempty" tf:"predefined_load_metric_specification,omitempty"`

	// Defines the behavior that should be applied if the forecast capacity approaches or exceeds the maximum capacity specified for the resource.
	// Valid values: SetForecastCapacityToMaxCapacity, SetMaxCapacityAboveForecastCapacity, SetMaxCapacityToForecastCapacity.
	// +kubebuilder:validation:Optional
	PredictiveScalingMaxCapacityBehavior *string `json:"predictiveScalingMaxCapacityBehavior,omitempty" tf:"predictive_scaling_max_capacity_behavior,omitempty"`

	// Size of the capacity buffer to use when the forecast capacity is close to or exceeds the maximum capacity.
	// +kubebuilder:validation:Optional
	PredictiveScalingMaxCapacityBuffer *float64 `json:"predictiveScalingMaxCapacityBuffer,omitempty" tf:"predictive_scaling_max_capacity_buffer,omitempty"`

	// Predictive scaling mode. Valid values: ForecastAndScale, ForecastOnly.
	// +kubebuilder:validation:Optional
	PredictiveScalingMode *string `json:"predictiveScalingMode,omitempty" tf:"predictive_scaling_mode,omitempty"`

	// ID of the resource. This string consists of the resource type and unique identifier.
	// +kubebuilder:validation:Optional
	ResourceID *string `json:"resourceId" tf:"resource_id,omitempty"`

	// Scalable dimension associated with the resource. Valid values: autoscaling:autoScalingGroup:DesiredCapacity, dynamodb:index:ReadCapacityUnits, dynamodb:index:WriteCapacityUnits, dynamodb:table:ReadCapacityUnits, dynamodb:table:WriteCapacityUnits, ecs:service:DesiredCount, ec2:spot-fleet-request:TargetCapacity, rds:cluster:ReadReplicaCount.
	// +kubebuilder:validation:Optional
	ScalableDimension *string `json:"scalableDimension" tf:"scalable_dimension,omitempty"`

	// Controls whether a resource's externally created scaling policies are kept or replaced. Valid values: KeepExternalPolicies, ReplaceExternalPolicies. Defaults to KeepExternalPolicies.
	// +kubebuilder:validation:Optional
	ScalingPolicyUpdateBehavior *string `json:"scalingPolicyUpdateBehavior,omitempty" tf:"scaling_policy_update_behavior,omitempty"`

	// Amount of time, in seconds, to buffer the run time of scheduled scaling actions when scaling out.
	// +kubebuilder:validation:Optional
	ScheduledActionBufferTime *float64 `json:"scheduledActionBufferTime,omitempty" tf:"scheduled_action_buffer_time,omitempty"`

	// Namespace of the AWS service. Valid values: autoscaling, dynamodb, ecs, ec2, rds.
	// +kubebuilder:validation:Optional
	ServiceNamespace *string `json:"serviceNamespace" tf:"service_namespace,omitempty"`

	// Structure that defines new target tracking configurations. Each of these structures includes a specific scaling metric and a target value for the metric, along with various parameters to use with dynamic scaling.
	// More details can be found in the AWS Auto Scaling API Reference.
	// +kubebuilder:validation:Optional
	TargetTrackingConfiguration []TargetTrackingConfigurationParameters `json:"targetTrackingConfiguration" tf:"target_tracking_configuration,omitempty"`
}

func (*ScalingInstructionParameters) DeepCopy

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

func (*ScalingInstructionParameters) DeepCopyInto

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

type ScalingPlan

type ScalingPlan 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.applicationSource) || (has(self.initProvider) && has(self.initProvider.applicationSource))",message="spec.forProvider.applicationSource is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || (has(self.initProvider) && has(self.initProvider.name))",message="spec.forProvider.name is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.scalingInstruction) || (has(self.initProvider) && has(self.initProvider.scalingInstruction))",message="spec.forProvider.scalingInstruction is a required parameter"
	Spec   ScalingPlanSpec   `json:"spec"`
	Status ScalingPlanStatus `json:"status,omitempty"`
}

ScalingPlan is the Schema for the ScalingPlans API. Manages an AWS Auto Scaling scaling plan. +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].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:resource:scope=Cluster,categories={crossplane,managed,aws}

func (*ScalingPlan) DeepCopy

func (in *ScalingPlan) DeepCopy() *ScalingPlan

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

func (*ScalingPlan) DeepCopyInto

func (in *ScalingPlan) DeepCopyInto(out *ScalingPlan)

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

func (*ScalingPlan) DeepCopyObject

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

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

func (*ScalingPlan) GetCondition

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

GetCondition of this ScalingPlan.

func (*ScalingPlan) GetConnectionDetailsMapping

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

GetConnectionDetailsMapping for this ScalingPlan

func (*ScalingPlan) GetDeletionPolicy

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

GetDeletionPolicy of this ScalingPlan.

func (*ScalingPlan) GetID

func (tr *ScalingPlan) GetID() string

GetID returns ID of underlying Terraform resource of this ScalingPlan

func (*ScalingPlan) GetInitParameters

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

GetInitParameters of this ScalingPlan

func (*ScalingPlan) GetManagementPolicies

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

GetManagementPolicies of this ScalingPlan.

func (*ScalingPlan) GetMergedParameters

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

GetInitParameters of this ScalingPlan

func (*ScalingPlan) GetObservation

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

GetObservation of this ScalingPlan

func (*ScalingPlan) GetParameters

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

GetParameters of this ScalingPlan

func (*ScalingPlan) GetProviderConfigReference

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

GetProviderConfigReference of this ScalingPlan.

func (*ScalingPlan) GetPublishConnectionDetailsTo

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

GetPublishConnectionDetailsTo of this ScalingPlan.

func (*ScalingPlan) GetTerraformResourceType

func (mg *ScalingPlan) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this ScalingPlan

func (*ScalingPlan) GetTerraformSchemaVersion

func (tr *ScalingPlan) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*ScalingPlan) GetWriteConnectionSecretToReference

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

GetWriteConnectionSecretToReference of this ScalingPlan.

func (*ScalingPlan) Hub

func (tr *ScalingPlan) Hub()

Hub marks this type as a conversion hub.

func (*ScalingPlan) LateInitialize

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

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

func (*ScalingPlan) SetConditions

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

SetConditions of this ScalingPlan.

func (*ScalingPlan) SetDeletionPolicy

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

SetDeletionPolicy of this ScalingPlan.

func (*ScalingPlan) SetManagementPolicies

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

SetManagementPolicies of this ScalingPlan.

func (*ScalingPlan) SetObservation

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

SetObservation for this ScalingPlan

func (*ScalingPlan) SetParameters

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

SetParameters for this ScalingPlan

func (*ScalingPlan) SetProviderConfigReference

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

SetProviderConfigReference of this ScalingPlan.

func (*ScalingPlan) SetPublishConnectionDetailsTo

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

SetPublishConnectionDetailsTo of this ScalingPlan.

func (*ScalingPlan) SetWriteConnectionSecretToReference

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

SetWriteConnectionSecretToReference of this ScalingPlan.

type ScalingPlanInitParameters

type ScalingPlanInitParameters struct {

	// CloudFormation stack or set of tags. You can create one scaling plan per application source.
	ApplicationSource *ApplicationSourceInitParameters `json:"applicationSource,omitempty" tf:"application_source,omitempty"`

	// Name of the scaling plan. Names cannot contain vertical bars, colons, or forward slashes.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// Scaling instructions. More details can be found in the AWS Auto Scaling API Reference.
	ScalingInstruction []ScalingInstructionInitParameters `json:"scalingInstruction,omitempty" tf:"scaling_instruction,omitempty"`
}

func (*ScalingPlanInitParameters) DeepCopy

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

func (*ScalingPlanInitParameters) DeepCopyInto

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

type ScalingPlanList

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

ScalingPlanList contains a list of ScalingPlans

func (*ScalingPlanList) DeepCopy

func (in *ScalingPlanList) DeepCopy() *ScalingPlanList

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

func (*ScalingPlanList) DeepCopyInto

func (in *ScalingPlanList) DeepCopyInto(out *ScalingPlanList)

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

func (*ScalingPlanList) DeepCopyObject

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

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

func (*ScalingPlanList) GetItems

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

GetItems of this ScalingPlanList.

type ScalingPlanObservation

type ScalingPlanObservation struct {

	// CloudFormation stack or set of tags. You can create one scaling plan per application source.
	ApplicationSource *ApplicationSourceObservation `json:"applicationSource,omitempty" tf:"application_source,omitempty"`

	// Scaling plan identifier.
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// Name of the scaling plan. Names cannot contain vertical bars, colons, or forward slashes.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// Scaling instructions. More details can be found in the AWS Auto Scaling API Reference.
	ScalingInstruction []ScalingInstructionObservation `json:"scalingInstruction,omitempty" tf:"scaling_instruction,omitempty"`

	// The version number of the scaling plan. This value is always 1.
	ScalingPlanVersion *float64 `json:"scalingPlanVersion,omitempty" tf:"scaling_plan_version,omitempty"`
}

func (*ScalingPlanObservation) DeepCopy

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

func (*ScalingPlanObservation) DeepCopyInto

func (in *ScalingPlanObservation) DeepCopyInto(out *ScalingPlanObservation)

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

type ScalingPlanParameters

type ScalingPlanParameters struct {

	// CloudFormation stack or set of tags. You can create one scaling plan per application source.
	// +kubebuilder:validation:Optional
	ApplicationSource *ApplicationSourceParameters `json:"applicationSource,omitempty" tf:"application_source,omitempty"`

	// Name of the scaling plan. Names cannot contain vertical bars, colons, or forward slashes.
	// +kubebuilder:validation:Optional
	Name *string `json:"name,omitempty" tf:"name,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:"-"`

	// Scaling instructions. More details can be found in the AWS Auto Scaling API Reference.
	// +kubebuilder:validation:Optional
	ScalingInstruction []ScalingInstructionParameters `json:"scalingInstruction,omitempty" tf:"scaling_instruction,omitempty"`
}

func (*ScalingPlanParameters) DeepCopy

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

func (*ScalingPlanParameters) DeepCopyInto

func (in *ScalingPlanParameters) DeepCopyInto(out *ScalingPlanParameters)

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

type ScalingPlanSpec

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

ScalingPlanSpec defines the desired state of ScalingPlan

func (*ScalingPlanSpec) DeepCopy

func (in *ScalingPlanSpec) DeepCopy() *ScalingPlanSpec

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

func (*ScalingPlanSpec) DeepCopyInto

func (in *ScalingPlanSpec) DeepCopyInto(out *ScalingPlanSpec)

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

type ScalingPlanStatus

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

ScalingPlanStatus defines the observed state of ScalingPlan.

func (*ScalingPlanStatus) DeepCopy

func (in *ScalingPlanStatus) DeepCopy() *ScalingPlanStatus

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

func (*ScalingPlanStatus) DeepCopyInto

func (in *ScalingPlanStatus) DeepCopyInto(out *ScalingPlanStatus)

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

type TagFilterInitParameters

type TagFilterInitParameters struct {

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

	// Tag values.
	// +listType=set
	Values []*string `json:"values,omitempty" tf:"values,omitempty"`
}

func (*TagFilterInitParameters) DeepCopy

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

func (*TagFilterInitParameters) DeepCopyInto

func (in *TagFilterInitParameters) DeepCopyInto(out *TagFilterInitParameters)

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

type TagFilterObservation

type TagFilterObservation struct {

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

	// Tag values.
	// +listType=set
	Values []*string `json:"values,omitempty" tf:"values,omitempty"`
}

func (*TagFilterObservation) DeepCopy

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

func (*TagFilterObservation) DeepCopyInto

func (in *TagFilterObservation) DeepCopyInto(out *TagFilterObservation)

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

type TagFilterParameters

type TagFilterParameters struct {

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

	// Tag values.
	// +kubebuilder:validation:Optional
	// +listType=set
	Values []*string `json:"values,omitempty" tf:"values,omitempty"`
}

func (*TagFilterParameters) DeepCopy

func (in *TagFilterParameters) DeepCopy() *TagFilterParameters

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

func (*TagFilterParameters) DeepCopyInto

func (in *TagFilterParameters) DeepCopyInto(out *TagFilterParameters)

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

type TargetTrackingConfigurationInitParameters

type TargetTrackingConfigurationInitParameters struct {

	// Customized metric. You can specify either customized_scaling_metric_specification or predefined_scaling_metric_specification.
	// More details can be found in the AWS Auto Scaling API Reference.
	CustomizedScalingMetricSpecification *CustomizedScalingMetricSpecificationInitParameters `json:"customizedScalingMetricSpecification,omitempty" tf:"customized_scaling_metric_specification,omitempty"`

	// Boolean indicating whether scale in by the target tracking scaling policy is disabled. Defaults to false.
	DisableScaleIn *bool `json:"disableScaleIn,omitempty" tf:"disable_scale_in,omitempty"`

	// Estimated time, in seconds, until a newly launched instance can contribute to the CloudWatch metrics.
	// This value is used only if the resource is an Auto Scaling group.
	EstimatedInstanceWarmup *float64 `json:"estimatedInstanceWarmup,omitempty" tf:"estimated_instance_warmup,omitempty"`

	// Predefined metric. You can specify either predefined_scaling_metric_specification or customized_scaling_metric_specification.
	// More details can be found in the AWS Auto Scaling API Reference.
	PredefinedScalingMetricSpecification *PredefinedScalingMetricSpecificationInitParameters `json:"predefinedScalingMetricSpecification,omitempty" tf:"predefined_scaling_metric_specification,omitempty"`

	// Amount of time, in seconds, after a scale in activity completes before another scale in activity can start.
	// This value is not used if the scalable resource is an Auto Scaling group.
	ScaleInCooldown *float64 `json:"scaleInCooldown,omitempty" tf:"scale_in_cooldown,omitempty"`

	// Amount of time, in seconds, after a scale-out activity completes before another scale-out activity can start.
	// This value is not used if the scalable resource is an Auto Scaling group.
	ScaleOutCooldown *float64 `json:"scaleOutCooldown,omitempty" tf:"scale_out_cooldown,omitempty"`

	// Target value for the metric.
	TargetValue *float64 `json:"targetValue,omitempty" tf:"target_value,omitempty"`
}

func (*TargetTrackingConfigurationInitParameters) DeepCopy

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

func (*TargetTrackingConfigurationInitParameters) DeepCopyInto

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

type TargetTrackingConfigurationObservation

type TargetTrackingConfigurationObservation struct {

	// Customized metric. You can specify either customized_scaling_metric_specification or predefined_scaling_metric_specification.
	// More details can be found in the AWS Auto Scaling API Reference.
	CustomizedScalingMetricSpecification *CustomizedScalingMetricSpecificationObservation `json:"customizedScalingMetricSpecification,omitempty" tf:"customized_scaling_metric_specification,omitempty"`

	// Boolean indicating whether scale in by the target tracking scaling policy is disabled. Defaults to false.
	DisableScaleIn *bool `json:"disableScaleIn,omitempty" tf:"disable_scale_in,omitempty"`

	// Estimated time, in seconds, until a newly launched instance can contribute to the CloudWatch metrics.
	// This value is used only if the resource is an Auto Scaling group.
	EstimatedInstanceWarmup *float64 `json:"estimatedInstanceWarmup,omitempty" tf:"estimated_instance_warmup,omitempty"`

	// Predefined metric. You can specify either predefined_scaling_metric_specification or customized_scaling_metric_specification.
	// More details can be found in the AWS Auto Scaling API Reference.
	PredefinedScalingMetricSpecification *PredefinedScalingMetricSpecificationObservation `json:"predefinedScalingMetricSpecification,omitempty" tf:"predefined_scaling_metric_specification,omitempty"`

	// Amount of time, in seconds, after a scale in activity completes before another scale in activity can start.
	// This value is not used if the scalable resource is an Auto Scaling group.
	ScaleInCooldown *float64 `json:"scaleInCooldown,omitempty" tf:"scale_in_cooldown,omitempty"`

	// Amount of time, in seconds, after a scale-out activity completes before another scale-out activity can start.
	// This value is not used if the scalable resource is an Auto Scaling group.
	ScaleOutCooldown *float64 `json:"scaleOutCooldown,omitempty" tf:"scale_out_cooldown,omitempty"`

	// Target value for the metric.
	TargetValue *float64 `json:"targetValue,omitempty" tf:"target_value,omitempty"`
}

func (*TargetTrackingConfigurationObservation) DeepCopy

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

func (*TargetTrackingConfigurationObservation) DeepCopyInto

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

type TargetTrackingConfigurationParameters

type TargetTrackingConfigurationParameters struct {

	// Customized metric. You can specify either customized_scaling_metric_specification or predefined_scaling_metric_specification.
	// More details can be found in the AWS Auto Scaling API Reference.
	// +kubebuilder:validation:Optional
	CustomizedScalingMetricSpecification *CustomizedScalingMetricSpecificationParameters `json:"customizedScalingMetricSpecification,omitempty" tf:"customized_scaling_metric_specification,omitempty"`

	// Boolean indicating whether scale in by the target tracking scaling policy is disabled. Defaults to false.
	// +kubebuilder:validation:Optional
	DisableScaleIn *bool `json:"disableScaleIn,omitempty" tf:"disable_scale_in,omitempty"`

	// Estimated time, in seconds, until a newly launched instance can contribute to the CloudWatch metrics.
	// This value is used only if the resource is an Auto Scaling group.
	// +kubebuilder:validation:Optional
	EstimatedInstanceWarmup *float64 `json:"estimatedInstanceWarmup,omitempty" tf:"estimated_instance_warmup,omitempty"`

	// Predefined metric. You can specify either predefined_scaling_metric_specification or customized_scaling_metric_specification.
	// More details can be found in the AWS Auto Scaling API Reference.
	// +kubebuilder:validation:Optional
	PredefinedScalingMetricSpecification *PredefinedScalingMetricSpecificationParameters `json:"predefinedScalingMetricSpecification,omitempty" tf:"predefined_scaling_metric_specification,omitempty"`

	// Amount of time, in seconds, after a scale in activity completes before another scale in activity can start.
	// This value is not used if the scalable resource is an Auto Scaling group.
	// +kubebuilder:validation:Optional
	ScaleInCooldown *float64 `json:"scaleInCooldown,omitempty" tf:"scale_in_cooldown,omitempty"`

	// Amount of time, in seconds, after a scale-out activity completes before another scale-out activity can start.
	// This value is not used if the scalable resource is an Auto Scaling group.
	// +kubebuilder:validation:Optional
	ScaleOutCooldown *float64 `json:"scaleOutCooldown,omitempty" tf:"scale_out_cooldown,omitempty"`

	// Target value for the metric.
	// +kubebuilder:validation:Optional
	TargetValue *float64 `json:"targetValue" tf:"target_value,omitempty"`
}

func (*TargetTrackingConfigurationParameters) DeepCopy

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

func (*TargetTrackingConfigurationParameters) DeepCopyInto

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

Jump to

Keyboard shortcuts

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