v1

package
v0.8.5 Latest Latest
Warning

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

Go to latest
Published: Sep 4, 2025 License: Apache-2.0 Imports: 9 Imported by: 0

Documentation

Overview

+groupName=kai.scheduler

package v1 contains API Schema definitions for the kai.scheduler v1 API group +kubebuilder:object:generate=true +groupName=kai.scheduler

Index

Constants

This section is empty.

Variables

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

	// 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

This section is empty.

Types

type ConditionReason

type ConditionReason string
const (
	Deployed              ConditionReason = "deployed"
	Available             ConditionReason = "available"
	Reconciled            ConditionReason = "reconciled"
	DependenciesFulfilled ConditionReason = "dependencies_fulfilled"
)

type ConditionType

type ConditionType string
const (
	ConditionTypeReconciling       ConditionType = "Reconciling"
	ConditionTypeDeployed          ConditionType = "Deployed"
	ConditionTypeAvailable         ConditionType = "Available"
	ConditionDependenciesFulfilled ConditionType = "DependenciesFulfilled"
)

type Config

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

	Spec   ConfigSpec   `json:"spec,omitempty"`
	Status ConfigStatus `json:"status,omitempty"`
}

Config is the Schema for the configs API

func (*Config) DeepCopy

func (in *Config) DeepCopy() *Config

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

func (*Config) DeepCopyInto

func (in *Config) DeepCopyInto(out *Config)

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

func (*Config) DeepCopyObject

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

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

type ConfigList

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

ConfigList contains a list of Config

func (*ConfigList) DeepCopy

func (in *ConfigList) DeepCopy() *ConfigList

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

func (*ConfigList) DeepCopyInto

func (in *ConfigList) DeepCopyInto(out *ConfigList)

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

func (*ConfigList) DeepCopyObject

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

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

type ConfigSpec

type ConfigSpec struct {
	// Namespace is the namespace to create the operands in
	// +kubebuilder:validation:Optional
	Namespace string `json:"namespace,omitempty"`

	// Global defined global configuration of the system
	// +kubebuilder:validation:Optional
	Global *GlobalConfig `json:"global,omitempty"`

	// Admission holds KAI admission webhooks
	// +kubebuilder:validation:Optional
	Admission *admission.Admission `json:"admission,omitempty"`

	// PodGroupController specifies configuration for the pod-group-controller
	// +kubebuilder:validation:Optional
	PodGroupController *pod_group_controller.PodGroupController `json:"podGroupController,omitempty"`
}

ConfigSpec defines the desired state of Config

func (*ConfigSpec) DeepCopy

func (in *ConfigSpec) DeepCopy() *ConfigSpec

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

func (*ConfigSpec) DeepCopyInto

func (in *ConfigSpec) DeepCopyInto(out *ConfigSpec)

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

func (*ConfigSpec) SetDefaultsWhereNeeded

func (c *ConfigSpec) SetDefaultsWhereNeeded()

type ConfigStatus

type ConfigStatus struct {
	// INSERT ADDITIONAL STATUS FIELD - define observed state of cluster
	// Important: Run "make" to regenerate code after modifying this file
	Conditions []metav1.Condition `json:"conditions,omitempty"`
}

ConfigStatus defines the observed state of Config

func (*ConfigStatus) DeepCopy

func (in *ConfigStatus) DeepCopy() *ConfigStatus

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

func (*ConfigStatus) DeepCopyInto

func (in *ConfigStatus) DeepCopyInto(out *ConfigStatus)

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

type GlobalConfig

type GlobalConfig struct {
	// Openshift configures the operator to install on Openshift
	// +kubebuilder:validation:Optional
	Openshift *bool `json:"openshift,omitempty"`

	// Affinity defined affinity to the all microservices
	// +kubebuilder:validation:Optional
	Affinity *v1.Affinity `json:"affinity,omitempty"`

	// SecurityContext defines security context for the KAI containers
	// +kubebuilder:validation:Optional
	SecurityContext *v1.SecurityContext `json:"securityContext,omitempty"`

	// ImagePullSecrets defines the container registry additional secret credentials
	// +kubebuilder:validation:Optional
	ImagePullSecrets []string `json:"additionalImagePullSecrets,omitempty"`

	// Tolerations defines tolerations for KAI operators & services
	// +kubebuilder:validation:Optional
	Tolerations []v1.Toleration `json:"tolerations,omitempty"`

	// DaemonsetsTolerations defines additional tolerations for daemonsets in cluster
	// +kubebuilder:validation:Optional
	DaemonsetsTolerations []v1.Toleration `json:"daemonsetsTolerations,omitempty"`

	// ReplicaCount specifies the number of replicas of services that have no specific replicas configuration
	// +kubebuilder:validation:Optional
	ReplicaCount *int32 `json:"replicaCount,omitempty"`

	// QueueLabelKey specifies the pod label key whose value will be the queue name of the pod.
	// +kubebuilder:validation:Optional
	QueueLabelKey *string `json:"queueLabelKey,omitempty"`

	// SchedulerName specifies the name of the KAI scheduler. Pods must set this value
	// in their `spec.schedulerName` field to be processed by the KAI scheduler.
	// +kubebuilder:validation:Optional
	SchedulerName *string `json:"schedulerName,omitempty"`

	// NodePoolLabelKey is the label name by with to filter nodes, pods and other resources that the scheduler is watching
	// +kubebuilder:validation:Optional
	NodePoolLabelKey *string `json:"nodePoolLabelKey,omitempty"`

	// NamespaceLabelSelector filters namespaces for webhooks and pod grouper
	// +kubebuilder:validation:Optional
	NamespaceLabelSelector map[string]string `json:"namespaceLabelSelector,omitempty"`

	// PodLabelSelector filters pods for webhooks and pod grouper
	// +kubebuilder:validation:Optional
	PodLabelSelector map[string]string `json:"podLabelSelector,omitempty"`
}

GlobalConfig defines the global configuration of the system

func (*GlobalConfig) DeepCopy

func (in *GlobalConfig) DeepCopy() *GlobalConfig

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

func (*GlobalConfig) DeepCopyInto

func (in *GlobalConfig) DeepCopyInto(out *GlobalConfig)

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

func (*GlobalConfig) GetSecurityContext

func (g *GlobalConfig) GetSecurityContext() *v1.SecurityContext

func (*GlobalConfig) SetDefaultWhereNeeded

func (g *GlobalConfig) SetDefaultWhereNeeded()

Directories

Path Synopsis
+kubebuilder:object:generate:=true
+kubebuilder:object:generate:=true
+kubebuilder:object:generate:=true
+kubebuilder:object:generate:=true
+kubebuilder:object:generate:=true
+kubebuilder:object:generate:=true

Jump to

Keyboard shortcuts

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