v1alpha1

package
v0.6.0 Latest Latest
Warning

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

Go to latest
Published: Jun 21, 2026 License: Apache-2.0 Imports: 20 Imported by: 0

Documentation

Overview

Package v1alpha1 contains API Schema definitions for the db v1alpha1 API group +kubebuilder:object:generate=true +groupName=db.ibm.com

Index

Constants

View Source
const (
	CassandraClusterInstance  = "cassandra-cluster-instance"
	CassandraClusterComponent = "cassandra-cluster-component"
	CassandraClusterDC        = "cassandra-cluster-dc"
	CassandraClusterChecksum  = "cassandra-cluster-checksum"
	CassandraClusterSeed      = "cassandra-cluster-seed"

	CassandraClusterComponentProber    = "prober"
	CassandraClusterComponentReaper    = "reaper"
	CassandraClusterComponentCassandra = "cassandra"
	CassandraClusterNetworkPolicy      = "network-policy"

	CassandraAgentTlp         = "tlp"
	CassandraAgentInstaclustr = "instaclustr"
	CassandraAgentDatastax    = "datastax"

	CassandraDefaultRole           = "cassandra"
	CassandraDefaultPassword       = "cassandra"
	CassandraOperatorAdminRole     = "admin-role"
	CassandraOperatorAdminPassword = "admin-password"

	CassandraOperatorInstance     = "operator"
	CassandraOperatorInstanceName = "mr-cassop"

	ProberServicePort    = 80
	JolokiaContainerPort = 8080
	ProberContainerPort  = 8888

	ReaperAppPort   = 8080
	ReaperAdminPort = 8081

	IntraPort       = 7000
	TlsPort         = 7001
	JmxPort         = 7199
	TlpPort         = 8090
	CqlPort         = 9042
	DatastaxPort    = 9103
	InstaclustrPort = 9500
	IcarusPort      = 4567

	ReaperReplicasNumber = 1

	InternodeEncryptionNone = "none"

	HMS       = "15:04:05"
	ISOFormat = "2006-01-02T" + HMS // YYYY-MM-DDThh:mm:ss format (reaper API dates do not include timezone)
)

Variables

View Source
var (
	// GroupVersion is group version used to register these objects
	GroupVersion = schema.GroupVersion{Group: "db.ibm.com", Version: "v1alpha1"}

	// SchemeBuilder is used to add go types to the GroupVersionKind scheme
	SchemeBuilder = &scheme.Builder{GroupVersion: GroupVersion}

	// AddToScheme adds the types in this group-version to the given scheme.
	AddToScheme = SchemeBuilder.AddToScheme
)

Functions

func SetWebhookLogger

func SetWebhookLogger(l *zap.SugaredLogger)

func ValidateStorageSecret

func ValidateStorageSecret(logger *zap.SugaredLogger, secret *v1.Secret, storageProvider StorageProvider) error

Types

type AutoScheduling

type AutoScheduling struct {
	Enabled                 bool     `json:"enabled,omitempty"`
	InitialDelayPeriod      string   `json:"initialDelayPeriod,omitempty"`
	PeriodBetweenPolls      string   `json:"periodBetweenPolls,omitempty"`
	TimeBeforeFirstSchedule string   `json:"timeBeforeFirstSchedule,omitempty"`
	ScheduleSpreadPeriod    string   `json:"scheduleSpreadPeriod,omitempty"`
	ExcludedKeyspaces       []string `json:"excludedKeyspaces,omitempty"`
}

func (*AutoScheduling) DeepCopy

func (in *AutoScheduling) DeepCopy() *AutoScheduling

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

func (*AutoScheduling) DeepCopyInto

func (in *AutoScheduling) DeepCopyInto(out *AutoScheduling)

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

type BackupError

type BackupError struct {
	// Name of the node where the error occurred
	Source string `json:"source,omitempty"`
	// The error message
	Message string `json:"message,omitempty"`
}

func (*BackupError) DeepCopy

func (in *BackupError) DeepCopy() *BackupError

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

func (*BackupError) DeepCopyInto

func (in *BackupError) DeepCopyInto(out *BackupError)

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

type CATLSSecret

type CATLSSecret struct {
	Name       string `json:"name"`
	FileKey    string `json:"fileKey,omitempty"`
	CrtFileKey string `json:"crtFileKey,omitempty"`
}

func (*CATLSSecret) DeepCopy

func (in *CATLSSecret) DeepCopy() *CATLSSecret

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

func (*CATLSSecret) DeepCopyInto

func (in *CATLSSecret) DeepCopyInto(out *CATLSSecret)

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

type Cassandra

type Cassandra struct {
	Image string `json:"image,omitempty"`
	// +kubebuilder:validation:Enum:=Always;Never;IfNotPresent
	ImagePullPolicy v1.PullPolicy           `json:"imagePullPolicy,omitempty"`
	Resources       v1.ResourceRequirements `json:"resources,omitempty"`
	// +kubebuilder:validation:Enum:=info;debug;trace
	LogLevel string `json:"logLevel,omitempty"`
	// +kubebuilder:validation:Minimum:=1
	NumSeeds int32 `json:"numSeeds,omitempty"`
	// +kubebuilder:validation:Minimum:=0
	TerminationGracePeriodSeconds *int64            `json:"terminationGracePeriodSeconds,omitempty"`
	PurgeGossip                   *bool             `json:"purgeGossip,omitempty"`
	Persistence                   Persistence       `json:"persistence,omitempty"`
	ZonesAsRacks                  bool              `json:"zonesAsRacks,omitempty"`
	JVMOptions                    []string          `json:"jvmOptions,omitempty"`
	Sysctls                       map[string]string `json:"sysctls,omitempty"`
	Monitoring                    Monitoring        `json:"monitoring,omitempty"`
	ConfigOverrides               string            `json:"configOverrides,omitempty"`
}

func (*Cassandra) DeepCopy

func (in *Cassandra) DeepCopy() *Cassandra

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

func (*Cassandra) DeepCopyInto

func (in *Cassandra) DeepCopyInto(out *Cassandra)

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

type CassandraBackup

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

	Spec   CassandraBackupSpec   `json:"spec"`
	Status CassandraBackupStatus `json:"status,omitempty"`
}

CassandraBackup is the Schema for the CassandraBackups API

func (*CassandraBackup) DeepCopy

func (in *CassandraBackup) DeepCopy() *CassandraBackup

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

func (*CassandraBackup) DeepCopyInto

func (in *CassandraBackup) DeepCopyInto(out *CassandraBackup)

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

func (*CassandraBackup) DeepCopyObject

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

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

func (*CassandraBackup) SetupWebhookWithManager

func (cb *CassandraBackup) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*CassandraBackup) StorageProvider

func (in *CassandraBackup) StorageProvider() StorageProvider

func (*CassandraBackup) ValidateCreate

func (cb *CassandraBackup) ValidateCreate(ctx context.Context, obj runtime.Object) (admission.Warnings, error)

ValidateCreate implements webhook.CustomValidator so a webhook will be registered for the type

func (*CassandraBackup) ValidateDelete

func (cb *CassandraBackup) ValidateDelete(ctx context.Context, obj runtime.Object) (admission.Warnings, error)

ValidateDelete implements webhook.CustomValidator so a webhook will be registered for the type

func (*CassandraBackup) ValidateUpdate

func (cb *CassandraBackup) ValidateUpdate(ctx context.Context, oldObj, newObj runtime.Object) (admission.Warnings, error)

ValidateUpdate implements webhook.CustomValidator so a webhook will be registered for the type

type CassandraBackupList

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

CassandraBackupList contains a list of CassandraBackup

func (*CassandraBackupList) DeepCopy

func (in *CassandraBackupList) DeepCopy() *CassandraBackupList

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

func (*CassandraBackupList) DeepCopyInto

func (in *CassandraBackupList) DeepCopyInto(out *CassandraBackupList)

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

func (*CassandraBackupList) DeepCopyObject

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

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

type CassandraBackupSpec

type CassandraBackupSpec struct {
	// CassandraCluster that is being backed up
	CassandraCluster string `json:"cassandraCluster"`
	// example: gcp://myBucket
	// location where SSTables will be uploaded.
	// A value of the storageLocation property has to have exact format which is 'protocol://bucket-name
	// protocol is either 'gcp', 's3', 'azure', 'minio', 'ceph' or 'oracle'.
	StorageLocation string `json:"storageLocation"`
	// Name of the secret from which credentials used for the communication to cloud storage providers are read.
	SecretName string `json:"secretName"`
	// Tag name that identifies the backup. Defaulted to the name of the CassandraBackup.
	SnapshotTag string `json:"snapshotTag,omitempty"`
	// Based on this field, there will be throughput per second computed based on what size data we want to upload we have.
	// The formula is "size / duration". The lower the duration is, the higher throughput per second we will need and vice versa.
	// This will influence e.g. responsiveness of a node to its business requests so one can control how much bandwidth is used for backup purposes in case a cluster is fully operational.
	// The format of this field is "amount unit". 'unit' is just a (case-insensitive) java.util.concurrent.TimeUnit enum value.
	// If not used, there will not be any restrictions as how fast an upload can be.
	Duration string `json:"duration,omitempty"`
	// bandwidth used during uploads
	Bandwidth *DataRate `json:"bandwidth,omitempty"`
	// number of threads used for upload, there might be at most so many uploading threads at any given time, when not set, it defaults to 10
	// +kubebuilder:validation:Minimum=1
	ConcurrentConnections int64 `json:"concurrentConnections,omitempty"`
	// name of datacenter to backup, nodes in the other datacenter(s) will not be involved
	DC string `json:"dc,omitempty"`
	// database entities to backup, it might be either only keyspaces or only tables (from different keyspaces if needed),
	// e.g. 'k1,k2' if one wants to backup whole keyspaces and 'ks1.t1,ks2,t2' if one wants to backup tables.
	// These formats can not be used together so 'k1,k2.t2' is invalid. If this field is empty, all keyspaces are backed up.
	Entities string `json:"entities,omitempty"`
	// number of hours to wait until backup is considered failed if not finished already
	// +kubebuilder:validation:Minimum=1
	Timeout int64 `json:"timeout,omitempty"`
	// Relevant during upload to S3-like bucket only. Specifies whether the metadata is copied from the source object or replaced with metadata provided in the request.
	// Defaults to COPY. Consult com.amazonaws.services.s3.model.MetadatDirective for more information.
	// +kubebuilder:validation:Enum=COPY;REPLACE
	MetadataDirective string `json:"metadataDirective,omitempty"`
	// Relevant during upload to S3-like bucket only. If true, communication is done via HTTP instead of HTTPS. Defaults to false.
	Insecure bool `json:"insecure,omitempty"`
	// Automatically creates a bucket if it does not exist. If a bucket does not exist, backup operation will fail. Defaults to false.
	CreateMissingBucket bool `json:"createMissingBucket,omitempty"`
	// Do not check the existence of a bucket.
	// Some storage providers (e.g. S3) requires a special permissions to be able to list buckets or query their existence which might not be allowed.
	// This flag will skip that check. Keep in mind that if that bucket does not exist, the whole backup operation will fail.
	SkipBucketVerification bool `json:"skipBucketVerification,omitempty"`
	// If set to true, refreshment of an object in a remote bucket (e.g. for s3) will be skipped.
	// This might help upon backuping to specific s3 storage providers like Dell ECS storage.
	// You will also skip versioning creating new versions when turned off as refreshment creates new version of files as a side effect.
	SkipRefreshing bool  `json:"skipRefreshing,omitempty"`
	Retry          Retry `json:"retry,omitempty"`
}

func (*CassandraBackupSpec) DeepCopy

func (in *CassandraBackupSpec) DeepCopy() *CassandraBackupSpec

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

func (*CassandraBackupSpec) DeepCopyInto

func (in *CassandraBackupSpec) DeepCopyInto(out *CassandraBackupSpec)

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

type CassandraBackupStatus

type CassandraBackupStatus struct {
	// The current state of the backup
	State string `json:"state,omitempty"`
	// Errors that occurred during backup process. Errors from all nodes are aggregated here
	Errors []BackupError `json:"errors,omitempty"`
	// A value from 0 to 100 indicating the progress of the backup as a percentage
	Progress int `json:"progress,omitempty"`
}

func (*CassandraBackupStatus) DeepCopy

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

func (*CassandraBackupStatus) DeepCopyInto

func (in *CassandraBackupStatus) DeepCopyInto(out *CassandraBackupStatus)

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

type CassandraCluster

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

	Spec   CassandraClusterSpec   `json:"spec"`
	Status CassandraClusterStatus `json:"status,omitempty"`
}

CassandraCluster is the Schema for the cassandraclusters API

func (*CassandraCluster) DeepCopy

func (in *CassandraCluster) DeepCopy() *CassandraCluster

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

func (*CassandraCluster) DeepCopyInto

func (in *CassandraCluster) DeepCopyInto(out *CassandraCluster)

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

func (*CassandraCluster) DeepCopyObject

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

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

func (*CassandraCluster) SetupWebhookWithManager

func (cc *CassandraCluster) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*CassandraCluster) ValidateCreate

func (cc *CassandraCluster) ValidateCreate(ctx context.Context, obj runtime.Object) (admission.Warnings, error)

ValidateCreate implements webhook.CustomValidator so a webhook will be registered for the type

func (*CassandraCluster) ValidateDelete

func (cc *CassandraCluster) ValidateDelete(ctx context.Context, obj runtime.Object) (admission.Warnings, error)

ValidateDelete implements webhook.CustomValidator so a webhook will be registered for the type

func (*CassandraCluster) ValidateUpdate

func (cc *CassandraCluster) ValidateUpdate(ctx context.Context, oldObj, newObj runtime.Object) (admission.Warnings, error)

ValidateUpdate implements webhook.CustomValidator so a webhook will be registered for the type

type CassandraClusterList

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

CassandraClusterList contains a list of CassandraCluster

func (*CassandraClusterList) DeepCopy

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

func (*CassandraClusterList) DeepCopyInto

func (in *CassandraClusterList) DeepCopyInto(out *CassandraClusterList)

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

func (*CassandraClusterList) DeepCopyObject

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

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

type CassandraClusterSpec

type CassandraClusterSpec struct {
	// +kubebuilder:validation:MinItems:=1
	DCs []DC `json:"dcs"`
	// +kubebuilder:validation:MinLength:=1
	ImagePullSecretName  string     `json:"imagePullSecretName"`
	CQLConfigMapLabelKey string     `json:"cqlConfigMapLabelKey,omitempty"`
	Cassandra            *Cassandra `json:"cassandra,omitempty"`
	// +kubebuilder:validation:MinLength:=1
	AdminRoleSecretName  string          `json:"adminRoleSecretName"`
	RolesSecretName      string          `json:"rolesSecretName,omitempty"`
	TopologySpreadByZone *bool           `json:"topologySpreadByZone,omitempty"`
	Maintenance          []Maintenance   `json:"maintenance,omitempty" diff:"maintenance"`
	SystemKeyspaces      SystemKeyspaces `json:"systemKeyspaces,omitempty"`
	Ingress              Ingress         `json:"ingress,omitempty"`
	ExternalRegions      ExternalRegions `json:"externalRegions,omitempty"`
	Icarus               Icarus          `json:"icarus,omitempty"`
	Prober               Prober          `json:"prober,omitempty"`
	Reaper               *Reaper         `json:"reaper,omitempty"`
	HostPort             HostPort        `json:"hostPort,omitempty"`
	// Authentication is always enabled and by default is set to `internal`. Available options: `internal`, `local_files`.
	// +kubebuilder:validation:Enum:=local_files;internal
	JMXAuth    string     `json:"jmxAuth,omitempty"`
	Encryption Encryption `json:"encryption,omitempty"`
	// (Optional) Network policies for C* cluster
	// +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Network Policies for C* cluster"
	// +optional
	NetworkPolicies NetworkPolicies `json:"networkPolicies,omitempty"`
}

CassandraClusterSpec defines the desired state of CassandraCluster

func (*CassandraClusterSpec) DeepCopy

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

func (*CassandraClusterSpec) DeepCopyInto

func (in *CassandraClusterSpec) DeepCopyInto(out *CassandraClusterSpec)

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

type CassandraClusterStatus

type CassandraClusterStatus struct {
	MaintenanceState []Maintenance `json:"maintenanceState,omitempty"`
	Ready            bool          `json:"ready,omitempty"`
}

CassandraClusterStatus defines the observed state of CassandraCluster

func (*CassandraClusterStatus) DeepCopy

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

func (*CassandraClusterStatus) DeepCopyInto

func (in *CassandraClusterStatus) DeepCopyInto(out *CassandraClusterStatus)

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

type CassandraRestore

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

	Spec   CassandraRestoreSpec   `json:"spec"`
	Status CassandraRestoreStatus `json:"status,omitempty"`
}

CassandraRestore is the Schema for the CassandraRestores API

func (*CassandraRestore) DeepCopy

func (in *CassandraRestore) DeepCopy() *CassandraRestore

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

func (*CassandraRestore) DeepCopyInto

func (in *CassandraRestore) DeepCopyInto(out *CassandraRestore)

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

func (*CassandraRestore) DeepCopyObject

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

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

func (*CassandraRestore) SetupWebhookWithManager

func (cr *CassandraRestore) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*CassandraRestore) StorageProvider

func (in *CassandraRestore) StorageProvider() StorageProvider

func (*CassandraRestore) ValidateCreate

func (cr *CassandraRestore) ValidateCreate(ctx context.Context, obj runtime.Object) (admission.Warnings, error)

ValidateCreate implements webhook.CustomValidator so a webhook will be registered for the type

func (*CassandraRestore) ValidateDelete

func (cr *CassandraRestore) ValidateDelete(ctx context.Context, obj runtime.Object) (admission.Warnings, error)

ValidateDelete implements webhook.CustomValidator so a webhook will be registered for the type

func (*CassandraRestore) ValidateUpdate

func (cr *CassandraRestore) ValidateUpdate(ctx context.Context, oldObj, newObj runtime.Object) (admission.Warnings, error)

ValidateUpdate implements webhook.CustomValidator so a webhook will be registered for the type

type CassandraRestoreList

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

CassandraRestoreList contains a list of CassandraRestore

func (*CassandraRestoreList) DeepCopy

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

func (*CassandraRestoreList) DeepCopyInto

func (in *CassandraRestoreList) DeepCopyInto(out *CassandraRestoreList)

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

func (*CassandraRestoreList) DeepCopyObject

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

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

type CassandraRestoreSpec

type CassandraRestoreSpec struct {
	CassandraCluster string `json:"cassandraCluster"`
	CassandraBackup  string `json:"cassandraBackup,omitempty"`
	// example: gcp://myBucket
	// location of SSTables
	// A value of the storageLocation property has to have exact format which is 'protocol://bucket-name
	// protocol is either 'gcp', 's3', 'azure', 'minio', 'ceph' or 'oracle'.
	// If empty, the value is retrieved from the CassandraBackup spec
	StorageLocation string `json:"storageLocation,omitempty"`
	// Name of the snapshot tag to restore. Can be used to manually set the snapshot tag. Retrieved from CassandraBackup if not specified
	SnapshotTag string `json:"snapshotTag,omitempty"`
	// Name of the secret from which credentials used for the communication to cloud storage providers are read.
	// The secret from the backup spec is used when empty
	SecretName string `json:"secretName,omitempty"`
	// number of threads used for download, there might be at most so many downloading threads at any given time,
	// when not set, it defaults to 10
	// +kubebuilder:validation:Minimum=1
	ConcurrentConnections int64 `json:"concurrentConnections,omitempty"`
	// Name of datacenter(s) against which restore will be done. It means that nodes in a different DC will not receive restore requests.
	// Multiple dcs are separated by comma
	DC string `json:"dc,omitempty"`
	// database entities to backup, it might be either only keyspaces or only tables (from different keyspaces if needed),
	// e.g. 'k1,k2' if one wants to backup whole keyspaces and 'ks1.t1,ks2,t2' if one wants to backup tables.
	// These formats can not be used together so 'k1,k2.t2' is invalid. If this field is empty, all keyspaces are backed up.
	Entities string `json:"entities,omitempty"`
	// flag saying if we should not delete truncated SSTables after they are imported, as part of CLEANUP phase, defaults to false
	NoDeleteTruncates bool `json:"noDeleteTruncates,omitempty"`
	// flag saying if we should not delete downloaded SSTables from remote location, as part of CLEANUP phase, defaults to false
	NoDeleteDownloads bool `json:"noDeleteDownloads,omitempty"`
	// flag saying if we should not download data from remote location as we expect them to be there already, defaults to false,
	// setting this to true has sense only in case noDeleteDownloads was set to true in previous restoration requests
	NoDownloadData bool `json:"noDownloadData,omitempty"`
	// object used upon restoration,
	// keyspace and table fields do not need to be set when restoration strategy type is IMPORT or HARDLINKS as this object will be initialised for each entities entry with right keyspace and table.
	// 'sourceDir' property is used for pointing to a directory where we expect to find downloaded SSTables.
	// This in turn means that all SSTables and other meta files will be downloaded into this directory (from which they will be fed to CFSMB).
	// All other fields are taken from ColumnFamilyStoreMBean#importNewSSTables
	Import RestoreImport `json:"import,omitempty"`
	// number of hours to wait until restore is considered failed if not finished already
	// +kubebuilder:validation:Minimum=1
	Timeout int64 `json:"timeout,omitempty"`
	// if set to true, host id of node to restore will be resolved from remote topology file located in a bucket by translating it from provided nodeId of storageLocation field
	ResolveHostIdFromTopology bool `json:"resolveHostIdFromTopology,omitempty"`
	// Relevant during upload to S3-like bucket only. If true, communication is done via HTTP instead of HTTPS. Defaults to false.
	Insecure bool `json:"insecure,omitempty"`
	// Do not check the existence of a bucket.
	// Some storage providers (e.g. S3) requires a special permissions to be able to list buckets or query their existence which might not be allowed.
	// This flag will skip that check. Keep in mind that if that bucket does not exist, the whole backup operation will fail.
	SkipBucketVerification bool  `json:"skipBucketVerification,omitempty"`
	Retry                  Retry `json:"retry,omitempty"`
	// Map of key and values where keys and values are in format "keyspace.table", if key is "ks1.tb1" and value is "ks1.tb2",
	// it means that upon restore, table ks1.tb1 will be restored into table ks1.tb2.
	// This in practice means that table ks1.tb2 will be truncated and populated with data from ks1.tb1.
	// The source table, ks1.tb1, will not be touched. It is expected that user knows that schema of both tables is compatible.
	// There is not any check done in this regard.
	Rename map[string]string `json:"rename,omitempty"`
	// version of schema we want to restore from.
	// Upon backup, a schema version is automatically appended to snapshot name and its manifest is uploaded under that name (plus timestamp at the end).
	// In case we have two snapshots having same name, we might distinguish between them by this schema version.
	// If schema version is not specified, we expect that there will be one and only one backup taken with respective snapshot name.
	// This schema version has to match the version of a Cassandra nodes.
	SchemaVersion string `json:"schemaVersion,omitempty"`
	// flag saying if we indeed want a schema version of a running node match with schema version a snapshot is taken on.
	// There might be cases when we want to restore a table for which its CQL schema has not changed,
	// but it has changed for other table / keyspace but a schema for that node has changed by doing that.
	ExactSchemaVersion bool `json:"exactSchemaVersion,omitempty"`
}

func (*CassandraRestoreSpec) DeepCopy

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

func (*CassandraRestoreSpec) DeepCopyInto

func (in *CassandraRestoreSpec) DeepCopyInto(out *CassandraRestoreSpec)

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

type CassandraRestoreStatus

type CassandraRestoreStatus struct {
	State    string         `json:"state,omitempty"`
	Progress int            `json:"progress,omitempty"`
	Errors   []RestoreError `json:"errors,omitempty"`
}

func (*CassandraRestoreStatus) DeepCopy

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

func (*CassandraRestoreStatus) DeepCopyInto

func (in *CassandraRestoreStatus) DeepCopyInto(out *CassandraRestoreStatus)

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

type ClientEncryption

type ClientEncryption struct {
	// ClientEncryption enables encryption between client and server via CQL and JXM protocols.
	Enabled bool `json:"enabled,omitempty"`
	// If enabled and optional is set to true both encrypted and unencrypted connections are handled.
	Optional          bool          `json:"optional,omitempty"`
	CATLSSecret       CATLSSecret   `json:"caTLSSecret,omitempty"`
	NodeTLSSecret     NodeTLSSecret `json:"nodeTLSSecret,omitempty"`
	RequireClientAuth *bool         `json:"requireClientAuth,omitempty"`
	Protocol          string        `json:"protocol,omitempty"`
	Algorithm         string        `json:"algorithm,omitempty"`
	StoreType         string        `json:"storeType,omitempty"`
	CipherSuites      []string      `json:"cipherSuites,omitempty"`
}

ClientEncryption defines encryption between Cassandra nodes and clients via CQL and JMX protocols for tools like reaper, cqlsh, nodetool and others.

func (*ClientEncryption) DeepCopy

func (in *ClientEncryption) DeepCopy() *ClientEncryption

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

func (*ClientEncryption) DeepCopyInto

func (in *ClientEncryption) DeepCopyInto(out *ClientEncryption)

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

type DC

type DC struct {
	// +kubebuilder:validation:MinLength:=1
	// +kubebuilder:validation:MaxLength:=63
	// +kubebuilder:validation:Pattern:=^[a-z0-9][a-z0-9\-]*$
	Name string `json:"name"`
	// +kubebuilder:validation:Minimum:=0
	Replicas    *int32          `json:"replicas"`
	Affinity    *v1.Affinity    `json:"affinity,omitempty"`
	Tolerations []v1.Toleration `json:"tolerations,omitempty"`
}

func (*DC) DeepCopy

func (in *DC) DeepCopy() *DC

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

func (*DC) DeepCopyInto

func (in *DC) DeepCopyInto(out *DC)

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

type DataRate

type DataRate struct {
	// +kubebuilder:validation:Minimum=1
	Value int64 `json:"value"`
	// +kubebuilder:validation:Enum=BPS;KBPS;MBPS;GBPS
	Unit string `json:"unit"`
}

func (*DataRate) DeepCopy

func (in *DataRate) DeepCopy() *DataRate

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

func (*DataRate) DeepCopyInto

func (in *DataRate) DeepCopyInto(out *DataRate)

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

type Encryption

type Encryption struct {
	Server ServerEncryption `json:"server,omitempty"`
	Client ClientEncryption `json:"client,omitempty"`
}

func (*Encryption) DeepCopy

func (in *Encryption) DeepCopy() *Encryption

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

func (*Encryption) DeepCopyInto

func (in *Encryption) DeepCopyInto(out *Encryption)

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

type ExternalRegions

type ExternalRegions struct {
	Managed   []ManagedRegion   `json:"managed,omitempty"`
	Unmanaged []UnmanagedRegion `json:"unmanaged,omitempty"`
}

func (*ExternalRegions) DeepCopy

func (in *ExternalRegions) DeepCopy() *ExternalRegions

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

func (*ExternalRegions) DeepCopyInto

func (in *ExternalRegions) DeepCopyInto(out *ExternalRegions)

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

type HostPort

type HostPort struct {
	Enabled           bool     `json:"enabled,omitempty"`
	UseExternalHostIP bool     `json:"useExternalHostIP,omitempty"`
	Ports             []string `json:"ports,omitempty"`
}

func (*HostPort) DeepCopy

func (in *HostPort) DeepCopy() *HostPort

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

func (*HostPort) DeepCopyInto

func (in *HostPort) DeepCopyInto(out *HostPort)

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

type Icarus

type Icarus struct {
	Image string `json:"image,omitempty"`
	// +kubebuilder:validation:Enum=Always;Never;IfNotPresent
	ImagePullPolicy v1.PullPolicy           `json:"imagePullPolicy,omitempty"`
	Resources       v1.ResourceRequirements `json:"resources,omitempty"`
}

func (*Icarus) DeepCopy

func (in *Icarus) DeepCopy() *Icarus

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

func (*Icarus) DeepCopyInto

func (in *Icarus) DeepCopyInto(out *Icarus)

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

type Ingress

type Ingress struct {
	Domain           string            `json:"domain,omitempty"`
	Secret           string            `json:"secret,omitempty"`
	Annotations      map[string]string `json:"annotations,omitempty"`
	IngressClassName *string           `json:"ingressClassName,omitempty"`
}

func (*Ingress) DeepCopy

func (in *Ingress) DeepCopy() *Ingress

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

func (*Ingress) DeepCopyInto

func (in *Ingress) DeepCopyInto(out *Ingress)

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

type Jolokia

type Jolokia struct {
	Image string `json:"image,omitempty"`
	// +kubebuilder:validation:Enum=Always;Never;IfNotPresent
	ImagePullPolicy v1.PullPolicy           `json:"imagePullPolicy,omitempty"`
	Resources       v1.ResourceRequirements `json:"resources,omitempty"`
}

func (*Jolokia) DeepCopy

func (in *Jolokia) DeepCopy() *Jolokia

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

func (*Jolokia) DeepCopyInto

func (in *Jolokia) DeepCopyInto(out *Jolokia)

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

type KeyspaceName

type KeyspaceName string

KeyspaceName is the name of a Cassandra keyspace +kubebuilder:validation:MinLength:=1 +kubebuilder:validation:MaxLength:=48 +kubebuilder:validation:Pattern:=^[a-zA-Z]\w+$

type Maintenance

type Maintenance struct {
	// Maintenance object temporarily disables C* pods for debugging purposes.
	// +kubebuilder:validation:MinLength:=1
	// +kubebuilder:validation:MaxLength:=63
	// +kubebuilder:validation:Pattern:=^[a-z0-9][a-z0-9\-]*$
	DC   string    `json:"dc"`
	Pods []PodName `json:"pods,omitempty"`
}

func (*Maintenance) DeepCopy

func (in *Maintenance) DeepCopy() *Maintenance

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

func (*Maintenance) DeepCopyInto

func (in *Maintenance) DeepCopyInto(out *Maintenance)

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

type ManagedRegion

type ManagedRegion struct {
	Domain    string `json:"domain"`
	Namespace string `json:"namespace,omitempty"`
}

func (*ManagedRegion) DeepCopy

func (in *ManagedRegion) DeepCopy() *ManagedRegion

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

func (*ManagedRegion) DeepCopyInto

func (in *ManagedRegion) DeepCopyInto(out *ManagedRegion)

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

type Monitoring

type Monitoring struct {
	Enabled bool `json:"enabled,omitempty"`
	// +kubebuilder:validation:Enum=instaclustr;datastax;tlp
	Agent          string         `json:"agent,omitempty"`
	ServiceMonitor ServiceMonitor `json:"serviceMonitor,omitempty"`
}

func (*Monitoring) DeepCopy

func (in *Monitoring) DeepCopy() *Monitoring

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

func (*Monitoring) DeepCopyInto

func (in *Monitoring) DeepCopyInto(out *Monitoring)

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

type NetworkPolicies

type NetworkPolicies struct {
	Enabled              bool                `json:"enabled,omitempty"`
	AllowReaperNodeIPs   *bool               `json:"allowReaperNodeIPs,omitempty"`
	ExtraIngressRules    []NetworkPolicyRule `json:"extraIngressRules,omitempty"`
	ExtraPrometheusRules []NetworkPolicyRule `json:"extraPrometheusRules,omitempty"`
	ExtraCassandraRules  []NetworkPolicyRule `json:"extraCassandraRules,omitempty"`
	ExtraCassandraIPs    []string            `json:"extraCassandraIPs,omitempty"`
}

NetworkPolicies enables network policies for C* cluster

func (*NetworkPolicies) DeepCopy

func (in *NetworkPolicies) DeepCopy() *NetworkPolicies

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

func (*NetworkPolicies) DeepCopyInto

func (in *NetworkPolicies) DeepCopyInto(out *NetworkPolicies)

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

type NetworkPolicyRule

type NetworkPolicyRule struct {
	PodSelector       *metav1.LabelSelector `json:"podSelector,omitempty"`
	NamespaceSelector *metav1.LabelSelector `json:"namespaceSelector,omitempty"`
	Ports             []int32               `json:"ports,omitempty"`
}

func (*NetworkPolicyRule) DeepCopy

func (in *NetworkPolicyRule) DeepCopy() *NetworkPolicyRule

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

func (*NetworkPolicyRule) DeepCopyInto

func (in *NetworkPolicyRule) DeepCopyInto(out *NetworkPolicyRule)

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

type NodeTLSSecret

type NodeTLSSecret struct {
	Name                     string `json:"name"`
	FileKey                  string `json:"fileKey,omitempty"`
	CrtFileKey               string `json:"crtFileKey,omitempty"`
	CACrtFileKey             string `json:"caFileKey,omitempty"`
	KeystoreFileKey          string `json:"keystoreFileKey,omitempty"`
	KeystorePasswordKey      string `json:"keystorePasswordKey,omitempty"`
	TruststoreFileKey        string `json:"truststoreFileKey,omitempty"`
	TruststorePasswordKey    string `json:"truststorePasswordKey,omitempty"`
	GenerateKeystorePassword string `json:"generateKeystorePassword,omitempty"`
}

func (*NodeTLSSecret) DeepCopy

func (in *NodeTLSSecret) DeepCopy() *NodeTLSSecret

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

func (*NodeTLSSecret) DeepCopyInto

func (in *NodeTLSSecret) DeepCopyInto(out *NodeTLSSecret)

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

type Persistence

type Persistence struct {
	Enabled                  bool                         `json:"enabled,omitempty"`
	CommitLogVolume          bool                         `json:"commitLogVolume,omitempty"`
	Labels                   map[string]string            `json:"labels,omitempty"`
	Annotations              map[string]string            `json:"annotation,omitempty"`
	DataVolumeClaimSpec      v1.PersistentVolumeClaimSpec `json:"dataVolumeClaimSpec,omitempty"`
	CommitLogVolumeClaimSpec v1.PersistentVolumeClaimSpec `json:"commitLogVolumeClaimSpec,omitempty"`
}

func (*Persistence) DeepCopy

func (in *Persistence) DeepCopy() *Persistence

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

func (*Persistence) DeepCopyInto

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

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

type PodName

type PodName string

PodName is the name of a Pod. Used to define CRD validation +kubebuilder:validation:MinLength:=1 +kubebuilder:validation:MaxLength:=253 +kubebuilder:validation:Pattern:=^[a-z0-9]([-a-z0-9]*[a-z0-9])?$

type Prober

type Prober struct {
	Image string `json:"image,omitempty"`
	// +kubebuilder:validation:Enum=Always;Never;IfNotPresent
	ImagePullPolicy v1.PullPolicy           `json:"imagePullPolicy,omitempty"`
	Resources       v1.ResourceRequirements `json:"resources,omitempty"`
	// +kubebuilder:validation:Enum:=info;debug;trace
	LogLevel string `json:"logLevel,omitempty"`
	// +kubebuilder:validation:Enum:=console;json
	LogFormat      string            `json:"logFormat,omitempty"`
	Jolokia        Jolokia           `json:"jolokia,omitempty"`
	ServiceMonitor ServiceMonitor    `json:"serviceMonitor,omitempty"`
	Tolerations    []v1.Toleration   `json:"tolerations,omitempty"`
	NodeSelector   map[string]string `json:"nodeSelector,omitempty"`
	Affinity       *v1.Affinity      `json:"affinity,omitempty"`
}

func (*Prober) DeepCopy

func (in *Prober) DeepCopy() *Prober

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

func (*Prober) DeepCopyInto

func (in *Prober) DeepCopyInto(out *Prober)

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

type Reaper

type Reaper struct {
	Image string `json:"image,omitempty"`
	// +kubebuilder:validation:Enum=Always;Never;IfNotPresent
	ImagePullPolicy v1.PullPolicy `json:"imagePullPolicy,omitempty"`
	// +kubebuilder:validation:MinLength=1
	Keyspace     string            `json:"keyspace,omitempty"`
	Tolerations  []v1.Toleration   `json:"tolerations,omitempty"`
	NodeSelector map[string]string `json:"nodeSelector,omitempty"`
	// +kubebuilder:validation:Minimum=1
	HangingRepairTimeoutMins               int32                   `json:"hangingRepairTimeoutMins,omitempty"`
	IncrementalRepair                      bool                    `json:"incrementalRepair,omitempty"`
	RepairIntensity                        string                  `json:"repairIntensity,omitempty"` // value between 0.0 and 1.0, but must never be 0.0.
	RepairManagerSchedulingIntervalSeconds int32                   `json:"repairManagerSchedulingIntervalSeconds,omitempty"`
	BlacklistTWCS                          bool                    `json:"blacklistTWCS,omitempty"`
	Resources                              v1.ResourceRequirements `json:"resources,omitempty"`
	ServiceMonitor                         ServiceMonitor          `json:"serviceMonitor,omitempty"`
	RepairSchedules                        RepairSchedules         `json:"repairSchedules,omitempty"`
	AutoScheduling                         AutoScheduling          `json:"autoScheduling,omitempty"`
	// +kubebuilder:validation:Enum=DATACENTER_AWARE;SEQUENTIAL;PARALLEL
	RepairParallelism string `json:"repairParallelism,omitempty"`
	// +kubebuilder:validation:Minimum=1
	RepairRunThreads int32 `json:"repairRunThreads,omitempty"`
	// +kubebuilder:validation:Minimum=1
	// +kubebuilder:validation:Maximum=4
	RepairThreadCount int32 `json:"repairThreadCount,omitempty"`
	// +kubebuilder:validation:Minimum=1
	SegmentCountPerNode int32 `json:"segmentCountPerNode,omitempty"`
	// +kubebuilder:validation:Minimum=1
	MaxParallelRepairs int32 `json:"maxParallelRepairs,omitempty"`
}

func (*Reaper) DeepCopy

func (in *Reaper) DeepCopy() *Reaper

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

func (*Reaper) DeepCopyInto

func (in *Reaper) DeepCopyInto(out *Reaper)

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

type RepairSchedule

type RepairSchedule struct {
	Keyspace            string   `json:"keyspace" url:"keyspace"`
	Tables              []string `json:"tables,omitempty" url:"tables,comma,omitempty"`
	SegmentCountPerNode int32    `json:"segmentCountPerNode,omitempty" url:"segmentCountPerNode,omitempty"`
	// +kubebuilder:validation:Enum:=SEQUENTIAL;PARALLEL;DATACENTER_AWARE
	RepairParallelism   string   `json:"repairParallelism,omitempty" url:"repairParallelism,omitempty"`
	Intensity           string   `json:"intensity,omitempty" url:"intensity,omitempty"` // value between 0.0 and 1.0, but must never be 0.0.
	IncrementalRepair   bool     `json:"incrementalRepair,omitempty" url:"incrementalRepair,omitempty"`
	ScheduleDaysBetween int32    `json:"scheduleDaysBetween,omitempty" url:"scheduleDaysBetween"`
	ScheduleTriggerTime string   `json:"scheduleTriggerTime,omitempty" url:"scheduleTriggerTime,omitempty"`
	Nodes               []string `json:"nodes,omitempty" url:"nodes,comma,omitempty"`
	Datacenters         []string `json:"datacenters,omitempty" url:"datacenters,comma,omitempty"`
	BlacklistedTables   []string `json:"blacklistedTables,omitempty" url:"blacklistedTables,comma,omitempty"`
	// +kubebuilder:validation:Minimum:=1
	// +kubebuilder:validation:Maximum:=4
	RepairThreadCount int32 `json:"repairThreadCount,omitempty" url:"repairThreadCount,omitempty"`
}

func (*RepairSchedule) DeepCopy

func (in *RepairSchedule) DeepCopy() *RepairSchedule

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

func (*RepairSchedule) DeepCopyInto

func (in *RepairSchedule) DeepCopyInto(out *RepairSchedule)

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

type RepairSchedules

type RepairSchedules struct {
	Enabled bool             `json:"enabled,omitempty"`
	Repairs []RepairSchedule `json:"repairs,omitempty"`
}

func (*RepairSchedules) DeepCopy

func (in *RepairSchedules) DeepCopy() *RepairSchedules

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

func (*RepairSchedules) DeepCopyInto

func (in *RepairSchedules) DeepCopyInto(out *RepairSchedules)

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

type RestoreError

type RestoreError struct {
	Source  string `json:"source,omitempty"`
	Message string `json:"message,omitempty"`
}

func (*RestoreError) DeepCopy

func (in *RestoreError) DeepCopy() *RestoreError

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

func (*RestoreError) DeepCopyInto

func (in *RestoreError) DeepCopyInto(out *RestoreError)

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

type RestoreImport

type RestoreImport struct {
	KeepLevel          bool `json:"keepLevel,omitempty"`
	NoVerify           bool `json:"noVerify,omitempty"`
	NoVerifyTokens     bool `json:"noVerifyTokens,omitempty"`
	NoInvalidateCaches bool `json:"noInvalidateCaches,omitempty"`
	Quick              bool `json:"quick,omitempty"`
	ExtendedVerify     bool `json:"extendedVerify,omitempty"`
	KeepRepaired       bool `json:"keepRepaired,omitempty"`
}

func (*RestoreImport) DeepCopy

func (in *RestoreImport) DeepCopy() *RestoreImport

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

func (*RestoreImport) DeepCopyInto

func (in *RestoreImport) DeepCopyInto(out *RestoreImport)

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

type Retry

type Retry struct {
	// Defaults to false if not specified. If false, retry mechanism on upload / download operations in case they fail will not be used.
	Enabled bool `json:"enabled,omitempty"`
	// Time gap between retries, linear strategy will have always this gap constant, exponential strategy will make the gap bigger exponentially (power of 2) on each attempt
	// +kubebuilder:validation:Minimum=1
	Interval int64 `json:"interval,omitempty"`
	// Strategy how retry should be driven, might be either 'LINEAR' or 'EXPONENTIAL'
	// +kubebuilder:validation:Enum=LINEAR;EXPONENTIAL
	Strategy string `json:"strategy,omitempty"`
	// Number of repetitions of an upload / download operation in case it fails before giving up completely.
	// +kubebuilder:validation:Minimum=1
	MaxAttempts int64 `json:"maxAttempts,omitempty"`
}

func (*Retry) DeepCopy

func (in *Retry) DeepCopy() *Retry

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

func (*Retry) DeepCopyInto

func (in *Retry) DeepCopyInto(out *Retry)

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

type ServerEncryption

type ServerEncryption struct {
	// InternodeEncryption enables server encryption and by default is set to `none`. Available options: `none`, `rack`, `dc`, `all`.
	// +kubebuilder:validation:Enum:=none;rack;dc;all
	InternodeEncryption         string        `json:"internodeEncryption,omitempty"`
	CATLSSecret                 CATLSSecret   `json:"caTLSSecret,omitempty"`
	NodeTLSSecret               NodeTLSSecret `json:"nodeTLSSecret,omitempty"`
	RequireEndpointVerification bool          `json:"requireEndpointVerification,omitempty"`
	RequireClientAuth           *bool         `json:"requireClientAuth,omitempty"`
	Protocol                    string        `json:"protocol,omitempty"`
	Algorithm                   string        `json:"algorithm,omitempty"`
	StoreType                   string        `json:"storeType,omitempty"`
	CipherSuites                []string      `json:"cipherSuites,omitempty"`
}

ServerEncryption defines encryption between Cassandra nodes

func (*ServerEncryption) DeepCopy

func (in *ServerEncryption) DeepCopy() *ServerEncryption

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

func (*ServerEncryption) DeepCopyInto

func (in *ServerEncryption) DeepCopyInto(out *ServerEncryption)

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

type ServiceMonitor

type ServiceMonitor struct {
	Enabled        bool              `json:"enabled"`
	Namespace      string            `json:"namespace,omitempty"`
	Labels         map[string]string `json:"labels,omitempty"`
	ScrapeInterval string            `json:"scrapeInterval,omitempty"`
}

func (*ServiceMonitor) DeepCopy

func (in *ServiceMonitor) DeepCopy() *ServiceMonitor

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

func (*ServiceMonitor) DeepCopyInto

func (in *ServiceMonitor) DeepCopyInto(out *ServiceMonitor)

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

type StorageProvider

type StorageProvider string
const (
	StorageProviderS3     StorageProvider = "s3"
	StorageProviderGCP    StorageProvider = "gcp"
	StorageProviderAzure  StorageProvider = "azure"
	StorageProviderMinio  StorageProvider = "minio"
	StorageProviderCeph   StorageProvider = "ceph"
	StorageProviderOracle StorageProvider = "oracle"
)

type SystemKeyspaceDC

type SystemKeyspaceDC struct {
	// +kubebuilder:validation:MinLength:=1
	// +kubebuilder:validation:MaxLength:=63
	// +kubebuilder:validation:Pattern:=^[a-z0-9][a-z0-9\-]*$
	Name string `json:"name"`
	// +kubebuilder:validation:Minimum:=1
	RF int32 `json:"rf"`
}

func (*SystemKeyspaceDC) DeepCopy

func (in *SystemKeyspaceDC) DeepCopy() *SystemKeyspaceDC

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

func (*SystemKeyspaceDC) DeepCopyInto

func (in *SystemKeyspaceDC) DeepCopyInto(out *SystemKeyspaceDC)

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

type SystemKeyspaces

type SystemKeyspaces struct {
	Keyspaces []KeyspaceName     `json:"keyspaces,omitempty"`
	DCs       []SystemKeyspaceDC `json:"dcs,omitempty"`
}

func (*SystemKeyspaces) DeepCopy

func (in *SystemKeyspaces) DeepCopy() *SystemKeyspaces

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

func (*SystemKeyspaces) DeepCopyInto

func (in *SystemKeyspaces) DeepCopyInto(out *SystemKeyspaces)

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

type UnmanagedRegion

type UnmanagedRegion struct {
	Seeds []string           `json:"seeds"`
	DCs   []SystemKeyspaceDC `json:"dcs"`
}

func (*UnmanagedRegion) DeepCopy

func (in *UnmanagedRegion) DeepCopy() *UnmanagedRegion

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

func (*UnmanagedRegion) DeepCopyInto

func (in *UnmanagedRegion) DeepCopyInto(out *UnmanagedRegion)

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

Jump to

Keyboard shortcuts

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