v1alpha1

package
v0.4.1 Latest Latest
Warning

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

Go to latest
Published: Jun 10, 2020 License: Apache-2.0 Imports: 7 Imported by: 0

Documentation

Overview

Package v1alpha1 contains API Schema definitions for the piraeus v1alpha1 API group +k8s:deepcopy-gen=package,register +groupName=piraeus.linbit.com

Package v1alpha1 contains API Schema definitions for the piraeus v1alpha1 API group +k8s:deepcopy-gen=package,register +groupName=piraeus.linbit.com

Index

Constants

View Source
const (
	// ModuleInjectionNone means that no module will be injected
	ModuleInjectionNone = "None"
	// ModuleInjectionCompile means that the module will be compiled from sources available on the host
	ModuleInjectionCompile = "Compile"
	// ModuleInjectionShippedModules means that a module included in the injector image will be used
	ModuleInjectionShippedModules = "ShippedModules"
)

Variables

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

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

Functions

This section is empty.

Types

type KernelModuleInjectionMode added in v0.1.4

type KernelModuleInjectionMode string

KernelModuleInjectionMode describes the source for injecting a kernel module

type LinstorCSIDriver added in v0.4.0

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

	Spec   LinstorCSIDriverSpec   `json:"spec,omitempty"`
	Status LinstorCSIDriverStatus `json:"status,omitempty"`
}

LinstorCSIDriver is the Schema for the linstorcsidrivers API +kubebuilder:subresource:status +kubebuilder:resource:path=linstorcsidrivers,scope=Namespaced +kubebuilder:printcolumn:name="NodeReady",type="boolean",JSONPath=".status.NodeReady" +kubebuilder:printcolumn:name="ControllerReady",type="boolean",JSONPath=".status.ControllerReady"

func (*LinstorCSIDriver) DeepCopy added in v0.4.0

func (in *LinstorCSIDriver) DeepCopy() *LinstorCSIDriver

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

func (*LinstorCSIDriver) DeepCopyInto added in v0.4.0

func (in *LinstorCSIDriver) DeepCopyInto(out *LinstorCSIDriver)

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

func (*LinstorCSIDriver) DeepCopyObject added in v0.4.0

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

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

type LinstorCSIDriverList added in v0.4.0

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

LinstorCSIDriverList contains a list of LinstorCSIDriver

func (*LinstorCSIDriverList) DeepCopy added in v0.4.0

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

func (*LinstorCSIDriverList) DeepCopyInto added in v0.4.0

func (in *LinstorCSIDriverList) DeepCopyInto(out *LinstorCSIDriverList)

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

func (*LinstorCSIDriverList) DeepCopyObject added in v0.4.0

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

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

type LinstorCSIDriverSpec added in v0.4.0

type LinstorCSIDriverSpec struct {
	// Name of the CSI external attacher image.
	// See https://kubernetes-csi.github.io/docs/external-attacher.html
	// +optional
	CSIAttacherImage string `json:"csiAttacherImage"`
	// Name of the CSI node driver registrar image.
	// See https://kubernetes-csi.github.io/docs/node-driver-registrar.html
	// +optional
	CSINodeDriverRegistrarImage string `json:"csiNodeDriverRegistrarImage"`
	// Name of the CSI external provisioner image.
	// See https://kubernetes-csi.github.io/docs/external-provisioner.html
	// +optional
	CSIProvisionerImage string `json:"csiProvisionerImage"`
	// Name of the CSI external snapshotter image.
	// See https://kubernetes-csi.github.io/docs/external-snapshotter.html
	// +optional
	CSISnapshotterImage string `json:"csiSnapshotterImage"`

	// Name of a secret with authentication details for the `LinstorPluginImage` registry
	ImagePullSecret string `json:"imagePullSecret"`
	// Image that contains the linstor-csi driver plugin
	LinstorPluginImage string `json:"linstorPluginImage"`

	// Name of the service account used by the CSI node pods
	// +optional
	CSINodeServiceAccountName string `json:"csiNodeServiceAccountName"`

	// Name of the service account used by the CSI controller pods
	// +optional
	CSIControllerServiceAccountName string `json:"csiControllerServiceAccountName"`

	// priorityClassName is the name of the PriorityClass for the csi driver pods
	// +optional
	PriorityClassName PriorityClassName `json:"priorityClassName"`

	// Cluster URL of the linstor controller.
	// If not set, will be determined from the current resource name.
	// +optional
	ControllerEndpoint string `json:"controllerEndpoint"`

	LinstorClientConfig `json:",inline"`
}

LinstorCSIDriverSpec defines the desired state of LinstorCSIDriver

func (*LinstorCSIDriverSpec) DeepCopy added in v0.4.0

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

func (*LinstorCSIDriverSpec) DeepCopyInto added in v0.4.0

func (in *LinstorCSIDriverSpec) DeepCopyInto(out *LinstorCSIDriverSpec)

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

type LinstorCSIDriverStatus added in v0.4.0

type LinstorCSIDriverStatus struct {
	// CSI node components ready status
	NodeReady bool `json:"NodeReady"`

	// CSI controller ready status
	ControllerReady bool `json:"ControllerReady"`

	// Errors remaining that will trigger reconciliations.
	Errors []string `json:"errors"`
}

LinstorCSIDriverStatus defines the observed state of LinstorCSIDriver

func (*LinstorCSIDriverStatus) DeepCopy added in v0.4.0

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

func (*LinstorCSIDriverStatus) DeepCopyInto added in v0.4.0

func (in *LinstorCSIDriverStatus) DeepCopyInto(out *LinstorCSIDriverStatus)

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

type LinstorClientConfig added in v0.4.0

type LinstorClientConfig struct {
	// Name of the secret containing:
	// (a) `ca.pem`: root certificate used to validate HTTPS connections with Linstor (PEM format, without password)
	// (b) `client.key`: client key used by the linstor client (PEM format, without password)
	// (c) `client.cert`: client certificate matching the client key (PEM format, without password)
	// If set, HTTPS is used for connecting and authenticating with linstor
	// +optional
	LinstorHttpsClientSecret string `json:"linstorHttpsClientSecret"`
}

func (*LinstorClientConfig) DeepCopy added in v0.4.0

func (in *LinstorClientConfig) DeepCopy() *LinstorClientConfig

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

func (*LinstorClientConfig) DeepCopyInto added in v0.4.0

func (in *LinstorClientConfig) DeepCopyInto(out *LinstorClientConfig)

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

type LinstorControllerSet added in v0.1.4

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

	Spec   LinstorControllerSetSpec   `json:"spec,omitempty"`
	Status LinstorControllerSetStatus `json:"status,omitempty"`
}

LinstorControllerSet is the Schema for the linstorcontrollersets API +kubebuilder:subresource:status +kubebuilder:resource:path=linstorcontrollersets,scope=Namespaced

func (*LinstorControllerSet) DeepCopy added in v0.1.4

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

func (*LinstorControllerSet) DeepCopyInto added in v0.1.4

func (in *LinstorControllerSet) DeepCopyInto(out *LinstorControllerSet)

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

func (*LinstorControllerSet) DeepCopyObject added in v0.1.4

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

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

type LinstorControllerSetList added in v0.1.4

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

LinstorControllerSetList contains a list of LinstorControllerSet

func (*LinstorControllerSetList) DeepCopy added in v0.1.4

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

func (*LinstorControllerSetList) DeepCopyInto added in v0.1.4

func (in *LinstorControllerSetList) DeepCopyInto(out *LinstorControllerSetList)

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

func (*LinstorControllerSetList) DeepCopyObject added in v0.1.4

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

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

type LinstorControllerSetSpec added in v0.1.4

type LinstorControllerSetSpec struct {

	// priorityClassName is the name of the PriorityClass for the controller pods
	PriorityClassName PriorityClassName `json:"priorityClassName"`

	// DBConnectionURL is the URL of the ETCD endpoint for LINSTOR Controller
	DBConnectionURL string `json:"dbConnectionURL"`

	// DBCertSecret is the name of the kubernetes secret that holds the CA certificate used to verify
	// the datatbase connection. The secret must contain a key "ca.pem" which holds the certificate in
	// PEM format
	// +nullable
	// +optional
	DBCertSecret string `json:"dbCertSecret"`

	// Use a TLS client certificate for authentication with the database (etcd). If set to true,
	// `dbCertSecret` must be set and contain two additional entries "client.cert" (PEM encoded)
	// and "client.key" (PKCS8 encoded, without passphrase).
	// +optional
	DBUseClientCert bool `json:"dbUseClientCert"`

	// Name of the secret containing the master passphrase for LUKS devices as `MASTER_PASSPHRASE`
	// +nullable
	// +optional
	LuksSecret string `json:"luksSecret"`

	// Name of k8s secret that holds the SSL key for a node (called `keystore.jks`) and the
	// trusted certificates (called `certificates.jks`)
	// +nullable
	// +optional
	SslConfig *LinstorSSLConfig `json:"sslSecret"`

	// DrbdRepoCred is the name of the kubernetes secret that holds the credential for the
	// DRBD repositories
	DrbdRepoCred string `json:"drbdRepoCred"`

	// controllerImage is the image (location + tag) for the LINSTOR controller/server container
	ControllerImage string `json:"controllerImage"`

	// Name of the secret containing the java keystore (`keystore.jks`) used to enable HTTPS on the
	// controller. The controller will create a secured https endpoint on port 3371 with the key
	// stored in `keystore.jks`. The keystore must be secured using the passphrase "linstor". Also
	// needs to contain a truststore `truststore.jks`, which will be used to authenticate clients.
	// +optional
	LinstorHttpsControllerSecret string `json:"linstorHttpsControllerSecret"`

	LinstorClientConfig `json:",inline"`
}

LinstorControllerSetSpec defines the desired state of LinstorControllerSet

func (*LinstorControllerSetSpec) DeepCopy added in v0.1.4

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

func (*LinstorControllerSetSpec) DeepCopyInto added in v0.1.4

func (in *LinstorControllerSetSpec) DeepCopyInto(out *LinstorControllerSetSpec)

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

type LinstorControllerSetStatus added in v0.1.4

type LinstorControllerSetStatus struct {

	// Errors remaining that will trigger reconciliations.
	Errors []string `json:"errors"`
	// ControllerStatus information.
	ControllerStatus *NodeStatus `json:"ControllerStatus"`
	// SatelliteStatuses by hostname.
	SatelliteStatuses []*SatelliteStatus `json:"SatelliteStatuses"`
}

LinstorControllerSetStatus defines the observed state of LinstorControllerSet

func (*LinstorControllerSetStatus) DeepCopy added in v0.1.4

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

func (*LinstorControllerSetStatus) DeepCopyInto added in v0.1.4

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

type LinstorNodeSet added in v0.1.4

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

	Spec   LinstorNodeSetSpec   `json:"spec,omitempty"`
	Status LinstorNodeSetStatus `json:"status,omitempty"`
}

LinstorNodeSet is the Schema for the linstornodesets API +kubebuilder:subresource:status +kubebuilder:resource:path=linstornodesets,scope=Namespaced

func (*LinstorNodeSet) DeepCopy added in v0.1.4

func (in *LinstorNodeSet) DeepCopy() *LinstorNodeSet

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

func (*LinstorNodeSet) DeepCopyInto added in v0.1.4

func (in *LinstorNodeSet) DeepCopyInto(out *LinstorNodeSet)

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

func (*LinstorNodeSet) DeepCopyObject added in v0.1.4

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

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

type LinstorNodeSetList added in v0.1.4

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

LinstorNodeSetList contains a list of LinstorNodeSet

func (*LinstorNodeSetList) DeepCopy added in v0.1.4

func (in *LinstorNodeSetList) DeepCopy() *LinstorNodeSetList

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

func (*LinstorNodeSetList) DeepCopyInto added in v0.1.4

func (in *LinstorNodeSetList) DeepCopyInto(out *LinstorNodeSetList)

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

func (*LinstorNodeSetList) DeepCopyObject added in v0.1.4

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

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

type LinstorNodeSetSpec added in v0.1.4

type LinstorNodeSetSpec struct {

	// priorityClassName is the name of the PriorityClass for the node pods
	PriorityClassName PriorityClassName `json:"priorityClassName"`

	// StoragePools is a list of StoragePools for LinstorNodeSet to manage.
	// +optional
	// +nullable
	StoragePools *StoragePools `json:"storagePools"`

	// If set, the operator will automatically create storage pools of the specified type for all devices that can
	// be found. The name of the storage pools matches the device name. For example, all devices `/dev/sdc` will be
	// part of the `sdc` storage pool.
	// +optional
	// +kubebuilder:validation:Enum=None;LVM;LVMTHIN;ZFS
	AutomaticStorageType string `json:"automaticStorageType"`

	// drbdKernelModuleInjectionMode selects the source for the DRBD kernel module
	// +kubebuilder:validation:Enum=None;Compile;ShippedModules
	DRBDKernelModuleInjectionMode KernelModuleInjectionMode `json:"drbdKernelModuleInjectionMode"`

	// Name of k8s secret that holds the SSL key for a node (called `keystore.jks`) and
	// the trusted certificates (called `certificates.jks`)
	// +optional
	// +nullable
	SslConfig *LinstorSSLConfig `json:"sslSecret"`

	// drbdRepoCred is the name of the kubernetes secret that holds the credential for the DRBD repositories
	DrbdRepoCred string `json:"drbdRepoCred"`

	// satelliteImage is the image (location + tag) for the LINSTOR satellite container
	SatelliteImage string `json:"satelliteImage"`

	// kernelModImage is the image (location + tag) for the LINSTOR/DRBD kernel module injector container
	KernelModImage string `json:"kernelModImage"`

	// Cluster URL of the linstor controller.
	// If not set, will be determined from the current resource name.
	// +optional
	ControllerEndpoint string `json:"controllerEndpoint"`

	LinstorClientConfig `json:",inline"`
}

LinstorNodeSetSpec defines the desired state of LinstorNodeSet

func (*LinstorNodeSetSpec) DeepCopy added in v0.1.4

func (in *LinstorNodeSetSpec) DeepCopy() *LinstorNodeSetSpec

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

func (*LinstorNodeSetSpec) DeepCopyInto added in v0.1.4

func (in *LinstorNodeSetSpec) DeepCopyInto(out *LinstorNodeSetSpec)

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

type LinstorNodeSetStatus added in v0.1.4

type LinstorNodeSetStatus struct {

	// Errors remaining that will trigger reconciliations.
	Errors []string `json:"errors"`
	// SatelliteStatuses by hostname.
	SatelliteStatuses []*SatelliteStatus `json:"SatelliteStatuses"`
}

LinstorNodeSetStatus defines the observed state of LinstorNodeSet

func (*LinstorNodeSetStatus) DeepCopy added in v0.1.4

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

func (*LinstorNodeSetStatus) DeepCopyInto added in v0.1.4

func (in *LinstorNodeSetStatus) DeepCopyInto(out *LinstorNodeSetStatus)

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

type LinstorSSLConfig added in v0.4.0

type LinstorSSLConfig string

LinstorSSLConfig is the name of the k8s secret that holds the key (called `keystore.jks`) and the trusted certificates (called `certificates.jks`)

func (*LinstorSSLConfig) IsPlain added in v0.4.0

func (lsc *LinstorSSLConfig) IsPlain() bool

func (*LinstorSSLConfig) Port added in v0.4.0

func (lsc *LinstorSSLConfig) Port() int32

func (*LinstorSSLConfig) Type added in v0.4.0

func (lsc *LinstorSSLConfig) Type() string

type NodeStatus

type NodeStatus struct {
	// Indicates if the node has been created on the controller.
	RegisteredOnController bool `json:"registeredOnController"`
	// The hostname of the kubelet running the node
	NodeName string `json:"nodeName"`
}

NodeStatus simple status of the node in the linstor cluster.

func (*NodeStatus) DeepCopy

func (in *NodeStatus) DeepCopy() *NodeStatus

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

func (*NodeStatus) DeepCopyInto

func (in *NodeStatus) DeepCopyInto(out *NodeStatus)

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

type PriorityClassName added in v0.4.0

type PriorityClassName string

PriorityClassName is the name PriorityClass associated with all pods for this resource. Can be left empty to use the default PriorityClass.

func (*PriorityClassName) GetName added in v0.4.0

func (pcn *PriorityClassName) GetName(namespace string) string

type SatelliteStatus

type SatelliteStatus struct {
	NodeStatus `json:",inline"`
	// As indicated by Linstor
	ConnectionStatus string `json:"connectionStatus"`
	// StoragePoolStatuses by storage pool name.
	StoragePoolStatuses []*StoragePoolStatus `json:"storagePoolStatus"`
}

SatelliteStatus should provide all the information that the reconsile loop needs to manage the operation of the LINSTOR Satellite.

func (*SatelliteStatus) DeepCopy

func (in *SatelliteStatus) DeepCopy() *SatelliteStatus

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

func (*SatelliteStatus) DeepCopyInto

func (in *SatelliteStatus) DeepCopyInto(out *SatelliteStatus)

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

type StoragePool

type StoragePool interface {
	ToLinstorStoragePool() lapi.StoragePool
}

StoragePool is the generalized type of storage pools.

type StoragePoolLVM

type StoragePoolLVM struct {
	// Name of the storage pool.
	Name string `json:"name"`
	// Name of underlying lvm group
	VolumeGroup string `json:"volumeGroup"`
}

StoragePoolLVM represents LVM storage pool to be managed by a LinstorNodeSet

func (*StoragePoolLVM) DeepCopy

func (in *StoragePoolLVM) DeepCopy() *StoragePoolLVM

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

func (*StoragePoolLVM) DeepCopyInto

func (in *StoragePoolLVM) DeepCopyInto(out *StoragePoolLVM)

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

func (*StoragePoolLVM) ToLinstorStoragePool

func (s *StoragePoolLVM) ToLinstorStoragePool() lapi.StoragePool

ToLinstorStoragePool returns lapi.StoragePool presentation of the StoragePoolLVM

type StoragePoolLVMThin

type StoragePoolLVMThin struct {
	StoragePoolLVM `json:",inline"`
	// Name of underlying lvm thin volume
	ThinVolume string `json:"thinVolume"`
}

StoragePoolLVMThin represents LVM Thin storage pool to be managed by a LinstorNodeSet

func (*StoragePoolLVMThin) DeepCopy

func (in *StoragePoolLVMThin) DeepCopy() *StoragePoolLVMThin

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

func (*StoragePoolLVMThin) DeepCopyInto

func (in *StoragePoolLVMThin) DeepCopyInto(out *StoragePoolLVMThin)

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

func (*StoragePoolLVMThin) ToLinstorStoragePool

func (s *StoragePoolLVMThin) ToLinstorStoragePool() lapi.StoragePool

ToLinstorStoragePool returns lapi.StoragePool presentation of the StoragePoolLVMThin

type StoragePoolStatus

type StoragePoolStatus struct {
	// The name of the storage pool.
	Name string `json:"name"`
	// The hostname of the kubelet hosting the storage pool.
	NodeName string `json:"nodeName"`
	// Provider is the underlying storage, lvm, zfs, etc.
	Provider string `json:"provider"`
	// Usage reporting
	FreeCapacity  int64 `json:"freeCapacity"`
	TotalCapacity int64 `json:"totalCapacity"`
}

StoragePoolStatus reports basic information about storage pool state.

func NewStoragePoolStatus

func NewStoragePoolStatus(pool *lapi.StoragePool) *StoragePoolStatus

NewStoragePoolStatus convert from golinstor StoragePool to StoragePoolStatus.

func (*StoragePoolStatus) DeepCopy

func (in *StoragePoolStatus) DeepCopy() *StoragePoolStatus

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

func (*StoragePoolStatus) DeepCopyInto

func (in *StoragePoolStatus) DeepCopyInto(out *StoragePoolStatus)

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

type StoragePools

type StoragePools struct {
	// LVMPools for LinstorNodeSet to manage.
	// +optional
	// +nullable
	LVMPools []*StoragePoolLVM `json:"lvmPools"`
	// LVMThinPools for LinstorNodeSet to manage.
	// +optional
	// +nullable
	LVMThinPools []*StoragePoolLVMThin `json:"lvmThinPools"`
}

StoragePools hold lists of linstor storage pools supported by this operator.

func (*StoragePools) DeepCopy

func (in *StoragePools) DeepCopy() *StoragePools

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

func (*StoragePools) DeepCopyInto

func (in *StoragePools) DeepCopyInto(out *StoragePools)

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