v1

package
v1.3.0 Latest Latest
Warning

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

Go to latest
Published: Jun 17, 2021 License: Apache-2.0 Imports: 15 Imported by: 0

Documentation

Overview

+kubebuilder:validation:Optional +groupName=scylla.scylladb.com

Package v1 contains API Schema definitions for the scylla v1 API group +kubebuilder:object:generate=true +groupName=scylla.scylladb.com

Index

Constants

View Source
const (
	AlternatorWriteIsolationAlways         = "always"
	AlternatorWriteIsolationForbidRMW      = "forbid_rmw"
	AlternatorWriteIsolationOnlyRMWUsesLWT = "only_rmw_uses_lwt"
)
View Source
const (
	DefaultGenericUpgradePollInterval = time.Second
)

Variables

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

	// 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
)
View Source
var (
	GroupName = "scylla.scylladb.com"

	// Install is a function which adds this version to a scheme
	Install = schemeBuilder.AddToScheme

	// SchemeGroupVersion generated code relies on this name
	// Deprecated
	SchemeGroupVersion = GroupVersion
)

Functions

func IsRackConditionTrue

func IsRackConditionTrue(rackStatus *RackStatus, conditionType RackConditionType) bool

FindCRDCondition returns the condition you're looking for or nil

func Resource

func Resource(resource string) schema.GroupResource

Resource generated code relies on this being here, but it logically belongs to the group DEPRECATED

func SetRackCondition

func SetRackCondition(rackStatus *RackStatus, newCondition RackConditionType)

Types

type AlternatorSpec

type AlternatorSpec struct {
	// Port on which to bind the Alternator API
	Port           int32  `json:"port,omitempty"`
	WriteIsolation string `json:"writeIsolation,omitempty"`
}

func (*AlternatorSpec) DeepCopy

func (in *AlternatorSpec) DeepCopy() *AlternatorSpec

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

func (*AlternatorSpec) DeepCopyInto

func (in *AlternatorSpec) DeepCopyInto(out *AlternatorSpec)

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

func (*AlternatorSpec) Enabled

func (a *AlternatorSpec) Enabled() bool

type BackupTaskSpec

type BackupTaskSpec struct {
	SchedulerTaskSpec `json:",inline"`
	// DC a list of datacenter glob patterns, e.g. 'dc1,!otherdc*' used to specify the DCs
	// to include or exclude from backup.
	// +optional
	DC []string `json:"dc,omitempty" mapstructure:"dc,omitempty"`
	// Keyspace a list of keyspace/tables glob patterns,
	// e.g. 'keyspace,!keyspace.table_prefix_*' used to include or exclude keyspaces from repair.
	// +optional
	Keyspace []string `json:"keyspace,omitempty" mapstructure:"keyspace,omitempty"`
	// Location a list of backup locations in the format [<dc>:]<provider>:<name> ex. s3:my-bucket.
	// The <dc>: part is optional and is only needed when different datacenters are being used to upload data
	// to different locations. <name> must be an alphanumeric string and may contain a dash and or a dot,
	// but other characters are forbidden.
	// The only supported storage <provider> at the moment are s3 and gcs.
	Location []string `json:"location" mapstructure:"location,omitempty"`
	// RateLimit a list of megabytes (MiB) per second rate limits expressed in the format [<dc>:]<limit>.
	// The <dc>: part is optional and only needed when different datacenters need different upload limits.
	// Set to 0 for no limit (default 100).
	// +optional
	RateLimit []string `json:"rateLimit,omitempty" mapstructure:"rate_limit,omitempty"`
	// Retention The number of backups which are to be stored.
	// +kubebuilder:default:=3
	// +optional
	Retention int64 `json:"retention,omitempty" mapstructure:"retention,omitempty"`
	// SnapshotParallel a list of snapshot parallelism limits in the format [<dc>:]<limit>.
	// The <dc>: part is optional and allows for specifying different limits in selected datacenters.
	// If The <dc>: part is not set, the limit is global (e.g. 'dc1:2,5') the runs are parallel in n nodes (2 in dc1)
	// and n nodes in all the other datacenters.
	// +optional
	SnapshotParallel []string `json:"snapshotParallel,omitempty" mapstructure:"snapshot_parallel,omitempty"`
	// UploadParallel a list of upload parallelism limits in the format [<dc>:]<limit>.
	// The <dc>: part is optional and allows for specifying different limits in selected datacenters.
	// If The <dc>: part is not set the limit is global (e.g. 'dc1:2,5') the runs are parallel in n nodes (2 in dc1)
	// and n nodes in all the other datacenters.
	// +optional
	UploadParallel []string `json:"uploadParallel,omitempty" mapstructure:"upload_parallel,omitempty"`
}

func (*BackupTaskSpec) DeepCopy

func (in *BackupTaskSpec) DeepCopy() *BackupTaskSpec

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

func (*BackupTaskSpec) DeepCopyInto

func (in *BackupTaskSpec) DeepCopyInto(out *BackupTaskSpec)

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

type BackupTaskStatus

type BackupTaskStatus struct {
	BackupTaskSpec `json:",inline"`
	ID             string `json:"id"`
	Error          string `json:"error"`
}

func (*BackupTaskStatus) DeepCopy

func (in *BackupTaskStatus) DeepCopy() *BackupTaskStatus

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

func (*BackupTaskStatus) DeepCopyInto

func (in *BackupTaskStatus) DeepCopyInto(out *BackupTaskStatus)

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

type ClusterSpec

type ClusterSpec struct {

	// Version of Scylla to use.
	Version string `json:"version"`
	// Repository to pull the Scylla image from.
	// +kubebuilder:default:="docker.io/scylladb/scylla"
	// +optional
	Repository string `json:"repository,omitempty"`
	// Alternator designates this cluster an Alternator cluster
	// +optional
	Alternator *AlternatorSpec `json:"alternator,omitempty"`
	// Version of Scylla Manager Agent to use.
	// +kubebuilder:default:="latest"
	// +optional
	AgentVersion string `json:"agentVersion"`
	// Repository to pull the agent image from.
	// +kubebuilder:default:="docker.io/scylladb/scylla-manager-agent"
	// +optional
	AgentRepository string `json:"agentRepository,omitempty"`
	// DeveloperMode determines if the cluster runs in developer-mode.
	// +optional
	DeveloperMode bool `json:"developerMode,omitempty"`
	// CpuSet determines if the cluster will use cpu-pinning for max performance.
	// +optional
	CpuSet bool `json:"cpuset,omitempty"`
	// AutomaticOrphanedNodeCleanup controls if automatic orphan node cleanup should be performed.
	AutomaticOrphanedNodeCleanup bool `json:"automaticOrphanedNodeCleanup,omitempty"`
	// GenericUpgrade allows to configure behavior of generic upgrade logic.
	// +optional
	GenericUpgrade *GenericUpgradeSpec `json:"genericUpgrade,omitempty"`
	// Datacenter that will make up this cluster.
	Datacenter DatacenterSpec `json:"datacenter"`
	// Sysctl properties to be applied during initialization
	// given as a list of key=value pairs.
	// Example: fs.aio-max-nr=232323
	// +optional
	Sysctls []string `json:"sysctls,omitempty"`
	// ScyllaArgs will be appended to Scylla binary during startup.
	// This is supported from 4.2.0 Scylla version.
	// +optional
	ScyllaArgs string `json:"scyllaArgs,omitempty"`
	// Networking config
	// +optional
	Network Network `json:"network,omitempty"`
	// Repairs specifies repair task in Scylla Manager.
	// When Scylla Manager is not installed, these will be ignored.
	// +optional
	Repairs []RepairTaskSpec `json:"repairs,omitempty"`
	// Backups specifies backup task in Scylla Manager.
	// When Scylla Manager is not installed, these will be ignored.
	// +optional
	Backups []BackupTaskSpec `json:"backups,omitempty"`
}

ClusterSpec defines the desired state of Cluster

func (*ClusterSpec) DeepCopy

func (in *ClusterSpec) DeepCopy() *ClusterSpec

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

func (*ClusterSpec) DeepCopyInto

func (in *ClusterSpec) DeepCopyInto(out *ClusterSpec)

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

type ClusterStatus

type ClusterStatus struct {
	// Racks reflect status of cluster racks.
	Racks map[string]RackStatus `json:"racks,omitempty"`
	// ManagerID contains ID under which cluster was registered in Scylla Manager.
	ManagerID *string `json:"managerId,omitempty"`
	// Repairs reflects status of repair tasks.
	Repairs []RepairTaskStatus `json:"repairs,omitempty"`
	// Backups reflects status of backup tasks.
	Backups []BackupTaskStatus `json:"backups,omitempty"`
	// Upgrade reflects state of ongoing upgrade procedure.
	Upgrade *UpgradeStatus `json:"upgrade,omitempty"`
}

ClusterStatus defines the observed state of ScyllaCluster

func (*ClusterStatus) DeepCopy

func (in *ClusterStatus) DeepCopy() *ClusterStatus

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

func (*ClusterStatus) DeepCopyInto

func (in *ClusterStatus) DeepCopyInto(out *ClusterStatus)

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

type DatacenterSpec

type DatacenterSpec struct {
	// Name of the Scylla Datacenter. Used in the cassandra-rackdc.properties file.
	Name string `json:"name"`
	// Racks of the specific Datacenter.
	Racks []RackSpec `json:"racks"`
}

DatacenterSpec is the desired state for a Scylla Datacenter.

func (*DatacenterSpec) DeepCopy

func (in *DatacenterSpec) DeepCopy() *DatacenterSpec

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

func (*DatacenterSpec) DeepCopyInto

func (in *DatacenterSpec) DeepCopyInto(out *DatacenterSpec)

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

type GenericUpgradeFailureStrategy

type GenericUpgradeFailureStrategy string

GenericUpgradeFailureStrategy allows to specify how upgrade logic should handle failures.

const (
	// GenericUpgradeFailureStrategyRetry infinitely retry until node becomes ready.
	GenericUpgradeFailureStrategyRetry GenericUpgradeFailureStrategy = "Retry"
)

type GenericUpgradeSpec

type GenericUpgradeSpec struct {
	// FailureStrategy specifies which logic is executed when upgrade failure happens.
	// Currently only Retry is supported.
	// +kubebuilder:default:="Retry"
	// +optional
	FailureStrategy GenericUpgradeFailureStrategy `json:"failureStrategy,omitempty"`
	// PollInterval specifies how often upgrade logic polls on state updates.
	// Increasing this value should lower number of requests sent to apiserver, but it may affect
	// overall time spent during upgrade.
	// +kubebuilder:default:="1s"
	// +optional
	PollInterval metav1.Duration `json:"pollInterval,omitempty"`
}

GenericUpgradeSpec hold generic upgrade procedure parameters.

func (*GenericUpgradeSpec) DeepCopy

func (in *GenericUpgradeSpec) DeepCopy() *GenericUpgradeSpec

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

func (*GenericUpgradeSpec) DeepCopyInto

func (in *GenericUpgradeSpec) DeepCopyInto(out *GenericUpgradeSpec)

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

type ImageSpec

type ImageSpec struct {
	// Version of the image.
	Version string `json:"version"`
	// Repository to pull the image from.
	Repository string `json:"repository"`
}

ImageSpec is the desired state for a container image.

func (*ImageSpec) DeepCopy

func (in *ImageSpec) DeepCopy() *ImageSpec

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

func (*ImageSpec) DeepCopyInto

func (in *ImageSpec) DeepCopyInto(out *ImageSpec)

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

type Network

type Network struct {
	HostNetworking bool             `json:"hostNetworking,omitempty"`
	DNSPolicy      corev1.DNSPolicy `json:"dnsPolicy,omitempty"`
}

func (*Network) DeepCopy

func (in *Network) DeepCopy() *Network

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

func (*Network) DeepCopyInto

func (in *Network) DeepCopyInto(out *Network)

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

func (Network) GetDNSPolicy

func (s Network) GetDNSPolicy() corev1.DNSPolicy

type PlacementSpec

type PlacementSpec struct {
	// +optional
	NodeAffinity *corev1.NodeAffinity `json:"nodeAffinity,omitempty"`
	// +optional
	PodAffinity *corev1.PodAffinity `json:"podAffinity,omitempty"`
	// +optional
	PodAntiAffinity *corev1.PodAntiAffinity `json:"podAntiAffinity,omitempty"`
	// +optional
	Tolerations []corev1.Toleration `json:"tolerations,omitempty"`
}

func (*PlacementSpec) DeepCopy

func (in *PlacementSpec) DeepCopy() *PlacementSpec

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

func (*PlacementSpec) DeepCopyInto

func (in *PlacementSpec) DeepCopyInto(out *PlacementSpec)

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

type RackCondition

type RackCondition struct {
	Type   RackConditionType      `json:"type"`
	Status corev1.ConditionStatus `json:"status"`
}

RackCondition is an observation about the state of a rack.

func (*RackCondition) DeepCopy

func (in *RackCondition) DeepCopy() *RackCondition

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

func (*RackCondition) DeepCopyInto

func (in *RackCondition) DeepCopyInto(out *RackCondition)

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

type RackConditionType

type RackConditionType string
const (
	RackConditionTypeMemberLeaving   RackConditionType = "MemberLeaving"
	RackConditionTypeUpgrading       RackConditionType = "RackUpgrading"
	RackConditionTypeMemberReplacing RackConditionType = "MemberReplacing"
)

type RackSpec

type RackSpec struct {
	// Name of the Scylla Rack. Used in the cassandra-rackdc.properties file.
	Name string `json:"name"`
	// Members is the number of Scylla instances in this rack.
	Members int32 `json:"members"`
	// Storage describes the underlying storage that Scylla will consume.
	Storage StorageSpec `json:"storage"`
	// Placement describes restrictions for the nodes Scylla is scheduled on.
	// +optional
	Placement *PlacementSpec `json:"placement,omitempty"`
	// Resources the Scylla container will use.
	Resources corev1.ResourceRequirements `json:"resources"`
	// AgentResources which Agent container will use.
	// +kubebuilder:default:={requests: {cpu: "50m", memory: "10M"}}
	// +optional
	AgentResources corev1.ResourceRequirements `json:"agentResources,omitempty"`
	// Volumes added to Scylla Pod.
	// +optional
	Volumes []corev1.Volume `json:"volumes,omitempty" patchStrategy:"merge,retainKeys" patchMergeKey:"name"`
	// VolumeMounts to be added to Scylla container.
	// +optional
	VolumeMounts []corev1.VolumeMount `json:"volumeMounts,omitempty" patchStrategy:"merge" patchMergeKey:"mountPath"`
	// AgentVolumeMounts to be added to Agent container.
	AgentVolumeMounts []corev1.VolumeMount `json:"agentVolumeMounts,omitempty" patchStrategy:"merge" patchMergeKey:"mountPath"`
	// Scylla config map name to customize scylla.yaml
	ScyllaConfig string `json:"scyllaConfig"`
	// Scylla config map name to customize scylla manager agent
	ScyllaAgentConfig string `json:"scyllaAgentConfig"`
}

RackSpec is the desired state for a Scylla Rack.

func (*RackSpec) DeepCopy

func (in *RackSpec) DeepCopy() *RackSpec

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

func (*RackSpec) DeepCopyInto

func (in *RackSpec) DeepCopyInto(out *RackSpec)

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

type RackStatus

type RackStatus struct {
	// Version is the current version of Scylla in use.
	Version string `json:"version"`
	// Members is the current number of members requested in the specific Rack
	Members int32 `json:"members"`
	// ReadyMembers is the number of ready members in the specific Rack
	ReadyMembers int32 `json:"readyMembers"`
	// Conditions are the latest available observations of a rack's state.
	Conditions []RackCondition `json:"conditions,omitempty"`
	// Pool of addresses which should be replaced by new nodes.
	ReplaceAddressFirstBoot map[string]string `json:"replace_address_first_boot,omitempty"`
}

RackStatus is the status of a Scylla Rack

func (*RackStatus) DeepCopy

func (in *RackStatus) DeepCopy() *RackStatus

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

func (*RackStatus) DeepCopyInto

func (in *RackStatus) DeepCopyInto(out *RackStatus)

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

type RepairTaskSpec

type RepairTaskSpec struct {
	SchedulerTaskSpec `json:",inline"`
	// DC list of datacenter glob patterns, e.g. 'dc1', '!otherdc*' used to specify the DCs
	// to include or exclude from backup.
	DC []string `json:"dc,omitempty" mapstructure:"dc,omitempty"`
	// FailFast stop repair on first error.
	// +optional
	FailFast bool `json:"failFast,omitempty" mapstructure:"fail_fast,omitempty"`
	// Intensity how many token ranges (per shard) to repair in a single Scylla repair job. By default this is 1.
	// If you set it to 0 the number of token ranges is adjusted to the maximum supported by node (see max_repair_ranges_in_parallel in Scylla logs).
	// Valid values are 0 and integers >= 1. Higher values will result in increased cluster load and slightly faster repairs.
	// Changing the intensity impacts repair granularity if you need to resume it, the higher the value the more work on resume.
	// For Scylla clusters that *do not support row-level repair*, intensity can be a decimal between (0,1).
	// In that case it specifies percent of shards that can be repaired in parallel on a repair master node.
	// For Scylla clusters that are row-level repair enabled, setting intensity below 1 has the same effect as setting intensity 1.
	// +kubebuilder:default:="1"
	// +optional
	Intensity string `json:"intensity,omitempty" mapstructure:"intensity,omitempty"`
	// Parallel the maximum number of Scylla repair jobs that can run at the same time (on different token ranges and replicas).
	// Each node can take part in at most one repair at any given moment. By default the maximum possible parallelism is used.
	// The effective parallelism depends on a keyspace replication factor (RF) and the number of nodes.
	// The formula to calculate it is as follows: number of nodes / RF, ex. for 6 node cluster with RF=3 the maximum parallelism is 2.
	// +kubebuilder:default:=0
	// +optional
	Parallel int64 `json:"parallel,omitempty" mapstructure:"parallel,omitempty"`
	// Keyspace a list of keyspace/tables glob patterns, e.g. 'keyspace,!keyspace.table_prefix_*'
	// used to include or exclude keyspaces from repair.
	Keyspace []string `json:"keyspace,omitempty" mapstructure:"keyspace,omitempty"`
	// SmallTableThreshold enable small table optimization for tables of size lower than given threshold.
	// Supported units [B, MiB, GiB, TiB].
	// +kubebuilder:default:="1GiB"
	// +optional
	SmallTableThreshold string `json:"smallTableThreshold,omitempty" mapstructure:"small_table_threshold,omitempty"`
	// Host to repair, by default all hosts are repaired
	Host *string `json:"host,omitempty" mapstructure:"host,omitempty"`
}

func (*RepairTaskSpec) DeepCopy

func (in *RepairTaskSpec) DeepCopy() *RepairTaskSpec

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

func (*RepairTaskSpec) DeepCopyInto

func (in *RepairTaskSpec) DeepCopyInto(out *RepairTaskSpec)

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

type RepairTaskStatus

type RepairTaskStatus struct {
	RepairTaskSpec `json:",inline" mapstructure:",squash"`
	ID             string `json:"id"`
	Error          string `json:"error"`
}

func (*RepairTaskStatus) DeepCopy

func (in *RepairTaskStatus) DeepCopy() *RepairTaskStatus

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

func (*RepairTaskStatus) DeepCopyInto

func (in *RepairTaskStatus) DeepCopyInto(out *RepairTaskStatus)

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

type SchedulerTaskSpec

type SchedulerTaskSpec struct {
	// Name of a task, it must be unique across all tasks.
	Name string `json:"name"`
	// StartDate specifies the task start date expressed in the RFC3339 format or now[+duration],
	// e.g. now+3d2h10m, valid units are d, h, m, s.
	// +kubebuilder:default:="now"
	// +optional
	StartDate string `json:"startDate,omitempty"`
	// Interval task schedule interval e.g. 3d2h10m, valid units are d, h, m, s.
	// +optional
	// +kubebuilder:default:="0"
	Interval string `json:"interval,omitempty"`
	// NumRetries the number of times a scheduled task will retry to run before failing.
	// +kubebuilder:default:=3
	// +optional
	NumRetries *int64 `json:"numRetries,omitempty"`
}

func (*SchedulerTaskSpec) DeepCopy

func (in *SchedulerTaskSpec) DeepCopy() *SchedulerTaskSpec

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

func (*SchedulerTaskSpec) DeepCopyInto

func (in *SchedulerTaskSpec) DeepCopyInto(out *SchedulerTaskSpec)

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

type ScyllaCluster

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

	Spec   ClusterSpec   `json:"spec,omitempty"`
	Status ClusterStatus `json:"status,omitempty"`
}

Cluster is the Schema for the clusters API

func (*ScyllaCluster) DeepCopy

func (in *ScyllaCluster) DeepCopy() *ScyllaCluster

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

func (*ScyllaCluster) DeepCopyInto

func (in *ScyllaCluster) DeepCopyInto(out *ScyllaCluster)

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

func (*ScyllaCluster) DeepCopyObject

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

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

func (*ScyllaCluster) SetupWebhookWithManager

func (r *ScyllaCluster) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*ScyllaCluster) ValidateCreate

func (r *ScyllaCluster) ValidateCreate() error

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

func (*ScyllaCluster) ValidateDelete

func (r *ScyllaCluster) ValidateDelete() error

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

func (*ScyllaCluster) ValidateUpdate

func (r *ScyllaCluster) ValidateUpdate(old runtime.Object) error

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

type ScyllaClusterList

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

ClusterList contains a list of Cluster

func (*ScyllaClusterList) DeepCopy

func (in *ScyllaClusterList) DeepCopy() *ScyllaClusterList

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

func (*ScyllaClusterList) DeepCopyInto

func (in *ScyllaClusterList) DeepCopyInto(out *ScyllaClusterList)

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

func (*ScyllaClusterList) DeepCopyObject

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

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

type StorageSpec

type StorageSpec struct {
	// Capacity of each member's volume
	Capacity string `json:"capacity"`
	// Name of storageClass to request
	// +optional
	StorageClassName *string `json:"storageClassName,omitempty"`
}

func (*StorageSpec) DeepCopy

func (in *StorageSpec) DeepCopy() *StorageSpec

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

func (*StorageSpec) DeepCopyInto

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

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

type UpgradeStatus

type UpgradeStatus struct {
	// State reflects current upgrade state.
	State string `json:"state"`
	// CurrentNode node under upgrade.
	CurrentNode string `json:"currentNode,omitempty"`
	// CurrentRack rack under upgrade.
	CurrentRack string `json:"currentRack,omitempty"`
	// FromVersion reflects from which version ScyllaCluster is being upgraded.
	FromVersion string `json:"fromVersion"`
	// ToVersion reflects to which version ScyllaCluster is being upgraded.
	ToVersion string `json:"toVersion"`
	// SystemSnapshotTag snapshot tag of system keyspaces.
	SystemSnapshotTag string `json:"systemSnapshotTag,omitempty"`
	// DataSnapshotTag snapshot tag of data keyspaces.
	DataSnapshotTag string `json:"dataSnapshotTag,omitempty"`
}

UpgradeStatus contains state of ongoing upgrade procedure.

func (*UpgradeStatus) DeepCopy

func (in *UpgradeStatus) DeepCopy() *UpgradeStatus

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

func (*UpgradeStatus) DeepCopyInto

func (in *UpgradeStatus) DeepCopyInto(out *UpgradeStatus)

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