v1alpha2

package
v1.1.0 Latest Latest
Warning

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

Go to latest
Published: Aug 30, 2025 License: Apache-2.0 Imports: 8 Imported by: 1

Documentation

Overview

Package v1alpha2 contains API Schema definitions for the v1alpha2 API group +kubebuilder:object:generate=true +groupName=upm.syntropycloud.io

Index

Constants

View Source
const (
	UnitsetName = "unitset.name"
	UnitName    = "unit.name"
	UnitSn      = "unit.sn"

	NoneSetFlag = "noneSet"

	AnnotationMaintenance          = "maintenance"
	AnnotationMainContainerName    = "kubectl.kubernetes.io/default-container"
	AnnotationMainContainerVersion = "kubectl.kubernetes.io/default-container-version"
	AnnotationForceDelete          = "upm.io/force-delete"
	AnnotationLastUnitBelongNode   = "last.unit.belong.node"
	// AnnotationUnitsetNodeNameMap stores a JSON object mapping unit name -> node name (or "noneSet")
	// Example: {"mysql-cluster-0":"node-a","mysql-cluster-1":"noneSet"}
	AnnotationUnitsetNodeNameMap = "unit-operator.unit.node-name.map"
	// AnnotationUnitServiceType is the type of the unit service
	// Example: "ClusterIP"
	AnnotationUnitServiceType     = "unit-operator.unit-service.type"
	AnnotationExternalServiceType = "unit-operator.external-service.type"

	// AnnotationUnitServiceNodeportMapPrefix
	// AnnotationUnitServiceNodeportMapSuffix
	// annotation real name: unit-operator.unit-service.<port name>.nodeport.map
	// Example: unit-operator.unit-service.http.nodeport.map
	// value is a JSON object mapping unit name -> nodePort
	// Example: {"mysql-cluster-0":30468,"mysql-cluster-1":30469}
	// if the annotation is not empty, when recreate the unit service, the nodePort will be filled from the annotation
	AnnotationUnitServiceNodeportMapPrefix = "unit-operator.unit-service."
	AnnotationUnitServiceNodeportMapSuffix = ".nodeport.map"

	LabelProjectOwner = "upm.io/owner"
	LabelNamespace    = "namespace"

	FinalizerUnitDelete      = "upm.io/unit-delete"
	FinalizerConfigMapDelete = "upm.io/configmap-delete"
	FinalizerPodDelete       = "upm.io/pod-delete"
	FinalizerPvcDelete       = "upm.io/pvc-delete"

	CertmanagerIssuerSuffix      = "certmanager-issuer"
	CertmanagerCertificateSuffix = "certmanager-ca"
	CertmanagerSecretNameSuffix  = "secret"

	MonitorPodMonitorCrdName    = "podmonitors.monitoring.coreos.com"
	MonitorPodMonitorNameSuffix = "-exporter-podmon"
)

Variables

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

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

func GetPersistentVolumeName(unit *Unit, volume string) string

func PersistentVolumeClaimName

func PersistentVolumeClaimName(unit *Unit, volume string) string

func UnitsetHeadlessSvcName

func UnitsetHeadlessSvcName(unit *Unit) string

Types

type CertificateProfile

type CertificateProfile struct {

	// Organizations List of organization names
	// +optional
	Organizations []string `json:"organizations,omitempty"`

	// RootSecret Root secret name
	// +optional
	RootSecret string `json:"root_secret,omitempty"`
}

func (*CertificateProfile) DeepCopy

func (in *CertificateProfile) DeepCopy() *CertificateProfile

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

func (*CertificateProfile) DeepCopyInto

func (in *CertificateProfile) DeepCopyInto(out *CertificateProfile)

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

type CertificateSecretSpec

type CertificateSecretSpec struct {

	// Organization name for the certificate
	// +optional
	Organization string `json:"organization,omitempty"`

	// Name of the certificate secret
	// +optional
	Name string `json:"name,omitempty"`
}

CertificateSecretSpec defines the configuration for certificate secrets.

func (*CertificateSecretSpec) DeepCopy

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

func (*CertificateSecretSpec) DeepCopyInto

func (in *CertificateSecretSpec) DeepCopyInto(out *CertificateSecretSpec)

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

type ConfigSyncStatus

type ConfigSyncStatus struct {

	// LastTransitionTime the last transition time
	// +optional
	LastTransitionTime metav1.Time `json:"lastTransitionTime,omitempty"`

	// Status the status of the config sync
	// +optional
	Status string `json:"status,omitempty"`
}

func (*ConfigSyncStatus) DeepCopy

func (in *ConfigSyncStatus) DeepCopy() *ConfigSyncStatus

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

func (*ConfigSyncStatus) DeepCopyInto

func (in *ConfigSyncStatus) DeepCopyInto(out *ConfigSyncStatus)

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

type EmptyDirSpec

type EmptyDirSpec struct {

	// Name of the storage
	// +optional
	Name string `json:"name,omitempty"`

	// Size of the storage
	// +optional
	Size string `json:"size,omitempty"`

	// MountPath Mount path
	// +optional
	MountPath string `json:"mountPath,omitempty"`
}

func (*EmptyDirSpec) DeepCopy

func (in *EmptyDirSpec) DeepCopy() *EmptyDirSpec

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

func (*EmptyDirSpec) DeepCopyInto

func (in *EmptyDirSpec) DeepCopyInto(out *EmptyDirSpec)

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

type ExternalServiceSpec

type ExternalServiceSpec struct {

	// Type of the external service (e.g., NodePort)
	// +optional
	Type string `json:"type,omitempty"`
}

ExternalServiceSpec defines the configuration for external services.

func (*ExternalServiceSpec) DeepCopy

func (in *ExternalServiceSpec) DeepCopy() *ExternalServiceSpec

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

func (*ExternalServiceSpec) DeepCopyInto

func (in *ExternalServiceSpec) DeepCopyInto(out *ExternalServiceSpec)

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

type ExternalServiceStatus added in v1.1.0

type ExternalServiceStatus struct {

	// Name the name of unitset external service
	// +optional
	Name string `json:"name,omitempty"`
}

func (*ExternalServiceStatus) DeepCopy added in v1.1.0

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

func (*ExternalServiceStatus) DeepCopyInto added in v1.1.0

func (in *ExternalServiceStatus) DeepCopyInto(out *ExternalServiceStatus)

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

type ImageSyncStatus

type ImageSyncStatus struct {

	// LastTransitionTime the last transition time
	// +optional
	LastTransitionTime metav1.Time `json:"lastTransitionTime,omitempty"`

	// Status the status of the image sync
	// enum: True, False
	// +optional
	Status string `json:"status,omitempty"`
}

ImageSyncStatus defines the observed state of ImageSync

func (*ImageSyncStatus) DeepCopy

func (in *ImageSyncStatus) DeepCopy() *ImageSyncStatus

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

func (*ImageSyncStatus) DeepCopyInto

func (in *ImageSyncStatus) DeepCopyInto(out *ImageSyncStatus)

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

type NodeAffinityPresetSpec

type NodeAffinityPresetSpec struct {

	// Key for the node affinity
	// +optional
	Key string `json:"key,omitempty"`

	// Values for the node affinity
	// +optional
	Values []string `json:"values,omitempty"`
}

NodeAffinityPresetSpec defines node affinity rules.

func (*NodeAffinityPresetSpec) DeepCopy

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

func (*NodeAffinityPresetSpec) DeepCopyInto

func (in *NodeAffinityPresetSpec) DeepCopyInto(out *NodeAffinityPresetSpec)

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

type PodMonitorInfo added in v1.1.0

type PodMonitorInfo struct {

	// Enable define if need create pod monitor
	// default: false
	// +optional
	Enable bool `json:"enable,omitempty"`
}

func (*PodMonitorInfo) DeepCopy added in v1.1.0

func (in *PodMonitorInfo) DeepCopy() *PodMonitorInfo

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

func (*PodMonitorInfo) DeepCopyInto added in v1.1.0

func (in *PodMonitorInfo) DeepCopyInto(out *PodMonitorInfo)

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

type Project added in v1.1.0

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

	Spec   ProjectSpec   `json:"spec,omitempty"`
	Status ProjectStatus `json:"status,omitempty"`
}

Project is the Schema for the projects API

func (*Project) DeepCopy added in v1.1.0

func (in *Project) DeepCopy() *Project

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

func (*Project) DeepCopyInto added in v1.1.0

func (in *Project) DeepCopyInto(out *Project)

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

func (*Project) DeepCopyObject added in v1.1.0

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

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

type ProjectList added in v1.1.0

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

ProjectList contains a list of Project

func (*ProjectList) DeepCopy added in v1.1.0

func (in *ProjectList) DeepCopy() *ProjectList

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

func (*ProjectList) DeepCopyInto added in v1.1.0

func (in *ProjectList) DeepCopyInto(out *ProjectList)

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

func (*ProjectList) DeepCopyObject added in v1.1.0

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

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

type ProjectSpec added in v1.1.0

type ProjectSpec struct {
}

ProjectSpec defines the desired state of Project

func (*ProjectSpec) DeepCopy added in v1.1.0

func (in *ProjectSpec) DeepCopy() *ProjectSpec

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

func (*ProjectSpec) DeepCopyInto added in v1.1.0

func (in *ProjectSpec) DeepCopyInto(out *ProjectSpec)

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

type ProjectStatus added in v1.1.0

type ProjectStatus struct {
}

ProjectStatus defines the observed state of Project

func (*ProjectStatus) DeepCopy added in v1.1.0

func (in *ProjectStatus) DeepCopy() *ProjectStatus

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

func (*ProjectStatus) DeepCopyInto added in v1.1.0

func (in *ProjectStatus) DeepCopyInto(out *ProjectStatus)

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

type PvcCapacity

type PvcCapacity struct {

	// Storage represents the actual resources of the PVC.
	// +optional
	Storage resource.Quantity `json:"storage"`
}

PvcCapacity represents the actual resources of the PVC.

func (*PvcCapacity) DeepCopy

func (in *PvcCapacity) DeepCopy() *PvcCapacity

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

func (*PvcCapacity) DeepCopyInto

func (in *PvcCapacity) DeepCopyInto(out *PvcCapacity)

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

type PvcInfo

type PvcInfo struct {

	// Name name of a persistent volume claim.
	// +optional
	Name string `json:"name"`

	// VolumeName name of volume
	// +optional
	VolumeName string `json:"volumeName"`

	// AccessModes contains the actual access modes the volume backing the PVC has.
	// More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1
	// +optional
	AccessModes []corev1.PersistentVolumeAccessMode `json:"accessModes"`

	// Capacity represents the actual resources of the PVC.
	// +optional
	Capacity PvcCapacity `json:"capacity"`

	// Phase represents the current phase of PersistentVolumeClaim.
	// +optional
	Phase corev1.PersistentVolumeClaimPhase `json:"phase"`
}

PvcInfo represents the current information/status of a persistent volume claim.

func (*PvcInfo) DeepCopy

func (in *PvcInfo) DeepCopy() *PvcInfo

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

func (*PvcInfo) DeepCopyInto

func (in *PvcInfo) DeepCopyInto(out *PvcInfo)

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

type PvcSyncStatus

type PvcSyncStatus struct {

	// LastTransitionTime the last transition time
	// +optional
	LastTransitionTime metav1.Time `json:"lastTransitionTime,omitempty"`

	// Status the status of the pvc sync
	// enum: True, False
	// +optional
	Status string `json:"status,omitempty"`
}

PvcSyncStatus defines the observed state of PvcSync

func (*PvcSyncStatus) DeepCopy

func (in *PvcSyncStatus) DeepCopy() *PvcSyncStatus

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

func (*PvcSyncStatus) DeepCopyInto

func (in *PvcSyncStatus) DeepCopyInto(out *PvcSyncStatus)

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

type ResourceSyncStatus

type ResourceSyncStatus struct {

	// LastTransitionTime the last transition time
	// +optional
	LastTransitionTime metav1.Time `json:"lastTransitionTime,omitempty"`

	// Status the status of the resource sync
	// enum: True, False
	// +optional
	Status string `json:"status,omitempty"`
}

ResourceSyncStatus defines the observed state of ResourceSync

func (*ResourceSyncStatus) DeepCopy

func (in *ResourceSyncStatus) DeepCopy() *ResourceSyncStatus

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

func (*ResourceSyncStatus) DeepCopyInto

func (in *ResourceSyncStatus) DeepCopyInto(out *ResourceSyncStatus)

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

type RollingUpdateSpec

type RollingUpdateSpec struct {

	// Partition Number of partitions for the update
	// +optional
	Partition int32 `json:"partition,omitempty"`

	// MaxUnavailable Maximum number of unavailable pods during update
	// +optional
	MaxUnavailable int32 `json:"maxUnavailable,omitempty"`
}

RollingUpdateSpec defines the rolling update configuration.

func (*RollingUpdateSpec) DeepCopy

func (in *RollingUpdateSpec) DeepCopy() *RollingUpdateSpec

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

func (*RollingUpdateSpec) DeepCopyInto

func (in *RollingUpdateSpec) DeepCopyInto(out *RollingUpdateSpec)

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

type SecretInfo

type SecretInfo struct {

	// Name of the secret
	// +optional
	Name string `json:"name,omitempty"`

	// MountPath Mount path of the secret
	// +optional
	MountPath string `json:"mountPath,omitempty"`
}

func (*SecretInfo) DeepCopy

func (in *SecretInfo) DeepCopy() *SecretInfo

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

func (*SecretInfo) DeepCopyInto

func (in *SecretInfo) DeepCopyInto(out *SecretInfo)

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

type StorageSpec

type StorageSpec struct {

	// Name of the storage
	// +optional
	Name string `json:"name,omitempty"`

	// Size of the storage
	// +optional
	Size string `json:"size,omitempty"`

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

	// MountPath Mount path
	// +optional
	MountPath string `json:"mountPath,omitempty"`
}

StorageSpec defines the configuration for storage.

func (*StorageSpec) DeepCopy

func (in *StorageSpec) DeepCopy() *StorageSpec

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

func (*StorageSpec) DeepCopyInto

func (in *StorageSpec) DeepCopyInto(out *StorageSpec)

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

type Unit

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

	Spec   UnitSpec   `json:"spec,omitempty"`
	Status UnitStatus `json:"status,omitempty"`
}

Unit is the Schema for the units API

func (*Unit) DeepCopy

func (in *Unit) DeepCopy() *Unit

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

func (*Unit) DeepCopyInto

func (in *Unit) DeepCopyInto(out *Unit)

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

func (*Unit) DeepCopyObject

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

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

func (*Unit) MainContainerName

func (u *Unit) MainContainerName() string

MainContainerName returns the name of the main container

type UnitList

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

UnitList contains a list of Unit

func (*UnitList) DeepCopy

func (in *UnitList) DeepCopy() *UnitList

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

func (*UnitList) DeepCopyInto

func (in *UnitList) DeepCopyInto(out *UnitList)

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

func (*UnitList) DeepCopyObject

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

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

type UnitPhase

type UnitPhase string

UnitPhase is a label for the condition of a pod at the current time. +enum

const (
	// UnitPending means the pod has been accepted by the system, but one or more of the containers
	// has not been started. This includes time before being bound to a node, as well as time spent
	// pulling images onto the host.
	UnitPending UnitPhase = "Pending"
	// UnitRunning means the pod has been bound to a node and all of the containers have been started.
	// At least one container is still running or is in the process of being restarted.
	UnitRunning UnitPhase = "Running"
	// UnitReady means the pod Running and ready condition = true
	UnitReady UnitPhase = "Ready"
	// UnitSucceeded means that all containers in the pod have voluntarily terminated
	// with a container exit code of 0, and the system is not going to restart any of these containers.
	UnitSucceeded UnitPhase = "Succeeded"
	// UnitFailed means that all containers in the pod have terminated, and at least one container has
	// terminated in a failure (exited with a non-zero exit code or was stopped by the system).
	UnitFailed UnitPhase = "Failed"
	// UnitUnknown means that for some reason the state of the pod could not be obtained, typically due
	// to an error in communicating with the host of the pod.
	// Deprecated: It isn't being set since 2015 (74da3b14b0c0f658b3bb8d2def5094686d0e9095)
	UnitUnknown UnitPhase = "Unknown"
)

These are the valid statuses of pods.

type UnitServiceSpec

type UnitServiceSpec struct {

	// Type of the unit service (e.g., ClusterIP)
	// +optional
	Type string `json:"type,omitempty"`
}

UnitServiceSpec defines the configuration for unit services.

func (*UnitServiceSpec) DeepCopy

func (in *UnitServiceSpec) DeepCopy() *UnitServiceSpec

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

func (*UnitServiceSpec) DeepCopyInto

func (in *UnitServiceSpec) DeepCopyInto(out *UnitServiceSpec)

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

type UnitServiceStatus added in v1.1.0

type UnitServiceStatus struct {

	// Name which is a map, the key is unit name, the value is unit service name
	// +optional
	Name map[string]string `json:"name,omitempty"`
}

func (*UnitServiceStatus) DeepCopy added in v1.1.0

func (in *UnitServiceStatus) DeepCopy() *UnitServiceStatus

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

func (*UnitServiceStatus) DeepCopyInto added in v1.1.0

func (in *UnitServiceStatus) DeepCopyInto(out *UnitServiceStatus)

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

type UnitSet

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

	Spec   UnitSetSpec   `json:"spec,omitempty"`
	Status UnitSetStatus `json:"status,omitempty"`
}

UnitSet is the Schema for the unitsets API

func (*UnitSet) ConfigTemplateName

func (u *UnitSet) ConfigTemplateName() string

ConfigTemplateName unitset configtemplate Name

func (*UnitSet) ConfigValueName

func (u *UnitSet) ConfigValueName(unitName string) string

ConfigValueName unitset configvalue Name

func (*UnitSet) DeepCopy

func (in *UnitSet) DeepCopy() *UnitSet

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

func (*UnitSet) DeepCopyInto

func (in *UnitSet) DeepCopyInto(out *UnitSet)

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

func (*UnitSet) DeepCopyObject

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

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

func (*UnitSet) ExternalServiceName

func (u *UnitSet) ExternalServiceName() string

func (*UnitSet) HeadlessServiceName

func (u *UnitSet) HeadlessServiceName() string

func (*UnitSet) PodTemplateName

func (u *UnitSet) PodTemplateName() string

func (*UnitSet) TemplateConfigTemplateName

func (u *UnitSet) TemplateConfigTemplateName() string

TemplateConfigTemplateName configtemplate Name

func (*UnitSet) TemplateConfigValueName

func (u *UnitSet) TemplateConfigValueName() string

TemplateConfigValueName configvalue Name

func (*UnitSet) TemplatePodTemplateName

func (u *UnitSet) TemplatePodTemplateName() string

func (*UnitSet) UnitNames

func (u *UnitSet) UnitNames() ([]string, map[string]string)

type UnitSetList

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

UnitSetList contains a list of UnitSet

func (*UnitSetList) DeepCopy

func (in *UnitSetList) DeepCopy() *UnitSetList

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

func (*UnitSetList) DeepCopyInto

func (in *UnitSetList) DeepCopyInto(out *UnitSetList)

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

func (*UnitSetList) DeepCopyObject

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

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

type UnitSetSpec

type UnitSetSpec struct {

	// Type is the type of the unitset
	Type string `json:"type,omitempty"`

	// Edition of the unit set
	Edition string `json:"edition,omitempty"`

	// Version of the unit set, e.g.:8.0.40
	Version string `json:"version,omitempty"`

	// Units Number of units in the unitset
	Units int `json:"units,omitempty"`

	// Resources Resource requirements for the units
	// +kubebuilder:pruning:PreserveUnknownFields
	// +kubebuilder:validation:Schemaless
	// +optional
	Resources corev1.ResourceRequirements `json:"resources,omitempty"`

	// Env Environment variables for the units
	// +kubebuilder:pruning:PreserveUnknownFields
	// +kubebuilder:validation:Schemaless
	// +optional
	Env []corev1.EnvVar `json:"env,omitempty"`

	// ExternalService Configuration for external services
	// +optional
	ExternalService ExternalServiceSpec `json:"externalService,omitempty"`

	// UnitService Configuration for unit services
	// +optional
	UnitService UnitServiceSpec `json:"unitService,omitempty"`

	// UpdateStrategy Strategy for updating the unit set
	// +optional
	UpdateStrategy UpdateStrategySpec `json:"updateStrategy,omitempty"`

	//NodeAffinityPreset  Node affinity rules
	// +optional
	NodeAffinityPreset []NodeAffinityPresetSpec `json:"nodeAffinityPreset,omitempty"`

	// PodAntiAffinityPreset Pod anti-affinity policy
	// +optional
	PodAntiAffinityPreset string `json:"podAntiAffinityPreset,omitempty"`

	// Storages defines the configuration for storage
	// +optional
	Storages []StorageSpec `json:"storages,omitempty"`

	// EmptyDir defines the configuration for emptyDir
	// +optional
	EmptyDir []EmptyDirSpec `json:"emptyDir,omitempty"`

	// Secret defines the configuration for secret
	// +optional
	Secret *SecretInfo `json:"secret,omitempty"`

	// CertificateProfile defines the configuration for certificate profile
	// +optional
	CertificateProfile CertificateProfile `json:"certificateProfile,omitempty"`

	PodMonitor PodMonitorInfo `json:"podMonitor,omitempty"`
}

UnitSetSpec defines the desired state of UnitSet

func (*UnitSetSpec) DeepCopy

func (in *UnitSetSpec) DeepCopy() *UnitSetSpec

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

func (*UnitSetSpec) DeepCopyInto

func (in *UnitSetSpec) DeepCopyInto(out *UnitSetSpec)

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

type UnitSetStatus

type UnitSetStatus struct {

	// Conditions is an array of conditions.
	// +kubebuilder:pruning:PreserveUnknownFields
	// +kubebuilder:validation:Schemaless
	// +optional
	Conditions []metav1.Condition `json:"conditions,omitempty"`

	// Units the number of units
	// +optional
	Units int `json:"units,omitempty"`

	// ReadyUnits the number of ready units
	// +optional
	ReadyUnits int `json:"readyUnits"`

	// PvcSyncStatus defines the status of the pvc sync
	// +optional
	PvcSyncStatus PvcSyncStatus `json:"unitPVCSynced,omitempty"`

	// ImageSyncStatus defines the status of the image sync
	// +optional
	ImageSyncStatus ImageSyncStatus `json:"unitImageSynced,omitempty"`

	// ResourceSyncStatus defines the status of the resource sync
	// +optional
	ResourceSyncStatus ResourceSyncStatus `json:"unitResourceSynced,omitempty"`

	// InUpdate used to mark if a mirror upgrade or resource change is in progress
	// +optional
	InUpdate string `json:"inUpdate,omitempty"`

	// ExternalService the information of unitset external service
	// +optional
	ExternalService ExternalServiceStatus `json:"externalService,omitempty"`

	// UnitService the information of unit service
	// +optional
	UnitService UnitServiceStatus `json:"unitService,omitempty"`
}

UnitSetStatus defines the observed state of UnitSet

func (*UnitSetStatus) DeepCopy

func (in *UnitSetStatus) DeepCopy() *UnitSetStatus

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

func (*UnitSetStatus) DeepCopyInto

func (in *UnitSetStatus) DeepCopyInto(out *UnitSetStatus)

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

type UnitSpec

type UnitSpec struct {

	// Startup defines whether the service is started or not
	// +optional
	Startup bool `json:"startup,omitempty"`

	// ConfigTemplateName defines the config template name.
	// A unitset is instantiated as a config template for the unitset
	// by copying the corresponding version template.
	// one for a set of unitsets.
	// The unitset is then assigned a value to the field.
	// unitset is not processed logically
	// and is passed as a parameter when the unit agent is called.
	// +optional
	ConfigTemplateName string `json:"configTemplateName,omitempty"`

	// ConfigValueName defines the config value name.
	// unitset instantiates one for each unit by copying the corresponding version template.
	// The value is then assigned to the field.
	// unitset does no logical processing
	// and is passed as a parameter in the call to the unit agent
	// +optional
	ConfigValueName string `json:"configValueName,omitempty"`

	// VolumeClaimTemplates is a user's request for and claim to a persistent volume
	// +kubebuilder:pruning:PreserveUnknownFields
	// +kubebuilder:validation:Schemaless
	// +optional
	VolumeClaimTemplates []corev1.PersistentVolumeClaim `json:"volumeClaimTemplates,omitempty"`

	// Template describes the data a pod should have when created from a template
	// +kubebuilder:pruning:PreserveUnknownFields
	// +kubebuilder:validation:Schemaless
	// +optional
	Template corev1.PodTemplateSpec `json:"template,omitempty"`
}

UnitSpec defines the desired state of Unit

func (*UnitSpec) DeepCopy

func (in *UnitSpec) DeepCopy() *UnitSpec

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

func (*UnitSpec) DeepCopyInto

func (in *UnitSpec) DeepCopyInto(out *UnitSpec)

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

type UnitStatus

type UnitStatus struct {

	// Conditions is an array of conditions.
	// +kubebuilder:pruning:PreserveUnknownFields
	// +kubebuilder:validation:Schemaless
	// +optional
	Conditions []metav1.Condition `json:"conditions,omitempty"`

	// Phase is the current lifecycle phase of the unit.
	// +optional
	Phase UnitPhase `json:"phase"`

	// NodeReady is the state of node ready condition.
	// +optional
	NodeReady string `json:"nodeReady"`

	// NodeName is the node name of the unit.
	// +optional
	NodeName string `json:"nodeName"`

	// Task is the current task of the unit.
	// +optional
	Task string `json:"task"`

	// ProcessState is the current process state of the unit-operator.
	// +optional
	ProcessState string `json:"processState"`

	// HostIP represents a single IP address allocated to the host.
	// +optional
	HostIP string `json:"hostIP"`

	// PodIPs holds the IP addresses allocated to the pod.
	// +optional
	PodIPs []corev1.PodIP `json:"podIPs"`

	// ConfigSyncStatus represents the status of the config sync.
	// +optional
	ConfigSyncStatus ConfigSyncStatus `json:"configSynced,omitempty"`

	// PersistentVolumeClaim represents the current information/status of a persistent volume claim.
	// +optional
	PersistentVolumeClaim []PvcInfo `json:"persistentVolumeClaim"`
}

UnitStatus defines the observed state of Unit

func (*UnitStatus) DeepCopy

func (in *UnitStatus) DeepCopy() *UnitStatus

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

func (*UnitStatus) DeepCopyInto

func (in *UnitStatus) DeepCopyInto(out *UnitStatus)

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

type UpdateStrategySpec

type UpdateStrategySpec struct {

	// Type of update strategy (e.g., RollingUpdate)
	// +optional
	Type string `json:"type,omitempty"`

	// RollingUpdate Rolling update configuration
	// +optional
	RollingUpdate RollingUpdateSpec `json:"rollingUpdate,omitempty"`
}

UpdateStrategySpec defines the update strategy for the unit set.

func (*UpdateStrategySpec) DeepCopy

func (in *UpdateStrategySpec) DeepCopy() *UpdateStrategySpec

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

func (*UpdateStrategySpec) DeepCopyInto

func (in *UpdateStrategySpec) DeepCopyInto(out *UpdateStrategySpec)

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