v1alpha1

package
v0.2.0 Latest Latest
Warning

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

Go to latest
Published: Oct 11, 2024 License: Apache-2.0 Imports: 6 Imported by: 8

Documentation

Overview

Package v1alpha1 is the v1alpha1 version of the API.

Package v1alpha1 contains API Schema definitions for the storage v1alpha1 API group +groupName=storage.ironcore.dev

Index

Constants

View Source
const (
	VolumeVolumePoolRefNameField  = "spec.volumePoolRef.name"
	VolumeVolumeClassRefNameField = "spec.volumeClassRef.name"

	BucketBucketPoolRefNameField  = "spec.bucketPoolRef.name"
	BucketBucketClassRefNameField = "spec.bucketClassRef.name"

	// VolumePoolsGroup is the system rbac group all volume pools are in.
	VolumePoolsGroup = "storage.ironcore.dev:system:volumepools"

	// VolumePoolUserNamePrefix is the prefix all volume pool users should have.
	VolumePoolUserNamePrefix = "storage.ironcore.dev:system:volumepool:"

	// BucketPoolsGroup is the system rbac group all bucket pools are in.
	BucketPoolsGroup = "storage.ironcore.dev:system:bucketpools"

	// BucketPoolUserNamePrefix is the prefix all bucket pool users should have.
	BucketPoolUserNamePrefix = "storage.ironcore.dev:system:bucketpool:"

	SecretTypeVolumeAuth       = corev1.SecretType("storage.ironcore.dev/volume-auth")
	SecretTypeVolumeEncryption = corev1.SecretType("storage.ironcore.dev/volume-encryption")
)

Variables

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

	// SchemeBuilder is used to add go types to the GroupVersionKind scheme
	SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes)

	// AddToScheme adds the types in this group-version to the given scheme.
	AddToScheme = SchemeBuilder.AddToScheme
)
View Source
var (
	// BucketClassFinalizer is the finalizer for BucketClass.
	BucketClassFinalizer = SchemeGroupVersion.Group + "/bucketclass"
)
View Source
var (
	// VolumeClassFinalizer is the finalizer for VolumeClass.
	VolumeClassFinalizer = SchemeGroupVersion.Group + "/volumeclass"
)

Functions

func BucketPoolCommonName

func BucketPoolCommonName(name string) string

BucketPoolCommonName constructs the common name for a certificate of a bucket pool user.

func Resource

func Resource(name string) schema.GroupResource

func VolumePoolCommonName

func VolumePoolCommonName(name string) string

VolumePoolCommonName constructs the common name for a certificate of a volume pool user.

Types

type Bucket

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

	Spec   BucketSpec   `json:"spec,omitempty"`
	Status BucketStatus `json:"status,omitempty"`
}

Bucket is the Schema for the buckets API

func (*Bucket) DeepCopy

func (in *Bucket) DeepCopy() *Bucket

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

func (*Bucket) DeepCopyInto

func (in *Bucket) DeepCopyInto(out *Bucket)

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

func (*Bucket) DeepCopyObject

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

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

type BucketAccess

type BucketAccess struct {
	// SecretRef references the Secret containing the access credentials to consume a Bucket.
	SecretRef *corev1.LocalObjectReference `json:"secretRef,omitempty"`
	// Endpoint defines address of the Bucket REST-API.
	Endpoint string `json:"endpoint"`
}

BucketAccess represents information on how to access a bucket.

func (*BucketAccess) DeepCopy

func (in *BucketAccess) DeepCopy() *BucketAccess

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

func (*BucketAccess) DeepCopyInto

func (in *BucketAccess) DeepCopyInto(out *BucketAccess)

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

type BucketClass

type BucketClass struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// Capabilities describes the capabilities of a BucketClass.
	Capabilities corev1alpha1.ResourceList `json:"capabilities,omitempty"`
}

BucketClass is the Schema for the bucketclasses API

func (*BucketClass) DeepCopy

func (in *BucketClass) DeepCopy() *BucketClass

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

func (*BucketClass) DeepCopyInto

func (in *BucketClass) DeepCopyInto(out *BucketClass)

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

func (*BucketClass) DeepCopyObject

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

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

type BucketClassList

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

BucketClassList contains a list of BucketClass

func (*BucketClassList) DeepCopy

func (in *BucketClassList) DeepCopy() *BucketClassList

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

func (*BucketClassList) DeepCopyInto

func (in *BucketClassList) DeepCopyInto(out *BucketClassList)

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

func (*BucketClassList) DeepCopyObject

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

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

type BucketCondition

type BucketCondition struct {
	// Type is the type of the condition.
	Type BucketConditionType `json:"type"`
	// Status is the status of the condition.
	Status corev1.ConditionStatus `json:"status"`
	// Reason is a machine-readable indication of why the condition is in a certain state.
	Reason string `json:"reason,omitempty"`
	// Message is a human-readable explanation of why the condition has a certain reason / state.
	Message string `json:"message,omitempty"`
	// ObservedGeneration represents the .metadata.generation that the condition was set based upon.
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
	// LastTransitionTime is the last time the status of a condition has transitioned from one state to another.
	LastTransitionTime metav1.Time `json:"lastTransitionTime,omitempty"`
}

BucketCondition is one of the conditions of a bucket.

func (*BucketCondition) DeepCopy

func (in *BucketCondition) DeepCopy() *BucketCondition

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

func (*BucketCondition) DeepCopyInto

func (in *BucketCondition) DeepCopyInto(out *BucketCondition)

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

type BucketConditionType

type BucketConditionType string

BucketConditionType is a type a BucketCondition can have.

type BucketList

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

BucketList contains a list of Bucket

func (*BucketList) DeepCopy

func (in *BucketList) DeepCopy() *BucketList

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

func (*BucketList) DeepCopyInto

func (in *BucketList) DeepCopyInto(out *BucketList)

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

func (*BucketList) DeepCopyObject

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

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

type BucketPool

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

	Spec   BucketPoolSpec   `json:"spec,omitempty"`
	Status BucketPoolStatus `json:"status,omitempty"`
}

BucketPool is the Schema for the bucketpools API

func (*BucketPool) DeepCopy

func (in *BucketPool) DeepCopy() *BucketPool

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

func (*BucketPool) DeepCopyInto

func (in *BucketPool) DeepCopyInto(out *BucketPool)

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

func (*BucketPool) DeepCopyObject

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

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

type BucketPoolList

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

BucketPoolList contains a list of BucketPool

func (*BucketPoolList) DeepCopy

func (in *BucketPoolList) DeepCopy() *BucketPoolList

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

func (*BucketPoolList) DeepCopyInto

func (in *BucketPoolList) DeepCopyInto(out *BucketPoolList)

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

func (*BucketPoolList) DeepCopyObject

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

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

type BucketPoolSpec

type BucketPoolSpec struct {
	// ProviderID identifies the BucketPool on provider side.
	ProviderID string `json:"providerID"`
	// Taints of the BucketPool. Only Buckets who tolerate all the taints
	// will land in the BucketPool.
	Taints []commonv1alpha1.Taint `json:"taints,omitempty"`
}

BucketPoolSpec defines the desired state of BucketPool

func (*BucketPoolSpec) DeepCopy

func (in *BucketPoolSpec) DeepCopy() *BucketPoolSpec

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

func (*BucketPoolSpec) DeepCopyInto

func (in *BucketPoolSpec) DeepCopyInto(out *BucketPoolSpec)

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

type BucketPoolState

type BucketPoolState string
const (
	BucketPoolStateAvailable   BucketPoolState = "Available"
	BucketPoolStatePending     BucketPoolState = "Pending"
	BucketPoolStateUnavailable BucketPoolState = "Unavailable"
)

type BucketPoolStatus

type BucketPoolStatus struct {
	// State represents the infrastructure state of a BucketPool.
	State BucketPoolState `json:"state,omitempty"`
	// AvailableBucketClasses list the references of any supported BucketClass of this pool
	AvailableBucketClasses []corev1.LocalObjectReference `json:"availableBucketClasses,omitempty"`
}

BucketPoolStatus defines the observed state of BucketPool

func (*BucketPoolStatus) DeepCopy

func (in *BucketPoolStatus) DeepCopy() *BucketPoolStatus

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

func (*BucketPoolStatus) DeepCopyInto

func (in *BucketPoolStatus) DeepCopyInto(out *BucketPoolStatus)

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

type BucketSpec

type BucketSpec struct {
	// BucketClassRef is the BucketClass of a bucket
	// If empty, an external controller has to provision the bucket.
	BucketClassRef *corev1.LocalObjectReference `json:"bucketClassRef,omitempty"`
	// BucketPoolSelector selects a suitable BucketPoolRef by the given labels.
	BucketPoolSelector map[string]string `json:"bucketPoolSelector,omitempty"`
	// BucketPoolRef indicates which BucketPool to use for a bucket.
	// If unset, the scheduler will figure out a suitable BucketPoolRef.
	BucketPoolRef *corev1.LocalObjectReference `json:"bucketPoolRef,omitempty"`
	// Tolerations define tolerations the Bucket has. Only any BucketPool whose taints
	// covered by Tolerations will be considered to host the Bucket.
	Tolerations []commonv1alpha1.Toleration `json:"tolerations,omitempty"`
}

BucketSpec defines the desired state of Bucket

func (*BucketSpec) DeepCopy

func (in *BucketSpec) DeepCopy() *BucketSpec

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

func (*BucketSpec) DeepCopyInto

func (in *BucketSpec) DeepCopyInto(out *BucketSpec)

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

type BucketState

type BucketState string

BucketState represents the infrastructure state of a Bucket.

const (
	// BucketStatePending reports whether a Bucket is about to be ready.
	BucketStatePending BucketState = "Pending"
	// BucketStateAvailable reports whether a Bucket is available to be used.
	BucketStateAvailable BucketState = "Available"
	// BucketStateError reports that a Bucket is in an error state.
	BucketStateError BucketState = "Error"
)

type BucketStatus

type BucketStatus struct {
	// State represents the infrastructure state of a Bucket.
	State BucketState `json:"state,omitempty"`
	// LastStateTransitionTime is the last time the State transitioned between values.
	LastStateTransitionTime *metav1.Time `json:"lastStateTransitionTime,omitempty"`

	// Access specifies how to access a Bucket.
	// This is set by the bucket provider when the bucket is provisioned.
	Access *BucketAccess `json:"access,omitempty"`

	// Conditions are the conditions of a bucket.
	Conditions []BucketCondition `json:"conditions,omitempty"`
}

BucketStatus defines the observed state of Bucket

func (*BucketStatus) DeepCopy

func (in *BucketStatus) DeepCopy() *BucketStatus

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

func (*BucketStatus) DeepCopyInto

func (in *BucketStatus) DeepCopyInto(out *BucketStatus)

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

type BucketTemplateSpec

type BucketTemplateSpec struct {
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              BucketSpec `json:"spec,omitempty"`
}

BucketTemplateSpec is the specification of a Bucket template.

func (*BucketTemplateSpec) DeepCopy

func (in *BucketTemplateSpec) DeepCopy() *BucketTemplateSpec

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

func (*BucketTemplateSpec) DeepCopyInto

func (in *BucketTemplateSpec) DeepCopyInto(out *BucketTemplateSpec)

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

type ResizePolicy

type ResizePolicy string

ResizePolicy is a type of policy.

const (
	// ResizePolicyStatic is a policy that does not allow the expansion of a Volume.
	ResizePolicyStatic ResizePolicy = "Static"
	// ResizePolicyExpandOnly is a policy that only allows the expansion of a Volume.
	ResizePolicyExpandOnly ResizePolicy = "ExpandOnly"
)

type Volume

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

	Spec   VolumeSpec   `json:"spec,omitempty"`
	Status VolumeStatus `json:"status,omitempty"`
}

Volume is the Schema for the volumes API

func (*Volume) DeepCopy

func (in *Volume) DeepCopy() *Volume

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

func (*Volume) DeepCopyInto

func (in *Volume) DeepCopyInto(out *Volume)

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

func (*Volume) DeepCopyObject

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

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

type VolumeAccess

type VolumeAccess struct {
	// SecretRef references the Secret containing the access credentials to consume a Volume.
	SecretRef *corev1.LocalObjectReference `json:"secretRef,omitempty"`
	// Driver is the name of the drive to use for this volume. Required.
	Driver string `json:"driver"`
	// Handle is the unique handle of the volume.
	Handle string `json:"handle"`
	// VolumeAttributes are attributes of the volume to use.
	VolumeAttributes map[string]string `json:"volumeAttributes,omitempty"`
}

VolumeAccess represents information on how to access a volume.

func (*VolumeAccess) DeepCopy

func (in *VolumeAccess) DeepCopy() *VolumeAccess

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

func (*VolumeAccess) DeepCopyInto

func (in *VolumeAccess) DeepCopyInto(out *VolumeAccess)

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

type VolumeClass

type VolumeClass struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// Capabilities describes the capabilities of a VolumeClass.
	Capabilities corev1alpha1.ResourceList `json:"capabilities,omitempty"`
	// ResizePolicy describes the supported expansion policy of a VolumeClass.
	// If not set default to Static expansion policy.
	ResizePolicy ResizePolicy `json:"resizePolicy,omitempty"`
}

VolumeClass is the Schema for the volumeclasses API

func (*VolumeClass) DeepCopy

func (in *VolumeClass) DeepCopy() *VolumeClass

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

func (*VolumeClass) DeepCopyInto

func (in *VolumeClass) DeepCopyInto(out *VolumeClass)

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

func (*VolumeClass) DeepCopyObject

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

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

type VolumeClassList

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

VolumeClassList contains a list of VolumeClass

func (*VolumeClassList) DeepCopy

func (in *VolumeClassList) DeepCopy() *VolumeClassList

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

func (*VolumeClassList) DeepCopyInto

func (in *VolumeClassList) DeepCopyInto(out *VolumeClassList)

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

func (*VolumeClassList) DeepCopyObject

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

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

type VolumeCondition

type VolumeCondition struct {
	// Type is the type of the condition.
	Type VolumeConditionType `json:"type"`
	// Status is the status of the condition.
	Status corev1.ConditionStatus `json:"status"`
	// Reason is a machine-readable indication of why the condition is in a certain state.
	Reason string `json:"reason,omitempty"`
	// Message is a human-readable explanation of why the condition has a certain reason / state.
	Message string `json:"message,omitempty"`
	// ObservedGeneration represents the .metadata.generation that the condition was set based upon.
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
	// LastTransitionTime is the last time the status of a condition has transitioned from one state to another.
	LastTransitionTime metav1.Time `json:"lastTransitionTime,omitempty"`
}

VolumeCondition is one of the conditions of a volume.

func (*VolumeCondition) DeepCopy

func (in *VolumeCondition) DeepCopy() *VolumeCondition

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

func (*VolumeCondition) DeepCopyInto

func (in *VolumeCondition) DeepCopyInto(out *VolumeCondition)

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

type VolumeConditionType

type VolumeConditionType string

VolumeConditionType is a type a VolumeCondition can have.

type VolumeEncryption

type VolumeEncryption struct {
	// SecretRef references the Secret containing the encryption key to encrypt a Volume.
	// This secret is created by user with encryptionKey as Key and base64 encoded 256-bit encryption key as Value.
	SecretRef corev1.LocalObjectReference `json:"secretRef"`
}

VolumeEncryption represents information to encrypt a volume.

func (*VolumeEncryption) DeepCopy

func (in *VolumeEncryption) DeepCopy() *VolumeEncryption

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

func (*VolumeEncryption) DeepCopyInto

func (in *VolumeEncryption) DeepCopyInto(out *VolumeEncryption)

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

type VolumeList

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

VolumeList contains a list of Volume

func (*VolumeList) DeepCopy

func (in *VolumeList) DeepCopy() *VolumeList

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

func (*VolumeList) DeepCopyInto

func (in *VolumeList) DeepCopyInto(out *VolumeList)

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

func (*VolumeList) DeepCopyObject

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

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

type VolumePool

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

	Spec   VolumePoolSpec   `json:"spec,omitempty"`
	Status VolumePoolStatus `json:"status,omitempty"`
}

VolumePool is the Schema for the volumepools API

func (*VolumePool) DeepCopy

func (in *VolumePool) DeepCopy() *VolumePool

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

func (*VolumePool) DeepCopyInto

func (in *VolumePool) DeepCopyInto(out *VolumePool)

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

func (*VolumePool) DeepCopyObject

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

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

type VolumePoolCondition

type VolumePoolCondition struct {
	// Type is the type of the condition.
	Type VolumePoolConditionType `json:"type"`
	// Status is the status of the condition.
	Status corev1.ConditionStatus `json:"status"`
	// Reason is a machine-readable indication of why the condition is in a certain state.
	Reason string `json:"reason"`
	// Message is a human-readable explanation of why the condition has a certain reason / state.
	Message string `json:"message"`
	// ObservedGeneration represents the .metadata.generation that the condition was set based upon.
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
	// LastTransitionTime is the last time the status of a condition has transitioned from one state to another.
	LastTransitionTime metav1.Time `json:"lastTransitionTime,omitempty"`
}

VolumePoolCondition is one of the conditions of a volume.

func (*VolumePoolCondition) DeepCopy

func (in *VolumePoolCondition) DeepCopy() *VolumePoolCondition

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

func (*VolumePoolCondition) DeepCopyInto

func (in *VolumePoolCondition) DeepCopyInto(out *VolumePoolCondition)

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

type VolumePoolConditionType

type VolumePoolConditionType string

VolumePoolConditionType is a type a VolumePoolCondition can have.

type VolumePoolList

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

VolumePoolList contains a list of VolumePool

func (*VolumePoolList) DeepCopy

func (in *VolumePoolList) DeepCopy() *VolumePoolList

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

func (*VolumePoolList) DeepCopyInto

func (in *VolumePoolList) DeepCopyInto(out *VolumePoolList)

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

func (*VolumePoolList) DeepCopyObject

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

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

type VolumePoolSpec

type VolumePoolSpec struct {
	// ProviderID identifies the VolumePool on provider side.
	ProviderID string `json:"providerID"`
	// Taints of the VolumePool. Only Volumes who tolerate all the taints
	// will land in the VolumePool.
	Taints []commonv1alpha1.Taint `json:"taints,omitempty"`
}

VolumePoolSpec defines the desired state of VolumePool

func (*VolumePoolSpec) DeepCopy

func (in *VolumePoolSpec) DeepCopy() *VolumePoolSpec

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

func (*VolumePoolSpec) DeepCopyInto

func (in *VolumePoolSpec) DeepCopyInto(out *VolumePoolSpec)

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

type VolumePoolState

type VolumePoolState string
const (
	VolumePoolStateAvailable   VolumePoolState = "Available"
	VolumePoolStatePending     VolumePoolState = "Pending"
	VolumePoolStateUnavailable VolumePoolState = "Unavailable"
)

type VolumePoolStatus

type VolumePoolStatus struct {
	State      VolumePoolState       `json:"state,omitempty"`
	Conditions []VolumePoolCondition `json:"conditions,omitempty"`
	// AvailableVolumeClasses list the references of any supported VolumeClass of this pool
	AvailableVolumeClasses []corev1.LocalObjectReference `json:"availableVolumeClasses,omitempty"`
	// Capacity represents the total resources of a machine pool.
	Capacity corev1alpha1.ResourceList `json:"capacity,omitempty"`
	// Allocatable represents the resources of a machine pool that are available for scheduling.
	Allocatable corev1alpha1.ResourceList `json:"allocatable,omitempty"`
}

VolumePoolStatus defines the observed state of VolumePool

func (*VolumePoolStatus) DeepCopy

func (in *VolumePoolStatus) DeepCopy() *VolumePoolStatus

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

func (*VolumePoolStatus) DeepCopyInto

func (in *VolumePoolStatus) DeepCopyInto(out *VolumePoolStatus)

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

type VolumeSpec

type VolumeSpec struct {
	// VolumeClassRef is the VolumeClass of a volume
	// If empty, an external controller has to provision the volume.
	VolumeClassRef *corev1.LocalObjectReference `json:"volumeClassRef,omitempty"`
	// VolumePoolSelector selects a suitable VolumePoolRef by the given labels.
	VolumePoolSelector map[string]string `json:"volumePoolSelector,omitempty"`
	// VolumePoolRef indicates which VolumePool to use for a volume.
	// If unset, the scheduler will figure out a suitable VolumePoolRef.
	VolumePoolRef *corev1.LocalObjectReference `json:"volumePoolRef,omitempty"`
	// ClaimRef is the reference to the claiming entity of the Volume.
	ClaimRef *commonv1alpha1.LocalUIDReference `json:"claimRef,omitempty"`
	// Resources is a description of the volume's resources and capacity.
	Resources corev1alpha1.ResourceList `json:"resources,omitempty"`
	// Image is an optional image to bootstrap the volume with.
	Image string `json:"image,omitempty"`
	// ImagePullSecretRef is an optional secret for pulling the image of a volume.
	ImagePullSecretRef *corev1.LocalObjectReference `json:"imagePullSecretRef,omitempty"`
	// Unclaimable marks the volume as unclaimable.
	Unclaimable bool `json:"unclaimable,omitempty"`
	// Tolerations define tolerations the Volume has. Only any VolumePool whose taints
	// covered by Tolerations will be considered to host the Volume.
	Tolerations []commonv1alpha1.Toleration `json:"tolerations,omitempty"`
	// Encryption is an optional field which provides attributes to encrypt Volume.
	Encryption *VolumeEncryption `json:"encryption,omitempty"`
}

VolumeSpec defines the desired state of Volume

func (*VolumeSpec) DeepCopy

func (in *VolumeSpec) DeepCopy() *VolumeSpec

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

func (*VolumeSpec) DeepCopyInto

func (in *VolumeSpec) DeepCopyInto(out *VolumeSpec)

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

type VolumeState

type VolumeState string

VolumeState represents the infrastructure state of a Volume.

const (
	// VolumeStatePending reports whether a Volume is about to be ready.
	VolumeStatePending VolumeState = "Pending"
	// VolumeStateAvailable reports whether a Volume is available to be used.
	VolumeStateAvailable VolumeState = "Available"
	// VolumeStateError reports that a Volume is in an error state.
	VolumeStateError VolumeState = "Error"
)

type VolumeStatus

type VolumeStatus struct {
	// State represents the infrastructure state of a Volume.
	State VolumeState `json:"state,omitempty"`
	// LastStateTransitionTime is the last time the State transitioned between values.
	LastStateTransitionTime *metav1.Time `json:"lastStateTransitionTime,omitempty"`

	// Access specifies how to access a Volume.
	// This is set by the volume provider when the volume is provisioned.
	Access *VolumeAccess `json:"access,omitempty"`

	// Conditions are the conditions of a volume.
	Conditions []VolumeCondition `json:"conditions,omitempty"`
}

VolumeStatus defines the observed state of Volume

func (*VolumeStatus) DeepCopy

func (in *VolumeStatus) DeepCopy() *VolumeStatus

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

func (*VolumeStatus) DeepCopyInto

func (in *VolumeStatus) DeepCopyInto(out *VolumeStatus)

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

type VolumeTemplateSpec

type VolumeTemplateSpec struct {
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              VolumeSpec `json:"spec,omitempty"`
}

VolumeTemplateSpec is the specification of a Volume template.

func (*VolumeTemplateSpec) DeepCopy

func (in *VolumeTemplateSpec) DeepCopy() *VolumeTemplateSpec

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

func (*VolumeTemplateSpec) DeepCopyInto

func (in *VolumeTemplateSpec) DeepCopyInto(out *VolumeTemplateSpec)

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