Documentation ¶
Overview ¶
+kubebuilder:object:generate=true +groupName=workload.castai.upbound.io +versionName=v1alpha1
Index ¶
- Constants
- Variables
- type AntiAffinityInitParameters
- type AntiAffinityObservation
- type AntiAffinityParameters
- type CPUInitParameters
- type CPUObservation
- type CPUParameters
- type DownscalingInitParameters
- type DownscalingObservation
- type DownscalingParameters
- type MemoryEventInitParameters
- type MemoryEventObservation
- type MemoryEventParameters
- type MemoryInitParameters
- type MemoryObservation
- type MemoryParameters
- type ScalingPolicy
- func (in *ScalingPolicy) DeepCopy() *ScalingPolicy
- func (in *ScalingPolicy) DeepCopyInto(out *ScalingPolicy)
- func (in *ScalingPolicy) DeepCopyObject() runtime.Object
- func (mg *ScalingPolicy) GetCondition(ct xpv1.ConditionType) xpv1.Condition
- func (tr *ScalingPolicy) GetConnectionDetailsMapping() map[string]string
- func (mg *ScalingPolicy) GetDeletionPolicy() xpv1.DeletionPolicy
- func (tr *ScalingPolicy) GetID() string
- func (tr *ScalingPolicy) GetInitParameters() (map[string]any, error)
- func (mg *ScalingPolicy) GetManagementPolicies() xpv1.ManagementPolicies
- func (tr *ScalingPolicy) GetMergedParameters(shouldMergeInitProvider bool) (map[string]any, error)
- func (tr *ScalingPolicy) GetObservation() (map[string]any, error)
- func (tr *ScalingPolicy) GetParameters() (map[string]any, error)
- func (mg *ScalingPolicy) GetProviderConfigReference() *xpv1.Reference
- func (mg *ScalingPolicy) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo
- func (mg *ScalingPolicy) GetTerraformResourceType() string
- func (tr *ScalingPolicy) GetTerraformSchemaVersion() int
- func (mg *ScalingPolicy) GetWriteConnectionSecretToReference() *xpv1.SecretReference
- func (tr *ScalingPolicy) Hub()
- func (tr *ScalingPolicy) LateInitialize(attrs []byte) (bool, error)
- func (mg *ScalingPolicy) SetConditions(c ...xpv1.Condition)
- func (mg *ScalingPolicy) SetDeletionPolicy(r xpv1.DeletionPolicy)
- func (mg *ScalingPolicy) SetManagementPolicies(r xpv1.ManagementPolicies)
- func (tr *ScalingPolicy) SetObservation(obs map[string]any) error
- func (tr *ScalingPolicy) SetParameters(params map[string]any) error
- func (mg *ScalingPolicy) SetProviderConfigReference(r *xpv1.Reference)
- func (mg *ScalingPolicy) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)
- func (mg *ScalingPolicy) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)
- type ScalingPolicyInitParameters
- type ScalingPolicyList
- type ScalingPolicyObservation
- type ScalingPolicyParameters
- type ScalingPolicySpec
- type ScalingPolicyStatus
- type StartupInitParameters
- type StartupObservation
- type StartupParameters
Constants ¶
const ( CRDGroup = "workload.castai.upbound.io" CRDVersion = "v1alpha1" )
Package type metadata.
Variables ¶
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 )
var ( ScalingPolicy_Kind = "ScalingPolicy" ScalingPolicy_GroupKind = schema.GroupKind{Group: CRDGroup, Kind: ScalingPolicy_Kind}.String() ScalingPolicy_KindAPIVersion = ScalingPolicy_Kind + "." + CRDGroupVersion.String() ScalingPolicy_GroupVersionKind = CRDGroupVersion.WithKind(ScalingPolicy_Kind) )
Repository type metadata.
Functions ¶
This section is empty.
Types ¶
type AntiAffinityInitParameters ¶
type AntiAffinityInitParameters struct { // affinity should be considered when scaling the workload. // If enabled, requiring host ports, or having anti-affinity on hostname will force all recommendations to be deferred. // Defines if anti-affinity should be considered when scaling the workload. // If enabled, requiring host ports, or having anti-affinity on hostname will force all recommendations to be deferred. ConsiderAntiAffinity *bool `json:"considerAntiAffinity,omitempty" tf:"consider_anti_affinity,omitempty"` }
func (*AntiAffinityInitParameters) DeepCopy ¶
func (in *AntiAffinityInitParameters) DeepCopy() *AntiAffinityInitParameters
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AntiAffinityInitParameters.
func (*AntiAffinityInitParameters) DeepCopyInto ¶
func (in *AntiAffinityInitParameters) DeepCopyInto(out *AntiAffinityInitParameters)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AntiAffinityObservation ¶
type AntiAffinityObservation struct { // affinity should be considered when scaling the workload. // If enabled, requiring host ports, or having anti-affinity on hostname will force all recommendations to be deferred. // Defines if anti-affinity should be considered when scaling the workload. // If enabled, requiring host ports, or having anti-affinity on hostname will force all recommendations to be deferred. ConsiderAntiAffinity *bool `json:"considerAntiAffinity,omitempty" tf:"consider_anti_affinity,omitempty"` }
func (*AntiAffinityObservation) DeepCopy ¶
func (in *AntiAffinityObservation) DeepCopy() *AntiAffinityObservation
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AntiAffinityObservation.
func (*AntiAffinityObservation) DeepCopyInto ¶
func (in *AntiAffinityObservation) DeepCopyInto(out *AntiAffinityObservation)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AntiAffinityParameters ¶
type AntiAffinityParameters struct { // affinity should be considered when scaling the workload. // If enabled, requiring host ports, or having anti-affinity on hostname will force all recommendations to be deferred. // Defines if anti-affinity should be considered when scaling the workload. // If enabled, requiring host ports, or having anti-affinity on hostname will force all recommendations to be deferred. // +kubebuilder:validation:Optional ConsiderAntiAffinity *bool `json:"considerAntiAffinity,omitempty" tf:"consider_anti_affinity,omitempty"` }
func (*AntiAffinityParameters) DeepCopy ¶
func (in *AntiAffinityParameters) DeepCopy() *AntiAffinityParameters
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AntiAffinityParameters.
func (*AntiAffinityParameters) DeepCopyInto ¶
func (in *AntiAffinityParameters) DeepCopyInto(out *AntiAffinityParameters)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CPUInitParameters ¶
type CPUInitParameters struct { // (Number) The threshold of when to apply the recommendation. Recommendation will be applied when diff of current requests and new recommendation is greater than set value // The threshold of when to apply the recommendation. Recommendation will be applied when diff of current requests and new recommendation is greater than set value ApplyThreshold *float64 `json:"applyThreshold,omitempty" tf:"apply_threshold,omitempty"` // i.e. for QUANTILE this should be a [0, 1] float. MAX doesn't accept any args // The arguments for the function - i.e. for `QUANTILE` this should be a [0, 1] float. `MAX` doesn't accept any args Args []*string `json:"args,omitempty" tf:"args,omitempty"` // (String) The function used to calculate the resource recommendation. Supported values: QUANTILE, MAX // The function used to calculate the resource recommendation. Supported values: `QUANTILE`, `MAX` Function *string `json:"function,omitempty" tf:"function,omitempty"` // (Number) The look back period in seconds for the recommendation. // The look back period in seconds for the recommendation. LookBackPeriodSeconds *float64 `json:"lookBackPeriodSeconds,omitempty" tf:"look_back_period_seconds,omitempty"` // this is in MiB, for CPU - this is in cores. // Max values for the recommendation, applies to every container. For memory - this is in MiB, for CPU - this is in cores. Max *float64 `json:"max,omitempty" tf:"max,omitempty"` // this is in MiB, for CPU - this is in cores. // Min values for the recommendation, applies to every container. For memory - this is in MiB, for CPU - this is in cores. Min *float64 `json:"min,omitempty" tf:"min,omitempty"` // (Number) Overhead for the recommendation, e.g. 0.1 will result in 10% higher recommendation // Overhead for the recommendation, e.g. `0.1` will result in 10% higher recommendation Overhead *float64 `json:"overhead,omitempty" tf:"overhead,omitempty"` }
func (*CPUInitParameters) DeepCopy ¶
func (in *CPUInitParameters) DeepCopy() *CPUInitParameters
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CPUInitParameters.
func (*CPUInitParameters) DeepCopyInto ¶
func (in *CPUInitParameters) DeepCopyInto(out *CPUInitParameters)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CPUObservation ¶
type CPUObservation struct { // (Number) The threshold of when to apply the recommendation. Recommendation will be applied when diff of current requests and new recommendation is greater than set value // The threshold of when to apply the recommendation. Recommendation will be applied when diff of current requests and new recommendation is greater than set value ApplyThreshold *float64 `json:"applyThreshold,omitempty" tf:"apply_threshold,omitempty"` // i.e. for QUANTILE this should be a [0, 1] float. MAX doesn't accept any args // The arguments for the function - i.e. for `QUANTILE` this should be a [0, 1] float. `MAX` doesn't accept any args Args []*string `json:"args,omitempty" tf:"args,omitempty"` // (String) The function used to calculate the resource recommendation. Supported values: QUANTILE, MAX // The function used to calculate the resource recommendation. Supported values: `QUANTILE`, `MAX` Function *string `json:"function,omitempty" tf:"function,omitempty"` // (Number) The look back period in seconds for the recommendation. // The look back period in seconds for the recommendation. LookBackPeriodSeconds *float64 `json:"lookBackPeriodSeconds,omitempty" tf:"look_back_period_seconds,omitempty"` // this is in MiB, for CPU - this is in cores. // Max values for the recommendation, applies to every container. For memory - this is in MiB, for CPU - this is in cores. Max *float64 `json:"max,omitempty" tf:"max,omitempty"` // this is in MiB, for CPU - this is in cores. // Min values for the recommendation, applies to every container. For memory - this is in MiB, for CPU - this is in cores. Min *float64 `json:"min,omitempty" tf:"min,omitempty"` // (Number) Overhead for the recommendation, e.g. 0.1 will result in 10% higher recommendation // Overhead for the recommendation, e.g. `0.1` will result in 10% higher recommendation Overhead *float64 `json:"overhead,omitempty" tf:"overhead,omitempty"` }
func (*CPUObservation) DeepCopy ¶
func (in *CPUObservation) DeepCopy() *CPUObservation
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CPUObservation.
func (*CPUObservation) DeepCopyInto ¶
func (in *CPUObservation) DeepCopyInto(out *CPUObservation)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CPUParameters ¶
type CPUParameters struct { // (Number) The threshold of when to apply the recommendation. Recommendation will be applied when diff of current requests and new recommendation is greater than set value // The threshold of when to apply the recommendation. Recommendation will be applied when diff of current requests and new recommendation is greater than set value // +kubebuilder:validation:Optional ApplyThreshold *float64 `json:"applyThreshold,omitempty" tf:"apply_threshold,omitempty"` // i.e. for QUANTILE this should be a [0, 1] float. MAX doesn't accept any args // The arguments for the function - i.e. for `QUANTILE` this should be a [0, 1] float. `MAX` doesn't accept any args // +kubebuilder:validation:Optional Args []*string `json:"args,omitempty" tf:"args,omitempty"` // (String) The function used to calculate the resource recommendation. Supported values: QUANTILE, MAX // The function used to calculate the resource recommendation. Supported values: `QUANTILE`, `MAX` // +kubebuilder:validation:Optional Function *string `json:"function,omitempty" tf:"function,omitempty"` // (Number) The look back period in seconds for the recommendation. // The look back period in seconds for the recommendation. // +kubebuilder:validation:Optional LookBackPeriodSeconds *float64 `json:"lookBackPeriodSeconds,omitempty" tf:"look_back_period_seconds,omitempty"` // this is in MiB, for CPU - this is in cores. // Max values for the recommendation, applies to every container. For memory - this is in MiB, for CPU - this is in cores. // +kubebuilder:validation:Optional Max *float64 `json:"max,omitempty" tf:"max,omitempty"` // this is in MiB, for CPU - this is in cores. // Min values for the recommendation, applies to every container. For memory - this is in MiB, for CPU - this is in cores. // +kubebuilder:validation:Optional Min *float64 `json:"min,omitempty" tf:"min,omitempty"` // (Number) Overhead for the recommendation, e.g. 0.1 will result in 10% higher recommendation // Overhead for the recommendation, e.g. `0.1` will result in 10% higher recommendation // +kubebuilder:validation:Optional Overhead *float64 `json:"overhead,omitempty" tf:"overhead,omitempty"` }
func (*CPUParameters) DeepCopy ¶
func (in *CPUParameters) DeepCopy() *CPUParameters
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CPUParameters.
func (*CPUParameters) DeepCopyInto ¶
func (in *CPUParameters) DeepCopyInto(out *CPUParameters)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DownscalingInitParameters ¶
type DownscalingInitParameters struct { // (String) Recommendation apply type. // Defines the apply type to be used when downscaling. // - IMMEDIATE - pods are restarted immediately when new recommendation is generated. // - DEFERRED - pods are not restarted and recommendation values are applied during natural restarts only (new deployment, etc.) ApplyType *string `json:"applyType,omitempty" tf:"apply_type,omitempty"` }
func (*DownscalingInitParameters) DeepCopy ¶
func (in *DownscalingInitParameters) DeepCopy() *DownscalingInitParameters
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DownscalingInitParameters.
func (*DownscalingInitParameters) DeepCopyInto ¶
func (in *DownscalingInitParameters) DeepCopyInto(out *DownscalingInitParameters)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DownscalingObservation ¶
type DownscalingObservation struct { // (String) Recommendation apply type. // Defines the apply type to be used when downscaling. // - IMMEDIATE - pods are restarted immediately when new recommendation is generated. // - DEFERRED - pods are not restarted and recommendation values are applied during natural restarts only (new deployment, etc.) ApplyType *string `json:"applyType,omitempty" tf:"apply_type,omitempty"` }
func (*DownscalingObservation) DeepCopy ¶
func (in *DownscalingObservation) DeepCopy() *DownscalingObservation
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DownscalingObservation.
func (*DownscalingObservation) DeepCopyInto ¶
func (in *DownscalingObservation) DeepCopyInto(out *DownscalingObservation)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DownscalingParameters ¶
type DownscalingParameters struct { // (String) Recommendation apply type. // Defines the apply type to be used when downscaling. // - IMMEDIATE - pods are restarted immediately when new recommendation is generated. // - DEFERRED - pods are not restarted and recommendation values are applied during natural restarts only (new deployment, etc.) // +kubebuilder:validation:Optional ApplyType *string `json:"applyType,omitempty" tf:"apply_type,omitempty"` }
func (*DownscalingParameters) DeepCopy ¶
func (in *DownscalingParameters) DeepCopy() *DownscalingParameters
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DownscalingParameters.
func (*DownscalingParameters) DeepCopyInto ¶
func (in *DownscalingParameters) DeepCopyInto(out *DownscalingParameters)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MemoryEventInitParameters ¶
type MemoryEventInitParameters struct { // (String) Recommendation apply type. // Defines the apply type to be used when applying recommendation for memory related event. // - IMMEDIATE - pods are restarted immediately when new recommendation is generated. // - DEFERRED - pods are not restarted and recommendation values are applied during natural restarts only (new deployment, etc.) ApplyType *string `json:"applyType,omitempty" tf:"apply_type,omitempty"` }
func (*MemoryEventInitParameters) DeepCopy ¶
func (in *MemoryEventInitParameters) DeepCopy() *MemoryEventInitParameters
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MemoryEventInitParameters.
func (*MemoryEventInitParameters) DeepCopyInto ¶
func (in *MemoryEventInitParameters) DeepCopyInto(out *MemoryEventInitParameters)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MemoryEventObservation ¶
type MemoryEventObservation struct { // (String) Recommendation apply type. // Defines the apply type to be used when applying recommendation for memory related event. // - IMMEDIATE - pods are restarted immediately when new recommendation is generated. // - DEFERRED - pods are not restarted and recommendation values are applied during natural restarts only (new deployment, etc.) ApplyType *string `json:"applyType,omitempty" tf:"apply_type,omitempty"` }
func (*MemoryEventObservation) DeepCopy ¶
func (in *MemoryEventObservation) DeepCopy() *MemoryEventObservation
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MemoryEventObservation.
func (*MemoryEventObservation) DeepCopyInto ¶
func (in *MemoryEventObservation) DeepCopyInto(out *MemoryEventObservation)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MemoryEventParameters ¶
type MemoryEventParameters struct { // (String) Recommendation apply type. // Defines the apply type to be used when applying recommendation for memory related event. // - IMMEDIATE - pods are restarted immediately when new recommendation is generated. // - DEFERRED - pods are not restarted and recommendation values are applied during natural restarts only (new deployment, etc.) // +kubebuilder:validation:Optional ApplyType *string `json:"applyType,omitempty" tf:"apply_type,omitempty"` }
func (*MemoryEventParameters) DeepCopy ¶
func (in *MemoryEventParameters) DeepCopy() *MemoryEventParameters
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MemoryEventParameters.
func (*MemoryEventParameters) DeepCopyInto ¶
func (in *MemoryEventParameters) DeepCopyInto(out *MemoryEventParameters)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MemoryInitParameters ¶
type MemoryInitParameters struct { // (Number) The threshold of when to apply the recommendation. Recommendation will be applied when diff of current requests and new recommendation is greater than set value // The threshold of when to apply the recommendation. Recommendation will be applied when diff of current requests and new recommendation is greater than set value ApplyThreshold *float64 `json:"applyThreshold,omitempty" tf:"apply_threshold,omitempty"` // i.e. for QUANTILE this should be a [0, 1] float. MAX doesn't accept any args // The arguments for the function - i.e. for `QUANTILE` this should be a [0, 1] float. `MAX` doesn't accept any args Args []*string `json:"args,omitempty" tf:"args,omitempty"` // (String) The function used to calculate the resource recommendation. Supported values: QUANTILE, MAX // The function used to calculate the resource recommendation. Supported values: `QUANTILE`, `MAX` Function *string `json:"function,omitempty" tf:"function,omitempty"` // (Number) The look back period in seconds for the recommendation. // The look back period in seconds for the recommendation. LookBackPeriodSeconds *float64 `json:"lookBackPeriodSeconds,omitempty" tf:"look_back_period_seconds,omitempty"` // this is in MiB, for CPU - this is in cores. // Max values for the recommendation, applies to every container. For memory - this is in MiB, for CPU - this is in cores. Max *float64 `json:"max,omitempty" tf:"max,omitempty"` // this is in MiB, for CPU - this is in cores. // Min values for the recommendation, applies to every container. For memory - this is in MiB, for CPU - this is in cores. Min *float64 `json:"min,omitempty" tf:"min,omitempty"` // (Number) Overhead for the recommendation, e.g. 0.1 will result in 10% higher recommendation // Overhead for the recommendation, e.g. `0.1` will result in 10% higher recommendation Overhead *float64 `json:"overhead,omitempty" tf:"overhead,omitempty"` }
func (*MemoryInitParameters) DeepCopy ¶
func (in *MemoryInitParameters) DeepCopy() *MemoryInitParameters
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MemoryInitParameters.
func (*MemoryInitParameters) DeepCopyInto ¶
func (in *MemoryInitParameters) DeepCopyInto(out *MemoryInitParameters)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MemoryObservation ¶
type MemoryObservation struct { // (Number) The threshold of when to apply the recommendation. Recommendation will be applied when diff of current requests and new recommendation is greater than set value // The threshold of when to apply the recommendation. Recommendation will be applied when diff of current requests and new recommendation is greater than set value ApplyThreshold *float64 `json:"applyThreshold,omitempty" tf:"apply_threshold,omitempty"` // i.e. for QUANTILE this should be a [0, 1] float. MAX doesn't accept any args // The arguments for the function - i.e. for `QUANTILE` this should be a [0, 1] float. `MAX` doesn't accept any args Args []*string `json:"args,omitempty" tf:"args,omitempty"` // (String) The function used to calculate the resource recommendation. Supported values: QUANTILE, MAX // The function used to calculate the resource recommendation. Supported values: `QUANTILE`, `MAX` Function *string `json:"function,omitempty" tf:"function,omitempty"` // (Number) The look back period in seconds for the recommendation. // The look back period in seconds for the recommendation. LookBackPeriodSeconds *float64 `json:"lookBackPeriodSeconds,omitempty" tf:"look_back_period_seconds,omitempty"` // this is in MiB, for CPU - this is in cores. // Max values for the recommendation, applies to every container. For memory - this is in MiB, for CPU - this is in cores. Max *float64 `json:"max,omitempty" tf:"max,omitempty"` // this is in MiB, for CPU - this is in cores. // Min values for the recommendation, applies to every container. For memory - this is in MiB, for CPU - this is in cores. Min *float64 `json:"min,omitempty" tf:"min,omitempty"` // (Number) Overhead for the recommendation, e.g. 0.1 will result in 10% higher recommendation // Overhead for the recommendation, e.g. `0.1` will result in 10% higher recommendation Overhead *float64 `json:"overhead,omitempty" tf:"overhead,omitempty"` }
func (*MemoryObservation) DeepCopy ¶
func (in *MemoryObservation) DeepCopy() *MemoryObservation
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MemoryObservation.
func (*MemoryObservation) DeepCopyInto ¶
func (in *MemoryObservation) DeepCopyInto(out *MemoryObservation)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MemoryParameters ¶
type MemoryParameters struct { // (Number) The threshold of when to apply the recommendation. Recommendation will be applied when diff of current requests and new recommendation is greater than set value // The threshold of when to apply the recommendation. Recommendation will be applied when diff of current requests and new recommendation is greater than set value // +kubebuilder:validation:Optional ApplyThreshold *float64 `json:"applyThreshold,omitempty" tf:"apply_threshold,omitempty"` // i.e. for QUANTILE this should be a [0, 1] float. MAX doesn't accept any args // The arguments for the function - i.e. for `QUANTILE` this should be a [0, 1] float. `MAX` doesn't accept any args // +kubebuilder:validation:Optional Args []*string `json:"args,omitempty" tf:"args,omitempty"` // (String) The function used to calculate the resource recommendation. Supported values: QUANTILE, MAX // The function used to calculate the resource recommendation. Supported values: `QUANTILE`, `MAX` // +kubebuilder:validation:Optional Function *string `json:"function,omitempty" tf:"function,omitempty"` // (Number) The look back period in seconds for the recommendation. // The look back period in seconds for the recommendation. // +kubebuilder:validation:Optional LookBackPeriodSeconds *float64 `json:"lookBackPeriodSeconds,omitempty" tf:"look_back_period_seconds,omitempty"` // this is in MiB, for CPU - this is in cores. // Max values for the recommendation, applies to every container. For memory - this is in MiB, for CPU - this is in cores. // +kubebuilder:validation:Optional Max *float64 `json:"max,omitempty" tf:"max,omitempty"` // this is in MiB, for CPU - this is in cores. // Min values for the recommendation, applies to every container. For memory - this is in MiB, for CPU - this is in cores. // +kubebuilder:validation:Optional Min *float64 `json:"min,omitempty" tf:"min,omitempty"` // (Number) Overhead for the recommendation, e.g. 0.1 will result in 10% higher recommendation // Overhead for the recommendation, e.g. `0.1` will result in 10% higher recommendation // +kubebuilder:validation:Optional Overhead *float64 `json:"overhead,omitempty" tf:"overhead,omitempty"` }
func (*MemoryParameters) DeepCopy ¶
func (in *MemoryParameters) DeepCopy() *MemoryParameters
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MemoryParameters.
func (*MemoryParameters) DeepCopyInto ¶
func (in *MemoryParameters) DeepCopyInto(out *MemoryParameters)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ScalingPolicy ¶
type ScalingPolicy struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.applyType) || (has(self.initProvider) && has(self.initProvider.applyType))",message="spec.forProvider.applyType is a required parameter" // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.clusterId) || (has(self.initProvider) && has(self.initProvider.clusterId))",message="spec.forProvider.clusterId is a required parameter" // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.cpu) || (has(self.initProvider) && has(self.initProvider.cpu))",message="spec.forProvider.cpu is a required parameter" // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.managementOption) || (has(self.initProvider) && has(self.initProvider.managementOption))",message="spec.forProvider.managementOption is a required parameter" // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.memory) || (has(self.initProvider) && has(self.initProvider.memory))",message="spec.forProvider.memory 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" Spec ScalingPolicySpec `json:"spec"` Status ScalingPolicyStatus `json:"status,omitempty"` }
ScalingPolicy is the Schema for the ScalingPolicys API. Manage workload scaling policy. Scaling policy reference https://docs.cast.ai/docs/woop-scaling-policies +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,castai}
func (*ScalingPolicy) DeepCopy ¶
func (in *ScalingPolicy) DeepCopy() *ScalingPolicy
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScalingPolicy.
func (*ScalingPolicy) DeepCopyInto ¶
func (in *ScalingPolicy) DeepCopyInto(out *ScalingPolicy)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ScalingPolicy) DeepCopyObject ¶
func (in *ScalingPolicy) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*ScalingPolicy) GetCondition ¶
func (mg *ScalingPolicy) GetCondition(ct xpv1.ConditionType) xpv1.Condition
GetCondition of this ScalingPolicy.
func (*ScalingPolicy) GetConnectionDetailsMapping ¶
func (tr *ScalingPolicy) GetConnectionDetailsMapping() map[string]string
GetConnectionDetailsMapping for this ScalingPolicy
func (*ScalingPolicy) GetDeletionPolicy ¶
func (mg *ScalingPolicy) GetDeletionPolicy() xpv1.DeletionPolicy
GetDeletionPolicy of this ScalingPolicy.
func (*ScalingPolicy) GetID ¶
func (tr *ScalingPolicy) GetID() string
GetID returns ID of underlying Terraform resource of this ScalingPolicy
func (*ScalingPolicy) GetInitParameters ¶
func (tr *ScalingPolicy) GetInitParameters() (map[string]any, error)
GetInitParameters of this ScalingPolicy
func (*ScalingPolicy) GetManagementPolicies ¶
func (mg *ScalingPolicy) GetManagementPolicies() xpv1.ManagementPolicies
GetManagementPolicies of this ScalingPolicy.
func (*ScalingPolicy) GetMergedParameters ¶
func (tr *ScalingPolicy) GetMergedParameters(shouldMergeInitProvider bool) (map[string]any, error)
GetInitParameters of this ScalingPolicy
func (*ScalingPolicy) GetObservation ¶
func (tr *ScalingPolicy) GetObservation() (map[string]any, error)
GetObservation of this ScalingPolicy
func (*ScalingPolicy) GetParameters ¶
func (tr *ScalingPolicy) GetParameters() (map[string]any, error)
GetParameters of this ScalingPolicy
func (*ScalingPolicy) GetProviderConfigReference ¶
func (mg *ScalingPolicy) GetProviderConfigReference() *xpv1.Reference
GetProviderConfigReference of this ScalingPolicy.
func (*ScalingPolicy) GetPublishConnectionDetailsTo ¶
func (mg *ScalingPolicy) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo
GetPublishConnectionDetailsTo of this ScalingPolicy.
func (*ScalingPolicy) GetTerraformResourceType ¶
func (mg *ScalingPolicy) GetTerraformResourceType() string
GetTerraformResourceType returns Terraform resource type for this ScalingPolicy
func (*ScalingPolicy) GetTerraformSchemaVersion ¶
func (tr *ScalingPolicy) GetTerraformSchemaVersion() int
GetTerraformSchemaVersion returns the associated Terraform schema version
func (*ScalingPolicy) GetWriteConnectionSecretToReference ¶
func (mg *ScalingPolicy) GetWriteConnectionSecretToReference() *xpv1.SecretReference
GetWriteConnectionSecretToReference of this ScalingPolicy.
func (*ScalingPolicy) LateInitialize ¶
func (tr *ScalingPolicy) LateInitialize(attrs []byte) (bool, error)
LateInitialize this ScalingPolicy using its observed tfState. returns True if there are any spec changes for the resource.
func (*ScalingPolicy) SetConditions ¶
func (mg *ScalingPolicy) SetConditions(c ...xpv1.Condition)
SetConditions of this ScalingPolicy.
func (*ScalingPolicy) SetDeletionPolicy ¶
func (mg *ScalingPolicy) SetDeletionPolicy(r xpv1.DeletionPolicy)
SetDeletionPolicy of this ScalingPolicy.
func (*ScalingPolicy) SetManagementPolicies ¶
func (mg *ScalingPolicy) SetManagementPolicies(r xpv1.ManagementPolicies)
SetManagementPolicies of this ScalingPolicy.
func (*ScalingPolicy) SetObservation ¶
func (tr *ScalingPolicy) SetObservation(obs map[string]any) error
SetObservation for this ScalingPolicy
func (*ScalingPolicy) SetParameters ¶
func (tr *ScalingPolicy) SetParameters(params map[string]any) error
SetParameters for this ScalingPolicy
func (*ScalingPolicy) SetProviderConfigReference ¶
func (mg *ScalingPolicy) SetProviderConfigReference(r *xpv1.Reference)
SetProviderConfigReference of this ScalingPolicy.
func (*ScalingPolicy) SetPublishConnectionDetailsTo ¶
func (mg *ScalingPolicy) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)
SetPublishConnectionDetailsTo of this ScalingPolicy.
func (*ScalingPolicy) SetWriteConnectionSecretToReference ¶
func (mg *ScalingPolicy) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)
SetWriteConnectionSecretToReference of this ScalingPolicy.
type ScalingPolicyInitParameters ¶
type ScalingPolicyInitParameters struct { // (Block List, Max: 1) (see below for nested schema) AntiAffinity []AntiAffinityInitParameters `json:"antiAffinity,omitempty" tf:"anti_affinity,omitempty"` // (String) Recommendation apply type. // Recommendation apply type. // - IMMEDIATE - pods are restarted immediately when new recommendation is generated. // - DEFERRED - pods are not restarted and recommendation values are applied during natural restarts only (new deployment, etc.) ApplyType *string `json:"applyType,omitempty" tf:"apply_type,omitempty"` // (Block List, Min: 1, Max: 1) (see below for nested schema) CPU []CPUInitParameters `json:"cpu,omitempty" tf:"cpu,omitempty"` // (String) CAST AI cluster id // CAST AI cluster id ClusterID *string `json:"clusterId,omitempty" tf:"cluster_id,omitempty"` // (Block List, Max: 1) (see below for nested schema) Downscaling []DownscalingInitParameters `json:"downscaling,omitempty" tf:"downscaling,omitempty"` // (String) Defines possible options for workload management. // Defines possible options for workload management. // - READ_ONLY - workload watched (metrics collected), but no actions performed by CAST AI. // - MANAGED - workload watched (metrics collected), CAST AI may perform actions on the workload. ManagementOption *string `json:"managementOption,omitempty" tf:"management_option,omitempty"` // (Block List, Min: 1, Max: 1) (see below for nested schema) Memory []MemoryInitParameters `json:"memory,omitempty" tf:"memory,omitempty"` // (Block List, Max: 1) (see below for nested schema) MemoryEvent []MemoryEventInitParameters `json:"memoryEvent,omitempty" tf:"memory_event,omitempty"` // (String) Scaling policy name // Scaling policy name Name *string `json:"name,omitempty" tf:"name,omitempty"` // (Block List, Max: 1) (see below for nested schema) Startup []StartupInitParameters `json:"startup,omitempty" tf:"startup,omitempty"` }
func (*ScalingPolicyInitParameters) DeepCopy ¶
func (in *ScalingPolicyInitParameters) DeepCopy() *ScalingPolicyInitParameters
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScalingPolicyInitParameters.
func (*ScalingPolicyInitParameters) DeepCopyInto ¶
func (in *ScalingPolicyInitParameters) DeepCopyInto(out *ScalingPolicyInitParameters)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ScalingPolicyList ¶
type ScalingPolicyList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []ScalingPolicy `json:"items"` }
ScalingPolicyList contains a list of ScalingPolicys
func (*ScalingPolicyList) DeepCopy ¶
func (in *ScalingPolicyList) DeepCopy() *ScalingPolicyList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScalingPolicyList.
func (*ScalingPolicyList) DeepCopyInto ¶
func (in *ScalingPolicyList) DeepCopyInto(out *ScalingPolicyList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ScalingPolicyList) DeepCopyObject ¶
func (in *ScalingPolicyList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*ScalingPolicyList) GetItems ¶
func (l *ScalingPolicyList) GetItems() []resource.Managed
GetItems of this ScalingPolicyList.
type ScalingPolicyObservation ¶
type ScalingPolicyObservation struct { // (Block List, Max: 1) (see below for nested schema) AntiAffinity []AntiAffinityObservation `json:"antiAffinity,omitempty" tf:"anti_affinity,omitempty"` // (String) Recommendation apply type. // Recommendation apply type. // - IMMEDIATE - pods are restarted immediately when new recommendation is generated. // - DEFERRED - pods are not restarted and recommendation values are applied during natural restarts only (new deployment, etc.) ApplyType *string `json:"applyType,omitempty" tf:"apply_type,omitempty"` // (Block List, Min: 1, Max: 1) (see below for nested schema) CPU []CPUObservation `json:"cpu,omitempty" tf:"cpu,omitempty"` // (String) CAST AI cluster id // CAST AI cluster id ClusterID *string `json:"clusterId,omitempty" tf:"cluster_id,omitempty"` // (Block List, Max: 1) (see below for nested schema) Downscaling []DownscalingObservation `json:"downscaling,omitempty" tf:"downscaling,omitempty"` // (String) The ID of this resource. ID *string `json:"id,omitempty" tf:"id,omitempty"` // (String) Defines possible options for workload management. // Defines possible options for workload management. // - READ_ONLY - workload watched (metrics collected), but no actions performed by CAST AI. // - MANAGED - workload watched (metrics collected), CAST AI may perform actions on the workload. ManagementOption *string `json:"managementOption,omitempty" tf:"management_option,omitempty"` // (Block List, Min: 1, Max: 1) (see below for nested schema) Memory []MemoryObservation `json:"memory,omitempty" tf:"memory,omitempty"` // (Block List, Max: 1) (see below for nested schema) MemoryEvent []MemoryEventObservation `json:"memoryEvent,omitempty" tf:"memory_event,omitempty"` // (String) Scaling policy name // Scaling policy name Name *string `json:"name,omitempty" tf:"name,omitempty"` // (Block List, Max: 1) (see below for nested schema) Startup []StartupObservation `json:"startup,omitempty" tf:"startup,omitempty"` }
func (*ScalingPolicyObservation) DeepCopy ¶
func (in *ScalingPolicyObservation) DeepCopy() *ScalingPolicyObservation
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScalingPolicyObservation.
func (*ScalingPolicyObservation) DeepCopyInto ¶
func (in *ScalingPolicyObservation) DeepCopyInto(out *ScalingPolicyObservation)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ScalingPolicyParameters ¶
type ScalingPolicyParameters struct { // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional AntiAffinity []AntiAffinityParameters `json:"antiAffinity,omitempty" tf:"anti_affinity,omitempty"` // (String) Recommendation apply type. // Recommendation apply type. // - IMMEDIATE - pods are restarted immediately when new recommendation is generated. // - DEFERRED - pods are not restarted and recommendation values are applied during natural restarts only (new deployment, etc.) // +kubebuilder:validation:Optional ApplyType *string `json:"applyType,omitempty" tf:"apply_type,omitempty"` // (Block List, Min: 1, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional CPU []CPUParameters `json:"cpu,omitempty" tf:"cpu,omitempty"` // (String) CAST AI cluster id // CAST AI cluster id // +kubebuilder:validation:Optional ClusterID *string `json:"clusterId,omitempty" tf:"cluster_id,omitempty"` // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Downscaling []DownscalingParameters `json:"downscaling,omitempty" tf:"downscaling,omitempty"` // (String) Defines possible options for workload management. // Defines possible options for workload management. // - READ_ONLY - workload watched (metrics collected), but no actions performed by CAST AI. // - MANAGED - workload watched (metrics collected), CAST AI may perform actions on the workload. // +kubebuilder:validation:Optional ManagementOption *string `json:"managementOption,omitempty" tf:"management_option,omitempty"` // (Block List, Min: 1, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Memory []MemoryParameters `json:"memory,omitempty" tf:"memory,omitempty"` // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional MemoryEvent []MemoryEventParameters `json:"memoryEvent,omitempty" tf:"memory_event,omitempty"` // (String) Scaling policy name // Scaling policy name // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // (Block List, Max: 1) (see below for nested schema) // +kubebuilder:validation:Optional Startup []StartupParameters `json:"startup,omitempty" tf:"startup,omitempty"` }
func (*ScalingPolicyParameters) DeepCopy ¶
func (in *ScalingPolicyParameters) DeepCopy() *ScalingPolicyParameters
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScalingPolicyParameters.
func (*ScalingPolicyParameters) DeepCopyInto ¶
func (in *ScalingPolicyParameters) DeepCopyInto(out *ScalingPolicyParameters)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ScalingPolicySpec ¶
type ScalingPolicySpec struct { v1.ResourceSpec `json:",inline"` ForProvider ScalingPolicyParameters `json:"forProvider"` // THIS IS A BETA FIELD. It will be honored // unless the Management Policies feature flag is disabled. // InitProvider holds the same fields as ForProvider, with the exception // of Identifier and other resource reference fields. The fields that are // in InitProvider are merged into ForProvider when the resource is created. // The same fields are also added to the terraform ignore_changes hook, to // avoid updating them after creation. This is useful for fields that are // required on creation, but we do not desire to update them after creation, // for example because of an external controller is managing them, like an // autoscaler. InitProvider ScalingPolicyInitParameters `json:"initProvider,omitempty"` }
ScalingPolicySpec defines the desired state of ScalingPolicy
func (*ScalingPolicySpec) DeepCopy ¶
func (in *ScalingPolicySpec) DeepCopy() *ScalingPolicySpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScalingPolicySpec.
func (*ScalingPolicySpec) DeepCopyInto ¶
func (in *ScalingPolicySpec) DeepCopyInto(out *ScalingPolicySpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ScalingPolicyStatus ¶
type ScalingPolicyStatus struct { v1.ResourceStatus `json:",inline"` AtProvider ScalingPolicyObservation `json:"atProvider,omitempty"` }
ScalingPolicyStatus defines the observed state of ScalingPolicy.
func (*ScalingPolicyStatus) DeepCopy ¶
func (in *ScalingPolicyStatus) DeepCopy() *ScalingPolicyStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScalingPolicyStatus.
func (*ScalingPolicyStatus) DeepCopyInto ¶
func (in *ScalingPolicyStatus) DeepCopyInto(out *ScalingPolicyStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type StartupInitParameters ¶
type StartupInitParameters struct { // (Number) Defines the duration (in seconds) during which elevated resource usage is expected at startup. // When set, recommendations will be adjusted to disregard resource spikes within this period. // If not specified, the workload will receive standard recommendations without startup considerations. // Defines the duration (in seconds) during which elevated resource usage is expected at startup. // When set, recommendations will be adjusted to disregard resource spikes within this period. // If not specified, the workload will receive standard recommendations without startup considerations. PeriodSeconds *float64 `json:"periodSeconds,omitempty" tf:"period_seconds,omitempty"` }
func (*StartupInitParameters) DeepCopy ¶
func (in *StartupInitParameters) DeepCopy() *StartupInitParameters
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StartupInitParameters.
func (*StartupInitParameters) DeepCopyInto ¶
func (in *StartupInitParameters) DeepCopyInto(out *StartupInitParameters)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type StartupObservation ¶
type StartupObservation struct { // (Number) Defines the duration (in seconds) during which elevated resource usage is expected at startup. // When set, recommendations will be adjusted to disregard resource spikes within this period. // If not specified, the workload will receive standard recommendations without startup considerations. // Defines the duration (in seconds) during which elevated resource usage is expected at startup. // When set, recommendations will be adjusted to disregard resource spikes within this period. // If not specified, the workload will receive standard recommendations without startup considerations. PeriodSeconds *float64 `json:"periodSeconds,omitempty" tf:"period_seconds,omitempty"` }
func (*StartupObservation) DeepCopy ¶
func (in *StartupObservation) DeepCopy() *StartupObservation
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StartupObservation.
func (*StartupObservation) DeepCopyInto ¶
func (in *StartupObservation) DeepCopyInto(out *StartupObservation)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type StartupParameters ¶
type StartupParameters struct { // (Number) Defines the duration (in seconds) during which elevated resource usage is expected at startup. // When set, recommendations will be adjusted to disregard resource spikes within this period. // If not specified, the workload will receive standard recommendations without startup considerations. // Defines the duration (in seconds) during which elevated resource usage is expected at startup. // When set, recommendations will be adjusted to disregard resource spikes within this period. // If not specified, the workload will receive standard recommendations without startup considerations. // +kubebuilder:validation:Optional PeriodSeconds *float64 `json:"periodSeconds,omitempty" tf:"period_seconds,omitempty"` }
func (*StartupParameters) DeepCopy ¶
func (in *StartupParameters) DeepCopy() *StartupParameters
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StartupParameters.
func (*StartupParameters) DeepCopyInto ¶
func (in *StartupParameters) DeepCopyInto(out *StartupParameters)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.