storage

package module
v0.5.0 Latest Latest
Warning

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

Go to latest
Published: Oct 21, 2024 License: Apache-2.0 Imports: 1 Imported by: 22

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type ExtraVolType

type ExtraVolType string

ExtraVolType represents a "label" that can be optionally added to the VolMounts instance

type PropagationType

type PropagationType string

PropagationType identifies the Service, Group or instance (e.g. the backend) that receives an Extra Volume that can potentially be mounted

const (
	// PropagationEverywhere is used to define a propagation policy that allows
	// to get the volumes mounted to all the OpenStack services
	PropagationEverywhere PropagationType = "All"
	// DBSync represents a common ServiceType defined by the OpenStack operators
	// that keeps track of the DBSync pod
	DBSync PropagationType = "DBSync"
	// Compute represents a common ServiceType that can be translated into an
	// external-data-plane related propagation policy
	Compute PropagationType = "Compute"
)

type VolMounts

type VolMounts struct {
	// +kubebuilder:validation:type={PropagationEverywhere}
	// Propagation defines which pod should mount the volume
	Propagation []PropagationType `json:"propagation,omitempty"`
	// Label associated to a given extraMount
	// +kubebuilder:validation:Optional
	ExtraVolType ExtraVolType `json:"extraVolType,omitempty"`
	// +kubebuilder:validation:Required
	Volumes []corev1.Volume `json:"volumes"`
	// +kubebuilder:validation:Required
	Mounts []corev1.VolumeMount `json:"mounts"`
}

VolMounts is the data structure used to expose Volumes and Mounts that can be added to a pod according to the defined Propagation policy

func (*VolMounts) DeepCopy

func (in *VolMounts) DeepCopy() *VolMounts

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

func (*VolMounts) DeepCopyInto

func (in *VolMounts) DeepCopyInto(out *VolMounts)

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

func (*VolMounts) Propagate

func (v *VolMounts) Propagate(svc []PropagationType) []VolMounts

Propagate allows services to filter and mount extra volumes according to the specified policy

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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