v1alpha1

package
v0.30.1 Latest Latest
Warning

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

Go to latest
Published: Jan 17, 2023 License: Apache-2.0 Imports: 17 Imported by: 2

Documentation

Overview

+groupName=ops.kubedb.com

Index

Constants

View Source
const (
	GenericKey = "ops.kubedb.com"

	LabelOpsRequestKind = GenericKey + "/kind"
	LabelOpsRequestName = GenericKey + "/name"

	OpsRequestProgressingStarted           = "OpsRequestProgressingStarted"
	OpsRequestFailedToProgressing          = "OpsRequestFailedToProgressing"
	SuccessfullyPausedDatabase             = "SuccessfullyPausedDatabase"
	FailedToPauseDatabase                  = "FailedToPauseDatabase"
	SuccessfullyResumedDatabase            = "SuccessfullyResumedDatabase"
	FailedToResumedDatabase                = "FailedToResumedDatabase"
	DatabaseVersionUpgradingStarted        = "DatabaseVersionUpgradingStarted"
	SuccessfullyUpgradedDatabaseVersion    = "SuccessfullyUpgradedDatabaseVersion"
	FailedToUpgradeDatabaseVersion         = "FailedToUpgradeDatabaseVersion"
	HorizontalScalingStarted               = "HorizontalScalingStarted"
	SuccessfullyPerformedHorizontalScaling = "SuccessfullyPerformedHorizontalScaling"
	FailedToPerformHorizontalScaling       = "FailedToPerformHorizontalScaling"
	VerticalScalingStarted                 = "VerticalScalingStarted"
	SuccessfullyPerformedVerticalScaling   = "SuccessfullyPerformedVerticalScaling"
	FailedToPerformVerticalScaling         = "FailedToPerformVerticalScaling"
	OpsRequestProcessedSuccessfully        = "OpsRequestProcessedSuccessfully"
	SuccessfullyVolumeExpanded             = "SuccessfullyVolumeExpanded"
	FailedToVolumeExpand                   = "FailedToVolumeExpand"
	SuccessfullyDBReconfigured             = "SuccessfullyDBReconfigured"
	FailedToReconfigureDB                  = "FailedToReconfigureDB"
	SuccessfullyRestartedDBMembers         = "SuccessfullyRestartedDBMembers"
	FailToRestartDBMembers                 = "FailToRestartDBMembers"
	SuccessfullyRestartedStatefulSet       = "SuccessfullyRestartedStatefulSet"
	FailedToRestartStatefulSet             = "FailedToRestartStatefulSet"
	SuccessfullyRemovedTLSConfig           = "SuccessfullyRemovedTLSConfig"
	FailedToRemoveTLSConfig                = "FailedToRemoveTLSConfig"
	SuccessfullyAddedTLSConfig             = "SuccessfullyAddedTLSConfig"
	FailedToAddTLSConfig                   = "FailedToAddTLSConfig"
	SuccessfullyIssuedCertificates         = "SuccessfullyIssuedCertificates"
	FailedToIssueCertificates              = "FailedToIssueCertificates"
	SuccessfullyReconfiguredTLS            = "SuccessfullyReconfiguredTLS"
)
View Source
const (
	ResourceCodeElasticsearchOpsRequest     = "esops"
	ResourceKindElasticsearchOpsRequest     = "ElasticsearchOpsRequest"
	ResourceSingularElasticsearchOpsRequest = "elasticsearchopsrequest"
	ResourcePluralElasticsearchOpsRequest   = "elasticsearchopsrequests"
)
View Source
const (
	ResourceCodeEtcdOpsRequest     = "etcdops"
	ResourceKindEtcdOpsRequest     = "EtcdOpsRequest"
	ResourceSingularEtcdOpsRequest = "etcdopsrequest"
	ResourcePluralEtcdOpsRequest   = "etcdopsrequests"
)
View Source
const (
	ResourceCodeMariaDBOpsRequest     = "mariaops"
	ResourceKindMariaDBOpsRequest     = "MariaDBOpsRequest"
	ResourceSingularMariaDBOpsRequest = "mariadbopsrequest"
	ResourcePluralMariaDBOpsRequest   = "mariadbopsrequests"
)
View Source
const (
	ResourceCodeMemcachedOpsRequest     = "mcops"
	ResourceKindMemcachedOpsRequest     = "MemcachedOpsRequest"
	ResourceSingularMemcachedOpsRequest = "memcachedopsrequest"
	ResourcePluralMemcachedOpsRequest   = "memcachedopsrequests"
)
View Source
const (
	ResourceCodeMongoDBOpsRequest     = "mgops"
	ResourceKindMongoDBOpsRequest     = "MongoDBOpsRequest"
	ResourceSingularMongoDBOpsRequest = "mongodbopsrequest"
	ResourcePluralMongoDBOpsRequest   = "mongodbopsrequests"
)
View Source
const (
	ResourceCodeMySQLOpsRequest     = "myops"
	ResourceKindMySQLOpsRequest     = "MySQLOpsRequest"
	ResourceSingularMySQLOpsRequest = "mysqlopsrequest"
	ResourcePluralMySQLOpsRequest   = "mysqlopsrequests"
)
View Source
const (
	ResourceCodePerconaXtraDBOpsRequest     = "pxcops"
	ResourceKindPerconaXtraDBOpsRequest     = "PerconaXtraDBOpsRequest"
	ResourceSingularPerconaXtraDBOpsRequest = "perconaxtradbopsrequest"
	ResourcePluralPerconaXtraDBOpsRequest   = "perconaxtradbopsrequests"
)
View Source
const (
	ResourceCodePgBouncerOpsRequest     = "pbops"
	ResourceKindPgBouncerOpsRequest     = "PgBouncerOpsRequest"
	ResourceSingularPgBouncerOpsRequest = "pgbounceropsrequest"
	ResourcePluralPgBouncerOpsRequest   = "pgbounceropsrequests"
)
View Source
const (
	ResourceCodePostgresOpsRequest     = "pgops"
	ResourceKindPostgresOpsRequest     = "PostgresOpsRequest"
	ResourceSingularPostgresOpsRequest = "postgresopsrequest"
	ResourcePluralPostgresOpsRequest   = "postgresopsrequests"
)
View Source
const (
	ResourceCodeProxySQLOpsRequest     = "prxops"
	ResourceKindProxySQLOpsRequest     = "ProxySQLOpsRequest"
	ResourceSingularProxySQLOpsRequest = "proxysqlopsrequest"
	ResourcePluralProxySQLOpsRequest   = "proxysqlopsrequests"
)
View Source
const (
	ResourceCodeRedisOpsRequest     = "rdops"
	ResourceKindRedisOpsRequest     = "RedisOpsRequest"
	ResourceSingularRedisOpsRequest = "redisopsrequest"
	ResourcePluralRedisOpsRequest   = "redisopsrequests"
)
View Source
const (
	ResourceCodeRedisSentinelOpsRequest     = "rdsops"
	ResourceKindRedisSentinelOpsRequest     = "RedisSentinelOpsRequest"
	ResourceSingularRedisSentinelOpsRequest = "redissentinelopsrequest"
	ResourcePluralRedisSentinelOpsRequest   = "redissentinelopsrequests"
)
View Source
const (
	AccessApproved               = "Approved"
	AccessDenied                 = "Denied"
	DisableSharding              = "DisableSharding"
	EnableSharding               = "EnableSharding"
	Failed                       = "Failed"
	HorizontalScalingDatabase    = "HorizontalScaling"
	MigratingData                = "MigratingData"
	NodeCreated                  = "NodeCreated"
	NodeDeleted                  = "NodeDeleted"
	NodeRestarted                = "NodeRestarted"
	PauseDatabase                = "PauseDatabase"
	Progressing                  = "Progressing"
	ResumeDatabase               = "ResumeDatabase"
	ScalingDatabase              = "Scaling"
	ScalingDown                  = "ScalingDown"
	ScalingUp                    = "ScalingUp"
	Successful                   = "Successful"
	Running                      = "Running"
	Updating                     = "Updating"
	Upgrading                    = "Upgrading"
	UpgradeVersion               = "UpgradeVersion"
	VerticalScalingDatabase      = "VerticalScaling"
	VotingExclusionAdded         = "VotingExclusionAdded"
	VotingExclusionDeleted       = "VotingExclusionDeleted"
	UpdateStatefulSets           = "UpdateStatefulSets"
	VolumeExpansion              = "VolumeExpansion"
	Reconfigure                  = "Reconfigure"
	UpgradeNodes                 = "UpgradeNodes"
	RestartNodes                 = "RestartNodes"
	TLSRemoved                   = "TLSRemoved"
	TLSAdded                     = "TLSAdded"
	TLSChanged                   = "TLSChanged"
	IssuingConditionUpdated      = "IssuingConditionUpdated"
	CertificateIssuingSuccessful = "CertificateIssuingSuccessful"
	TLSEnabling                  = "TLSEnabling"
	Restart                      = "Restart"
	RestartStatefulSet           = "RestartStatefulSet"
	CertificateSynced            = "CertificateSynced"
	Reconciled                   = "Reconciled"
	RestartStatefulSetPods       = "RestartStatefulSetPods"

	// MongoDB Constants
	StartingBalancer            = "StartingBalancer"
	StoppingBalancer            = "StoppingBalancer"
	UpdateShardImage            = "UpdateShardImage"
	UpdateStatefulSetResources  = "UpdateStatefulSetResources"
	UpdateShardResources        = "UpdateShardResources"
	UpdateArbiterResources      = "UpdateArbiterResources"
	UpdateHiddenResources       = "UpdateHiddenResources"
	ScaleDownShard              = "ScaleDownShard"
	ScaleUpShard                = "ScaleUpShard"
	ScaleDownHidden             = "ScaleDownHidden"
	ScaleUpHidden               = "ScaleUpHidden"
	UpdateReplicaSetImage       = "UpdateReplicaSetImage"
	UpdateConfigServerImage     = "UpdateConfigServerImage"
	UpdateMongosImage           = "UpdateMongosImage"
	UpdateReplicaSetResources   = "UpdateReplicaSetResources"
	UpdateConfigServerResources = "UpdateConfigServerResources"
	UpdateMongosResources       = "UpdateMongosResources"
	FlushRouterConfig           = "FlushRouterConfig"
	ScaleDownReplicaSet         = "ScaleDownReplicaSet"
	ScaleUpReplicaSet           = "ScaleUpReplicaSet"
	ScaleUpShardReplicas        = "ScaleUpShardReplicas"
	ScaleDownShardReplicas      = "ScaleDownShardReplicas"
	ScaleDownConfigServer       = "ScaleDownConfigServer "
	ScaleUpConfigServer         = "ScaleUpConfigServer "
	ScaleMongos                 = "ScaleMongos"
	ReconfigureReplicaset       = "ReconfigureReplicaset"
	ReconfigureStandalone       = "ReconfigureStandalone"
	ReconfigureMongos           = "ReconfigureMongos"
	ReconfigureShard            = "ReconfigureShard"
	ReconfigureConfigServer     = "ReconfigureConfigServer"
	ReconfigureArbiter          = "ReconfigureArbiter"
	ReconfigureHidden           = "ReconfigureHidden"
	UpdateStandaloneImage       = "UpdateStandaloneImage"
	UpdateStandaloneResources   = "UpdateStandaloneResources"
	ScaleDownStandalone         = "ScaleDownStandalone"
	ScaleUpStandalone           = "ScaleUpStandalone"
	StandaloneVolumeExpansion   = "StandaloneVolumeExpansion"
	ReplicasetVolumeExpansion   = "ReplicasetVolumeExpansion"
	ShardVolumeExpansion        = "ShardVolumeExpansion"
	HiddenVolumeExpansion       = "HiddenVolumeExpansion"
	ConfigServerVolumeExpansion = "ConfigServerVolumeExpansion"
	RestartStandalone           = "RestartStandalone"
	RestartReplicaSet           = "RestartReplicaSet"
	RestartMongos               = "RestartMongos"
	RestartConfigServer         = "RestartConfigServer"
	RestartShard                = "RestartShard"
	RestartArbiter              = "RestartArbiter"
	RestartHidden               = "RestartHidden"
	DeleteStatefulSets          = "DeleteStatefulSets"
	DatabaseReady               = "DatabaseReady"

	// Elasticsearch Constant
	OrphanStatefulSetPods      = "OrphanStatefulSetPods"
	ReadyStatefulSets          = "ReadyStatefulSets"
	ScaleMasterNode            = "ScaleMasterNode"
	ScaleDataNode              = "ScaleDataNode"
	ScaleDataHotNode           = "ScaleDataHotNode"
	ScaleDataWarmNode          = "ScaleDataWarmNode"
	ScaleDataColdNode          = "ScaleDataColdNode"
	ScaleDataFrozenNode        = "ScaleDataFrozenNode"
	ScaleDataContentNode       = "ScaleDataContentNode"
	ScaleMLNode                = "ScaleMLNode"
	ScaleTransformNode         = "ScaleTransformNode"
	ScaleCoordinatingNode      = "ScaleCoordinatingNode"
	ScaleIngestNode            = "ScaleIngestNode"
	ScaleCombinedNode          = "ScaleCombinedNode"
	UpdateCombinedNodePVCs     = "UpdateCombinedNodePVCs"
	UpdateMasterNodePVCs       = "UpdateMasterNodePVCs"
	UpdateIngestNodePVCs       = "UpdateIngestNodePVCs"
	UpdateDataNodePVCs         = "UpdateDataNodePVCs"
	UpdateDataContentNodePVCs  = "UpdateDataContentNodePVCs"
	UpdateDataHotNodePVCs      = "UpdateDataHotNodePVCs"
	UpdateDataWarmNodePVCs     = "UpdateDataWarmNodePVCs"
	UpdateDataColdNodePVCs     = "UpdateDataColdNodePVCs"
	UpdateDataFrozenNodePVCs   = "UpdateDataFrozenNodePVCs"
	UpdateMLNodePVCs           = "UpdateMLNodePVCs"
	UpdateTransformNodePVCs    = "UpdateTransformNodePVCs"
	UpdateCoordinatingNodePVCs = "UpdateCoordinatingNodePVCs"
	UpdateElasticsearchCR      = "UpdateElasticsearchCR"

	UpdateNodeResources                = "UpdateNodeResources"
	UpdateMasterStatefulSetResources   = "UpdateMasterStatefulSetResources"
	UpdateDataStatefulSetResources     = "UpdateDataStatefulSetResources"
	UpdateIngestStatefulSetResources   = "UpdateIngestStatefulSetResources"
	UpdateCombinedStatefulSetResources = "UpdateCombinedStatefulSetResources"
	UpdateMasterNodeResources          = "UpdateMasterNodeResources"
	UpdateDataNodeResources            = "UpdateDataNodeResources"
	UpdateIngestNodeResources          = "UpdateIngestNodeResources"
	UpdateCombinedNodeResources        = "UpdateCombinedNodeResources"
	PrepareCustomConfig                = "PrepareCustomConfig"
	PrepareSecureCustomConfig          = "PrepareSecureCustomConfig"
	ReconfigureSecurityAdmin           = "ReconfigureSecurityAdmin"

	// Redis Constants
	PatchedSecret                        = "patchedSecret"
	ConfigKeyRedis                       = "redis.conf"
	RedisTLSArg                          = "--tls-port 6379"
	DBReady                              = "DBReady"
	RestartedPods                        = "RestartedPods"
	ScaleUpReplicas                      = "ScaleUpReplicas"
	ScaleDownReplicas                    = "ScaleDownReplicas"
	ScaleUpSentinel                      = "ScaleUpSentinel"
	ScaleDownSentinel                    = "ScaleDownSentinel"
	UpdateRedisImage                     = "UpdateRedisImage"
	RestartPodWithResources              = "RestartedPodsWithResources"
	ReplaceSentinel                      = "ReplaceSentinel"
	ScaleUpRedisReplicasInSentinelMode   = "ScaleUpRedisReplicasInSentinelMode"
	ScaleDownRedisReplicasInSentinelMode = "ScaleDownRedisReplicasInSentinelMode"

	// Stash Constants
	PauseBackupConfiguration  = "PauseBackupConfiguration"
	ResumeBackupConfiguration = "ResumeBackupConfiguration"
	// Postgres Constants
	UpdatePrimaryPodImage = "UpdatePrimaryImage"
	UpdateStandbyPodImage = "UpdateStandbyPodImage"
	// PausePgCoordinator is used when need to pause postgres failover with pg coordinator.
	// This is useful when we don't want failover for a certain period.
	PausePgCoordinator = "PausePgCoordinator"
	// ResumePgCoordinator is used when need to resume postgres failover with pg coordinator.
	// This is set when we are done with all the process necessary to do failover again.
	ResumePgCoordinator = "ResumePgCoordinator"
	// DataDirectoryInitialized condition is used in major upgrade ops request.
	// In major upgrade we need to initialized new directory wit initDB to run pg_upgrade.
	DataDirectoryInitialized = "DataDirectoryInitialized"
	// PgUpgraded is set when pg_upgrade command ran successfully.
	// This is used in major upgrade.
	PgUpgraded = "PgUpgraded"
	// ReplacedDataDirectory condition is used in major upgrade. After pg_upgrade we need to replace old data directory with new one.
	// after replace data directory successfully set this condition true.
	ReplacedDataDirectory                   = "ReplacedDataDirectory"
	PgCoordinatorStatusResumeDefaultPrimary = "ResumeDefaultPrimary"
	PostgresPrimaryPodReady                 = "PostgresPrimaryPodReady"
	RestartPrimaryPods                      = "RestartPrimaryPods"
	RestartStandbyPods                      = "RestartStandbyPods"
	// TransferLeaderShipToFirstNode is set when we need to set the pod-0 as primary.
	// This condition is set after pod-0 restart process done.
	TransferLeaderShipToFirstNode = "TransferPrimaryRoleToDefault"
	// TransferLeaderShipToFirstNodeBeforeCoordinatorPaused is set when we need to set the pod-0 as primary Before pgcoordinator paused
	// This is the initial step where we need to set pod-0 as primary. the condition is set before the pod-0 restart process.
	TransferLeaderShipToFirstNodeBeforeCoordinatorPaused = "TransferLeaderShipToFirstNodeBeforeCoordinatorPaused"
	// CopiedOldBinaries condition is used when we are done copying old postgres binary.
	// This is needed when we are doing major upgrade.
	CopiedOldBinaries      = "CopiedOldBinaries"
	UpdateStatefulSetImage = "UpdateStatefulSetImage"
	// ResumePrimaryPgCoordinator condition is set when we have set pg-coordinator status to NonTranferableResume this is useful when primary need to run after restart.
	ResumePrimaryPgCoordinator = "NonTransferableResumePgCoordinator"

	ReconfigurePrimaryPod  = "ReconfigurePrimaryPod"
	ReconfigureStandbyPods = "ReconfigureStandbyPods"

	// MySQL/MariaDB Constants
	TempIniFilesPath = "/tmp/kubedb-custom-ini-files"
)

List of possible condition types for a ops request

Variables

View Source
var (
	// TODO: move SchemeBuilder with zz_generated.deepcopy.go to k8s.io/api.
	// localSchemeBuilder and AddToScheme will stay in k8s.io/kubernetes.
	SchemeBuilder runtime.SchemeBuilder

	AddToScheme = localSchemeBuilder.AddToScheme
)
View Source
var SchemeGroupVersion = schema.GroupVersion{Group: ops.GroupName, Version: "v1alpha1"}

Functions

func Kind

func Kind(kind string) schema.GroupKind

Kind takes an unqualified kind and returns a Group qualified GroupKind

func Resource

func Resource(resource string) schema.GroupResource

Resource takes an unqualified resource and returns a Group qualified GroupResource

Types

type Accessor added in v0.28.1

type Accessor interface {
	GetObjectMeta() metav1.ObjectMeta
	GetRequestType() string
	GetDBRefName() string
	GetStatus() OpsRequestStatus
	SetStatus(_ OpsRequestStatus)
}

type ApplyOption added in v0.28.0

type ApplyOption string

+kubebuilder:validation:Enum=IfReady;Always

const (
	ApplyOptionIfReady ApplyOption = "IfReady"
	ApplyOptionAlways  ApplyOption = "Always"
)

type ConfigNode

type ConfigNode struct {
	Replicas int32 `json:"replicas,omitempty"`
}

ConfigNode is the spec for mongodb ConfigServer

func (*ConfigNode) DeepCopy

func (in *ConfigNode) DeepCopy() *ConfigNode

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

func (*ConfigNode) DeepCopyInto

func (in *ConfigNode) DeepCopyInto(out *ConfigNode)

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

type ElasticsearchCustomConfiguration

type ElasticsearchCustomConfiguration struct {
	ConfigMap *core.LocalObjectReference `json:"configMap,omitempty"`
	Data      map[string]string          `json:"data,omitempty"`
	Remove    bool                       `json:"remove,omitempty"`
}

func (*ElasticsearchCustomConfiguration) DeepCopy

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

func (*ElasticsearchCustomConfiguration) DeepCopyInto

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

type ElasticsearchCustomConfigurationSpec

type ElasticsearchCustomConfigurationSpec struct {
	// ConfigSecret is an optional field to provide custom configuration file for database.
	// +optional
	ConfigSecret *core.LocalObjectReference `json:"configSecret,omitempty"`
	// SecureConfigSecret is an optional field to provide secure settings for database.
	//	- Ref: https://www.elastic.co/guide/en/elasticsearch/reference/7.14/secure-settings.html
	// +optional
	SecureConfigSecret *core.LocalObjectReference `json:"secureConfigSecret,omitempty"`
	// ApplyConfig is an optional field to provide Elasticsearch configuration.
	// Provided configuration will be applied to config files stored in ConfigSecret.
	// If the ConfigSecret is missing, the operator will create a new k8s secret by the
	// following naming convention: {db-name}-user-config .
	// Expected input format:
	//	applyConfig:
	//		file-name.yml: |
	//			key: value
	//		elasticsearch.yml: |
	//			thread_pool:
	//				write:
	//					size: 30
	// +optional
	ApplyConfig map[string]string `json:"applyConfig,omitempty"`
	// If set to "true", the user provided configuration will be removed.
	// The Elasticsearch cluster will start will default configuration that is generated by the operator.
	// +optional
	RemoveCustomConfig bool `json:"removeCustomConfig,omitempty"`
	// If set to "true", the user provided secure settings will be removed.
	// The elasticsearch.keystore will start will default password (i.e. "").
	// +optional
	RemoveSecureCustomConfig bool `json:"removeSecureCustomConfig,omitempty"`
}

ElasticsearchCustomConfigurationSpec is the spec for Reconfiguring the Elasticsearch Settings

func (*ElasticsearchCustomConfigurationSpec) DeepCopy

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

func (*ElasticsearchCustomConfigurationSpec) DeepCopyInto

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

type ElasticsearchHorizontalScalingSpec

type ElasticsearchHorizontalScalingSpec struct {
	// Number of combined (i.e. master, data, ingest) node
	Node *int32 `json:"node,omitempty"`
	// Node topology specification
	Topology *ElasticsearchHorizontalScalingTopologySpec `json:"topology,omitempty"`
}

ElasticsearchHorizontalScalingSpec contains the horizontal scaling information of an Elasticsearch cluster

func (*ElasticsearchHorizontalScalingSpec) DeepCopy

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

func (*ElasticsearchHorizontalScalingSpec) DeepCopyInto

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

type ElasticsearchHorizontalScalingTopologySpec added in v0.16.0

type ElasticsearchHorizontalScalingTopologySpec struct {
	// Number of master nodes
	Master *int32 `json:"master,omitempty"`
	// Number of ingest nodes
	Ingest *int32 `json:"ingest,omitempty"`
	// Number of data nodes
	Data         *int32 `json:"data,omitempty"`
	DataContent  *int32 `json:"dataContent,omitempty"`
	DataHot      *int32 `json:"dataHot,omitempty"`
	DataWarm     *int32 `json:"dataWarm,omitempty"`
	DataCold     *int32 `json:"dataCold,omitempty"`
	DataFrozen   *int32 `json:"dataFrozen,omitempty"`
	ML           *int32 `json:"ml,omitempty"`
	Transform    *int32 `json:"transform,omitempty"`
	Coordinating *int32 `json:"coordinating,omitempty"`
}

ElasticsearchHorizontalScalingTopologySpec contains the horizontal scaling information in cluster topology mode

func (*ElasticsearchHorizontalScalingTopologySpec) DeepCopy added in v0.16.0

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

func (*ElasticsearchHorizontalScalingTopologySpec) DeepCopyInto added in v0.16.0

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

type ElasticsearchOpsRequest

type ElasticsearchOpsRequest struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              ElasticsearchOpsRequestSpec `json:"spec,omitempty"`
	Status            OpsRequestStatus            `json:"status,omitempty"`
}

+kubebuilder:object:root=true +kubebuilder:resource:path=elasticsearchopsrequests,singular=elasticsearchopsrequest,shortName=esops,categories={datastore,kubedb,appscode} +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Type",type="string",JSONPath=".spec.type" +kubebuilder:printcolumn:name="Status",type="string",JSONPath=".status.phase" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp"

func (ElasticsearchOpsRequest) CustomResourceDefinition

func (_ ElasticsearchOpsRequest) CustomResourceDefinition() *apiextensions.CustomResourceDefinition

func (*ElasticsearchOpsRequest) DeepCopy

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

func (*ElasticsearchOpsRequest) DeepCopyInto

func (in *ElasticsearchOpsRequest) DeepCopyInto(out *ElasticsearchOpsRequest)

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

func (*ElasticsearchOpsRequest) DeepCopyObject

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

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

func (*ElasticsearchOpsRequest) GetDBRefName added in v0.28.1

func (e *ElasticsearchOpsRequest) GetDBRefName() string

func (*ElasticsearchOpsRequest) GetObjectMeta added in v0.28.1

func (e *ElasticsearchOpsRequest) GetObjectMeta() metav1.ObjectMeta

func (*ElasticsearchOpsRequest) GetRequestType added in v0.28.1

func (e *ElasticsearchOpsRequest) GetRequestType() string

func (*ElasticsearchOpsRequest) GetStatus added in v0.28.1

func (ElasticsearchOpsRequest) ResourceFQN added in v0.16.0

func (e ElasticsearchOpsRequest) ResourceFQN() string

func (ElasticsearchOpsRequest) ResourceKind

func (e ElasticsearchOpsRequest) ResourceKind() string

func (ElasticsearchOpsRequest) ResourcePlural

func (e ElasticsearchOpsRequest) ResourcePlural() string

func (ElasticsearchOpsRequest) ResourceShortCode

func (e ElasticsearchOpsRequest) ResourceShortCode() string

func (ElasticsearchOpsRequest) ResourceSingular

func (e ElasticsearchOpsRequest) ResourceSingular() string

func (*ElasticsearchOpsRequest) SetStatus added in v0.28.1

func (e *ElasticsearchOpsRequest) SetStatus(s OpsRequestStatus)

func (ElasticsearchOpsRequest) ValidateSpecs

func (e ElasticsearchOpsRequest) ValidateSpecs() error

type ElasticsearchOpsRequestList

type ElasticsearchOpsRequestList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of ElasticsearchOpsRequest CRD objects
	Items []ElasticsearchOpsRequest `json:"items,omitempty"`
}

ElasticsearchOpsRequestList is a list of ElasticsearchOpsRequests

func (*ElasticsearchOpsRequestList) DeepCopy

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

func (*ElasticsearchOpsRequestList) DeepCopyInto

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

func (*ElasticsearchOpsRequestList) DeepCopyObject

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

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

type ElasticsearchOpsRequestSpec

type ElasticsearchOpsRequestSpec struct {
	// Specifies the Elasticsearch reference
	DatabaseRef core.LocalObjectReference `json:"databaseRef"`
	// Specifies the ops request type: Upgrade, HorizontalScaling, VerticalScaling etc.
	Type ElasticsearchOpsRequestType `json:"type"`
	// Specifies information necessary for upgrading Elasticsearch
	Upgrade *ElasticsearchUpgradeSpec `json:"upgrade,omitempty"`
	// Specifies information necessary for horizontal scaling
	HorizontalScaling *ElasticsearchHorizontalScalingSpec `json:"horizontalScaling,omitempty"`
	// Specifies information necessary for vertical scaling
	VerticalScaling *ElasticsearchVerticalScalingSpec `json:"verticalScaling,omitempty"`
	// Specifies information necessary for volume expansion
	VolumeExpansion *ElasticsearchVolumeExpansionSpec `json:"volumeExpansion,omitempty"`
	// Specifies information necessary for custom configuration of Elasticsearch
	Configuration *ElasticsearchCustomConfigurationSpec `json:"configuration,omitempty"`
	// Specifies information necessary for configuring TLS
	TLS *TLSSpec `json:"tls,omitempty"`
	// Specifies information necessary for restarting database
	Restart *RestartSpec `json:"restart,omitempty"`
	// Timeout for each step of the ops request in second. If a step doesn't finish within the specified timeout, the ops request will result in failure.
	Timeout *metav1.Duration `json:"timeout,omitempty"`
	// ApplyOption is to control the execution of OpsRequest depending on the database state.
	// +kubebuilder:default="IfReady"
	Apply ApplyOption `json:"apply,omitempty"`
}

ElasticsearchOpsRequestSpec is the spec for ElasticsearchOpsRequest

func (*ElasticsearchOpsRequestSpec) DeepCopy

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

func (*ElasticsearchOpsRequestSpec) DeepCopyInto

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

type ElasticsearchOpsRequestType added in v0.29.0

type ElasticsearchOpsRequestType string

+kubebuilder:validation:Enum=Upgrade;UpdateVersion;HorizontalScaling;VerticalScaling;VolumeExpansion;Restart;Reconfigure;ReconfigureTLS

const (
	// Deprecated. Use UpdateVersion
	ElasticsearchOpsRequestTypeUpgrade ElasticsearchOpsRequestType = "Upgrade"
	// used for UpdateVersion operation
	ElasticsearchOpsRequestTypeUpdateVersion ElasticsearchOpsRequestType = "UpdateVersion"
	// used for HorizontalScaling operation
	ElasticsearchOpsRequestTypeHorizontalScaling ElasticsearchOpsRequestType = "HorizontalScaling"
	// used for VerticalScaling operation
	ElasticsearchOpsRequestTypeVerticalScaling ElasticsearchOpsRequestType = "VerticalScaling"
	// used for VolumeExpansion operation
	ElasticsearchOpsRequestTypeVolumeExpansion ElasticsearchOpsRequestType = "VolumeExpansion"
	// used for Restart operation
	ElasticsearchOpsRequestTypeRestart ElasticsearchOpsRequestType = "Restart"
	// used for Reconfigure operation
	ElasticsearchOpsRequestTypeReconfigure ElasticsearchOpsRequestType = "Reconfigure"
	// used for ReconfigureTLS operation
	ElasticsearchOpsRequestTypeReconfigureTLSs ElasticsearchOpsRequestType = "ReconfigureTLS"
)

type ElasticsearchReplicaReadinessCriteria

type ElasticsearchReplicaReadinessCriteria struct{}

ElasticsearchReplicaReadinessCriteria is the criteria for checking readiness of an Elasticsearch database

func (*ElasticsearchReplicaReadinessCriteria) DeepCopy

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

func (*ElasticsearchReplicaReadinessCriteria) DeepCopyInto

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

type ElasticsearchUpgradeSpec

type ElasticsearchUpgradeSpec struct {
	// Specifies the target version name from catalog
	TargetVersion string `json:"targetVersion,omitempty"`
}

func (*ElasticsearchUpgradeSpec) DeepCopy

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

func (*ElasticsearchUpgradeSpec) DeepCopyInto

func (in *ElasticsearchUpgradeSpec) DeepCopyInto(out *ElasticsearchUpgradeSpec)

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

type ElasticsearchVerticalScalingSpec

type ElasticsearchVerticalScalingSpec struct {
	// Resource spec for combined nodes
	Node *core.ResourceRequirements `json:"node,omitempty"`
	// Resource spec for exporter sidecar
	Exporter *core.ResourceRequirements `json:"exporter,omitempty"`
	// Specifies the resource spec for cluster in topology mode
	Topology *ElasticsearchVerticalScalingTopologySpec `json:"topology,omitempty"`
}

ElasticsearchVerticalScalingSpec is the spec for Elasticsearch vertical scaling

func (*ElasticsearchVerticalScalingSpec) DeepCopy

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

func (*ElasticsearchVerticalScalingSpec) DeepCopyInto

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

type ElasticsearchVerticalScalingTopologySpec added in v0.16.0

type ElasticsearchVerticalScalingTopologySpec struct {
	Master       *core.ResourceRequirements `json:"master,omitempty"`
	Ingest       *core.ResourceRequirements `json:"ingest,omitempty"`
	Data         *core.ResourceRequirements `json:"data,omitempty"`
	DataContent  *core.ResourceRequirements `json:"dataContent,omitempty"`
	DataHot      *core.ResourceRequirements `json:"dataHot,omitempty"`
	DataWarm     *core.ResourceRequirements `json:"dataWarm,omitempty"`
	DataCold     *core.ResourceRequirements `json:"dataCold,omitempty"`
	DataFrozen   *core.ResourceRequirements `json:"dataFrozen,omitempty"`
	ML           *core.ResourceRequirements `json:"ml,omitempty"`
	Transform    *core.ResourceRequirements `json:"transform,omitempty"`
	Coordinating *core.ResourceRequirements `json:"coordinating,omitempty"`
}

ElasticsearchVerticalScalingTopologySpec is the resource spec in the cluster topology mode

func (*ElasticsearchVerticalScalingTopologySpec) DeepCopy added in v0.16.0

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

func (*ElasticsearchVerticalScalingTopologySpec) DeepCopyInto added in v0.16.0

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

type ElasticsearchVolumeExpansionSpec

type ElasticsearchVolumeExpansionSpec struct {
	// +kubebuilder:default="Online"
	Mode *VolumeExpansionMode `json:"mode,omitempty"`
	// volume specification for combined nodes
	Node *resource.Quantity `json:"node,omitempty"`
	// volume specification for nodes in cluster topology
	Topology *ElasticsearchVolumeExpansionTopologySpec `json:"topology,omitempty"`
}

ElasticsearchVolumeExpansionSpec is the spec for Elasticsearch volume expansion

func (*ElasticsearchVolumeExpansionSpec) DeepCopy

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

func (*ElasticsearchVolumeExpansionSpec) DeepCopyInto

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

type ElasticsearchVolumeExpansionTopologySpec added in v0.16.0

type ElasticsearchVolumeExpansionTopologySpec struct {
	// volume specification for master nodes
	Master *resource.Quantity `json:"master,omitempty"`
	// volume specification for ingest nodes
	Ingest *resource.Quantity `json:"ingest,omitempty"`
	// volume specification for data nodes
	Data         *resource.Quantity `json:"data,omitempty"`
	DataContent  *resource.Quantity `json:"dataContent,omitempty"`
	DataHot      *resource.Quantity `json:"dataHot,omitempty"`
	DataWarm     *resource.Quantity `json:"dataWarm,omitempty"`
	DataCold     *resource.Quantity `json:"dataCold,omitempty"`
	DataFrozen   *resource.Quantity `json:"dataFrozen,omitempty"`
	ML           *resource.Quantity `json:"ml,omitempty"`
	Transform    *resource.Quantity `json:"transform,omitempty"`
	Coordinating *resource.Quantity `json:"coordinating,omitempty"`
}

ElasticsearchVolumeExpansionTopologySpec is the spec for Elasticsearch volume expansion in topology mode

func (*ElasticsearchVolumeExpansionTopologySpec) DeepCopy added in v0.16.0

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

func (*ElasticsearchVolumeExpansionTopologySpec) DeepCopyInto added in v0.16.0

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

type EtcdCustomConfiguration

type EtcdCustomConfiguration struct {
	ConfigMap *core.LocalObjectReference `json:"configMap,omitempty"`
	Data      map[string]string          `json:"data,omitempty"`
	Remove    bool                       `json:"remove,omitempty"`
}

func (*EtcdCustomConfiguration) DeepCopy

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

func (*EtcdCustomConfiguration) DeepCopyInto

func (in *EtcdCustomConfiguration) DeepCopyInto(out *EtcdCustomConfiguration)

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

type EtcdCustomConfigurationSpec

type EtcdCustomConfigurationSpec struct{}

func (*EtcdCustomConfigurationSpec) DeepCopy

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

func (*EtcdCustomConfigurationSpec) DeepCopyInto

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

type EtcdHorizontalScalingSpec

type EtcdHorizontalScalingSpec struct{}

HorizontalScaling is the spec for Etcd horizontal scaling

func (*EtcdHorizontalScalingSpec) DeepCopy

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

func (*EtcdHorizontalScalingSpec) DeepCopyInto

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

type EtcdOpsRequest

type EtcdOpsRequest struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              EtcdOpsRequestSpec `json:"spec,omitempty"`
	Status            OpsRequestStatus   `json:"status,omitempty"`
}

+kubebuilder:object:root=true +kubebuilder:resource:path=etcdopsrequests,singular=etcdopsrequest,shortName=etcdops,categories={datastore,kubedb,appscode} +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Type",type="string",JSONPath=".spec.type" +kubebuilder:printcolumn:name="Status",type="string",JSONPath=".status.phase" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp"

func (EtcdOpsRequest) CustomResourceDefinition

func (_ EtcdOpsRequest) CustomResourceDefinition() *apiextensions.CustomResourceDefinition

func (*EtcdOpsRequest) DeepCopy

func (in *EtcdOpsRequest) DeepCopy() *EtcdOpsRequest

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

func (*EtcdOpsRequest) DeepCopyInto

func (in *EtcdOpsRequest) DeepCopyInto(out *EtcdOpsRequest)

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

func (*EtcdOpsRequest) DeepCopyObject

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

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

func (*EtcdOpsRequest) GetDBRefName added in v0.28.1

func (e *EtcdOpsRequest) GetDBRefName() string

func (*EtcdOpsRequest) GetObjectMeta added in v0.28.1

func (e *EtcdOpsRequest) GetObjectMeta() metav1.ObjectMeta

func (*EtcdOpsRequest) GetRequestType added in v0.28.1

func (e *EtcdOpsRequest) GetRequestType() string

func (*EtcdOpsRequest) GetStatus added in v0.28.1

func (e *EtcdOpsRequest) GetStatus() OpsRequestStatus

func (EtcdOpsRequest) ResourceFQN added in v0.16.0

func (e EtcdOpsRequest) ResourceFQN() string

func (EtcdOpsRequest) ResourceKind

func (e EtcdOpsRequest) ResourceKind() string

func (EtcdOpsRequest) ResourcePlural

func (e EtcdOpsRequest) ResourcePlural() string

func (EtcdOpsRequest) ResourceShortCode

func (e EtcdOpsRequest) ResourceShortCode() string

func (EtcdOpsRequest) ResourceSingular

func (e EtcdOpsRequest) ResourceSingular() string

func (*EtcdOpsRequest) SetStatus added in v0.28.1

func (e *EtcdOpsRequest) SetStatus(s OpsRequestStatus)

func (EtcdOpsRequest) ValidateSpecs

func (e EtcdOpsRequest) ValidateSpecs() error

type EtcdOpsRequestList

type EtcdOpsRequestList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of EtcdOpsRequest CRD objects
	Items []EtcdOpsRequest `json:"items,omitempty"`
}

EtcdOpsRequestList is a list of EtcdOpsRequests

func (*EtcdOpsRequestList) DeepCopy

func (in *EtcdOpsRequestList) DeepCopy() *EtcdOpsRequestList

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

func (*EtcdOpsRequestList) DeepCopyInto

func (in *EtcdOpsRequestList) DeepCopyInto(out *EtcdOpsRequestList)

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

func (*EtcdOpsRequestList) DeepCopyObject

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

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

type EtcdOpsRequestSpec

type EtcdOpsRequestSpec struct {
	// Specifies the Etcd reference
	DatabaseRef core.LocalObjectReference `json:"databaseRef"`
	// Specifies the ops request type: Upgrade, HorizontalScaling, VerticalScaling etc.
	Type EtcdOpsRequestType `json:"type"`
	// Specifies information necessary for upgrading Etcd
	Upgrade *EtcdUpgradeSpec `json:"upgrade,omitempty"`
	// Specifies information necessary for horizontal scaling
	HorizontalScaling *EtcdHorizontalScalingSpec `json:"horizontalScaling,omitempty"`
	// Specifies information necessary for vertical scaling
	VerticalScaling *EtcdVerticalScalingSpec `json:"verticalScaling,omitempty"`
	// Specifies information necessary for volume expansion
	VolumeExpansion *EtcdVolumeExpansionSpec `json:"volumeExpansion,omitempty"`
	// Specifies information necessary for custom configuration of Etcd
	Configuration *EtcdCustomConfigurationSpec `json:"configuration,omitempty"`
	// Specifies information necessary for configuring TLS
	TLS *TLSSpec `json:"tls,omitempty"`
	// Specifies information necessary for restarting database
	Restart *RestartSpec `json:"restart,omitempty"`
	// ApplyOption is to control the execution of OpsRequest depending on the database state.
	// +kubebuilder:default="IfReady"
	Apply ApplyOption `json:"apply,omitempty"`
}

EtcdOpsRequestSpec is the spec for EtcdOpsRequest

func (*EtcdOpsRequestSpec) DeepCopy

func (in *EtcdOpsRequestSpec) DeepCopy() *EtcdOpsRequestSpec

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

func (*EtcdOpsRequestSpec) DeepCopyInto

func (in *EtcdOpsRequestSpec) DeepCopyInto(out *EtcdOpsRequestSpec)

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

type EtcdOpsRequestType added in v0.29.0

type EtcdOpsRequestType string

+kubebuilder:validation:Enum=UpdateVersion;HorizontalScaling;VerticalScaling;VolumeExpansion;Restart;Reconfigure;ReconfigureTLS

const (
	// used for UpdateVersion operation
	EtcdOpsRequestTypeUpdateVersion EtcdOpsRequestType = "UpdateVersion"
	// used for HorizontalScaling operation
	EtcdOpsRequestTypeHorizontalScaling EtcdOpsRequestType = "HorizontalScaling"
	// used for VerticalScaling operation
	EtcdOpsRequestTypeVerticalScaling EtcdOpsRequestType = "VerticalScaling"
	// used for VolumeExpansion operation
	EtcdOpsRequestTypeVolumeExpansion EtcdOpsRequestType = "VolumeExpansion"
	// used for Restart operation
	EtcdOpsRequestTypeRestart EtcdOpsRequestType = "Restart"
	// used for Reconfigure operation
	EtcdOpsRequestTypeReconfigure EtcdOpsRequestType = "Reconfigure"
	// used for ReconfigureTLS operation
	EtcdOpsRequestTypeReconfigureTLSs EtcdOpsRequestType = "ReconfigureTLS"
)

type EtcdReplicaReadinessCriteria

type EtcdReplicaReadinessCriteria struct{}

EtcdReplicaReadinessCriteria is the criteria for checking readiness of a Etcd pod after updating, horizontal scaling etc.

func (*EtcdReplicaReadinessCriteria) DeepCopy

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

func (*EtcdReplicaReadinessCriteria) DeepCopyInto

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

type EtcdUpgradeSpec

type EtcdUpgradeSpec struct {
	// Specifies the target version name from catalog
	TargetVersion     string                        `json:"targetVersion,omitempty"`
	ReadinessCriteria *EtcdReplicaReadinessCriteria `json:"readinessCriteria,omitempty"`
}

func (*EtcdUpgradeSpec) DeepCopy

func (in *EtcdUpgradeSpec) DeepCopy() *EtcdUpgradeSpec

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

func (*EtcdUpgradeSpec) DeepCopyInto

func (in *EtcdUpgradeSpec) DeepCopyInto(out *EtcdUpgradeSpec)

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

type EtcdVerticalScalingSpec

type EtcdVerticalScalingSpec struct {
	ReadinessCriteria *EtcdReplicaReadinessCriteria `json:"readinessCriteria,omitempty"`
}

EtcdVerticalScalingSpec is the spec for Etcd vertical scaling

func (*EtcdVerticalScalingSpec) DeepCopy

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

func (*EtcdVerticalScalingSpec) DeepCopyInto

func (in *EtcdVerticalScalingSpec) DeepCopyInto(out *EtcdVerticalScalingSpec)

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

type EtcdVolumeExpansionSpec

type EtcdVolumeExpansionSpec struct{}

EtcdVolumeExpansionSpec is the spec for Etcd volume expansion

func (*EtcdVolumeExpansionSpec) DeepCopy

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

func (*EtcdVolumeExpansionSpec) DeepCopyInto

func (in *EtcdVolumeExpansionSpec) DeepCopyInto(out *EtcdVolumeExpansionSpec)

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

type HiddenNode added in v0.29.0

type HiddenNode struct {
	Replicas int32 `json:"replicas,omitempty"`
}

func (*HiddenNode) DeepCopy added in v0.29.0

func (in *HiddenNode) DeepCopy() *HiddenNode

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

func (*HiddenNode) DeepCopyInto added in v0.29.0

func (in *HiddenNode) DeepCopyInto(out *HiddenNode)

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

type MariaDBCustomConfiguration

type MariaDBCustomConfiguration struct {
	ConfigMap *core.LocalObjectReference `json:"configMap,omitempty"`
	Data      map[string]string          `json:"data,omitempty"`
	Remove    bool                       `json:"remove,omitempty"`
}

func (*MariaDBCustomConfiguration) DeepCopy

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

func (*MariaDBCustomConfiguration) DeepCopyInto

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

type MariaDBCustomConfigurationSpec

type MariaDBCustomConfigurationSpec struct {
	// ConfigSecret is an optional field to provide custom configuration file for database.
	// +optional
	ConfigSecret *core.LocalObjectReference `json:"configSecret,omitempty"`
	// Deprecated
	InlineConfig string `json:"inlineConfig,omitempty"`
	// If set to "true", the user provided configuration will be removed.
	// MariaDB will start will default configuration that is generated by the operator.
	// +optional
	RemoveCustomConfig bool `json:"removeCustomConfig,omitempty"`
	// ApplyConfig is an optional field to provide MariaDB configuration.
	// Provided configuration will be applied to config files stored in ConfigSecret.
	// If the ConfigSecret is missing, the operator will create a new k8s secret by the
	// following naming convention: {db-name}-user-config .
	// Expected input format:
	//	applyConfig:
	//		file-name.cnf: |
	//			[mysqld]
	//			key1: value1
	//			key2: value2
	// +optional
	ApplyConfig map[string]string `json:"applyConfig,omitempty"`
}

func (*MariaDBCustomConfigurationSpec) DeepCopy

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

func (*MariaDBCustomConfigurationSpec) DeepCopyInto

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

type MariaDBHorizontalScalingSpec

type MariaDBHorizontalScalingSpec struct {
	// Number of nodes/members of the group
	Member *int32 `json:"member,omitempty"`
	// specifies the weight of the current member/Node
	MemberWeight int32 `json:"memberWeight,omitempty"`
}

func (*MariaDBHorizontalScalingSpec) DeepCopy

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

func (*MariaDBHorizontalScalingSpec) DeepCopyInto

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

type MariaDBOpsRequest

type MariaDBOpsRequest struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              MariaDBOpsRequestSpec `json:"spec,omitempty"`
	Status            OpsRequestStatus      `json:"status,omitempty"`
}

+kubebuilder:object:root=true +kubebuilder:resource:path=mariadbopsrequests,singular=mariadbopsrequest,shortName=mariaops,categories={datastore,kubedb,appscode} +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Type",type="string",JSONPath=".spec.type" +kubebuilder:printcolumn:name="Status",type="string",JSONPath=".status.phase" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp"

func (MariaDBOpsRequest) CustomResourceDefinition

func (_ MariaDBOpsRequest) CustomResourceDefinition() *apiextensions.CustomResourceDefinition

func (*MariaDBOpsRequest) DeepCopy

func (in *MariaDBOpsRequest) DeepCopy() *MariaDBOpsRequest

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

func (*MariaDBOpsRequest) DeepCopyInto

func (in *MariaDBOpsRequest) DeepCopyInto(out *MariaDBOpsRequest)

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

func (*MariaDBOpsRequest) DeepCopyObject

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

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

func (*MariaDBOpsRequest) GetDBRefName added in v0.28.1

func (e *MariaDBOpsRequest) GetDBRefName() string

func (MariaDBOpsRequest) GetKey

func (m MariaDBOpsRequest) GetKey() string

func (*MariaDBOpsRequest) GetObjectMeta added in v0.28.1

func (e *MariaDBOpsRequest) GetObjectMeta() metav1.ObjectMeta

func (*MariaDBOpsRequest) GetRequestType added in v0.28.1

func (e *MariaDBOpsRequest) GetRequestType() string

func (*MariaDBOpsRequest) GetStatus added in v0.28.1

func (e *MariaDBOpsRequest) GetStatus() OpsRequestStatus

func (MariaDBOpsRequest) OffshootLabels

func (m MariaDBOpsRequest) OffshootLabels() map[string]string

func (MariaDBOpsRequest) OffshootName

func (m MariaDBOpsRequest) OffshootName() string

func (MariaDBOpsRequest) OffshootSelectors

func (m MariaDBOpsRequest) OffshootSelectors() map[string]string

func (MariaDBOpsRequest) ResourceFQN added in v0.16.0

func (m MariaDBOpsRequest) ResourceFQN() string

func (MariaDBOpsRequest) ResourceKind

func (m MariaDBOpsRequest) ResourceKind() string

func (MariaDBOpsRequest) ResourcePlural

func (m MariaDBOpsRequest) ResourcePlural() string

func (MariaDBOpsRequest) ResourceShortCode

func (m MariaDBOpsRequest) ResourceShortCode() string

func (MariaDBOpsRequest) ResourceSingular

func (m MariaDBOpsRequest) ResourceSingular() string

func (*MariaDBOpsRequest) SetStatus added in v0.28.1

func (e *MariaDBOpsRequest) SetStatus(s OpsRequestStatus)

func (MariaDBOpsRequest) ValidateSpecs

func (m MariaDBOpsRequest) ValidateSpecs() error

type MariaDBOpsRequestList

type MariaDBOpsRequestList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of MariaDBOpsRequest CRD objects
	Items []MariaDBOpsRequest `json:"items,omitempty"`
}

MariaDBOpsRequestList is a list of MariaDBOpsRequests

func (*MariaDBOpsRequestList) DeepCopy

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

func (*MariaDBOpsRequestList) DeepCopyInto

func (in *MariaDBOpsRequestList) DeepCopyInto(out *MariaDBOpsRequestList)

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

func (*MariaDBOpsRequestList) DeepCopyObject

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

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

type MariaDBOpsRequestSpec

type MariaDBOpsRequestSpec struct {
	// Specifies the MariaDB reference
	DatabaseRef core.LocalObjectReference `json:"databaseRef"`
	// Specifies the ops request type: Upgrade, HorizontalScaling, VerticalScaling etc.
	Type MariaDBOpsRequestType `json:"type"`
	// Specifies information necessary for upgrading MariaDB
	Upgrade *MariaDBUpgradeSpec `json:"upgrade,omitempty"`
	// Specifies information necessary for horizontal scaling
	HorizontalScaling *MariaDBHorizontalScalingSpec `json:"horizontalScaling,omitempty"`
	// Specifies information necessary for vertical scaling
	VerticalScaling *MariaDBVerticalScalingSpec `json:"verticalScaling,omitempty"`
	// Specifies information necessary for volume expansion
	VolumeExpansion *MariaDBVolumeExpansionSpec `json:"volumeExpansion,omitempty"`
	// Specifies information necessary for custom configuration of MariaDB
	Configuration *MariaDBCustomConfigurationSpec `json:"configuration,omitempty"`
	// Specifies information necessary for configuring TLS
	TLS *MariaDBTLSSpec `json:"tls,omitempty"`
	// Specifies information necessary for restarting database
	Restart *RestartSpec `json:"restart,omitempty"`
	// Timeout for each step of the ops request in second. If a step doesn't finish within the specified timeout, the ops request will result in failure.
	Timeout *metav1.Duration `json:"timeout,omitempty"`
	// ApplyOption is to control the execution of OpsRequest depending on the database state.
	// +kubebuilder:default="IfReady"
	Apply ApplyOption `json:"apply,omitempty"`
}

MariaDBOpsRequestSpec is the spec for MariaDBOpsRequest

func (*MariaDBOpsRequestSpec) DeepCopy

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

func (*MariaDBOpsRequestSpec) DeepCopyInto

func (in *MariaDBOpsRequestSpec) DeepCopyInto(out *MariaDBOpsRequestSpec)

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

type MariaDBOpsRequestType added in v0.29.0

type MariaDBOpsRequestType string

+kubebuilder:validation:Enum=Upgrade;UpdateVersion;HorizontalScaling;VerticalScaling;VolumeExpansion;Restart;Reconfigure;ReconfigureTLS

const (
	// Deprecated. Use UpdateVersion
	MariaDBOpsRequestTypeUpgrade MariaDBOpsRequestType = "Upgrade"
	// used for UpdateVersion operation
	MariaDBOpsRequestTypeUpdateVersion MariaDBOpsRequestType = "UpdateVersion"
	// used for HorizontalScaling operation
	MariaDBOpsRequestTypeHorizontalScaling MariaDBOpsRequestType = "HorizontalScaling"
	// used for VerticalScaling operation
	MariaDBOpsRequestTypeVerticalScaling MariaDBOpsRequestType = "VerticalScaling"
	// used for VolumeExpansion operation
	MariaDBOpsRequestTypeVolumeExpansion MariaDBOpsRequestType = "VolumeExpansion"
	// used for Restart operation
	MariaDBOpsRequestTypeRestart MariaDBOpsRequestType = "Restart"
	// used for Reconfigure operation
	MariaDBOpsRequestTypeReconfigure MariaDBOpsRequestType = "Reconfigure"
	// used for ReconfigureTLS operation
	MariaDBOpsRequestTypeReconfigureTLSs MariaDBOpsRequestType = "ReconfigureTLS"
)

type MariaDBReplicaReadinessCriteria

type MariaDBReplicaReadinessCriteria struct{}

MariaDBReplicaReadinessCriteria is the criteria for checking readiness of an MariaDB database

func (*MariaDBReplicaReadinessCriteria) DeepCopy

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

func (*MariaDBReplicaReadinessCriteria) DeepCopyInto

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

type MariaDBTLSSpec added in v0.19.0

type MariaDBTLSSpec struct {
	TLSSpec `json:",inline,omitempty"`

	// Indicates that the database server need to be encrypted connections(ssl)
	// +optional
	RequireSSL *bool `json:"requireSSL,omitempty"`
}

func (*MariaDBTLSSpec) DeepCopy added in v0.19.0

func (in *MariaDBTLSSpec) DeepCopy() *MariaDBTLSSpec

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

func (*MariaDBTLSSpec) DeepCopyInto added in v0.19.0

func (in *MariaDBTLSSpec) DeepCopyInto(out *MariaDBTLSSpec)

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

type MariaDBUpgradeSpec

type MariaDBUpgradeSpec struct {
	// Specifies the target version name from catalog
	TargetVersion string `json:"targetVersion,omitempty"`
}

func (*MariaDBUpgradeSpec) DeepCopy

func (in *MariaDBUpgradeSpec) DeepCopy() *MariaDBUpgradeSpec

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

func (*MariaDBUpgradeSpec) DeepCopyInto

func (in *MariaDBUpgradeSpec) DeepCopyInto(out *MariaDBUpgradeSpec)

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

type MariaDBVerticalScalingSpec

type MariaDBVerticalScalingSpec struct {
	MariaDB     *core.ResourceRequirements `json:"mariadb,omitempty"`
	Exporter    *core.ResourceRequirements `json:"exporter,omitempty"`
	Coordinator *core.ResourceRequirements `json:"coordinator,omitempty"`
}

func (*MariaDBVerticalScalingSpec) DeepCopy

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

func (*MariaDBVerticalScalingSpec) DeepCopyInto

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

type MariaDBVolumeExpansionSpec

type MariaDBVolumeExpansionSpec struct {
	MariaDB *resource.Quantity   `json:"mariadb,omitempty"`
	Mode    *VolumeExpansionMode `json:"mode,omitempty"`
}

MariaDBVolumeExpansionSpec is the spec for MariaDB volume expansion

func (*MariaDBVolumeExpansionSpec) DeepCopy

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

func (*MariaDBVolumeExpansionSpec) DeepCopyInto

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

type MemcachedCustomConfiguration

type MemcachedCustomConfiguration struct {
	ConfigMap *core.LocalObjectReference `json:"configMap,omitempty"`
	Data      map[string]string          `json:"data,omitempty"`
	Remove    bool                       `json:"remove,omitempty"`
}

func (*MemcachedCustomConfiguration) DeepCopy

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

func (*MemcachedCustomConfiguration) DeepCopyInto

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

type MemcachedCustomConfigurationSpec

type MemcachedCustomConfigurationSpec struct{}

func (*MemcachedCustomConfigurationSpec) DeepCopy

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

func (*MemcachedCustomConfigurationSpec) DeepCopyInto

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

type MemcachedHorizontalScalingSpec

type MemcachedHorizontalScalingSpec struct{}

HorizontalScaling is the spec for Memcached horizontal scaling

func (*MemcachedHorizontalScalingSpec) DeepCopy

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

func (*MemcachedHorizontalScalingSpec) DeepCopyInto

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

type MemcachedOpsRequest

type MemcachedOpsRequest struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              MemcachedOpsRequestSpec `json:"spec,omitempty"`
	Status            OpsRequestStatus        `json:"status,omitempty"`
}

+kubebuilder:object:root=true +kubebuilder:resource:path=memcachedopsrequests,singular=memcachedopsrequest,shortName=mcops,categories={datastore,kubedb,appscode} +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Type",type="string",JSONPath=".spec.type" +kubebuilder:printcolumn:name="Status",type="string",JSONPath=".status.phase" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp"

func (MemcachedOpsRequest) CustomResourceDefinition

func (_ MemcachedOpsRequest) CustomResourceDefinition() *apiextensions.CustomResourceDefinition

func (*MemcachedOpsRequest) DeepCopy

func (in *MemcachedOpsRequest) DeepCopy() *MemcachedOpsRequest

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

func (*MemcachedOpsRequest) DeepCopyInto

func (in *MemcachedOpsRequest) DeepCopyInto(out *MemcachedOpsRequest)

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

func (*MemcachedOpsRequest) DeepCopyObject

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

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

func (*MemcachedOpsRequest) GetDBRefName added in v0.28.1

func (e *MemcachedOpsRequest) GetDBRefName() string

func (*MemcachedOpsRequest) GetObjectMeta added in v0.28.1

func (e *MemcachedOpsRequest) GetObjectMeta() metav1.ObjectMeta

func (*MemcachedOpsRequest) GetRequestType added in v0.28.1

func (e *MemcachedOpsRequest) GetRequestType() string

func (*MemcachedOpsRequest) GetStatus added in v0.28.1

func (e *MemcachedOpsRequest) GetStatus() OpsRequestStatus

func (MemcachedOpsRequest) ResourceFQN added in v0.16.0

func (m MemcachedOpsRequest) ResourceFQN() string

func (MemcachedOpsRequest) ResourceKind

func (m MemcachedOpsRequest) ResourceKind() string

func (MemcachedOpsRequest) ResourcePlural

func (m MemcachedOpsRequest) ResourcePlural() string

func (MemcachedOpsRequest) ResourceShortCode

func (m MemcachedOpsRequest) ResourceShortCode() string

func (MemcachedOpsRequest) ResourceSingular

func (m MemcachedOpsRequest) ResourceSingular() string

func (*MemcachedOpsRequest) SetStatus added in v0.28.1

func (e *MemcachedOpsRequest) SetStatus(s OpsRequestStatus)

func (MemcachedOpsRequest) ValidateSpecs

func (m MemcachedOpsRequest) ValidateSpecs() error

type MemcachedOpsRequestList

type MemcachedOpsRequestList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of MemcachedOpsRequest CRD objects
	Items []MemcachedOpsRequest `json:"items,omitempty"`
}

MemcachedOpsRequestList is a list of MemcachedOpsRequests

func (*MemcachedOpsRequestList) DeepCopy

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

func (*MemcachedOpsRequestList) DeepCopyInto

func (in *MemcachedOpsRequestList) DeepCopyInto(out *MemcachedOpsRequestList)

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

func (*MemcachedOpsRequestList) DeepCopyObject

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

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

type MemcachedOpsRequestSpec

type MemcachedOpsRequestSpec struct {
	// Specifies the Memcached reference
	DatabaseRef core.LocalObjectReference `json:"databaseRef"`
	// Specifies the ops request type: Upgrade, HorizontalScaling, VerticalScaling etc.
	Type MemcachedOpsRequestType `json:"type"`
	// Specifies information necessary for upgrading Memcached
	Upgrade *MemcachedUpgradeSpec `json:"upgrade,omitempty"`
	// Specifies information necessary for horizontal scaling
	HorizontalScaling *MemcachedHorizontalScalingSpec `json:"horizontalScaling,omitempty"`
	// Specifies information necessary for vertical scaling
	VerticalScaling *MemcachedVerticalScalingSpec `json:"verticalScaling,omitempty"`
	// Specifies information necessary for volume expansion
	VolumeExpansion *MemcachedVolumeExpansionSpec `json:"volumeExpansion,omitempty"`
	// Specifies information necessary for custom configuration of Memcached
	Configuration *MemcachedCustomConfigurationSpec `json:"configuration,omitempty"`
	// Specifies information necessary for configuring TLS
	TLS *TLSSpec `json:"tls,omitempty"`
	// Specifies information necessary for restarting database
	Restart *RestartSpec `json:"restart,omitempty"`
	// ApplyOption is to control the execution of OpsRequest depending on the database state.
	// +kubebuilder:default="IfReady"
	Apply ApplyOption `json:"apply,omitempty"`
}

MemcachedOpsRequestSpec is the spec for MemcachedOpsRequest

func (*MemcachedOpsRequestSpec) DeepCopy

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

func (*MemcachedOpsRequestSpec) DeepCopyInto

func (in *MemcachedOpsRequestSpec) DeepCopyInto(out *MemcachedOpsRequestSpec)

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

type MemcachedOpsRequestType added in v0.29.0

type MemcachedOpsRequestType string

+kubebuilder:validation:Enum=Upgrade;UpdateVersion;HorizontalScaling;VerticalScaling;VolumeExpansion;Restart;Reconfigure;ReconfigureTLS

const (
	// Deprecated. Use UpdateVersion
	MemcachedOpsRequestTypeUpgrade MemcachedOpsRequestType = "Upgrade"
	// used for UpdateVersion operation
	MemcachedOpsRequestTypeUpdateVersion MemcachedOpsRequestType = "UpdateVersion"
	// used for HorizontalScaling operation
	MemcachedOpsRequestTypeHorizontalScaling MemcachedOpsRequestType = "HorizontalScaling"
	// used for VerticalScaling operation
	MemcachedOpsRequestTypeVerticalScaling MemcachedOpsRequestType = "VerticalScaling"
	// used for VolumeExpansion operation
	MemcachedOpsRequestTypeVolumeExpansion MemcachedOpsRequestType = "VolumeExpansion"
	// used for Restart operation
	MemcachedOpsRequestTypeRestart MemcachedOpsRequestType = "Restart"
	// used for Reconfigure operation
	MemcachedOpsRequestTypeReconfigure MemcachedOpsRequestType = "Reconfigure"
	// used for ReconfigureTLS operation
	MemcachedOpsRequestTypeReconfigureTLSs MemcachedOpsRequestType = "ReconfigureTLS"
)

type MemcachedReplicaReadinessCriteria

type MemcachedReplicaReadinessCriteria struct{}

MemcachedReplicaReadinessCriteria is the criteria for checking readiness of a Memcached pod after updating, horizontal scaling etc.

func (*MemcachedReplicaReadinessCriteria) DeepCopy

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

func (*MemcachedReplicaReadinessCriteria) DeepCopyInto

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

type MemcachedUpgradeSpec

type MemcachedUpgradeSpec struct {
	// Specifies the target version name from catalog
	TargetVersion     string                             `json:"targetVersion,omitempty"`
	ReadinessCriteria *MemcachedReplicaReadinessCriteria `json:"readinessCriteria,omitempty"`
}

func (*MemcachedUpgradeSpec) DeepCopy

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

func (*MemcachedUpgradeSpec) DeepCopyInto

func (in *MemcachedUpgradeSpec) DeepCopyInto(out *MemcachedUpgradeSpec)

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

type MemcachedVerticalScalingSpec

type MemcachedVerticalScalingSpec struct {
	ReadinessCriteria *MemcachedReplicaReadinessCriteria `json:"readinessCriteria,omitempty"`
}

MemcachedVerticalScalingSpec is the spec for Memcached vertical scaling

func (*MemcachedVerticalScalingSpec) DeepCopy

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

func (*MemcachedVerticalScalingSpec) DeepCopyInto

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

type MemcachedVolumeExpansionSpec

type MemcachedVolumeExpansionSpec struct{}

MemcachedVolumeExpansionSpec is the spec for Memcached volume expansion

func (*MemcachedVolumeExpansionSpec) DeepCopy

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

func (*MemcachedVolumeExpansionSpec) DeepCopyInto

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

type MongoDBCustomConfiguration

type MongoDBCustomConfiguration struct {
	ConfigSecret *core.LocalObjectReference `json:"configSecret,omitempty"`
	// Deprecated
	InlineConfig string `json:"inlineConfig,omitempty"`

	ApplyConfig        map[string]string `json:"applyConfig,omitempty"`
	RemoveCustomConfig bool              `json:"removeCustomConfig,omitempty"`
}

func (*MongoDBCustomConfiguration) DeepCopy

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

func (*MongoDBCustomConfiguration) DeepCopyInto

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

type MongoDBCustomConfigurationSpec

type MongoDBCustomConfigurationSpec struct {
	Standalone   *MongoDBCustomConfiguration `json:"standalone,omitempty"`
	ReplicaSet   *MongoDBCustomConfiguration `json:"replicaSet,omitempty"`
	Mongos       *MongoDBCustomConfiguration `json:"mongos,omitempty"`
	ConfigServer *MongoDBCustomConfiguration `json:"configServer,omitempty"`
	Shard        *MongoDBCustomConfiguration `json:"shard,omitempty"`
	Arbiter      *MongoDBCustomConfiguration `json:"arbiter,omitempty"`
	Hidden       *MongoDBCustomConfiguration `json:"hidden,omitempty"`
}

func (*MongoDBCustomConfigurationSpec) DeepCopy

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

func (*MongoDBCustomConfigurationSpec) DeepCopyInto

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

type MongoDBHorizontalScalingSpec

type MongoDBHorizontalScalingSpec struct {
	Shard        *MongoDBShardNode `json:"shard,omitempty"`
	ConfigServer *ConfigNode       `json:"configServer,omitempty"`
	Mongos       *MongosNode       `json:"mongos,omitempty"`
	Hidden       *HiddenNode       `json:"hidden,omitempty"`
	Replicas     *int32            `json:"replicas,omitempty"`
}

HorizontalScaling is the spec for mongodb horizontal scaling

func (*MongoDBHorizontalScalingSpec) DeepCopy

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

func (*MongoDBHorizontalScalingSpec) DeepCopyInto

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

type MongoDBOpsRequest

type MongoDBOpsRequest struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              MongoDBOpsRequestSpec `json:"spec,omitempty"`
	Status            OpsRequestStatus      `json:"status,omitempty"`
}

+kubebuilder:object:root=true +kubebuilder:resource:path=mongodbopsrequests,singular=mongodbopsrequest,shortName=mgops,categories={datastore,kubedb,appscode} +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Type",type="string",JSONPath=".spec.type" +kubebuilder:printcolumn:name="Status",type="string",JSONPath=".status.phase" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp"

func (MongoDBOpsRequest) CustomResourceDefinition

func (_ MongoDBOpsRequest) CustomResourceDefinition() *apiextensions.CustomResourceDefinition

func (*MongoDBOpsRequest) DeepCopy

func (in *MongoDBOpsRequest) DeepCopy() *MongoDBOpsRequest

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

func (*MongoDBOpsRequest) DeepCopyInto

func (in *MongoDBOpsRequest) DeepCopyInto(out *MongoDBOpsRequest)

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

func (*MongoDBOpsRequest) DeepCopyObject

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

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

func (*MongoDBOpsRequest) GetDBRefName added in v0.28.1

func (e *MongoDBOpsRequest) GetDBRefName() string

func (*MongoDBOpsRequest) GetObjectMeta added in v0.28.1

func (e *MongoDBOpsRequest) GetObjectMeta() metav1.ObjectMeta

func (*MongoDBOpsRequest) GetRequestType added in v0.28.1

func (e *MongoDBOpsRequest) GetRequestType() string

func (*MongoDBOpsRequest) GetStatus added in v0.28.1

func (e *MongoDBOpsRequest) GetStatus() OpsRequestStatus

func (MongoDBOpsRequest) ResourceFQN added in v0.16.0

func (m MongoDBOpsRequest) ResourceFQN() string

func (MongoDBOpsRequest) ResourceKind

func (m MongoDBOpsRequest) ResourceKind() string

func (MongoDBOpsRequest) ResourcePlural

func (m MongoDBOpsRequest) ResourcePlural() string

func (MongoDBOpsRequest) ResourceShortCode

func (m MongoDBOpsRequest) ResourceShortCode() string

func (MongoDBOpsRequest) ResourceSingular

func (m MongoDBOpsRequest) ResourceSingular() string

func (*MongoDBOpsRequest) SetStatus added in v0.28.1

func (e *MongoDBOpsRequest) SetStatus(s OpsRequestStatus)

func (MongoDBOpsRequest) ValidateSpecs

func (m MongoDBOpsRequest) ValidateSpecs() error

type MongoDBOpsRequestList

type MongoDBOpsRequestList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of MongoDBOpsRequest CRD objects
	Items []MongoDBOpsRequest `json:"items,omitempty"`
}

MongoDBOpsRequestList is a list of MongoDBOpsRequests

func (*MongoDBOpsRequestList) DeepCopy

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

func (*MongoDBOpsRequestList) DeepCopyInto

func (in *MongoDBOpsRequestList) DeepCopyInto(out *MongoDBOpsRequestList)

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

func (*MongoDBOpsRequestList) DeepCopyObject

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

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

type MongoDBOpsRequestSpec

type MongoDBOpsRequestSpec struct {
	// Specifies the MongoDB reference
	DatabaseRef core.LocalObjectReference `json:"databaseRef"`
	// Specifies the ops request type: Upgrade, HorizontalScaling, VerticalScaling etc.
	Type MongoDBOpsRequestType `json:"type"`
	// Specifies information necessary for upgrading mongodb
	Upgrade *MongoDBUpgradeSpec `json:"upgrade,omitempty"`
	// Specifies information necessary for horizontal scaling
	HorizontalScaling *MongoDBHorizontalScalingSpec `json:"horizontalScaling,omitempty"`
	// Specifies information necessary for vertical scaling
	VerticalScaling *MongoDBVerticalScalingSpec `json:"verticalScaling,omitempty"`
	// Specifies information necessary for volume expansion
	VolumeExpansion *MongoDBVolumeExpansionSpec `json:"volumeExpansion,omitempty"`
	// Specifies information necessary for custom configuration of MongoDB
	Configuration *MongoDBCustomConfigurationSpec `json:"configuration,omitempty"`
	// Specifies information necessary for configuring TLS
	TLS *TLSSpec `json:"tls,omitempty"`
	// Specifies information necessary for restarting database
	Restart *RestartSpec `json:"restart,omitempty"`
	// Specifies information necessary for reprovisioning database
	Reprovision *Reprovision `json:"reprovision,omitempty"`

	// Specifies the Readiness Criteria
	ReadinessCriteria *MongoDBReplicaReadinessCriteria `json:"readinessCriteria,omitempty"`
	// Timeout for each step of the ops request in second. If a step doesn't finish within the specified timeout, the ops request will result in failure.
	Timeout *metav1.Duration `json:"timeout,omitempty"`
	// ApplyOption is to control the execution of OpsRequest depending on the database state.
	// +kubebuilder:default="IfReady"
	Apply ApplyOption `json:"apply,omitempty"`
}

MongoDBOpsRequestSpec is the spec for MongoDBOpsRequest

func (*MongoDBOpsRequestSpec) DeepCopy

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

func (*MongoDBOpsRequestSpec) DeepCopyInto

func (in *MongoDBOpsRequestSpec) DeepCopyInto(out *MongoDBOpsRequestSpec)

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

type MongoDBOpsRequestType added in v0.29.0

type MongoDBOpsRequestType string

+kubebuilder:validation:Enum=Upgrade;UpdateVersion;HorizontalScaling;VerticalScaling;VolumeExpansion;Restart;Reconfigure;ReconfigureTLS;Reprovision

const (
	// Deprecated. Use UpdateVersion
	MongoDBOpsRequestTypeUpgrade MongoDBOpsRequestType = "Upgrade"
	// used for UpdateVersion operation
	MongoDBOpsRequestTypeUpdateVersion MongoDBOpsRequestType = "UpdateVersion"
	// used for HorizontalScaling operation
	MongoDBOpsRequestTypeHorizontalScaling MongoDBOpsRequestType = "HorizontalScaling"
	// used for VerticalScaling operation
	MongoDBOpsRequestTypeVerticalScaling MongoDBOpsRequestType = "VerticalScaling"
	// used for VolumeExpansion operation
	MongoDBOpsRequestTypeVolumeExpansion MongoDBOpsRequestType = "VolumeExpansion"
	// used for Restart operation
	MongoDBOpsRequestTypeRestart MongoDBOpsRequestType = "Restart"
	// used for Reconfigure operation
	MongoDBOpsRequestTypeReconfigure MongoDBOpsRequestType = "Reconfigure"
	// used for ReconfigureTLS operation
	MongoDBOpsRequestTypeReconfigureTLSs MongoDBOpsRequestType = "ReconfigureTLS"
	// used for Reprovision operation
	MongoDBOpsRequestTypeReprovision MongoDBOpsRequestType = "Reprovision"
)

type MongoDBReplicaReadinessCriteria

type MongoDBReplicaReadinessCriteria struct {
	// +kubebuilder:validation:Minimum:=0
	OplogMaxLagSeconds int32 `json:"oplogMaxLagSeconds,omitempty"`
	// +kubebuilder:validation:Minimum:=0
	// +kubebuilder:validation:Maximum:=100
	ObjectsCountDiffPercentage int32 `json:"objectsCountDiffPercentage,omitempty"`
}

MongoDBReplicaReadinessCriteria is the criteria for checking readiness of a MongoDB pod after restarting the pod

func (*MongoDBReplicaReadinessCriteria) DeepCopy

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

func (*MongoDBReplicaReadinessCriteria) DeepCopyInto

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

type MongoDBShardNode

type MongoDBShardNode struct {
	Shards   int32 `json:"shards,omitempty"`
	Replicas int32 `json:"replicas,omitempty"`
}

MongoDBShardNode is the spec for mongodb Shard

func (*MongoDBShardNode) DeepCopy

func (in *MongoDBShardNode) DeepCopy() *MongoDBShardNode

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

func (*MongoDBShardNode) DeepCopyInto

func (in *MongoDBShardNode) DeepCopyInto(out *MongoDBShardNode)

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

type MongoDBUpgradeSpec

type MongoDBUpgradeSpec struct {
	// Specifies the target version name from catalog
	TargetVersion string `json:"targetVersion,omitempty"`
}

func (*MongoDBUpgradeSpec) DeepCopy

func (in *MongoDBUpgradeSpec) DeepCopy() *MongoDBUpgradeSpec

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

func (*MongoDBUpgradeSpec) DeepCopyInto

func (in *MongoDBUpgradeSpec) DeepCopyInto(out *MongoDBUpgradeSpec)

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

type MongoDBVerticalScalingSpec

type MongoDBVerticalScalingSpec struct {
	Standalone   *core.ResourceRequirements `json:"standalone,omitempty"`
	ReplicaSet   *core.ResourceRequirements `json:"replicaSet,omitempty"`
	Mongos       *core.ResourceRequirements `json:"mongos,omitempty"`
	ConfigServer *core.ResourceRequirements `json:"configServer,omitempty"`
	Shard        *core.ResourceRequirements `json:"shard,omitempty"`
	Arbiter      *core.ResourceRequirements `json:"arbiter,omitempty"`
	Hidden       *core.ResourceRequirements `json:"hidden,omitempty"`
	Exporter     *core.ResourceRequirements `json:"exporter,omitempty"`
	Coordinator  *core.ResourceRequirements `json:"coordinator,omitempty"`
}

MongoDBVerticalScalingSpec is the spec for mongodb vertical scaling

func (*MongoDBVerticalScalingSpec) DeepCopy

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

func (*MongoDBVerticalScalingSpec) DeepCopyInto

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

type MongoDBVolumeExpansionSpec

type MongoDBVolumeExpansionSpec struct {
	// +kubebuilder:default="Online"
	Mode         *VolumeExpansionMode `json:"mode,omitempty"`
	Standalone   *resource.Quantity   `json:"standalone,omitempty"`
	ReplicaSet   *resource.Quantity   `json:"replicaSet,omitempty"`
	ConfigServer *resource.Quantity   `json:"configServer,omitempty"`
	Shard        *resource.Quantity   `json:"shard,omitempty"`
	Hidden       *resource.Quantity   `json:"hidden,omitempty"`
}

MongoDBVolumeExpansionSpec is the spec for mongodb volume expansion

func (*MongoDBVolumeExpansionSpec) DeepCopy

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

func (*MongoDBVolumeExpansionSpec) DeepCopyInto

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

type MongosNode

type MongosNode struct {
	Replicas int32 `json:"replicas,omitempty"`
}

MongosNode is the spec for mongodb Mongos

func (*MongosNode) DeepCopy

func (in *MongosNode) DeepCopy() *MongosNode

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

func (*MongosNode) DeepCopyInto

func (in *MongosNode) DeepCopyInto(out *MongosNode)

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

type MySQLCustomConfigurationSpec

type MySQLCustomConfigurationSpec struct {
	ConfigSecret       *core.LocalObjectReference `json:"configSecret,omitempty"`
	InlineConfig       string                     `json:"inlineConfig,omitempty"`
	RemoveCustomConfig bool                       `json:"removeCustomConfig,omitempty"`
}

func (*MySQLCustomConfigurationSpec) DeepCopy

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

func (*MySQLCustomConfigurationSpec) DeepCopyInto

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

type MySQLHorizontalScalingSpec

type MySQLHorizontalScalingSpec struct {
	// Number of nodes/members of the group
	Member *int32 `json:"member,omitempty"`
}

func (*MySQLHorizontalScalingSpec) DeepCopy

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

func (*MySQLHorizontalScalingSpec) DeepCopyInto

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

type MySQLOpsRequest

type MySQLOpsRequest struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              MySQLOpsRequestSpec `json:"spec,omitempty"`
	Status            OpsRequestStatus    `json:"status,omitempty"`
}

+kubebuilder:object:root=true +kubebuilder:resource:path=mysqlopsrequests,singular=mysqlopsrequest,shortName=myops,categories={datastore,kubedb,appscode} +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Type",type="string",JSONPath=".spec.type" +kubebuilder:printcolumn:name="Status",type="string",JSONPath=".status.phase" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp"

func (MySQLOpsRequest) CustomResourceDefinition

func (_ MySQLOpsRequest) CustomResourceDefinition() *apiextensions.CustomResourceDefinition

func (*MySQLOpsRequest) DeepCopy

func (in *MySQLOpsRequest) DeepCopy() *MySQLOpsRequest

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

func (*MySQLOpsRequest) DeepCopyInto

func (in *MySQLOpsRequest) DeepCopyInto(out *MySQLOpsRequest)

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

func (*MySQLOpsRequest) DeepCopyObject

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

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

func (*MySQLOpsRequest) GetDBRefName added in v0.28.1

func (e *MySQLOpsRequest) GetDBRefName() string

func (MySQLOpsRequest) GetKey

func (m MySQLOpsRequest) GetKey() string

func (*MySQLOpsRequest) GetObjectMeta added in v0.28.1

func (e *MySQLOpsRequest) GetObjectMeta() metav1.ObjectMeta

func (*MySQLOpsRequest) GetRequestType added in v0.28.1

func (e *MySQLOpsRequest) GetRequestType() string

func (*MySQLOpsRequest) GetStatus added in v0.28.1

func (e *MySQLOpsRequest) GetStatus() OpsRequestStatus

func (MySQLOpsRequest) OffshootLabels

func (m MySQLOpsRequest) OffshootLabels() map[string]string

func (MySQLOpsRequest) OffshootName

func (m MySQLOpsRequest) OffshootName() string

func (MySQLOpsRequest) OffshootSelectors

func (m MySQLOpsRequest) OffshootSelectors() map[string]string

func (MySQLOpsRequest) ResourceFQN added in v0.16.0

func (m MySQLOpsRequest) ResourceFQN() string

func (MySQLOpsRequest) ResourceKind

func (m MySQLOpsRequest) ResourceKind() string

func (MySQLOpsRequest) ResourcePlural

func (m MySQLOpsRequest) ResourcePlural() string

func (MySQLOpsRequest) ResourceShortCode

func (m MySQLOpsRequest) ResourceShortCode() string

func (MySQLOpsRequest) ResourceSingular

func (m MySQLOpsRequest) ResourceSingular() string

func (*MySQLOpsRequest) SetStatus added in v0.28.1

func (e *MySQLOpsRequest) SetStatus(s OpsRequestStatus)

func (MySQLOpsRequest) ValidateSpecs

func (m MySQLOpsRequest) ValidateSpecs() error

type MySQLOpsRequestList

type MySQLOpsRequestList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of MySQLOpsRequest CRD objects
	Items []MySQLOpsRequest `json:"items,omitempty"`
}

MySQLOpsRequestList is a list of MySQLOpsRequests

func (*MySQLOpsRequestList) DeepCopy

func (in *MySQLOpsRequestList) DeepCopy() *MySQLOpsRequestList

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

func (*MySQLOpsRequestList) DeepCopyInto

func (in *MySQLOpsRequestList) DeepCopyInto(out *MySQLOpsRequestList)

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

func (*MySQLOpsRequestList) DeepCopyObject

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

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

type MySQLOpsRequestSpec

type MySQLOpsRequestSpec struct {
	// Specifies the MySQL reference
	DatabaseRef core.LocalObjectReference `json:"databaseRef"`
	// Specifies the ops request type: Upgrade, HorizontalScaling, VerticalScaling etc.
	Type MySQLOpsRequestType `json:"type"`
	// Specifies information necessary for upgrading MySQL
	Upgrade *MySQLUpgradeSpec `json:"upgrade,omitempty"`
	// Specifies information necessary for horizontal scaling
	HorizontalScaling *MySQLHorizontalScalingSpec `json:"horizontalScaling,omitempty"`
	// Specifies information necessary for vertical scaling
	VerticalScaling *MySQLVerticalScalingSpec `json:"verticalScaling,omitempty"`
	// Specifies information necessary for volume expansion
	VolumeExpansion *MySQLVolumeExpansionSpec `json:"volumeExpansion,omitempty"`
	// Specifies information necessary for custom configuration of MySQL
	Configuration *MySQLCustomConfigurationSpec `json:"configuration,omitempty"`
	// Specifies information necessary for configuring TLS
	TLS *MySQLTLSSpec `json:"tls,omitempty"`
	// Specifies information necessary for restarting database
	Restart *RestartSpec `json:"restart,omitempty"`
	// Timeout for each step of the ops request in second. If a step doesn't finish within the specified timeout, the ops request will result in failure.
	Timeout *metav1.Duration `json:"timeout,omitempty"`
	// ApplyOption is to control the execution of OpsRequest depending on the database state.
	// +kubebuilder:default="IfReady"
	Apply ApplyOption `json:"apply,omitempty"`
}

MySQLOpsRequestSpec is the spec for MySQLOpsRequest

func (*MySQLOpsRequestSpec) DeepCopy

func (in *MySQLOpsRequestSpec) DeepCopy() *MySQLOpsRequestSpec

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

func (*MySQLOpsRequestSpec) DeepCopyInto

func (in *MySQLOpsRequestSpec) DeepCopyInto(out *MySQLOpsRequestSpec)

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

type MySQLOpsRequestType added in v0.29.0

type MySQLOpsRequestType string

+kubebuilder:validation:Enum=Upgrade;UpdateVersion;HorizontalScaling;VerticalScaling;VolumeExpansion;Restart;Reconfigure;ReconfigureTLS

const (
	// Deprecated. Use UpdateVersion
	MySQLOpsRequestTypeUpgrade MySQLOpsRequestType = "Upgrade"
	// used for UpdateVersion operation
	MySQLOpsRequestTypeUpdateVersion MySQLOpsRequestType = "UpdateVersion"
	// used for HorizontalScaling operation
	MySQLOpsRequestTypeHorizontalScaling MySQLOpsRequestType = "HorizontalScaling"
	// used for VerticalScaling operation
	MySQLOpsRequestTypeVerticalScaling MySQLOpsRequestType = "VerticalScaling"
	// used for VolumeExpansion operation
	MySQLOpsRequestTypeVolumeExpansion MySQLOpsRequestType = "VolumeExpansion"
	// used for Restart operation
	MySQLOpsRequestTypeRestart MySQLOpsRequestType = "Restart"
	// used for Reconfigure operation
	MySQLOpsRequestTypeReconfigure MySQLOpsRequestType = "Reconfigure"
	// used for ReconfigureTLS operation
	MySQLOpsRequestTypeReconfigureTLSs MySQLOpsRequestType = "ReconfigureTLS"
)

type MySQLQueryRules added in v0.28.0

type MySQLQueryRules struct {
	// +kubebuilder:pruning:PreserveUnknownFields
	Rules       []*runtime.RawExtension `json:"rules"`
	RequestType OperationType           `json:"reqType"`
}

func (*MySQLQueryRules) DeepCopy added in v0.28.0

func (in *MySQLQueryRules) DeepCopy() *MySQLQueryRules

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

func (*MySQLQueryRules) DeepCopyInto added in v0.28.0

func (in *MySQLQueryRules) DeepCopyInto(out *MySQLQueryRules)

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

type MySQLReplicaReadinessCriteria

type MySQLReplicaReadinessCriteria struct{}

MySQLReplicaReadinessCriteria is the criteria for checking readiness of a MySQL pod after updating, horizontal scaling etc.

func (*MySQLReplicaReadinessCriteria) DeepCopy

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

func (*MySQLReplicaReadinessCriteria) DeepCopyInto

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

type MySQLTLSSpec added in v0.15.2

type MySQLTLSSpec struct {
	TLSSpec `json:",inline,omitempty"`

	// Indicates that the database server need to be encrypted connections(ssl)
	// +optional
	RequireSSL *bool `json:"requireSSL,omitempty"`
}

func (*MySQLTLSSpec) DeepCopy added in v0.15.2

func (in *MySQLTLSSpec) DeepCopy() *MySQLTLSSpec

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

func (*MySQLTLSSpec) DeepCopyInto added in v0.15.2

func (in *MySQLTLSSpec) DeepCopyInto(out *MySQLTLSSpec)

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

type MySQLUpgradeSpec

type MySQLUpgradeSpec struct {
	// Specifies the target version name from catalog
	TargetVersion     string                         `json:"targetVersion,omitempty"`
	ReadinessCriteria *MySQLReplicaReadinessCriteria `json:"readinessCriteria,omitempty"`
}

func (*MySQLUpgradeSpec) DeepCopy

func (in *MySQLUpgradeSpec) DeepCopy() *MySQLUpgradeSpec

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

func (*MySQLUpgradeSpec) DeepCopyInto

func (in *MySQLUpgradeSpec) DeepCopyInto(out *MySQLUpgradeSpec)

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

type MySQLUsers added in v0.28.0

type MySQLUsers struct {
	Users       []v1alpha2.MySQLUser `json:"users"`
	RequestType OperationType        `json:"reqType"`
}

func (*MySQLUsers) DeepCopy added in v0.28.0

func (in *MySQLUsers) DeepCopy() *MySQLUsers

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

func (*MySQLUsers) DeepCopyInto added in v0.28.0

func (in *MySQLUsers) DeepCopyInto(out *MySQLUsers)

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

type MySQLVerticalScalingSpec

type MySQLVerticalScalingSpec struct {
	MySQL       *core.ResourceRequirements `json:"mysql,omitempty"`
	Exporter    *core.ResourceRequirements `json:"exporter,omitempty"`
	Coordinator *core.ResourceRequirements `json:"coordinator,omitempty"`
}

func (*MySQLVerticalScalingSpec) DeepCopy

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

func (*MySQLVerticalScalingSpec) DeepCopyInto

func (in *MySQLVerticalScalingSpec) DeepCopyInto(out *MySQLVerticalScalingSpec)

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

type MySQLVolumeExpansionSpec

type MySQLVolumeExpansionSpec struct {
	MySQL *resource.Quantity `json:"mysql,omitempty"`
	// +kubebuilder:default="Online"
	Mode *VolumeExpansionMode `json:"mode,omitempty"`
}

MySQLVolumeExpansionSpec is the spec for MySQL volume expansion

func (*MySQLVolumeExpansionSpec) DeepCopy

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

func (*MySQLVolumeExpansionSpec) DeepCopyInto

func (in *MySQLVolumeExpansionSpec) DeepCopyInto(out *MySQLVolumeExpansionSpec)

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

type OperationType added in v0.28.0

type OperationType string
const (
	ProxySQLConfigurationAdd    OperationType = "add"
	ProxySQLConfigurationDelete OperationType = "delete"
	ProxySQLConfigurationUpdate OperationType = "update"
)

type OpsRequestPhase

type OpsRequestPhase string

+kubebuilder:validation:Enum=Pending;Progressing;Successful;WaitingForApproval;Failed;Approved;Denied;Skipped

const (
	// used for ops requests that are currently in queue
	OpsRequestPhasePending OpsRequestPhase = "Pending"
	// used for ops requests that are currently Progressing
	OpsRequestPhaseProgressing OpsRequestPhase = "Progressing"
	// used for ops requests that are executed successfully
	OpsRequestPhaseSuccessful OpsRequestPhase = "Successful"
	// used for ops requests that are failed
	OpsRequestPhaseFailed OpsRequestPhase = "Failed"
	// used for ops requests that are skipped
	OpsRequestPhaseSkipped OpsRequestPhase = "Skipped"

	// used for ops requests that are waiting for approval
	OpsRequestPhaseWaitingForApproval OpsRequestPhase = "WaitingForApproval"
	// used for ops requests that are approved
	OpsRequestApproved OpsRequestPhase = "Approved"
	// used for ops requests that are denied
	OpsRequestDenied OpsRequestPhase = "Denied"
)

type OpsRequestStatus added in v0.28.1

type OpsRequestStatus struct {
	// Specifies the current phase of the ops request
	// +optional
	Phase OpsRequestPhase `json:"phase,omitempty"`
	// observedGeneration is the most recent generation observed for this resource. It corresponds to the
	// resource's generation, which is updated on mutation by the API Server.
	// +optional
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
	// Conditions applied to the request, such as approval or denial.
	// +optional
	Conditions []kmapi.Condition `json:"conditions,omitempty"`
}

func (*OpsRequestStatus) DeepCopy added in v0.28.1

func (in *OpsRequestStatus) DeepCopy() *OpsRequestStatus

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

func (*OpsRequestStatus) DeepCopyInto added in v0.28.1

func (in *OpsRequestStatus) DeepCopyInto(out *OpsRequestStatus)

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

type PerconaXtraDBCustomConfigurationSpec

type PerconaXtraDBCustomConfigurationSpec struct {
	// ConfigSecret is an optional field to provide custom configuration file for database.
	// +optional
	ConfigSecret *core.LocalObjectReference `json:"configSecret,omitempty"`
	// Deprecated
	InlineConfig string `json:"inlineConfig,omitempty"`
	// If set to "true", the user provided configuration will be removed.
	// PerconaXtraDB will start will default configuration that is generated by the operator.
	// +optional
	RemoveCustomConfig bool `json:"removeCustomConfig,omitempty"`
	// ApplyConfig is an optional field to provide PerconaXtraDB configuration.
	// Provided configuration will be applied to config files stored in ConfigSecret.
	// If the ConfigSecret is missing, the operator will create a new k8s secret by the
	// following naming convention: {db-name}-user-config .
	// Expected input format:
	//	applyConfig:
	//		file-name.cnf: |
	//			[mysqld]
	//			key1: value1
	//			key2: value2
	// +optional
	ApplyConfig map[string]string `json:"applyConfig,omitempty"`
}

func (*PerconaXtraDBCustomConfigurationSpec) DeepCopy

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

func (*PerconaXtraDBCustomConfigurationSpec) DeepCopyInto

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

type PerconaXtraDBHorizontalScalingSpec

type PerconaXtraDBHorizontalScalingSpec struct {
	// Number of nodes/members of the group
	Member *int32 `json:"member,omitempty"`
	// specifies the weight of the current member/Node
	MemberWeight int32 `json:"memberWeight,omitempty"`
}

func (*PerconaXtraDBHorizontalScalingSpec) DeepCopy

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

func (*PerconaXtraDBHorizontalScalingSpec) DeepCopyInto

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

type PerconaXtraDBOpsRequest

type PerconaXtraDBOpsRequest struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              PerconaXtraDBOpsRequestSpec `json:"spec,omitempty"`
	Status            OpsRequestStatus            `json:"status,omitempty"`
}

+kubebuilder:object:root=true +kubebuilder:resource:path=perconaxtradbopsrequests,singular=perconaxtradbopsrequest,shortName=pxcops,categories={datastore,kubedb,appscode} +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Type",type="string",JSONPath=".spec.type" +kubebuilder:printcolumn:name="Status",type="string",JSONPath=".status.phase" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp"

func (PerconaXtraDBOpsRequest) CustomResourceDefinition

func (_ PerconaXtraDBOpsRequest) CustomResourceDefinition() *apiextensions.CustomResourceDefinition

func (*PerconaXtraDBOpsRequest) DeepCopy

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

func (*PerconaXtraDBOpsRequest) DeepCopyInto

func (in *PerconaXtraDBOpsRequest) DeepCopyInto(out *PerconaXtraDBOpsRequest)

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

func (*PerconaXtraDBOpsRequest) DeepCopyObject

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

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

func (*PerconaXtraDBOpsRequest) GetDBRefName added in v0.28.1

func (e *PerconaXtraDBOpsRequest) GetDBRefName() string

func (*PerconaXtraDBOpsRequest) GetObjectMeta added in v0.28.1

func (e *PerconaXtraDBOpsRequest) GetObjectMeta() metav1.ObjectMeta

func (*PerconaXtraDBOpsRequest) GetRequestType added in v0.28.1

func (e *PerconaXtraDBOpsRequest) GetRequestType() string

func (*PerconaXtraDBOpsRequest) GetStatus added in v0.28.1

func (PerconaXtraDBOpsRequest) ResourceFQN added in v0.16.0

func (p PerconaXtraDBOpsRequest) ResourceFQN() string

func (PerconaXtraDBOpsRequest) ResourceKind

func (p PerconaXtraDBOpsRequest) ResourceKind() string

func (PerconaXtraDBOpsRequest) ResourcePlural

func (p PerconaXtraDBOpsRequest) ResourcePlural() string

func (PerconaXtraDBOpsRequest) ResourceShortCode

func (p PerconaXtraDBOpsRequest) ResourceShortCode() string

func (PerconaXtraDBOpsRequest) ResourceSingular

func (p PerconaXtraDBOpsRequest) ResourceSingular() string

func (*PerconaXtraDBOpsRequest) SetStatus added in v0.28.1

func (e *PerconaXtraDBOpsRequest) SetStatus(s OpsRequestStatus)

func (PerconaXtraDBOpsRequest) ValidateSpecs

func (p PerconaXtraDBOpsRequest) ValidateSpecs() error

type PerconaXtraDBOpsRequestList

type PerconaXtraDBOpsRequestList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of PerconaXtraDBOpsRequest CRD objects
	Items []PerconaXtraDBOpsRequest `json:"items,omitempty"`
}

PerconaXtraDBOpsRequestList is a list of PerconaXtraDBOpsRequests

func (*PerconaXtraDBOpsRequestList) DeepCopy

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

func (*PerconaXtraDBOpsRequestList) DeepCopyInto

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

func (*PerconaXtraDBOpsRequestList) DeepCopyObject

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

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

type PerconaXtraDBOpsRequestSpec

type PerconaXtraDBOpsRequestSpec struct {
	// Specifies the PerconaXtraDB reference
	DatabaseRef core.LocalObjectReference `json:"databaseRef"`
	// Specifies the ops request type: Upgrade, HorizontalScaling, VerticalScaling etc.
	Type PerconaXtraDBOpsRequestType `json:"type"`
	// Specifies information necessary for upgrading PerconaXtraDB
	Upgrade *PerconaXtraDBUpgradeSpec `json:"upgrade,omitempty"`
	// Specifies information necessary for horizontal scaling
	HorizontalScaling *PerconaXtraDBHorizontalScalingSpec `json:"horizontalScaling,omitempty"`
	// Specifies information necessary for vertical scaling
	VerticalScaling *PerconaXtraDBVerticalScalingSpec `json:"verticalScaling,omitempty"`
	// Specifies information necessary for volume expansion
	VolumeExpansion *PerconaXtraDBVolumeExpansionSpec `json:"volumeExpansion,omitempty"`
	// Specifies information necessary for custom configuration of PerconaXtraDB
	Configuration *PerconaXtraDBCustomConfigurationSpec `json:"configuration,omitempty"`
	// Specifies information necessary for configuring TLS
	TLS *PerconaXtraDBTLSSpec `json:"tls,omitempty"`
	// Specifies information necessary for restarting database
	Restart *RestartSpec `json:"restart,omitempty"`
	// Timeout for each step of the ops request in second. If a step doesn't finish within the specified timeout, the ops request will result in failure.
	Timeout *metav1.Duration `json:"timeout,omitempty"`
	// ApplyOption is to control the execution of OpsRequest depending on the database state.
	// +kubebuilder:default="IfReady"
	Apply ApplyOption `json:"apply,omitempty"`
}

PerconaXtraDBOpsRequestSpec is the spec for PerconaXtraDBOpsRequest

func (*PerconaXtraDBOpsRequestSpec) DeepCopy

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

func (*PerconaXtraDBOpsRequestSpec) DeepCopyInto

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

type PerconaXtraDBOpsRequestType added in v0.29.0

type PerconaXtraDBOpsRequestType string

+kubebuilder:validation:Enum=Upgrade;UpdateVersion;HorizontalScaling;VerticalScaling;VolumeExpansion;Restart;Reconfigure;ReconfigureTLS

const (
	// Deprecated. Use UpdateVersion
	PerconaXtraDBOpsRequestTypeUpgrade PerconaXtraDBOpsRequestType = "Upgrade"
	// used for UpdateVersion operation
	PerconaXtraDBOpsRequestTypeUpdateVersion PerconaXtraDBOpsRequestType = "UpdateVersion"
	// used for HorizontalScaling operation
	PerconaXtraDBOpsRequestTypeHorizontalScaling PerconaXtraDBOpsRequestType = "HorizontalScaling"
	// used for VerticalScaling operation
	PerconaXtraDBOpsRequestTypeVerticalScaling PerconaXtraDBOpsRequestType = "VerticalScaling"
	// used for VolumeExpansion operation
	PerconaXtraDBOpsRequestTypeVolumeExpansion PerconaXtraDBOpsRequestType = "VolumeExpansion"
	// used for Restart operation
	PerconaXtraDBOpsRequestTypeRestart PerconaXtraDBOpsRequestType = "Restart"
	// used for Reconfigure operation
	PerconaXtraDBOpsRequestTypeReconfigure PerconaXtraDBOpsRequestType = "Reconfigure"
	// used for ReconfigureTLS operation
	PerconaXtraDBOpsRequestTypeReconfigureTLSs PerconaXtraDBOpsRequestType = "ReconfigureTLS"
)

type PerconaXtraDBReplicaReadinessCriteria

type PerconaXtraDBReplicaReadinessCriteria struct{}

PerconaXtraDBReplicaReadinessCriteria is the criteria for checking readiness of an PerconaXtraDB database

func (*PerconaXtraDBReplicaReadinessCriteria) DeepCopy

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

func (*PerconaXtraDBReplicaReadinessCriteria) DeepCopyInto

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

type PerconaXtraDBTLSSpec added in v0.29.0

type PerconaXtraDBTLSSpec struct {
	TLSSpec `json:",inline,omitempty"`

	// Indicates that the database server need to be encrypted connections(ssl)
	// +optional
	RequireSSL *bool `json:"requireSSL,omitempty"`
}

PerconaXtraDBTLSSpec specifies information necessary for configuring TLS

func (*PerconaXtraDBTLSSpec) DeepCopy added in v0.29.0

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

func (*PerconaXtraDBTLSSpec) DeepCopyInto added in v0.29.0

func (in *PerconaXtraDBTLSSpec) DeepCopyInto(out *PerconaXtraDBTLSSpec)

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

type PerconaXtraDBUpgradeSpec

type PerconaXtraDBUpgradeSpec struct {
	// Specifies the target version name from catalog
	TargetVersion string `json:"targetVersion,omitempty"`
}

func (*PerconaXtraDBUpgradeSpec) DeepCopy

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

func (*PerconaXtraDBUpgradeSpec) DeepCopyInto

func (in *PerconaXtraDBUpgradeSpec) DeepCopyInto(out *PerconaXtraDBUpgradeSpec)

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

type PerconaXtraDBVerticalScalingSpec

type PerconaXtraDBVerticalScalingSpec struct {
	PerconaXtraDB *core.ResourceRequirements `json:"perconaxtradb,omitempty"`
	Exporter      *core.ResourceRequirements `json:"exporter,omitempty"`
	Coordinator   *core.ResourceRequirements `json:"coordinator,omitempty"`
}

func (*PerconaXtraDBVerticalScalingSpec) DeepCopy

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

func (*PerconaXtraDBVerticalScalingSpec) DeepCopyInto

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

type PerconaXtraDBVolumeExpansionSpec

type PerconaXtraDBVolumeExpansionSpec struct {
	PerconaXtraDB *resource.Quantity   `json:"perconaxtradb,omitempty"`
	Mode          *VolumeExpansionMode `json:"mode,omitempty"`
}

PerconaXtraDBVolumeExpansionSpec is the spec for PerconaXtraDB volume expansion

func (*PerconaXtraDBVolumeExpansionSpec) DeepCopy

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

func (*PerconaXtraDBVolumeExpansionSpec) DeepCopyInto

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

type PgBouncerCustomConfiguration

type PgBouncerCustomConfiguration struct {
	ConfigMap *core.LocalObjectReference `json:"configMap,omitempty"`
	Data      map[string]string          `json:"data,omitempty"`
	Remove    bool                       `json:"remove,omitempty"`
}

func (*PgBouncerCustomConfiguration) DeepCopy

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

func (*PgBouncerCustomConfiguration) DeepCopyInto

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

type PgBouncerCustomConfigurationSpec

type PgBouncerCustomConfigurationSpec struct{}

func (*PgBouncerCustomConfigurationSpec) DeepCopy

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

func (*PgBouncerCustomConfigurationSpec) DeepCopyInto

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

type PgBouncerHorizontalScalingSpec

type PgBouncerHorizontalScalingSpec struct{}

HorizontalScaling is the spec for PgBouncer horizontal scaling

func (*PgBouncerHorizontalScalingSpec) DeepCopy

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

func (*PgBouncerHorizontalScalingSpec) DeepCopyInto

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

type PgBouncerOpsRequest

type PgBouncerOpsRequest struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              PgBouncerOpsRequestSpec `json:"spec,omitempty"`
	Status            OpsRequestStatus        `json:"status,omitempty"`
}

+kubebuilder:object:root=true +kubebuilder:resource:path=pgbounceropsrequests,singular=pgbounceropsrequest,shortName=pbops,categories={datastore,kubedb,appscode} +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Type",type="string",JSONPath=".spec.type" +kubebuilder:printcolumn:name="Status",type="string",JSONPath=".status.phase" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp"

func (PgBouncerOpsRequest) CustomResourceDefinition

func (_ PgBouncerOpsRequest) CustomResourceDefinition() *apiextensions.CustomResourceDefinition

func (*PgBouncerOpsRequest) DeepCopy

func (in *PgBouncerOpsRequest) DeepCopy() *PgBouncerOpsRequest

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

func (*PgBouncerOpsRequest) DeepCopyInto

func (in *PgBouncerOpsRequest) DeepCopyInto(out *PgBouncerOpsRequest)

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

func (*PgBouncerOpsRequest) DeepCopyObject

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

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

func (*PgBouncerOpsRequest) GetDBRefName added in v0.28.1

func (e *PgBouncerOpsRequest) GetDBRefName() string

func (*PgBouncerOpsRequest) GetObjectMeta added in v0.28.1

func (e *PgBouncerOpsRequest) GetObjectMeta() metav1.ObjectMeta

func (*PgBouncerOpsRequest) GetRequestType added in v0.28.1

func (e *PgBouncerOpsRequest) GetRequestType() string

func (*PgBouncerOpsRequest) GetStatus added in v0.28.1

func (e *PgBouncerOpsRequest) GetStatus() OpsRequestStatus

func (PgBouncerOpsRequest) ResourceFQN added in v0.16.0

func (p PgBouncerOpsRequest) ResourceFQN() string

func (PgBouncerOpsRequest) ResourceKind

func (p PgBouncerOpsRequest) ResourceKind() string

func (PgBouncerOpsRequest) ResourcePlural

func (p PgBouncerOpsRequest) ResourcePlural() string

func (PgBouncerOpsRequest) ResourceShortCode

func (p PgBouncerOpsRequest) ResourceShortCode() string

func (PgBouncerOpsRequest) ResourceSingular

func (p PgBouncerOpsRequest) ResourceSingular() string

func (*PgBouncerOpsRequest) SetStatus added in v0.28.1

func (e *PgBouncerOpsRequest) SetStatus(s OpsRequestStatus)

func (PgBouncerOpsRequest) ValidateSpecs

func (p PgBouncerOpsRequest) ValidateSpecs() error

type PgBouncerOpsRequestList

type PgBouncerOpsRequestList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of PgBouncerOpsRequest CRD objects
	Items []PgBouncerOpsRequest `json:"items,omitempty"`
}

PgBouncerOpsRequestList is a list of PgBouncerOpsRequests

func (*PgBouncerOpsRequestList) DeepCopy

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

func (*PgBouncerOpsRequestList) DeepCopyInto

func (in *PgBouncerOpsRequestList) DeepCopyInto(out *PgBouncerOpsRequestList)

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

func (*PgBouncerOpsRequestList) DeepCopyObject

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

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

type PgBouncerOpsRequestSpec

type PgBouncerOpsRequestSpec struct {
	// Specifies the PgBouncer reference
	ServerRef core.LocalObjectReference `json:"serverRef"`
	// Specifies the ops request type: Upgrade, HorizontalScaling, VerticalScaling etc.
	Type PgBouncerOpsRequestType `json:"type"`
	// Specifies information necessary for upgrading PgBouncer
	Upgrade *PgBouncerUpgradeSpec `json:"upgrade,omitempty"`
	// Specifies information necessary for horizontal scaling
	HorizontalScaling *PgBouncerHorizontalScalingSpec `json:"horizontalScaling,omitempty"`
	// Specifies information necessary for vertical scaling
	VerticalScaling *PgBouncerVerticalScalingSpec `json:"verticalScaling,omitempty"`
	// Specifies information necessary for custom configuration of PgBouncer
	Configuration *PgBouncerCustomConfigurationSpec `json:"configuration,omitempty"`
	// Specifies information necessary for configuring TLS
	TLS *TLSSpec `json:"tls,omitempty"`
	// Specifies information necessary for restarting database
	Restart *RestartSpec `json:"restart,omitempty"`
	// ApplyOption is to control the execution of OpsRequest depending on the database state.
	// +kubebuilder:default="IfReady"
	Apply ApplyOption `json:"apply,omitempty"`
}

PgBouncerOpsRequestSpec is the spec for PgBouncerOpsRequest

func (*PgBouncerOpsRequestSpec) DeepCopy

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

func (*PgBouncerOpsRequestSpec) DeepCopyInto

func (in *PgBouncerOpsRequestSpec) DeepCopyInto(out *PgBouncerOpsRequestSpec)

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

type PgBouncerOpsRequestType added in v0.29.0

type PgBouncerOpsRequestType string

+kubebuilder:validation:Enum=UpdateVersion;HorizontalScaling;VerticalScaling;Restart;Reconfigure;ReconfigureTLS

const (
	// used for UpdateVersion operation
	PgBouncerOpsRequestTypeUpdateVersion PgBouncerOpsRequestType = "UpdateVersion"
	// used for HorizontalScaling operation
	PgBouncerOpsRequestTypeHorizontalScaling PgBouncerOpsRequestType = "HorizontalScaling"
	// used for VerticalScaling operation
	PgBouncerOpsRequestTypeVerticalScaling PgBouncerOpsRequestType = "VerticalScaling"
	// used for Restart operation
	PgBouncerOpsRequestTypeRestart PgBouncerOpsRequestType = "Restart"
	// used for Reconfigure operation
	PgBouncerOpsRequestTypeReconfigure PgBouncerOpsRequestType = "Reconfigure"
	// used for ReconfigureTLS operation
	PgBouncerOpsRequestTypeReconfigureTLSs PgBouncerOpsRequestType = "ReconfigureTLS"
)

type PgBouncerReplicaReadinessCriteria

type PgBouncerReplicaReadinessCriteria struct{}

PgBouncerReplicaReadinessCriteria is the criteria for checking readiness of a PgBouncer pod after updating, horizontal scaling etc.

func (*PgBouncerReplicaReadinessCriteria) DeepCopy

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

func (*PgBouncerReplicaReadinessCriteria) DeepCopyInto

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

type PgBouncerUpgradeSpec

type PgBouncerUpgradeSpec struct {
	// Specifies the target version name from catalog
	TargetVersion     string                             `json:"targetVersion,omitempty"`
	ReadinessCriteria *PgBouncerReplicaReadinessCriteria `json:"readinessCriteria,omitempty"`
}

func (*PgBouncerUpgradeSpec) DeepCopy

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

func (*PgBouncerUpgradeSpec) DeepCopyInto

func (in *PgBouncerUpgradeSpec) DeepCopyInto(out *PgBouncerUpgradeSpec)

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

type PgBouncerVerticalScalingSpec

type PgBouncerVerticalScalingSpec struct {
	ReadinessCriteria *PgBouncerReplicaReadinessCriteria `json:"readinessCriteria,omitempty"`
}

PgBouncerVerticalScalingSpec is the spec for PgBouncer vertical scaling

func (*PgBouncerVerticalScalingSpec) DeepCopy

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

func (*PgBouncerVerticalScalingSpec) DeepCopyInto

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

type PostgresCustomConfiguration

type PostgresCustomConfiguration struct {
	ConfigMap *core.LocalObjectReference `json:"configMap,omitempty"`
	Data      map[string]string          `json:"data,omitempty"`
	Remove    bool                       `json:"remove,omitempty"`
}

func (*PostgresCustomConfiguration) DeepCopy

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

func (*PostgresCustomConfiguration) DeepCopyInto

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

type PostgresCustomConfigurationSpec

type PostgresCustomConfigurationSpec struct {
	ConfigSecret       *core.LocalObjectReference `json:"configSecret,omitempty"`
	InlineConfig       string                     `json:"inlineConfig,omitempty"`
	RemoveCustomConfig bool                       `json:"removeCustomConfig,omitempty"`
}

func (*PostgresCustomConfigurationSpec) DeepCopy

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

func (*PostgresCustomConfigurationSpec) DeepCopyInto

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

type PostgresHorizontalScalingSpec

type PostgresHorizontalScalingSpec struct {
	Replicas *int32 `json:"replicas,omitempty"`
}

HorizontalScaling is the spec for Postgres horizontal scaling

func (*PostgresHorizontalScalingSpec) DeepCopy

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

func (*PostgresHorizontalScalingSpec) DeepCopyInto

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

type PostgresOpsRequest

type PostgresOpsRequest struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              PostgresOpsRequestSpec `json:"spec,omitempty"`
	Status            OpsRequestStatus       `json:"status,omitempty"`
}

+kubebuilder:object:root=true +kubebuilder:resource:path=postgresopsrequests,singular=postgresopsrequest,shortName=pgops,categories={datastore,kubedb,appscode} +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Type",type="string",JSONPath=".spec.type" +kubebuilder:printcolumn:name="Status",type="string",JSONPath=".status.phase" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp"

func (PostgresOpsRequest) CustomResourceDefinition

func (_ PostgresOpsRequest) CustomResourceDefinition() *apiextensions.CustomResourceDefinition

func (*PostgresOpsRequest) DeepCopy

func (in *PostgresOpsRequest) DeepCopy() *PostgresOpsRequest

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

func (*PostgresOpsRequest) DeepCopyInto

func (in *PostgresOpsRequest) DeepCopyInto(out *PostgresOpsRequest)

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

func (*PostgresOpsRequest) DeepCopyObject

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

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

func (*PostgresOpsRequest) GetDBRefName added in v0.28.1

func (e *PostgresOpsRequest) GetDBRefName() string

func (*PostgresOpsRequest) GetObjectMeta added in v0.28.1

func (e *PostgresOpsRequest) GetObjectMeta() metav1.ObjectMeta

func (*PostgresOpsRequest) GetRequestType added in v0.28.1

func (e *PostgresOpsRequest) GetRequestType() string

func (*PostgresOpsRequest) GetStatus added in v0.28.1

func (e *PostgresOpsRequest) GetStatus() OpsRequestStatus

func (PostgresOpsRequest) ResourceFQN added in v0.16.0

func (p PostgresOpsRequest) ResourceFQN() string

func (PostgresOpsRequest) ResourceKind

func (p PostgresOpsRequest) ResourceKind() string

func (PostgresOpsRequest) ResourcePlural

func (p PostgresOpsRequest) ResourcePlural() string

func (PostgresOpsRequest) ResourceShortCode

func (p PostgresOpsRequest) ResourceShortCode() string

func (PostgresOpsRequest) ResourceSingular

func (p PostgresOpsRequest) ResourceSingular() string

func (*PostgresOpsRequest) SetStatus added in v0.28.1

func (e *PostgresOpsRequest) SetStatus(s OpsRequestStatus)

func (PostgresOpsRequest) ValidateSpecs

func (p PostgresOpsRequest) ValidateSpecs() error

type PostgresOpsRequestList

type PostgresOpsRequestList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of PostgresOpsRequest CRD objects
	Items []PostgresOpsRequest `json:"items,omitempty"`
}

PostgresOpsRequestList is a list of PostgresOpsRequests

func (*PostgresOpsRequestList) DeepCopy

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

func (*PostgresOpsRequestList) DeepCopyInto

func (in *PostgresOpsRequestList) DeepCopyInto(out *PostgresOpsRequestList)

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

func (*PostgresOpsRequestList) DeepCopyObject

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

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

type PostgresOpsRequestSpec

type PostgresOpsRequestSpec struct {
	// Specifies the Postgres reference
	DatabaseRef core.LocalObjectReference `json:"databaseRef"`
	// Specifies the ops request type: Upgrade, HorizontalScaling, VerticalScaling etc.
	Type PostgresOpsRequestType `json:"type"`
	// Specifies information necessary for upgrading Postgres
	Upgrade *PostgresUpgradeSpec `json:"upgrade,omitempty"`
	// Specifies information necessary for horizontal scaling
	HorizontalScaling *PostgresHorizontalScalingSpec `json:"horizontalScaling,omitempty"`
	// Specifies information necessary for vertical scaling
	VerticalScaling *PostgresVerticalScalingSpec `json:"verticalScaling,omitempty"`
	// Specifies information necessary for volume expansion
	VolumeExpansion *PostgresVolumeExpansionSpec `json:"volumeExpansion,omitempty"`
	// Specifies information necessary for custom configuration of Postgres
	Configuration *PostgresCustomConfigurationSpec `json:"configuration,omitempty"`
	// Specifies information necessary for configuring TLS
	TLS *PostgresTLSSpec `json:"tls,omitempty"`
	// Specifies information necessary for restarting database
	Restart *RestartSpec `json:"restart,omitempty"`
	// Timeout for each step of the ops request in second. If a step doesn't finish within the specified timeout, the ops request will result in failure.
	Timeout *metav1.Duration `json:"timeout,omitempty"`
	// ApplyOption is to control the execution of OpsRequest depending on the database state.
	// +kubebuilder:default="IfReady"
	Apply ApplyOption `json:"apply,omitempty"`
}

PostgresOpsRequestSpec is the spec for PostgresOpsRequest

func (*PostgresOpsRequestSpec) DeepCopy

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

func (*PostgresOpsRequestSpec) DeepCopyInto

func (in *PostgresOpsRequestSpec) DeepCopyInto(out *PostgresOpsRequestSpec)

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

type PostgresOpsRequestType added in v0.29.0

type PostgresOpsRequestType string

+kubebuilder:validation:Enum=Upgrade;UpdateVersion;HorizontalScaling;VerticalScaling;VolumeExpansion;Restart;Reconfigure;ReconfigureTLS

const (
	// Deprecated. Use UpdateVersion
	PostgresOpsRequestTypeUpgrade PostgresOpsRequestType = "Upgrade"
	// used for UpdateVersion operation
	PostgresOpsRequestTypeUpdateVersion PostgresOpsRequestType = "UpdateVersion"
	// used for HorizontalScaling operation
	PostgresOpsRequestTypeHorizontalScaling PostgresOpsRequestType = "HorizontalScaling"
	// used for VerticalScaling operation
	PostgresOpsRequestTypeVerticalScaling PostgresOpsRequestType = "VerticalScaling"
	// used for VolumeExpansion operation
	PostgresOpsRequestTypeVolumeExpansion PostgresOpsRequestType = "VolumeExpansion"
	// used for Restart operation
	PostgresOpsRequestTypeRestart PostgresOpsRequestType = "Restart"
	// used for Reconfigure operation
	PostgresOpsRequestTypeReconfigure PostgresOpsRequestType = "Reconfigure"
	// used for ReconfigureTLS operation
	PostgresOpsRequestTypeReconfigureTLSs PostgresOpsRequestType = "ReconfigureTLS"
)

type PostgresTLSSpec added in v0.19.0

type PostgresTLSSpec struct {
	TLSSpec `json:",inline,omitempty"`

	// SSLMode for both standalone and clusters. [disable;allow;prefer;require;verify-ca;verify-full]
	// +optional
	SSLMode apis.PostgresSSLMode `json:"sslMode,omitempty"`

	// ClientAuthMode for sidecar or sharding. (default will be md5. [md5;scram;cert])
	// +optional
	ClientAuthMode apis.PostgresClientAuthMode `json:"clientAuthMode,omitempty"`
}

func (*PostgresTLSSpec) DeepCopy added in v0.19.0

func (in *PostgresTLSSpec) DeepCopy() *PostgresTLSSpec

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

func (*PostgresTLSSpec) DeepCopyInto added in v0.19.0

func (in *PostgresTLSSpec) DeepCopyInto(out *PostgresTLSSpec)

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

type PostgresUpgradeSpec

type PostgresUpgradeSpec struct {
	// Specifies the target version name from catalog
	TargetVersion string `json:"targetVersion,omitempty"`
}

func (*PostgresUpgradeSpec) DeepCopy

func (in *PostgresUpgradeSpec) DeepCopy() *PostgresUpgradeSpec

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

func (*PostgresUpgradeSpec) DeepCopyInto

func (in *PostgresUpgradeSpec) DeepCopyInto(out *PostgresUpgradeSpec)

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

type PostgresVerticalScalingSpec

type PostgresVerticalScalingSpec struct {
	Postgres    *core.ResourceRequirements `json:"postgres,omitempty"`
	Exporter    *core.ResourceRequirements `json:"exporter,omitempty"`
	Coordinator *core.ResourceRequirements `json:"coordinator,omitempty"`
}

PostgresVerticalScalingSpec is the spec for Postgres vertical scaling

func (*PostgresVerticalScalingSpec) DeepCopy

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

func (*PostgresVerticalScalingSpec) DeepCopyInto

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

type PostgresVolumeExpansionSpec

type PostgresVolumeExpansionSpec struct {
	// volume specification for Postgres
	Postgres *resource.Quantity   `json:"postgres,omitempty"`
	Mode     *VolumeExpansionMode `json:"mode,omitempty"`
}

PostgresVolumeExpansionSpec is the spec for Postgres volume expansion

func (*PostgresVolumeExpansionSpec) DeepCopy

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

func (*PostgresVolumeExpansionSpec) DeepCopyInto

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

type ProxySQLCustomConfiguration

type ProxySQLCustomConfiguration struct {
	ConfigMap *core.LocalObjectReference `json:"configMap,omitempty"`
	Data      map[string]string          `json:"data,omitempty"`
	Remove    bool                       `json:"remove,omitempty"`
}

func (*ProxySQLCustomConfiguration) DeepCopy

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

func (*ProxySQLCustomConfiguration) DeepCopyInto

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

type ProxySQLCustomConfigurationSpec

type ProxySQLCustomConfigurationSpec struct {
	//+optional
	MySQLUsers *MySQLUsers `json:"mysqlUsers,omitempty"`

	//+optional
	MySQLQueryRules *MySQLQueryRules `json:"mysqlQueryRules,omitempty"`

	// +optional
	// +kubebuilder:pruning:PreserveUnknownFields
	AdminVariables *runtime.RawExtension `json:"adminVariables,omitempty"`

	// +optional
	// +kubebuilder:pruning:PreserveUnknownFields
	MySQLVariables *runtime.RawExtension `json:"mysqlVariables,omitempty"`
}

func (*ProxySQLCustomConfigurationSpec) DeepCopy

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

func (*ProxySQLCustomConfigurationSpec) DeepCopyInto

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

type ProxySQLHorizontalScalingSpec

type ProxySQLHorizontalScalingSpec struct {
	// Number of nodes/members of the group
	Member *int32 `json:"member,omitempty"`
}

HorizontalScaling is the spec for ProxySQL horizontal scaling

func (*ProxySQLHorizontalScalingSpec) DeepCopy

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

func (*ProxySQLHorizontalScalingSpec) DeepCopyInto

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

type ProxySQLOpsRequest

type ProxySQLOpsRequest struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              ProxySQLOpsRequestSpec `json:"spec,omitempty"`
	Status            OpsRequestStatus       `json:"status,omitempty"`
}

+kubebuilder:object:root=true +kubebuilder:resource:path=proxysqlopsrequests,singular=proxysqlopsrequest,shortName=prxops,categories={datastore,kubedb,appscode} +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Type",type="string",JSONPath=".spec.type" +kubebuilder:printcolumn:name="Status",type="string",JSONPath=".status.phase" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp"

func (ProxySQLOpsRequest) CustomResourceDefinition

func (_ ProxySQLOpsRequest) CustomResourceDefinition() *apiextensions.CustomResourceDefinition

func (*ProxySQLOpsRequest) DeepCopy

func (in *ProxySQLOpsRequest) DeepCopy() *ProxySQLOpsRequest

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

func (*ProxySQLOpsRequest) DeepCopyInto

func (in *ProxySQLOpsRequest) DeepCopyInto(out *ProxySQLOpsRequest)

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

func (*ProxySQLOpsRequest) DeepCopyObject

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

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

func (*ProxySQLOpsRequest) GetDBRefName added in v0.28.1

func (e *ProxySQLOpsRequest) GetDBRefName() string

func (*ProxySQLOpsRequest) GetObjectMeta added in v0.28.1

func (e *ProxySQLOpsRequest) GetObjectMeta() metav1.ObjectMeta

func (*ProxySQLOpsRequest) GetRequestType added in v0.28.1

func (e *ProxySQLOpsRequest) GetRequestType() string

func (*ProxySQLOpsRequest) GetStatus added in v0.28.1

func (e *ProxySQLOpsRequest) GetStatus() OpsRequestStatus

func (ProxySQLOpsRequest) ResourceFQN added in v0.16.0

func (p ProxySQLOpsRequest) ResourceFQN() string

func (ProxySQLOpsRequest) ResourceKind

func (p ProxySQLOpsRequest) ResourceKind() string

func (ProxySQLOpsRequest) ResourcePlural

func (p ProxySQLOpsRequest) ResourcePlural() string

func (ProxySQLOpsRequest) ResourceShortCode

func (p ProxySQLOpsRequest) ResourceShortCode() string

func (ProxySQLOpsRequest) ResourceSingular

func (p ProxySQLOpsRequest) ResourceSingular() string

func (*ProxySQLOpsRequest) SetStatus added in v0.28.1

func (e *ProxySQLOpsRequest) SetStatus(s OpsRequestStatus)

type ProxySQLOpsRequestList

type ProxySQLOpsRequestList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`

	//+optional
	// Items is a list of ProxySQLOpsRequest CRD objects
	Items []ProxySQLOpsRequest `json:"items,omitempty"`
}

ProxySQLOpsRequestList is a list of ProxySQLOpsRequests

func (*ProxySQLOpsRequestList) DeepCopy

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

func (*ProxySQLOpsRequestList) DeepCopyInto

func (in *ProxySQLOpsRequestList) DeepCopyInto(out *ProxySQLOpsRequestList)

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

func (*ProxySQLOpsRequestList) DeepCopyObject

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

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

type ProxySQLOpsRequestSpec

type ProxySQLOpsRequestSpec struct {
	// Specifies the ProxySQL reference
	ProxyRef core.LocalObjectReference `json:"proxyRef"`
	// Specifies the ops request type: Upgrade, HorizontalScaling, VerticalScaling etc.
	Type ProxySQLOpsRequestType `json:"type"`
	// Specifies information necessary for upgrading ProxySQL
	Upgrade *ProxySQLUpgradeSpec `json:"upgrade,omitempty"`
	// Specifies information necessary for horizontal scaling
	HorizontalScaling *ProxySQLHorizontalScalingSpec `json:"horizontalScaling,omitempty"`
	// Specifies information necessary for vertical scaling
	VerticalScaling *ProxySQLVerticalScalingSpec `json:"verticalScaling,omitempty"`
	// Specifies information necessary for custom configuration of ProxySQL
	Configuration *ProxySQLCustomConfigurationSpec `json:"configuration,omitempty"`
	// Specifies information necessary for configuring TLS
	TLS *TLSSpec `json:"tls,omitempty"`
	// Specifies information necessary for restarting database
	Restart *RestartSpec `json:"restart,omitempty"`
	// Timeout for each step of the ops request in second. If a step doesn't finish within the specified timeout, the ops request will result in failure.
	Timeout *metav1.Duration `json:"timeout,omitempty"`
	// ApplyOption is to control the execution of OpsRequest depending on the database state.
	// +kubebuilder:default="IfReady"
	Apply ApplyOption `json:"apply,omitempty"`
}

ProxySQLOpsRequestSpec is the spec for ProxySQLOpsRequest

func (*ProxySQLOpsRequestSpec) DeepCopy

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

func (*ProxySQLOpsRequestSpec) DeepCopyInto

func (in *ProxySQLOpsRequestSpec) DeepCopyInto(out *ProxySQLOpsRequestSpec)

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

type ProxySQLOpsRequestType added in v0.29.0

type ProxySQLOpsRequestType string

+kubebuilder:validation:Enum=UpdateVersion;HorizontalScaling;VerticalScaling;Restart;Reconfigure;ReconfigureTLS

const (
	// used for UpdateVersion operation
	ProxySQLOpsRequestTypeUpdateVersion ProxySQLOpsRequestType = "UpdateVersion"
	// used for HorizontalScaling operation
	ProxySQLOpsRequestTypeHorizontalScaling ProxySQLOpsRequestType = "HorizontalScaling"
	// used for VerticalScaling operation
	ProxySQLOpsRequestTypeVerticalScaling ProxySQLOpsRequestType = "VerticalScaling"
	// used for Restart operation
	ProxySQLOpsRequestTypeRestart ProxySQLOpsRequestType = "Restart"
	// used for Reconfigure operation
	ProxySQLOpsRequestTypeReconfigure ProxySQLOpsRequestType = "Reconfigure"
	// used for ReconfigureTLS operation
	ProxySQLOpsRequestTypeReconfigureTLSs ProxySQLOpsRequestType = "ReconfigureTLS"
)

type ProxySQLReplicaReadinessCriteria

type ProxySQLReplicaReadinessCriteria struct{}

ProxySQLReplicaReadinessCriteria is the criteria for checking readiness of a ProxySQL pod after updating, horizontal scaling etc.

func (*ProxySQLReplicaReadinessCriteria) DeepCopy

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

func (*ProxySQLReplicaReadinessCriteria) DeepCopyInto

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

type ProxySQLUpgradeSpec

type ProxySQLUpgradeSpec struct {
	// Specifies the target version name from catalog
	TargetVersion     string                            `json:"targetVersion,omitempty"`
	ReadinessCriteria *ProxySQLReplicaReadinessCriteria `json:"readinessCriteria,omitempty"`
}

func (*ProxySQLUpgradeSpec) DeepCopy

func (in *ProxySQLUpgradeSpec) DeepCopy() *ProxySQLUpgradeSpec

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

func (*ProxySQLUpgradeSpec) DeepCopyInto

func (in *ProxySQLUpgradeSpec) DeepCopyInto(out *ProxySQLUpgradeSpec)

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

type ProxySQLVerticalScalingSpec

type ProxySQLVerticalScalingSpec struct {
	ProxySQL *core.ResourceRequirements `json:"proxysql,omitempty"`
}

ProxySQLVerticalScalingSpec is the spec for ProxySQL vertical scaling

func (*ProxySQLVerticalScalingSpec) DeepCopy

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

func (*ProxySQLVerticalScalingSpec) DeepCopyInto

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

type RedisCustomConfigurationSpec

type RedisCustomConfigurationSpec struct {
	// PodTemplate is an optional configuration for pods used to expose database
	// +optional
	PodTemplate        ofst.PodTemplateSpec       `json:"podTemplate,omitempty"`
	ConfigSecret       *core.LocalObjectReference `json:"configSecret,omitempty"`
	InlineConfig       string                     `json:"inlineConfig,omitempty"`
	RemoveCustomConfig bool                       `json:"removeCustomConfig,omitempty"`
}

func (*RedisCustomConfigurationSpec) DeepCopy

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

func (*RedisCustomConfigurationSpec) DeepCopyInto

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

type RedisHorizontalScalingSpec

type RedisHorizontalScalingSpec struct {
	// Number of Masters in the cluster
	Master *int32 `json:"master,omitempty"`
	// specifies the number of replica for the master
	Replicas *int32 `json:"replicas,omitempty"`
}

func (*RedisHorizontalScalingSpec) DeepCopy

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

func (*RedisHorizontalScalingSpec) DeepCopyInto

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

type RedisOpsRequest

type RedisOpsRequest struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              RedisOpsRequestSpec `json:"spec,omitempty"`
	Status            OpsRequestStatus    `json:"status,omitempty"`
}

+kubebuilder:object:root=true +kubebuilder:resource:path=redisopsrequests,singular=redisopsrequest,shortName=rdops,categories={datastore,kubedb,appscode} +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Type",type="string",JSONPath=".spec.type" +kubebuilder:printcolumn:name="Status",type="string",JSONPath=".status.phase" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp"

func (RedisOpsRequest) CustomResourceDefinition

func (_ RedisOpsRequest) CustomResourceDefinition() *apiextensions.CustomResourceDefinition

func (*RedisOpsRequest) DeepCopy

func (in *RedisOpsRequest) DeepCopy() *RedisOpsRequest

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

func (*RedisOpsRequest) DeepCopyInto

func (in *RedisOpsRequest) DeepCopyInto(out *RedisOpsRequest)

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

func (*RedisOpsRequest) DeepCopyObject

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

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

func (*RedisOpsRequest) GetDBRefName added in v0.28.1

func (e *RedisOpsRequest) GetDBRefName() string

func (*RedisOpsRequest) GetObjectMeta added in v0.28.1

func (e *RedisOpsRequest) GetObjectMeta() metav1.ObjectMeta

func (*RedisOpsRequest) GetRequestType added in v0.28.1

func (e *RedisOpsRequest) GetRequestType() string

func (*RedisOpsRequest) GetStatus added in v0.28.1

func (e *RedisOpsRequest) GetStatus() OpsRequestStatus

func (RedisOpsRequest) ResourceFQN added in v0.16.0

func (r RedisOpsRequest) ResourceFQN() string

func (RedisOpsRequest) ResourceKind

func (r RedisOpsRequest) ResourceKind() string

func (RedisOpsRequest) ResourcePlural

func (r RedisOpsRequest) ResourcePlural() string

func (RedisOpsRequest) ResourceShortCode

func (r RedisOpsRequest) ResourceShortCode() string

func (RedisOpsRequest) ResourceSingular

func (r RedisOpsRequest) ResourceSingular() string

func (*RedisOpsRequest) SetStatus added in v0.28.1

func (e *RedisOpsRequest) SetStatus(s OpsRequestStatus)

func (RedisOpsRequest) ValidateSpecs

func (r RedisOpsRequest) ValidateSpecs() error

type RedisOpsRequestList

type RedisOpsRequestList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of RedisOpsRequest CRD objects
	Items []RedisOpsRequest `json:"items,omitempty"`
}

RedisOpsRequestList is a list of RedisOpsRequests

func (*RedisOpsRequestList) DeepCopy

func (in *RedisOpsRequestList) DeepCopy() *RedisOpsRequestList

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

func (*RedisOpsRequestList) DeepCopyInto

func (in *RedisOpsRequestList) DeepCopyInto(out *RedisOpsRequestList)

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

func (*RedisOpsRequestList) DeepCopyObject

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

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

type RedisOpsRequestSpec

type RedisOpsRequestSpec struct {
	// Specifies the Redis reference
	DatabaseRef core.LocalObjectReference `json:"databaseRef"`
	// Specifies the ops request type: Upgrade, HorizontalScaling, VerticalScaling etc.
	Type RedisOpsRequestType `json:"type"`
	// Specifies information necessary for upgrading Redis
	Upgrade *RedisUpgradeSpec `json:"upgrade,omitempty"`
	// Specifies information necessary for horizontal scaling
	HorizontalScaling *RedisHorizontalScalingSpec `json:"horizontalScaling,omitempty"`
	// Specifies information necessary for vertical scaling
	VerticalScaling *RedisVerticalScalingSpec `json:"verticalScaling,omitempty"`
	// Specifies information necessary for volume expansion
	VolumeExpansion *RedisVolumeExpansionSpec `json:"volumeExpansion,omitempty"`
	// Specifies information necessary for custom configuration of Redis
	Configuration *RedisCustomConfigurationSpec `json:"configuration,omitempty"`
	// Specifies information necessary for configuring TLS
	TLS *RedisTLSSpec `json:"tls,omitempty"`
	// Specifies information necessary for restarting database
	Restart *RestartSpec `json:"restart,omitempty"`
	// Specifies information necessary for replacing sentinel instances
	Sentinel *RedisSentinelSpec `json:"sentinel,omitempty"`
	// Timeout for each step of the ops request in second. If a step doesn't finish within the specified timeout, the ops request will result in failure.
	Timeout *metav1.Duration `json:"timeout,omitempty"`
	// ApplyOption is to control the execution of OpsRequest depending on the database state.
	// +kubebuilder:default="IfReady"
	Apply ApplyOption `json:"apply,omitempty"`
}

RedisOpsRequestSpec is the spec for RedisOpsRequest

func (*RedisOpsRequestSpec) DeepCopy

func (in *RedisOpsRequestSpec) DeepCopy() *RedisOpsRequestSpec

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

func (*RedisOpsRequestSpec) DeepCopyInto

func (in *RedisOpsRequestSpec) DeepCopyInto(out *RedisOpsRequestSpec)

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

type RedisOpsRequestType added in v0.29.0

type RedisOpsRequestType string

+kubebuilder:validation:Enum=UpdateVersion;HorizontalScaling;VerticalScaling;VolumeExpansion;Restart;Reconfigure;ReconfigureTLS;ReplaceSentinel

const (
	// used for UpdateVersion operation
	RedisOpsRequestTypeUpdateVersion RedisOpsRequestType = "UpdateVersion"
	// used for HorizontalScaling operation
	RedisOpsRequestTypeHorizontalScaling RedisOpsRequestType = "HorizontalScaling"
	// used for VerticalScaling operation
	RedisOpsRequestTypeVerticalScaling RedisOpsRequestType = "VerticalScaling"
	// used for VolumeExpansion operation
	RedisOpsRequestTypeVolumeExpansion RedisOpsRequestType = "VolumeExpansion"
	// used for Restart operation
	RedisOpsRequestTypeRestart RedisOpsRequestType = "Restart"
	// used for Reconfigure operation
	RedisOpsRequestTypeReconfigure RedisOpsRequestType = "Reconfigure"
	// used for ReconfigureTLS operation
	RedisOpsRequestTypeReconfigureTLSs RedisOpsRequestType = "ReconfigureTLS"
	// used for Replace Redis Sentinel monitoring
	RedisOpsRequestTypeReplaceSentinel RedisOpsRequestType = "ReplaceSentinel"
)

type RedisReplicaReadinessCriteria

type RedisReplicaReadinessCriteria struct{}

RedisReplicaReadinessCriteria is the criteria for checking readiness of a Redis pod after updating, horizontal scaling etc.

func (*RedisReplicaReadinessCriteria) DeepCopy

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

func (*RedisReplicaReadinessCriteria) DeepCopyInto

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

type RedisSentinelCustomConfigurationSpec added in v0.29.0

type RedisSentinelCustomConfigurationSpec struct {
	// PodTemplate is an optional configuration for pods used to expose database
	// +optional
	PodTemplate        ofst.PodTemplateSpec       `json:"podTemplate,omitempty"`
	ConfigSecret       *core.LocalObjectReference `json:"configSecret,omitempty"`
	InlineConfig       string                     `json:"inlineConfig,omitempty"`
	RemoveCustomConfig bool                       `json:"removeCustomConfig,omitempty"`
}

func (*RedisSentinelCustomConfigurationSpec) DeepCopy added in v0.29.0

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

func (*RedisSentinelCustomConfigurationSpec) DeepCopyInto added in v0.29.0

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

type RedisSentinelHorizontalScalingSpec added in v0.29.0

type RedisSentinelHorizontalScalingSpec struct {
	// specifies the number of replica for the master
	Replicas *int32 `json:"replicas,omitempty"`
}

func (*RedisSentinelHorizontalScalingSpec) DeepCopy added in v0.29.0

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

func (*RedisSentinelHorizontalScalingSpec) DeepCopyInto added in v0.29.0

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

type RedisSentinelOpsRequest added in v0.29.0

type RedisSentinelOpsRequest struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              RedisSentinelOpsRequestSpec `json:"spec,omitempty"`
	Status            OpsRequestStatus            `json:"status,omitempty"`
}

+kubebuilder:object:root=true +kubebuilder:resource:path=redissentinelopsrequests,singular=redissentinelopsrequest,shortName=rdsops,categories={datastore,kubedb,appscode} +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Type",type="string",JSONPath=".spec.type" +kubebuilder:printcolumn:name="Status",type="string",JSONPath=".status.phase" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp"

func (RedisSentinelOpsRequest) CustomResourceDefinition added in v0.29.0

func (_ RedisSentinelOpsRequest) CustomResourceDefinition() *apiextensions.CustomResourceDefinition

func (*RedisSentinelOpsRequest) DeepCopy added in v0.29.0

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

func (*RedisSentinelOpsRequest) DeepCopyInto added in v0.29.0

func (in *RedisSentinelOpsRequest) DeepCopyInto(out *RedisSentinelOpsRequest)

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

func (*RedisSentinelOpsRequest) DeepCopyObject added in v0.29.0

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

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

func (*RedisSentinelOpsRequest) GetDBRefName added in v0.29.0

func (e *RedisSentinelOpsRequest) GetDBRefName() string

func (*RedisSentinelOpsRequest) GetObjectMeta added in v0.29.0

func (e *RedisSentinelOpsRequest) GetObjectMeta() metav1.ObjectMeta

func (*RedisSentinelOpsRequest) GetRequestType added in v0.29.0

func (e *RedisSentinelOpsRequest) GetRequestType() string

func (*RedisSentinelOpsRequest) GetStatus added in v0.29.0

func (RedisSentinelOpsRequest) ResourceFQN added in v0.29.0

func (r RedisSentinelOpsRequest) ResourceFQN() string

func (RedisSentinelOpsRequest) ResourceKind added in v0.29.0

func (r RedisSentinelOpsRequest) ResourceKind() string

func (RedisSentinelOpsRequest) ResourcePlural added in v0.29.0

func (r RedisSentinelOpsRequest) ResourcePlural() string

func (RedisSentinelOpsRequest) ResourceShortCode added in v0.29.0

func (r RedisSentinelOpsRequest) ResourceShortCode() string

func (RedisSentinelOpsRequest) ResourceSingular added in v0.29.0

func (r RedisSentinelOpsRequest) ResourceSingular() string

func (*RedisSentinelOpsRequest) SetStatus added in v0.29.0

func (e *RedisSentinelOpsRequest) SetStatus(s OpsRequestStatus)

func (RedisSentinelOpsRequest) ValidateSpecs added in v0.29.0

func (r RedisSentinelOpsRequest) ValidateSpecs() error

type RedisSentinelOpsRequestList added in v0.29.0

type RedisSentinelOpsRequestList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of RedisSentinelOpsRequest CRD objects
	Items []RedisSentinelOpsRequest `json:"items,omitempty"`
}

RedisSentinelOpsRequestList is a list of RedisSentinelOpsRequests

func (*RedisSentinelOpsRequestList) DeepCopy added in v0.29.0

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

func (*RedisSentinelOpsRequestList) DeepCopyInto added in v0.29.0

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

func (*RedisSentinelOpsRequestList) DeepCopyObject added in v0.29.0

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

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

type RedisSentinelOpsRequestSpec added in v0.29.0

type RedisSentinelOpsRequestSpec struct {
	// Specifies the RedisSentinel reference
	DatabaseRef core.LocalObjectReference `json:"databaseRef"`
	// Specifies the ops request type: Upgrade, HorizontalScaling, VerticalScaling etc.
	Type RedisSentinelOpsRequestType `json:"type"`
	// Specifies information necessary for upgrading RedisSentinel
	Upgrade *RedisSentinelUpgradeSpec `json:"upgrade,omitempty"`
	// Specifies information necessary for horizontal scaling
	HorizontalScaling *RedisSentinelHorizontalScalingSpec `json:"horizontalScaling,omitempty"`
	// Specifies information necessary for vertical scaling
	VerticalScaling *RedisSentinelVerticalScalingSpec `json:"verticalScaling,omitempty"`
	// Specifies information necessary for custom configuration of RedisSentinel
	Configuration *RedisSentinelCustomConfigurationSpec `json:"configuration,omitempty"`
	// Specifies information necessary for configuring TLS
	TLS *TLSSpec `json:"tls,omitempty"`
	// Specifies information necessary for restarting database
	Restart *RestartSpec `json:"restart,omitempty"`
	// Timeout for each step of the ops request in second. If a step doesn't finish within the specified timeout, the ops request will result in failure.
	Timeout *metav1.Duration `json:"timeout,omitempty"`
	// ApplyOption is to control the execution of OpsRequest depending on the database state.
	// +kubebuilder:default="IfReady"
	Apply ApplyOption `json:"apply,omitempty"`
}

RedisSentinelOpsRequestSpec is the spec for RedisSentinelOpsRequest

func (*RedisSentinelOpsRequestSpec) DeepCopy added in v0.29.0

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

func (*RedisSentinelOpsRequestSpec) DeepCopyInto added in v0.29.0

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

type RedisSentinelOpsRequestType added in v0.29.0

type RedisSentinelOpsRequestType string

+kubebuilder:validation:Enum=UpdateVersion;HorizontalScaling;VerticalScaling;Restart;Reconfigure;ReconfigureTLS

const (
	// used for UpdateVersion operation
	RedisSentinelOpsRequestTypeUpdateVersion RedisSentinelOpsRequestType = "UpdateVersion"
	// used for HorizontalScaling operation
	RedisSentinelOpsRequestTypeHorizontalScaling RedisSentinelOpsRequestType = "HorizontalScaling"
	// used for VerticalScaling operation
	RedisSentinelOpsRequestTypeVerticalScaling RedisSentinelOpsRequestType = "VerticalScaling"
	// used for Restart operation
	RedisSentinelOpsRequestTypeRestart RedisSentinelOpsRequestType = "Restart"
	// used for Reconfigure operation
	RedisSentinelOpsRequestTypeReconfigure RedisSentinelOpsRequestType = "Reconfigure"
	// used for ReconfigureTLS operation
	RedisSentinelOpsRequestTypeReconfigureTLSs RedisSentinelOpsRequestType = "ReconfigureTLS"
)

type RedisSentinelRef added in v0.29.0

type RedisSentinelRef struct {
	// Name of the refereed sentinel
	Name string `json:"name,omitempty"`

	// Namespace where refereed sentinel has been deployed
	Namespace string `json:"namespace,omitempty"`
}

func (*RedisSentinelRef) DeepCopy added in v0.29.0

func (in *RedisSentinelRef) DeepCopy() *RedisSentinelRef

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

func (*RedisSentinelRef) DeepCopyInto added in v0.29.0

func (in *RedisSentinelRef) DeepCopyInto(out *RedisSentinelRef)

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

type RedisSentinelReplicaReadinessCriteria added in v0.29.0

type RedisSentinelReplicaReadinessCriteria struct{}

RedisSentinelReplicaReadinessCriteria is the criteria for checking readiness of a RedisSentinel pod after updating, horizontal scaling etc.

func (*RedisSentinelReplicaReadinessCriteria) DeepCopy added in v0.29.0

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

func (*RedisSentinelReplicaReadinessCriteria) DeepCopyInto added in v0.29.0

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

type RedisSentinelSpec added in v0.29.0

type RedisSentinelSpec struct {
	// Sentinel Ref for new Sentinel which will replace the old sentinel
	Ref *RedisSentinelRef `json:"ref"`
	// +optional
	RemoveUnusedSentinel bool `json:"removeUnusedSentinel,omitempty"`
}

func (*RedisSentinelSpec) DeepCopy added in v0.29.0

func (in *RedisSentinelSpec) DeepCopy() *RedisSentinelSpec

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

func (*RedisSentinelSpec) DeepCopyInto added in v0.29.0

func (in *RedisSentinelSpec) DeepCopyInto(out *RedisSentinelSpec)

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

type RedisSentinelUpgradeSpec added in v0.29.0

type RedisSentinelUpgradeSpec struct {
	// Specifies the target version name from catalog
	TargetVersion     string                                 `json:"targetVersion,omitempty"`
	ReadinessCriteria *RedisSentinelReplicaReadinessCriteria `json:"readinessCriteria,omitempty"`
}

func (*RedisSentinelUpgradeSpec) DeepCopy added in v0.29.0

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

func (*RedisSentinelUpgradeSpec) DeepCopyInto added in v0.29.0

func (in *RedisSentinelUpgradeSpec) DeepCopyInto(out *RedisSentinelUpgradeSpec)

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

type RedisSentinelVerticalScalingSpec added in v0.29.0

type RedisSentinelVerticalScalingSpec struct {
	RedisSentinel *core.ResourceRequirements `json:"redissentinel,omitempty"`
	Exporter      *core.ResourceRequirements `json:"exporter,omitempty"`
	Coordinator   *core.ResourceRequirements `json:"coordinator,omitempty"`
}

RedisSentinelVerticalScalingSpec is the spec for RedisSentinel vertical scaling

func (*RedisSentinelVerticalScalingSpec) DeepCopy added in v0.29.0

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

func (*RedisSentinelVerticalScalingSpec) DeepCopyInto added in v0.29.0

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

type RedisSentinelVolumeExpansionSpec added in v0.29.0

type RedisSentinelVolumeExpansionSpec struct {
	// +kubebuilder:default="Online"
	Mode          *VolumeExpansionMode `json:"mode,omitempty"`
	RedisSentinel *resource.Quantity   `json:"redissentinel,omitempty"`
}

RedisSentinelVolumeExpansionSpec is the spec for RedisSentinel volume expansion

func (*RedisSentinelVolumeExpansionSpec) DeepCopy added in v0.29.0

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

func (*RedisSentinelVolumeExpansionSpec) DeepCopyInto added in v0.29.0

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

type RedisTLSSpec added in v0.29.0

type RedisTLSSpec struct {
	*TLSSpec `json:",inline"`
	// This field is only needed in Redis Sentinel Mode when we add or remove TLS. In Redis Sentinel Mode, both redis instances and
	// sentinel instances either have TLS or don't have TLS. So when want to add TLS to Redis in Sentinel Mode, current sentinel instances don't
	// have TLS enabled, so we need to give a new Sentinel Reference which has TLS enabled and which will monitor the Redis instances when we
	// add TLS to it
	// +optional
	Sentinel *RedisSentinelSpec `json:"sentinel,omitempty"`
}

func (*RedisTLSSpec) DeepCopy added in v0.29.0

func (in *RedisTLSSpec) DeepCopy() *RedisTLSSpec

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

func (*RedisTLSSpec) DeepCopyInto added in v0.29.0

func (in *RedisTLSSpec) DeepCopyInto(out *RedisTLSSpec)

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

type RedisUpgradeSpec

type RedisUpgradeSpec struct {
	// Specifies the target version name from catalog
	TargetVersion     string                         `json:"targetVersion,omitempty"`
	ReadinessCriteria *RedisReplicaReadinessCriteria `json:"readinessCriteria,omitempty"`
}

func (*RedisUpgradeSpec) DeepCopy

func (in *RedisUpgradeSpec) DeepCopy() *RedisUpgradeSpec

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

func (*RedisUpgradeSpec) DeepCopyInto

func (in *RedisUpgradeSpec) DeepCopyInto(out *RedisUpgradeSpec)

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

type RedisVerticalScalingSpec

type RedisVerticalScalingSpec struct {
	Redis       *core.ResourceRequirements `json:"redis,omitempty"`
	Exporter    *core.ResourceRequirements `json:"exporter,omitempty"`
	Coordinator *core.ResourceRequirements `json:"coordinator,omitempty"`
}

RedisVerticalScalingSpec is the spec for Redis vertical scaling

func (*RedisVerticalScalingSpec) DeepCopy

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

func (*RedisVerticalScalingSpec) DeepCopyInto

func (in *RedisVerticalScalingSpec) DeepCopyInto(out *RedisVerticalScalingSpec)

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

type RedisVolumeExpansionSpec

type RedisVolumeExpansionSpec struct {
	// +kubebuilder:default="Online"
	Mode  *VolumeExpansionMode `json:"mode,omitempty"`
	Redis *resource.Quantity   `json:"redis,omitempty"`
}

RedisVolumeExpansionSpec is the spec for Redis volume expansion

func (*RedisVolumeExpansionSpec) DeepCopy

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

func (*RedisVolumeExpansionSpec) DeepCopyInto

func (in *RedisVolumeExpansionSpec) DeepCopyInto(out *RedisVolumeExpansionSpec)

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

type Reprovision added in v0.25.0

type Reprovision struct{}

func (*Reprovision) DeepCopy added in v0.25.0

func (in *Reprovision) DeepCopy() *Reprovision

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

func (*Reprovision) DeepCopyInto added in v0.25.0

func (in *Reprovision) DeepCopyInto(out *Reprovision)

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

type RestartSpec

type RestartSpec struct{}

func (*RestartSpec) DeepCopy

func (in *RestartSpec) DeepCopy() *RestartSpec

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

func (*RestartSpec) DeepCopyInto

func (in *RestartSpec) DeepCopyInto(out *RestartSpec)

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

type TLSSpec

type TLSSpec struct {
	// TLSConfig contains updated tls configurations for client and server.
	// +optional
	kmapi.TLSConfig `json:",inline,omitempty"`

	// RotateCertificates tells operator to initiate certificate rotation
	// +optional
	RotateCertificates bool `json:"rotateCertificates,omitempty"`

	// Remove tells operator to remove TLS configuration
	// +optional
	Remove bool `json:"remove,omitempty"`
}

func (*TLSSpec) DeepCopy

func (in *TLSSpec) DeepCopy() *TLSSpec

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

func (*TLSSpec) DeepCopyInto

func (in *TLSSpec) DeepCopyInto(out *TLSSpec)

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

type VolumeExpansionMode added in v0.22.0

type VolumeExpansionMode string

+kubebuilder:validation:Enum=Offline;Online

const (
	// used to define a Online volume expansion mode
	VolumeExpansionModeOnline VolumeExpansionMode = "Online"
	// used to define a Offline volume expansion mode
	VolumeExpansionModeOffline VolumeExpansionMode = "Offline"
)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL