Documentation
¶
Overview ¶
Package v1alpha1 contains API Schema definitions for the ps v1alpha1 API group +kubebuilder:object:generate=true +groupName=ps.percona.com
Index ¶
- Constants
- Variables
- func FNVHash(p []byte) string
- func GetClusterNameFromObject(obj client.Object) (string, error)
- type BackupDestination
- func (dest *BackupDestination) BackupName() string
- func (dest *BackupDestination) BucketAndPrefix() (string, string)
- func (dest *BackupDestination) PathWithoutBucket() string
- func (dest *BackupDestination) SetAzureDestination(container, backupName string)
- func (dest *BackupDestination) SetGCSDestination(bucket, backupName string)
- func (dest *BackupDestination) SetS3Destination(bucket, backupName string)
- func (dest *BackupDestination) StorageTypePrefix() string
- func (dest *BackupDestination) String() string
- type BackupSchedule
- type BackupSpec
- type BackupState
- type BackupStorageAzureSpec
- type BackupStorageGCSSpec
- type BackupStorageS3Spec
- type BackupStorageSpec
- type BackupStorageType
- type BinlogServerSpec
- type BinlogServerStorageSpec
- type BucketWithPrefix
- type ClusterType
- type ContainerSpec
- type HAProxySpec
- type MySQLRouterSpec
- type MySQLSpec
- type OrchestratorSpec
- type PMMSpec
- type PerconaServerMySQL
- func (cr *PerconaServerMySQL) CheckNSetDefaults(_ context.Context, serverVersion *platform.ServerVersion) error
- func (cr *PerconaServerMySQL) ClusterHash() string
- func (cr *PerconaServerMySQL) ClusterHint() string
- func (cr *PerconaServerMySQL) CompareVersion(ver string) int
- func (in *PerconaServerMySQL) DeepCopy() *PerconaServerMySQL
- func (in *PerconaServerMySQL) DeepCopyInto(out *PerconaServerMySQL)
- func (in *PerconaServerMySQL) DeepCopyObject() runtime.Object
- func (cr *PerconaServerMySQL) HAProxyEnabled() bool
- func (cr *PerconaServerMySQL) InnoDBClusterName() string
- func (cr *PerconaServerMySQL) InternalSecretName() string
- func (cr *PerconaServerMySQL) Labels(name, component string) map[string]string
- func (cr *PerconaServerMySQL) MySQLSpec() *MySQLSpec
- func (cr *PerconaServerMySQL) OrchestratorEnabled() bool
- func (cr *PerconaServerMySQL) OrchestratorSpec() *OrchestratorSpec
- func (cr *PerconaServerMySQL) PMMEnabled(secret *corev1.Secret) bool
- func (cr *PerconaServerMySQL) PMMSpec() *PMMSpec
- func (cr *PerconaServerMySQL) PVCResizeInProgress() bool
- func (cr *PerconaServerMySQL) RouterEnabled() bool
- func (cr *PerconaServerMySQL) SetVersion()
- func (cr *PerconaServerMySQL) Version() *v.Version
- type PerconaServerMySQLBackup
- func (in *PerconaServerMySQLBackup) DeepCopy() *PerconaServerMySQLBackup
- func (in *PerconaServerMySQLBackup) DeepCopyInto(out *PerconaServerMySQLBackup)
- func (in *PerconaServerMySQLBackup) DeepCopyObject() runtime.Object
- func (cr *PerconaServerMySQLBackup) Hash() string
- func (cr *PerconaServerMySQLBackup) Labels(name, component string) map[string]string
- type PerconaServerMySQLBackupList
- type PerconaServerMySQLBackupSpec
- type PerconaServerMySQLBackupStatus
- type PerconaServerMySQLList
- type PerconaServerMySQLRestore
- func (in *PerconaServerMySQLRestore) DeepCopy() *PerconaServerMySQLRestore
- func (in *PerconaServerMySQLRestore) DeepCopyInto(out *PerconaServerMySQLRestore)
- func (in *PerconaServerMySQLRestore) DeepCopyObject() runtime.Object
- func (cr *PerconaServerMySQLRestore) Labels(name, component string) map[string]string
- type PerconaServerMySQLRestoreList
- type PerconaServerMySQLRestoreSpec
- type PerconaServerMySQLRestoreStatus
- type PerconaServerMySQLSpec
- type PerconaServerMySQLStatus
- type PiTRSpec
- type PodAffinity
- type PodDisruptionBudgetSpec
- type PodSpec
- func (in *PodSpec) DeepCopy() *PodSpec
- func (in *PodSpec) DeepCopyInto(out *PodSpec)
- func (p *PodSpec) GetAffinity(labels map[string]string) *corev1.Affinity
- func (s *PodSpec) GetInitImage() string
- func (s PodSpec) GetTerminationGracePeriodSeconds() *int64
- func (p *PodSpec) GetTopologySpreadConstraints(ls map[string]string) []corev1.TopologySpreadConstraint
- type ProxySpec
- type RestoreState
- type ServiceExpose
- type ServiceExposeTogglable
- type SidecarPVC
- type StatefulAppState
- type StatefulAppStatus
- type SystemUser
- type TLSSpec
- type ToolkitSpec
- type UnsafeFlags
- type UpgradeOptions
- type VolumeSpec
Constants ¶
const ( ClusterTypeGR ClusterType = "group-replication" ClusterTypeAsync ClusterType = "async" MinSafeProxySize = 2 MinSafeGRSize = 3 MaxSafeGRSize = 9 MinSafeAsyncSize = 2 )
const ( BinVolumeName = "bin" BinVolumePath = "/opt/percona" )
const ( UpgradeStrategyDisabled = "disabled" UpgradeStrategyNever = "never" UpgradeStrategyRecommended = "recommended" UpgradeStrategyLatest = "latest" )
const ( AzureBlobStoragePrefix string = "" AwsBlobStoragePrefix string = "s3://" GCSStoragePrefix string = "gs://" )
const AffinityTopologyKeyNone = "none"
const ConditionInnoDBClusterBootstrapped string = "InnoDBClusterBootstrapped"
const SmartUpdateStatefulSetStrategyType appsv1.StatefulSetUpdateStrategyType = "SmartUpdate"
SmartUpdateStatefulSetStrategyType
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "ps.percona.com", 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 )
var NonAlphaNumeric = regexp.MustCompile("[^a-zA-Z0-9_]+")
Functions ¶
Types ¶
type BackupDestination ¶ added in v0.7.0
type BackupDestination string
func (*BackupDestination) BackupName ¶ added in v0.7.0
func (dest *BackupDestination) BackupName() string
func (*BackupDestination) BucketAndPrefix ¶ added in v0.7.0
func (dest *BackupDestination) BucketAndPrefix() (string, string)
func (*BackupDestination) PathWithoutBucket ¶ added in v0.7.0
func (dest *BackupDestination) PathWithoutBucket() string
func (*BackupDestination) SetAzureDestination ¶ added in v0.7.0
func (dest *BackupDestination) SetAzureDestination(container, backupName string)
func (*BackupDestination) SetGCSDestination ¶ added in v0.7.0
func (dest *BackupDestination) SetGCSDestination(bucket, backupName string)
func (*BackupDestination) SetS3Destination ¶ added in v0.7.0
func (dest *BackupDestination) SetS3Destination(bucket, backupName string)
func (*BackupDestination) StorageTypePrefix ¶ added in v0.7.0
func (dest *BackupDestination) StorageTypePrefix() string
func (*BackupDestination) String ¶ added in v0.7.0
func (dest *BackupDestination) String() string
type BackupSchedule ¶ added in v0.9.0
type BackupSchedule struct {
// +kubebuilder:validation:Required
Name string `json:"name,omitempty"`
// +kubebuilder:validation:Required
Schedule string `json:"schedule,omitempty"`
Keep int `json:"keep,omitempty"`
// +kubebuilder:validation:Required
StorageName string `json:"storageName,omitempty"`
}
func (*BackupSchedule) DeepCopy ¶ added in v0.9.0
func (in *BackupSchedule) DeepCopy() *BackupSchedule
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupSchedule.
func (*BackupSchedule) DeepCopyInto ¶ added in v0.9.0
func (in *BackupSchedule) DeepCopyInto(out *BackupSchedule)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BackupSpec ¶ added in v0.2.0
type BackupSpec struct {
Enabled bool `json:"enabled,omitempty"`
Image string `json:"image"`
InitImage string `json:"initImage,omitempty"`
ImagePullSecrets []corev1.LocalObjectReference `json:"imagePullSecrets,omitempty"`
ImagePullPolicy corev1.PullPolicy `json:"imagePullPolicy,omitempty"`
ServiceAccountName string `json:"serviceAccountName,omitempty"`
ContainerSecurityContext *corev1.SecurityContext `json:"containerSecurityContext,omitempty"`
Resources corev1.ResourceRequirements `json:"resources,omitempty"`
Storages map[string]*BackupStorageSpec `json:"storages,omitempty"`
BackoffLimit *int32 `json:"backoffLimit,omitempty"`
PiTR PiTRSpec `json:"pitr,omitempty"`
Schedule []BackupSchedule `json:"schedule,omitempty"`
}
func (*BackupSpec) DeepCopy ¶ added in v0.2.0
func (in *BackupSpec) DeepCopy() *BackupSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupSpec.
func (*BackupSpec) DeepCopyInto ¶ added in v0.2.0
func (in *BackupSpec) DeepCopyInto(out *BackupSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*BackupSpec) GetInitImage ¶ added in v0.3.0
func (s *BackupSpec) GetInitImage() string
Retrieves the initialization image for the backup.
type BackupState ¶ added in v0.2.0
type BackupState string
const ( BackupNew BackupState = "" BackupStarting BackupState = "Starting" BackupRunning BackupState = "Running" BackupFailed BackupState = "Failed" BackupError BackupState = "Error" BackupSucceeded BackupState = "Succeeded" )
type BackupStorageAzureSpec ¶ added in v0.2.0
type BackupStorageAzureSpec struct {
// A container name is a valid DNS name that conforms to the Azure naming rules.
ContainerName BucketWithPrefix `json:"container"`
// A prefix is a sub-folder to the backups inside the container
Prefix string `json:"prefix,omitempty"`
// A generated key that can be used to authorize access to data in your account using the Shared Key authorization.
CredentialsSecret string `json:"credentialsSecret"`
// The endpoint allows clients to securely access data
EndpointURL string `json:"endpointUrl,omitempty"`
// Hot (Frequently accessed or modified data), Cool (Infrequently accessed or modified data), Archive (Rarely accessed or modified data)
StorageClass string `json:"storageClass,omitempty"`
}
func (*BackupStorageAzureSpec) ContainerAndPrefix ¶ added in v0.7.0
func (b *BackupStorageAzureSpec) ContainerAndPrefix() (string, string)
ContainerAndPrefix returns container name from ContainerName and backup prefix from ContainerName concatenated with Prefix. BackupStorageAzureSpec.ContainerName can contain backup path in format `<container-name>/<backup-prefix>`.
func (*BackupStorageAzureSpec) DeepCopy ¶ added in v0.2.0
func (in *BackupStorageAzureSpec) DeepCopy() *BackupStorageAzureSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupStorageAzureSpec.
func (*BackupStorageAzureSpec) DeepCopyInto ¶ added in v0.2.0
func (in *BackupStorageAzureSpec) DeepCopyInto(out *BackupStorageAzureSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BackupStorageGCSSpec ¶ added in v0.2.0
type BackupStorageGCSSpec struct {
Bucket BucketWithPrefix `json:"bucket"`
Prefix string `json:"prefix,omitempty"`
CredentialsSecret string `json:"credentialsSecret"`
EndpointURL string `json:"endpointUrl,omitempty"`
// STANDARD, NEARLINE, COLDLINE, ARCHIVE
StorageClass string `json:"storageClass,omitempty"`
}
func (*BackupStorageGCSSpec) BucketAndPrefix ¶ added in v0.7.0
func (b *BackupStorageGCSSpec) BucketAndPrefix() (string, string)
BucketAndPrefix returns bucket name and backup prefix from Bucket concatenated with Prefix. BackupStorageGCSSpec.Bucket can contain backup path in format `<bucket-name>/<backup-prefix>`.
func (*BackupStorageGCSSpec) DeepCopy ¶ added in v0.2.0
func (in *BackupStorageGCSSpec) DeepCopy() *BackupStorageGCSSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupStorageGCSSpec.
func (*BackupStorageGCSSpec) DeepCopyInto ¶ added in v0.2.0
func (in *BackupStorageGCSSpec) DeepCopyInto(out *BackupStorageGCSSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BackupStorageS3Spec ¶ added in v0.2.0
type BackupStorageS3Spec struct {
Bucket BucketWithPrefix `json:"bucket"`
Prefix string `json:"prefix,omitempty"`
CredentialsSecret string `json:"credentialsSecret"`
Region string `json:"region,omitempty"`
EndpointURL string `json:"endpointUrl,omitempty"`
StorageClass string `json:"storageClass,omitempty"`
}
func (*BackupStorageS3Spec) BucketAndPrefix ¶ added in v0.7.0
func (b *BackupStorageS3Spec) BucketAndPrefix() (string, string)
BucketAndPrefix returns bucket name and backup prefix from Bucket concatenated with Prefix. BackupStorageS3Spec.Bucket can contain backup path in format `<bucket-name>/<backup-prefix>`.
func (*BackupStorageS3Spec) DeepCopy ¶ added in v0.2.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.2.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.2.0
type BackupStorageSpec struct {
Type BackupStorageType `json:"type"`
Volume *VolumeSpec `json:"volumeSpec,omitempty"`
S3 *BackupStorageS3Spec `json:"s3,omitempty"`
GCS *BackupStorageGCSSpec `json:"gcs,omitempty"`
Azure *BackupStorageAzureSpec `json:"azure,omitempty"`
NodeSelector map[string]string `json:"nodeSelector,omitempty"`
Resources corev1.ResourceRequirements `json:"resources,omitempty"`
Affinity *corev1.Affinity `json:"affinity,omitempty"`
TopologySpreadConstraints []corev1.TopologySpreadConstraint `json:"topologySpreadConstraints,omitempty"`
Tolerations []corev1.Toleration `json:"tolerations,omitempty"`
Annotations map[string]string `json:"annotations,omitempty"`
Labels map[string]string `json:"labels,omitempty"`
SchedulerName string `json:"schedulerName,omitempty"`
PriorityClassName string `json:"priorityClassName,omitempty"`
PodSecurityContext *corev1.PodSecurityContext `json:"podSecurityContext,omitempty"`
ContainerSecurityContext *corev1.SecurityContext `json:"containerSecurityContext,omitempty"`
RuntimeClassName *string `json:"runtimeClassName,omitempty"`
VerifyTLS *bool `json:"verifyTLS,omitempty"`
}
func (*BackupStorageSpec) DeepCopy ¶ added in v0.2.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.2.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.2.0
type BackupStorageType string
const ( BackupStorageS3 BackupStorageType = "s3" BackupStorageGCS BackupStorageType = "gcs" BackupStorageAzure BackupStorageType = "azure" )
type BinlogServerSpec ¶ added in v0.9.0
type BinlogServerSpec struct {
Storage BinlogServerStorageSpec `json:"storage"`
// The number of seconds the MySQL client library will wait to establish a connection with a remote host
ConnectTimeout int32 `json:"connectTimeout"`
// The number of seconds the MySQL client library will wait to read data from a remote server.
ReadTimeout int32 `json:"readTimeout"`
// The number of seconds the MySQL client library will wait to write data to a remote server.
WriteTimeout int32 `json:"writeTimeout"`
// Specifies the server ID that the utility will be using when connecting to a remote MySQL server
ServerID int32 `json:"serverId"`
// The number of seconds the utility will spend in disconnected mode between reconnection attempts.
IdleTime int32 `json:"idleTime"`
PodSpec `json:",inline"`
}
func (*BinlogServerSpec) DeepCopy ¶ added in v0.9.0
func (in *BinlogServerSpec) DeepCopy() *BinlogServerSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BinlogServerSpec.
func (*BinlogServerSpec) DeepCopyInto ¶ added in v0.9.0
func (in *BinlogServerSpec) DeepCopyInto(out *BinlogServerSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BinlogServerStorageSpec ¶ added in v0.9.0
type BinlogServerStorageSpec struct {
S3 *BackupStorageS3Spec `json:"s3,omitempty"`
}
func (*BinlogServerStorageSpec) DeepCopy ¶ added in v0.9.0
func (in *BinlogServerStorageSpec) DeepCopy() *BinlogServerStorageSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BinlogServerStorageSpec.
func (*BinlogServerStorageSpec) DeepCopyInto ¶ added in v0.9.0
func (in *BinlogServerStorageSpec) DeepCopyInto(out *BinlogServerStorageSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BucketWithPrefix ¶ added in v0.5.0
type BucketWithPrefix string
BucketWithPrefix contains a bucket name with or without a prefix in a format <bucket>/<prefix>
type ClusterType ¶
type ClusterType string
type ContainerSpec ¶ added in v0.3.0
type ContainerSpec struct {
Image string `json:"image"`
ImagePullPolicy corev1.PullPolicy `json:"imagePullPolicy,omitempty"`
ImagePullSecrets []corev1.LocalObjectReference `json:"imagePullSecrets,omitempty"`
Resources corev1.ResourceRequirements `json:"resources,omitempty"`
StartupProbe corev1.Probe `json:"startupProbe,omitempty"`
ReadinessProbe corev1.Probe `json:"readinessProbe,omitempty"`
LivenessProbe corev1.Probe `json:"livenessProbe,omitempty"`
ContainerSecurityContext *corev1.SecurityContext `json:"containerSecurityContext,omitempty"`
Env []corev1.EnvVar `json:"env,omitempty"`
EnvFrom []corev1.EnvFromSource `json:"envFrom,omitempty"`
}
func (*ContainerSpec) DeepCopy ¶ added in v0.3.0
func (in *ContainerSpec) DeepCopy() *ContainerSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ContainerSpec.
func (*ContainerSpec) DeepCopyInto ¶ added in v0.3.0
func (in *ContainerSpec) DeepCopyInto(out *ContainerSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HAProxySpec ¶ added in v0.3.0
type HAProxySpec struct {
Enabled bool `json:"enabled,omitempty"`
Expose ServiceExpose `json:"expose,omitempty"`
PodSpec `json:",inline"`
}
func (*HAProxySpec) DeepCopy ¶ added in v0.3.0
func (in *HAProxySpec) DeepCopy() *HAProxySpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HAProxySpec.
func (*HAProxySpec) DeepCopyInto ¶ added in v0.3.0
func (in *HAProxySpec) DeepCopyInto(out *HAProxySpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MySQLRouterSpec ¶ added in v0.2.0
type MySQLRouterSpec struct {
Enabled bool `json:"enabled,omitempty"`
Expose ServiceExpose `json:"expose,omitempty"`
Ports []corev1.ServicePort `json:"ports,omitempty"`
PodSpec `json:",inline"`
}
func (*MySQLRouterSpec) DeepCopy ¶ added in v0.2.0
func (in *MySQLRouterSpec) DeepCopy() *MySQLRouterSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MySQLRouterSpec.
func (*MySQLRouterSpec) DeepCopyInto ¶ added in v0.2.0
func (in *MySQLRouterSpec) DeepCopyInto(out *MySQLRouterSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MySQLSpec ¶
type MySQLSpec struct {
ClusterType ClusterType `json:"clusterType,omitempty"`
ExposePrimary ServiceExposeTogglable `json:"exposePrimary,omitempty"`
Expose ServiceExposeTogglable `json:"expose,omitempty"`
AutoRecovery bool `json:"autoRecovery,omitempty"`
Sidecars []corev1.Container `json:"sidecars,omitempty"`
SidecarVolumes []corev1.Volume `json:"sidecarVolumes,omitempty"`
SidecarPVCs []SidecarPVC `json:"sidecarPVCs,omitempty"`
VaultSecretName string `json:"vaultSecretName,omitempty"`
PodSpec `json:",inline"`
}
func (*MySQLSpec) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MySQLSpec.
func (*MySQLSpec) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type OrchestratorSpec ¶
type OrchestratorSpec struct {
Enabled bool `json:"enabled,omitempty"`
Expose ServiceExpose `json:"expose,omitempty"`
PodSpec `json:",inline"`
}
func (*OrchestratorSpec) DeepCopy ¶
func (in *OrchestratorSpec) DeepCopy() *OrchestratorSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratorSpec.
func (*OrchestratorSpec) DeepCopyInto ¶
func (in *OrchestratorSpec) DeepCopyInto(out *OrchestratorSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PMMSpec ¶
type PMMSpec struct {
Enabled bool `json:"enabled,omitempty"`
Image string `json:"image"`
MySQLParams string `json:"mysqlParams,omitempty"`
ServerHost string `json:"serverHost,omitempty"`
Resources corev1.ResourceRequirements `json:"resources,omitempty"`
ContainerSecurityContext *corev1.SecurityContext `json:"containerSecurityContext,omitempty"`
ImagePullPolicy corev1.PullPolicy `json:"imagePullPolicy,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 PerconaServerMySQL ¶
type PerconaServerMySQL struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec PerconaServerMySQLSpec `json:"spec,omitempty"`
Status PerconaServerMySQLStatus `json:"status,omitempty"`
}
PerconaServerMySQL is the Schema for the perconaservermysqls API +kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Replication",type=string,JSONPath=".spec.mysql.clusterType" +kubebuilder:printcolumn:name="Endpoint",type=string,JSONPath=".status.host" +kubebuilder:printcolumn:name="State",type=string,JSONPath=".status.state" +kubebuilder:printcolumn:name="MySQL",type=string,JSONPath=".status.mysql.ready" +kubebuilder:printcolumn:name="Orchestrator",type=string,JSONPath=".status.orchestrator.ready" +kubebuilder:printcolumn:name="HAProxy",type=string,JSONPath=".status.haproxy.ready" +kubebuilder:printcolumn:name="Router",type=string,JSONPath=".status.router.ready" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:resource:scope=Namespaced +kubebuilder:resource:shortName=ps
func (*PerconaServerMySQL) CheckNSetDefaults ¶
func (cr *PerconaServerMySQL) CheckNSetDefaults(_ context.Context, serverVersion *platform.ServerVersion) error
CheckNSetDefaults validates and sets default values for the PerconaServerMySQL custom resource.
func (*PerconaServerMySQL) ClusterHash ¶
func (cr *PerconaServerMySQL) ClusterHash() string
ClusterHash returns FNV hash of the CustomResource UID
func (*PerconaServerMySQL) ClusterHint ¶
func (cr *PerconaServerMySQL) ClusterHint() string
ClusterHint generates a unique identifier for the PerconaServerMySQL cluster using its name and namespace.
func (*PerconaServerMySQL) CompareVersion ¶ added in v0.11.0
func (cr *PerconaServerMySQL) CompareVersion(ver string) int
CompareVersion compares given version to current version. Returns -1, 0, or 1 if given version is smaller, equal, or larger than the current version, respectively.
func (*PerconaServerMySQL) DeepCopy ¶
func (in *PerconaServerMySQL) DeepCopy() *PerconaServerMySQL
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PerconaServerMySQL.
func (*PerconaServerMySQL) DeepCopyInto ¶
func (in *PerconaServerMySQL) DeepCopyInto(out *PerconaServerMySQL)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*PerconaServerMySQL) DeepCopyObject ¶
func (in *PerconaServerMySQL) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*PerconaServerMySQL) HAProxyEnabled ¶ added in v0.3.0
func (cr *PerconaServerMySQL) HAProxyEnabled() bool
HAProxyEnabled verifies if HAProxy is enabled based on MySQL configuration and safety settings.
func (*PerconaServerMySQL) InnoDBClusterName ¶ added in v0.2.0
func (cr *PerconaServerMySQL) InnoDBClusterName() string
Generates a cluster name by sanitizing the PerconaServerMySQL name.
func (*PerconaServerMySQL) InternalSecretName ¶
func (cr *PerconaServerMySQL) InternalSecretName() string
InternalSecretName generates a name for the internal secret based on the PerconaServerMySQL name.
func (*PerconaServerMySQL) Labels ¶
func (cr *PerconaServerMySQL) Labels(name, component string) map[string]string
Labels returns a standardized set of labels for the PerconaServerMySQL custom resource.
func (*PerconaServerMySQL) MySQLSpec ¶
func (cr *PerconaServerMySQL) MySQLSpec() *MySQLSpec
MySQLSpec returns the MySQL specification from the PerconaServerMySQL custom resource.
func (*PerconaServerMySQL) OrchestratorEnabled ¶ added in v0.4.0
func (cr *PerconaServerMySQL) OrchestratorEnabled() bool
OrchestratorEnabled determines if the orchestrator is enabled, considering the MySQL configuration.
func (*PerconaServerMySQL) OrchestratorSpec ¶
func (cr *PerconaServerMySQL) OrchestratorSpec() *OrchestratorSpec
OrchestratorSpec returns the Orchestrator specification from the PerconaServerMySQL custom resource.
func (*PerconaServerMySQL) PMMEnabled ¶
func (cr *PerconaServerMySQL) PMMEnabled(secret *corev1.Secret) bool
PMMEnabled checks if PMM is enabled and if the provided secret contains PMM-specific data.
func (*PerconaServerMySQL) PMMSpec ¶
func (cr *PerconaServerMySQL) PMMSpec() *PMMSpec
PMMSpec returns the PMM specification from the PerconaServerMySQL custom resource.
func (*PerconaServerMySQL) PVCResizeInProgress ¶ added in v0.11.0
func (cr *PerconaServerMySQL) PVCResizeInProgress() bool
func (*PerconaServerMySQL) RouterEnabled ¶ added in v0.6.0
func (cr *PerconaServerMySQL) RouterEnabled() bool
RouterEnabled checks if the router is enabled, considering the MySQL configuration.
func (*PerconaServerMySQL) SetVersion ¶ added in v0.3.0
func (cr *PerconaServerMySQL) SetVersion()
SetVersion sets the CRVersion to the version value if it's not already set.
func (*PerconaServerMySQL) Version ¶ added in v0.11.0
func (cr *PerconaServerMySQL) Version() *v.Version
type PerconaServerMySQLBackup ¶
type PerconaServerMySQLBackup struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec PerconaServerMySQLBackupSpec `json:"spec,omitempty"`
Status PerconaServerMySQLBackupStatus `json:"status,omitempty"`
}
+kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Storage",type=string,JSONPath=".spec.storageName" +kubebuilder:printcolumn:name="Destination",type=string,JSONPath=".status.destination" +kubebuilder:printcolumn:name="State",type=string,JSONPath=".status.state" +kubebuilder:printcolumn:name="Completed",type="date",JSONPath=".status.completed" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:resource:scope=Namespaced +kubebuilder:resource:shortName=ps-backup;ps-backups PerconaServerMySQLBackup is the Schema for the perconaservermysqlbackups API
func (*PerconaServerMySQLBackup) DeepCopy ¶
func (in *PerconaServerMySQLBackup) DeepCopy() *PerconaServerMySQLBackup
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PerconaServerMySQLBackup.
func (*PerconaServerMySQLBackup) DeepCopyInto ¶
func (in *PerconaServerMySQLBackup) DeepCopyInto(out *PerconaServerMySQLBackup)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*PerconaServerMySQLBackup) DeepCopyObject ¶
func (in *PerconaServerMySQLBackup) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*PerconaServerMySQLBackup) Hash ¶ added in v0.2.0
func (cr *PerconaServerMySQLBackup) Hash() string
Hash returns FNV hash of the PerconaServerMySQLBackup UID
type PerconaServerMySQLBackupList ¶
type PerconaServerMySQLBackupList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []PerconaServerMySQLBackup `json:"items"`
}
PerconaServerMySQLBackupList contains a list of PerconaServerMySQLBackup
func (*PerconaServerMySQLBackupList) DeepCopy ¶
func (in *PerconaServerMySQLBackupList) DeepCopy() *PerconaServerMySQLBackupList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PerconaServerMySQLBackupList.
func (*PerconaServerMySQLBackupList) DeepCopyInto ¶
func (in *PerconaServerMySQLBackupList) DeepCopyInto(out *PerconaServerMySQLBackupList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*PerconaServerMySQLBackupList) DeepCopyObject ¶
func (in *PerconaServerMySQLBackupList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type PerconaServerMySQLBackupSpec ¶
type PerconaServerMySQLBackupSpec struct {
ClusterName string `json:"clusterName"`
StorageName string `json:"storageName"`
}
PerconaServerMySQLBackupSpec defines the desired state of PerconaServerMySQLBackup
func (*PerconaServerMySQLBackupSpec) DeepCopy ¶
func (in *PerconaServerMySQLBackupSpec) DeepCopy() *PerconaServerMySQLBackupSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PerconaServerMySQLBackupSpec.
func (*PerconaServerMySQLBackupSpec) DeepCopyInto ¶
func (in *PerconaServerMySQLBackupSpec) DeepCopyInto(out *PerconaServerMySQLBackupSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PerconaServerMySQLBackupStatus ¶
type PerconaServerMySQLBackupStatus struct {
State BackupState `json:"state,omitempty"`
StateDesc string `json:"stateDescription,omitempty"`
Destination BackupDestination `json:"destination,omitempty"`
Storage *BackupStorageSpec `json:"storage,omitempty"`
CompletedAt *metav1.Time `json:"completed,omitempty"`
Image string `json:"image,omitempty"`
}
PerconaServerMySQLBackupStatus defines the observed state of PerconaServerMySQLBackup
func (*PerconaServerMySQLBackupStatus) DeepCopy ¶
func (in *PerconaServerMySQLBackupStatus) DeepCopy() *PerconaServerMySQLBackupStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PerconaServerMySQLBackupStatus.
func (*PerconaServerMySQLBackupStatus) DeepCopyInto ¶
func (in *PerconaServerMySQLBackupStatus) DeepCopyInto(out *PerconaServerMySQLBackupStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PerconaServerMySQLList ¶
type PerconaServerMySQLList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []PerconaServerMySQL `json:"items"`
}
PerconaServerMySQLList contains a list of PerconaServerMySQL
func (*PerconaServerMySQLList) DeepCopy ¶
func (in *PerconaServerMySQLList) DeepCopy() *PerconaServerMySQLList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PerconaServerMySQLList.
func (*PerconaServerMySQLList) DeepCopyInto ¶
func (in *PerconaServerMySQLList) DeepCopyInto(out *PerconaServerMySQLList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*PerconaServerMySQLList) DeepCopyObject ¶
func (in *PerconaServerMySQLList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type PerconaServerMySQLRestore ¶
type PerconaServerMySQLRestore struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec PerconaServerMySQLRestoreSpec `json:"spec,omitempty"`
Status PerconaServerMySQLRestoreStatus `json:"status,omitempty"`
}
+kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:resource:scope=Namespaced +kubebuilder:resource:shortName=ps-restore +kubebuilder:printcolumn:name="State",type=string,JSONPath=".status.state" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp" PerconaServerMySQLRestore is the Schema for the perconaservermysqlrestores API
func (*PerconaServerMySQLRestore) DeepCopy ¶
func (in *PerconaServerMySQLRestore) DeepCopy() *PerconaServerMySQLRestore
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PerconaServerMySQLRestore.
func (*PerconaServerMySQLRestore) DeepCopyInto ¶
func (in *PerconaServerMySQLRestore) DeepCopyInto(out *PerconaServerMySQLRestore)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*PerconaServerMySQLRestore) DeepCopyObject ¶
func (in *PerconaServerMySQLRestore) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type PerconaServerMySQLRestoreList ¶
type PerconaServerMySQLRestoreList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []PerconaServerMySQLRestore `json:"items"`
}
PerconaServerMySQLRestoreList contains a list of PerconaServerMySQLRestore
func (*PerconaServerMySQLRestoreList) DeepCopy ¶
func (in *PerconaServerMySQLRestoreList) DeepCopy() *PerconaServerMySQLRestoreList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PerconaServerMySQLRestoreList.
func (*PerconaServerMySQLRestoreList) DeepCopyInto ¶
func (in *PerconaServerMySQLRestoreList) DeepCopyInto(out *PerconaServerMySQLRestoreList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*PerconaServerMySQLRestoreList) DeepCopyObject ¶
func (in *PerconaServerMySQLRestoreList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type PerconaServerMySQLRestoreSpec ¶
type PerconaServerMySQLRestoreSpec struct {
ClusterName string `json:"clusterName"`
BackupName string `json:"backupName,omitempty"`
BackupSource *PerconaServerMySQLBackupStatus `json:"backupSource,omitempty"`
}
PerconaServerMySQLRestoreSpec defines the desired state of PerconaServerMySQLRestore
func (*PerconaServerMySQLRestoreSpec) DeepCopy ¶
func (in *PerconaServerMySQLRestoreSpec) DeepCopy() *PerconaServerMySQLRestoreSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PerconaServerMySQLRestoreSpec.
func (*PerconaServerMySQLRestoreSpec) DeepCopyInto ¶
func (in *PerconaServerMySQLRestoreSpec) DeepCopyInto(out *PerconaServerMySQLRestoreSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PerconaServerMySQLRestoreStatus ¶
type PerconaServerMySQLRestoreStatus struct {
State RestoreState `json:"state,omitempty"`
StateDesc string `json:"stateDescription,omitempty"`
CompletedAt *metav1.Time `json:"completed,omitempty"`
}
PerconaServerMySQLRestoreStatus defines the observed state of PerconaServerMySQLRestore
func (*PerconaServerMySQLRestoreStatus) DeepCopy ¶
func (in *PerconaServerMySQLRestoreStatus) DeepCopy() *PerconaServerMySQLRestoreStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PerconaServerMySQLRestoreStatus.
func (*PerconaServerMySQLRestoreStatus) DeepCopyInto ¶
func (in *PerconaServerMySQLRestoreStatus) DeepCopyInto(out *PerconaServerMySQLRestoreStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PerconaServerMySQLSpec ¶
type PerconaServerMySQLSpec struct {
CRVersion string `json:"crVersion,omitempty"`
Pause bool `json:"pause,omitempty"`
VolumeExpansionEnabled bool `json:"enableVolumeExpansion,omitempty"`
SecretsName string `json:"secretsName,omitempty"`
SSLSecretName string `json:"sslSecretName,omitempty"`
Unsafe UnsafeFlags `json:"unsafeFlags,omitempty"`
InitImage string `json:"initImage,omitempty"`
IgnoreAnnotations []string `json:"ignoreAnnotations,omitempty"`
IgnoreLabels []string `json:"ignoreLabels,omitempty"`
MySQL MySQLSpec `json:"mysql,omitempty"`
Orchestrator OrchestratorSpec `json:"orchestrator,omitempty"`
PMM *PMMSpec `json:"pmm,omitempty"`
Backup *BackupSpec `json:"backup,omitempty"`
Proxy ProxySpec `json:"proxy,omitempty"`
TLS *TLSSpec `json:"tls,omitempty"`
Toolkit *ToolkitSpec `json:"toolkit,omitempty"`
UpgradeOptions UpgradeOptions `json:"upgradeOptions,omitempty"`
UpdateStrategy appsv1.StatefulSetUpdateStrategyType `json:"updateStrategy,omitempty"`
}
PerconaServerMySQLSpec defines the desired state of PerconaServerMySQL +kubebuilder:validation:XValidation:rule="!(self.mysql.clusterType == 'async') || self.unsafeFlags.orchestrator || self.orchestrator.enabled",message="Invalid configuration: When 'mysql.clusterType' is set to 'async', 'orchestrator.enabled' must be true unless 'unsafeFlags.orchestrator' is enabled" +kubebuilder:validation:XValidation:rule="!(self.mysql.clusterType == 'async') || self.unsafeFlags.proxy || self.proxy.haproxy.enabled",message="Invalid configuration: When 'mysql.clusterType' is set to 'async', 'proxy.haproxy.enabled' must be true unless 'unsafeFlags.proxy' is enabled" +kubebuilder:validation:XValidation:rule="!(self.mysql.clusterType == 'async') || self.proxy.router == null || !has(self.proxy.router.enabled) || !self.proxy.router.enabled",message="Invalid configuration: When 'mysql.clusterType' is set to 'async', 'proxy.router.enabled' must be disabled" +kubebuilder:validation:XValidation:rule="!(has(self.mysql.size) && self.mysql.size < 3) || self.unsafeFlags.mysqlSize",message="Invalid configuration: Scaling MySQL replicas below 3 requires 'unsafeFlags.mysqlSize: true'" +kubebuilder:validation:XValidation:rule="!(self.mysql.clusterType == 'group-replication' && has(self.mysql.size) && self.mysql.size >= 9) || self.unsafeFlags.mysqlSize",message="Invalid configuration: For 'group replication', scaling MySQL replicas above 9 requires 'unsafeFlags.mysqlSize: true'" +kubebuilder:validation:XValidation:rule="!(self.mysql.clusterType == 'group-replication' && has(self.mysql.size) && self.mysql.size % 2 == 0) || self.unsafeFlags.mysqlSize",message="Invalid configuration: For 'group replication', using an even number of MySQL replicas requires 'unsafeFlags.mysqlSize: true'"
func (*PerconaServerMySQLSpec) DeepCopy ¶
func (in *PerconaServerMySQLSpec) DeepCopy() *PerconaServerMySQLSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PerconaServerMySQLSpec.
func (*PerconaServerMySQLSpec) DeepCopyInto ¶
func (in *PerconaServerMySQLSpec) DeepCopyInto(out *PerconaServerMySQLSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PerconaServerMySQLStatus ¶
type PerconaServerMySQLStatus struct {
// Important: Run "make" to regenerate code after modifying this file
MySQL StatefulAppStatus `json:"mysql,omitempty"`
Orchestrator StatefulAppStatus `json:"orchestrator,omitempty"`
HAProxy StatefulAppStatus `json:"haproxy,omitempty"`
Router StatefulAppStatus `json:"router,omitempty"`
State StatefulAppState `json:"state,omitempty"`
BackupVersion string `json:"backupVersion,omitempty"`
PMMVersion string `json:"pmmVersion,omitempty"`
ToolkitVersion string `json:"toolkitVersion,omitempty"`
Conditions []metav1.Condition `json:"conditions,omitempty"`
// +optional
Host string `json:"host"`
}
PerconaServerMySQLStatus defines the observed state of PerconaServerMySQL
func (*PerconaServerMySQLStatus) CompareMySQLVersion ¶ added in v0.11.0
func (s *PerconaServerMySQLStatus) CompareMySQLVersion(ver string) int
func (*PerconaServerMySQLStatus) DeepCopy ¶
func (in *PerconaServerMySQLStatus) DeepCopy() *PerconaServerMySQLStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PerconaServerMySQLStatus.
func (*PerconaServerMySQLStatus) DeepCopyInto ¶
func (in *PerconaServerMySQLStatus) DeepCopyInto(out *PerconaServerMySQLStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PiTRSpec ¶ added in v0.9.0
type PiTRSpec struct {
Enabled bool `json:"enabled,omitempty"`
BinlogServer *BinlogServerSpec `json:"binlogServer,omitempty"`
}
func (*PiTRSpec) DeepCopy ¶ added in v0.9.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PiTRSpec.
func (*PiTRSpec) DeepCopyInto ¶ added in v0.9.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PodAffinity ¶
type PodAffinity struct {
TopologyKey *string `json:"antiAffinityTopologyKey,omitempty"`
Advanced *corev1.Affinity `json:"advanced,omitempty"`
}
func (*PodAffinity) DeepCopy ¶
func (in *PodAffinity) DeepCopy() *PodAffinity
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodAffinity.
func (*PodAffinity) DeepCopyInto ¶
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 ¶
type PodDisruptionBudgetSpec struct {
MinAvailable *intstr.IntOrString `json:"minAvailable,omitempty"`
}
func (*PodDisruptionBudgetSpec) DeepCopy ¶
func (in *PodDisruptionBudgetSpec) DeepCopy() *PodDisruptionBudgetSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodDisruptionBudgetSpec.
func (*PodDisruptionBudgetSpec) DeepCopyInto ¶
func (in *PodDisruptionBudgetSpec) DeepCopyInto(out *PodDisruptionBudgetSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PodSpec ¶
type PodSpec struct {
// +kubebuilder:validation:Required
Size int32 `json:"size,omitempty"`
Annotations map[string]string `json:"annotations,omitempty"`
Labels map[string]string `json:"labels,omitempty"`
VolumeSpec *VolumeSpec `json:"volumeSpec,omitempty"`
InitImage string `json:"initImage,omitempty"`
Affinity *PodAffinity `json:"affinity,omitempty"`
TopologySpreadConstraints []corev1.TopologySpreadConstraint `json:"topologySpreadConstraints,omitempty"`
NodeSelector map[string]string `json:"nodeSelector,omitempty"`
Tolerations []corev1.Toleration `json:"tolerations,omitempty"`
PriorityClassName string `json:"priorityClassName,omitempty"`
TerminationGracePeriodSeconds *int64 `json:"gracePeriod,omitempty"`
SchedulerName string `json:"schedulerName,omitempty"`
RuntimeClassName *string `json:"runtimeClassName,omitempty"`
PodSecurityContext *corev1.PodSecurityContext `json:"podSecurityContext,omitempty"`
ServiceAccountName string `json:"serviceAccountName,omitempty"`
Configuration string `json:"configuration,omitempty"`
ContainerSpec `json:",inline"`
}
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.
func (*PodSpec) GetAffinity ¶
GetAffinity derives an Affinity configuration based on the provided PodSpec's affinity settings and labels.
func (*PodSpec) GetInitImage ¶ added in v0.3.0
Retrieves the initialization image for the pod.
func (PodSpec) GetTerminationGracePeriodSeconds ¶ added in v0.11.0
GetTerminationGracePeriodSeconds returns the configured termination grace period for the Pod. If not explicitly set, it returns the default grace period.
func (*PodSpec) GetTopologySpreadConstraints ¶ added in v0.7.0
func (p *PodSpec) GetTopologySpreadConstraints(ls map[string]string) []corev1.TopologySpreadConstraint
type ProxySpec ¶ added in v0.4.0
type ProxySpec struct {
Router *MySQLRouterSpec `json:"router,omitempty"`
HAProxy *HAProxySpec `json:"haproxy,omitempty"`
}
func (*ProxySpec) DeepCopy ¶ added in v0.4.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProxySpec.
func (*ProxySpec) DeepCopyInto ¶ added in v0.4.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RestoreState ¶ added in v0.2.0
type RestoreState string
const ( RestoreNew RestoreState = "" RestoreStarting RestoreState = "Starting" RestoreRunning RestoreState = "Running" RestoreFailed RestoreState = "Failed" RestoreError RestoreState = "Error" RestoreSucceeded RestoreState = "Succeeded" )
type ServiceExpose ¶
type ServiceExpose struct {
Type corev1.ServiceType `json:"type,omitempty"`
LoadBalancerSourceRanges []string `json:"loadBalancerSourceRanges,omitempty"`
Annotations map[string]string `json:"annotations,omitempty"`
Labels map[string]string `json:"labels,omitempty"`
InternalTrafficPolicy *corev1.ServiceInternalTrafficPolicyType `json:"internalTrafficPolicy,omitempty"`
ExternalTrafficPolicy corev1.ServiceExternalTrafficPolicyType `json:"externalTrafficPolicy,omitempty"`
}
func (*ServiceExpose) DeepCopy ¶
func (in *ServiceExpose) DeepCopy() *ServiceExpose
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceExpose.
func (*ServiceExpose) DeepCopyInto ¶
func (in *ServiceExpose) DeepCopyInto(out *ServiceExpose)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ServiceExpose) SaveOldMeta ¶ added in v0.4.0
func (e *ServiceExpose) SaveOldMeta() bool
Determines if both annotations and labels of the service expose are empty.
type ServiceExposeTogglable ¶ added in v0.2.0
type ServiceExposeTogglable struct {
Enabled bool `json:"enabled,omitempty"`
ServiceExpose `json:",inline"`
}
func (*ServiceExposeTogglable) DeepCopy ¶ added in v0.2.0
func (in *ServiceExposeTogglable) DeepCopy() *ServiceExposeTogglable
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceExposeTogglable.
func (*ServiceExposeTogglable) DeepCopyInto ¶ added in v0.2.0
func (in *ServiceExposeTogglable) DeepCopyInto(out *ServiceExposeTogglable)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SidecarPVC ¶
type SidecarPVC struct {
Name string `json:"name"`
Spec corev1.PersistentVolumeClaimSpec `json:"spec"`
}
func (*SidecarPVC) DeepCopy ¶
func (in *SidecarPVC) DeepCopy() *SidecarPVC
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SidecarPVC.
func (*SidecarPVC) DeepCopyInto ¶
func (in *SidecarPVC) DeepCopyInto(out *SidecarPVC)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type StatefulAppState ¶
type StatefulAppState string
const ( StateInitializing StatefulAppState = "initializing" StateStopping StatefulAppState = "stopping" StatePaused StatefulAppState = "paused" StateReady StatefulAppState = "ready" StateError StatefulAppState = "error" )
func (StatefulAppState) String ¶ added in v0.7.0
func (s StatefulAppState) String() string
type StatefulAppStatus ¶
type StatefulAppStatus struct {
Size int32 `json:"size,omitempty"`
Ready int32 `json:"ready,omitempty"`
State StatefulAppState `json:"state,omitempty"`
Version string `json:"version,omitempty"`
ImageID string `json:"imageID,omitempty"`
}
func (*StatefulAppStatus) DeepCopy ¶
func (in *StatefulAppStatus) DeepCopy() *StatefulAppStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StatefulAppStatus.
func (*StatefulAppStatus) DeepCopyInto ¶
func (in *StatefulAppStatus) DeepCopyInto(out *StatefulAppStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SystemUser ¶
type SystemUser string
const ( UserHeartbeat SystemUser = "heartbeat" UserMonitor SystemUser = "monitor" UserOperator SystemUser = "operator" UserOrchestrator SystemUser = "orchestrator" UserPMMServerToken SystemUser = "pmmservertoken" UserReplication SystemUser = "replication" UserRoot SystemUser = "root" UserXtraBackup SystemUser = "xtrabackup" )
type TLSSpec ¶ added in v0.3.0
type TLSSpec struct {
SANs []string `json:"SANs,omitempty"`
IssuerConf *cmmeta.ObjectReference `json:"issuerConf,omitempty"`
}
func (*TLSSpec) DeepCopy ¶ added in v0.3.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TLSSpec.
func (*TLSSpec) DeepCopyInto ¶ added in v0.3.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ToolkitSpec ¶ added in v0.3.0
type ToolkitSpec struct {
ContainerSpec `json:",inline"`
}
func (*ToolkitSpec) DeepCopy ¶ added in v0.3.0
func (in *ToolkitSpec) DeepCopy() *ToolkitSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ToolkitSpec.
func (*ToolkitSpec) DeepCopyInto ¶ added in v0.3.0
func (in *ToolkitSpec) DeepCopyInto(out *ToolkitSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type UnsafeFlags ¶ added in v0.8.0
type UnsafeFlags struct {
// MySQLSize allows to set MySQL size to a value less than the minimum safe size or higher than the maximum safe size.
MySQLSize bool `json:"mysqlSize,omitempty"`
// Proxy allows to disable proxy.
Proxy bool `json:"proxy,omitempty"`
// ProxySize allows to set proxy (HAProxy / Router) size to a value less than the minimum safe size.
ProxySize bool `json:"proxySize,omitempty"`
// Orchestrator allows to disable Orchestrator.
Orchestrator bool `json:"orchestrator,omitempty"`
// OrchestratorSize allows to set Orchestrator size to a value less than the minimum safe size.
OrchestratorSize bool `json:"orchestratorSize,omitempty"`
}
func (*UnsafeFlags) DeepCopy ¶ added in v0.8.0
func (in *UnsafeFlags) DeepCopy() *UnsafeFlags
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UnsafeFlags.
func (*UnsafeFlags) DeepCopyInto ¶ added in v0.8.0
func (in *UnsafeFlags) DeepCopyInto(out *UnsafeFlags)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type UpgradeOptions ¶ added in v0.3.0
type UpgradeOptions struct {
VersionServiceEndpoint string `json:"versionServiceEndpoint,omitempty"`
Apply string `json:"apply,omitempty"`
}
func (*UpgradeOptions) DeepCopy ¶ added in v0.3.0
func (in *UpgradeOptions) DeepCopy() *UpgradeOptions
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UpgradeOptions.
func (*UpgradeOptions) DeepCopyInto ¶ added in v0.3.0
func (in *UpgradeOptions) DeepCopyInto(out *UpgradeOptions)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VolumeSpec ¶
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 ¶
func (in *VolumeSpec) DeepCopy() *VolumeSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VolumeSpec.
func (*VolumeSpec) DeepCopyInto ¶
func (in *VolumeSpec) DeepCopyInto(out *VolumeSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.