Documentation
¶
Overview ¶
Package v1beta1 contains API Schema definitions for the config v1beta1 API group +kubebuilder:object:generate=true +groupName=config.kueue.x-k8s.io
Index ¶
- Constants
- Variables
- func Convert_v1beta1_AdmissionFairSharing_To_v1beta2_AdmissionFairSharing(in *AdmissionFairSharing, out *v1beta2.AdmissionFairSharing, ...) error
- func Convert_v1beta1_ClientConnection_To_v1beta2_ClientConnection(in *ClientConnection, out *v1beta2.ClientConnection, s conversion.Scope) error
- func Convert_v1beta1_Configuration_To_v1beta2_Configuration(in *Configuration, out *v1beta2.Configuration, s conversionapi.Scope) error
- func Convert_v1beta1_ControllerConfigurationSpec_To_v1beta2_ControllerConfigurationSpec(in *ControllerConfigurationSpec, out *v1beta2.ControllerConfigurationSpec, ...) error
- func Convert_v1beta1_ControllerHealth_To_v1beta2_ControllerHealth(in *ControllerHealth, out *v1beta2.ControllerHealth, s conversion.Scope) error
- func Convert_v1beta1_ControllerManager_To_v1beta2_ControllerManager(in *ControllerManager, out *v1beta2.ControllerManager, s conversion.Scope) error
- func Convert_v1beta1_ControllerMetrics_To_v1beta2_ControllerMetrics(in *ControllerMetrics, out *v1beta2.ControllerMetrics, s conversion.Scope) error
- func Convert_v1beta1_ControllerWebhook_To_v1beta2_ControllerWebhook(in *ControllerWebhook, out *v1beta2.ControllerWebhook, s conversion.Scope) error
- func Convert_v1beta1_DeviceClassMapping_To_v1beta2_DeviceClassMapping(in *DeviceClassMapping, out *v1beta2.DeviceClassMapping, s conversion.Scope) error
- func Convert_v1beta1_FairSharing_To_v1beta2_FairSharing(in *FairSharing, out *v1beta2.FairSharing, s conversionapi.Scope) error
- func Convert_v1beta1_Integrations_To_v1beta2_Integrations(in *Integrations, out *v1beta2.Integrations, s conversionapi.Scope) error
- func Convert_v1beta1_InternalCertManagement_To_v1beta2_InternalCertManagement(in *InternalCertManagement, out *v1beta2.InternalCertManagement, ...) error
- func Convert_v1beta1_MultiKueueExternalFramework_To_v1beta2_MultiKueueExternalFramework(in *MultiKueueExternalFramework, out *v1beta2.MultiKueueExternalFramework, ...) error
- func Convert_v1beta1_MultiKueue_To_v1beta2_MultiKueue(in *MultiKueue, out *v1beta2.MultiKueue, s conversion.Scope) error
- func Convert_v1beta1_ObjectRetentionPolicies_To_v1beta2_ObjectRetentionPolicies(in *ObjectRetentionPolicies, out *v1beta2.ObjectRetentionPolicies, ...) error
- func Convert_v1beta1_RequeuingStrategy_To_v1beta2_RequeuingStrategy(in *RequeuingStrategy, out *v1beta2.RequeuingStrategy, s conversion.Scope) error
- func Convert_v1beta1_ResourceTransformation_To_v1beta2_ResourceTransformation(in *ResourceTransformation, out *v1beta2.ResourceTransformation, ...) error
- func Convert_v1beta1_Resources_To_v1beta2_Resources(in *Resources, out *v1beta2.Resources, s conversion.Scope) error
- func Convert_v1beta1_TLSOptions_To_v1beta2_TLSOptions(in *TLSOptions, out *v1beta2.TLSOptions, s conversion.Scope) error
- func Convert_v1beta1_WaitForPodsReady_To_v1beta2_WaitForPodsReady(in *WaitForPodsReady, out *v1beta2.WaitForPodsReady, s conversionapi.Scope) error
- func Convert_v1beta1_WorkloadRetentionPolicy_To_v1beta2_WorkloadRetentionPolicy(in *WorkloadRetentionPolicy, out *v1beta2.WorkloadRetentionPolicy, ...) error
- func Convert_v1beta2_AdmissionFairSharing_To_v1beta1_AdmissionFairSharing(in *v1beta2.AdmissionFairSharing, out *AdmissionFairSharing, ...) error
- func Convert_v1beta2_ClientConnection_To_v1beta1_ClientConnection(in *v1beta2.ClientConnection, out *ClientConnection, s conversion.Scope) error
- func Convert_v1beta2_Configuration_To_v1beta1_Configuration(in *v1beta2.Configuration, out *Configuration, s conversion.Scope) error
- func Convert_v1beta2_ControllerConfigurationSpec_To_v1beta1_ControllerConfigurationSpec(in *v1beta2.ControllerConfigurationSpec, out *ControllerConfigurationSpec, ...) error
- func Convert_v1beta2_ControllerHealth_To_v1beta1_ControllerHealth(in *v1beta2.ControllerHealth, out *ControllerHealth, s conversion.Scope) error
- func Convert_v1beta2_ControllerManager_To_v1beta1_ControllerManager(in *v1beta2.ControllerManager, out *ControllerManager, s conversion.Scope) error
- func Convert_v1beta2_ControllerMetrics_To_v1beta1_ControllerMetrics(in *v1beta2.ControllerMetrics, out *ControllerMetrics, s conversion.Scope) error
- func Convert_v1beta2_ControllerWebhook_To_v1beta1_ControllerWebhook(in *v1beta2.ControllerWebhook, out *ControllerWebhook, s conversion.Scope) error
- func Convert_v1beta2_DeviceClassMapping_To_v1beta1_DeviceClassMapping(in *v1beta2.DeviceClassMapping, out *DeviceClassMapping, s conversion.Scope) error
- func Convert_v1beta2_FairSharing_To_v1beta1_FairSharing(in *v1beta2.FairSharing, out *FairSharing, s conversionapi.Scope) error
- func Convert_v1beta2_Integrations_To_v1beta1_Integrations(in *v1beta2.Integrations, out *Integrations, s conversion.Scope) error
- func Convert_v1beta2_InternalCertManagement_To_v1beta1_InternalCertManagement(in *v1beta2.InternalCertManagement, out *InternalCertManagement, ...) error
- func Convert_v1beta2_MultiKueueExternalFramework_To_v1beta1_MultiKueueExternalFramework(in *v1beta2.MultiKueueExternalFramework, out *MultiKueueExternalFramework, ...) error
- func Convert_v1beta2_MultiKueue_To_v1beta1_MultiKueue(in *v1beta2.MultiKueue, out *MultiKueue, s conversionapi.Scope) error
- func Convert_v1beta2_ObjectRetentionPolicies_To_v1beta1_ObjectRetentionPolicies(in *v1beta2.ObjectRetentionPolicies, out *ObjectRetentionPolicies, ...) error
- func Convert_v1beta2_RequeuingStrategy_To_v1beta1_RequeuingStrategy(in *v1beta2.RequeuingStrategy, out *RequeuingStrategy, s conversion.Scope) error
- func Convert_v1beta2_ResourceTransformation_To_v1beta1_ResourceTransformation(in *v1beta2.ResourceTransformation, out *ResourceTransformation, ...) error
- func Convert_v1beta2_Resources_To_v1beta1_Resources(in *v1beta2.Resources, out *Resources, s conversion.Scope) error
- func Convert_v1beta2_TLSOptions_To_v1beta1_TLSOptions(in *v1beta2.TLSOptions, out *TLSOptions, s conversion.Scope) error
- func Convert_v1beta2_WaitForPodsReady_To_v1beta1_WaitForPodsReady(in *v1beta2.WaitForPodsReady, out *WaitForPodsReady, s conversionapi.Scope) error
- func Convert_v1beta2_WorkloadRetentionPolicy_To_v1beta1_WorkloadRetentionPolicy(in *v1beta2.WorkloadRetentionPolicy, out *WorkloadRetentionPolicy, ...) error
- func RegisterConversions(s *runtime.Scheme) error
- func RegisterDefaults(scheme *runtime.Scheme) error
- func SetDefaults_Configuration(cfg *Configuration)
- func SetObjectDefaults_Configuration(in *Configuration)
- type AdmissionFairSharing
- type ClientConnection
- type ClusterQueueVisibility
- type Configuration
- type ControllerConfigurationSpec
- type ControllerHealth
- type ControllerManager
- type ControllerMetrics
- type ControllerWebhook
- type DeviceClassMapping
- type FairSharing
- type Integrations
- type InternalCertManagement
- type MultiKueue
- type MultiKueueExternalFramework
- type ObjectRetentionPolicies
- type PodIntegrationOptions
- type PreemptionStrategy
- type QueueVisibility
- type RequeuingStrategy
- type RequeuingTimestamp
- type ResourceTransformation
- type ResourceTransformationStrategy
- type Resources
- type TLSOptions
- type WaitForPodsReady
- type WorkloadRetentionPolicy
Constants ¶
const ( // MultiKueueDispatcherModeAllAtOnce is the name of dispatcher mode where all worker clusters are considered at once // and the first one accepting the workload is selected. MultiKueueDispatcherModeAllAtOnce = "kueue.x-k8s.io/multikueue-dispatcher-all-at-once" // MultiKueueDispatcherModeIncremental is the name of dispatcher mode where worker clusters are incrementally added to the pool of nominated clusters. // The process begins with up to 3 initial clusters and expands the pool by up to 3 clusters at a time (if fewer remain, all are added). MultiKueueDispatcherModeIncremental = "kueue.x-k8s.io/multikueue-dispatcher-incremental" )
const ( DefaultNamespace = "kueue-system" DefaultWebhookServiceName = "kueue-webhook-service" DefaultWebhookSecretName = "kueue-webhook-server-cert" DefaultWebhookPort = 9443 DefaultWebhookCertDir = "/tmp/k8s-webhook-server/serving-certs" DefaultHealthProbeBindAddress = ":8081" DefaultMetricsBindAddress = ":8443" DefaultLeaderElectionID = "c1f6bfd2.kueue.x-k8s.io" DefaultLeaderElectionLeaseDuration = 15 * time.Second DefaultLeaderElectionRenewDeadline = 10 * time.Second DefaultLeaderElectionRetryPeriod = 2 * time.Second DefaultClientConnectionQPS float32 = 20.0 DefaultClientConnectionBurst int32 = 30 DefaultMultiKueueGCInterval = time.Minute DefaultMultiKueueOrigin = "multikueue" DefaultMultiKueueWorkerLostTimeout = 15 * time.Minute DefaultRequeuingBackoffBaseSeconds = 60 DefaultRequeuingBackoffMaxSeconds = 3600 DefaultResourceTransformationStrategy = Retain )
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "config.kueue.x-k8s.io", Version: "v1beta1"} // 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 Convert_v1beta1_AdmissionFairSharing_To_v1beta2_AdmissionFairSharing ¶ added in v0.15.0
func Convert_v1beta1_AdmissionFairSharing_To_v1beta2_AdmissionFairSharing(in *AdmissionFairSharing, out *v1beta2.AdmissionFairSharing, s conversion.Scope) error
Convert_v1beta1_AdmissionFairSharing_To_v1beta2_AdmissionFairSharing is an autogenerated conversion function.
func Convert_v1beta1_ClientConnection_To_v1beta2_ClientConnection ¶ added in v0.15.0
func Convert_v1beta1_ClientConnection_To_v1beta2_ClientConnection(in *ClientConnection, out *v1beta2.ClientConnection, s conversion.Scope) error
Convert_v1beta1_ClientConnection_To_v1beta2_ClientConnection is an autogenerated conversion function.
func Convert_v1beta1_Configuration_To_v1beta2_Configuration ¶ added in v0.15.0
func Convert_v1beta1_Configuration_To_v1beta2_Configuration(in *Configuration, out *v1beta2.Configuration, s conversionapi.Scope) error
func Convert_v1beta1_ControllerConfigurationSpec_To_v1beta2_ControllerConfigurationSpec ¶ added in v0.15.0
func Convert_v1beta1_ControllerConfigurationSpec_To_v1beta2_ControllerConfigurationSpec(in *ControllerConfigurationSpec, out *v1beta2.ControllerConfigurationSpec, s conversion.Scope) error
Convert_v1beta1_ControllerConfigurationSpec_To_v1beta2_ControllerConfigurationSpec is an autogenerated conversion function.
func Convert_v1beta1_ControllerHealth_To_v1beta2_ControllerHealth ¶ added in v0.15.0
func Convert_v1beta1_ControllerHealth_To_v1beta2_ControllerHealth(in *ControllerHealth, out *v1beta2.ControllerHealth, s conversion.Scope) error
Convert_v1beta1_ControllerHealth_To_v1beta2_ControllerHealth is an autogenerated conversion function.
func Convert_v1beta1_ControllerManager_To_v1beta2_ControllerManager ¶ added in v0.15.0
func Convert_v1beta1_ControllerManager_To_v1beta2_ControllerManager(in *ControllerManager, out *v1beta2.ControllerManager, s conversion.Scope) error
Convert_v1beta1_ControllerManager_To_v1beta2_ControllerManager is an autogenerated conversion function.
func Convert_v1beta1_ControllerMetrics_To_v1beta2_ControllerMetrics ¶ added in v0.15.0
func Convert_v1beta1_ControllerMetrics_To_v1beta2_ControllerMetrics(in *ControllerMetrics, out *v1beta2.ControllerMetrics, s conversion.Scope) error
Convert_v1beta1_ControllerMetrics_To_v1beta2_ControllerMetrics is an autogenerated conversion function.
func Convert_v1beta1_ControllerWebhook_To_v1beta2_ControllerWebhook ¶ added in v0.15.0
func Convert_v1beta1_ControllerWebhook_To_v1beta2_ControllerWebhook(in *ControllerWebhook, out *v1beta2.ControllerWebhook, s conversion.Scope) error
Convert_v1beta1_ControllerWebhook_To_v1beta2_ControllerWebhook is an autogenerated conversion function.
func Convert_v1beta1_DeviceClassMapping_To_v1beta2_DeviceClassMapping ¶ added in v0.15.0
func Convert_v1beta1_DeviceClassMapping_To_v1beta2_DeviceClassMapping(in *DeviceClassMapping, out *v1beta2.DeviceClassMapping, s conversion.Scope) error
Convert_v1beta1_DeviceClassMapping_To_v1beta2_DeviceClassMapping is an autogenerated conversion function.
func Convert_v1beta1_FairSharing_To_v1beta2_FairSharing ¶ added in v0.15.0
func Convert_v1beta1_FairSharing_To_v1beta2_FairSharing(in *FairSharing, out *v1beta2.FairSharing, s conversionapi.Scope) error
func Convert_v1beta1_Integrations_To_v1beta2_Integrations ¶ added in v0.15.0
func Convert_v1beta1_Integrations_To_v1beta2_Integrations(in *Integrations, out *v1beta2.Integrations, s conversionapi.Scope) error
Convert_v1beta1_Integrations_To_v1beta2_Integrations is a conversion function that ignores deprecated PodOptions field.
func Convert_v1beta1_InternalCertManagement_To_v1beta2_InternalCertManagement ¶ added in v0.15.0
func Convert_v1beta1_InternalCertManagement_To_v1beta2_InternalCertManagement(in *InternalCertManagement, out *v1beta2.InternalCertManagement, s conversion.Scope) error
Convert_v1beta1_InternalCertManagement_To_v1beta2_InternalCertManagement is an autogenerated conversion function.
func Convert_v1beta1_MultiKueueExternalFramework_To_v1beta2_MultiKueueExternalFramework ¶ added in v0.15.0
func Convert_v1beta1_MultiKueueExternalFramework_To_v1beta2_MultiKueueExternalFramework(in *MultiKueueExternalFramework, out *v1beta2.MultiKueueExternalFramework, s conversion.Scope) error
Convert_v1beta1_MultiKueueExternalFramework_To_v1beta2_MultiKueueExternalFramework is an autogenerated conversion function.
func Convert_v1beta1_MultiKueue_To_v1beta2_MultiKueue ¶ added in v0.15.0
func Convert_v1beta1_MultiKueue_To_v1beta2_MultiKueue(in *MultiKueue, out *v1beta2.MultiKueue, s conversion.Scope) error
Convert_v1beta1_MultiKueue_To_v1beta2_MultiKueue is an autogenerated conversion function.
func Convert_v1beta1_ObjectRetentionPolicies_To_v1beta2_ObjectRetentionPolicies ¶ added in v0.15.0
func Convert_v1beta1_ObjectRetentionPolicies_To_v1beta2_ObjectRetentionPolicies(in *ObjectRetentionPolicies, out *v1beta2.ObjectRetentionPolicies, s conversion.Scope) error
Convert_v1beta1_ObjectRetentionPolicies_To_v1beta2_ObjectRetentionPolicies is an autogenerated conversion function.
func Convert_v1beta1_RequeuingStrategy_To_v1beta2_RequeuingStrategy ¶ added in v0.15.0
func Convert_v1beta1_RequeuingStrategy_To_v1beta2_RequeuingStrategy(in *RequeuingStrategy, out *v1beta2.RequeuingStrategy, s conversion.Scope) error
Convert_v1beta1_RequeuingStrategy_To_v1beta2_RequeuingStrategy is an autogenerated conversion function.
func Convert_v1beta1_ResourceTransformation_To_v1beta2_ResourceTransformation ¶ added in v0.15.0
func Convert_v1beta1_ResourceTransformation_To_v1beta2_ResourceTransformation(in *ResourceTransformation, out *v1beta2.ResourceTransformation, s conversion.Scope) error
Convert_v1beta1_ResourceTransformation_To_v1beta2_ResourceTransformation is an autogenerated conversion function.
func Convert_v1beta1_Resources_To_v1beta2_Resources ¶ added in v0.15.0
func Convert_v1beta1_Resources_To_v1beta2_Resources(in *Resources, out *v1beta2.Resources, s conversion.Scope) error
Convert_v1beta1_Resources_To_v1beta2_Resources is an autogenerated conversion function.
func Convert_v1beta1_TLSOptions_To_v1beta2_TLSOptions ¶ added in v0.16.0
func Convert_v1beta1_TLSOptions_To_v1beta2_TLSOptions(in *TLSOptions, out *v1beta2.TLSOptions, s conversion.Scope) error
Convert_v1beta1_TLSOptions_To_v1beta2_TLSOptions is an autogenerated conversion function.
func Convert_v1beta1_WaitForPodsReady_To_v1beta2_WaitForPodsReady ¶ added in v0.15.0
func Convert_v1beta1_WaitForPodsReady_To_v1beta2_WaitForPodsReady(in *WaitForPodsReady, out *v1beta2.WaitForPodsReady, s conversionapi.Scope) error
func Convert_v1beta1_WorkloadRetentionPolicy_To_v1beta2_WorkloadRetentionPolicy ¶ added in v0.15.0
func Convert_v1beta1_WorkloadRetentionPolicy_To_v1beta2_WorkloadRetentionPolicy(in *WorkloadRetentionPolicy, out *v1beta2.WorkloadRetentionPolicy, s conversion.Scope) error
Convert_v1beta1_WorkloadRetentionPolicy_To_v1beta2_WorkloadRetentionPolicy is an autogenerated conversion function.
func Convert_v1beta2_AdmissionFairSharing_To_v1beta1_AdmissionFairSharing ¶ added in v0.15.0
func Convert_v1beta2_AdmissionFairSharing_To_v1beta1_AdmissionFairSharing(in *v1beta2.AdmissionFairSharing, out *AdmissionFairSharing, s conversion.Scope) error
Convert_v1beta2_AdmissionFairSharing_To_v1beta1_AdmissionFairSharing is an autogenerated conversion function.
func Convert_v1beta2_ClientConnection_To_v1beta1_ClientConnection ¶ added in v0.15.0
func Convert_v1beta2_ClientConnection_To_v1beta1_ClientConnection(in *v1beta2.ClientConnection, out *ClientConnection, s conversion.Scope) error
Convert_v1beta2_ClientConnection_To_v1beta1_ClientConnection is an autogenerated conversion function.
func Convert_v1beta2_Configuration_To_v1beta1_Configuration ¶ added in v0.15.0
func Convert_v1beta2_Configuration_To_v1beta1_Configuration(in *v1beta2.Configuration, out *Configuration, s conversion.Scope) error
Convert_v1beta2_Configuration_To_v1beta1_Configuration is an autogenerated conversion function.
func Convert_v1beta2_ControllerConfigurationSpec_To_v1beta1_ControllerConfigurationSpec ¶ added in v0.15.0
func Convert_v1beta2_ControllerConfigurationSpec_To_v1beta1_ControllerConfigurationSpec(in *v1beta2.ControllerConfigurationSpec, out *ControllerConfigurationSpec, s conversion.Scope) error
Convert_v1beta2_ControllerConfigurationSpec_To_v1beta1_ControllerConfigurationSpec is an autogenerated conversion function.
func Convert_v1beta2_ControllerHealth_To_v1beta1_ControllerHealth ¶ added in v0.15.0
func Convert_v1beta2_ControllerHealth_To_v1beta1_ControllerHealth(in *v1beta2.ControllerHealth, out *ControllerHealth, s conversion.Scope) error
Convert_v1beta2_ControllerHealth_To_v1beta1_ControllerHealth is an autogenerated conversion function.
func Convert_v1beta2_ControllerManager_To_v1beta1_ControllerManager ¶ added in v0.15.0
func Convert_v1beta2_ControllerManager_To_v1beta1_ControllerManager(in *v1beta2.ControllerManager, out *ControllerManager, s conversion.Scope) error
Convert_v1beta2_ControllerManager_To_v1beta1_ControllerManager is an autogenerated conversion function.
func Convert_v1beta2_ControllerMetrics_To_v1beta1_ControllerMetrics ¶ added in v0.15.0
func Convert_v1beta2_ControllerMetrics_To_v1beta1_ControllerMetrics(in *v1beta2.ControllerMetrics, out *ControllerMetrics, s conversion.Scope) error
Convert_v1beta2_ControllerMetrics_To_v1beta1_ControllerMetrics is an autogenerated conversion function.
func Convert_v1beta2_ControllerWebhook_To_v1beta1_ControllerWebhook ¶ added in v0.15.0
func Convert_v1beta2_ControllerWebhook_To_v1beta1_ControllerWebhook(in *v1beta2.ControllerWebhook, out *ControllerWebhook, s conversion.Scope) error
Convert_v1beta2_ControllerWebhook_To_v1beta1_ControllerWebhook is an autogenerated conversion function.
func Convert_v1beta2_DeviceClassMapping_To_v1beta1_DeviceClassMapping ¶ added in v0.15.0
func Convert_v1beta2_DeviceClassMapping_To_v1beta1_DeviceClassMapping(in *v1beta2.DeviceClassMapping, out *DeviceClassMapping, s conversion.Scope) error
Convert_v1beta2_DeviceClassMapping_To_v1beta1_DeviceClassMapping is an autogenerated conversion function.
func Convert_v1beta2_FairSharing_To_v1beta1_FairSharing ¶ added in v0.15.0
func Convert_v1beta2_FairSharing_To_v1beta1_FairSharing(in *v1beta2.FairSharing, out *FairSharing, s conversionapi.Scope) error
func Convert_v1beta2_Integrations_To_v1beta1_Integrations ¶ added in v0.15.0
func Convert_v1beta2_Integrations_To_v1beta1_Integrations(in *v1beta2.Integrations, out *Integrations, s conversion.Scope) error
Convert_v1beta2_Integrations_To_v1beta1_Integrations is an autogenerated conversion function.
func Convert_v1beta2_InternalCertManagement_To_v1beta1_InternalCertManagement ¶ added in v0.15.0
func Convert_v1beta2_InternalCertManagement_To_v1beta1_InternalCertManagement(in *v1beta2.InternalCertManagement, out *InternalCertManagement, s conversion.Scope) error
Convert_v1beta2_InternalCertManagement_To_v1beta1_InternalCertManagement is an autogenerated conversion function.
func Convert_v1beta2_MultiKueueExternalFramework_To_v1beta1_MultiKueueExternalFramework ¶ added in v0.15.0
func Convert_v1beta2_MultiKueueExternalFramework_To_v1beta1_MultiKueueExternalFramework(in *v1beta2.MultiKueueExternalFramework, out *MultiKueueExternalFramework, s conversion.Scope) error
Convert_v1beta2_MultiKueueExternalFramework_To_v1beta1_MultiKueueExternalFramework is an autogenerated conversion function.
func Convert_v1beta2_MultiKueue_To_v1beta1_MultiKueue ¶ added in v0.15.0
func Convert_v1beta2_MultiKueue_To_v1beta1_MultiKueue(in *v1beta2.MultiKueue, out *MultiKueue, s conversionapi.Scope) error
func Convert_v1beta2_ObjectRetentionPolicies_To_v1beta1_ObjectRetentionPolicies ¶ added in v0.15.0
func Convert_v1beta2_ObjectRetentionPolicies_To_v1beta1_ObjectRetentionPolicies(in *v1beta2.ObjectRetentionPolicies, out *ObjectRetentionPolicies, s conversion.Scope) error
Convert_v1beta2_ObjectRetentionPolicies_To_v1beta1_ObjectRetentionPolicies is an autogenerated conversion function.
func Convert_v1beta2_RequeuingStrategy_To_v1beta1_RequeuingStrategy ¶ added in v0.15.0
func Convert_v1beta2_RequeuingStrategy_To_v1beta1_RequeuingStrategy(in *v1beta2.RequeuingStrategy, out *RequeuingStrategy, s conversion.Scope) error
Convert_v1beta2_RequeuingStrategy_To_v1beta1_RequeuingStrategy is an autogenerated conversion function.
func Convert_v1beta2_ResourceTransformation_To_v1beta1_ResourceTransformation ¶ added in v0.15.0
func Convert_v1beta2_ResourceTransformation_To_v1beta1_ResourceTransformation(in *v1beta2.ResourceTransformation, out *ResourceTransformation, s conversion.Scope) error
Convert_v1beta2_ResourceTransformation_To_v1beta1_ResourceTransformation is an autogenerated conversion function.
func Convert_v1beta2_Resources_To_v1beta1_Resources ¶ added in v0.15.0
func Convert_v1beta2_Resources_To_v1beta1_Resources(in *v1beta2.Resources, out *Resources, s conversion.Scope) error
Convert_v1beta2_Resources_To_v1beta1_Resources is an autogenerated conversion function.
func Convert_v1beta2_TLSOptions_To_v1beta1_TLSOptions ¶ added in v0.16.0
func Convert_v1beta2_TLSOptions_To_v1beta1_TLSOptions(in *v1beta2.TLSOptions, out *TLSOptions, s conversion.Scope) error
Convert_v1beta2_TLSOptions_To_v1beta1_TLSOptions is an autogenerated conversion function.
func Convert_v1beta2_WaitForPodsReady_To_v1beta1_WaitForPodsReady ¶ added in v0.15.0
func Convert_v1beta2_WaitForPodsReady_To_v1beta1_WaitForPodsReady(in *v1beta2.WaitForPodsReady, out *WaitForPodsReady, s conversionapi.Scope) error
func Convert_v1beta2_WorkloadRetentionPolicy_To_v1beta1_WorkloadRetentionPolicy ¶ added in v0.15.0
func Convert_v1beta2_WorkloadRetentionPolicy_To_v1beta1_WorkloadRetentionPolicy(in *v1beta2.WorkloadRetentionPolicy, out *WorkloadRetentionPolicy, s conversion.Scope) error
Convert_v1beta2_WorkloadRetentionPolicy_To_v1beta1_WorkloadRetentionPolicy is an autogenerated conversion function.
func RegisterConversions ¶ added in v0.15.0
RegisterConversions adds conversion functions to the given scheme. Public to allow building arbitrary schemes.
func RegisterDefaults ¶ added in v0.6.0
RegisterDefaults adds defaulters functions to the given scheme. Public to allow building arbitrary schemes. All generated defaulters are covering - they call all nested defaulters.
func SetDefaults_Configuration ¶
func SetDefaults_Configuration(cfg *Configuration)
SetDefaults_Configuration sets default values for ComponentConfig.
func SetObjectDefaults_Configuration ¶ added in v0.6.0
func SetObjectDefaults_Configuration(in *Configuration)
Types ¶
type AdmissionFairSharing ¶ added in v0.12.0
type AdmissionFairSharing struct {
// usageHalfLifeTime indicates the time after which the current usage will decay by a half
// If set to 0, usage will be reset to 0 immediately.
UsageHalfLifeTime metav1.Duration `json:"usageHalfLifeTime"`
// usageSamplingInterval indicates how often Kueue updates consumedResources in FairSharingStatus
// Defaults to 5min.
UsageSamplingInterval metav1.Duration `json:"usageSamplingInterval"`
// resourceWeights assigns weights to resources which then are used to calculate LocalQueue's
// resource usage and order Workloads.
// Defaults to 1.
ResourceWeights map[corev1.ResourceName]float64 `json:"resourceWeights,omitempty"`
}
func (*AdmissionFairSharing) DeepCopy ¶ added in v0.12.0
func (in *AdmissionFairSharing) DeepCopy() *AdmissionFairSharing
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AdmissionFairSharing.
func (*AdmissionFairSharing) DeepCopyInto ¶ added in v0.12.0
func (in *AdmissionFairSharing) DeepCopyInto(out *AdmissionFairSharing)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClientConnection ¶
type ClientConnection struct {
// QPS controls the number of queries per second allowed for K8S api server
// connection.
//
// Setting this to a negative value will disable client-side ratelimiting.
QPS *float32 `json:"qps,omitempty"`
// Burst allows extra queries to accumulate when a client is exceeding its rate.
Burst *int32 `json:"burst,omitempty"`
}
func (*ClientConnection) DeepCopy ¶
func (in *ClientConnection) DeepCopy() *ClientConnection
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClientConnection.
func (*ClientConnection) DeepCopyInto ¶
func (in *ClientConnection) DeepCopyInto(out *ClientConnection)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClusterQueueVisibility ¶ added in v0.5.0
type ClusterQueueVisibility struct {
// MaxCount indicates the maximal number of pending workloads exposed in the
// cluster queue status. When the value is set to 0, then ClusterQueue
// visibility updates are disabled.
// The maximal value is 4000.
// Defaults to 10.
MaxCount int32 `json:"maxCount,omitempty"`
}
func (*ClusterQueueVisibility) DeepCopy ¶ added in v0.5.0
func (in *ClusterQueueVisibility) DeepCopy() *ClusterQueueVisibility
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterQueueVisibility.
func (*ClusterQueueVisibility) DeepCopyInto ¶ added in v0.5.0
func (in *ClusterQueueVisibility) DeepCopyInto(out *ClusterQueueVisibility)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Configuration ¶
type Configuration struct {
metav1.TypeMeta `json:",inline"`
// Namespace is the namespace in which kueue is deployed. It is used as part of DNSName of the webhook Service.
// If not set, the value is set from the file /var/run/secrets/kubernetes.io/serviceaccount/namespace
// If the file doesn't exist, default value is kueue-system.
Namespace *string `json:"namespace,omitempty"`
// ControllerManager returns the configurations for controllers
ControllerManager `json:",inline"`
// ManageJobsWithoutQueueName controls whether or not Kueue reconciles
// jobs that don't set the label kueue.x-k8s.io/queue-name.
// If set to true, then those jobs will be suspended and never started unless
// they are assigned a queue and eventually admitted. This also applies to
// jobs created before starting the kueue controller.
// Defaults to false; therefore, those jobs are not managed and if they are created
// unsuspended, they will start immediately.
ManageJobsWithoutQueueName bool `json:"manageJobsWithoutQueueName"`
// ManagedJobsNamespaceSelector provides a namespace-based mechanism to exempt jobs
// from management by Kueue.
//
// It provides a strong exemption for the Pod-based integrations (pod, deployment, statefulset, etc.),
// For Pod-based integrations, only jobs whose namespaces match ManagedJobsNamespaceSelector are
// eligible to be managed by Kueue. Pods, deployments, etc. in non-matching namespaces will
// never be managed by Kueue, even if they have a kueue.x-k8s.io/queue-name label.
// This strong exemption ensures that Kueue will not interfere with the basic operation
// of system namespace.
//
// For all other integrations, ManagedJobsNamespaceSelector provides a weaker exemption
// by only modulating the effects of ManageJobsWithoutQueueName. For these integrations,
// a job that has a kueue.x-k8s.io/queue-name label will always be managed by Kueue. Jobs without
// a kueue.x-k8s.io/queue-name label will be managed by Kueue only when ManageJobsWithoutQueueName is
// true and the job's namespace matches ManagedJobsNamespaceSelector.
ManagedJobsNamespaceSelector *metav1.LabelSelector `json:"managedJobsNamespaceSelector,omitempty"`
// InternalCertManagement is configuration for internalCertManagement
InternalCertManagement *InternalCertManagement `json:"internalCertManagement,omitempty"`
// WaitForPodsReady is configuration to provide a time-based all-or-nothing
// scheduling semantics for Jobs, by ensuring all pods are ready (running
// and passing the readiness probe) within the specified time. If the timeout
// is exceeded, then the workload is evicted.
WaitForPodsReady *WaitForPodsReady `json:"waitForPodsReady,omitempty"`
// ClientConnection provides additional configuration options for Kubernetes
// API server client.
ClientConnection *ClientConnection `json:"clientConnection,omitempty"`
// Integrations provide configuration options for AI/ML/Batch frameworks
// integrations (including K8S job).
Integrations *Integrations `json:"integrations,omitempty"`
// QueueVisibility is configuration to expose the information about the top
// pending workloads.
//
// Deprecated: This field will be removed on v1beta2, use VisibilityOnDemand
// (https://kueue.sigs.k8s.io/docs/tasks/manage/monitor_pending_workloads/pending_workloads_on_demand/)
// instead.
QueueVisibility *QueueVisibility `json:"queueVisibility,omitempty"`
// MultiKueue controls the behaviour of the MultiKueue AdmissionCheck Controller.
MultiKueue *MultiKueue `json:"multiKueue,omitempty"`
// FairSharing controls the Fair Sharing semantics across the cluster.
FairSharing *FairSharing `json:"fairSharing,omitempty"`
// admissionFairSharing indicates configuration of FairSharing with the `AdmissionTime` mode on
AdmissionFairSharing *AdmissionFairSharing `json:"admissionFairSharing,omitempty"`
// Resources provides additional configuration options for handling the resources.
Resources *Resources `json:"resources,omitempty"`
// FeatureGates is a map of feature names to bools that allows to override the
// default enablement status of a feature. The map cannot be used in conjunction
// with passing the list of features via the command line argument "--feature-gates"
// for the Kueue Deployment.
FeatureGates map[string]bool `json:"featureGates,omitempty"`
// ObjectRetentionPolicies provides configuration options for automatic deletion
// of Kueue-managed objects. A nil value disables all automatic deletions.
// +optional
ObjectRetentionPolicies *ObjectRetentionPolicies `json:"objectRetentionPolicies,omitempty"`
}
Configuration is the Schema for the kueueconfigurations API
func (*Configuration) ConvertFrom ¶ added in v0.15.0
func (dst *Configuration) ConvertFrom(srcRaw conversion.Hub) error
func (*Configuration) ConvertTo ¶ added in v0.15.0
func (src *Configuration) ConvertTo(dstRaw conversion.Hub) error
func (*Configuration) DeepCopy ¶
func (in *Configuration) DeepCopy() *Configuration
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Configuration.
func (*Configuration) DeepCopyInto ¶
func (in *Configuration) DeepCopyInto(out *Configuration)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Configuration) DeepCopyObject ¶
func (in *Configuration) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ControllerConfigurationSpec ¶ added in v0.4.0
type ControllerConfigurationSpec struct {
// GroupKindConcurrency is a map from a Kind to the number of concurrent reconciliation
// allowed for that controller.
//
// When a controller is registered within this manager using the builder utilities,
// users have to specify the type the controller reconciles in the For(...) call.
// If the object's kind passed matches one of the keys in this map, the concurrency
// for that controller is set to the number specified.
//
// The key is expected to be consistent in form with GroupKind.String(),
// e.g. ReplicaSet in apps group (regardless of version) would be `ReplicaSet.apps`.
//
// +optional
GroupKindConcurrency map[string]int `json:"groupKindConcurrency,omitempty"`
// CacheSyncTimeout refers to the time limit set to wait for syncing caches.
// Defaults to 2 minutes if not set.
// +optional
CacheSyncTimeout *time.Duration `json:"cacheSyncTimeout,omitempty"`
}
ControllerConfigurationSpec defines the global configuration for controllers registered with the manager.
func (*ControllerConfigurationSpec) DeepCopy ¶ added in v0.4.0
func (in *ControllerConfigurationSpec) DeepCopy() *ControllerConfigurationSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ControllerConfigurationSpec.
func (*ControllerConfigurationSpec) DeepCopyInto ¶ added in v0.4.0
func (in *ControllerConfigurationSpec) DeepCopyInto(out *ControllerConfigurationSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ControllerHealth ¶ added in v0.4.0
type ControllerHealth struct {
// HealthProbeBindAddress is the TCP address that the controller should bind to
// for serving health probes
// It can be set to "0" or "" to disable serving the health probe.
// +optional
HealthProbeBindAddress string `json:"healthProbeBindAddress,omitempty"`
// ReadinessEndpointName, defaults to "readyz"
// +optional
ReadinessEndpointName string `json:"readinessEndpointName,omitempty"`
// LivenessEndpointName, defaults to "healthz"
// +optional
LivenessEndpointName string `json:"livenessEndpointName,omitempty"`
}
ControllerHealth defines the health configs.
func (*ControllerHealth) DeepCopy ¶ added in v0.4.0
func (in *ControllerHealth) DeepCopy() *ControllerHealth
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ControllerHealth.
func (*ControllerHealth) DeepCopyInto ¶ added in v0.4.0
func (in *ControllerHealth) DeepCopyInto(out *ControllerHealth)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ControllerManager ¶ added in v0.4.0
type ControllerManager struct {
// Webhook contains the controllers webhook configuration
// +optional
Webhook ControllerWebhook `json:"webhook,omitempty"`
// LeaderElection is the LeaderElection config to be used when configuring
// the manager.Manager leader election
// +optional
LeaderElection *configv1alpha1.LeaderElectionConfiguration `json:"leaderElection,omitempty"`
// Metrics contains the controller metrics configuration
// +optional
Metrics ControllerMetrics `json:"metrics,omitempty"`
// Health contains the controller health configuration
// +optional
Health ControllerHealth `json:"health,omitempty"`
// PprofBindAddress is the TCP address that the controller should bind to
// for serving pprof.
// It can be set to "" or "0" to disable the pprof serving.
// Since pprof may contain sensitive information, make sure to protect it
// before exposing it to public.
// +optional
PprofBindAddress string `json:"pprofBindAddress,omitempty"`
// Controller contains global configuration options for controllers
// registered within this manager.
// +optional
Controller *ControllerConfigurationSpec `json:"controller,omitempty"`
// TLS contains TLS security settings for all Kueue API servers
// (webhooks, metrics, and visibility).
// +optional
TLS *TLSOptions `json:"tls,omitempty"`
}
func (*ControllerManager) DeepCopy ¶ added in v0.4.0
func (in *ControllerManager) DeepCopy() *ControllerManager
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ControllerManager.
func (*ControllerManager) DeepCopyInto ¶ added in v0.4.0
func (in *ControllerManager) DeepCopyInto(out *ControllerManager)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ControllerMetrics ¶ added in v0.4.0
type ControllerMetrics struct {
// BindAddress is the TCP address that the controller should bind to
// for serving prometheus metrics.
// It can be set to "0" to disable the metrics serving.
// +optional
BindAddress string `json:"bindAddress,omitempty"`
// EnableClusterQueueResources, if true the cluster queue resource usage and quotas
// metrics will be reported.
// +optional
EnableClusterQueueResources bool `json:"enableClusterQueueResources,omitempty"`
}
ControllerMetrics defines the metrics configs.
func (*ControllerMetrics) DeepCopy ¶ added in v0.4.0
func (in *ControllerMetrics) DeepCopy() *ControllerMetrics
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ControllerMetrics.
func (*ControllerMetrics) DeepCopyInto ¶ added in v0.4.0
func (in *ControllerMetrics) DeepCopyInto(out *ControllerMetrics)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ControllerWebhook ¶ added in v0.4.0
type ControllerWebhook struct {
// Port is the port that the webhook server serves at.
// It is used to set webhook.Server.Port.
// +optional
Port *int `json:"port,omitempty"`
// Host is the hostname that the webhook server binds to.
// It is used to set webhook.Server.Host.
// +optional
Host string `json:"host,omitempty"`
// CertDir is the directory that contains the server key and certificate.
// if not set, webhook server would look up the server key and certificate in
// {TempDir}/k8s-webhook-server/serving-certs. The server key and certificate
// must be named tls.key and tls.crt, respectively.
// +optional
CertDir string `json:"certDir,omitempty"`
}
ControllerWebhook defines the webhook server for the controller.
func (*ControllerWebhook) DeepCopy ¶ added in v0.4.0
func (in *ControllerWebhook) DeepCopy() *ControllerWebhook
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ControllerWebhook.
func (*ControllerWebhook) DeepCopyInto ¶ added in v0.4.0
func (in *ControllerWebhook) DeepCopyInto(out *ControllerWebhook)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DeviceClassMapping ¶ added in v0.14.0
type DeviceClassMapping struct {
// Name is referenced in ClusterQueue.nominalQuota and Workload status.
// Must be a valid fully qualified name consisting of an optional DNS subdomain prefix
// followed by a slash and a DNS label, or just a DNS label.
// DNS labels consist of lower-case alphanumeric characters or hyphens,
// and must start and end with an alphanumeric character.
// DNS subdomain prefixes follow the same rules as DNS labels but can contain periods.
// The total length must not exceed 253 characters.
Name corev1.ResourceName `json:"name"`
// DeviceClassNames enumerates the DeviceClasses represented by this resource name.
// Each device class name must be a valid qualified name consisting of an optional DNS subdomain prefix
// followed by a slash and a DNS label, or just a DNS label.
// DNS labels consist of lower-case alphanumeric characters or hyphens,
// and must start and end with an alphanumeric character.
// DNS subdomain prefixes follow the same rules as DNS labels but can contain periods.
// The total length of each name must not exceed 253 characters.
DeviceClassNames []corev1.ResourceName `json:"deviceClassNames"`
}
DeviceClassMapping holds device class to logical resource mappings for Dynamic Resource Allocation support.
func (*DeviceClassMapping) DeepCopy ¶ added in v0.14.0
func (in *DeviceClassMapping) DeepCopy() *DeviceClassMapping
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeviceClassMapping.
func (*DeviceClassMapping) DeepCopyInto ¶ added in v0.14.0
func (in *DeviceClassMapping) DeepCopyInto(out *DeviceClassMapping)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type FairSharing ¶ added in v0.7.0
type FairSharing struct {
// enable indicates whether to enable Fair Sharing for all cohorts.
// Defaults to false.
Enable bool `json:"enable"`
// preemptionStrategies indicates which constraints should a preemption satisfy.
// The preemption algorithm will only use the next strategy in the list if the
// incoming workload (preemptor) doesn't fit after using the previous strategies.
// Possible values are:
// - LessThanOrEqualToFinalShare: Only preempt a workload if the share of the preemptor CQ
// with the preemptor workload is less than or equal to the share of the preemptee CQ
// without the workload to be preempted.
// This strategy might favor preemption of smaller workloads in the preemptee CQ,
// regardless of priority or start time, in an effort to keep the share of the CQ
// as high as possible.
// - LessThanInitialShare: Only preempt a workload if the share of the preemptor CQ
// with the incoming workload is strictly less than the share of the preemptee CQ.
// This strategy doesn't depend on the share usage of the workload being preempted.
// As a result, the strategy chooses to preempt workloads with the lowest priority and
// newest start time first.
// The default strategy is ["LessThanOrEqualToFinalShare", "LessThanInitialShare"].
PreemptionStrategies []PreemptionStrategy `json:"preemptionStrategies,omitempty"`
}
func (*FairSharing) DeepCopy ¶ added in v0.7.0
func (in *FairSharing) DeepCopy() *FairSharing
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FairSharing.
func (*FairSharing) DeepCopyInto ¶ added in v0.7.0
func (in *FairSharing) DeepCopyInto(out *FairSharing)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Integrations ¶
type Integrations struct {
// List of framework names to be enabled.
// Possible options:
// - "batch/job"
// - "kubeflow.org/mpijob"
// - "ray.io/rayjob"
// - "ray.io/raycluster"
// - "jobset.x-k8s.io/jobset"
// - "kubeflow.org/paddlejob"
// - "kubeflow.org/pytorchjob"
// - "kubeflow.org/tfjob"
// - "kubeflow.org/xgboostjob"
// - "kubeflow.org/jaxjob"
// - "trainer.kubeflow.org/trainjob"
// - "workload.codeflare.dev/appwrapper"
// - "pod"
// - "deployment"
// - "statefulset"
// - "leaderworkerset.x-k8s.io/leaderworkerset"
Frameworks []string `json:"frameworks,omitempty"`
// List of GroupVersionKinds that are managed for Kueue by external controllers;
// the expected format is `Kind.version.group.com`.
ExternalFrameworks []string `json:"externalFrameworks,omitempty"`
// PodOptions defines kueue controller behaviour for pod objects
//
// Deprecated: This field will be removed on v1beta2, use ManagedJobsNamespaceSelector
// (https://kueue.sigs.k8s.io/docs/tasks/run/plain_pods/)
// instead.
PodOptions *PodIntegrationOptions `json:"podOptions,omitempty"`
// labelKeysToCopy is a list of label keys that should be copied from the job into the
// workload object. It is not required for the job to have all the labels from this
// list. If a job does not have some label with the given key from this list, the
// constructed workload object will be created without this label. In the case
// of creating a workload from a composable job (pod group), if multiple objects
// have labels with some key from the list, the values of these labels must
// match or otherwise the workload creation would fail. The labels are copied only
// during the workload creation and are not updated even if the labels of the
// underlying job are changed.
LabelKeysToCopy []string `json:"labelKeysToCopy,omitempty"`
}
func (*Integrations) DeepCopy ¶
func (in *Integrations) DeepCopy() *Integrations
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Integrations.
func (*Integrations) DeepCopyInto ¶
func (in *Integrations) DeepCopyInto(out *Integrations)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type InternalCertManagement ¶
type InternalCertManagement struct {
// Enable controls the use of internal cert management for the webhook,
// metrics and visibility endpoints.
// When enabled Kueue is using libraries to generate and
// self-sign the certificates.
// When disabled, you need to provide the certificates for
// the webhooks, metrics and visibility through a third party certificate
// This secret is mounted to the kueue controller manager pod. The mount
// path for webhooks is /tmp/k8s-webhook-server/serving-certs, for
// metrics endpoint the expected path is `/etc/kueue/metrics/certs` and for
// visibility endpoint the expected path is `/visibility`.
// The keys and certs are named tls.key and tls.crt.
Enable *bool `json:"enable,omitempty"`
// WebhookServiceName is the name of the Service used as part of the DNSName.
// Defaults to kueue-webhook-service.
WebhookServiceName *string `json:"webhookServiceName,omitempty"`
// WebhookSecretName is the name of the Secret used to store CA and server certs.
// Defaults to kueue-webhook-server-cert.
WebhookSecretName *string `json:"webhookSecretName,omitempty"`
}
func (*InternalCertManagement) DeepCopy ¶
func (in *InternalCertManagement) DeepCopy() *InternalCertManagement
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InternalCertManagement.
func (*InternalCertManagement) DeepCopyInto ¶
func (in *InternalCertManagement) DeepCopyInto(out *InternalCertManagement)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MultiKueue ¶ added in v0.6.0
type MultiKueue struct {
// GCInterval defines the time interval between two consecutive garbage collection runs.
// Defaults to 1min. If 0, the garbage collection is disabled.
// +optional
GCInterval *metav1.Duration `json:"gcInterval"`
// Origin defines a label value used to track the creator of workloads in the worker
// clusters.
// This is used by multikueue in components like its garbage collector to identify
// remote objects that ware created by this multikueue manager cluster and delete
// them if their local counterpart no longer exists.
// +optional
Origin *string `json:"origin,omitempty"`
// WorkerLostTimeout defines the time a local workload's multikueue admission check state is kept Ready
// if the connection with its reserving worker cluster is lost.
//
// Defaults to 15 minutes.
// +optional
WorkerLostTimeout *metav1.Duration `json:"workerLostTimeout,omitempty"`
// DispatcherName defines the dispatcher responsible for selecting worker clusters to handle the workload.
// - If specified, the workload will be handled by the named dispatcher.
// - If not specified, the workload will be handled by the default ("kueue.x-k8s.io/multikueue-dispatcher-all-at-once") dispatcher.
// +optional
DispatcherName *string `json:"dispatcherName,omitempty"`
// ExternalFrameworks defines a list of external frameworks that should be supported
// by the generic MultiKueue adapter. Each entry defines how to handle a specific
// GroupVersionKind (GVK) for MultiKueue operations.
// +optional
ExternalFrameworks []MultiKueueExternalFramework `json:"externalFrameworks,omitempty"`
}
func (*MultiKueue) DeepCopy ¶ added in v0.6.0
func (in *MultiKueue) DeepCopy() *MultiKueue
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MultiKueue.
func (*MultiKueue) DeepCopyInto ¶ added in v0.6.0
func (in *MultiKueue) DeepCopyInto(out *MultiKueue)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MultiKueueExternalFramework ¶ added in v0.14.0
type MultiKueueExternalFramework struct {
// Name is the GVK of the resource that are
// managed by external controllers
// the expected format is `kind.version.group`.
Name string `json:"name"`
}
MultiKueueExternalFramework defines a framework that is not built-in.
func (*MultiKueueExternalFramework) DeepCopy ¶ added in v0.14.0
func (in *MultiKueueExternalFramework) DeepCopy() *MultiKueueExternalFramework
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MultiKueueExternalFramework.
func (*MultiKueueExternalFramework) DeepCopyInto ¶ added in v0.14.0
func (in *MultiKueueExternalFramework) DeepCopyInto(out *MultiKueueExternalFramework)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ObjectRetentionPolicies ¶ added in v0.12.0
type ObjectRetentionPolicies struct {
// Workloads configures retention for Workloads.
// A nil value disables automatic deletion of Workloads.
// +optional
Workloads *WorkloadRetentionPolicy `json:"workloads,omitempty"`
}
ObjectRetentionPolicies holds retention settings for different object types.
func (*ObjectRetentionPolicies) DeepCopy ¶ added in v0.12.0
func (in *ObjectRetentionPolicies) DeepCopy() *ObjectRetentionPolicies
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ObjectRetentionPolicies.
func (*ObjectRetentionPolicies) DeepCopyInto ¶ added in v0.12.0
func (in *ObjectRetentionPolicies) DeepCopyInto(out *ObjectRetentionPolicies)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PodIntegrationOptions ¶ added in v0.5.0
type PodIntegrationOptions struct {
// NamespaceSelector can be used to omit some namespaces from pod reconciliation
NamespaceSelector *metav1.LabelSelector `json:"namespaceSelector,omitempty"`
// PodSelector can be used to choose what pods to reconcile
PodSelector *metav1.LabelSelector `json:"podSelector,omitempty"`
}
func (*PodIntegrationOptions) DeepCopy ¶ added in v0.5.0
func (in *PodIntegrationOptions) DeepCopy() *PodIntegrationOptions
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodIntegrationOptions.
func (*PodIntegrationOptions) DeepCopyInto ¶ added in v0.5.0
func (in *PodIntegrationOptions) DeepCopyInto(out *PodIntegrationOptions)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type QueueVisibility ¶ added in v0.5.0
type QueueVisibility struct {
// ClusterQueues is configuration to expose the information
// about the top pending workloads in the cluster queue.
ClusterQueues *ClusterQueueVisibility `json:"clusterQueues,omitempty"`
// UpdateIntervalSeconds specifies the time interval for updates to the structure
// of the top pending workloads in the queues.
// The minimum value is 1.
// Defaults to 5.
UpdateIntervalSeconds int32 `json:"updateIntervalSeconds,omitempty"`
}
func (*QueueVisibility) DeepCopy ¶ added in v0.5.0
func (in *QueueVisibility) DeepCopy() *QueueVisibility
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueueVisibility.
func (*QueueVisibility) DeepCopyInto ¶ added in v0.5.0
func (in *QueueVisibility) DeepCopyInto(out *QueueVisibility)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RequeuingStrategy ¶ added in v0.6.0
type RequeuingStrategy struct {
// Timestamp defines the timestamp used for re-queuing a Workload
// that was evicted due to Pod readiness. The possible values are:
//
// - `Eviction` (default) indicates from Workload `Evicted` condition with `PodsReadyTimeout` reason.
// - `Creation` indicates from Workload .metadata.creationTimestamp.
//
// +optional
Timestamp *RequeuingTimestamp `json:"timestamp,omitempty"`
// BackoffLimitCount defines the maximum number of re-queuing retries.
// Once the number is reached, the workload is deactivated (`.spec.activate`=`false`).
// When it is null, the workloads will repeatedly and endless re-queueing.
//
// Every backoff duration is about "b*2^(n-1)+Rand" where:
// - "b" represents the base set by "BackoffBaseSeconds" parameter,
// - "n" represents the "workloadStatus.requeueState.count",
// - "Rand" represents the random jitter.
// During this time, the workload is taken as an inadmissible and
// other workloads will have a chance to be admitted.
// By default, the consecutive requeue delays are around: (60s, 120s, 240s, ...).
//
// Defaults to null.
// +optional
BackoffLimitCount *int32 `json:"backoffLimitCount,omitempty"`
// BackoffBaseSeconds defines the base for the exponential backoff for
// re-queuing an evicted workload.
//
// Defaults to 60.
// +optional
BackoffBaseSeconds *int32 `json:"backoffBaseSeconds,omitempty"`
// BackoffMaxSeconds defines the maximum backoff time to re-queue an evicted workload.
//
// Defaults to 3600.
// +optional
BackoffMaxSeconds *int32 `json:"backoffMaxSeconds,omitempty"`
}
func (*RequeuingStrategy) DeepCopy ¶ added in v0.6.0
func (in *RequeuingStrategy) DeepCopy() *RequeuingStrategy
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RequeuingStrategy.
func (*RequeuingStrategy) DeepCopyInto ¶ added in v0.6.0
func (in *RequeuingStrategy) DeepCopyInto(out *RequeuingStrategy)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RequeuingTimestamp ¶ added in v0.6.0
type RequeuingTimestamp string
const ( // CreationTimestamp timestamp (from Workload .metadata.creationTimestamp). CreationTimestamp RequeuingTimestamp = "Creation" // EvictionTimestamp timestamp (from Workload .status.conditions). EvictionTimestamp RequeuingTimestamp = "Eviction" )
type ResourceTransformation ¶ added in v0.9.0
type ResourceTransformation struct {
// Input is the name of the input resource.
Input corev1.ResourceName `json:"input"`
// Strategy specifies if the input resource should be replaced or retained.
// Defaults to Retain
Strategy *ResourceTransformationStrategy `json:"strategy,omitempty"`
// MultiplyBy indicates the resource name requested by a workload, if
// specified.
// The requested amount of the resource is used to multiply the requested
// amount of the resource indicated by the "input" field.
// +optional
MultiplyBy corev1.ResourceName `json:"multiplyBy,omitempty"`
// Outputs specifies the output resources and quantities per unit of input resource.
// An empty Outputs combined with a `Replace` Strategy causes the Input resource to be ignored by Kueue.
Outputs corev1.ResourceList `json:"outputs,omitempty"`
}
func (*ResourceTransformation) DeepCopy ¶ added in v0.9.0
func (in *ResourceTransformation) DeepCopy() *ResourceTransformation
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceTransformation.
func (*ResourceTransformation) DeepCopyInto ¶ added in v0.9.0
func (in *ResourceTransformation) DeepCopyInto(out *ResourceTransformation)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ResourceTransformationStrategy ¶ added in v0.9.0
type ResourceTransformationStrategy string
const Replace ResourceTransformationStrategy = "Replace"
const Retain ResourceTransformationStrategy = "Retain"
type Resources ¶ added in v0.7.0
type Resources struct {
// ExcludedResourcePrefixes defines which resources should be ignored by Kueue
ExcludeResourcePrefixes []string `json:"excludeResourcePrefixes,omitempty"`
// Transformations defines how to transform PodSpec resources into Workload resource requests.
// This is intended to be a map with Input as the key (enforced by validation code)
Transformations []ResourceTransformation `json:"transformations,omitempty"`
// DeviceClassMappings defines mappings from device classes to logical resources
// for Dynamic Resource Allocation support.
// +optional
DeviceClassMappings []DeviceClassMapping `json:"deviceClassMappings,omitempty"`
}
func (*Resources) DeepCopy ¶ added in v0.7.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Resources.
func (*Resources) DeepCopyInto ¶ added in v0.7.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TLSOptions ¶ added in v0.16.0
type TLSOptions struct {
// minVersion is the minimum TLS version supported.
// Values are from tls package constants (https://golang.org/pkg/crypto/tls/#pkg-constants).
// This field is only valid when TLSOptions is set to true.
// The default would be to not set this value and inherit golang settings.
// +optional
MinVersion string `json:"minVersion,omitempty"`
// cipherSuites is the list of allowed cipher suites for the server.
// Note that TLS 1.3 ciphersuites are not configurable.
// Values are from tls package constants (https://golang.org/pkg/crypto/tls/#pkg-constants).
// The default would be to not set this value and inherit golang settings.
// +optional
CipherSuites []string `json:"cipherSuites,omitempty"`
}
TLSOptions defines TLS security settings for Kueue servers
func (*TLSOptions) DeepCopy ¶ added in v0.16.0
func (in *TLSOptions) DeepCopy() *TLSOptions
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TLSOptions.
func (*TLSOptions) DeepCopyInto ¶ added in v0.16.0
func (in *TLSOptions) DeepCopyInto(out *TLSOptions)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type WaitForPodsReady ¶
type WaitForPodsReady struct {
// Enable indicates whether to enable wait for pods ready feature.
// Defaults to false.
Enable bool `json:"enable,omitempty"`
// Timeout defines the time for an admitted workload to reach the
// PodsReady=true condition. When the timeout is exceeded, the workload
// evicted and requeued in the same cluster queue.
// Defaults to 5min.
// +optional
Timeout *metav1.Duration `json:"timeout,omitempty"`
// BlockAdmission when true, cluster queue will block admissions for all
// subsequent jobs until the jobs reach the PodsReady=true condition.
// This setting is only honored when `Enable` is set to true.
BlockAdmission *bool `json:"blockAdmission,omitempty"`
// RequeuingStrategy defines the strategy for requeuing a Workload.
// +optional
RequeuingStrategy *RequeuingStrategy `json:"requeuingStrategy,omitempty"`
// RecoveryTimeout defines a timeout, measured since the
// last transition to the PodsReady=false condition after a Workload is Admitted and running.
// Such a transition may happen when a Pod failed and the replacement Pod
// is awaited to be scheduled.
// After exceeding the timeout the corresponding job gets suspended again
// and requeued after the backoff delay. The timeout is enforced only if waitForPodsReady.enable=true.
// Defaults to the value of timeout. Setting to "0s" disables recovery timeout checking.
// +optional
RecoveryTimeout *metav1.Duration `json:"recoveryTimeout,omitempty"`
}
WaitForPodsReady defines configuration for the Wait For Pods Ready feature, which is used to ensure that all Pods are ready within the specified time.
func (*WaitForPodsReady) DeepCopy ¶
func (in *WaitForPodsReady) DeepCopy() *WaitForPodsReady
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WaitForPodsReady.
func (*WaitForPodsReady) DeepCopyInto ¶
func (in *WaitForPodsReady) DeepCopyInto(out *WaitForPodsReady)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type WorkloadRetentionPolicy ¶ added in v0.12.0
type WorkloadRetentionPolicy struct {
// AfterFinished is the duration to wait after a Workload finishes
// before deleting it.
// A duration of 0 will delete immediately.
// A nil value disables automatic deletion.
// Represented using metav1.Duration (e.g. "10m", "1h30m").
// +optional
AfterFinished *metav1.Duration `json:"afterFinished,omitempty"`
// AfterDeactivatedByKueue is the duration to wait after *any* Kueue-managed Workload
// (such as a Job, JobSet, or other custom workload types) has been marked
// as deactivated by Kueue before automatically deleting it.
// Deletion of deactivated workloads may cascade to objects not created by
// Kueue, since deleting the parent Workload owner (e.g. JobSet) can trigger
// garbage-collection of dependent resources.
// A duration of 0 will delete immediately.
// A nil value disables automatic deletion.
// Represented using metav1.Duration (e.g. "10m", "1h30m").
// +optional
AfterDeactivatedByKueue *metav1.Duration `json:"afterDeactivatedByKueue,omitempty"`
}
WorkloadRetentionPolicy defines the policies for when Workloads should be deleted.
func (*WorkloadRetentionPolicy) DeepCopy ¶ added in v0.12.0
func (in *WorkloadRetentionPolicy) DeepCopy() *WorkloadRetentionPolicy
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkloadRetentionPolicy.
func (*WorkloadRetentionPolicy) DeepCopyInto ¶ added in v0.12.0
func (in *WorkloadRetentionPolicy) DeepCopyInto(out *WorkloadRetentionPolicy)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.