v1alpha1

package
v0.0.0-...-3a90e46 Latest Latest
Warning

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

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

Documentation

Overview

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

Index

Constants

This section is empty.

Variables

View Source
var (
	// GroupVersion is group version used to register these objects
	GroupVersion = schema.GroupVersion{Group: "unum.cloud", 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 NodeAffinityLabel

type NodeAffinityLabel struct {
	// Label key of the cluster nodes to match
	Label string `json:"label,omitempty"`
	// Label value of the cluster nodes to match
	Value string `json:"value,omitempty"`
	// Weight of this preference in the range 1-100
	Weight int32 `json:"weight,omitempty"`
}

Defines affinity used by UStore. learn more in https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/

func (*NodeAffinityLabel) DeepCopy

func (in *NodeAffinityLabel) DeepCopy() *NodeAffinityLabel

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

func (*NodeAffinityLabel) DeepCopyInto

func (in *NodeAffinityLabel) DeepCopyInto(out *NodeAffinityLabel)

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

type Persistence

type Persistence struct {
	// Size of the requested volume in Gi, Mi, Ti etc'
	// +kubebuilder:validation:Pattern:="^[1-9][0-9]{0,3}[KMGTPE]{1}i"
	Size string `json:"size,omitempty"`
	// Path to mount inside UStore container. This must correspond with the data path in config map.
	MountPath string `json:"mountPath,omitempty"`
	// +kubebuilder:validation:Enum:="ReadWriteOnce";"ReadWriteMany"
	AccessMode string `json:"accessMode,omitempty"`
}

Defines a persistence used by the DB

func (*Persistence) DeepCopy

func (in *Persistence) DeepCopy() *Persistence

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

func (*Persistence) DeepCopyInto

func (in *Persistence) DeepCopyInto(out *Persistence)

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

type UStore

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

	Spec   UStoreSpec   `json:"spec,omitempty"`
	Status UStoreStatus `json:"status,omitempty"`
}

UStore is the Schema for the UStores API

func (*UStore) DeepCopy

func (in *UStore) DeepCopy() *UStore

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

func (*UStore) DeepCopyInto

func (in *UStore) DeepCopyInto(out *UStore)

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

func (*UStore) DeepCopyObject

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

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

type UStoreList

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

UStoreList contains a list of UStore

func (*UStoreList) DeepCopy

func (in *UStoreList) DeepCopy() *UStoreList

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

func (*UStoreList) DeepCopyInto

func (in *UStoreList) DeepCopyInto(out *UStoreList)

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

func (*UStoreList) DeepCopyObject

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

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

type UStoreSpec

type UStoreSpec struct {

	// DB Type defines the type of DB from a list of supported types. This is mandatory and immutable once set.
	// +kubebuilder:validation:Enum:="leveldb";"rocksdb";"udisk";"ucset";
	// +kubebuilder:validation:XValidation:rule="self == oldSelf",message="Value is immutable"
	DBType string `json:"dbType,omitempty"`

	// DB Config Map name is required.
	// +kubebuilder:validation:Required
	DBConfigMapName string `json:"dbConfigMapName,omitempty"`

	// DB Port to connect clients.
	DBServicePort int `json:"dbServicePort,omitempty"`

	// List of persistent volumes to be attached. Required by some DB Types.
	Volumes []Persistence `json:"volumes,omitempty"`
	// +kubebuilder:default:=1
	NumOfInstances int32 `json:"numOfInstances,omitempty"`

	// Memory limit for this UStore.
	// +kubebuilder:validation:Pattern:="^[1-9][0-9]{0,3}[KMG]{1}i"
	MemoryLimit string `json:"memoryLimit,omitempty"` // memory limit on pod.
	// Concurrency (cores) limit for this UStore.
	ConcurrencyLimit string `json:"concurrencyLimit,omitempty"`

	// Optionally define labels for an affinity to run UStore on specific cluster nodes.
	NodeAffinityLabels []NodeAffinityLabel `json:"nodeAffinityLabels,omitempty"`
}

UStoreSpec defines the desired state of UStore +kubebuilder:validation:XValidation:rule="!has(oldSelf.dbType) || has(self.dbType)", message="DB Type value is required once set"

func (*UStoreSpec) DeepCopy

func (in *UStoreSpec) DeepCopy() *UStoreSpec

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

func (*UStoreSpec) DeepCopyInto

func (in *UStoreSpec) DeepCopyInto(out *UStoreSpec)

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

type UStoreStatus

type UStoreStatus struct {
	// INSERT ADDITIONAL STATUS FIELD - define observed state of cluster
	// Important: Run "make" to regenerate code after modifying this file
	DeploymentStatus string `json:"deploymentStatus,omitempty"`
	DeploymentName   string `json:"deploymentName,omitempty"`
	ServiceStatus    string `json:"serviceStatus,omitempty"`
	ServiceUrl       string `json:"serviceUrl,omitempty"`
}

UStoreStatus defines the observed state of UStore

func (*UStoreStatus) DeepCopy

func (in *UStoreStatus) DeepCopy() *UStoreStatus

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

func (*UStoreStatus) DeepCopyInto

func (in *UStoreStatus) DeepCopyInto(out *UStoreStatus)

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