v1alpha1

package
v2.14.0 Latest Latest
Warning

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

Go to latest
Published: Apr 25, 2024 License: Apache-2.0 Imports: 28 Imported by: 65

Documentation

Overview

Package v1alpha1 contains API Schema definitions for the keda v1alpha1 API group +kubebuilder:object:generate=true +groupName=keda.sh

Index

Constants

View Source
const (
	// ScaledObjectConditionReadySuccessReason defines the default Reason for correct ScaledObject
	ScaledObjectConditionReadySuccessReason = "ScaledObjectReady"
	// ScaledObjectConditionReadySuccessMessage defines the default Message for correct ScaledObject
	ScaledObjectConditionReadySuccessMessage = "ScaledObject is defined correctly and is ready for scaling"
	// ScaledObjectConditionPausedReason defines the default Reason for paused ScaledObject
	ScaledObjectConditionPausedReason = "ScaledObjectPaused"
	// ScaledObjectConditionPausedMessage defines the default Message for paused ScaledObject
	ScaledObjectConditionPausedMessage = "ScaledObject is paused"
)
View Source
const (
	// ScaledJobConditionPausedReason defines the default Reason for paused ScaledJob
	ScaledJobConditionPausedReason = "ScaledJobPaused"
	// ScaledJobConditionPausedReason defines the default Reason for paused ScaledJob
	ScaledJobConditionUnpausedReason = "ScaledJobUnpaused"
	// ScaledJobConditionPausedMessage defines the default Message for paused ScaledJob
	ScaledJobConditionPausedMessage = "ScaledJob is paused"
	// ScaledJobConditionPausedMessage defines the default Message for paused ScaledJob
	ScaledJobConditionUnpausedMessage = "ScaledJob is unpaused"
)
View Source
const (
	// HealthStatusHappy means the status of the health object is happy
	HealthStatusHappy HealthStatusType = "Happy"

	// HealthStatusFailing means the status of the health object is failing
	HealthStatusFailing HealthStatusType = "Failing"

	// Composite metric name used for scalingModifiers composite metric
	CompositeMetricName string = "composite-metric"
)
View Source
const (
	PodIdentityAnnotationEKS  = "eks.amazonaws.com/role-arn"
	PodIdentityAnnotationKiam = "iam.amazonaws.com/role"
)

PodIdentityAnnotationEKS specifies aws role arn for aws-eks Identity Provider PodIdentityAnnotationKiam specifies aws role arn for aws-iam Identity Provider

View Source
const PausedAnnotation = "autoscaling.keda.sh/paused"
View Source
const PausedReplicasAnnotation = "autoscaling.keda.sh/paused-replicas"
View Source
const ScaledObjectOwnerAnnotation = "scaledobject.keda.sh/name"
View Source
const ScaledObjectTransferHpaOwnershipAnnotation = "scaledobject.keda.sh/transfer-hpa-ownership"
View Source
const ValidationsHpaOwnershipAnnotation = "validations.keda.sh/hpa-ownership"

Variables

View Source
var (
	// GroupVersion is group version used to register these objects
	GroupVersion = schema.GroupVersion{Group: "keda.sh", Version: "v1alpha1"}

	// SchemeGroupVersion is group version used to register these objects
	// added for generated clientset
	SchemeGroupVersion = GroupVersion

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

	// AddToScheme adds the types in this group-version to the given scheme.
	AddToScheme = SchemeBuilder.AddToScheme
)

Functions

func CheckFallbackValid added in v2.14.0

func CheckFallbackValid(scaledObject *ScaledObject) error

CheckFallbackValid checks that the fallback supports scalers with an AverageValue metric target. Consequently, it does not support CPU & memory scalers, or scalers targeting a Value metric type.

func CheckReplicaCountBoundsAreValid added in v2.13.0

func CheckReplicaCountBoundsAreValid(scaledObject *ScaledObject) error

checkReplicaCountBoundsAreValid checks that Idle/Min/Max ReplicaCount defined in ScaledObject are correctly specified i.e. that Min is not greater than Max or Idle greater or equal to Min

func GenerateIdentifier added in v2.9.0

func GenerateIdentifier(kind, namespace, name string) string

GenerateIdentifier returns identifier for the object in form "kind.namespace.name" (lowercase)

func Kind

func Kind(kind string) schema.GroupKind

Kind takes an unqualified kind and returns back a Group qualified GroupKind added for generated clientset

func Resource

func Resource(resource string) schema.GroupResource

Resource takes an unqualified resource and returns a Group qualified GroupResource added for generated clientset

func ValidateAndCompileScalingModifiers added in v2.12.0

func ValidateAndCompileScalingModifiers(so *ScaledObject) (*vm.Program, error)

ValidateAndCompileScalingModifiers validates all combinations of given arguments and their values. Expects the whole structure's path to be defined (like .Advanced). As part of formula validation this function also compiles the formula (with dummy values that determine whether all necessary triggers are defined) and returns it to be stored in cache and reused.

func ValidateTriggers added in v2.11.0

func ValidateTriggers(triggers []ScaleTriggers) error

ValidateTriggers checks that general trigger metadata are valid, it checks: - triggerNames in ScaledObject are unique - useCachedMetrics is defined only for a supported triggers

Types

type AdvancedConfig

type AdvancedConfig struct {
	// +optional
	HorizontalPodAutoscalerConfig *HorizontalPodAutoscalerConfig `json:"horizontalPodAutoscalerConfig,omitempty"`
	// +optional
	RestoreToOriginalReplicaCount bool `json:"restoreToOriginalReplicaCount,omitempty"`
	// +optional
	ScalingModifiers ScalingModifiers `json:"scalingModifiers,omitempty"`
}

AdvancedConfig specifies advance scaling options

func (*AdvancedConfig) DeepCopy

func (in *AdvancedConfig) DeepCopy() *AdvancedConfig

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

func (*AdvancedConfig) DeepCopyInto

func (in *AdvancedConfig) DeepCopyInto(out *AdvancedConfig)

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

type AuthConfigMapTargetRef added in v2.13.0

type AuthConfigMapTargetRef AuthTargetRef

AuthConfigMapTargetRef is used to authenticate using a reference to a config map

func (*AuthConfigMapTargetRef) DeepCopy added in v2.13.0

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

func (*AuthConfigMapTargetRef) DeepCopyInto added in v2.13.0

func (in *AuthConfigMapTargetRef) DeepCopyInto(out *AuthConfigMapTargetRef)

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

type AuthEnvironment

type AuthEnvironment struct {
	Parameter string `json:"parameter"`
	Name      string `json:"name"`

	// +optional
	ContainerName string `json:"containerName,omitempty"`
}

AuthEnvironment is used to authenticate using environment variables in the destination ScaleTarget spec

func (*AuthEnvironment) DeepCopy

func (in *AuthEnvironment) DeepCopy() *AuthEnvironment

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

func (*AuthEnvironment) DeepCopyInto

func (in *AuthEnvironment) DeepCopyInto(out *AuthEnvironment)

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

type AuthPodIdentity

type AuthPodIdentity struct {
	// +kubebuilder:validation:Enum=azure;azure-workload;gcp;aws;aws-eks;aws-kiam;none
	Provider PodIdentityProvider `json:"provider"`

	// +optional
	IdentityID *string `json:"identityId"`

	// +optional
	// Set identityTenantId to override the default Azure tenant id. If this is set, then the IdentityID must also be set
	IdentityTenantID *string `json:"identityTenantId"`

	// +optional
	// Set identityAuthorityHost to override the default Azure authority host. If this is set, then the IdentityTenantID must also be set
	IdentityAuthorityHost *string `json:"identityAuthorityHost"`

	// +kubebuilder:validation:Optional
	// RoleArn sets the AWS RoleArn to be used. Mutually exclusive with IdentityOwner
	RoleArn *string `json:"roleArn"`

	// +kubebuilder:validation:Enum=keda;workload
	// +optional
	// IdentityOwner configures which identity has to be used during auto discovery, keda or the scaled workload. Mutually exclusive with roleArn
	IdentityOwner *string `json:"identityOwner"`
}

AuthPodIdentity allows users to select the platform native identity mechanism

func (*AuthPodIdentity) DeepCopy

func (in *AuthPodIdentity) DeepCopy() *AuthPodIdentity

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

func (*AuthPodIdentity) DeepCopyInto

func (in *AuthPodIdentity) DeepCopyInto(out *AuthPodIdentity)

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

func (*AuthPodIdentity) GetIdentityAuthorityHost added in v2.14.0

func (a *AuthPodIdentity) GetIdentityAuthorityHost() string

func (*AuthPodIdentity) GetIdentityID added in v2.12.0

func (a *AuthPodIdentity) GetIdentityID() string

func (*AuthPodIdentity) GetIdentityTenantID added in v2.14.0

func (a *AuthPodIdentity) GetIdentityTenantID() string

func (*AuthPodIdentity) IsWorkloadIdentityOwner added in v2.13.0

func (a *AuthPodIdentity) IsWorkloadIdentityOwner() bool

type AuthSecretTargetRef

type AuthSecretTargetRef AuthTargetRef

AuthSecretTargetRef is used to authenticate using a reference to a secret

func (*AuthSecretTargetRef) DeepCopy

func (in *AuthSecretTargetRef) DeepCopy() *AuthSecretTargetRef

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

func (*AuthSecretTargetRef) DeepCopyInto

func (in *AuthSecretTargetRef) DeepCopyInto(out *AuthSecretTargetRef)

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

type AuthTargetRef added in v2.13.0

type AuthTargetRef struct {
	Parameter string `json:"parameter"`
	Name      string `json:"name"`
	Key       string `json:"key"`
}

AuthTargetRef is used to authenticate using a reference to a resource

func (*AuthTargetRef) DeepCopy added in v2.13.0

func (in *AuthTargetRef) DeepCopy() *AuthTargetRef

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

func (*AuthTargetRef) DeepCopyInto added in v2.13.0

func (in *AuthTargetRef) DeepCopyInto(out *AuthTargetRef)

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

type AuthenticationRef added in v2.11.0

type AuthenticationRef struct {
	Name string `json:"name"`
	// Kind of the resource being referred to. Defaults to TriggerAuthentication.
	// +optional
	Kind string `json:"kind,omitempty"`
}

AuthenticationRef points to the TriggerAuthentication or ClusterTriggerAuthentication object that is used to authenticate the scaler with the environment

func (*AuthenticationRef) DeepCopy added in v2.11.0

func (in *AuthenticationRef) DeepCopy() *AuthenticationRef

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

func (*AuthenticationRef) DeepCopyInto added in v2.11.0

func (in *AuthenticationRef) DeepCopyInto(out *AuthenticationRef)

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

type AwsSecretManager added in v2.13.0

type AwsSecretManager struct {
	Secrets []AwsSecretManagerSecret `json:"secrets"`
	// +optional
	Credentials *AwsSecretManagerCredentials `json:"credentials"`
	// +optional
	PodIdentity *AuthPodIdentity `json:"podIdentity"`
	// +optional
	Region string `json:"region,omitempty"`
}

AwsSecretManager is used to authenticate using AwsSecretManager

func (*AwsSecretManager) DeepCopy added in v2.13.0

func (in *AwsSecretManager) DeepCopy() *AwsSecretManager

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

func (*AwsSecretManager) DeepCopyInto added in v2.13.0

func (in *AwsSecretManager) DeepCopyInto(out *AwsSecretManager)

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

type AwsSecretManagerCredentials added in v2.13.0

type AwsSecretManagerCredentials struct {
	AccessKey       *AwsSecretManagerValue `json:"accessKey"`
	AccessSecretKey *AwsSecretManagerValue `json:"accessSecretKey"`
	// +optional
	AccessToken *AwsSecretManagerValue `json:"accessToken,omitempty"`
}

func (*AwsSecretManagerCredentials) DeepCopy added in v2.13.0

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

func (*AwsSecretManagerCredentials) DeepCopyInto added in v2.13.0

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

type AwsSecretManagerSecret added in v2.13.0

type AwsSecretManagerSecret struct {
	Parameter string `json:"parameter"`
	Name      string `json:"name"`
	// +optional
	VersionID string `json:"versionId,omitempty"`
	// +optional
	VersionStage string `json:"versionStage,omitempty"`
}

func (*AwsSecretManagerSecret) DeepCopy added in v2.13.0

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

func (*AwsSecretManagerSecret) DeepCopyInto added in v2.13.0

func (in *AwsSecretManagerSecret) DeepCopyInto(out *AwsSecretManagerSecret)

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

type AwsSecretManagerValue added in v2.13.0

type AwsSecretManagerValue struct {
	ValueFrom ValueFromSecret `json:"valueFrom"`
}

func (*AwsSecretManagerValue) DeepCopy added in v2.13.0

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

func (*AwsSecretManagerValue) DeepCopyInto added in v2.13.0

func (in *AwsSecretManagerValue) DeepCopyInto(out *AwsSecretManagerValue)

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

type AzureKeyVault added in v2.7.0

type AzureKeyVault struct {
	VaultURI string                `json:"vaultUri"`
	Secrets  []AzureKeyVaultSecret `json:"secrets"`
	// +optional
	Credentials *AzureKeyVaultCredentials `json:"credentials"`
	// +optional
	PodIdentity *AuthPodIdentity `json:"podIdentity"`
	// +optional
	Cloud *AzureKeyVaultCloudInfo `json:"cloud"`
}

AzureKeyVault is used to authenticate using Azure Key Vault

func (*AzureKeyVault) DeepCopy added in v2.7.0

func (in *AzureKeyVault) DeepCopy() *AzureKeyVault

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

func (*AzureKeyVault) DeepCopyInto added in v2.7.0

func (in *AzureKeyVault) DeepCopyInto(out *AzureKeyVault)

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

type AzureKeyVaultClientSecret added in v2.7.0

type AzureKeyVaultClientSecret struct {
	ValueFrom ValueFromSecret `json:"valueFrom"`
}

func (*AzureKeyVaultClientSecret) DeepCopy added in v2.7.0

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

func (*AzureKeyVaultClientSecret) DeepCopyInto added in v2.7.0

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

type AzureKeyVaultCloudInfo added in v2.7.0

type AzureKeyVaultCloudInfo struct {
	Type string `json:"type"`
	// +optional
	KeyVaultResourceURL string `json:"keyVaultResourceURL"`
	// +optional
	ActiveDirectoryEndpoint string `json:"activeDirectoryEndpoint"`
}

func (*AzureKeyVaultCloudInfo) DeepCopy added in v2.7.0

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

func (*AzureKeyVaultCloudInfo) DeepCopyInto added in v2.7.0

func (in *AzureKeyVaultCloudInfo) DeepCopyInto(out *AzureKeyVaultCloudInfo)

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

type AzureKeyVaultCredentials added in v2.7.0

type AzureKeyVaultCredentials struct {
	ClientID     string                     `json:"clientId"`
	TenantID     string                     `json:"tenantId"`
	ClientSecret *AzureKeyVaultClientSecret `json:"clientSecret"`
}

func (*AzureKeyVaultCredentials) DeepCopy added in v2.7.0

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

func (*AzureKeyVaultCredentials) DeepCopyInto added in v2.7.0

func (in *AzureKeyVaultCredentials) DeepCopyInto(out *AzureKeyVaultCredentials)

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

type AzureKeyVaultSecret added in v2.7.0

type AzureKeyVaultSecret struct {
	Parameter string `json:"parameter"`
	Name      string `json:"name"`
	// +optional
	Version string `json:"version,omitempty"`
}

func (*AzureKeyVaultSecret) DeepCopy added in v2.7.0

func (in *AzureKeyVaultSecret) DeepCopy() *AzureKeyVaultSecret

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

func (*AzureKeyVaultSecret) DeepCopyInto added in v2.7.0

func (in *AzureKeyVaultSecret) DeepCopyInto(out *AzureKeyVaultSecret)

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

type ClusterTriggerAuthentication

type ClusterTriggerAuthentication struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   TriggerAuthenticationSpec   `json:"spec"`
	Status TriggerAuthenticationStatus `json:"status,omitempty"`
}

ClusterTriggerAuthentication defines how a trigger can authenticate globally +genclient +genclient:nonNamespaced +kubebuilder:resource:path=clustertriggerauthentications,scope=Cluster,shortName=cta;clustertriggerauth +kubebuilder:subresource:status +kubebuilder:printcolumn:name="PodIdentity",type="string",JSONPath=".spec.podIdentity.provider" +kubebuilder:printcolumn:name="Secret",type="string",JSONPath=".spec.secretTargetRef[*].name" +kubebuilder:printcolumn:name="Env",type="string",JSONPath=".spec.env[*].name" +kubebuilder:printcolumn:name="VaultAddress",type="string",JSONPath=".spec.hashiCorpVault.address" +kubebuilder:printcolumn:name="ScaledObjects",type="string",priority=1,JSONPath=".status.scaledobjects" +kubebuilder:printcolumn:name="ScaledJobs",type="string",priority=1,JSONPath=".status.scaledjobs"

func (*ClusterTriggerAuthentication) DeepCopy

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

func (*ClusterTriggerAuthentication) DeepCopyInto

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

func (*ClusterTriggerAuthentication) DeepCopyObject

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

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

func (*ClusterTriggerAuthentication) SetupWebhookWithManager added in v2.12.0

func (cta *ClusterTriggerAuthentication) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*ClusterTriggerAuthentication) ValidateCreate added in v2.12.0

func (cta *ClusterTriggerAuthentication) ValidateCreate() (admission.Warnings, error)

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*ClusterTriggerAuthentication) ValidateDelete added in v2.12.0

func (cta *ClusterTriggerAuthentication) ValidateDelete() (admission.Warnings, error)

func (*ClusterTriggerAuthentication) ValidateUpdate added in v2.12.0

func (cta *ClusterTriggerAuthentication) ValidateUpdate(old runtime.Object) (admission.Warnings, error)

type ClusterTriggerAuthenticationList

type ClusterTriggerAuthenticationList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata"`
	Items           []ClusterTriggerAuthentication `json:"items"`
}

ClusterTriggerAuthenticationList contains a list of ClusterTriggerAuthentication

func (*ClusterTriggerAuthenticationList) DeepCopy

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

func (*ClusterTriggerAuthenticationList) DeepCopyInto

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

func (*ClusterTriggerAuthenticationList) DeepCopyObject

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

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

type Condition

type Condition struct {
	// Type of condition
	// +required
	Type ConditionType `json:"type" description:"type of status condition"`

	// Status of the condition, one of True, False, Unknown.
	// +required
	Status metav1.ConditionStatus `json:"status" description:"status of the condition, one of True, False, Unknown"`

	// The reason for the condition's last transition.
	// +optional
	Reason string `json:"reason,omitempty" description:"one-word CamelCase reason for the condition's last transition"`

	// A human readable message indicating details about the transition.
	// +optional
	Message string `json:"message,omitempty" description:"human-readable message indicating details about last transition"`
}

Condition to store the condition state

func (*Condition) DeepCopy

func (in *Condition) DeepCopy() *Condition

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

func (*Condition) DeepCopyInto

func (in *Condition) DeepCopyInto(out *Condition)

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

func (*Condition) IsFalse

func (c *Condition) IsFalse() bool

IsFalse is true if the condition is False

func (*Condition) IsTrue

func (c *Condition) IsTrue() bool

IsTrue is true if the condition is True

func (*Condition) IsUnknown

func (c *Condition) IsUnknown() bool

IsUnknown is true if the condition is Unknown

type ConditionType

type ConditionType string

ConditionType specifies the available conditions for the resource

const (
	// ConditionReady specifies that the resource is ready.
	// For long-running resources.
	ConditionReady ConditionType = "Ready"
	// ConditionActive specifies that the resource has finished.
	// For resource which run to completion.
	ConditionActive ConditionType = "Active"
	// ConditionFallback specifies that the resource has a fallback active.
	ConditionFallback ConditionType = "Fallback"
	// ConditionPaused specifies that the resource is paused.
	ConditionPaused ConditionType = "Paused"
)

type Conditions

type Conditions []Condition

Conditions an array representation to store multiple Conditions

func GetInitializedConditions

func GetInitializedConditions() *Conditions

GetInitializedConditions returns Conditions initialized to the default -> Status: Unknown

func (*Conditions) AreInitialized

func (c *Conditions) AreInitialized() bool

AreInitialized performs check all Conditions are initialized return true if Conditions are initialized return false if Conditions are not initialized

func (Conditions) DeepCopy

func (in Conditions) DeepCopy() Conditions

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

func (Conditions) DeepCopyInto

func (in Conditions) DeepCopyInto(out *Conditions)

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

func (*Conditions) GetActiveCondition

func (c *Conditions) GetActiveCondition() Condition

GetActiveCondition returns Condition of type Active

func (*Conditions) GetFallbackCondition

func (c *Conditions) GetFallbackCondition() Condition

GetFallbackCondition returns Condition of type Fallback

func (*Conditions) GetPausedCondition added in v2.11.0

func (c *Conditions) GetPausedCondition() Condition

GetPausedCondition returns Condition of type Paused

func (*Conditions) GetReadyCondition

func (c *Conditions) GetReadyCondition() Condition

GetReadyCondition returns Condition of type Ready

func (*Conditions) SetActiveCondition

func (c *Conditions) SetActiveCondition(status metav1.ConditionStatus, reason string, message string)

SetActiveCondition modifies Active Condition according to input parameters

func (*Conditions) SetFallbackCondition

func (c *Conditions) SetFallbackCondition(status metav1.ConditionStatus, reason string, message string)

SetFallbackCondition modifies Fallback Condition according to input parameters

func (*Conditions) SetPausedCondition added in v2.11.0

func (c *Conditions) SetPausedCondition(status metav1.ConditionStatus, reason string, message string)

SetPausedCondition modifies Paused Condition according to input parameters

func (*Conditions) SetReadyCondition

func (c *Conditions) SetReadyCondition(status metav1.ConditionStatus, reason string, message string)

SetReadyCondition modifies Ready Condition according to input parameters

type Credential

type Credential struct {
	// +optional
	Token string `json:"token,omitempty"`

	// +optional
	ServiceAccount string `json:"serviceAccount,omitempty"`
}

Credential defines the Hashicorp Vault credentials depending on the authentication method

func (*Credential) DeepCopy

func (in *Credential) DeepCopy() *Credential

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

func (*Credential) DeepCopyInto

func (in *Credential) DeepCopyInto(out *Credential)

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

type Fallback

type Fallback struct {
	FailureThreshold int32 `json:"failureThreshold"`
	Replicas         int32 `json:"replicas"`
}

Fallback is the spec for fallback options

func (*Fallback) DeepCopy

func (in *Fallback) DeepCopy() *Fallback

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

func (*Fallback) DeepCopyInto

func (in *Fallback) DeepCopyInto(out *Fallback)

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

type GCPCredentials added in v2.13.0

type GCPCredentials struct {
	ClientSecret GCPSecretmanagerClientSecret `json:"clientSecret"`
}

func (*GCPCredentials) DeepCopy added in v2.13.0

func (in *GCPCredentials) DeepCopy() *GCPCredentials

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

func (*GCPCredentials) DeepCopyInto added in v2.13.0

func (in *GCPCredentials) DeepCopyInto(out *GCPCredentials)

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

type GCPSecretManager added in v2.13.0

type GCPSecretManager struct {
	Secrets []GCPSecretManagerSecret `json:"secrets"`
	// +optional
	Credentials *GCPCredentials `json:"credentials"`
	// +optional
	PodIdentity *AuthPodIdentity `json:"podIdentity"`
}

func (*GCPSecretManager) DeepCopy added in v2.13.0

func (in *GCPSecretManager) DeepCopy() *GCPSecretManager

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

func (*GCPSecretManager) DeepCopyInto added in v2.13.0

func (in *GCPSecretManager) DeepCopyInto(out *GCPSecretManager)

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

type GCPSecretManagerSecret added in v2.13.0

type GCPSecretManagerSecret struct {
	Parameter string `json:"parameter"`
	ID        string `json:"id"`
	// +optional
	Version string `json:"version,omitempty"`
}

func (*GCPSecretManagerSecret) DeepCopy added in v2.13.0

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

func (*GCPSecretManagerSecret) DeepCopyInto added in v2.13.0

func (in *GCPSecretManagerSecret) DeepCopyInto(out *GCPSecretManagerSecret)

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

type GCPSecretmanagerClientSecret added in v2.13.0

type GCPSecretmanagerClientSecret struct {
	ValueFrom ValueFromSecret `json:"valueFrom"`
}

func (*GCPSecretmanagerClientSecret) DeepCopy added in v2.13.0

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

func (*GCPSecretmanagerClientSecret) DeepCopyInto added in v2.13.0

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

type GroupVersionKindResource

type GroupVersionKindResource struct {
	Group    string `json:"group"`
	Version  string `json:"version"`
	Kind     string `json:"kind"`
	Resource string `json:"resource"`
}

GroupVersionKindResource provides unified structure for schema.GroupVersionKind and Resource

func ParseGVKR added in v2.10.0

func ParseGVKR(restMapper meta.RESTMapper, apiVersion string, kind string) (GroupVersionKindResource, error)

ParseGVKR returns GroupVersionKindResource for specified apiVersion (groupVersion) and Kind

func (*GroupVersionKindResource) DeepCopy

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

func (*GroupVersionKindResource) DeepCopyInto

func (in *GroupVersionKindResource) DeepCopyInto(out *GroupVersionKindResource)

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

func (GroupVersionKindResource) GVKString

func (gvkr GroupVersionKindResource) GVKString() string

GVKString returns the group, version and kind in string format

func (GroupVersionKindResource) GroupResource

func (gvkr GroupVersionKindResource) GroupResource() schema.GroupResource

GroupResource returns the group and resource of GroupVersionKindResource

func (GroupVersionKindResource) GroupVersion

func (gvkr GroupVersionKindResource) GroupVersion() schema.GroupVersion

GroupVersion returns the group and version of GroupVersionKindResource

func (GroupVersionKindResource) GroupVersionKind

func (gvkr GroupVersionKindResource) GroupVersionKind() schema.GroupVersionKind

GroupVersionKind returns the group, version and kind of GroupVersionKindResource

type HashiCorpVault

type HashiCorpVault struct {
	Address        string              `json:"address"`
	Authentication VaultAuthentication `json:"authentication"`
	Secrets        []VaultSecret       `json:"secrets"`

	// +optional
	Namespace string `json:"namespace,omitempty"`

	// +optional
	Credential *Credential `json:"credential,omitempty"`

	// +optional
	Role string `json:"role,omitempty"`

	// +optional
	Mount string `json:"mount,omitempty"`
}

HashiCorpVault is used to authenticate using Hashicorp Vault

func (*HashiCorpVault) DeepCopy

func (in *HashiCorpVault) DeepCopy() *HashiCorpVault

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

func (*HashiCorpVault) DeepCopyInto

func (in *HashiCorpVault) DeepCopyInto(out *HashiCorpVault)

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

type HealthStatus

type HealthStatus struct {
	// +optional
	NumberOfFailures *int32 `json:"numberOfFailures,omitempty"`
	// +optional
	Status HealthStatusType `json:"status,omitempty"`
}

HealthStatus is the status for a ScaledObject's health

func (*HealthStatus) DeepCopy

func (in *HealthStatus) DeepCopy() *HealthStatus

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

func (*HealthStatus) DeepCopyInto

func (in *HealthStatus) DeepCopyInto(out *HealthStatus)

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

type HealthStatusType

type HealthStatusType string

HealthStatusType is an indication of whether the health status is happy or failing

type HorizontalPodAutoscalerConfig

type HorizontalPodAutoscalerConfig struct {
	// +optional
	Behavior *autoscalingv2.HorizontalPodAutoscalerBehavior `json:"behavior,omitempty"`
	// +optional
	Name string `json:"name,omitempty"`
}

HorizontalPodAutoscalerConfig specifies horizontal scale config

func (*HorizontalPodAutoscalerConfig) DeepCopy

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

func (*HorizontalPodAutoscalerConfig) DeepCopyInto

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

type PodIdentityProvider

type PodIdentityProvider string

PodIdentityProvider contains the list of providers

const (
	PodIdentityProviderNone          PodIdentityProvider = "none"
	PodIdentityProviderAzure         PodIdentityProvider = "azure"
	PodIdentityProviderAzureWorkload PodIdentityProvider = "azure-workload"
	PodIdentityProviderGCP           PodIdentityProvider = "gcp"
	PodIdentityProviderAwsEKS        PodIdentityProvider = "aws-eks"
	PodIdentityProviderAwsKiam       PodIdentityProvider = "aws-kiam"
	PodIdentityProviderAws           PodIdentityProvider = "aws"
)

PodIdentityProviderNone specifies the default state when there is no Identity Provider PodIdentityProvider<IDENTITY_PROVIDER> specifies other available Identity providers

type Rollout added in v2.8.0

type Rollout struct {
	// +optional
	Strategy string `json:"strategy,omitempty"`
	// +optional
	PropagationPolicy string `json:"propagationPolicy,omitempty"`
}

Rollout defines the strategy for job rollouts +optional

func (*Rollout) DeepCopy added in v2.8.0

func (in *Rollout) DeepCopy() *Rollout

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

func (*Rollout) DeepCopyInto added in v2.8.0

func (in *Rollout) DeepCopyInto(out *Rollout)

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

type ScaleTarget

type ScaleTarget struct {
	Name string `json:"name"`
	// +optional
	APIVersion string `json:"apiVersion,omitempty"`
	// +optional
	Kind string `json:"kind,omitempty"`
	// +optional
	EnvSourceContainerName string `json:"envSourceContainerName,omitempty"`
}

ScaleTarget holds the reference to the scale target Object

func (*ScaleTarget) DeepCopy

func (in *ScaleTarget) DeepCopy() *ScaleTarget

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

func (*ScaleTarget) DeepCopyInto

func (in *ScaleTarget) DeepCopyInto(out *ScaleTarget)

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

type ScaleTriggers

type ScaleTriggers struct {
	Type string `json:"type"`
	// +optional
	Name string `json:"name,omitempty"`

	UseCachedMetrics bool `json:"useCachedMetrics,omitempty"`

	Metadata map[string]string `json:"metadata"`
	// +optional
	AuthenticationRef *AuthenticationRef `json:"authenticationRef,omitempty"`
	// +optional
	MetricType autoscalingv2.MetricTargetType `json:"metricType,omitempty"`
}

ScaleTriggers reference the scaler that will be used

func (*ScaleTriggers) DeepCopy

func (in *ScaleTriggers) DeepCopy() *ScaleTriggers

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

func (*ScaleTriggers) DeepCopyInto

func (in *ScaleTriggers) DeepCopyInto(out *ScaleTriggers)

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

func (*ScaleTriggers) GetFullType

func (*ScaleTriggers) GetFullType() duck.Populatable

GetFullType implements duck.Implementable

type ScaledJob

type ScaledJob struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   ScaledJobSpec   `json:"spec,omitempty"`
	Status ScaledJobStatus `json:"status,omitempty"`
}

ScaledJob is the Schema for the scaledjobs API

func (*ScaledJob) DeepCopy

func (in *ScaledJob) DeepCopy() *ScaledJob

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

func (*ScaledJob) DeepCopyInto

func (in *ScaledJob) DeepCopyInto(out *ScaledJob)

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

func (*ScaledJob) DeepCopyObject

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

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

func (*ScaledJob) GenerateIdentifier added in v2.12.0

func (s *ScaledJob) GenerateIdentifier() string

func (ScaledJob) MaxReplicaCount

func (s ScaledJob) MaxReplicaCount() int64

MaxReplicaCount returns MaxReplicaCount

func (ScaledJob) MinReplicaCount added in v2.8.0

func (s ScaledJob) MinReplicaCount() int64

MinReplicaCount returns MinReplicaCount

func (*ScaledJob) SetupWebhookWithManager added in v2.14.0

func (s *ScaledJob) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*ScaledJob) ValidateCreate added in v2.14.0

func (s *ScaledJob) ValidateCreate() (admission.Warnings, error)

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*ScaledJob) ValidateDelete added in v2.14.0

func (s *ScaledJob) ValidateDelete() (admission.Warnings, error)

func (*ScaledJob) ValidateUpdate added in v2.14.0

func (s *ScaledJob) ValidateUpdate(old runtime.Object) (admission.Warnings, error)

type ScaledJobList

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

ScaledJobList contains a list of ScaledJob +kubebuilder:object:root=true

func (*ScaledJobList) DeepCopy

func (in *ScaledJobList) DeepCopy() *ScaledJobList

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

func (*ScaledJobList) DeepCopyInto

func (in *ScaledJobList) DeepCopyInto(out *ScaledJobList)

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

func (*ScaledJobList) DeepCopyObject

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

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

type ScaledJobSpec

type ScaledJobSpec struct {
	JobTargetRef *batchv1.JobSpec `json:"jobTargetRef"`
	// +optional
	PollingInterval *int32 `json:"pollingInterval,omitempty"`
	// +optional
	SuccessfulJobsHistoryLimit *int32 `json:"successfulJobsHistoryLimit,omitempty"`
	// +optional
	FailedJobsHistoryLimit *int32 `json:"failedJobsHistoryLimit,omitempty"`
	// +optional
	RolloutStrategy string `json:"rolloutStrategy,omitempty"`
	// +optional
	Rollout Rollout `json:"rollout,omitempty"`
	// +optional
	EnvSourceContainerName string `json:"envSourceContainerName,omitempty"`
	// +optional
	MinReplicaCount *int32 `json:"minReplicaCount,omitempty"`
	// +optional
	MaxReplicaCount *int32 `json:"maxReplicaCount,omitempty"`
	// +optional
	ScalingStrategy ScalingStrategy `json:"scalingStrategy,omitempty"`
	Triggers        []ScaleTriggers `json:"triggers"`
}

ScaledJobSpec defines the desired state of ScaledJob

func (*ScaledJobSpec) DeepCopy

func (in *ScaledJobSpec) DeepCopy() *ScaledJobSpec

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

func (*ScaledJobSpec) DeepCopyInto

func (in *ScaledJobSpec) DeepCopyInto(out *ScaledJobSpec)

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

type ScaledJobStatus

type ScaledJobStatus struct {
	// +optional
	LastActiveTime *metav1.Time `json:"lastActiveTime,omitempty"`
	// +optional
	Conditions Conditions `json:"conditions,omitempty"`
	// +optional
	Paused string `json:"Paused,omitempty"`
}

ScaledJobStatus defines the observed state of ScaledJob +optional

func (*ScaledJobStatus) DeepCopy

func (in *ScaledJobStatus) DeepCopy() *ScaledJobStatus

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

func (*ScaledJobStatus) DeepCopyInto

func (in *ScaledJobStatus) DeepCopyInto(out *ScaledJobStatus)

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

type ScaledObject

type ScaledObject struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec ScaledObjectSpec `json:"spec"`
	// +optional
	Status ScaledObjectStatus `json:"status,omitempty"`
}

ScaledObject is a specification for a ScaledObject resource

func (*ScaledObject) DeepCopy

func (in *ScaledObject) DeepCopy() *ScaledObject

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

func (*ScaledObject) DeepCopyInto

func (in *ScaledObject) DeepCopyInto(out *ScaledObject)

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

func (*ScaledObject) DeepCopyObject

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

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

func (*ScaledObject) GenerateIdentifier added in v2.9.0

func (so *ScaledObject) GenerateIdentifier() string

GenerateIdentifier returns identifier for the object in for "kind.namespace.name"

func (*ScaledObject) GetHPAMaxReplicas added in v2.13.0

func (so *ScaledObject) GetHPAMaxReplicas() int32

getHPAMaxReplicas returns MaxReplicas based on definition in ScaledObject or default value if not defined

func (*ScaledObject) GetHPAMinReplicas added in v2.13.0

func (so *ScaledObject) GetHPAMinReplicas() *int32

getHPAMinReplicas returns MinReplicas based on definition in ScaledObject or default value if not defined

func (*ScaledObject) HasPausedAnnotation added in v2.12.0

func (so *ScaledObject) HasPausedAnnotation() bool

HasPausedAnnotation returns whether this ScaledObject has PausedAnnotation or PausedReplicasAnnotation

func (*ScaledObject) HasPausedReplicaAnnotation added in v2.13.0

func (so *ScaledObject) HasPausedReplicaAnnotation() bool

func (*ScaledObject) IsUsingModifiers added in v2.12.0

func (so *ScaledObject) IsUsingModifiers() bool

IsUsingModifiers determines whether scalingModifiers are defined or not

func (*ScaledObject) NeedToBePausedByAnnotation added in v2.12.0

func (so *ScaledObject) NeedToBePausedByAnnotation() bool

NeedToBePausedByAnnotation will check whether ScaledObject needs to be paused based on PausedAnnotation or PausedReplicaCount

func (*ScaledObject) SetupWebhookWithManager added in v2.10.0

func (so *ScaledObject) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*ScaledObject) ValidateCreate added in v2.10.0

func (so *ScaledObject) ValidateCreate(dryRun *bool) (admission.Warnings, error)

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*ScaledObject) ValidateDelete added in v2.10.0

func (so *ScaledObject) ValidateDelete(_ *bool) (admission.Warnings, error)

func (*ScaledObject) ValidateUpdate added in v2.10.0

func (so *ScaledObject) ValidateUpdate(old runtime.Object, dryRun *bool) (admission.Warnings, error)

type ScaledObjectCustomValidator added in v2.13.0

type ScaledObjectCustomValidator struct{}

ScaledObjectCustomValidator is a custom validator for ScaledObject objects

func (*ScaledObjectCustomValidator) DeepCopy added in v2.13.0

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

func (*ScaledObjectCustomValidator) DeepCopyInto added in v2.13.0

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

func (ScaledObjectCustomValidator) ValidateCreate added in v2.13.0

func (socv ScaledObjectCustomValidator) ValidateCreate(ctx context.Context, obj runtime.Object) (warnings admission.Warnings, err error)

func (ScaledObjectCustomValidator) ValidateDelete added in v2.13.0

func (socv ScaledObjectCustomValidator) ValidateDelete(ctx context.Context, obj runtime.Object) (warnings admission.Warnings, err error)

func (ScaledObjectCustomValidator) ValidateUpdate added in v2.13.0

func (socv ScaledObjectCustomValidator) ValidateUpdate(ctx context.Context, oldObj, newObj runtime.Object) (warnings admission.Warnings, err error)

type ScaledObjectList

type ScaledObjectList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata"`
	Items           []ScaledObject `json:"items"`
}

ScaledObjectList is a list of ScaledObject resources

func (*ScaledObjectList) DeepCopy

func (in *ScaledObjectList) DeepCopy() *ScaledObjectList

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

func (*ScaledObjectList) DeepCopyInto

func (in *ScaledObjectList) DeepCopyInto(out *ScaledObjectList)

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

func (*ScaledObjectList) DeepCopyObject

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

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

type ScaledObjectSpec

type ScaledObjectSpec struct {
	ScaleTargetRef *ScaleTarget `json:"scaleTargetRef"`
	// +optional
	PollingInterval *int32 `json:"pollingInterval,omitempty"`
	// +optional
	CooldownPeriod *int32 `json:"cooldownPeriod,omitempty"`
	// +optional
	IdleReplicaCount *int32 `json:"idleReplicaCount,omitempty"`
	// +optional
	MinReplicaCount *int32 `json:"minReplicaCount,omitempty"`
	// +optional
	MaxReplicaCount *int32 `json:"maxReplicaCount,omitempty"`
	// +optional
	Advanced *AdvancedConfig `json:"advanced,omitempty"`

	Triggers []ScaleTriggers `json:"triggers"`
	// +optional
	Fallback *Fallback `json:"fallback,omitempty"`
	// +optional
	InitialCooldownPeriod int32 `json:"initialCooldownPeriod,omitempty"`
}

ScaledObjectSpec is the spec for a ScaledObject resource

func (*ScaledObjectSpec) DeepCopy

func (in *ScaledObjectSpec) DeepCopy() *ScaledObjectSpec

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

func (*ScaledObjectSpec) DeepCopyInto

func (in *ScaledObjectSpec) DeepCopyInto(out *ScaledObjectSpec)

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

type ScaledObjectStatus

type ScaledObjectStatus struct {
	// +optional
	ScaleTargetKind string `json:"scaleTargetKind,omitempty"`
	// +optional
	ScaleTargetGVKR *GroupVersionKindResource `json:"scaleTargetGVKR,omitempty"`
	// +optional
	OriginalReplicaCount *int32 `json:"originalReplicaCount,omitempty"`
	// +optional
	LastActiveTime *metav1.Time `json:"lastActiveTime,omitempty"`
	// +optional
	ExternalMetricNames []string `json:"externalMetricNames,omitempty"`
	// +optional
	ResourceMetricNames []string `json:"resourceMetricNames,omitempty"`
	// +optional
	CompositeScalerName string `json:"compositeScalerName,omitempty"`
	// +optional
	Conditions Conditions `json:"conditions,omitempty"`
	// +optional
	Health map[string]HealthStatus `json:"health,omitempty"`
	// +optional
	PausedReplicaCount *int32 `json:"pausedReplicaCount,omitempty"`
	// +optional
	HpaName string `json:"hpaName,omitempty"`
}

ScaledObjectStatus is the status for a ScaledObject resource +optional

func (*ScaledObjectStatus) DeepCopy

func (in *ScaledObjectStatus) DeepCopy() *ScaledObjectStatus

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

func (*ScaledObjectStatus) DeepCopyInto

func (in *ScaledObjectStatus) DeepCopyInto(out *ScaledObjectStatus)

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

type ScalingModifiers added in v2.12.0

type ScalingModifiers struct {
	Formula string `json:"formula,omitempty"`
	Target  string `json:"target,omitempty"`
	// +optional
	ActivationTarget string `json:"activationTarget,omitempty"`
	// +optional
	MetricType autoscalingv2.MetricTargetType `json:"metricType,omitempty"`
}

ScalingModifiers describes advanced scaling logic options like formula

func (*ScalingModifiers) DeepCopy added in v2.12.0

func (in *ScalingModifiers) DeepCopy() *ScalingModifiers

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

func (*ScalingModifiers) DeepCopyInto added in v2.12.0

func (in *ScalingModifiers) DeepCopyInto(out *ScalingModifiers)

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

type ScalingStrategy

type ScalingStrategy struct {
	// +optional
	Strategy string `json:"strategy,omitempty"`
	// +optional
	CustomScalingQueueLengthDeduction *int32 `json:"customScalingQueueLengthDeduction,omitempty"`
	// +optional
	CustomScalingRunningJobPercentage string `json:"customScalingRunningJobPercentage,omitempty"`
	// +optional
	PendingPodConditions []string `json:"pendingPodConditions,omitempty"`
	// +optional
	MultipleScalersCalculation string `json:"multipleScalersCalculation,omitempty"`
}

ScalingStrategy defines the strategy of Scaling +optional

func (*ScalingStrategy) DeepCopy

func (in *ScalingStrategy) DeepCopy() *ScalingStrategy

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

func (*ScalingStrategy) DeepCopyInto

func (in *ScalingStrategy) DeepCopyInto(out *ScalingStrategy)

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

type SecretKeyRef added in v2.7.0

type SecretKeyRef struct {
	Name string `json:"name"`
	Key  string `json:"key"`
}

func (*SecretKeyRef) DeepCopy added in v2.7.0

func (in *SecretKeyRef) DeepCopy() *SecretKeyRef

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

func (*SecretKeyRef) DeepCopyInto added in v2.7.0

func (in *SecretKeyRef) DeepCopyInto(out *SecretKeyRef)

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

type TriggerAuthentication

type TriggerAuthentication struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   TriggerAuthenticationSpec   `json:"spec"`
	Status TriggerAuthenticationStatus `json:"status,omitempty"`
}

TriggerAuthentication defines how a trigger can authenticate +genclient +kubebuilder:resource:path=triggerauthentications,scope=Namespaced,shortName=ta;triggerauth +kubebuilder:subresource:status +kubebuilder:printcolumn:name="PodIdentity",type="string",JSONPath=".spec.podIdentity.provider" +kubebuilder:printcolumn:name="Secret",type="string",JSONPath=".spec.secretTargetRef[*].name" +kubebuilder:printcolumn:name="Env",type="string",JSONPath=".spec.env[*].name" +kubebuilder:printcolumn:name="VaultAddress",type="string",JSONPath=".spec.hashiCorpVault.address" +kubebuilder:printcolumn:name="ScaledObjects",type="string",priority=1,JSONPath=".status.scaledobjects" +kubebuilder:printcolumn:name="ScaledJobs",type="string",priority=1,JSONPath=".status.scaledjobs"

func (*TriggerAuthentication) DeepCopy

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

func (*TriggerAuthentication) DeepCopyInto

func (in *TriggerAuthentication) DeepCopyInto(out *TriggerAuthentication)

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

func (*TriggerAuthentication) DeepCopyObject

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

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

func (*TriggerAuthentication) SetupWebhookWithManager added in v2.12.0

func (ta *TriggerAuthentication) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*TriggerAuthentication) ValidateCreate added in v2.12.0

func (ta *TriggerAuthentication) ValidateCreate() (admission.Warnings, error)

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*TriggerAuthentication) ValidateDelete added in v2.12.0

func (ta *TriggerAuthentication) ValidateDelete() (admission.Warnings, error)

func (*TriggerAuthentication) ValidateUpdate added in v2.12.0

func (ta *TriggerAuthentication) ValidateUpdate(old runtime.Object) (admission.Warnings, error)

type TriggerAuthenticationList

type TriggerAuthenticationList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata"`
	Items           []TriggerAuthentication `json:"items"`
}

TriggerAuthenticationList contains a list of TriggerAuthentication

func (*TriggerAuthenticationList) DeepCopy

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

func (*TriggerAuthenticationList) DeepCopyInto

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

func (*TriggerAuthenticationList) DeepCopyObject

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

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

type TriggerAuthenticationSpec

type TriggerAuthenticationSpec struct {
	// +optional
	PodIdentity *AuthPodIdentity `json:"podIdentity,omitempty"`

	// +optional
	SecretTargetRef []AuthSecretTargetRef `json:"secretTargetRef,omitempty"`

	// +optional
	ConfigMapTargetRef []AuthConfigMapTargetRef `json:"configMapTargetRef,omitempty"`

	// +optional
	Env []AuthEnvironment `json:"env,omitempty"`

	// +optional
	HashiCorpVault *HashiCorpVault `json:"hashiCorpVault,omitempty"`

	// +optional
	AzureKeyVault *AzureKeyVault `json:"azureKeyVault,omitempty"`

	// +optional
	GCPSecretManager *GCPSecretManager `json:"gcpSecretManager,omitempty"`

	// +optional
	AwsSecretManager *AwsSecretManager `json:"awsSecretManager,omitempty"`
}

TriggerAuthenticationSpec defines the various ways to authenticate

func (*TriggerAuthenticationSpec) DeepCopy

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

func (*TriggerAuthenticationSpec) DeepCopyInto

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

type TriggerAuthenticationStatus added in v2.12.0

type TriggerAuthenticationStatus struct {
	// +optional
	ScaledObjectNamesStr string `json:"scaledobjects,omitempty"`
	// +optional
	ScaledJobNamesStr string `json:"scaledjobs,omitempty"`
}

TriggerAuthenticationStatus defines the observed state of TriggerAuthentication

func (*TriggerAuthenticationStatus) DeepCopy added in v2.12.0

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

func (*TriggerAuthenticationStatus) DeepCopyInto added in v2.12.0

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

type ValueFromSecret added in v2.7.0

type ValueFromSecret struct {
	SecretKeyRef SecretKeyRef `json:"secretKeyRef"`
}

func (*ValueFromSecret) DeepCopy added in v2.7.0

func (in *ValueFromSecret) DeepCopy() *ValueFromSecret

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

func (*ValueFromSecret) DeepCopyInto added in v2.7.0

func (in *ValueFromSecret) DeepCopyInto(out *ValueFromSecret)

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

type VaultAuthentication

type VaultAuthentication string

VaultAuthentication contains the list of Hashicorp Vault authentication methods

const (
	VaultAuthenticationToken      VaultAuthentication = "token"
	VaultAuthenticationKubernetes VaultAuthentication = "kubernetes"
)

Client authenticating to Vault

type VaultPkiData added in v2.13.0

type VaultPkiData struct {
	CommonName string `json:"commonName,omitempty"`
	AltNames   string `json:"altNames,omitempty"`
	IPSans     string `json:"ipSans,omitempty"`
	URISans    string `json:"uriSans,omitempty"`
	OtherSans  string `json:"otherSans,omitempty"`
	TTL        string `json:"ttl,omitempty"`
	Format     string `json:"format,omitempty"`
}

func (*VaultPkiData) DeepCopy added in v2.13.0

func (in *VaultPkiData) DeepCopy() *VaultPkiData

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

func (*VaultPkiData) DeepCopyInto added in v2.13.0

func (in *VaultPkiData) DeepCopyInto(out *VaultPkiData)

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

type VaultSecret

type VaultSecret struct {
	Parameter string          `json:"parameter"`
	Path      string          `json:"path"`
	Key       string          `json:"key"`
	Type      VaultSecretType `json:"type,omitempty"`
	PkiData   VaultPkiData    `json:"pkiData,omitempty"`
	Value     string          `json:"-"`
}

VaultSecret defines the mapping between the path of the secret in Vault to the parameter

func (*VaultSecret) DeepCopy

func (in *VaultSecret) DeepCopy() *VaultSecret

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

func (*VaultSecret) DeepCopyInto

func (in *VaultSecret) DeepCopyInto(out *VaultSecret)

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

type VaultSecretType added in v2.13.0

type VaultSecretType string

VaultSecretType defines the type of vault secret

const (
	VaultSecretTypeGeneric  VaultSecretType = ""
	VaultSecretTypeSecretV2 VaultSecretType = "secretV2"
	VaultSecretTypeSecret   VaultSecretType = "secret"
	VaultSecretTypePki      VaultSecretType = "pki"
)

type WithTriggers

type WithTriggers struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	InternalKind string           `json:"internalKind"`
	Spec         WithTriggersSpec `json:"spec"`
}

WithTriggers is a specification for a resource with triggers

func AsDuckWithTriggers added in v2.9.0

func AsDuckWithTriggers(scalableObject interface{}) (*WithTriggers, error)

AsDuckWithTriggers tries to generate WithTriggers object for input object returns error if input object is unknown

func (*WithTriggers) DeepCopy

func (in *WithTriggers) DeepCopy() *WithTriggers

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

func (*WithTriggers) DeepCopyInto

func (in *WithTriggers) DeepCopyInto(out *WithTriggers)

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

func (*WithTriggers) DeepCopyObject

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

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

func (*WithTriggers) GenerateIdentifier added in v2.9.0

func (t *WithTriggers) GenerateIdentifier() string

GenerateIdentifier returns identifier for the object in for "kind.namespace.name"

func (*WithTriggers) GetListType

func (*WithTriggers) GetListType() runtime.Object

GetListType implements apis.Listable

func (*WithTriggers) GetPollingInterval

func (t *WithTriggers) GetPollingInterval() time.Duration

GetPollingInterval returns defined polling interval, if not set default is being returned

func (*WithTriggers) Populate

func (t *WithTriggers) Populate()

Populate implements duck.Populatable

type WithTriggersList

type WithTriggersList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata"`
	Items           []WithTriggers `json:"items"`
}

WithTriggersList is a list of ScaledObject resources

func (*WithTriggersList) DeepCopy

func (in *WithTriggersList) DeepCopy() *WithTriggersList

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

func (*WithTriggersList) DeepCopyInto

func (in *WithTriggersList) DeepCopyInto(out *WithTriggersList)

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

func (*WithTriggersList) DeepCopyObject

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

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

type WithTriggersSpec

type WithTriggersSpec struct {
	PollingInterval *int32          `json:"pollingInterval,omitempty"`
	Triggers        []ScaleTriggers `json:"triggers"`
}

WithTriggersSpec is the spec for a an object with triggers resource

func (*WithTriggersSpec) DeepCopy

func (in *WithTriggersSpec) DeepCopy() *WithTriggersSpec

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

func (*WithTriggersSpec) DeepCopyInto

func (in *WithTriggersSpec) DeepCopyInto(out *WithTriggersSpec)

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