Documentation ¶
Overview ¶
Package v1alpha1 contains API Schema definitions for the pxc v1alpha1 API group +k8s:deepcopy-gen=package,register +groupName=pxc.percona.com
Package v1alpha1 contains API Schema definitions for the pxc v1alpha1 API group +k8s:deepcopy-gen=package,register +groupName=pxc.percona.com
Index ¶
- Constants
- Variables
- func RegisterDefaults(scheme *runtime.Scheme) error
- type App
- type BackupStorageS3Spec
- type BackupStorageSpec
- type BackupStorageType
- type ClusterState
- type PMMSpec
- type PXCBackupSpec
- type PXCBackupState
- type PXCBackupStatus
- type PXCScheduledBackup
- type PXCScheduledBackupSchedule
- type PerconaXtraDBBackup
- type PerconaXtraDBBackupList
- type PerconaXtraDBCluster
- type PerconaXtraDBClusterList
- type PerconaXtraDBClusterSpec
- type PerconaXtraDBClusterStatus
- type Platform
- type PodAffinity
- type PodDisruptionBudgetSpec
- type PodResources
- type PodSpec
- type ResourcesList
- type ServerVersion
- type StatefulApp
- type Volume
- type VolumeSpec
Constants ¶
const ( BackupStarting PXCBackupState = "Starting" BackupRunning = "Running" BackupFailed = "Failed" BackupSucceeded = "Succeeded" )
const ( PlatformUndef Platform = "" PlatformKubernetes = "kubernetes" PlatformOpenshift = "openshift" )
const AffinityTopologyKeyOff = "none"
Variables ¶
var ( // SchemeGroupVersion is group version used to register these objects SchemeGroupVersion = schema.GroupVersion{Group: "pxc.percona.com", Version: "v1alpha1"} // SchemeBuilder is used to add go types to the GroupVersionKind scheme SchemeBuilder = &scheme.Builder{GroupVersion: SchemeGroupVersion} )
var ErrClusterNameOverflow = fmt.Errorf("cluster (pxc) name too long, must be no more than %d characters", clusterNameMaxLen)
ErrClusterNameOverflow upspring when the cluster name is longer than acceptable
Functions ¶
func RegisterDefaults ¶ added in v0.3.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.
Types ¶
type App ¶
type App interface { AppContainer(spec *PodSpec, secrets string) corev1.Container SidecarContainers(spec *PodSpec, secrets string) []corev1.Container PMMContainer(spec *PMMSpec, secrets string) corev1.Container Volumes(podSpec *PodSpec) *Volume Resources(spec *PodResources) (corev1.ResourceRequirements, error) Labels() map[string]string }
type BackupStorageS3Spec ¶ added in v0.3.0
type BackupStorageS3Spec struct { Bucket string `json:"bucket"` CredentialsSecret string `json:"credentialsSecret"` Region string `json:"region,omitempty"` EndpointURL string `json:"endpointUrl,omitempty"` }
func (*BackupStorageS3Spec) DeepCopy ¶ added in v0.3.0
func (in *BackupStorageS3Spec) DeepCopy() *BackupStorageS3Spec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupStorageS3Spec.
func (*BackupStorageS3Spec) DeepCopyInto ¶ added in v0.3.0
func (in *BackupStorageS3Spec) DeepCopyInto(out *BackupStorageS3Spec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BackupStorageSpec ¶ added in v0.3.0
type BackupStorageSpec struct { Type BackupStorageType `json:"type"` S3 BackupStorageS3Spec `json:"s3,omitempty"` Volume *VolumeSpec `json:"volume,omitempty"` }
func (*BackupStorageSpec) DeepCopy ¶ added in v0.3.0
func (in *BackupStorageSpec) DeepCopy() *BackupStorageSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupStorageSpec.
func (*BackupStorageSpec) DeepCopyInto ¶ added in v0.3.0
func (in *BackupStorageSpec) DeepCopyInto(out *BackupStorageSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BackupStorageType ¶ added in v0.3.0
type BackupStorageType string
const ( BackupStorageFilesystem BackupStorageType = "filesystem" BackupStorageS3 BackupStorageType = "s3" )
type ClusterState ¶
type ClusterState string
const ( ClusterStateInit ClusterState = "" ClusterStateRunning = "running" )
type PMMSpec ¶
type PMMSpec struct { Enabled bool `json:"enabled,omitempty"` ServerHost string `json:"serverHost,omitempty"` Image string `json:"image,omitempty"` ServerUser string `json:"serverUser,omitempty"` }
func (*PMMSpec) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PMMSpec.
func (*PMMSpec) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PXCBackupSpec ¶ added in v0.2.0
type PXCBackupSpec struct { PXCCluster string `json:"pxcCluster"` StorageName string `json:"storageName,omitempty"` }
func (*PXCBackupSpec) DeepCopy ¶ added in v0.2.0
func (in *PXCBackupSpec) DeepCopy() *PXCBackupSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PXCBackupSpec.
func (*PXCBackupSpec) DeepCopyInto ¶ added in v0.2.0
func (in *PXCBackupSpec) DeepCopyInto(out *PXCBackupSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PXCBackupState ¶ added in v0.2.0
type PXCBackupState string
type PXCBackupStatus ¶ added in v0.2.0
type PXCBackupStatus struct { State PXCBackupState `json:"state,omitempty"` CompletedAt *metav1.Time `json:"completed,omitempty"` LastScheduled *metav1.Time `json:"lastscheduled,omitempty"` Destination string `json:"destination,omitempty"` StorageName string `json:"storageName,omitempty"` S3 *BackupStorageS3Spec `json:"s3,omitempty"` }
func (*PXCBackupStatus) DeepCopy ¶ added in v0.2.0
func (in *PXCBackupStatus) DeepCopy() *PXCBackupStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PXCBackupStatus.
func (*PXCBackupStatus) DeepCopyInto ¶ added in v0.2.0
func (in *PXCBackupStatus) DeepCopyInto(out *PXCBackupStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PXCScheduledBackup ¶ added in v0.2.0
type PXCScheduledBackup struct { Image string `json:"image,omitempty"` ImagePullSecrets []corev1.LocalObjectReference `json:"imagePullSecrets,omitempty"` Schedule []PXCScheduledBackupSchedule `json:"schedule,omitempty"` Storages map[string]*BackupStorageSpec `json:"storages,omitempty"` }
func (*PXCScheduledBackup) DeepCopy ¶ added in v0.2.0
func (in *PXCScheduledBackup) DeepCopy() *PXCScheduledBackup
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PXCScheduledBackup.
func (*PXCScheduledBackup) DeepCopyInto ¶ added in v0.2.0
func (in *PXCScheduledBackup) DeepCopyInto(out *PXCScheduledBackup)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PXCScheduledBackupSchedule ¶ added in v0.2.0
type PXCScheduledBackupSchedule struct { Name string `json:"name,omitempty"` Schedule string `json:"schedule,omitempty"` Keep int `json:"keep,omitempty"` StorageName string `json:"storageName,omitempty"` }
func (*PXCScheduledBackupSchedule) DeepCopy ¶ added in v0.2.0
func (in *PXCScheduledBackupSchedule) DeepCopy() *PXCScheduledBackupSchedule
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PXCScheduledBackupSchedule.
func (*PXCScheduledBackupSchedule) DeepCopyInto ¶ added in v0.2.0
func (in *PXCScheduledBackupSchedule) DeepCopyInto(out *PXCScheduledBackupSchedule)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PerconaXtraDBBackup ¶ added in v0.2.0
type PerconaXtraDBBackup struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata"` Spec PXCBackupSpec `json:"spec"` Status PXCBackupStatus `json:"status,omitempty"` }
func (*PerconaXtraDBBackup) DeepCopy ¶ added in v0.2.0
func (in *PerconaXtraDBBackup) DeepCopy() *PerconaXtraDBBackup
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PerconaXtraDBBackup.
func (*PerconaXtraDBBackup) DeepCopyInto ¶ added in v0.2.0
func (in *PerconaXtraDBBackup) DeepCopyInto(out *PerconaXtraDBBackup)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*PerconaXtraDBBackup) DeepCopyObject ¶ added in v0.2.0
func (in *PerconaXtraDBBackup) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*PerconaXtraDBBackup) OwnerRef ¶ added in v0.2.0
func (cr *PerconaXtraDBBackup) OwnerRef(scheme *runtime.Scheme) (metav1.OwnerReference, error)
OwnerRef returns OwnerReference to object
type PerconaXtraDBBackupList ¶ added in v0.2.0
type PerconaXtraDBBackupList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata"` Items []PerconaXtraDBBackup `json:"items"` }
func (*PerconaXtraDBBackupList) DeepCopy ¶ added in v0.2.0
func (in *PerconaXtraDBBackupList) DeepCopy() *PerconaXtraDBBackupList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PerconaXtraDBBackupList.
func (*PerconaXtraDBBackupList) DeepCopyInto ¶ added in v0.2.0
func (in *PerconaXtraDBBackupList) DeepCopyInto(out *PerconaXtraDBBackupList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*PerconaXtraDBBackupList) DeepCopyObject ¶ added in v0.2.0
func (in *PerconaXtraDBBackupList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type PerconaXtraDBCluster ¶
type PerconaXtraDBCluster struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec PerconaXtraDBClusterSpec `json:"spec,omitempty"` Status PerconaXtraDBClusterStatus `json:"status,omitempty"` }
PerconaXtraDBCluster is the Schema for the perconaxtradbclusters API +k8s:openapi-gen=true
func (*PerconaXtraDBCluster) CheckNSetDefaults ¶ added in v0.2.0
func (cr *PerconaXtraDBCluster) CheckNSetDefaults() (changed bool, err error)
CheckNSetDefaults sets defaults options and overwrites wrong settings and checks if other options' values are allowable returned "changed" means CR should be updated on cluster
func (*PerconaXtraDBCluster) DeepCopy ¶
func (in *PerconaXtraDBCluster) DeepCopy() *PerconaXtraDBCluster
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PerconaXtraDBCluster.
func (*PerconaXtraDBCluster) DeepCopyInto ¶
func (in *PerconaXtraDBCluster) DeepCopyInto(out *PerconaXtraDBCluster)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*PerconaXtraDBCluster) DeepCopyObject ¶
func (in *PerconaXtraDBCluster) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type PerconaXtraDBClusterList ¶
type PerconaXtraDBClusterList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []PerconaXtraDBCluster `json:"items"` }
PerconaXtraDBClusterList contains a list of PerconaXtraDBCluster
func (*PerconaXtraDBClusterList) DeepCopy ¶
func (in *PerconaXtraDBClusterList) DeepCopy() *PerconaXtraDBClusterList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PerconaXtraDBClusterList.
func (*PerconaXtraDBClusterList) DeepCopyInto ¶
func (in *PerconaXtraDBClusterList) DeepCopyInto(out *PerconaXtraDBClusterList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*PerconaXtraDBClusterList) DeepCopyObject ¶
func (in *PerconaXtraDBClusterList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type PerconaXtraDBClusterSpec ¶
type PerconaXtraDBClusterSpec struct { Platform *Platform `json:"platform,omitempty"` SecretsName string `json:"secretsName,omitempty"` PXC *PodSpec `json:"pxc,omitempty"` ProxySQL *PodSpec `json:"proxysql,omitempty"` PMM *PMMSpec `json:"pmm,omitempty"` Backup *PXCScheduledBackup `json:"backup,omitempty"` }
PerconaXtraDBClusterSpec defines the desired state of PerconaXtraDBCluster
func (*PerconaXtraDBClusterSpec) DeepCopy ¶
func (in *PerconaXtraDBClusterSpec) DeepCopy() *PerconaXtraDBClusterSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PerconaXtraDBClusterSpec.
func (*PerconaXtraDBClusterSpec) DeepCopyInto ¶
func (in *PerconaXtraDBClusterSpec) DeepCopyInto(out *PerconaXtraDBClusterSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PerconaXtraDBClusterStatus ¶
type PerconaXtraDBClusterStatus struct {
State ClusterState
}
PerconaXtraDBClusterStatus defines the observed state of PerconaXtraDBCluster
func (*PerconaXtraDBClusterStatus) DeepCopy ¶
func (in *PerconaXtraDBClusterStatus) DeepCopy() *PerconaXtraDBClusterStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PerconaXtraDBClusterStatus.
func (*PerconaXtraDBClusterStatus) DeepCopyInto ¶
func (in *PerconaXtraDBClusterStatus) DeepCopyInto(out *PerconaXtraDBClusterStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PodAffinity ¶ added in v0.2.0
type PodAffinity struct { TopologyKey *string `json:"antiAffinityTopologyKey,omitempty"` Advanced *corev1.Affinity `json:"advanced,omitempty"` }
func (*PodAffinity) DeepCopy ¶ added in v0.2.0
func (in *PodAffinity) DeepCopy() *PodAffinity
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodAffinity.
func (*PodAffinity) DeepCopyInto ¶ added in v0.2.0
func (in *PodAffinity) DeepCopyInto(out *PodAffinity)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PodDisruptionBudgetSpec ¶ added in v0.3.0
type PodDisruptionBudgetSpec struct { MinAvailable *intstr.IntOrString `json:"minAvailable,omitempty"` }
func (*PodDisruptionBudgetSpec) DeepCopy ¶ added in v0.3.0
func (in *PodDisruptionBudgetSpec) DeepCopy() *PodDisruptionBudgetSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodDisruptionBudgetSpec.
func (*PodDisruptionBudgetSpec) DeepCopyInto ¶ added in v0.3.0
func (in *PodDisruptionBudgetSpec) DeepCopyInto(out *PodDisruptionBudgetSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PodResources ¶
type PodResources struct { Requests *ResourcesList `json:"requests,omitempty"` Limits *ResourcesList `json:"limits,omitempty"` }
func (*PodResources) DeepCopy ¶
func (in *PodResources) DeepCopy() *PodResources
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodResources.
func (*PodResources) DeepCopyInto ¶
func (in *PodResources) DeepCopyInto(out *PodResources)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PodSpec ¶
type PodSpec struct { Enabled bool `json:"enabled,omitempty"` Size int32 `json:"size,omitempty"` Image string `json:"image,omitempty"` Resources *PodResources `json:"resources,omitempty"` VolumeSpec *VolumeSpec `json:"volumeSpec,omitempty"` Affinity *PodAffinity `json:"affinity,omitempty"` NodeSelector map[string]string `json:"nodeSelector,omitempty"` Tolerations []corev1.Toleration `json:"tolerations,omitempty"` PriorityClassName string `json:"priorityClassName,omitempty"` Annotations map[string]string `json:"annotations,omitempty"` Labels map[string]string `json:"labels,omitempty"` ImagePullSecrets []corev1.LocalObjectReference `json:"imagePullSecrets,omitempty"` AllowUnsafeConfig bool `json:"allowUnsafeConfigurations,omitempty"` Configuration string `json:"configuration,omitempty"` PodDisruptionBudget *PodDisruptionBudgetSpec `json:"podDisruptionBudget,omitempty"` }
func (*PodSpec) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodSpec.
func (*PodSpec) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ResourcesList ¶
type ResourcesList struct { Memory string `json:"memory,omitempty"` CPU string `json:"cpu,omitempty"` }
func (*ResourcesList) DeepCopy ¶
func (in *ResourcesList) DeepCopy() *ResourcesList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourcesList.
func (*ResourcesList) DeepCopyInto ¶
func (in *ResourcesList) DeepCopyInto(out *ResourcesList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServerVersion ¶
type ServerVersion struct { Platform Platform Info k8sversion.Info }
ServerVersion represents info about k8s / openshift server version
func (*ServerVersion) DeepCopy ¶
func (in *ServerVersion) DeepCopy() *ServerVersion
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServerVersion.
func (*ServerVersion) DeepCopyInto ¶
func (in *ServerVersion) DeepCopyInto(out *ServerVersion)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type StatefulApp ¶
type StatefulApp interface { App StatefulSet() *appsv1.StatefulSet Service() string }
type Volume ¶ added in v0.3.0
type Volume struct { PVCs []corev1.PersistentVolumeClaim Volumes []corev1.Volume }
func (*Volume) DeepCopy ¶ added in v0.3.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Volume.
func (*Volume) DeepCopyInto ¶ added in v0.3.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VolumeSpec ¶ added in v0.2.0
type VolumeSpec struct { // EmptyDir to use as data volume for mysql. EmptyDir represents a temporary // directory that shares a pod's lifetime. // +optional EmptyDir *corev1.EmptyDirVolumeSource `json:"emptyDir,omitempty"` // HostPath to use as data volume for mysql. HostPath represents a // pre-existing file or directory on the host machine that is directly // exposed to the container. // +optional HostPath *corev1.HostPathVolumeSource `json:"hostPath,omitempty"` // PersistentVolumeClaim to specify PVC spec for the volume for mysql data. // It has the highest level of precedence, followed by HostPath and // EmptyDir. And represents the PVC specification. // +optional PersistentVolumeClaim *corev1.PersistentVolumeClaimSpec `json:"persistentVolumeClaim,omitempty"` }
func (*VolumeSpec) DeepCopy ¶ added in v0.2.0
func (in *VolumeSpec) DeepCopy() *VolumeSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VolumeSpec.
func (*VolumeSpec) DeepCopyInto ¶ added in v0.2.0
func (in *VolumeSpec) DeepCopyInto(out *VolumeSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.