v1alpha1

package
v0.0.5 Latest Latest
Warning

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

Go to latest
Published: Apr 22, 2026 License: Apache-2.0 Imports: 4 Imported by: 0

Documentation

Overview

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

Index

Constants

This section is empty.

Variables

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

	// 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 HostPathVolumeSource added in v0.0.5

type HostPathVolumeSource struct {
	// Path of the directory on the host
	Path string `json:"path"`
}

HostPathVolumeSource represents a host path mapped into a pod

func (*HostPathVolumeSource) DeepCopy added in v0.0.5

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

func (*HostPathVolumeSource) DeepCopyInto added in v0.0.5

func (in *HostPathVolumeSource) DeepCopyInto(out *HostPathVolumeSource)

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

type Kruize

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

	Spec   KruizeSpec   `json:"spec,omitempty"`
	Status KruizeStatus `json:"status,omitempty"`
}

Kruize contains configuration options for controlling the deployment of the Kruize application and its related components. A Kruize instance must be created to instruct the operator to deploy the Kruize application. +kubebuilder:object:root=true +kubebuilder:subresource:status +operator-sdk:csv:customresourcedefinitions:resources={{Deployment,v1},{Service,v1},{ServiceAccount,v1},{ConfigMap,v1},{PersistentVolume,v1},{PersistentVolumeClaim,v1},{StorageClass,v1}}

func (*Kruize) DeepCopy

func (in *Kruize) DeepCopy() *Kruize

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

func (*Kruize) DeepCopyInto

func (in *Kruize) DeepCopyInto(out *Kruize)

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

func (*Kruize) DeepCopyObject

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

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

type KruizeAppConfig added in v0.0.5

type KruizeAppConfig struct {
	// Resource requirements
	// +optional
	Resources *KubernetesResourceRequirements `json:"resources,omitempty"`
}

KruizeAppConfig defines configuration for Kruize application

func (*KruizeAppConfig) DeepCopy added in v0.0.5

func (in *KruizeAppConfig) DeepCopy() *KruizeAppConfig

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

func (*KruizeAppConfig) DeepCopyInto added in v0.0.5

func (in *KruizeAppConfig) DeepCopyInto(out *KruizeAppConfig)

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

type KruizeDBConfig added in v0.0.5

type KruizeDBConfig struct {
	// Resource requirements
	// +optional
	Resources *KubernetesResourceRequirements `json:"resources,omitempty"`

	// Volume mounts for the container
	// +optional
	VolumeMounts []VolumeMount `json:"volumeMounts,omitempty"`

	// Volumes for the pod
	// +optional
	Volumes []Volume `json:"volumes,omitempty"`
}

KruizeDBConfig defines configuration for Kruize database

func (*KruizeDBConfig) DeepCopy added in v0.0.5

func (in *KruizeDBConfig) DeepCopy() *KruizeDBConfig

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

func (*KruizeDBConfig) DeepCopyInto added in v0.0.5

func (in *KruizeDBConfig) DeepCopyInto(out *KruizeDBConfig)

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

type KruizeList

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

KruizeList contains a list of Kruize

func (*KruizeList) DeepCopy

func (in *KruizeList) DeepCopy() *KruizeList

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

func (*KruizeList) DeepCopyInto

func (in *KruizeList) DeepCopyInto(out *KruizeList)

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

func (*KruizeList) DeepCopyObject

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

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

type KruizeSpec

type KruizeSpec struct {

	// Type of Kubernetes cluster (openshift, minikube, or kind)
	// +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Cluster Type",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:select:openshift","urn:alm:descriptor:com.tectonic.ui:select:minikube","urn:alm:descriptor:com.tectonic.ui:select:kind"}
	Cluster_type string `json:"cluster_type"`

	// Container image for Kruize Autotune
	// +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Autotune Image",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text"}
	Autotune_image string `json:"autotune_image"`

	// Container image for Kruize UI
	// +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Autotune UI Image",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text"}
	Autotune_ui_image string `json:"autotune_ui_image"`

	// Container image for Kruize Optimizer
	// +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Optimizer Image",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text"}
	Optimizer_image string `json:"optimizer_image,omitempty"`

	// Target namespace for Kruize deployment
	// +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Namespace",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text"}
	Namespace string `json:"namespace"`

	// Persistent Volume configuration
	// +optional
	PersistentVolume *PersistentVolumeSpec `json:"persistentVolume,omitempty"`

	// Persistent Volume Claim configuration
	// +optional
	PersistentVolumeClaim *PersistentVolumeClaimSpec `json:"persistentVolumeClaim,omitempty"`

	// Database resource configuration
	// +optional
	KruizeDB *KruizeDBConfig `json:"kruize-db,omitempty"`

	// Kruize application resource configuration
	// +optional
	Kruize *KruizeAppConfig `json:"kruize,omitempty"`
}

KruizeSpec defines the desired state of Kruize

func (*KruizeSpec) DeepCopy

func (in *KruizeSpec) DeepCopy() *KruizeSpec

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

func (*KruizeSpec) DeepCopyInto

func (in *KruizeSpec) DeepCopyInto(out *KruizeSpec)

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

type KruizeStatus

type KruizeStatus struct {
	// INSERT ADDITIONAL STATUS FIELD - define observed state of cluster
	// Important: Run "make" to regenerate code after modifying this file
	Nodes []string `json:"nodes"`
}

KruizeStatus defines the observed state of Kruize

func (*KruizeStatus) DeepCopy

func (in *KruizeStatus) DeepCopy() *KruizeStatus

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

func (*KruizeStatus) DeepCopyInto

func (in *KruizeStatus) DeepCopyInto(out *KruizeStatus)

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

type KubernetesResourceRequirements added in v0.0.5

type KubernetesResourceRequirements struct {
	// Resource requests
	// +optional
	Requests *ResourceList `json:"requests,omitempty"`

	// Resource limits
	// +optional
	Limits *ResourceList `json:"limits,omitempty"`
}

KubernetesResourceRequirements defines Kubernetes-style resource requirements

func (*KubernetesResourceRequirements) DeepCopy added in v0.0.5

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

func (*KubernetesResourceRequirements) DeepCopyInto added in v0.0.5

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

type PVCResourceRequirements added in v0.0.5

type PVCResourceRequirements struct {
	// Requests describes the minimum storage resources required
	// +optional
	Requests *StorageCapacity `json:"requests,omitempty"`
}

PVCResourceRequirements describes the storage resources required by a PVC

func (*PVCResourceRequirements) DeepCopy added in v0.0.5

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

func (*PVCResourceRequirements) DeepCopyInto added in v0.0.5

func (in *PVCResourceRequirements) DeepCopyInto(out *PVCResourceRequirements)

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

type PersistentVolumeAccessMode added in v0.0.5

type PersistentVolumeAccessMode string

PersistentVolumeAccessMode defines the access mode for persistent volumes +kubebuilder:validation:Enum=ReadWriteOnce;ReadOnlyMany;ReadWriteMany;ReadWriteOncePod

const (
	// ReadWriteOnce allows read-write access by a single node
	ReadWriteOnce PersistentVolumeAccessMode = "ReadWriteOnce"
	// ReadOnlyMany allows read-only access by multiple nodes
	ReadOnlyMany PersistentVolumeAccessMode = "ReadOnlyMany"
	// ReadWriteMany allows read-write access by multiple nodes
	ReadWriteMany PersistentVolumeAccessMode = "ReadWriteMany"
	// ReadWriteOncePod allows read-write access by a single pod
	ReadWriteOncePod PersistentVolumeAccessMode = "ReadWriteOncePod"
)

type PersistentVolumeClaimSpec added in v0.0.5

type PersistentVolumeClaimSpec struct {
	// Name of the PersistentVolumeClaim
	// +optional
	Name string `json:"name,omitempty"`

	// Storage class name
	// +optional
	StorageClassName string `json:"storageClassName,omitempty"`

	// Access modes for the persistent volume claim
	// +optional
	// +kubebuilder:validation:MaxItems=4
	AccessModes []PersistentVolumeAccessMode `json:"accessModes,omitempty"`

	// Resources defines the storage resources
	// +optional
	Resources *PVCResourceRequirements `json:"resources,omitempty"`

	// Labels for the PersistentVolumeClaim
	// +optional
	Labels map[string]string `json:"labels,omitempty"`
}

PersistentVolumeClaimSpec defines PersistentVolumeClaim configuration

func (*PersistentVolumeClaimSpec) DeepCopy added in v0.0.5

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

func (*PersistentVolumeClaimSpec) DeepCopyInto added in v0.0.5

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

type PersistentVolumeClaimVolumeSource added in v0.0.5

type PersistentVolumeClaimVolumeSource struct {
	// ClaimName is the name of the PVC in the same namespace
	ClaimName string `json:"claimName"`
}

PersistentVolumeClaimVolumeSource references a PVC in the same namespace

func (*PersistentVolumeClaimVolumeSource) DeepCopy added in v0.0.5

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

func (*PersistentVolumeClaimVolumeSource) DeepCopyInto added in v0.0.5

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

type PersistentVolumeSpec added in v0.0.5

type PersistentVolumeSpec struct {
	// Name of the PersistentVolume
	// +optional
	Name string `json:"name,omitempty"`

	// Storage class name
	// +optional
	StorageClassName string `json:"storageClassName,omitempty"`

	// Capacity defines the storage capacity
	// +optional
	Capacity *StorageCapacity `json:"capacity,omitempty"`

	// Access modes for the persistent volume
	// +optional
	// +kubebuilder:validation:MaxItems=4
	AccessModes []PersistentVolumeAccessMode `json:"accessModes,omitempty"`

	// Host path configuration
	// +optional
	HostPath *HostPathVolumeSource `json:"hostPath,omitempty"`

	// Labels for the PersistentVolume
	// +optional
	Labels map[string]string `json:"labels,omitempty"`
}

PersistentVolumeSpec defines PersistentVolume configuration

func (*PersistentVolumeSpec) DeepCopy added in v0.0.5

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

func (*PersistentVolumeSpec) DeepCopyInto added in v0.0.5

func (in *PersistentVolumeSpec) DeepCopyInto(out *PersistentVolumeSpec)

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

type ResourceList added in v0.0.5

type ResourceList struct {
	// Memory (e.g., "100Mi", "1Gi")
	// +optional
	Memory string `json:"memory,omitempty"`

	// CPU (e.g., "0.5", "500m")
	// +optional
	CPU string `json:"cpu,omitempty"`
}

ResourceList defines CPU and memory resources

func (*ResourceList) DeepCopy added in v0.0.5

func (in *ResourceList) DeepCopy() *ResourceList

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

func (*ResourceList) DeepCopyInto added in v0.0.5

func (in *ResourceList) DeepCopyInto(out *ResourceList)

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

type StorageCapacity added in v0.0.5

type StorageCapacity struct {
	// Storage size (e.g., "500Mi", "1Gi")
	// +optional
	Storage string `json:"storage,omitempty"`
}

StorageCapacity defines storage capacity

func (*StorageCapacity) DeepCopy added in v0.0.5

func (in *StorageCapacity) DeepCopy() *StorageCapacity

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

func (*StorageCapacity) DeepCopyInto added in v0.0.5

func (in *StorageCapacity) DeepCopyInto(out *StorageCapacity)

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

type Volume added in v0.0.5

type Volume struct {
	// Name of the volume
	Name string `json:"name"`

	// PersistentVolumeClaim represents a reference to a PersistentVolumeClaim
	// +optional
	PersistentVolumeClaim *PersistentVolumeClaimVolumeSource `json:"persistentVolumeClaim,omitempty"`
}

Volume represents a named volume in a pod

func (*Volume) DeepCopy added in v0.0.5

func (in *Volume) DeepCopy() *Volume

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

func (*Volume) DeepCopyInto added in v0.0.5

func (in *Volume) DeepCopyInto(out *Volume)

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

type VolumeMount added in v0.0.5

type VolumeMount struct {
	// Name of the volume to mount
	Name string `json:"name"`

	// Path within the container at which the volume should be mounted
	MountPath string `json:"mountPath"`
}

VolumeMount describes a mounting of a Volume within a container

func (*VolumeMount) DeepCopy added in v0.0.5

func (in *VolumeMount) DeepCopy() *VolumeMount

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

func (*VolumeMount) DeepCopyInto added in v0.0.5

func (in *VolumeMount) DeepCopyInto(out *VolumeMount)

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