package
1.33.0-alpha.2
Repository: https://github.com/kubernetes/kubernetes.git
Documentation: pkg.go.dev
# Functions
ConvertTestConfig returns a framework test config with the parameters specified for the testsuite or (if available) the dynamically created config for the volume server.
CopyStorageClass constructs a new StorageClass instance with a unique name that is based on namespace + suffix using the same storageclass setting from the parameter.
CopyVolumeAttributesClass constructs a new VolumeAttributesClass instance with a unique name that is based on namespace + suffix using the VolumeAttributesClass passed in as a parameter.
CreateSnapshot creates a VolumeSnapshotClass with given SnapshotDeletionPolicy and a VolumeSnapshot from the VolumeSnapshotClass using a dynamic client.
CreateSnapshotResource creates a snapshot resource for the current test.
CreateVolume creates volume for test unless dynamicPV or CSI ephemeral inline volume test.
CreateVolumeGroupSnapshot creates a VolumeGroupSnapshotClass with given SnapshotDeletionPolicy and a VolumeGroupSnapshot from the VolumeGroupSnapshotClass using a dynamic client.
CreateVolumeGroupSnapshotResource creates a VolumeGroupSnapshotResource object with the given parameters.
CreateVolumeResource constructs a VolumeResource for the current test.
CreateVolumeResourceWithAccessModes constructs a VolumeResource for the current test with the provided access modes.
CreateVolumeResource constructs a VolumeResource for the current test using the specified VAC name.
DefineTestSuites defines tests for all testpatterns and all testSuites for a driver.
GetDriverNameWithFeatureTags returns parameters that can be passed to framework.Context.
GetDriverTimeouts returns the timeout of the driver operation.
GetStorageClass constructs a new StorageClass instance with a unique name that is based on namespace + suffix.
NewVolTypeMap creates a map with the given TestVolTypes enabled.
RegisterTests register the driver + pattern combination to the inside TestSuite This function actually register tests inside testsuite.
SkipInvalidDriverPatternCombination will skip tests if the combination of driver, and testpattern is not compatible to be tested.
# Constants
raw block mode.
The driver publishes storage capacity information: when the storage class for dynamic provisioning exists, the driver is expected to provide capacity information for it.
support volume expansion for controller.
exec a file in the volume.
volume ownership via fsGroup.
Anti-capability for drivers that do not support filesystem resizing of PVCs that are cloned or restored from a snapshot.
The driver can handle two PersistentVolumes with the same VolumeHandle (= volume_id in CSI spec).
multiple pods on a node can use the same volume concurrently; for CSI, see: - https://github.com/container-storage-interface/spec/pull/150 - https://github.com/container-storage-interface/spec/issues/178 - NodeStageVolume in the spec.
support volume expansion for node.
supports offline volume expansion (default: true).
supports online volume expansion (default: true).
data is persisted across pod restarts.
support populate data from pvc.
The driver supports ReadOnlyMany (ROX) access mode.
To support ReadWriteOncePod, the following CSI sidecars must be updated to these versions or greater: - csi-provisioner:v3.0.0+ - csi-attacher:v3.3.0+ - csi-resizer:v1.3.0+.
support ReadWriteMany access modes.
support volume that can run on single node (like hostpath).
support populate data from snapshot.
support topology.
support group snapshot.
support volume limits (can be *very* slow).
Driver has the VolumeMountGroup CSI node capability.
FileSizeLarge represents large file size (1 GiB) for testing.
FileSizeMedium represents medium file size (100 MiB) for testing.
FileSizeSmall represents small file size (1 MiB) for testing.
MinFileSize represents minimum file size (1 MiB) for testing.
# Variables
BlockVolModeDynamicPV is TestPattern for "Dynamic PV (block)".
BlockVolModeDynamicPVAllowExpansion is TestPattern for "Dynamic PV (block volmode)(allowExpansion)".
BlockVolModeGenericEphemeralVolume is for generic ephemeral inline volumes in raw block mode.
BlockVolModePreprovisionedPV is TestPattern for "Pre-provisioned PV (block)".
CSIInlineVolume represents a volume type that is defined inline and provided by a CSI driver.
DefaultFsCSIEphemeralVolume is TestPattern for "CSI Ephemeral-volume (default fs)".
DefaultFsDynamicPV is TestPattern for "Dynamic PV (default fs)".
DefaultFsDynamicPVAllowExpansion is TestPattern for "Dynamic PV (default fs)(allowExpansion)".
DefaultFsGenericEphemeralVolume is TestPattern for "Generic Ephemeral-volume (default fs)".
DefaultFsInlineVolume is TestPattern for "Inline-volume (default fs)".
DefaultFsPreprovisionedPV is TestPattern for "Pre-provisioned PV (default fs)".
DeleteSnapshot represents delete policy.
DynamicCreatedSnapshot represents a snapshot type for dynamic created snapshot.
DynamicPV represents a volume type for dynamic provisioned Persistent Volume.
DynamicSnapshotDelete is TestPattern for "Dynamic snapshot".
DynamicSnapshotRetain is TestPattern for "Dynamic snapshot".
EphemeralSnapshotDelete is TestPattern for snapshotting of a generic ephemeral volume where snapshots are deleted.
EphemeralSnapshotDelete is TestPattern for snapshotting of a generic ephemeral volume where snapshots are preserved.
Ext3CSIEphemeralVolume is TestPattern for "CSI Ephemeral-volume (ext3)".
Ext3DynamicPV is TestPattern for "Dynamic PV (ext3)".
Ext3GenericEphemeralVolume is TestPattern for "Generic Ephemeral-volume (ext3)".
Ext3InlineVolume is TestPattern for "Inline-volume (ext3)".
Ext3PreprovisionedPV is TestPattern for "Pre-provisioned PV (ext3)".
Ext4CSIEphemeralVolume is TestPattern for "CSI Ephemeral-volume (ext4)".
Ext4DynamicPV is TestPattern for "Dynamic PV (ext4)".
Ext4GenericEphemeralVolume is TestPattern for "Generic Ephemeral-volume (ext4)".
Ext4InlineVolume is TestPattern for "Inline-volume (ext4)".
Ext4PreprovisionedPV is TestPattern for "Pre-provisioned PV (ext4)".
FsVolModeDynamicPV is TestPattern for "Dynamic PV (filesystem)".
FsVolModePreprovisionedPV is TestPattern for "Pre-provisioned PV (filesystem)".
GenericEphemeralVolume represents a volume type that is defined inline and provisioned through a PVC.
InlineVolume represents a volume type that is used inline in volumeSource.
NtfsCSIEphemeralVolume is TestPattern for "CSI Ephemeral-volume (ntfs)".
NtfsDynamicPV is TestPattern for "Dynamic PV (ntfs)".
NtfsDynamicPVAllowExpansion is TestPattern for "Dynamic PV (default fs)(allowExpansion)".
NtfsGenericEphemeralVolume is TestPattern for "Generic Ephemeral-volume (ntfs)".
NtfsInlineVolume is TestPattern for "Inline-volume (ntfs)".
NtfsPreprovisionedPV is TestPattern for "Pre-provisioned PV (ntfs)".
PreprovisionedCreatedSnapshot represents a snapshot type for pre-provisioned snapshot.
PreprovisionedPV represents a volume type for pre-provisioned Persistent Volume.
PreprovisionedSnapshotDelete is TestPattern for "Pre-provisioned snapshot".
PreprovisionedSnapshotRetain is TestPattern for "Pre-provisioned snapshot".
RetainSnapshot represents retain policy.
TopologyDelayed is TestPattern for delayed binding.
TopologyImmediate is TestPattern for immediate binding.
VolumeGroupSnapshotDelete is TestPattern for "VolumeGroupSnapshot".
XfsCSIEphemeralVolume is TestPattern for "CSI Ephemeral-volume (xfs)".
XfsDynamicPV is TestPattern for "Dynamic PV (xfs)".
XfsGenericEphemeralVolume is TestPattern for "Generic Ephemeral-volume (xfs)".
XfsInlineVolume is TestPattern for "Inline-volume (xfs)".
XfsPreprovisionedPV is TestPattern for "Pre-provisioned PV (xfs)".
# Structs
DriverInfo represents static information about a TestDriver.
Metrics to evaluate performance of an operation TODO: Add metrics like median, mode, standard deviation, percentile.
PerformanceTestOptions contains parameters used for performance tests.
PerformanceTestProvisioningOptions contains parameters for testing provisioning operation performance.
PerTestConfig represents parameters that control test execution.
SnapshotResource represents a snapshot class, a snapshot and its bound snapshot contents for a specific test case.
StressTestOptions contains parameters used for stress tests.
TestPattern represents a combination of parameters to be tested in a TestSuite.
TestSuiteInfo represents a set of parameters for TestSuite.
VolumeGroupSnapshotResource represents a volumegroupsnapshot class, a volumegroupsnapshot and its bound contents for a specific test case.
VolumeResource is a generic implementation of TestResource that wil be able to be used in most of TestSuites.
VolumeSnapshotStressTestOptions contains parameters used for volume snapshot stress tests.
# Interfaces
CustomTimeoutsTestDriver represents an interface fo a TestDriver that supports custom timeouts.
DynamicPVTestDriver represents an interface for a TestDriver that supports DynamicPV.
EphemeralTestDriver represents an interface for a TestDriver that supports ephemeral inline volumes.
InlineVolumeTestDriver represents an interface for a TestDriver that supports InlineVolume.
PreprovisionedPVTestDriver represents an interface for a TestDriver that supports PreprovisionedPV.
PreprovisionedVolumeTestDriver represents an interface for a TestDriver that has pre-provisioned volume.
SnapshottableTestDriver represents an interface for a TestDriver that supports DynamicSnapshot.
TestDriver represents an interface for a driver to be tested in TestSuite.
TestSuite represents an interface for a set of tests which works with TestDriver.
TestVolume is the result of PreprovisionedVolumeTestDriver.CreateVolume.
VolumeAttributesClassTestDriver represents an interface for a TestDriver that supports creating and modifying volumes via VolumeAttributesClass objects.
# Type aliases
Capability represents a feature that a volume plugin supports.
TestSnapshotDeletionPolicy represents the deletion policy of the snapshot class.
TestSnapshotType represents a snapshot type to be tested in a TestSuite.
TestVolType represents a volume type to be tested in a TestSuite.