package
1.33.0-alpha.2
Repository: https://github.com/kubernetes/kubernetes.git
Documentation: pkg.go.dev
# Packages
Package configmap contains the internal representation of configMap volumes.
Package emptydir contains the internal representation of emptyDir volumes.
Package fc contains the internal representation of Fibre Channel (fc) volumes.
Package git_repo contains the internal representation of git repo volumes.
Package hostpath contains the internal representation of hostPath volumes.
Package iscsi contains the internal representation of Internet Small Computer System Interface (iSCSI) volumes.
Package local contains the internal representation of local volumes.
Package nfs contains the internal representation of network file system (NFS) volumes.
Package portworx contains the internal representation of Portworx Block Device volumes.
Package secret contains the internal representation of secret volumes.
Package util contains utility code for use by volume plugins.
# Functions
IsNotSupported returns true if and only if err is "key" not found error.
NewCachedMetrics creates a new cachedMetrics wrapping another MetricsProvider and caching the results.
NewFsInfoFailedError creates a new MetricsError with code FsInfoFailed.
NewMetricsBlock creates a new metricsBlock with the device node of the Volume.
NewMetricsDu creates a new metricsDu with the Volume path.
NewMetricsStatFS creates a new metricsStatFS with the Volume path.
NewNoPathDefinedError creates a new MetricsError with code NoPathDefined.
NewNotImplementedError creates a new MetricsError with code NotSupported.
NewNotSupportedError creates a new MetricsError with code NotSupported.
NewNotSupportedErrorWithDriverName creates a new MetricsError with code NotSupported.
NewPersistentVolumeRecyclerPodTemplate creates a template for a recycler pod.
NewSpecFromPersistentVolume creates an Spec from an v1.PersistentVolume.
NewSpecFromVolume creates an Spec from an v1.Volume.
SetVolumeOwnership modifies the given volume to be owned by fsGroup, and sets SetGid so that newly created files are owned by fsGroup.
ValidateRecyclerPodTemplate checks validity of recycle pod template List of checks: - at least one volume is defined in the recycle pod template If successful, returns nil if unsuccessful, returns an error.
# Constants
ErrCodeFsInfoFailed code for FsInfoFailed Errors.
ErrCodeNoPathDefined code for NoPathDefined Errors.
ErrCodeNotSupported code for NotSupported Errors.
ProbeAddOrUpdate represents an operation where a probe is added or updated.
ProbeRemove represents an operation to remove a probe.
VolumeParameterFSType is a common parameter which can be specified in StorageClass to specify the desired FSType Provisioners SHOULD implement support for this if they are block device based Must be a filesystem type supported by the host operating system.
# Variables
ErrNoPluginMatched is used to return when no volume plugin matches the requested type.
# Structs
Attributes represents the attributes of this mounter.
DeviceMounterArgs provides auxiliary, optional arguments to DeviceMounter.
Metrics represents the used and available bytes of the Volume.
MetricsError to distinguish different Metrics Errors.
MetricsNil represents a MetricsProvider that does not support returning Metrics.
MounterArgs provides more easily extensible arguments to Mounter.
NodeResizeOptions contain options to be passed for node expansion.
ProbeEvent represents an event triggered during a volume plugin probe operation.
ReconstructedVolume contains information about a volume reconstructed by ConstructVolumeSpec().
Spec is an internal representation of a volume.
VolumeConfig is how volume plugins receive configuration.
VolumeOptions contains option information about a volume.
VolumePluginMgr tracks registered plugins.
# Interfaces
AttachableVolumePlugin is an extended interface of VolumePlugin and is used for volumes that require attachment to a node before mounting.
AttachDetachVolumeHost is a AttachDetach Controller specific interface that plugins can use to access methods on the Attach Detach Controller.
Attacher can attach a volume to a node.
BlockVolume interface provides methods to generate global map path and pod device map path.
BlockVolumeMapper interface is a mapper interface for block volume.
BlockVolumePlugin is an extend interface of VolumePlugin and is used for block volumes support.
BlockVolumeUnmapper interface is an unmapper interface for block volume.
CSIDriverVolumeHost is a volume host that has access to CSIDriverLister.
CustomBlockVolumeMapper interface provides custom methods to set up/map the volume.
CustomBlockVolumeUnmapper interface provides custom methods to cleanup/unmap the volumes.
DeletableVolumePlugin is an extended interface of VolumePlugin and is used by persistent volumes that want to be deleted from the cluster after their release from a PersistentVolumeClaim.
Deleter removes the resource from the underlying storage provider.
Detacher can detach a volume from a node.
DeviceMountableVolumePlugin is an extended interface of VolumePlugin and is used for volumes that requires mount device to a node before binding to volume to pod.
DeviceMounter can mount a block volume to a global path.
DeviceUnmounter can unmount a block volume from the global path.
DynamicPluginProber is an interface that defines methods for probing dynamic volume plugins.
ExpandableVolumePlugin is an extended interface of VolumePlugin and is used for volumes that can be expanded via control-plane ExpandVolumeDevice call.
KubeletVolumeHost is a Kubelet specific interface that plugins can use to access the kubelet.
MetricsProvider exposes metrics (e.g.
Mounter interface provides methods to set up/mount the volume.
NodeExpandableVolumePlugin is an expanded interface of VolumePlugin and is used for volumes that require expansion on the node via NodeExpand call.
PersistentVolumePlugin is an extended interface of VolumePlugin and is used by volumes that want to provide long term persistence of data.
ProvisionableVolumePlugin is an extended interface of VolumePlugin and is used to create volumes for the cluster.
Provisioner is an interface that creates templates for PersistentVolumes and can create the volume as a new resource in the infrastructure provider.
RecyclableVolumePlugin is an extended interface of VolumePlugin and is used by persistent volumes that want to be recycled before being made available again to new claims.
Unmounter interface provides methods to cleanup/unmount the volumes.
Volume represents a directory used by pods or hosts on a node.
VolumeHost is an interface that plugins can use to access the kubelet.
VolumePlugin is an interface to volume plugins that can be used on a kubernetes node (e.g.
# Type aliases
ProbeOperation represents a type of operation for probing volume plugins.